@useinsider/guido 3.2.0-beta.739a669 → 3.2.0-beta.8b0bc0c

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 (276) hide show
  1. package/dist/@types/config/schemas.js +1 -1
  2. package/dist/@types/config/validator.js +27 -34
  3. package/dist/components/Guido.vue.js +1 -1
  4. package/dist/components/Guido.vue2.js +76 -81
  5. package/dist/components/organisms/base/Toaster.vue2.js +10 -11
  6. package/dist/components/organisms/email-preview/desktop-preview/DesktopPreview.vue2.js +12 -12
  7. package/dist/components/organisms/email-preview/mobile-preview/ContentView.vue2.js +6 -6
  8. package/dist/components/organisms/email-preview/mobile-preview/InboxView.vue2.js +9 -15
  9. package/dist/components/organisms/extensions/recommendation/FilterItem.vue2.js +31 -40
  10. package/dist/components/organisms/extensions/recommendation/FilterSelectionDrawer.vue2.js +19 -20
  11. package/dist/components/organisms/extensions/recommendation/Filters.vue2.js +11 -14
  12. package/dist/components/organisms/header/EditorActions.vue.js +11 -12
  13. package/dist/components/organisms/header/EditorActions.vue2.js +18 -22
  14. package/dist/components/organisms/header/HeaderWrapper.vue2.js +12 -15
  15. package/dist/components/organisms/header/LeftSlot.vue2.js +16 -19
  16. package/dist/components/organisms/header/MiddleSlot.vue2.js +14 -11
  17. package/dist/components/organisms/header/RightSlot.vue2.js +14 -17
  18. package/dist/components/organisms/onboarding/AMPOnboarding.vue.js +11 -12
  19. package/dist/components/organisms/onboarding/AMPOnboarding.vue2.js +29 -51
  20. package/dist/components/organisms/onboarding/GenericOnboarding.vue.js +12 -13
  21. package/dist/components/organisms/onboarding/GenericOnboarding.vue2.js +40 -44
  22. package/dist/components/organisms/onboarding/ItemsOnboarding.vue.js +12 -13
  23. package/dist/components/organisms/onboarding/ItemsOnboarding.vue2.js +47 -50
  24. package/dist/components/organisms/onboarding/NewVersionPopup.vue2.js +18 -21
  25. package/dist/components/organisms/onboarding/OnboardingWrapper.vue2.js +27 -31
  26. package/dist/components/organisms/onboarding/TextBlockOnboarding.vue.js +12 -13
  27. package/dist/components/organisms/onboarding/TextBlockOnboarding.vue2.js +44 -35
  28. package/dist/components/organisms/onboarding/VersionHistoryOnboarding.vue.js +11 -12
  29. package/dist/components/organisms/onboarding/VersionHistoryOnboarding.vue2.js +20 -23
  30. package/dist/components/organisms/save-as-template/SaveAsTemplateDrawer.vue2.js +8 -9
  31. package/dist/components/organisms/unsubscribe/UnsubscribeWrapper.vue.js +9 -10
  32. package/dist/composables/useActionsApi.js +37 -38
  33. package/dist/composables/useBlocksConfig.js +26 -26
  34. package/dist/composables/useFullStoryBridge.js +13 -0
  35. package/dist/composables/useHtmlCompiler.js +34 -26
  36. package/dist/composables/useHtmlValidator.js +101 -109
  37. package/dist/composables/useHttp.js +30 -30
  38. package/dist/composables/usePartner.js +1 -1
  39. package/dist/composables/useRecommendation.js +14 -15
  40. package/dist/composables/useSave.js +21 -22
  41. package/dist/composables/useStripo.js +45 -40
  42. package/dist/composables/useSyncModuleExtractor.js +31 -29
  43. package/dist/composables/useTimerClone.js +24 -25
  44. package/dist/composables/useTranslations.js +23 -16
  45. package/dist/composables/useValidation.js +7 -8
  46. package/dist/composables/validators/useLiquidValidator.js +13 -13
  47. package/dist/config/compiler/unsubscribeCompilerRules.js +15 -16
  48. package/dist/config/compiler/utils/recommendationCompilerUtils.js +36 -34
  49. package/dist/config/migrator/checkboxMigrator.js +20 -21
  50. package/dist/config/migrator/couponBlockMigrator.js +18 -19
  51. package/dist/config/migrator/itemsBlockMigrator.js +87 -89
  52. package/dist/config/migrator/radioButtonMigrator.js +12 -13
  53. package/dist/config/migrator/recommendationMigrator.js +107 -110
  54. package/dist/config/migrator/unsubscribeMigrator.js +10 -11
  55. package/dist/enums/onboarding.js +2 -7
  56. package/dist/extensions/Blocks/Items/block.js +9 -9
  57. package/dist/extensions/Blocks/Items/controls/button/link.js +14 -14
  58. package/dist/extensions/Blocks/Items/controls/cardComposition.js +89 -97
  59. package/dist/extensions/Blocks/Items/controls/image/link.js +14 -14
  60. package/dist/extensions/Blocks/Items/controls/name/trimming.js +23 -24
  61. package/dist/extensions/Blocks/Items/controls/price/currencyLocation.js +13 -14
  62. package/dist/extensions/Blocks/Items/controls/price/currencySymbol.js +44 -47
  63. package/dist/extensions/Blocks/Items/controls/price/formattedPrice.js +38 -38
  64. package/dist/extensions/Blocks/Items/controls/price/hideDiscount.js +11 -11
  65. package/dist/extensions/Blocks/Items/controls/price/priceOrientation.js +38 -40
  66. package/dist/extensions/Blocks/Items/controls/price/singlePrice.js +35 -35
  67. package/dist/extensions/Blocks/Items/controls/settingsControl.js +155 -162
  68. package/dist/extensions/Blocks/Items/enums/productEnums.js +9 -14
  69. package/dist/extensions/Blocks/Items/template.js +210 -210
  70. package/dist/extensions/Blocks/Recommendation/constants/controlIds.js +1 -1
  71. package/dist/extensions/Blocks/Recommendation/controls/button/index.js +36 -36
  72. package/dist/extensions/Blocks/Recommendation/controls/cardComposition/index.js +128 -133
  73. package/dist/extensions/Blocks/Recommendation/controls/customAttribute/index.js +23 -20
  74. package/dist/extensions/Blocks/Recommendation/controls/customAttribute/textTrim.js +99 -0
  75. package/dist/extensions/Blocks/Recommendation/controls/image/index.js +9 -9
  76. package/dist/extensions/Blocks/Recommendation/controls/main/algorithm.js +19 -20
  77. package/dist/extensions/Blocks/Recommendation/controls/main/filters.js +4 -6
  78. package/dist/extensions/Blocks/Recommendation/controls/main/index.js +84 -90
  79. package/dist/extensions/Blocks/Recommendation/controls/main/layoutOrientation.js +18 -18
  80. package/dist/extensions/Blocks/Recommendation/controls/main/productCount.js +4 -4
  81. package/dist/extensions/Blocks/Recommendation/controls/main/productLayout.js +35 -36
  82. package/dist/extensions/Blocks/Recommendation/controls/main/utils.js +134 -135
  83. package/dist/extensions/Blocks/Recommendation/controls/name/index.js +24 -24
  84. package/dist/extensions/Blocks/Recommendation/controls/name/textTrim.js +27 -57
  85. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/index.js +24 -24
  86. package/dist/extensions/Blocks/Recommendation/controls/omnibusDiscount/index.js +24 -24
  87. package/dist/extensions/Blocks/Recommendation/controls/omnibusDiscount/textAfter.js +4 -4
  88. package/dist/extensions/Blocks/Recommendation/controls/omnibusDiscount/textBefore.js +4 -4
  89. package/dist/extensions/Blocks/Recommendation/controls/omnibusPrice/index.js +24 -24
  90. package/dist/extensions/Blocks/Recommendation/controls/omnibusPrice/textAfter.js +4 -4
  91. package/dist/extensions/Blocks/Recommendation/controls/omnibusPrice/textBefore.js +4 -4
  92. package/dist/extensions/Blocks/Recommendation/controls/price/index.js +24 -24
  93. package/dist/extensions/Blocks/Recommendation/controls/shared/textTrimCssRules.js +14 -0
  94. package/dist/extensions/Blocks/Recommendation/controls/spacing/index.js +32 -32
  95. package/dist/extensions/Blocks/Recommendation/controls/syncInfoMessage.js +18 -20
  96. package/dist/extensions/Blocks/Recommendation/extension.js +31 -32
  97. package/dist/extensions/Blocks/Recommendation/settingsPanel.js +25 -32
  98. package/dist/extensions/Blocks/Recommendation/store/recommendation.js +72 -69
  99. package/dist/extensions/Blocks/Recommendation/templates/grid/elementRenderer.js +22 -23
  100. package/dist/extensions/Blocks/Recommendation/templates/grid/migration.js +10 -10
  101. package/dist/extensions/Blocks/Recommendation/templates/grid/template.js +10 -10
  102. package/dist/extensions/Blocks/Recommendation/templates/index.js +6 -6
  103. package/dist/extensions/Blocks/Recommendation/templates/list/elementRenderer.js +24 -25
  104. package/dist/extensions/Blocks/Recommendation/templates/list/template.js +11 -11
  105. package/dist/extensions/Blocks/Recommendation/templates/utils.js +45 -47
  106. package/dist/extensions/Blocks/Recommendation/utils/filterUtil.js +17 -14
  107. package/dist/extensions/Blocks/Recommendation/validation/filterSchema.js +13 -16
  108. package/dist/extensions/Blocks/Unsubscribe/control.js +11 -13
  109. package/dist/extensions/Blocks/Unsubscribe/elements/preview.js +16 -18
  110. package/dist/extensions/Blocks/common-control.js +25 -26
  111. package/dist/extensions/DynamicContent/dynamic-content.js +53 -58
  112. package/dist/guido.css +1 -1
  113. package/dist/library.js +11 -12
  114. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js +272 -167
  115. package/dist/node_modules/valibot/dist/index.js +122 -126
  116. package/dist/package.json.js +1 -1
  117. package/dist/services/recommendationApi.js +14 -17
  118. package/dist/services/templateLibraryApi.js +37 -38
  119. package/dist/src/components/wrappers/WpModal.vue.d.ts +1 -1
  120. package/dist/src/composables/useFullStoryBridge.d.ts +11 -0
  121. package/dist/src/composables/useHtmlCompiler.d.ts +1 -2
  122. package/dist/src/composables/useTranslations.d.ts +1 -1
  123. package/dist/src/enums/onboarding.d.ts +0 -6
  124. package/dist/src/extensions/Blocks/Recommendation/constants/controlIds.d.ts +1 -0
  125. package/dist/src/extensions/Blocks/Recommendation/controls/customAttribute/index.d.ts +3 -0
  126. package/dist/src/extensions/Blocks/Recommendation/controls/customAttribute/textTrim.d.ts +35 -0
  127. package/dist/src/extensions/Blocks/Recommendation/controls/name/textTrim.d.ts +3 -20
  128. package/dist/src/extensions/Blocks/Recommendation/controls/shared/textTrimCssRules.d.ts +29 -0
  129. package/dist/src/stores/dynamic-content.d.ts +3 -3
  130. package/dist/src/stores/onboarding.d.ts +0 -4
  131. package/dist/static/styles/components/button.css.js +16 -9
  132. package/dist/static/styles/components/loader.css.js +4 -0
  133. package/dist/static/styles/components/narrow-panel.css.js +52 -0
  134. package/dist/stores/config.js +25 -81
  135. package/dist/stores/dynamic-content.js +6 -11
  136. package/dist/stores/onboarding.js +5 -9
  137. package/dist/stores/preview.js +6 -9
  138. package/dist/stores/unsubscribe.js +1 -4
  139. package/dist/utils/dateUtil.js +7 -10
  140. package/dist/utils/genericUtil.js +10 -13
  141. package/dist/utils/pairProductVariables.js +13 -14
  142. package/package.json +8 -5
  143. package/dist/composables/useRibbonOffset.js +0 -21
  144. package/dist/node_modules/lodash-es/_DataView.js +0 -6
  145. package/dist/node_modules/lodash-es/_Hash.js +0 -20
  146. package/dist/node_modules/lodash-es/_ListCache.js +0 -20
  147. package/dist/node_modules/lodash-es/_Map.js +0 -6
  148. package/dist/node_modules/lodash-es/_MapCache.js +0 -20
  149. package/dist/node_modules/lodash-es/_Promise.js +0 -6
  150. package/dist/node_modules/lodash-es/_Set.js +0 -6
  151. package/dist/node_modules/lodash-es/_SetCache.js +0 -13
  152. package/dist/node_modules/lodash-es/_Stack.js +0 -18
  153. package/dist/node_modules/lodash-es/_Symbol.js +0 -5
  154. package/dist/node_modules/lodash-es/_Uint8Array.js +0 -5
  155. package/dist/node_modules/lodash-es/_WeakMap.js +0 -6
  156. package/dist/node_modules/lodash-es/_arrayFilter.js +0 -10
  157. package/dist/node_modules/lodash-es/_arrayLikeKeys.js +0 -20
  158. package/dist/node_modules/lodash-es/_arrayMap.js +0 -8
  159. package/dist/node_modules/lodash-es/_arrayPush.js +0 -8
  160. package/dist/node_modules/lodash-es/_arraySome.js +0 -9
  161. package/dist/node_modules/lodash-es/_assocIndexOf.js +0 -10
  162. package/dist/node_modules/lodash-es/_baseEach.js +0 -6
  163. package/dist/node_modules/lodash-es/_baseFlatten.js +0 -13
  164. package/dist/node_modules/lodash-es/_baseFor.js +0 -5
  165. package/dist/node_modules/lodash-es/_baseForOwn.js +0 -8
  166. package/dist/node_modules/lodash-es/_baseGet.js +0 -11
  167. package/dist/node_modules/lodash-es/_baseGetAllKeys.js +0 -9
  168. package/dist/node_modules/lodash-es/_baseGetTag.js +0 -10
  169. package/dist/node_modules/lodash-es/_baseHasIn.js +0 -6
  170. package/dist/node_modules/lodash-es/_baseIsArguments.js +0 -9
  171. package/dist/node_modules/lodash-es/_baseIsEqual.js +0 -8
  172. package/dist/node_modules/lodash-es/_baseIsEqualDeep.js +0 -32
  173. package/dist/node_modules/lodash-es/_baseIsMatch.js +0 -29
  174. package/dist/node_modules/lodash-es/_baseIsNative.js +0 -16
  175. package/dist/node_modules/lodash-es/_baseIsTypedArray.js +0 -12
  176. package/dist/node_modules/lodash-es/_baseIteratee.js +0 -11
  177. package/dist/node_modules/lodash-es/_baseKeys.js +0 -14
  178. package/dist/node_modules/lodash-es/_baseMap.js +0 -11
  179. package/dist/node_modules/lodash-es/_baseMatches.js +0 -12
  180. package/dist/node_modules/lodash-es/_baseMatchesProperty.js +0 -17
  181. package/dist/node_modules/lodash-es/_baseProperty.js +0 -8
  182. package/dist/node_modules/lodash-es/_basePropertyDeep.js +0 -9
  183. package/dist/node_modules/lodash-es/_baseRange.js +0 -9
  184. package/dist/node_modules/lodash-es/_baseTimes.js +0 -8
  185. package/dist/node_modules/lodash-es/_baseToString.js +0 -18
  186. package/dist/node_modules/lodash-es/_baseTrim.js +0 -8
  187. package/dist/node_modules/lodash-es/_baseUnary.js +0 -8
  188. package/dist/node_modules/lodash-es/_cacheHas.js +0 -6
  189. package/dist/node_modules/lodash-es/_castPath.js +0 -10
  190. package/dist/node_modules/lodash-es/_coreJsData.js +0 -5
  191. package/dist/node_modules/lodash-es/_createBaseEach.js +0 -15
  192. package/dist/node_modules/lodash-es/_createBaseFor.js +0 -13
  193. package/dist/node_modules/lodash-es/_createRange.js +0 -11
  194. package/dist/node_modules/lodash-es/_equalArrays.js +0 -40
  195. package/dist/node_modules/lodash-es/_equalByTag.js +0 -45
  196. package/dist/node_modules/lodash-es/_equalObjects.js +0 -36
  197. package/dist/node_modules/lodash-es/_freeGlobal.js +0 -4
  198. package/dist/node_modules/lodash-es/_getAllKeys.js +0 -9
  199. package/dist/node_modules/lodash-es/_getMapData.js +0 -8
  200. package/dist/node_modules/lodash-es/_getMatchData.js +0 -12
  201. package/dist/node_modules/lodash-es/_getNative.js +0 -9
  202. package/dist/node_modules/lodash-es/_getRawTag.js +0 -15
  203. package/dist/node_modules/lodash-es/_getSymbols.js +0 -10
  204. package/dist/node_modules/lodash-es/_getTag.js +0 -28
  205. package/dist/node_modules/lodash-es/_getValue.js +0 -6
  206. package/dist/node_modules/lodash-es/_hasPath.js +0 -19
  207. package/dist/node_modules/lodash-es/_hashClear.js +0 -7
  208. package/dist/node_modules/lodash-es/_hashDelete.js +0 -7
  209. package/dist/node_modules/lodash-es/_hashGet.js +0 -13
  210. package/dist/node_modules/lodash-es/_hashHas.js +0 -9
  211. package/dist/node_modules/lodash-es/_hashSet.js +0 -9
  212. package/dist/node_modules/lodash-es/_isFlattenable.js +0 -10
  213. package/dist/node_modules/lodash-es/_isIndex.js +0 -8
  214. package/dist/node_modules/lodash-es/_isIterateeCall.js +0 -13
  215. package/dist/node_modules/lodash-es/_isKey.js +0 -12
  216. package/dist/node_modules/lodash-es/_isKeyable.js +0 -7
  217. package/dist/node_modules/lodash-es/_isMasked.js +0 -11
  218. package/dist/node_modules/lodash-es/_isPrototype.js +0 -8
  219. package/dist/node_modules/lodash-es/_isStrictComparable.js +0 -7
  220. package/dist/node_modules/lodash-es/_listCacheClear.js +0 -6
  221. package/dist/node_modules/lodash-es/_listCacheDelete.js +0 -12
  222. package/dist/node_modules/lodash-es/_listCacheGet.js +0 -8
  223. package/dist/node_modules/lodash-es/_listCacheHas.js +0 -7
  224. package/dist/node_modules/lodash-es/_listCacheSet.js +0 -8
  225. package/dist/node_modules/lodash-es/_mapCacheClear.js +0 -13
  226. package/dist/node_modules/lodash-es/_mapCacheDelete.js +0 -8
  227. package/dist/node_modules/lodash-es/_mapCacheGet.js +0 -7
  228. package/dist/node_modules/lodash-es/_mapCacheHas.js +0 -7
  229. package/dist/node_modules/lodash-es/_mapCacheSet.js +0 -8
  230. package/dist/node_modules/lodash-es/_mapToArray.js +0 -9
  231. package/dist/node_modules/lodash-es/_matchesStrictComparable.js +0 -8
  232. package/dist/node_modules/lodash-es/_memoizeCapped.js +0 -11
  233. package/dist/node_modules/lodash-es/_nativeCreate.js +0 -5
  234. package/dist/node_modules/lodash-es/_nativeKeys.js +0 -5
  235. package/dist/node_modules/lodash-es/_nodeUtil.js +0 -11
  236. package/dist/node_modules/lodash-es/_objectToString.js +0 -7
  237. package/dist/node_modules/lodash-es/_overArg.js +0 -8
  238. package/dist/node_modules/lodash-es/_root.js +0 -5
  239. package/dist/node_modules/lodash-es/_setCacheAdd.js +0 -7
  240. package/dist/node_modules/lodash-es/_setCacheHas.js +0 -6
  241. package/dist/node_modules/lodash-es/_setToArray.js +0 -9
  242. package/dist/node_modules/lodash-es/_stackClear.js +0 -7
  243. package/dist/node_modules/lodash-es/_stackDelete.js +0 -7
  244. package/dist/node_modules/lodash-es/_stackGet.js +0 -6
  245. package/dist/node_modules/lodash-es/_stackHas.js +0 -6
  246. package/dist/node_modules/lodash-es/_stackSet.js +0 -17
  247. package/dist/node_modules/lodash-es/_stringToPath.js +0 -10
  248. package/dist/node_modules/lodash-es/_toKey.js +0 -10
  249. package/dist/node_modules/lodash-es/_toSource.js +0 -17
  250. package/dist/node_modules/lodash-es/_trimmedEndIndex.js +0 -9
  251. package/dist/node_modules/lodash-es/eq.js +0 -6
  252. package/dist/node_modules/lodash-es/flatMap.js +0 -8
  253. package/dist/node_modules/lodash-es/get.js +0 -8
  254. package/dist/node_modules/lodash-es/hasIn.js +0 -8
  255. package/dist/node_modules/lodash-es/identity.js +0 -6
  256. package/dist/node_modules/lodash-es/isArguments.js +0 -10
  257. package/dist/node_modules/lodash-es/isArray.js +0 -4
  258. package/dist/node_modules/lodash-es/isArrayLike.js +0 -8
  259. package/dist/node_modules/lodash-es/isBuffer.js +0 -6
  260. package/dist/node_modules/lodash-es/isFunction.js +0 -12
  261. package/dist/node_modules/lodash-es/isLength.js +0 -7
  262. package/dist/node_modules/lodash-es/isObject.js +0 -7
  263. package/dist/node_modules/lodash-es/isObjectLike.js +0 -6
  264. package/dist/node_modules/lodash-es/isSymbol.js +0 -9
  265. package/dist/node_modules/lodash-es/isTypedArray.js +0 -7
  266. package/dist/node_modules/lodash-es/keys.js +0 -9
  267. package/dist/node_modules/lodash-es/map.js +0 -11
  268. package/dist/node_modules/lodash-es/memoize.js +0 -18
  269. package/dist/node_modules/lodash-es/property.js +0 -10
  270. package/dist/node_modules/lodash-es/range.js +0 -5
  271. package/dist/node_modules/lodash-es/stubArray.js +0 -6
  272. package/dist/node_modules/lodash-es/stubFalse.js +0 -6
  273. package/dist/node_modules/lodash-es/toFinite.js +0 -14
  274. package/dist/node_modules/lodash-es/toNumber.js +0 -22
  275. package/dist/node_modules/lodash-es/toString.js +0 -7
  276. package/dist/src/composables/useRibbonOffset.d.ts +0 -4
