@useinsider/guido 2.0.0-beta.13ba613 → 2.0.0-beta.18d5b06

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 (101) hide show
  1. package/README.md +2 -0
  2. package/dist/@types/config/schemas.js +55 -39
  3. package/dist/components/Guido.vue.js +1 -1
  4. package/dist/components/Guido.vue2.js +15 -17
  5. package/dist/components/organisms/email-preview/PreviewContainer.vue.js +3 -3
  6. package/dist/components/organisms/email-preview/amp/AmpErrorModal.vue.js +8 -8
  7. package/dist/components/organisms/email-preview/amp/AmpErrorModal.vue2.js +17 -13
  8. package/dist/components/organisms/email-preview/amp/AmpToggle.vue.js +7 -8
  9. package/dist/components/organisms/email-preview/amp/AmpToggle.vue2.js +14 -12
  10. package/dist/components/organisms/email-preview/desktop-preview/DesktopBrowserHeader.vue.js +18 -0
  11. package/dist/components/organisms/email-preview/desktop-preview/DesktopBrowserHeader.vue2.js +15 -0
  12. package/dist/components/organisms/email-preview/desktop-preview/DesktopPreview.vue.js +10 -14
  13. package/dist/components/organisms/email-preview/desktop-preview/DesktopPreview.vue2.js +14 -22
  14. package/dist/components/organisms/email-preview/desktop-preview/EmailSizeIndicator.vue.js +3 -3
  15. package/dist/components/organisms/email-preview/mobile-preview/ContentView.vue.js +12 -11
  16. package/dist/components/organisms/email-preview/mobile-preview/InboxView.vue.js +12 -10
  17. package/dist/components/organisms/email-preview/mobile-preview/MobilePreview.vue.js +11 -10
  18. package/dist/components/organisms/email-preview/mobile-preview/MobilePreview.vue2.js +15 -14
  19. package/dist/components/organisms/header/EditorActions.vue.js +20 -0
  20. package/dist/components/organisms/header/EditorActions.vue2.js +41 -0
  21. package/dist/components/organisms/header/EditorToolbar.vue.js +18 -0
  22. package/dist/components/organisms/header/EditorToolbar.vue2.js +17 -0
  23. package/dist/components/organisms/header/HeaderWrapper.vue.js +6 -5
  24. package/dist/components/organisms/header/LeftSlot.vue.js +11 -11
  25. package/dist/components/organisms/header/LeftSlot.vue2.js +11 -12
  26. package/dist/components/organisms/header/MiddleSlot.vue.js +7 -7
  27. package/dist/components/organisms/header/MiddleSlot.vue2.js +11 -15
  28. package/dist/components/organisms/header/RightSlot.vue.js +11 -14
  29. package/dist/components/organisms/header/RightSlot.vue2.js +13 -30
  30. package/dist/components/organisms/header/version-history/VersionHistory.vue.js +5 -5
  31. package/dist/components/organisms/onboarding/NewVersionPopup.vue2.js +15 -15
  32. package/dist/components/organisms/unsubscribe/UnsubscribeTypeSelection.vue.js +1 -1
  33. package/dist/components/organisms/unsubscribe/UnsubscribeTypeSelection.vue2.js +20 -19
  34. package/dist/composables/useConfig.js +29 -27
  35. package/dist/composables/useSave.js +13 -11
  36. package/dist/composables/useStripo.js +40 -40
  37. package/dist/config/migrator/index.js +8 -9
  38. package/dist/enums/academy.js +8 -0
  39. package/dist/enums/onboarding.js +1 -2
  40. package/dist/enums/unsubscribe.js +20 -21
  41. package/dist/extensions/Blocks/CouponBlock/constants.js +4 -0
  42. package/dist/extensions/Blocks/CouponBlock/controls/index.js +29 -0
  43. package/dist/extensions/Blocks/CouponBlock/extension.js +5 -4
  44. package/dist/extensions/Blocks/CouponBlock/settingsPanel.js +20 -14
  45. package/dist/extensions/Blocks/CouponBlock/template.js +22 -11
  46. package/dist/extensions/Blocks/Items/block.js +40 -39
  47. package/dist/extensions/Blocks/Items/controls/cardComposition.js +49 -46
  48. package/dist/extensions/Blocks/Items/controls/price/priceOrientation.js +26 -28
  49. package/dist/extensions/Blocks/Items/controls/settingsControl.js +127 -132
  50. package/dist/extensions/Blocks/Items/enums/settingsEnums.js +2 -2
  51. package/dist/extensions/Blocks/Items/layouts/horizontal.html.js +48 -58
  52. package/dist/extensions/Blocks/Items/layouts/vertical.html.js +58 -48
  53. package/dist/extensions/Blocks/Items/store/items-block.js +2 -2
  54. package/dist/extensions/Blocks/Items/template.js +123 -296
  55. package/dist/extensions/Blocks/Items/utils/syncAttributesFromConfigBlock.js +20 -11
  56. package/dist/extensions/Blocks/Recommendation/control.js +1 -1
  57. package/dist/extensions/Blocks/Unsubscribe/extension.js +9 -9
  58. package/dist/extensions/Blocks/common-control.js +55 -67
  59. package/dist/extensions/Blocks/controlFactories.js +122 -111
  60. package/dist/guido.css +1 -1
  61. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js +290 -364
  62. package/dist/package.json.js +1 -1
  63. package/dist/services/stripoApi.js +6 -10
  64. package/dist/src/@types/config/index.d.ts +2 -2
  65. package/dist/src/@types/config/schemas.d.ts +30 -0
  66. package/dist/src/@types/config/types.d.ts +7 -1
  67. package/dist/src/components/organisms/email-preview/desktop-preview/DesktopBrowserHeader.vue.d.ts +2 -0
  68. package/dist/src/components/organisms/header/EditorActions.vue.d.ts +4 -0
  69. package/dist/src/components/organisms/header/EditorToolbar.vue.d.ts +2 -0
  70. package/dist/src/components/organisms/header/RightSlot.vue.d.ts +1 -1
  71. package/dist/src/composables/useConfig.d.ts +8 -0
  72. package/dist/src/enums/academy.d.ts +12 -0
  73. package/dist/src/enums/onboarding.d.ts +0 -1
  74. package/dist/src/enums/unsubscribe.d.ts +0 -1
  75. package/dist/src/extensions/Blocks/CouponBlock/constants.d.ts +14 -0
  76. package/dist/src/extensions/Blocks/CouponBlock/controls/index.d.ts +108 -0
  77. package/dist/src/extensions/Blocks/CouponBlock/template.d.ts +1 -1
  78. package/dist/src/extensions/Blocks/Items/controls/price/priceOrientation.d.ts +1 -1
  79. package/dist/src/extensions/Blocks/Items/controls/settingsControl.d.ts +4 -0
  80. package/dist/src/extensions/Blocks/Items/template.d.ts +1 -20
  81. package/dist/src/extensions/Blocks/common-control.d.ts +9 -14
  82. package/dist/src/extensions/Blocks/controlFactories.d.ts +30 -7
  83. package/dist/src/stores/config.d.ts +164 -1
  84. package/dist/src/stores/editor.d.ts +21 -0
  85. package/dist/static/assets/desktop/desktop-mockup-center.svg.js +4 -0
  86. package/dist/static/assets/desktop/desktop-mockup-left.svg.js +4 -0
  87. package/dist/static/assets/desktop/desktop-mockup-right.svg.js +4 -0
  88. package/dist/static/assets/mobile/email-mockup.svg.js +4 -0
  89. package/dist/static/assets/mobile/inbox-mockup.svg.js +4 -0
  90. package/dist/static/styles/components/button.css.js +1 -1
  91. package/dist/stores/config.js +7 -0
  92. package/dist/stores/editor.js +1 -0
  93. package/package.json +3 -3
  94. package/dist/components/organisms/email-preview/desktop-preview/EmailHeaderInfo.vue.js +0 -17
  95. package/dist/components/organisms/email-preview/desktop-preview/EmailHeaderInfo.vue2.js +0 -20
  96. package/dist/config/migrator/itemsBlockMigrator.js +0 -283
  97. package/dist/extensions/Blocks/Items/utils/nodeConfigUtils.js +0 -172
  98. package/dist/src/config/migrator/itemsBlockMigrator.d.ts +0 -6
  99. package/dist/src/extensions/Blocks/Items/utils/nodeConfigUtils.d.ts +0 -71
  100. package/dist/static/assets/inbox-mockup.svg.js +0 -4
  101. package/dist/static/assets/phone-mockup.svg.js +0 -4