@@ -1,92 +1,91 @@
1
- import { useConfig as w } from "../composables/useConfig.js";
2
- import { useHttp as b } from "../composables/useHttp.js";
3
- import { useToaster as h } from "../composables/useToaster.js";
4
- import { useTranslations as C } from "../composables/useTranslations.js";
5
- import { useLiquidValidator as S } from "../composables/validators/useLiquidValidator.js";
6
- import { EditorType as v } from "../enums/defaults.js";
7
- import { useRecommendationExtensionStore as N } from "../extensions/Blocks/Recommendation/store/recommendation.js";
8
- import { useSaveAsTemplateStore as x } from "../stores/save-as-template.js";
1
+ import { useConfig as y } from "../composables/useConfig.js";
2
+ import { useHttp as g } from "../composables/useHttp.js";
3
+ import { useToaster as f } from "../composables/useToaster.js";
4
+ import { useTranslations as T } from "../composables/useTranslations.js";
5
+ import { useLiquidValidator as w } from "../composables/validators/useLiquidValidator.js";
6
+ import { EditorType as b } from "../enums/defaults.js";
7
+ import { useRecommendationExtensionStore as h } from "../extensions/Blocks/Recommendation/store/recommendation.js";
8
+ import { useSaveAsTemplateStore as C } from "../stores/save-as-template.js";
9
9
  import { base64EncodeWithSpecialChars as r } from "../utils/base64.js";