@@ -1,283 +0,0 @@
1
- var B = Object.defineProperty;
2
- var q = (o, t, r) => t in o ? B(o, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : o[t] = r;
3
- var A = (o, t, r) => q(o, typeof t != "symbol" ? t + "" : t, r);
4
- import { productPairs as L } from "../../extensions/Blocks/Items/enums/productEnums.js";
5
- import { ItemInCartOptions as I, DefaultConfigValues as m, SETTINGS_ENUMS as l } from "../../extensions/Blocks/Items/enums/settingsEnums.js";
6
- import { getDefaultTemplate as K } from "../../extensions/Blocks/Items/template.js";
7
- const V = {
8
- ins_apr_img: {
9
- pairsKey: "imageSrc",
10
- defaultKey: "DEFAULT",
11
- isArray: !0
12
- },
13
- ins_apr_name: {
14
- pairsKey: "name",
15
- defaultKey: "DEFAULT",
16
- isArray: !0
17
- },
18
- ins_apr_url: {
19
- pairsKey: "button",
20
- defaultKey: "DEFAULT_HREF",
21
- isArray: !1
22
- },
23
- ins_apr_formattedprice: {
24
- pairsKey: "price",
25
- defaultKey: "DEFAULT_PRICE_FORMATTED",
26
- isArray: !1
27
- },
28
- ins_apr_productcurrency: {
29
- pairsKey: "price",
30
- defaultKey: "DEFAULT_CURRENCY",
31
- isArray: !1
32
- },
33
- ins_apr_quantity: {
34
- pairsKey: "quantity",
35
- defaultKey: "DEFAULT",
36
- isArray: !1
37
- },
38
- ins_apr_price: {
39
- pairsKey: "price",
40
- defaultKey: "DEFAULT_PRICE",
41
- isArray: !1
42
- },
43
- ins_apr_originalprice: {
44
- pairsKey: "originalPrice",
45
- defaultKey: "DEFAULT_PRICE",
46
- isArray: !1
47
- },
48
- ins_apr_originalformattedprice: {
49
- pairsKey: "originalPrice",
50
- defaultKey: "DEFAULT_PRICE_FORMATTED",
51
- isArray: !1
52
- }
53
- };
54
- function U() {
55
- return String(Date.now() + Math.floor(Math.random() * 1e3));
56
- }
57
- function F(o) {
58
- return o ? {
59
- CartItems: l.ITEMS_TYPE.CART_ITEMS,
60
- BrowsedItems: l.ITEMS_TYPE.BROWSED_ITEMS,
61
- PurchasedItems: l.ITEMS_TYPE.PURCHASED_ITEMS,
62
- CART_ITEMS: l.ITEMS_TYPE.CART_ITEMS,
63
- BROWSED_ITEMS: l.ITEMS_TYPE.BROWSED_ITEMS,
64
- PURCHASED_ITEMS: l.ITEMS_TYPE.PURCHASED_ITEMS
65
- }[o] || l.ITEMS_TYPE.CART_ITEMS : l.ITEMS_TYPE.CART_ITEMS;
66
- }
67
- function D(o) {
68
- const t = (e, a) => e == null ? a : e === "1" || e === "true", r = (e, a) => e || a, c = o["data-type"] || o["data-source"], n = F(c);
69
- let i = o["data-cart_items_select_control_value"] || m.cartItemsSelectControlValue;
70
- if (i && !i.includes("{{") && /^\d+$/.test(i)) {
71
- const e = parseInt(i) - 1, a = I[n];
72
- a && a[e] && (i = a[e].value);
73
- }
74
- return {
75
- initialized: !0,
76
- blockInstanceId: r(o["data-block-instance-id"], U()),
77
- source: n,
78
- type: n,
79
- itemsSelectValue: i,
80
- orientation: o["data-card_orientation_control_value"] || l.ORIENTATION.VERTICAL,
81
- nameTrimming: t(o["data-product_name_trimming"], !0),
82
- nameControlEnabled: t(o["data-product_name_control_enabled"], !0),
83
- priceHideDiscount: t(o["data-product_price_hide_discount"], !1),
84
- priceFormatted: t(o["data-product_price_formatted"], !0),
85
- priceCurrencySymbol: r(
86
- o["data-product_price_currency_symbol"],
87
- m.productPriceCurrencySymbolControlValue
88
- ),
89
- priceCurrencyLocation: r(
90
- o["data-product_price_currency_location"],
91
- m.productPriceCurrencyLocationControlValue
92
- ),
93
- priceControlOpened: t(o["data-product_price_control_opened"], !0),
94
- priceOrientation: o["data-product_original_price_control_orientation"] || "horizontal",
95
- quantityControlEnabled: t(o["data-product_quantity_control_enabled"], !0),
96
- buttonLink: r(o["data-product_button_link"], m.productButtonLinkControlValue),
97
- imageLink: r(o["data-product_image_link"], m.productImageLinkControlValue),
98
- buttonLabel: r(o["data-product_button_control_label"], "Buy"),
99
- imageVisible: t(o["data-product_image_visible"], !0),
100
- nameVisible: t(o["data-product_name_visible"], !0),
101
- quantityVisible: t(o["data-product_quantity_visible"], !0),
102
- priceVisible: t(o["data-product_price_visible"], !0),
103
- originalPriceVisible: t(o["data-product_original_price_control_enabled"], !0),
104
- buttonVisible: t(o["data-product_button_visible"], !0)
105
- };
106
- }
107
- class w {
108
- constructor() {
109
- A(this, "parser");
110
- A(this, "DATA_TYPE", "CART_ITEMS");
111
- this.parser = new DOMParser();
112
- }
113
- migrate(t) {
114
- try {
115
- let r = this.removeJinjaConditionals(t);
116
- r = this.replaceTemplateVariables(r);
117
- const c = this.parser.parseFromString(r, "text/html"), n = c.querySelectorAll("td.esd-cart-items-block");
118
- return n.length === 0 ? (console.warn('ItemsBlockMigrator: No blocks found with selector "td.esd-cart-items-block"'), r) : (n.forEach((i) => {
119
- const e = this.extractConfiguration(i), a = K({
120
- orientation: e.orientation,
121
- itemsType: e.itemsType,
122
- itemId: e.itemId,
123
- currencySymbol: e.currencySymbol,
124
- currencyLocation: e.currencyLocation,
125
- formattedPrice: e.formattedPrice,
126
- configBlockAttributes: e.configBlockAttributes,
127
- migrate: !0,
128
- nameStyles: e.nameStyles,
129
- buttonStyles: e.buttonStyles,
130
- priceStyles: e.priceStyles,
131
- originalPriceStyles: e.originalPriceStyles,
132
- quantityStyles: e.quantityStyles,
133
- nodeConfig: D(e.configBlockAttributes)
134
- }), u = this.parser.parseFromString(
135
- `<table><tbody><tr>${a}</tr></tbody></table>`,
136
- "text/html"
137
- ).querySelector("td");
138
- if (u && i.parentNode) {
139
- const s = D(e.configBlockAttributes);
140
- u.setAttribute("esd-ext-config", JSON.stringify(s));
141
- const p = u.querySelector("esd-config-block");
142
- p && p.remove(), i.parentNode.replaceChild(u, i);
143
- }
144
- }), c.documentElement.outerHTML);
145
- } catch (r) {
146
- return console.error("ItemsBlockMigrator failed:", r), t;
147
- }
148
- }
149
- /**
150
- * Extracts configuration from legacy HTML block
151
- * Parses data attributes and structure to determine:
152
- * - orientation, itemsType, itemNumber, currency settings, esd-config-block attributes
153
- * - UI styles from product elements (name, price, button, quantity, etc.)
154
- */
155
- extractConfiguration(t) {
156
- var E, C, P;
157
- const r = ((E = t.querySelector("[data-type]")) == null ? void 0 : E.getAttribute("data-type")) || "CART_ITEMS", c = ((C = t.querySelector("[data-number]")) == null ? void 0 : C.getAttribute("data-number")) || "1", n = parseInt(c) - 1, i = I[r], e = ((P = i == null ? void 0 : i[n]) == null ? void 0 : P.value) || i[0].value, a = t.querySelector('[product-attr="price"]'), _ = (a == null ? void 0 : a.getAttribute("data-currency_symbol")) || void 0, s = ((a == null ? void 0 : a.getAttribute("data-curency")) || "before") === "after" ? "1" : "0", p = (a == null ? void 0 : a.getAttribute("data-formated")) !== "false", y = this.extractConfigBlockAttributes(t, r), f = y["data-product_original_price_control_orientation"] === "vertical" ? "vertical" : "horizontal", d = t.querySelector('a[product-attr="name"]'), v = (d == null ? void 0 : d.getAttribute("style")) || void 0, b = t.querySelector('a[product-attr="button"]'), M = (b == null ? void 0 : b.getAttribute("style")) || void 0, h = (a == null ? void 0 : a.getAttribute("style")) || void 0, S = t.querySelector('[product-attr="originalPrice"]'), R = (S == null ? void 0 : S.getAttribute("style")) || void 0, T = t.querySelector('[product-attr="quantity"]'), k = (T == null ? void 0 : T.getAttribute("style")) || void 0;
158
- return {
159
- orientation: f,
160
- itemsType: r,
161
- itemId: e,
162
- currencySymbol: _,
163
- currencyLocation: s,
164
- formattedPrice: p,
165
- configBlockAttributes: y,
166
- nameStyles: v,
167
- buttonStyles: M,
168
- priceStyles: h,
169
- originalPriceStyles: R,
170
- quantityStyles: k
171
- };
172
- }
173
- /**
174
- * Extracts all data-* attributes from the esd-config-block element
175
- * Returns a key-value mapping of all configuration attributes
176
- * @param block - The block element containing the esd-config-block
177
- * @param itemsType - The type of items (CART_ITEMS, BROWSED_ITEMS, PURCHASED_ITEMS)
178
- */
179
- extractConfigBlockAttributes(t, r) {
180
- const c = t.querySelector("esd-config-block"), n = {};
181
- if (!c)
182
- return this.getDefaultConfigBlockAttributes();
183
- if (Array.from(c.attributes).forEach((e) => {
184
- e.name.startsWith("data-") && (n[e.name] = e.value);
185
- }), n["data-cart_items_select_control_value"]) {
186
- const e = n["data-cart_items_select_control_value"];
187
- if (/^\d+$/.test(e)) {
188
- const a = parseInt(e) - 1, _ = I[r];
189
- _ && _[a] && (n["data-cart_items_select_control_value"] = _[a].value);
190
- }
191
- }
192
- if (n["data-product_price_control_curency"]) {
193
- const e = n["data-product_price_control_curency"];
194
- e === "before" ? n["data-product_price_control_curency"] = "0" : e === "after" && (n["data-product_price_control_curency"] = "1");
195
- }
196
- (!n["data-product_price_currency_symbol"] || n["data-product_price_currency_symbol"].trim() === "") && (n["data-product_price_currency_symbol"] = "USD");
197
- const i = { ...this.getDefaultConfigBlockAttributes(), ...n };
198
- return i["data-type"] = r, i["data-source"] = r, i;
199
- }
200
- /**
201
- * Returns default esd-config-block attributes based on the old template structure
202
- * These serve as fallbacks when attributes are missing
203
- */
204
- getDefaultConfigBlockAttributes() {
205
- return {
206
- "data-type": "CART_ITEMS",
207
- "data-product_image_control_opened": "false",
208
- "data-product_image_control_image-width": "250",
209
- "data-product_image_control_image-height": "250",
210
- "data-product_image_control_align_button": "true",
211
- "data-product_image_control_padding_mobile": "true",
212
- "data-product_name_control_opened": "false",
213
- "data-product_quantity_control_opened": "true",
214
- // DONE
215
- "data-product_quantity_control_enabled": "false",
216
- "data-product_name_control_font_font_size": "20",
217
- "data-product_price_control_opened": "false",
218
- "data-product_price_control_font_font_size": "20",
219
- "data-product_price_control_color": "#060606",
220
- "data-product_price_control_curency": "0",
221
- "data-product_price_currency_symbol": "USD",
222
- "data-product_original_price_control_opened": "false",
223
- "data-product_original_price_control_font_font_size": "19",
224
- "data-product_original_price_control_align_align_desktop": "center",
225
- "data-product_original_price_control_orientation": "vertical",
226
- "data-product_button_control_opened": "true",
227
- "data-product_button_control_label": "Comprar",
228
- // DONE
229
- "data-product_button_control_font_font_size": "17",
230
- "data-product_button_control_color": "#ffffff",
231
- "data-product_button_control_background": "#010101",
232
- "data-product_button_control_atw": "false",
233
- "data-product_original_price_control_enabled": "false"
234
- };
235
- }
236
- /**
237
- * Removes Jinja2 conditional statements from HTML
238
- * - Removes {% if ins_apr_total_product_kind > N %}
239
- * - Removes {% if ins_apr_price_N != ins_apr_originalprice_N %}
240
- * - Removes {% endif %}
241
- */
242
- removeJinjaConditionals(t) {
243
- let r = t.replace(/\{%\s*if\s+ins_apr_total_product_kind\s*(&gt;|>)\s*\d+\s*%\}/g, "");
244
- return r = r.replace(/\{%\s*if\s+ins_apr_price_\d+\s*(!&#61;|!=)\s*ins_apr_originalprice_\d+\s*%\}/g, ""), r = r.replace(/\{%\s*endif\s*%\}/g, ""), r = r.replace(/\n\s*\n\s*\n/g, `
245
-
246
- `), r;
247
- }
248
- /**
249
- * Replaces template variables with default values from productPairs
250
- *
251
- * Examples:
252
- * - {{ins_apr_img_1}} → https://s3.../ins_apr_img_1.jpeg (array-based, uses index 0)
253
- * - {{ins_apr_name_2}} → 'Set of Sprite Yoga Straps' (array-based, uses index 1)
254
- * - {{ins_apr_formattedprice_1}} → '1,100.00' (single value, ignores index)
255
- * - {{ins_apr_url_3}} → '#!' (single value, ignores index)
256
- */
257
- replaceTemplateVariables(t) {
258
- const { PAIRS_FOR_EXTENSION: r } = L;
259
- return t.replace(/{{([^}]+)}}/g, (c, n) => {
260
- const i = n.match(/^(ins_apr_[a-z]+)_(\d+)$/);
261
- if (!i)
262
- return c;
263
- const [, e, a] = i, _ = V[e];
264
- if (!_)
265
- return console.warn(`Unknown variable mapping for: ${e}`), c;
266
- const { pairsKey: u, defaultKey: s, isArray: p } = _, y = r[u][this.DATA_TYPE];
267
- if (!y)
268
- return console.warn(`No data found for: ${u}.${this.DATA_TYPE}`), c;
269
- if (p) {
270
- const f = parseInt(a) - 1, d = y[s];
271
- return Array.isArray(d) && d[f] ? d[f] : (console.warn(`Array value not found: ${u}.${this.DATA_TYPE}.${s}[${f}]`), c);
272
- }
273
- const g = y[s];
274
- return g !== void 0 ? String(g) : (console.warn(`Default value not found: ${u}.${this.DATA_TYPE}.${s}`), c);
275
- });
276
- }
277
- }
278
- function $(o) {
279
- return new w().migrate(o);
280
- }
281
- export {
282
- $ as migrateItemsBlock
283
- };
@@ -1,172 +0,0 @@
1
- import { ModificationDescription as _ } from "../../../../node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js";
2
- import { DefaultConfigValues as e, SETTINGS_ENUMS as n, ItemInCartOptions as g } from "../enums/settingsEnums.js";
3
- function d() {
4
- return String(Date.now() + Math.floor(Math.random() * 1e3));
5
- }
6
- function f() {
7
- return {
8
- initialized: !0,
9
- blockInstanceId: d(),
10
- source: n.ITEMS_TYPE.CART_ITEMS,
11
- type: n.ITEMS_TYPE.CART_ITEMS,
12
- itemsSelectValue: e.cartItemsSelectControlValue,
13
- orientation: n.ORIENTATION.VERTICAL,
14
- nameTrimming: e.productNameTrimmingControlValue === "1",
15
- nameControlEnabled: e.productNameControlEnabled === "1",
16
- priceHideDiscount: e.productPriceHideDiscountControlValue === "1",
17
- priceFormatted: e.productPriceFormattedControlValue === "1",
18
- priceCurrencySymbol: e.productPriceCurrencySymbolControlValue,
19
- priceCurrencyLocation: e.productPriceCurrencyLocationControlValue,
20
- priceControlOpened: e.productPriceControlOpened === "1",
21
- priceOrientation: "horizontal",
22
- quantityControlEnabled: e.productQuantityControlEnabled === "1",
23
- buttonLink: e.productButtonLinkControlValue,
24
- imageLink: e.productImageLinkControlValue,
25
- buttonLabel: "Buy",
26
- imageVisible: e.productImageVisible === "1",
27
- nameVisible: e.productNameVisible === "1",
28
- quantityVisible: e.productQuantityVisible === "1",
29
- priceVisible: e.productPriceVisible === "1",
30
- originalPriceVisible: e.productOriginalPriceVisible === "1",
31
- buttonVisible: e.productButtonVisible === "1"
32
- };
33
- }
34
- function s(r) {
35
- if (!r)
36
- return null;
37
- const t = r.closest(".items-block-v2");
38
- return t || r.closest(".esd-cart-items-block");
39
- }
40
- function m(r) {
41
- return r ? {
42
- CartItems: n.ITEMS_TYPE.CART_ITEMS,
43
- BrowsedItems: n.ITEMS_TYPE.BROWSED_ITEMS,
44
- PurchasedItems: n.ITEMS_TYPE.PURCHASED_ITEMS,
45
- // Also handle already correct formats
46
- CART_ITEMS: n.ITEMS_TYPE.CART_ITEMS,
47
- BROWSED_ITEMS: n.ITEMS_TYPE.BROWSED_ITEMS,
48
- PURCHASED_ITEMS: n.ITEMS_TYPE.PURCHASED_ITEMS
49
- }[r] || n.ITEMS_TYPE.CART_ITEMS : n.ITEMS_TYPE.CART_ITEMS;
50
- }
51
- function C(r, t) {
52
- if (!r)
53
- return e.cartItemsSelectControlValue;
54
- if (r.includes("{{"))
55
- return r;
56
- if (/^\d+$/.test(r)) {
57
- const i = parseInt(r) - 1, o = g[t];
58
- if (o && o[i])
59
- return o[i].value;
60
- }
61
- return e.cartItemsSelectControlValue;
62
- }
63
- function I(r) {
64
- const t = r.querySelector("esd-config-block");
65
- if (!t)
66
- return null;
67
- const i = (c, a) => c == null ? a : c === "1" || c === "true", o = (c, a) => c || a, l = t.getAttribute("data-type"), u = m(l), p = t.getAttribute("data-cart_items_select_control_value"), b = C(p, u);
68
- return {
69
- initialized: i(t.getAttribute("data-initialized"), !1),
70
- blockInstanceId: o(
71
- t.getAttribute("data-block-instance-id"),
72
- d()
73
- ),
74
- source: u,
75
- type: u,
76
- itemsSelectValue: b,
77
- orientation: t.getAttribute("data-card_orientation_control_value") || n.ORIENTATION.VERTICAL,
78
- nameTrimming: i(
79
- t.getAttribute("data-product_name_trimming"),
80
- !0
81
- ),
82
- nameControlEnabled: i(
83
- t.getAttribute("data-product_name_control_enabled"),
84
- !0
85
- ),
86
- priceHideDiscount: i(
87
- t.getAttribute("data-product_price_hide_discount"),
88
- !0
89
- ),
90
- priceFormatted: i(
91
- t.getAttribute("data-product_price_formatted"),
92
- !0
93
- ),
94
- priceCurrencySymbol: o(
95
- t.getAttribute("data-product_price_currency_symbol"),
96
- e.productPriceCurrencySymbolControlValue
97
- ),
98
- priceCurrencyLocation: o(
99
- t.getAttribute("data-product_price_currency_location"),
100
- e.productPriceCurrencyLocationControlValue
101
- ),
102
- priceControlOpened: i(
103
- t.getAttribute("data-product_price_control_opened"),
104
- !0
105
- ),
106
- priceOrientation: t.getAttribute("data-product_original_price_control_orientation") || "horizontal",
107
- quantityControlEnabled: i(
108
- t.getAttribute("data-product_quantity_control_enabled"),
109
- !0
110
- ),
111
- buttonLink: o(
112
- t.getAttribute("data-product_button_link"),
113
- e.productButtonLinkControlValue
114
- ),
115
- imageLink: o(
116
- t.getAttribute("data-product_image_link"),
117
- e.productImageLinkControlValue
118
- ),
119
- buttonLabel: o(
120
- t.getAttribute("data-product_button_control_label"),
121
- "Buy"
122
- ),
123
- imageVisible: i(
124
- t.getAttribute("data-product_image_visible"),
125
- !0
126
- ),
127
- nameVisible: i(
128
- t.getAttribute("data-product_name_visible"),
129
- !0
130
- ),
131
- quantityVisible: i(
132
- t.getAttribute("data-product_quantity_visible"),
133
- !0
134
- ),
135
- priceVisible: i(
136
- t.getAttribute("data-product_price_visible"),
137
- !0
138
- ),
139
- originalPriceVisible: i(
140
- t.getAttribute("data-product_original_price_control_enabled"),
141
- !0
142
- ),
143
- buttonVisible: i(
144
- t.getAttribute("data-product_button_visible"),
145
- !0
146
- )
147
- };
148
- }
149
- function S(r) {
150
- const t = s(r);
151
- if (!t)
152
- return null;
153
- const i = t.getNodeConfig();
154
- if (i && i.initialized)
155
- return i;
156
- const o = I(t);
157
- return o || null;
158
- }
159
- function y(r, t, i) {
160
- const o = s(r);
161
- if (!o)
162
- return;
163
- const u = { ...o.getNodeConfig() || {}, ...i };
164
- t.getDocumentModifier().modifyHtml(o).setNodeConfig(u).apply(new _("Update Items block configuration"));
165
- }
166
- export {
167
- d as generateBlockInstanceId,
168
- f as getDefaultItemsBlockConfig,
169
- S as getItemsBlockConfig,
170
- s as getItemsBlockContainer,
171
- y as setItemsBlockConfig
172
- };
@@ -1,6 +0,0 @@
1
- /**
2
- * Migrates legacy ItemsBlock templates to v2 format
3
- * @param html - HTML string containing legacy items blocks
4
- * @returns Migrated HTML with replaced variables and cleaned conditionals
5
- */
6
- export declare function migrateItemsBlock(html: string): string;
@@ -1,71 +0,0 @@
1
- import { OrientationType, ProductType } from '@@/Types/extensions/items';
2
- import { ImmutableHtmlNode, ImmutableHtmlElementNode, ControlApi, BlockApi } from '@stripoinc/ui-editor-extensions';
3
- /**
4
- * Typed configuration object for Items Block.
5
- * Replaces the deprecated esd-config-block data-* attributes approach.
6
- * Configuration is stored directly on the block node using Stripo V2's getNodeConfig/setNodeConfig API.
7
- */
8
- export interface ItemsBlockConfig {
9
- initialized: boolean;
10
- blockInstanceId: string;
11
- source: ProductType;
12
- type: ProductType;
13
- itemsSelectValue: string;
14
- orientation: OrientationType;
15
- nameTrimming: boolean;
16
- nameControlEnabled: boolean;
17
- priceHideDiscount: boolean;
18
- priceFormatted: boolean;
19
- priceCurrencySymbol: string;
20
- priceCurrencyLocation: string;
21
- priceControlOpened: boolean;
22
- priceOrientation: 'vertical' | 'horizontal';
23
- quantityControlEnabled: boolean;
24
- buttonLink: string;
25
- imageLink: string;
26
- buttonLabel: string;
27
- imageVisible: boolean;
28
- nameVisible: boolean;
29
- quantityVisible: boolean;
30
- priceVisible: boolean;
31
- originalPriceVisible: boolean;
32
- buttonVisible: boolean;
33
- }
34
- /**
35
- * Generates a unique block instance ID.
36
- */
37
- export declare function generateBlockInstanceId(): string;
38
- /**
39
- * Returns default ItemsBlockConfig values.
40
- * These are used when initializing a new block or when migrating from legacy format.
41
- */
42
- export declare function getDefaultItemsBlockConfig(): ItemsBlockConfig;
43
- /**
44
- * Gets the Items block container element from the current node.
45
- * The container is identified by the `.items-block-v2` class (new) or `.esd-cart-items-block` (legacy).
46
- * @param currentNode - The current node from the control (usually this.currentNode)
47
- * @returns The container element or null if not found
48
- */
49
- export declare function getItemsBlockContainer(currentNode: ImmutableHtmlNode | undefined): ImmutableHtmlElementNode | null;
50
- /**
51
- * Gets the node configuration from the Items block.
52
- * Uses Stripo V2's getNodeConfig() API.
53
- * Falls back to migrating from legacy esd-config-block if nodeConfig is empty.
54
- * @param currentNode - The current node from the control
55
- * @returns The ItemsBlockConfig object or null if not found
56
- */
57
- export declare function getItemsBlockConfig(currentNode: ImmutableHtmlNode | undefined): ItemsBlockConfig | null;
58
- /**
59
- * Sets the node configuration on the Items block.
60
- * Uses Stripo V2's setNodeConfig() API.
61
- * @param currentNode - The current node from the control
62
- * @param api - The API object (ControlApi or BlockApi)
63
- * @param config - The configuration to set (partial update supported)
64
- */
65
- export declare function setItemsBlockConfig(currentNode: ImmutableHtmlNode | undefined, api: ControlApi | BlockApi, config: Partial<ItemsBlockConfig>): void;
66
- /**
67
- * Gets the block instance ID from the node config.
68
- * @param currentNode - The current node from the control
69
- * @returns The block instance ID or null if not found
70
- */
71
- export declare function getBlockInstanceIdFromConfig(currentNode: ImmutableHtmlNode | undefined): string | null;
@@ -1,4 +0,0 @@
1
- const e = "data:image/svg+xml,%3csvg%20width='344'%20height='713'%20viewBox='0%200%20344%20713'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3e%3crect%20width='344'%20height='712.056'%20rx='44'%20fill='white'/%3e%3cpath%20d='M152.709%2071V61.9H153.814V71H152.709ZM155.939%2071V64.5H156.914L156.979%2065.696V71H155.939ZM160.502%2071V67.672H161.542V71H160.502ZM160.502%2067.672C160.502%2067.0307%20160.429%2066.541%20160.281%2066.203C160.134%2065.865%20159.93%2065.6353%20159.67%2065.514C159.41%2065.384%20159.116%2065.319%20158.786%2065.319C158.214%2065.319%20157.768%2065.5227%20157.447%2065.93C157.135%2066.3287%20156.979%2066.8963%20156.979%2067.633H156.472C156.472%2066.9483%20156.572%2066.359%20156.771%2065.865C156.971%2065.371%20157.261%2064.994%20157.642%2064.734C158.024%2064.474%20158.483%2064.344%20159.02%2064.344C159.532%2064.344%20159.974%2064.448%20160.346%2064.656C160.728%2064.8553%20161.022%2065.176%20161.23%2065.618C161.447%2066.06%20161.551%2066.6407%20161.542%2067.36V67.672H160.502ZM163.188%2071V61.9H164.228V69.791L164.176%2071H163.188ZM166.425%2071.156C165.879%2071.156%20165.398%2071.013%20164.982%2070.727C164.575%2070.441%20164.259%2070.0423%20164.033%2069.531C163.808%2069.011%20163.695%2068.4173%20163.695%2067.75C163.695%2067.074%20163.808%2066.4803%20164.033%2065.969C164.259%2065.4577%20164.575%2065.059%20164.982%2064.773C165.398%2064.487%20165.879%2064.344%20166.425%2064.344C167.006%2064.344%20167.517%2064.487%20167.959%2064.773C168.401%2065.059%20168.744%2065.4577%20168.986%2065.969C169.238%2066.4803%20169.363%2067.074%20169.363%2067.75C169.363%2068.4173%20169.238%2069.011%20168.986%2069.531C168.744%2070.0423%20168.401%2070.441%20167.959%2070.727C167.517%2071.013%20167.006%2071.156%20166.425%2071.156ZM166.191%2070.207C166.599%2070.207%20166.958%2070.103%20167.27%2069.895C167.591%2069.687%20167.842%2069.3967%20168.024%2069.024C168.215%2068.6513%20168.31%2068.2267%20168.31%2067.75C168.31%2067.2733%20168.219%2066.8487%20168.037%2066.476C167.864%2066.1033%20167.617%2065.813%20167.296%2065.605C166.976%2065.397%20166.612%2065.293%20166.204%2065.293C165.823%2065.293%20165.481%2065.397%20165.177%2065.605C164.883%2065.813%20164.649%2066.1033%20164.475%2066.476C164.311%2066.8487%20164.228%2067.2733%20164.228%2067.75C164.228%2068.2267%20164.311%2068.6513%20164.475%2069.024C164.649%2069.3967%20164.883%2069.687%20165.177%2069.895C165.472%2070.103%20165.81%2070.207%20166.191%2070.207ZM173.679%2071.156C173.046%2071.156%20172.483%2071.013%20171.989%2070.727C171.503%2070.4323%20171.122%2070.0293%20170.845%2069.518C170.567%2069.0067%20170.429%2068.4173%20170.429%2067.75C170.429%2067.0827%20170.563%2066.4933%20170.832%2065.982C171.109%2065.4707%20171.49%2065.072%20171.976%2064.786C172.47%2064.4913%20173.029%2064.344%20173.653%2064.344C174.294%2064.344%20174.857%2064.4913%20175.343%2064.786C175.837%2065.072%20176.218%2065.4707%20176.487%2065.982C176.764%2066.4933%20176.903%2067.0827%20176.903%2067.75C176.903%2068.4173%20176.764%2069.0067%20176.487%2069.518C176.218%2070.0293%20175.841%2070.4323%20175.356%2070.727C174.87%2071.013%20174.311%2071.156%20173.679%2071.156ZM173.679%2070.194C174.112%2070.194%20174.489%2070.09%20174.81%2069.882C175.13%2069.674%20175.382%2069.388%20175.564%2069.024C175.754%2068.66%20175.85%2068.2353%20175.85%2067.75C175.85%2067.2647%20175.754%2066.84%20175.564%2066.476C175.382%2066.112%20175.126%2065.826%20174.797%2065.618C174.467%2065.41%20174.086%2065.306%20173.653%2065.306C173.228%2065.306%20172.851%2065.41%20172.522%2065.618C172.201%2065.826%20171.945%2066.112%20171.755%2066.476C171.573%2066.84%20171.482%2067.2647%20171.482%2067.75C171.482%2068.2267%20171.573%2068.6513%20171.755%2069.024C171.945%2069.388%20172.205%2069.674%20172.535%2069.882C172.873%2070.09%20173.254%2070.194%20173.679%2070.194ZM177.503%2071L180.155%2067.269L182.027%2064.5H183.262L180.792%2068.01L178.764%2071H177.503ZM182.17%2071L180.168%2068.01L177.672%2064.5H178.907L180.792%2067.269L183.418%2071H182.17Z'%20fill='%23989898'/%3e%3cline%20x1='12'%20y1='86.5'%20x2='332'%20y2='86.5'%20stroke='black'%20stroke-opacity='0.07'/%3e%3cline%20x1='28'%20y1='150.5'%20x2='316'%20y2='150.5'%20stroke='black'%20stroke-opacity='0.07'/%3e%3cline%20x1='28'%20y1='214.5'%20x2='316'%20y2='214.5'%20stroke='black'%20stroke-opacity='0.07'/%3e%3cline%20x1='28'%20y1='278.5'%20x2='316'%20y2='278.5'%20stroke='black'%20stroke-opacity='0.07'/%3e%3cline%20x1='28'%20y1='342.5'%20x2='316'%20y2='342.5'%20stroke='black'%20stroke-opacity='0.07'/%3e%3cline%20x1='28'%20y1='406.5'%20x2='316'%20y2='406.5'%20stroke='black'%20stroke-opacity='0.07'/%3e%3cline%20x1='28'%20y1='470.5'%20x2='316'%20y2='470.5'%20stroke='black'%20stroke-opacity='0.07'/%3e%3cline%20x1='28'%20y1='534.5'%20x2='316'%20y2='534.5'%20stroke='black'%20stroke-opacity='0.07'/%3e%3cline%20x1='28'%20y1='598.5'%20x2='316'%20y2='598.5'%20stroke='black'%20stroke-opacity='0.07'/%3e%3crect%20width='320'%20height='64'%20transform='translate(12%20626)'%20fill='white'/%3e%3crect%20x='28'%20y='644'%20width='20'%20height='20'%20fill='url(%23pattern0_24_102)'/%3e%3crect%20x='292'%20y='642'%20width='24'%20height='24'%20fill='url(%23pattern1_24_102)'/%3e%3cpath%20d='M54.6454%2035V29.1943H54.5624L52.8095%2030.4346V29.248L54.6503%2027.9541H55.9052V35H54.6454ZM60.7072%2035V33.6475H57.2599V32.6172C58.173%2031.0303%2059.174%2029.4092%2060.131%2027.9541H61.9132V32.6074H62.8605V33.6475H61.9132V35H60.7072ZM58.4318%2032.6367H60.7267V28.96H60.6535C59.9308%2030.0635%2059.1154%2031.3672%2058.4318%2032.5635V32.6367ZM64.6742%2030.4346C64.2298%2030.4346%2063.8978%2030.0928%2063.8978%2029.6631C63.8978%2029.2285%2064.2298%2028.8916%2064.6742%2028.8916C65.1234%2028.8916%2065.4505%2029.2285%2065.4505%2029.6631C65.4505%2030.0928%2065.1234%2030.4346%2064.6742%2030.4346ZM64.6742%2034.0576C64.2298%2034.0576%2063.8978%2033.7207%2063.8978%2033.2861C63.8978%2032.8516%2064.2298%2032.5146%2064.6742%2032.5146C65.1234%2032.5146%2065.4505%2032.8516%2065.4505%2033.2861C65.4505%2033.7207%2065.1234%2034.0576%2064.6742%2034.0576ZM66.688%2035V34.1504L69.0025%2031.7871C69.9595%2030.8203%2070.2281%2030.4639%2070.2281%2029.9219V29.9072C70.2281%2029.2578%2069.7837%2028.7891%2069.0513%2028.7891C68.3042%2028.7891%2067.8013%2029.2822%2067.8013%2030.0098L67.7964%2030.0293L66.6246%2030.0244L66.6197%2030.0098C66.6197%2028.6963%2067.6451%2027.7783%2069.1148%2027.7783C70.4869%2027.7783%2071.4732%2028.6133%2071.4732%2029.7998V29.8145C71.4732%2030.6152%2071.0875%2031.25%2069.8033%2032.4854L68.3921%2033.8525V33.9551H71.5806V35H66.688ZM75.1521%2035.1758C73.4773%2035.1758%2072.4714%2033.7549%2072.4714%2031.4795V31.4697C72.4714%2029.1943%2073.4773%2027.7783%2075.1521%2027.7783C76.8269%2027.7783%2077.8425%2029.1943%2077.8425%2031.4697V31.4795C77.8425%2033.7549%2076.8269%2035.1758%2075.1521%2035.1758ZM75.1521%2034.1553C76.0505%2034.1553%2076.573%2033.1494%2076.573%2031.4795V31.4697C76.573%2029.7998%2076.0505%2028.8037%2075.1521%2028.8037C74.2537%2028.8037%2073.741%2029.7998%2073.741%2031.4697V31.4795C73.741%2033.1494%2074.2537%2034.1553%2075.1521%2034.1553Z'%20fill='black'/%3e%3cpath%20d='M257.835%2028C257.835%2027.5398%20258.208%2027.1667%20258.668%2027.1667H259.501C259.961%2027.1667%20260.335%2027.5398%20260.335%2028V34.6667C260.335%2035.1269%20259.961%2035.5%20259.501%2035.5H258.668C258.208%2035.5%20257.835%2035.1269%20257.835%2034.6667V28Z'%20fill='black'/%3e%3cpath%20d='M262.001%2026.3333C262.001%2025.8731%20262.374%2025.5%20262.835%2025.5H263.668C264.128%2025.5%20264.501%2025.8731%20264.501%2026.3333V34.6667C264.501%2035.1269%20264.128%2035.5%20263.668%2035.5H262.835C262.374%2035.5%20262.001%2035.1269%20262.001%2034.6667V26.3333Z'%20fill='black'/%3e%3cpath%20d='M253.668%2030.9167C253.668%2030.4564%20254.041%2030.0833%20254.501%2030.0833H255.335C255.795%2030.0833%20256.168%2030.4564%20256.168%2030.9167V34.6667C256.168%2035.1269%20255.795%2035.5%20255.335%2035.5H254.501C254.041%2035.5%20253.668%2035.1269%20253.668%2034.6667V30.9167Z'%20fill='black'/%3e%3cpath%20d='M249.501%2033C249.501%2032.5398%20249.874%2032.1667%20250.335%2032.1667H251.168C251.628%2032.1667%20252.001%2032.5398%20252.001%2033V34.6667C252.001%2035.1269%20251.628%2035.5%20251.168%2035.5H250.335C249.874%2035.5%20249.501%2035.1269%20249.501%2034.6667V33Z'%20fill='black'/%3e%3cpath%20d='M277.668%2033.0361C278.868%2032.0006%20280.625%2032.0004%20281.824%2033.0361C281.885%2033.0918%20281.919%2033.1709%20281.921%2033.2539C281.923%2033.3368%20281.891%2033.4165%20281.833%2033.4746L279.954%2035.4102C279.899%2035.4669%20279.825%2035.499%20279.746%2035.499C279.668%2035.499%20279.592%2035.467%20279.537%2035.4102L277.658%2033.4746C277.601%2033.4165%20277.569%2033.3367%20277.571%2033.2539C277.572%2033.1709%20277.608%2033.0918%20277.668%2033.0361ZM275.128%2030.7197C277.713%2028.2656%20281.716%2028.2656%20284.301%2030.7197C284.359%2030.7773%20284.392%2030.8567%20284.393%2030.9395C284.394%2031.0223%20284.362%2031.1024%20284.305%2031.1611L283.219%2032.2812C283.107%2032.3954%20282.926%2032.3974%20282.812%2032.2861C281.963%2031.5016%20280.858%2031.0673%20279.713%2031.0674C278.569%2031.068%20277.466%2031.5022%20276.617%2032.2861C276.503%2032.3974%20276.322%2032.3953%20276.21%2032.2812L275.124%2031.1611C275.067%2031.1025%20275.036%2031.0223%20275.036%2030.9395C275.037%2030.8567%20275.07%2030.7772%20275.128%2030.7197ZM272.591%2028.4082C276.556%2024.5301%20282.81%2024.5301%20286.775%2028.4082C286.832%2028.4658%20286.864%2028.5448%20286.865%2028.627C286.865%2028.7088%20286.834%2028.7875%20286.778%2028.8457L285.69%2029.9658C285.578%2030.0808%20285.396%2030.0819%20285.282%2029.9688C283.772%2028.503%20281.767%2027.6856%20279.683%2027.6855C277.599%2027.6857%20275.594%2028.503%20274.083%2029.9688C273.97%2030.0821%20273.788%2030.0809%20273.676%2029.9658L272.588%2028.8457C272.532%2028.7874%20272.501%2028.708%20272.501%2028.626C272.502%2028.5441%20272.534%2028.4656%20272.591%2028.4082Z'%20fill='black'/%3e%3cpath%20opacity='0.35'%20d='M298.865%2026H309.865C311.245%2026%20312.365%2027.1193%20312.365%2028.5V31.5C312.365%2032.8807%20311.245%2034%20309.865%2034H298.865C297.484%2034%20296.365%2032.8807%20296.365%2031.5V28.5C296.365%2027.1193%20297.484%2026%20298.865%2026Z'%20stroke='black'/%3e%3cpath%20opacity='0.4'%20d='M313.865%2028.5V31.5C314.47%2031.2459%20314.865%2030.6549%20314.865%2030C314.865%2029.3451%20314.47%2028.7541%20313.865%2028.5Z'%20fill='black'/%3e%3cpath%20d='M297.865%2028.5C297.865%2027.9477%20298.312%2027.5%20298.865%2027.5H309.865C310.417%2027.5%20310.865%2027.9477%20310.865%2028.5V31.5C310.865%2032.0523%20310.417%2032.5%20309.865%2032.5H298.865C298.312%2032.5%20297.865%2032.0523%20297.865%2031.5V28.5Z'%20fill='black'/%3e%3cg%20opacity='0.8'%3e%3crect%20x='127'%20y='690'%20width='90'%20height='4'%20rx='2'%20fill='%230F1218'%20style='mix-blend-mode:darken'/%3e%3c/g%3e%3crect%20x='131'%20y='20'%20width='83'%20height='22'%20rx='11'%20fill='%2324262D'/%3e%3cdefs%3e%3cpattern%20id='pattern0_24_102'%20patternContentUnits='objectBoundingBox'%20width='1'%20height='1'%3e%3cuse%20xlink:href='%23image0_24_102'%20transform='scale(0.02)'/%3e%3c/pattern%3e%3cpattern%20id='pattern1_24_102'%20patternContentUnits='objectBoundingBox'%20width='1'%20height='1'%3e%3cuse%20xlink:href='%23image1_24_102'%20transform='scale(0.0208333)'/%3e%3c/pattern%3e%3cimage%20id='image0_24_102'%20width='50'%20height='50'%20preserveAspectRatio='none'%20xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAYAAAAeP4ixAAAACXBIWXMAAAsTAAALEwEAmpwYAAAEL0lEQVR4nO1aS48UVRS+xAcajIqKutSl0Sh/wifia+drB9ENMEG3OK7FWRTTfb/vVKfTSS97qSFGEzGIGhBE2MigsFJZKLoTJWjafD3nJpVM10x3Tz9qCF9SSc/cW6fuqXPuOed+p0K4gesUjUbjHjN7ieRBkodJLpH8E8BVXf77nI8dBPBijHFrqAJardZtMcY3SX5G8j+S3WEuAP8C+JTkG1mWbZ66AgsLC7eb2TsALhUW9g+AI2Z2QJap1+uP6I2b2S269Fv/0xiA90h+oXsKSv1Kcr9ezlSUMLMdJC8WFnDSzHaZ2V3Dymq1WncD2E3yVEHeBTN7dqJuxGWkB35nZk+NSz7JZwB8X7BwfezWqdVqD2rhrsBfJPd0Op2bxvqQEIJkAthH8kqydqPReGAswvM8f1jmdsHnYoyPhQmjXq8/DuC8W+YnrWFdApvN5rYkEMC3ZnZfmBJijFtJfuXKXJRXjCRI/llwp2/a7faWMGW02+0tAI4nNxtpz6SNLXdSsgszwuLi4r0FN6uPEmJ7G3sae2KQPUMPAIpuAye7Qp7YEyoCknNp8w/kYgDeTXliEiF2VMzPz99M8owrM7fqZNU7XipIkSdDxQDgOV/bpVWtouItRYhQQXS73U0pkprZa6UTvYrVpF39xgEcG7bCHfUCcKxkDW/5+Cd9lVCIVVmtirSsAJymIiS/LEuUfr651nedAF52AZ+HigPAUV/rzn6DH7pbHQgVB4D33b0+WDHoR9BujPGFUHHAvQfARysGSf6oQZ3iQsWR5/mj7lpLKwYB/KHBWdZVg0JVuFvktxWDHgm6nU7n1lBxZFm2OfEE61ZkEqEYJbljKEVIXtagyuZZKcKS3LGKa/1+/W52evgVAxgqDpKvlIbflBBFnoWNnBBtmbfV4JGwQUqUGOPzZcVYr2gUAxgqisZycdsrGrMsu7PvJCeUZZXdoaIg+bZv9MOlkwC87pNODSp4HGF40PzR7XY3kTzt97y6FpfVO+rGGJ+eliJD5I8drsTPa7YhRO278NMVJB/O+lFj75o3uFUS17svVAT0FyyybuCmkPoTbpUrIsfCjJHn+XYAf7s1hmtliJ5Mb2DQ+msSaDab20TK+VoODS3AXeykCzg+CxK7VqvdQfKEe8eJkfuM/jaWUltBf4fpJr6v/dkX1t3wUZOlYNrzAJ4Y22rLn7k9PVNVOYCHxiJYbyO5mbPicwqHYTIhdn/a2HKnGOP9k2iG9gKAX2fG1X1VxvZkd7aQ7Q9NtPeu/kTB7D3WXjTmKF8xaB947dQrO+iuNM5u8SDWUb/il4JCV728nhfvpFOcwrY4AF36raaRH4o052jiCVLZYWZ7Z/IFhB4qVlyEsh8Bhq2xrqmKVQE4EwX6QYSyuFid2kh+7B/QXC58VCNy4wcdT33OztLzxA2EjY//AVnMqJspfcIsAAAAAElFTkSuQmCC'/%3e%3cimage%20id='image1_24_102'%20width='48'%20height='48'%20preserveAspectRatio='none'%20xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAACXBIWXMAAAsTAAALEwEAmpwYAAAB9UlEQVR4nO2Zv2oVQRTGBxHsLG1FEdTCXoh/wVpUtFGMD+EDbGW0Ehb2zvd9V7FO6qSztfAJBPMIQhqTaCGinGQXxuXmund3NswN84NTXe7M9zuc2V12nctkTj5lWZ713l92y4j3/iaAHZJ/SL51y4SkawD26vAHNZlMrrploSiK0wDWm/AA9r3351zqALgD4IMJWJHcIPkLwOPei3rvLwJ4A2ALwMeYJelpK3wzNhuNhJ2F3uFJPgLwM5zFWAXgXVEUp2aEb35f7x086Pwo4Um+nxee5G8Aq4MEbGyCbny1OZR0L0LdbcJLuj1K+FpgKxDof4iOQGOGN+yQNQtb51xEJN0gudsOL+lFtE3GEujSeT/kyjOmgHUewPd5nZf00vZOTqBreB6eubQESN6aNfP4d2yuBxeNdAQArPyv84btkZxA1/BJCiwSPjmBo67z825SSkXAHhNIfln0JqVUBAA87HOHVSoCJD8FQb4BeNblf0pBQNKVOsBn7/3zsizPdN1PKQjY/FdVdanPfkpBYAjKAi2ywIIoC7TIAguiLHDMr1XaSHoSPD9tuqEAeB0suG0bRHqxNass/HbQsFeDBabT6QWSP1pPlqMXgP2qqs67GEh6cJwSOPwOcN/FxLpRj9Nm7NfrqMvWJrkWrfOZTCaTOfH8BUJmVJAShmWwAAAAAElFTkSuQmCC'/%3e%3c/defs%3e%3c/svg%3e";
2
- export {
3
- e as default
4
- };
@@ -1,4 +0,0 @@
1
- const C = "data:image/svg+xml,%3csvg%20width='344'%20height='713'%20viewBox='0%200%20344%20713'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3e%3crect%20width='344'%20height='712.056'%20rx='44'%20fill='white'/%3e%3cpath%20d='M54.6454%2034V28.1943H54.5624L52.8095%2029.4346V28.248L54.6503%2026.9541H55.9052V34H54.6454ZM60.7072%2034V32.6475H57.2599V31.6172C58.173%2030.0303%2059.174%2028.4092%2060.131%2026.9541H61.9132V31.6074H62.8605V32.6475H61.9132V34H60.7072ZM58.4318%2031.6367H60.7267V27.96H60.6534C59.9308%2029.0635%2059.1154%2030.3672%2058.4318%2031.5635V31.6367ZM64.6742%2029.4346C64.2298%2029.4346%2063.8978%2029.0928%2063.8978%2028.6631C63.8978%2028.2285%2064.2298%2027.8916%2064.6742%2027.8916C65.1234%2027.8916%2065.4505%2028.2285%2065.4505%2028.6631C65.4505%2029.0928%2065.1234%2029.4346%2064.6742%2029.4346ZM64.6742%2033.0576C64.2298%2033.0576%2063.8978%2032.7207%2063.8978%2032.2861C63.8978%2031.8516%2064.2298%2031.5146%2064.6742%2031.5146C65.1234%2031.5146%2065.4505%2031.8516%2065.4505%2032.2861C65.4505%2032.7207%2065.1234%2033.0576%2064.6742%2033.0576ZM66.688%2034V33.1504L69.0025%2030.7871C69.9595%2029.8203%2070.2281%2029.4639%2070.2281%2028.9219V28.9072C70.2281%2028.2578%2069.7837%2027.7891%2069.0513%2027.7891C68.3042%2027.7891%2067.8013%2028.2822%2067.8013%2029.0098L67.7964%2029.0293L66.6245%2029.0244L66.6197%2029.0098C66.6197%2027.6963%2067.6451%2026.7783%2069.1148%2026.7783C70.4869%2026.7783%2071.4732%2027.6133%2071.4732%2028.7998V28.8145C71.4732%2029.6152%2071.0874%2030.25%2069.8033%2031.4854L68.3921%2032.8525V32.9551H71.5806V34H66.688ZM75.1521%2034.1758C73.4773%2034.1758%2072.4714%2032.7549%2072.4714%2030.4795V30.4697C72.4714%2028.1943%2073.4773%2026.7783%2075.1521%2026.7783C76.8269%2026.7783%2077.8425%2028.1943%2077.8425%2030.4697V30.4795C77.8425%2032.7549%2076.8269%2034.1758%2075.1521%2034.1758ZM75.1521%2033.1553C76.0505%2033.1553%2076.573%2032.1494%2076.573%2030.4795V30.4697C76.573%2028.7998%2076.0505%2027.8037%2075.1521%2027.8037C74.2537%2027.8037%2073.741%2028.7998%2073.741%2030.4697V30.4795C73.741%2032.1494%2074.2537%2033.1553%2075.1521%2033.1553Z'%20fill='black'/%3e%3cpath%20d='M257.835%2027C257.835%2026.5398%20258.208%2026.1667%20258.668%2026.1667H259.501C259.961%2026.1667%20260.335%2026.5398%20260.335%2027V33.6667C260.335%2034.1269%20259.961%2034.5%20259.501%2034.5H258.668C258.208%2034.5%20257.835%2034.1269%20257.835%2033.6667V27Z'%20fill='black'/%3e%3cpath%20d='M262.001%2025.3333C262.001%2024.8731%20262.374%2024.5%20262.835%2024.5H263.668C264.128%2024.5%20264.501%2024.8731%20264.501%2025.3333V33.6667C264.501%2034.1269%20264.128%2034.5%20263.668%2034.5H262.835C262.374%2034.5%20262.001%2034.1269%20262.001%2033.6667V25.3333Z'%20fill='black'/%3e%3cpath%20d='M253.668%2029.9167C253.668%2029.4564%20254.041%2029.0833%20254.501%2029.0833H255.335C255.795%2029.0833%20256.168%2029.4564%20256.168%2029.9167V33.6667C256.168%2034.1269%20255.795%2034.5%20255.335%2034.5H254.501C254.041%2034.5%20253.668%2034.1269%20253.668%2033.6667V29.9167Z'%20fill='black'/%3e%3cpath%20d='M249.501%2032C249.501%2031.5398%20249.874%2031.1667%20250.335%2031.1667H251.168C251.628%2031.1667%20252.001%2031.5398%20252.001%2032V33.6667C252.001%2034.1269%20251.628%2034.5%20251.168%2034.5H250.335C249.874%2034.5%20249.501%2034.1269%20249.501%2033.6667V32Z'%20fill='black'/%3e%3cpath%20d='M277.668%2032.0361C278.868%2031.0007%20280.625%2031.0005%20281.824%2032.0361C281.885%2032.0918%20281.919%2032.1709%20281.921%2032.2539C281.923%2032.3369%20281.891%2032.4174%20281.833%2032.4756L279.954%2034.4102C279.899%2034.4669%20279.825%2034.4989%20279.746%2034.499C279.668%2034.499%20279.592%2034.467%20279.537%2034.4102L277.658%2032.4756C277.6%2032.4174%20277.569%2032.3369%20277.57%2032.2539C277.572%2032.1709%20277.608%2032.0918%20277.668%2032.0361ZM275.128%2029.7207C277.713%2027.2665%20281.716%2027.2665%20284.301%2029.7207C284.359%2029.7782%20284.392%2029.8569%20284.393%2029.9395C284.394%2030.0223%20284.362%2030.1024%20284.305%2030.1611L283.219%2031.2812C283.107%2031.3954%20282.926%2031.3974%20282.812%2031.2861C281.963%2030.5016%20280.858%2030.0673%20279.713%2030.0674C278.569%2030.068%20277.466%2030.5022%20276.617%2031.2861C276.503%2031.3974%20276.322%2031.3954%20276.21%2031.2812L275.124%2030.1611C275.067%2030.1025%20275.036%2030.0223%20275.036%2029.9395C275.037%2029.8569%20275.07%2029.7781%20275.128%2029.7207ZM272.591%2027.4082C276.555%2023.5301%20282.81%2023.5301%20286.775%2027.4082C286.832%2027.4658%20286.864%2027.5448%20286.864%2027.627C286.865%2027.7088%20286.834%2027.7875%20286.778%2027.8457L285.69%2028.9658C285.578%2029.0807%20285.396%2029.0826%20285.282%2028.9697C283.772%2027.5039%20281.767%2026.6866%20279.683%2026.6865C277.599%2026.6866%20275.594%2027.5039%20274.083%2028.9697C273.969%2029.0827%20273.788%2029.0808%20273.676%2028.9658L272.588%2027.8457C272.532%2027.7875%20272.501%2027.7088%20272.501%2027.627C272.502%2027.5448%20272.534%2027.4658%20272.591%2027.4082Z'%20fill='black'/%3e%3cpath%20opacity='0.35'%20d='M298.864%2025H309.864C311.245%2025%20312.364%2026.1193%20312.364%2027.5V30.5C312.364%2031.8807%20311.245%2033%20309.864%2033H298.864C297.484%2033%20296.364%2031.8807%20296.364%2030.5V27.5C296.364%2026.1193%20297.484%2025%20298.864%2025Z'%20stroke='black'/%3e%3cpath%20opacity='0.4'%20d='M313.864%2027.5V30.5C314.47%2030.2459%20314.864%2029.6549%20314.864%2029C314.864%2028.3451%20314.47%2027.7541%20313.864%2027.5Z'%20fill='black'/%3e%3cpath%20d='M297.864%2027.5C297.864%2026.9477%20298.312%2026.5%20298.864%2026.5H309.864C310.417%2026.5%20310.864%2026.9477%20310.864%2027.5V30.5C310.864%2031.0523%20310.417%2031.5%20309.864%2031.5H298.864C298.312%2031.5%20297.864%2031.0523%20297.864%2030.5V27.5Z'%20fill='black'/%3e%3crect%20width='320'%20height='66'%20transform='translate(12%20623)'%20fill='white'/%3e%3cpath%20d='M38.5%20642.625C37.4661%20642.625%2036.625%20643.466%2036.625%20644.5V645.625H32.875C32.461%20645.625%2032.125%20645.961%2032.125%20646.375C32.125%20646.789%2032.461%20647.125%2032.875%20647.125H33.666L34.2974%20658.5C34.3641%20659.691%2035.3501%20660.625%2036.5437%20660.625H43.4563C44.6495%20660.625%2045.6359%20659.691%2045.7026%20658.5L46.334%20647.125H47.125C47.539%20647.125%2047.875%20646.789%2047.875%20646.375C47.875%20645.961%2047.539%20645.625%2047.125%20645.625H43.375V644.5C43.375%20643.466%2042.5339%20642.625%2041.5%20642.625H38.5ZM38.5%20644.125H41.5C41.707%20644.125%2041.875%20644.293%2041.875%20644.5V645.625H38.125V644.5C38.125%20644.293%2038.293%20644.125%2038.5%20644.125ZM35.1675%20647.125H44.8325L44.2048%20658.416C44.1827%20658.814%2043.8542%20659.125%2043.4563%20659.125H36.5437C36.1462%20659.125%2035.8173%20658.814%2035.7952%20658.417L35.1675%20647.125ZM40%20648.719C39.6374%20648.719%2039.3438%20649.013%2039.3438%20649.375V656.875C39.3438%20657.237%2039.6374%20657.531%2040%20657.531C40.3626%20657.531%2040.6562%20657.237%2040.6562%20656.875V649.375C40.6562%20649.013%2040.3626%20648.719%2040%20648.719ZM37.241%20648.719C36.8791%20648.732%2036.5958%20649.035%2036.6082%20649.398L36.8696%20656.93C36.882%20657.284%2037.1734%20657.563%2037.5252%20657.563C37.533%20657.563%2037.5407%20657.563%2037.5486%20657.563C37.9105%20657.551%2038.1938%20657.247%2038.1814%20656.885L37.9199%20649.352C37.9072%20648.99%2037.6025%20648.711%2037.241%20648.719ZM42.7583%20648.719C42.3957%20648.709%2042.0928%20648.99%2042.0801%20649.352L41.8186%20656.885C41.8059%20657.247%2042.0892%20657.551%2042.4514%20657.563C42.4593%20657.564%2042.467%20657.563%2042.4749%20657.563C42.8266%20657.563%2043.118%20657.284%2043.1304%20656.93L43.3918%20649.398C43.4046%20649.035%2043.1206%20648.732%2042.7583%20648.719Z'%20fill='%23989898'/%3e%3cpath%20d='M122%20644.875C120.759%20644.875%20119.75%20645.884%20119.75%20647.125V656.875C119.75%20658.116%20120.759%20659.125%20122%20659.125H134C135.241%20659.125%20136.25%20658.116%20136.25%20656.875V648.625C136.25%20647.384%20135.241%20646.375%20134%20646.375H126.914C126.574%20646.375%20126.242%20646.258%20125.978%20646.046L125.335%20645.533C124.806%20645.109%20124.14%20644.875%20123.461%20644.875H122ZM122%20646.375H123.461C123.801%20646.375%20124.133%20646.492%20124.398%20646.704L125.04%20647.217C125.569%20647.641%20126.235%20647.875%20126.914%20647.875H134C134.414%20647.875%20134.75%20648.211%20134.75%20648.625V649H121.25V647.125C121.25%20646.711%20121.586%20646.375%20122%20646.375ZM121.25%20650.5H134.75V656.875C134.75%20657.289%20134.414%20657.625%20134%20657.625H122C121.586%20657.625%20121.25%20657.289%20121.25%20656.875V650.5Z'%20fill='%23989898'/%3e%3crect%20x='204'%20y='640'%20width='24'%20height='24'%20fill='url(%23pattern0_2_77)'/%3e%3crect%20x='292'%20y='640'%20width='24'%20height='24'%20fill='url(%23pattern1_2_77)'/%3e%3cg%20opacity='0.8'%3e%3crect%20x='127'%20y='690'%20width='90'%20height='4'%20rx='2'%20fill='%230F1218'%20style='mix-blend-mode:darken'/%3e%3c/g%3e%3crect%20x='131'%20y='20'%20width='83'%20height='22'%20rx='11'%20fill='%2324262D'/%3e%3cdefs%3e%3cpattern%20id='pattern0_2_77'%20patternContentUnits='objectBoundingBox'%20width='1'%20height='1'%3e%3cuse%20xlink:href='%23image0_2_77'%20transform='scale(0.0208333)'/%3e%3c/pattern%3e%3cpattern%20id='pattern1_2_77'%20patternContentUnits='objectBoundingBox'%20width='1'%20height='1'%3e%3cuse%20xlink:href='%23image1_2_77'%20transform='scale(0.0208333)'/%3e%3c/pattern%3e%3cimage%20id='image0_2_77'%20width='48'%20height='48'%20preserveAspectRatio='none'%20xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAACXBIWXMAAAsTAAALEwEAmpwYAAADPElEQVR4nO1YSWgUQRTtKHEJKnpwAUURBMXlIi6HQBS9iCKeREHwIIJeBBFBBHGOLhBktKn3fichHiRgK+Yi0YuIiAdxF7xo9BBwQUVUMMFoMvLJb2gGx2SmM5O09IO+dFf9eu9Xdf3F8zJkyJAhw3iB7/uLSD4j2eGlDSKyjGQPyQLJV16aICKrAXw08ukSQLKJ5DclDuBiqgSIyDaSvUb+fBiGk1IjwDm3G0C/kT+t70SkPhUCSB4kOQBgkOTh6H0qBAA4bl7vB7An/i0SAOCNc25WqUfH1Zx4oVCoA3DWCPaR3F48JrYDwz4APgB4pDYBNOZyuQlVIx+G4USSgS38HcDGUmNJ3iL55V+PHb1iUS9FZKc6arTJ681y2ch/IrkmqU3dKQDz1RG2A92xnbkXBMGCUSEvIg0Abpjx9yKyyqsCCoVCnXo/EmKOakpktL29fSaAu9FP6fv+klFjXHrNKSQvmcN6RWRtRYZaWlrmAnhi5J/7vj/Pq+1l0WwiespeWw2QfGEG7uu159UYuVxuAslr5sDOSjzw3Ca/DYJghTcG8H1/mq5vPBrLmtzW1jab5EPbhc8A1nljABHZbxxulT05n8/PAHAnuvudc5tGuGh9qQhcbrAKw3Ci7gKA3865OWWLaG5ungrgehR9AewYwdl9PYII3AXgqIgsHI4DAOg859w+rxJYetBhBH4B2PuPsQ1GcvAv0bfvL4IGNEgCWF7KpqYsNrbVqxTq2cgTRu7QMAI+ldpR59xKPdsaIAH8tvE/SZ7QI1M8Ry8RG9PlJYHdTqdiR+FkuQKK4ZxbSvJKzGan2igaM8u+P/VGAySPRckYgHPx5KtcARFI7gLww4jejKfbVakxAByw86uG26Otr1SAQkTW621nNi9UvUiKl5QaNfP5/OQkAhQkt8Qqvc1Vr/IAbI2KepK3NYdKIkABIG82us0p1S1TNe0F8NUWeZxUQGtr63QA78zekZrU2cWNrSQCFBq0zNY3LW5q0iiItxaTCsgNxZ1HUQCrWadDm7sAHmiHLqktEdkQi9bju1VTCiSvprLfGiEIgsWxHCp9AhQkz6RaQH6oLrmredhYc8mQIUOG/xB/ACszo0e1cHoDAAAAAElFTkSuQmCC'/%3e%3cimage%20id='image1_2_77'%20width='48'%20height='48'%20preserveAspectRatio='none'%20xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAACXBIWXMAAAsTAAALEwEAmpwYAAAB9UlEQVR4nO2Zv2oVQRTGBxHsLG1FEdTCXoh/wVpUtFGMD+EDbGW0Ehb2zvd9V7FO6qSztfAJBPMIQhqTaCGinGQXxuXmund3NswN84NTXe7M9zuc2V12nctkTj5lWZ713l92y4j3/iaAHZJ/SL51y4SkawD26vAHNZlMrrploSiK0wDWm/AA9r3351zqALgD4IMJWJHcIPkLwOPei3rvLwJ4A2ALwMeYJelpK3wzNhuNhJ2F3uFJPgLwM5zFWAXgXVEUp2aEb35f7x086Pwo4Um+nxee5G8Aq4MEbGyCbny1OZR0L0LdbcJLuj1K+FpgKxDof4iOQGOGN+yQNQtb51xEJN0gudsOL+lFtE3GEujSeT/kyjOmgHUewPd5nZf00vZOTqBreB6eubQESN6aNfP4d2yuBxeNdAQArPyv84btkZxA1/BJCiwSPjmBo67z825SSkXAHhNIfln0JqVUBAA87HOHVSoCJD8FQb4BeNblf0pBQNKVOsBn7/3zsizPdN1PKQjY/FdVdanPfkpBYAjKAi2ywIIoC7TIAguiLHDMr1XaSHoSPD9tuqEAeB0suG0bRHqxNass/HbQsFeDBabT6QWSP1pPlqMXgP2qqs67GEh6cJwSOPwOcN/FxLpRj9Nm7NfrqMvWJrkWrfOZTCaTOfH8BUJmVJAShmWwAAAAAElFTkSuQmCC'/%3e%3c/defs%3e%3c/svg%3e";
2
- export {
3
- C as default
4
- };