10
- import { useTemplatePreparation as A } from "../utils/templatePreparation.js";
11
- const $ = () => {
12
- const { get: n, post: m } = b(), { handleError: o, showToaster: l } = h(), { config: c, isFeatureEnabled: p } = w(), { validateLiquidSyntax: g } = S(), u = C();
10
+ import { useTemplatePreparation as S } from "../utils/templatePreparation.js";
11
+ const G = () => {
12
+ const { get: o, post: i } = g(), { handleError: s, showToaster: n } = f(), { config: m, isFeatureEnabled: l } = y(), { validateLiquidSyntax: p } = w(), c = T();
13
13
  return {
14
14
  getCategories: async () => {
15
15
  try {
16
- const { data: e = [] } = await n("/newsletter/template-library/get-template-categories");
16
+ const { data: e = [] } = await o("/newsletter/template-library/get-template-categories");
17
17
  return e;
18
18
  } catch (e) {
19
- return o(e, "Failed to fetch template categories"), [];
19
+ return s(e, "Failed to fetch template categories"), [];
20
20
  }
21
21
  },
22
22
  checkTemplateNameAvailability: async (e) => {
23
- const { data: { status: t = !1 } } = await n(
23
+ const { data: { status: t = !1 } } = await o(
24
24
  `/newsletter/template-library/template-name-exists?name=${e}`
25
25
  );
26
26
  return !t;
27
27
  },
28
28
  createCategory: async (e) => {
29
29
  try {
30
- const { data: { id: t } } = await m(
30
+ const { data: { id: t } } = await i(
31
31
  "/newsletter/template-library/create-category",
32
32
  { name: e }
33
33
  );
34
34
  return t.toString();
35
35
  } catch (t) {
36
- return o(t, "Failed to create category"), "";
36
+ return s(t, "Failed to create category"), "";
37
37
  }
38
38
  },
39
39
  createTemplate: async () => {
40
- var e, t, d, y;
41
40
  try {
42
- const { prepareTemplateDetails: i } = A(), s = x(), a = await i();
43
- if (p("liquidSyntax") && !await g(a.compiledHtml))
41
+ const { prepareTemplateDetails: e } = S(), t = C(), a = await e();
42
+ if (l("liquidSyntax") && !await p(a.compiledHtml))
44
43
  return !1;
45
- const f = {
46
- name: s.getTemplateName,
47
- categories: s.getSelectedCategoryIds,
48
- productId: ((t = (e = c.value) == null ? void 0 : e.partner) == null ? void 0 : t.productType) || 0,
49
- editorType: v,
50
- messageType: ((y = (d = c.value) == null ? void 0 : d.partner) == null ? void 0 : y.messageType) || 0,
44
+ const u = {
45
+ name: t.getTemplateName,
46
+ categories: t.getSelectedCategoryIds,
47
+ productId: m.value?.partner?.productType || 0,
48
+ editorType: b,
49
+ messageType: m.value?.partner?.messageType || 0,
51
50
  content: r(a.compiledHtml),
52
51
  css: r(a.css),
53
52
  unsubscriptionPreferencePageStatus: !1,
54
53
  unsubscriptionPreferencePages: [],
55
54
  recommendationCampaignUrls: r(
56
- N().recommendationCampaignUrls
55
+ h().recommendationCampaignUrls
57
56
  ),
58
57
  recommendationConfigs: r({}),
59
58
  isGuido: !0,
60
59
  // eslint-disable-next-line camelcase
61
- template_engine: p("liquidSyntax") ? 1 : 0,
60
+ template_engine: l("liquidSyntax") ? 1 : 0,
62
61
  stripoConfig: r({
63
62
  editor: "stripo",
64
63
  html: a.rawHtml,
65
64
  css: a.css
66
65
  })
67
- }, { data: { type: T } } = await m(
66
+ }, { data: { type: d } } = await i(
68
67
  "/newsletter/template-library/create-template",
69
- f
68
+ u
70
69
  );
71
- return T === "alert" ? (l({
72
- message: u(
70
+ return d === "alert" ? (n({
71
+ message: c(
73
72
  "newsletter.template-library-save-alert",
74
- { templateName: s.getTemplateName }
73
+ { templateName: t.getTemplateName }
75
74
  ),
76
75
  type: "alert"
77
- }), !1) : (l({
78
- message: u(
76
+ }), !1) : (n({
77
+ message: c(
79
78
  "newsletter.template-library-save-success",
80
- { templateName: s.getTemplateName }
79
+ { templateName: t.getTemplateName }
81
80
  ),
82
81
  type: "success"
83
82
  }), !0);
84
- } catch (i) {
85
- return o(i, "Failed to create template"), !1;
83
+ } catch (e) {
84
+ return s(e, "Failed to create template"), !1;
86
85
  }
87
86
  }
88
87
  };
89
88
  };
90
89
  export {
91
- $ as useTemplateLibraryApi
90
+ G as useTemplateLibraryApi
92
91
  };
@@ -34,9 +34,9 @@ declare const __VLS_component: import("vue").DefineComponent<__VLS_WithDefaults<
34
34
  }>>>, {
35
35
  description: string;
36
36
  size: "X-small" | "small" | "medium" | "large";
37
- closeOnOutsideClick: boolean;
38
37
  footerButtonOptions: FooterButtonGroup;
39
38
  closeButtonStatus: boolean;
39
+ closeOnOutsideClick: boolean;
40
40
  footerStatus: boolean;
41
41
  }>;
42
42
  declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Injects the hosted FullStory bridge script into the Stripo editor iframe.
3
+ *
4
+ * The bridge script's origin is allowlisted via Stripo's
5
+ * `allowedScriptSourceDomains` in useStripo, so the iframe's CSP permits
6
+ * the load. The bundled script itself handles reading FS config from the
7
+ * parent window and booting the FullStory queue stub inside the iframe.
8
+ */
9
+ export declare const useFullStoryBridge: () => {
10
+ injectFullStory: () => void;
11
+ };
@@ -1,4 +1,3 @@
1
- import type { CompilationResult } from '@@/Types/html-compiler';
2
1
  export declare const useHtmlCompiler: () => {
3
- compileHtml: (html: string) => CompilationResult;
2
+ compileHtml: (html: string) => import("@@/Types/html-compiler").CompilationResult;
4
3
  };
@@ -1,5 +1,5 @@
1
1
  interface TranslationValues {
2
2
  [key: string]: string | number | boolean;
3
3
  }
4
- export declare const useTranslations: () => ((key: string, params?: TranslationValues) => string) & import("lodash").MemoizedFunction;
4
+ export declare const useTranslations: () => (key: string, params?: TranslationValues) => string;
5
5
  export {};
@@ -3,9 +3,3 @@ export declare const UI_EDITOR_SELECTOR = "ui-editor";
3
3
  export declare const CARD_COMPOSITION_TAB_SELECTOR = "button[role=\"tab\"][aria-label=\"Card Composition\"]";
4
4
  export declare const SETTINGS_TAB_SELECTOR = "button[role=\"tab\"][aria-label=\"Settings\"]";
5
5
  export declare const RIBBON_SELECTOR = ".in-ribbons-wrapper";
6
- export declare const DYNAMIC_CONTENT_BUTTON_SELECTOR = "#guido__btn-add-dynamic-content";
7
- export declare const AMP_TOGGLE_BUTTON_SELECTOR = ".guido__amp-toggle-html";
8
- export declare const AMP_TOGGLE_WRAPPER_SELECTOR = ".in-segments-wrapper";
9
- export declare const HEADER_SELECTOR = "[data-testid=\"guido-header\"]";
10
- export declare const POPOVER_LEFT_OFFSET = 158;
11
- export declare const POPOVER_TOP_GAP = 10;
@@ -63,5 +63,6 @@ export declare enum RecommendationControlId {
63
63
  CUSTOM_ATTR_PADDINGS = "recommendation-block-custom-attr-paddings-control",
64
64
  CUSTOM_ATTR_SIZE = "recommendation-block-custom-attr-size-control",
65
65
  CUSTOM_ATTR_STYLE = "recommendation-block-custom-attr-style-control",
66
+ CUSTOM_ATTR_TEXT_TRIM = "recommendation-block-custom-attr-text-trim-control",
66
67
  SYNC_INFO_MESSAGE = "recommendation-block-sync-info-message"
67
68
  }
@@ -13,10 +13,12 @@
13
13
  * product cards — changing "brand" color won't affect "rating_star" color.
14
14
  */
15
15
  import { ImmutableHtmlNode } from '@stripoinc/ui-editor-extensions';
16
+ import { CustomAttributeTextTrimControl } from './textTrim';
16
17
  /**
17
18
  * Grouped Custom Attribute Controls
18
19
  * Use this object for cleaner imports in extension.ts
19
20
  */
21
+ export { CustomAttributeTextTrimControl } from './textTrim';
20
22
  export declare const CustomAttributeControls: {
21
23
  readonly align: {
22
24
  new (): {
@@ -102,4 +104,5 @@ export declare const CustomAttributeControls: {
102
104
  isVisible(_node: ImmutableHtmlNode): boolean;
103
105
  };
104
106
  };
107
+ readonly textTrim: typeof CustomAttributeTextTrimControl;
105
108
  };
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Custom Attribute Text Trim Control
3
+ *
4
+ * Per-attribute text trimming for custom product attributes.
5
+ * Unlike NameTextTrimControl which applies to ALL product names globally,
6
+ * this control is scoped to a specific custom attribute type via the
7
+ * `product-attr` HTML attribute — changing text-trim on "brand" won't
8
+ * affect "rating_star".
9
+ *
10
+ * CSS rules are shared with NameTextTrimControl via shared/textTrimCssRules.ts.
11
+ */
12
+ import { ImmutableHtmlNode } from '@stripoinc/ui-editor-extensions';
13
+ import { CommonControl } from '../../../common-control';
14
+ /**
15
+ * Control for enabling/disabling text trimming on individual custom attributes.
16
+ * Scoped per attribute type using the `product-attr` HTML attribute.
17
+ */
18
+ export declare class CustomAttributeTextTrimControl extends CommonControl {
19
+ getId(): string;
20
+ getTemplate(): string;
21
+ onRender(): void;
22
+ onTemplateNodeUpdated(node: ImmutableHtmlNode): void;
23
+ _setFormValues(): void;
24
+ _getCurrentTrimState(): boolean;
25
+ /**
26
+ * Finds all custom attribute elements of the same type as the current node.
27
+ *
28
+ * Similar to getCustomAttrTargetNodes in customAttribute/index.ts, but adapted
29
+ * for CommonControl lifecycle where currentNode is a class property (not a
30
+ * parameter from Stripo's getTargetNodes override).
31
+ */
32
+ _getTargetElements(): ImmutableHtmlNode[];
33
+ _onTextTrimChange(enabled: boolean): void;
34
+ _listenToFormUpdates(): void;
35
+ }
@@ -1,9 +1,9 @@
1
- import { ImmutableCssNode, ImmutableHtmlNode } from '@stripoinc/ui-editor-extensions';
1
+ import { ImmutableHtmlNode } from '@stripoinc/ui-editor-extensions';
2
2
  import { CommonControl } from '../../../common-control';
3
3
  /**
4
- * Control for enabling/disabling text trimming on product names
4
+ * Control for enabling/disabling text trimming on product names.
5
5
  * When enabled, adds a CSS class that applies text-overflow: ellipsis
6
- * and injects the required CSS rules into the document stylesheet
6
+ * and injects the required CSS rules into the document stylesheet.
7
7
  */
8
8
  export declare class NameTextTrimControl extends CommonControl {
9
9
  getId(): string;
@@ -12,23 +12,6 @@ export declare class NameTextTrimControl extends CommonControl {
12
12
  onTemplateNodeUpdated(node: ImmutableHtmlNode): void;
13
13
  _setFormValues(): void;
14
14
  _getCurrentTrimState(): boolean;
15
- /**
16
- * Finds an existing CSS rule in the document stylesheet by exact query
17
- * @param query - The CSS query to search for (uses Stripo's CSS query syntax)
18
- * @returns The CSS rule node if found, undefined otherwise
19
- */
20
- _findCssRule(query: string): ImmutableCssNode | undefined;
21
- /**
22
- * Finds the .text-trim-enabled p rule by searching all text-trim rules and comparing selectors
23
- * This is needed because Stripo's CSS query syntax interprets spaces as path separators
24
- * @returns true if the rule exists
25
- */
26
- _hasParagraphRule(): boolean;
27
- /**
28
- * Ensures the text-trim CSS rules exist in the document stylesheet
29
- * Only adds rules if they don't already exist (prevents duplicates across multiple blocks)
30
- */
31
- _ensureCssRulesExist(): void;
32
15
  _onTextTrimChange(enabled: boolean): void;
33
16
  _listenToFormUpdates(): void;
34
17
  }
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Shared Text Trim CSS Rule Management
3
+ *
4
+ * Extracted from NameTextTrimControl to be reused by CustomAttributeTextTrimControl.
5
+ * Follows the same pattern as controls/mobileLayout/cssRules.ts — standalone
6
+ * functions that accept an API parameter, importable by any control class.
7
+ *
8
+ * The CSS rules are document-scoped (shared across all recommendation blocks).
9
+ * Once injected, they persist until the template is closed.
10
+ */
11
+ import type { ImmutableCssNode } from '@stripoinc/ui-editor-extensions';
12
+ import { ModificationDescription } from '@stripoinc/ui-editor-extensions';
13
+ export declare const CSS_CLASS_TEXT_TRIM = "text-trim-enabled";
14
+ interface CssCapableApi {
15
+ getDocumentRootCssNode: () => ImmutableCssNode | null;
16
+ getDocumentModifier: () => {
17
+ modifyCss: (node: ImmutableCssNode) => {
18
+ appendRule: (rule: string) => void;
19
+ };
20
+ apply: (desc: ModificationDescription) => void;
21
+ };
22
+ }
23
+ /**
24
+ * Ensures the text-trim CSS rules exist in the document stylesheet.
25
+ * Only adds rules if they don't already exist (prevents duplicates across blocks).
26
+ * Calls getDocumentRootCssNode once and passes it to both checks.
27
+ */
28
+ export declare function ensureTextTrimCssRulesExist(api: CssCapableApi): void;
29
+ export {};
@@ -26,13 +26,13 @@ export declare const useDynamicContentStore: import("pinia").StoreDefinition<"gu
26
26
  selectedDynamicContent: DynamicContent;
27
27
  selectedDynamicContentList: DynamicContent[];
28
28
  }>) => {
29
- text: string;
30
29
  value: string;
31
- fallback: string | undefined;
32
- format: {
30
+ fallback?: string | undefined;
31
+ format?: {
33
32
  key: string;
34
33
  value: string;
35
34
  } | undefined;
35
+ text: string;
36
36
  }[];
37
37
  }, {
38
38
  setSelectedDynamicContent(dynamicContent: DynamicContent): void;
@@ -1392,10 +1392,6 @@ export declare const useOnboardingStore: import("pinia").StoreDefinition<"guidoO
1392
1392
  close(type: OnboardingType): Promise<void>;
1393
1393
  next(type: OnboardingType): void;
1394
1394
  previous(type: OnboardingType): void;
1395
- updateCardPosition(type: OnboardingType, cardIndex: number, position: {
1396
- top: string;
1397
- position: string;
1398
- }): void;
1399
1395
  setConfig(type: OnboardingType, config: OnboardingCardConfig[]): void;
1400
1396
  onDiscoverNowClicked(): Promise<void>;
1401
1397
  onRemindMeLater(): void;
@@ -1,4 +1,4 @@
1
- const o = `.control-shadow-wrapper:has(.button) {
1
+ const n = `.control-shadow-wrapper:has(.button) {
2
2
  border-radius: 0;
3
3
  box-shadow: none;
4
4
  background-color: transparent;
@@ -99,18 +99,12 @@ ue-check-button.checked:not(.flat-white) input:checked + label .icon-button {
99
99
  color: var(--guido-color-primary-500);
100
100
  }
101
101
 
102
- ue-select.full-width .button {
103
- border: none !important;
104
- background-color: var(--guido-color-neutral-200) !important;
105
- color: var(--guido-color-neutral-800) !important;
106
- }
107
-
108
102
  ue-select.full-width .button .icon-button {
109
103
  color: var(--guido-color-gray-600) !important;
110
104
  }
111
105
 
112
106
  ue-select.full-width .button:hover:not(:disabled,.disabled) {
113
- background-color: var(--guido-color-neutral-100) !important;
107
+ background-color: var(--guido-color-gray-0) !important;
114
108
  }
115
109
 
116
110
  ue-color {
@@ -130,7 +124,20 @@ ue-select-text-input .select-text-input-toggle .button {
130
124
  justify-content: center;
131
125
  background-color: transparent !important;
132
126
  }
127
+
128
+
129
+ .control-shadow-wrapper,
130
+ ue-button:not(.no-shadow,.flat-white),
131
+ ue-toggle:not(.no-shadow,.flat-white),
132
+ :is(ue-popover-toggler,ue-toggle-icon-picker,ue-emoji-toggle),
133
+ .button-group,
134
+ ue-counter:not(.no-shadow),
135
+ :is(ue-select,ue-mergetags,ue-font-family-select):not(.no-shadow),
136
+ ue-check-button:not(.no-shadow,.flat-white) {
137
+ background: none;
138
+ padding: 0;
139
+ }
133
140
  `;
134
141
  export {
135
- o as default
142
+ n as default
136
143
  };
@@ -4,6 +4,10 @@ const n = `ue-loader-component.full-height {
4
4
  z-index: 9;
5
5
  backdrop-filter: blur(2px);
6
6
  }
7
+
8
+ ue-loader-component .service-element.loader {
9
+ box-shadow: var(--guido-color-primary-500) 1px 1px 0 0 !important;
10
+ }
7
11
  `;
8
12
  export {
9
13
  n as default
@@ -28,6 +28,58 @@ ue-stripe-thumb:hover:not(.disabled),
28
28
  border-color: var(--guido-color-primary-500);
29
29
  }
30
30
 
31
+ /* Module search — initial */
32
+ .module-search-container {
33
+ background-color: var(--guido-color-gray-0);
34
+ border: 1px solid var(--guido-color-gray-300);
35
+ border-radius: 4px;
36
+ }
37
+
38
+ .module-search-container .service-element {
39
+ background-color: unset;
40
+ }
41
+
42
+ .module-filter-toggle {
43
+ top: -1px !important;
44
+ right: -1px !important;
45
+ }
46
+
47
+ .module-filter-toggle > .button,
48
+ .module-search-container:hover .module-filter-toggle > .button {
49
+ border: none;
50
+ background: transparent;
51
+ }
52
+
53
+ /* Module search — hover */
54
+ .module-search-container:has(.module-search-chip-input:hover) {
55
+ border-color: var(--guido-color-primary-500);
56
+ }
57
+
58
+ .module-search-container .module-search-chip-input .service-element:hover {
59
+ background-color: var(--guido-color-gray-0);
60
+ border-radius: 4px;
61
+ }
62
+
63
+ .module-search-container .module-filter-toggle:hover > .button {
64
+ background-color: var(--guido-color-gray-1);
65
+ }
66
+
67
+ /* Module search — selected (.on) */
68
+ .module-search-container:has(.module-search-chip-input.on),
69
+ .module-search-container:has(.module-search-chip-input.on):hover {
70
+ border-color: var(--guido-color-primary-500);
71
+ box-shadow: 0 0 0 3px var(--guido-color-primary-200) !important;
72
+ }
73
+
74
+ .module-search-container .module-search-chip-input.on .input-section {
75
+ background-color: unset;
76
+ box-shadow: unset;
77
+ }
78
+
79
+ .module-categories-list .menu-item {
80
+ padding: 8px 20px !important;
81
+ }
82
+
31
83
  .modules-layout-wrapper {
32
84
  padding: 0 16px 16px;
33
85
  grid-row-gap: 16px;
@@ -1,8 +1,6 @@
1
- import "../@types/config/schemas.js";
2
- import "../@types/config/defaults.js";
3
- import { parseConfig as n } from "../@types/config/validator.js";
4
- import { defineStore as o } from "pinia";
5
- const s = o("guido-config", {
1
+ import { defineStore as n } from "pinia";
2
+ import { parseConfig as t } from "../@types/config/validator.js";
3
+ const a = n("guido-config", {
6
4
  state: () => ({
7
5
  initialized: !1,
8
6
  config: null
@@ -11,137 +9,83 @@ const s = o("guido-config", {
11
9
  /**
12
10
  * Get the identity configuration
13
11
  */
14
- identity: (i) => {
15
- var e;
16
- return ((e = i.config) == null ? void 0 : e.identity) ?? null;
17
- },
12
+ identity: (e) => e.config?.identity ?? null,
18
13
  /**
19
14
  * Get the partner configuration
20
15
  */
21
- partner: (i) => {
22
- var e;
23
- return ((e = i.config) == null ? void 0 : e.partner) ?? null;
24
- },
16
+ partner: (e) => e.config?.partner ?? null,
25
17
  /**
26
18
  * Get the template configuration
27
19
  */
28
- template: (i) => {
29
- var e;
30
- return ((e = i.config) == null ? void 0 : e.template) ?? null;
31
- },
20
+ template: (e) => e.config?.template ?? null,
32
21
  /**
33
22
  * Get the editor configuration
34
23
  */
35
- editor: (i) => {
36
- var e;
37
- return ((e = i.config) == null ? void 0 : e.editor) ?? null;
38
- },
24
+ editor: (e) => e.config?.editor ?? null,
39
25
  /**
40
26
  * Get the UI configuration
41
27
  */
42
- ui: (i) => {
43
- var e;
44
- return ((e = i.config) == null ? void 0 : e.ui) ?? null;
45
- },
28
+ ui: (e) => e.config?.ui ?? null,
46
29
  /**
47
30
  * Get the features configuration
48
31
  */
49
- features: (i) => {
50
- var e;
51
- return ((e = i.config) == null ? void 0 : e.features) ?? null;
52
- },
32
+ features: (e) => e.config?.features ?? null,
53
33
  /**
54
34
  * Get the blocks configuration
55
35
  */
56
- blocks: (i) => {
57
- var e;
58
- return ((e = i.config) == null ? void 0 : e.blocks) ?? null;
59
- },
36
+ blocks: (e) => e.config?.blocks ?? null,
60
37
  /**
61
38
  * Get the compiler configuration
62
39
  */
63
- compiler: (i) => {
64
- var e;
65
- return ((e = i.config) == null ? void 0 : e.compiler) ?? null;
66
- },
40
+ compiler: (e) => e.config?.compiler ?? null,
67
41
  /**
68
42
  * Get the callbacks configuration
69
43
  */
70
- callbacks: (i) => {
71
- var e;
72
- return ((e = i.config) == null ? void 0 : e.callbacks) ?? null;
73
- },
44
+ callbacks: (e) => e.config?.callbacks ?? null,
74
45
  /**
75
46
  * Get the template ID
76
47
  */
77
- templateId: (i) => {
78
- var e;
79
- return ((e = i.config) == null ? void 0 : e.identity.templateId) ?? "";
80
- },
48
+ templateId: (e) => e.config?.identity.templateId ?? "",
81
49
  /**
82
50
  * Get the user ID
83
51
  */
84
- userId: (i) => {
85
- var e;
86
- return ((e = i.config) == null ? void 0 : e.identity.userId) ?? "";
87
- },
52
+ userId: (e) => e.config?.identity.userId ?? "",
88
53
  /**
89
54
  * Get the variation ID
90
55
  */
91
- variationId: (i) => {
92
- var e;
93
- return ((e = i.config) == null ? void 0 : e.identity.variationId) ?? "";
94
- },
56
+ variationId: (e) => e.config?.identity.variationId ?? "",
95
57
  /**
96
58
  * Get the partner name
97
59
  */
98
- partnerName: (i) => {
99
- var e;
100
- return ((e = i.config) == null ? void 0 : e.partner.name) ?? "";
101
- },
60
+ partnerName: (e) => e.config?.partner.name ?? "",
102
61
  /**
103
62
  * Get the product type
104
63
  */
105
- productType: (i) => {
106
- var e;
107
- return ((e = i.config) == null ? void 0 : e.partner.productType) ?? 60;
108
- },
64
+ productType: (e) => e.config?.partner.productType ?? 60,
109
65
  /**
110
66
  * Get the message type
111
67
  */
112
- messageType: (i) => {
113
- var e;
114
- return ((e = i.config) == null ? void 0 : e.partner.messageType) ?? 1;
115
- },
68
+ messageType: (e) => e.config?.partner.messageType ?? 1,
116
69
  /**
117
70
  * Get the username
118
71
  */
119
- username: (i) => {
120
- var e;
121
- return ((e = i.config) == null ? void 0 : e.partner.username) ?? "Guido User";
122
- },
72
+ username: (e) => e.config?.partner.username ?? "Guido User",
123
73
  /**
124
74
  * Check if header should be shown
125
75
  */
126
- showHeader: (i) => {
127
- var e;
128
- return ((e = i.config) == null ? void 0 : e.ui.showHeader) ?? !0;
129
- },
76
+ showHeader: (e) => e.config?.ui.showHeader ?? !0,
130
77
  /**
131
78
  * Check if a specific feature is enabled
132
79
  */
133
- isFeatureEnabled: (i) => (e) => {
134
- var t;
135
- return ((t = i.config) == null ? void 0 : t.features[e]) ?? !0;
136
- }
80
+ isFeatureEnabled: (e) => (i) => e.config?.features[i] ?? !0
137
81
  },
138
82
  actions: {
139
83
  /**
140
84
  * Initialize the config store with validated configuration
141
85
  */
142
- init(i) {
143
- const e = n(i);
144
- this.config = e, this.initialized = !0;
86
+ init(e) {
87
+ const i = t(e);
88
+ this.config = i, this.initialized = !0;
145
89
  },
146
90
  /**
147
91
  * Reset the config store
@@ -152,5 +96,5 @@ const s = o("guido-config", {
152
96
  }
153
97
  });
154
98
  export {
155
- s as useConfigStore
99
+ a as useConfigStore
156
100
  };