@envive-ai/react-hooks 0.1.0

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 (385) hide show
  1. package/LICENSE +2 -0
  2. package/README.md +2 -0
  3. package/dist/GridInsertionService-CEYo9pGj.js +22 -0
  4. package/dist/GridInsertionService-CS_bnPh0.cjs +28 -0
  5. package/dist/bandolier-Ble8jEa8.js +1221 -0
  6. package/dist/bandolier-Bm2xAt_j.cjs +1221 -0
  7. package/dist/carpe-Da7b-LCW.cjs +599 -0
  8. package/dist/carpe-W13mhRRP.js +597 -0
  9. package/dist/cdnService-CZ-aXcY6.cjs +23 -0
  10. package/dist/cdnService-zQfKk3Eb.js +18 -0
  11. package/dist/chatElementDisplayLocation-CX8fuNao.d.cts +239 -0
  12. package/dist/chatElementDisplayLocation-CwptS9tx.d.ts +239 -0
  13. package/dist/chunk-CUT6urMc.cjs +30 -0
  14. package/dist/contexts/index.cjs +13 -0
  15. package/dist/contexts/index.d.cts +65 -0
  16. package/dist/contexts/index.d.ts +66 -0
  17. package/dist/contexts/index.js +7 -0
  18. package/dist/contexts-BRjfVq_k.js +5064 -0
  19. package/dist/contexts-BYArqZtK.cjs +5164 -0
  20. package/dist/coterie-3y0D9ko4.cjs +229 -0
  21. package/dist/coterie-DOWcJAYv.js +229 -0
  22. package/dist/custservice-types-CFIFwZ-r.js +10 -0
  23. package/dist/custservice-types-CkfxZiHY.cjs +16 -0
  24. package/dist/default-C2fEZKXk.js +175 -0
  25. package/dist/default-CBUq6Q6G.cjs +4 -0
  26. package/dist/default-CGIFZK6m.js +4 -0
  27. package/dist/default-D_KPZdPJ.cjs +198 -0
  28. package/dist/divIds-Bss-btao.js +49 -0
  29. package/dist/divIds-DnZNd7rA.cjs +223 -0
  30. package/dist/dreamlandBaby-DCIsuU9R.cjs +338 -0
  31. package/dist/dreamlandBaby-DvSaZGrz.js +338 -0
  32. package/dist/entrypoints-D_JUvkgy.cjs +18 -0
  33. package/dist/entrypoints-YLQsbBRD.js +6 -0
  34. package/dist/enviveConfigContext-CUGLpPGU.js +34 -0
  35. package/dist/enviveConfigContext-Dfr2VH6u.cjs +48 -0
  36. package/dist/fiveCbd-B1SESMCO.js +605 -0
  37. package/dist/fiveCbd-CkOlVby_.cjs +605 -0
  38. package/dist/forLoveAndLemons-CfYPMnKS.cjs +660 -0
  39. package/dist/forLoveAndLemons-DmwYZIk0.js +658 -0
  40. package/dist/greenpan-Bsl3ir59.cjs +389 -0
  41. package/dist/greenpan-BtOi45lf.js +389 -0
  42. package/dist/grooveLife-6_dtYsRk.js +334 -0
  43. package/dist/grooveLife-Cmm1PSCL.cjs +334 -0
  44. package/dist/homegrownCannabis-C-kw-74X.js +400 -0
  45. package/dist/homegrownCannabis-CO0uY_mp.cjs +400 -0
  46. package/dist/hooks/index.cjs +16 -0
  47. package/dist/hooks/index.d.cts +357 -0
  48. package/dist/hooks/index.d.ts +357 -0
  49. package/dist/hooks/index.js +7 -0
  50. package/dist/jackArcher-CLVmwwpI.js +719 -0
  51. package/dist/jackArcher-DdYTIzAV.cjs +719 -0
  52. package/dist/jordanCraig-Am-Oor-O.js +1778 -0
  53. package/dist/jordanCraig-_u3-w4Hp.cjs +1778 -0
  54. package/dist/kindredBravely-CWovIDSc.cjs +482 -0
  55. package/dist/kindredBravely-eWp-ud_E.js +482 -0
  56. package/dist/kutFromTheKloth-BMV4BuGQ.js +361 -0
  57. package/dist/kutFromTheKloth-Q589bAOC.cjs +361 -0
  58. package/dist/larryAndSerges-BMUlTgI-.js +252 -0
  59. package/dist/larryAndSerges-CEau764j.cjs +252 -0
  60. package/dist/leapsAndRebounds-DGMzPO7T.js +352 -0
  61. package/dist/leapsAndRebounds-DHAtRTJD.cjs +352 -0
  62. package/dist/logger-Dln20ans.cjs +25 -0
  63. package/dist/logger-pdEEY8T2.js +19 -0
  64. package/dist/longevityrx-CZW8Hxzi.cjs +312 -0
  65. package/dist/longevityrx-jH2JLhNH.js +312 -0
  66. package/dist/lookOptic-BGXP5P_V.js +274 -0
  67. package/dist/lookOptic-CA6RwLbG.cjs +274 -0
  68. package/dist/mantraBrand-Cm9_PBCT.js +742 -0
  69. package/dist/mantraBrand-DByNqpnL.cjs +742 -0
  70. package/dist/medterra-B0wxj_PV.js +575 -0
  71. package/dist/medterra-DnPN2ksU.cjs +575 -0
  72. package/dist/modells-Bmz8Ag5M.js +476 -0
  73. package/dist/modells-CoYgkLSp.cjs +476 -0
  74. package/dist/models-DHdb7QWn.js +51 -0
  75. package/dist/models-ixxUsGL_.cjs +69 -0
  76. package/dist/pressedFloral-DSKs_oVG.js +653 -0
  77. package/dist/pressedFloral-DjBiSoUl.cjs +653 -0
  78. package/dist/skinPerfection-B_3xzVNS.cjs +326 -0
  79. package/dist/skinPerfection-IDrBuAPt.js +326 -0
  80. package/dist/snapSupplements-BJk5T5ba.js +277 -0
  81. package/dist/snapSupplements-BStTsdOZ.cjs +277 -0
  82. package/dist/socialProofClasses-Bhv2Vulz.js +9 -0
  83. package/dist/socialProofClasses-CrQBWdSA.cjs +39 -0
  84. package/dist/spanx-BYg0LE7R.js +653 -0
  85. package/dist/spanx-LwU1zSzq.cjs +655 -0
  86. package/dist/spanxStaging-CfSmuKYB.js +837 -0
  87. package/dist/spanxStaging-OZLV9qix.cjs +840 -0
  88. package/dist/suggestionBarV2-types-BllzwsBD.js +34 -0
  89. package/dist/suggestionBarV2-types-CaovchMP.cjs +46 -0
  90. package/dist/supergoop-BqPXDnKk.cjs +327 -0
  91. package/dist/supergoop-CIlrHND_.js +325 -0
  92. package/dist/types-C4T5UOIW.cjs +230 -0
  93. package/dist/types-CYNvLeSA.js +176 -0
  94. package/dist/uniqueVintage-B30mOqbH.cjs +1205 -0
  95. package/dist/uniqueVintage-CFueJOhO.js +1203 -0
  96. package/dist/venaCbd-DHGZy49P.cjs +357 -0
  97. package/dist/venaCbd-T0CqVD4k.js +357 -0
  98. package/dist/westonJonBoucher-BdMzs_Yg.cjs +414 -0
  99. package/dist/westonJonBoucher-b4TCQ4ev.js +414 -0
  100. package/dist/wineEnthusiast-BLGlOjgr.cjs +932 -0
  101. package/dist/wineEnthusiast-BqR0i_54.js +932 -0
  102. package/dist/wolfMattress-CyyO-LoC.js +362 -0
  103. package/dist/wolfMattress-DNGZOivg.cjs +362 -0
  104. package/dist/wolfTactical-3Mm2fvVF.js +341 -0
  105. package/dist/wolfTactical-BmXYlFjr.cjs +341 -0
  106. package/package.json +66 -0
  107. package/src/adapters/amplitude/amplitudeAdapter.ts +454 -0
  108. package/src/adapters/amplitude/index.ts +2 -0
  109. package/src/adapters/amplitude/stubAmplitudeAdapter.ts +34 -0
  110. package/src/adapters/spiffy/commerce/api.ts +596 -0
  111. package/src/adapters/spiffy/commerce/exceptions/sessionExceptions.ts +6 -0
  112. package/src/adapters/spiffy/commerce/exceptions/unsupportedProductExceptions.ts +6 -0
  113. package/src/adapters/spiffy/commerce/graphql.ts +184 -0
  114. package/src/application/config/generalStaticConfig.ts +37 -0
  115. package/src/application/logging/logger.ts +29 -0
  116. package/src/application/models/api/context.ts +4 -0
  117. package/src/application/models/api/generationParams.ts +4 -0
  118. package/src/application/models/api/nextMessageRequest.ts +11 -0
  119. package/src/application/models/api/orgAnalyticsConfig.ts +19 -0
  120. package/src/application/models/api/orgConfigResults.ts +40 -0
  121. package/src/application/models/api/organizationConfig.ts +12 -0
  122. package/src/application/models/api/response.ts +132 -0
  123. package/src/application/models/api/responseGenerics.ts +67 -0
  124. package/src/application/models/api/search.ts +26 -0
  125. package/src/application/models/api/suggestion.ts +4 -0
  126. package/src/application/models/api/supportedEventRequest.ts +8 -0
  127. package/src/application/models/api/userEvent.ts +101 -0
  128. package/src/application/models/cachedValue.ts +8 -0
  129. package/src/application/models/chatElementDisplayLocation.ts +22 -0
  130. package/src/application/models/clientDetails.ts +18 -0
  131. package/src/application/models/colorsConfig.ts +28 -0
  132. package/src/application/models/conversationalSearchIds.ts +5 -0
  133. package/src/application/models/dataLayer.ts +45 -0
  134. package/src/application/models/domMutationContinuation.ts +7 -0
  135. package/src/application/models/domObservationStrategy.ts +9 -0
  136. package/src/application/models/events.ts +5 -0
  137. package/src/application/models/featureGates.ts +23 -0
  138. package/src/application/models/frontendConfig.ts +14 -0
  139. package/src/application/models/googleAnalyticsEvents.ts +8 -0
  140. package/src/application/models/graphql/index.ts +2 -0
  141. package/src/application/models/graphql/queries/getMerchantColorsQuery.ts +37 -0
  142. package/src/application/models/graphql/queries/getMerchantFrontendConfigQuery.ts +103 -0
  143. package/src/application/models/graphql/queries/getMerchantOrgIdQuery.ts +11 -0
  144. package/src/application/models/guards/api/index.ts +12 -0
  145. package/src/application/models/guards/api/isApiFormResponse.ts +90 -0
  146. package/src/application/models/guards/api/isApiFormSubmittedResponseAttributes.ts +37 -0
  147. package/src/application/models/guards/api/isApiOrderResponseAttributes.ts +155 -0
  148. package/src/application/models/guards/api/isApiOrgConfigResults.ts +277 -0
  149. package/src/application/models/guards/api/isApiOrganizationConfig.ts +207 -0
  150. package/src/application/models/guards/api/isApiPDPEventAttributes.ts +21 -0
  151. package/src/application/models/guards/api/isApiPLPEventAttributes.ts +41 -0
  152. package/src/application/models/guards/api/isApiPageResponseAttributes.ts +21 -0
  153. package/src/application/models/guards/api/isApiProductResponseAttributes.ts +85 -0
  154. package/src/application/models/guards/api/isApiProductSearchAttributes.ts +23 -0
  155. package/src/application/models/guards/api/isApiProductSearchFilterAttributes.ts +15 -0
  156. package/src/application/models/guards/api/isApiQueryTypedEventAttributes.ts +4 -0
  157. package/src/application/models/guards/api/isApiResponse.ts +39 -0
  158. package/src/application/models/guards/api/isApiReviewResponseAttributes.ts +30 -0
  159. package/src/application/models/guards/api/isApiReviewRichInformation.ts +37 -0
  160. package/src/application/models/guards/api/isApiSearchEventAttributes.ts +28 -0
  161. package/src/application/models/guards/api/isApiSuggestion.ts +36 -0
  162. package/src/application/models/guards/api/isApiSuggestionClickedEventAttributes.ts +9 -0
  163. package/src/application/models/guards/api/isApiTextResponseAttributes.ts +9 -0
  164. package/src/application/models/guards/api/isApiUserEvent.ts +25 -0
  165. package/src/application/models/guards/graphQL/isGraphQLColorsConfig.ts +50 -0
  166. package/src/application/models/guards/isBaseEcommerceEvent.ts +17 -0
  167. package/src/application/models/guards/isGA4EcommerceEvent.ts +17 -0
  168. package/src/application/models/guards/isLegacyUAEcommerceEvent.ts +17 -0
  169. package/src/application/models/guards/isMobilePLPChatPlacementParameter.ts +11 -0
  170. package/src/application/models/guards/isSpanxTakeAQuizCtaParameter.ts +4 -0
  171. package/src/application/models/guards/isVariantInfo.ts +37 -0
  172. package/src/application/models/guards/utils.ts +43 -0
  173. package/src/application/models/index.ts +20 -0
  174. package/src/application/models/localStorageEventListener.ts +4 -0
  175. package/src/application/models/message.ts +146 -0
  176. package/src/application/models/mobilePLPChatPlacementParameter.ts +3 -0
  177. package/src/application/models/orgsEnum.ts +36 -0
  178. package/src/application/models/productExperiment.ts +5 -0
  179. package/src/application/models/spanxTakeAQuizCtaParameter.ts +4 -0
  180. package/src/application/models/spiffyWidgets.ts +16 -0
  181. package/src/application/models/supportedOrgs.ts +137 -0
  182. package/src/application/models/utilityTypes/camelCase.ts +87 -0
  183. package/src/application/models/utilityTypes/camelCasedPropertiesDeep.ts +80 -0
  184. package/src/application/models/utilityTypes/delimiterCase.ts +121 -0
  185. package/src/application/models/utilityTypes/delimiterCasedPropertiesDeep.ts +98 -0
  186. package/src/application/models/utilityTypes/index.ts +1 -0
  187. package/src/application/models/utilityTypes/internal.ts +93 -0
  188. package/src/application/models/utilityTypes/primitive.ts +8 -0
  189. package/src/application/models/utilityTypes/snakeCasedPropertiesDeep.ts +49 -0
  190. package/src/application/models/utilityTypes/splitWords.ts +76 -0
  191. package/src/application/models/utilityTypes/trim.ts +28 -0
  192. package/src/application/models/utilityTypes/unknownArray.ts +25 -0
  193. package/src/application/models/utils/snakeToCamelTransformer.ts +90 -0
  194. package/src/application/models/utils/stringToFulfillmentDisplayStatusEnumValue.ts +68 -0
  195. package/src/application/models/validators/validateGraphQLColorsConfig.ts +29 -0
  196. package/src/application/models/validators/validateGraphQLFrontendConfig.ts +594 -0
  197. package/src/application/models/validators/validateGraphQLOrgId.ts +7 -0
  198. package/src/application/models/validators/validateMobilePLPChatPlacementParameter.ts +14 -0
  199. package/src/application/models/validators/validateOrgConfigResults.ts +47 -0
  200. package/src/application/models/validators/validateOrganizationConfig.ts +37 -0
  201. package/src/application/models/validators/validateResponse.ts +187 -0
  202. package/src/application/models/validators/validateSuggestion.ts +16 -0
  203. package/src/application/models/validators/validateUserEvent.ts +110 -0
  204. package/src/application/models/variantInfo/index.ts +1 -0
  205. package/src/application/models/variantInfo/pageVisitInfo.ts +6 -0
  206. package/src/application/models/variantInfo/plpInfo.ts +3 -0
  207. package/src/application/models/variantInfo/productInfo.ts +5 -0
  208. package/src/application/models/variantInfo/variantInfo.ts +23 -0
  209. package/src/application/service/cachingService.ts +84 -0
  210. package/src/application/service/cdnService.ts +18 -0
  211. package/src/application/service/customerService/index.ts +8 -0
  212. package/src/application/service/customerService/providers/UnsupportedCustomerService.ts +15 -0
  213. package/src/application/service/customerService/types.ts +31 -0
  214. package/src/application/service/domMutationObserver.ts +320 -0
  215. package/src/application/service/domMutations/GridInsertionService.ts +123 -0
  216. package/src/application/service/domMutations/dataLayer/dataLayerEventsListener.ts +99 -0
  217. package/src/application/service/domMutations/domInsertionService.ts +90 -0
  218. package/src/application/service/domMutations/domMutationListener.ts +15 -0
  219. package/src/application/service/domMutations/domMutationListenerState.ts +52 -0
  220. package/src/application/service/domMutations/floatingChat/embeddedChatsPlacementsListener.ts +41 -0
  221. package/src/application/service/domMutations/gladly/gladlyListener.ts +61 -0
  222. package/src/application/service/domMutations/spiffy/orgs/common/kustomerVisibilityListener.ts +41 -0
  223. package/src/application/service/domMutations/spiffy/orgs/common/orgsCommonDataLayerListener.ts +119 -0
  224. package/src/application/service/environmentService.ts +51 -0
  225. package/src/application/service/featureFlagService.ts +130 -0
  226. package/src/application/service/kustomerIntegrationService.ts +111 -0
  227. package/src/application/service/localStorageService.ts +77 -0
  228. package/src/application/service/pageVariantService.ts +779 -0
  229. package/src/application/service/searchService.ts +140 -0
  230. package/src/application/service/sessionStorageService.ts +27 -0
  231. package/src/application/service/shopifyUrlService.ts +63 -0
  232. package/src/application/service/userIdentityService.ts +114 -0
  233. package/src/application/service/windowChatToggleService.ts +71 -0
  234. package/src/application/service/windowDataLayerService.ts +181 -0
  235. package/src/application/service/windowFrontendConfigService.ts +104 -0
  236. package/src/application/utils/__tests__/divideArrays.test.ts +14 -0
  237. package/src/application/utils/analyticsUtils.ts +110 -0
  238. package/src/application/utils/coreContextToApiContext.ts +11 -0
  239. package/src/application/utils/coreUserEventToApiUserEvent.ts +106 -0
  240. package/src/application/utils/divideArray.ts +7 -0
  241. package/src/application/utils/domObserver.ts +96 -0
  242. package/src/application/utils/elementObserver.ts +246 -0
  243. package/src/application/utils/imageFilter.ts +12 -0
  244. package/src/application/utils/index.ts +3 -0
  245. package/src/application/utils/merchantUtils.ts +16 -0
  246. package/src/application/utils/messageFromFormSubmittedEvent.ts +31 -0
  247. package/src/application/utils/messageFromQueryEvent.ts +38 -0
  248. package/src/application/utils/messageFromResponse.ts +133 -0
  249. package/src/application/utils/messageFromSuggestionEvent.ts +32 -0
  250. package/src/application/utils/mouseEventTypes.ts +1 -0
  251. package/src/application/utils/mutationHelper.ts +51 -0
  252. package/src/application/utils/nextMessageRequestToApiRequest.ts +31 -0
  253. package/src/application/utils/nodeSelector.ts +133 -0
  254. package/src/application/utils/overrides.ts +196 -0
  255. package/src/application/utils/stringUtils.ts +55 -0
  256. package/src/application/utils/supportedEventRequestToApiRequest.ts +12 -0
  257. package/src/application/utils/urlsParser.ts +53 -0
  258. package/src/application/utils/validation.ts +5 -0
  259. package/src/atoms/app/index.ts +57 -0
  260. package/src/atoms/app/variant.ts +261 -0
  261. package/src/atoms/atomStore.ts +34 -0
  262. package/src/atoms/chat/chatState.ts +44 -0
  263. package/src/atoms/chat/form.ts +19 -0
  264. package/src/atoms/chat/index.ts +38 -0
  265. package/src/atoms/chat/lastMessage.ts +11 -0
  266. package/src/atoms/chat/messageQueue.ts +65 -0
  267. package/src/atoms/chat/performanceMetrics.ts +84 -0
  268. package/src/atoms/chat/renderedWidgetRefs.ts +28 -0
  269. package/src/atoms/chat/replies.ts +51 -0
  270. package/src/atoms/chat/suggestions.ts +36 -0
  271. package/src/atoms/globalSearch.ts +12 -0
  272. package/src/atoms/index.ts +5 -0
  273. package/src/atoms/org/customerService.ts +13 -0
  274. package/src/atoms/org/graphqlConfig.ts +27 -0
  275. package/src/atoms/org/index.ts +7 -0
  276. package/src/atoms/org/merchantCss.ts +44 -0
  277. package/src/atoms/org/org.ts +256 -0
  278. package/src/atoms/org/orgAnalyticsConfig.ts +28 -0
  279. package/src/atoms/org/orgPageConfig.ts +38 -0
  280. package/src/atoms/org/orgUIConfig.ts +122 -0
  281. package/src/atoms/search/chatSearch.ts +293 -0
  282. package/src/atoms/search/index.ts +2 -0
  283. package/src/atoms/search/productFilters.ts +207 -0
  284. package/src/atoms/search/productSorter.ts +23 -0
  285. package/src/atoms/search/searchAPI.ts +194 -0
  286. package/src/atoms/search/types.ts +55 -0
  287. package/src/atoms/search/utils.ts +18 -0
  288. package/src/config/divIds.ts +27 -0
  289. package/src/config/locators/components/chat/entrypoints.ts +13 -0
  290. package/src/config/locators/components/chat/index.ts +23 -0
  291. package/src/config/locators/components/chat/preview.ts +13 -0
  292. package/src/config/locators/components/chat/variants/index.ts +16 -0
  293. package/src/config/locators/components/common/buttons.ts +6 -0
  294. package/src/config/locators/components/common/cards.ts +18 -0
  295. package/src/config/locators/components/common/links.ts +1 -0
  296. package/src/config/locators/components/common/tables.ts +2 -0
  297. package/src/config/locators/components/floating-button.ts +2 -0
  298. package/src/config/locators/components/index.ts +3 -0
  299. package/src/config/locators/components/report-issue.ts +21 -0
  300. package/src/config/locators/components/search/index.ts +5 -0
  301. package/src/config/locators/components/shadow-dom.ts +1 -0
  302. package/src/config/locators/embedded.ts +21 -0
  303. package/src/config/locators/index.ts +3 -0
  304. package/src/config/socialProofClasses.ts +17 -0
  305. package/src/contexts/chatContext.tsx +451 -0
  306. package/src/contexts/enviveConfigContext.tsx +70 -0
  307. package/src/contexts/index.ts +4 -0
  308. package/src/contexts/systemSettingsContext.tsx +61 -0
  309. package/src/contexts/types.ts +1059 -0
  310. package/src/enabled-features.ts +83 -0
  311. package/src/events/event-types.ts +11 -0
  312. package/src/events/index.ts +52 -0
  313. package/src/events/registerAnalyticsListeners.ts +49 -0
  314. package/src/extension.ts +63 -0
  315. package/src/hooks/index.ts +22 -0
  316. package/src/hooks/useBlockBackButton.ts +29 -0
  317. package/src/hooks/useChatToggle.ts +66 -0
  318. package/src/hooks/useCustomerSupportHandoff.ts +39 -0
  319. package/src/hooks/useDebounce.ts +17 -0
  320. package/src/hooks/useDynamicVariants.ts +210 -0
  321. package/src/hooks/useElementObserver.ts +245 -0
  322. package/src/hooks/useFileUpload.ts +61 -0
  323. package/src/hooks/useGrabAndScroll.ts +133 -0
  324. package/src/hooks/useHideElements.ts +82 -0
  325. package/src/hooks/useHorizontalScrollAnimation.ts +115 -0
  326. package/src/hooks/useImageResolver.ts +51 -0
  327. package/src/hooks/useIntersection.ts +28 -0
  328. package/src/hooks/useIsSmallScreen.ts +23 -0
  329. package/src/hooks/useMessageFilter.ts +49 -0
  330. package/src/hooks/useMessageScrollObserver.ts +47 -0
  331. package/src/hooks/useReducedMotionWithOverride.ts +15 -0
  332. package/src/hooks/useSearch.tsx +433 -0
  333. package/src/hooks/useSnapCalculator.ts +38 -0
  334. package/src/hooks/useSnapControl.ts +155 -0
  335. package/src/hooks/useSystemSettingsContext.ts +12 -0
  336. package/src/hooks/useTrackComponentVisibleEvent.ts +52 -0
  337. package/src/hooks/useUpdateAnalyticsProps.ts +56 -0
  338. package/src/hooks/utils.ts +153 -0
  339. package/src/index.ts +31 -0
  340. package/src/initialize.ts +163 -0
  341. package/src/interceptors/types.ts +6 -0
  342. package/src/interceptors/useFormEscalation.ts +40 -0
  343. package/src/interceptors/useMessageInterceptor.ts +32 -0
  344. package/src/main.ts +85 -0
  345. package/src/main.tsx +123 -0
  346. package/src/merchants/bandolier/bandolier.ts +1389 -0
  347. package/src/merchants/carpe/carpe.ts +656 -0
  348. package/src/merchants/coterie/coterie.ts +280 -0
  349. package/src/merchants/default.ts +193 -0
  350. package/src/merchants/dreamlandBaby/dreamlandBaby.ts +375 -0
  351. package/src/merchants/fiveCbd/fiveCbd.ts +697 -0
  352. package/src/merchants/forLoveAndLemons/forLoveAndLemons.ts +721 -0
  353. package/src/merchants/greenpan/greenpan.ts +440 -0
  354. package/src/merchants/grooveLife/grooveLife.ts +386 -0
  355. package/src/merchants/homegrownCannabis/homegrownCannabis.ts +468 -0
  356. package/src/merchants/init-merchant.sh +53 -0
  357. package/src/merchants/jackArcher/jackArcher.ts +974 -0
  358. package/src/merchants/jordanCraig/jordanCraig.ts +1927 -0
  359. package/src/merchants/kindredBravely/kindredBravely.ts +529 -0
  360. package/src/merchants/kutFromTheKloth/kutFromTheKloth.ts +418 -0
  361. package/src/merchants/larryAndSerges/larryAndSerges.ts +314 -0
  362. package/src/merchants/leapsAndRebounds/leapsAndRebounds.ts +424 -0
  363. package/src/merchants/longevityrx/longevityrx.ts +368 -0
  364. package/src/merchants/lookOptic/lookOptic.ts +323 -0
  365. package/src/merchants/mantraBrand/mantraBrand.ts +838 -0
  366. package/src/merchants/medterra/medterra.ts +670 -0
  367. package/src/merchants/modells/modells.ts +546 -0
  368. package/src/merchants/pressedFloral/pressedFloral.ts +734 -0
  369. package/src/merchants/skinPerfection/skinPerfection.ts +379 -0
  370. package/src/merchants/snapSupplements/snapSupplements.ts +325 -0
  371. package/src/merchants/spanx/spanx.ts +810 -0
  372. package/src/merchants/spanx/spanxStaging.ts +942 -0
  373. package/src/merchants/supergoop/supergoop.ts +376 -0
  374. package/src/merchants/uniqueVintage/uniqueVintage.ts +1314 -0
  375. package/src/merchants/uniqueVintage/views/useUniqueVintageChatSearch.ts +147 -0
  376. package/src/merchants/venaCbd/venaCbd.ts +410 -0
  377. package/src/merchants/westonJonBoucher/westonJonBoucher.ts +473 -0
  378. package/src/merchants/wineEnthusiast/wineEnthusiast.ts +990 -0
  379. package/src/merchants/wolfMattress/wolfMattress.ts +411 -0
  380. package/src/merchants/wolfTactical/wolfTactical.ts +389 -0
  381. package/src/types/custservice-types.ts +28 -0
  382. package/src/types/search-filter-types.ts +111 -0
  383. package/src/types/suggestionBarV2-types.ts +4 -0
  384. package/src/types/test-types.ts +3 -0
  385. package/src/types.ts +66 -0
@@ -0,0 +1,1205 @@
1
+ const require_chunk = require('./chunk-CUT6urMc.cjs');
2
+ require('./logger-Dln20ans.cjs');
3
+ const require_models = require('./models-ixxUsGL_.cjs');
4
+ const require_types = require('./types-C4T5UOIW.cjs');
5
+ require('./enviveConfigContext-Dfr2VH6u.cjs');
6
+ const require_divIds = require('./divIds-DnZNd7rA.cjs');
7
+ const require_GridInsertionService = require('./GridInsertionService-CS_bnPh0.cjs');
8
+ const require_suggestionBarV2_types = require('./suggestionBarV2-types-CaovchMP.cjs');
9
+ const require_cdnService = require('./cdnService-CZ-aXcY6.cjs');
10
+ const require_default = require('./default-D_KPZdPJ.cjs');
11
+ let __spiffy_ai_commerce_api_client = require("@spiffy-ai/commerce-api-client");
12
+ __spiffy_ai_commerce_api_client = require_chunk.__toESM(__spiffy_ai_commerce_api_client);
13
+
14
+ //#region src/merchants/uniqueVintage/uniqueVintage.ts
15
+ const uniqueVintageColors = {
16
+ [require_types.ColorNames.TextPrimary]: "#000000",
17
+ [require_types.ColorNames.TextSecondary]: "#595959",
18
+ [require_types.ColorNames.TextAccent]: "#1D4A4F",
19
+ [require_types.ColorNames.TextLink]: "#222222",
20
+ [require_types.ColorNames.TextLight]: "#FFFFFF",
21
+ [require_types.ColorNames.BackgroundPrimary]: "#FADDD5",
22
+ [require_types.ColorNames.BackgroundSecondary]: "#FFFDF3",
23
+ [require_types.ColorNames.BackgroundSecondaryDark]: "#EBE9E0",
24
+ [require_types.ColorNames.BackgroundTertiary]: "#1D4A4F",
25
+ [require_types.ColorNames.BackgroundDark]: "#222222",
26
+ [require_types.ColorNames.BackgroundLight]: "#FFFFFF",
27
+ [require_types.ColorNames.BackgroundSaturated]: "#FADDD5",
28
+ [require_types.ColorNames.BorderLight]: "#E7E7E7",
29
+ [require_types.ColorNames.BorderMedium]: "#C2C4C8",
30
+ [require_types.ColorNames.BorderDark]: "#595959",
31
+ [require_types.ColorNames.BorderOutline]: "#222222",
32
+ [require_types.ColorNames.AccentPrimary]: "#FADDD5",
33
+ [require_types.ColorNames.AccentSecondary]: "#C0E7D6"
34
+ };
35
+ const uniqueVintageOrgUIConfig = () => {
36
+ const defaultUniqueVintageOrgConfig = require_default.defaultOrgUIConfig(require_types.OrgShortName.UniqueVintage);
37
+ return {
38
+ ...defaultUniqueVintageOrgConfig,
39
+ chatMessageConfig: {
40
+ ...defaultUniqueVintageOrgConfig.chatMessageConfig,
41
+ assistantChatTitle: "Unique Vintage AI",
42
+ variant: "standard"
43
+ },
44
+ chatHeader: {
45
+ ...defaultUniqueVintageOrgConfig.chatHeader,
46
+ chevronColor: require_types.colorVar(require_types.ColorNames.BackgroundDark),
47
+ expandedColor: require_types.colorVar(require_types.ColorNames.BackgroundPrimary),
48
+ imageSrc: require_cdnService.CdnService.getAssetURL("unique-vintage-long-logo.png", require_types.OrgShortName.UniqueVintage)
49
+ },
50
+ chatPreviewConfig: {
51
+ ...defaultUniqueVintageOrgConfig.chatPreviewConfig,
52
+ variant: "filled",
53
+ filledBackgroundColor: require_types.colorVar(require_types.ColorNames.AccentSecondary),
54
+ iconFillColor: require_types.colorVar(require_types.ColorNames.AccentPrimary),
55
+ buttonTextColor: require_types.colorVar(require_types.ColorNames.TextLight),
56
+ buttonBackgroundColor: require_types.colorVar(require_types.ColorNames.BackgroundDark),
57
+ buttonTextHoverColor: require_types.colorVar(require_types.ColorNames.TextPrimary),
58
+ buttonBackgroundHoverColor: require_types.colorVar(require_types.ColorNames.BackgroundSecondaryDark),
59
+ topMargin: 10,
60
+ copies: {
61
+ plp: [
62
+ "a classic swimsuit that's perfect for poolside glamour?",
63
+ "a skirt that twirls like it's straight out of the '50s?",
64
+ "a handbag inspired by iconic eras?",
65
+ "a dress that turns every head in the room?"
66
+ ],
67
+ pdp: [
68
+ "the vintage-inspired details that make this piece timeless?",
69
+ "what makes this style a true throwback treasure?",
70
+ "what luxe materials will elevate your look?",
71
+ "the size that's right for you?"
72
+ ]
73
+ },
74
+ staticSuggestionCopies: {
75
+ plp: [
76
+ "What casual vintage pieces work for everyday wear?",
77
+ "What pieces can I mix and match for a vintage-inspired wardrobe?",
78
+ "What shoes are perfect for date nights and special occasions?",
79
+ "What accessories can I add to elevate my vintage look?"
80
+ ],
81
+ pdp: [
82
+ "What size will give me the right fit?",
83
+ "How do I keep this piece in perfect condition for years to come?",
84
+ "What features makes this piece the ideal statement for a vintage lover?",
85
+ "How does this piece embody the spirit of past eras with modern style?"
86
+ ]
87
+ },
88
+ headerConfig: {
89
+ title: "Shopping Assistant",
90
+ sparklesColor: void 0,
91
+ imageHeight: 24,
92
+ imageSrc: require_cdnService.CdnService.getAssetURL("unique-vintage-long-logo.png", require_types.OrgShortName.UniqueVintage)
93
+ },
94
+ footerConfig: {
95
+ ...defaultUniqueVintageOrgConfig.chatPreviewConfig.footerConfig,
96
+ replyButtonText: "What can I help you find?",
97
+ replyButtonIcon: "magnifyingGlass",
98
+ hasFade: false
99
+ }
100
+ },
101
+ floatingEntrypointConfig: {
102
+ ...defaultUniqueVintageOrgConfig.floatingEntrypointConfig,
103
+ showOption: "always",
104
+ expandedColor: require_types.colorVar(require_types.ColorNames.BorderOutline),
105
+ iconStrokeColor: require_types.colorVar(require_types.ColorNames.BackgroundDark),
106
+ iconFillColor: require_types.colorVar(require_types.ColorNames.BackgroundDark),
107
+ expansionText: {
108
+ pdp: "Will this complete your retro wardrobe?",
109
+ plp: "What vintage treasure will you find today?"
110
+ }
111
+ },
112
+ productCardConfig: { ...defaultUniqueVintageOrgConfig.productCardConfig },
113
+ productReviewConfig: {
114
+ ...defaultUniqueVintageOrgConfig.productReviewConfig,
115
+ colorVariant: "brand",
116
+ incentivizedReviewFlag: false
117
+ },
118
+ welcomeSectionConfig: {
119
+ ...defaultUniqueVintageOrgConfig.welcomeSectionConfig,
120
+ title: "Welcome to Unique Vintage AI!",
121
+ colorVariant: "brand",
122
+ subtitle: "Hello, darling! I'm here to help you find everything you need to channel your unique, vintage-inspired style. Whether you're searching for the perfect outfit, need sizing advice, or just want to explore fabulous accessories, let's make your shopping experience as glamorous as you are!"
123
+ },
124
+ customerServiceIntegration: {
125
+ integrationMode: require_types.CustomerServiceIntegrationMode.simple,
126
+ provider: require_types.CustomerServiceType.zowie
127
+ },
128
+ conversationalSearch: {
129
+ enabled: true,
130
+ replyInput: {
131
+ sendIcon: "search",
132
+ placeholder: "What can I help you find?"
133
+ },
134
+ entrypointContainer: "id|chat-search-entrypoint",
135
+ productGridContainer: "id|chat-search-product-page",
136
+ searchContent: "query|.ss__autocomplete--target",
137
+ pageContent: "id|MainContent",
138
+ generalSearchBtn: "query|button.modal__close-button"
139
+ },
140
+ searchConfig: {
141
+ enableGlobalSearch: true,
142
+ searchFilterConfig: [
143
+ {
144
+ filterId: "color",
145
+ displayName: "Color",
146
+ attribute: "colors",
147
+ type: "dynamic",
148
+ sorting: { type: "alphabetic" }
149
+ },
150
+ {
151
+ filterId: "size",
152
+ displayName: "Size",
153
+ type: "dynamic",
154
+ attribute: "sizes",
155
+ sorting: {
156
+ type: "custom",
157
+ map: {
158
+ "One Size": 10,
159
+ "XXS / 0": 20,
160
+ "XS / 2": 30,
161
+ "S / 4": 40,
162
+ "M / 6 - 8": 50,
163
+ "L / 10 - 12": 60,
164
+ "XL / 14": 70,
165
+ "1X / 16": 80,
166
+ "2X / 18": 90,
167
+ "3X / 20": 100,
168
+ "4X / 22 - 24": 110,
169
+ "5X / 26": 120,
170
+ "6X": 130
171
+ }
172
+ }
173
+ },
174
+ {
175
+ filterId: "price",
176
+ displayName: "Price",
177
+ type: "price",
178
+ bucketSize: 50
179
+ }
180
+ ]
181
+ },
182
+ merchantOverrideCss: `
183
+ #spiffy-modal-container {
184
+ z-index: 2147483001 !important;
185
+ }
186
+ .spiffy-star-rating-star {
187
+ fill: var(--spiffy-colors-text-accent) !important;
188
+ }
189
+ .spiffy-product-review-header-reviewer {
190
+ color: var(--spiffy-colors-text-primary) !important;
191
+ }
192
+
193
+ /* WelcomeSection light text override */
194
+ .spiffy-welcome-section-message-title {
195
+ color: var(--spiffy-colors-text-light) !important;
196
+ }
197
+ .spiffy-welcome-section-message-subtitle {
198
+ color: var(--spiffy-colors-text-light) !important;
199
+ }
200
+
201
+ #spiffy-ai-chat-preview {
202
+ display: block;
203
+ }
204
+ #chat-search-product-page {
205
+ display: block;
206
+ }
207
+ #chat-search-nav-entrypoint {
208
+ display: flex;
209
+ }
210
+ #spiffy-ai-chat-preview.is-pdp {
211
+ padding-top: 8px;
212
+ border-top: solid 1px var(--spiffy-colors-border-light);
213
+ }
214
+ #spiffy-top-suggestion-bar-id {
215
+ display: block;
216
+ }
217
+ #spiffy-ai-chat-preview {
218
+ display: block;
219
+ }
220
+ #spiffy-bottom-reviews-bar-id {
221
+ display: block;
222
+ }
223
+ .spiffy-chat-search-entrypoint-container {
224
+ background: var(--spiffy-colors-background-primary) !important;
225
+ border-color: var(--spiffy-colors-background-dark) !important;
226
+ }
227
+ .spiffy-chat-search-entrypoint-container .spiffy-button-base-button {
228
+ color: var(--spiffy-colors-text-primary) !important;
229
+ border: none;
230
+ }
231
+ .spiffy-chat-search-entrypoint-text p {
232
+ font-family: 'Bookmania-SemiBold' !important;
233
+ font-size: 16px !important;
234
+ }
235
+ #spiffy-ai-chat-preview-contents h1, h2, h3, h4, h5, h6 {
236
+ --chakra-fonts-heading: 'Bookmania-Regular', 'Poppins', sans-serif;
237
+ }
238
+ .spiffy-headline {
239
+ font-family: 'Bookmania-Regular', 'Poppins', sans-serif;
240
+ }
241
+ #spiffy-model-container h1, h2, h3, h4, h5, h6 {
242
+ font-family: var(--chakra-fonts-heading);
243
+ }
244
+ #spiffy-model-container h1, h2, h3, h4, h5, h6 {
245
+ --chakra-fonts-heading: 'Bookmania-Regular', 'Poppins', sans-serif;
246
+ }
247
+ .spiffy-suggestion-button-question-class {
248
+ border: 1px solid var(--spiffy-colors-border-light);
249
+ }
250
+ .spiffy-tag-pill-text {
251
+ color: var(--spiffy-colors-text-light) !important;
252
+ }
253
+ #return-to-results-button {
254
+ display: block;
255
+ }
256
+ .spiffy-back-to-results-button {
257
+ margin-left: 30px;
258
+ margin-top: 30px;
259
+ @media (max-width: 768px) {
260
+ margin-left: 20px;
261
+ margin-top: 20px;
262
+ }
263
+ }
264
+ @media (max-width: 992px) {
265
+ #chat-search-entrypoint {
266
+ display: none;
267
+ }
268
+ }
269
+ #chat-search-entrypoint-mobile {
270
+ display: none;
271
+ }
272
+ .ss__autocomplete--active #chat-search-entrypoint-mobile {
273
+ display: flex;
274
+ }
275
+ .spiffy-product-card-title {
276
+ font-family: var(--chakra-fonts-heading);
277
+ color: var(--spiffy-colors-text-link);
278
+ }
279
+ .spiffy-product-card-text-color {
280
+ color: var(--spiffy-colors-text-secondary);
281
+ }
282
+
283
+ .spiffy-chat-header-close-button {
284
+ color: var(--spiffy-colors-background-primary);
285
+ background-color: var(--spiffy-colors-background-tertiary);
286
+ }
287
+
288
+ #spiffy-top-suggestion-bar-contents .spiffy-suggestion-button-question-class span {
289
+ color: var(--spiffy-colors-text-accent) !important;
290
+ }
291
+
292
+ #spiffy-top-suggestion-bar-contents .spiffy-suggestion-button-question-class svg {
293
+ fill: var(--spiffy-colors-text-accent) !important;
294
+ stroke: var(--spiffy-colors-text-accent) !important;
295
+ }
296
+
297
+ #spiffy-bottom-suggestion-bar-contents .spiffy-suggestion-button-question-class svg {
298
+ fill: var(--spiffy-colors-accent-primary) !important;
299
+ stroke: var(--spiffy-colors-accent-primary) !important;
300
+ }
301
+
302
+ #spiffy-bottom-suggestion-bar-contents .spiffy-suggestion-button-question-class:hover svg {
303
+ fill: var(--spiffy-colors-text-link) !important;
304
+ stroke: var(--spiffy-colors-text-link) !important;
305
+ }
306
+
307
+ #spiffy-ai-global-search-entrypoint.global-entry-desktop {
308
+ display: block;
309
+ }
310
+ #spiffy-ai-global-search-entrypoint-mobile.global-entry-mobile {
311
+ display: none;
312
+ }
313
+
314
+ @media (max-width: 992px) {
315
+ #spiffy-ai-global-search-entrypoint.global-entry-desktop {
316
+ display: none;
317
+ }
318
+ #spiffy-ai-global-search-entrypoint-mobile.global-entry-mobile {
319
+ display: block;
320
+ }
321
+ }
322
+
323
+ #spiffy-ai-global-search-entrypoint.global-entry-desktop .spiffy-global-search-input-container {
324
+ height: 80px;
325
+ }
326
+
327
+ .spiffy-global-search-input-container .spiffy-global-search-text {
328
+ font-family: "Poly", serif;
329
+ color: var(--spiffy-colors-text-link) !important;
330
+ font-weight: 500;
331
+ line-height: 80px;
332
+ padding-top: 6px;
333
+ }
334
+
335
+ .spiffy-search-overlay-content .spiffy-headline {
336
+ font-family: "Poly", serif;
337
+ @media (min-width: 480px) {
338
+ font-size: 32px;
339
+ }
340
+ }
341
+
342
+ .spiffy-search-overlay-content .spiffy-body-text {
343
+ font-family: "Poly", serif;
344
+ }
345
+
346
+ .spiffy-global-search-input-container svg {
347
+ width: 26px;
348
+ }
349
+ `
350
+ };
351
+ };
352
+ const uniqueVintagePageConfig = () => ({
353
+ pageVariants: [
354
+ {
355
+ variantId: "search-results",
356
+ variantType: "page_visit",
357
+ variantTests: [
358
+ { testType: require_types.PageVariantTestType.ShopifyPLP },
359
+ {
360
+ testType: require_types.PageVariantTestType.QueryParam,
361
+ queryParam: "q"
362
+ },
363
+ {
364
+ testType: require_types.PageVariantTestType.PageCategory,
365
+ extractor: {
366
+ type: require_types.CategoryExtractorType.VisitCategoryDefault,
367
+ value: __spiffy_ai_commerce_api_client.PageVisitCategory.Other
368
+ }
369
+ }
370
+ ],
371
+ widgetMounting: []
372
+ },
373
+ {
374
+ variantId: "plp-global-search",
375
+ variantType: "plp",
376
+ variantTests: [{ testType: require_types.PageVariantTestType.ShopifyPLP }, {
377
+ testType: require_types.PageVariantTestType.FeatureGate,
378
+ featureGate: require_models.FeatureGates.IsGlobalSearchEnabled
379
+ }],
380
+ plpIdExtractor: "shopify-collection-id",
381
+ widgetMounting: [
382
+ {
383
+ mountingConfigId: "globalSearchEntryPoint",
384
+ widgetConfigId: "globalSearchEntryPoint"
385
+ },
386
+ {
387
+ mountingConfigId: "globalSearchEntryPointMobile",
388
+ widgetConfigId: "globalSearchEntryPointMobile"
389
+ },
390
+ {
391
+ mountingConfigId: "chatPreviewPLP",
392
+ widgetConfigId: "chatPreviewPLP"
393
+ }
394
+ ]
395
+ },
396
+ {
397
+ variantId: "plp-search",
398
+ variantType: "plp",
399
+ variantTests: [{
400
+ testType: require_types.PageVariantTestType.FeatureGate,
401
+ featureGate: require_models.FeatureGates.IsNewFeatureEnabled
402
+ }, { testType: require_types.PageVariantTestType.ShopifyPLP }],
403
+ plpIdExtractor: "shopify-collection-id",
404
+ widgetMounting: [{
405
+ mountingConfigId: "chatPreviewPLP",
406
+ widgetConfigId: "searchPromptPLP"
407
+ }]
408
+ },
409
+ {
410
+ variantId: "plp",
411
+ variantType: "plp",
412
+ variantTests: [{ testType: require_types.PageVariantTestType.ShopifyPLP }],
413
+ plpIdExtractor: "shopify-collection-id",
414
+ widgetMounting: [{
415
+ mountingConfigId: "chatPreviewPLP",
416
+ widgetConfigId: "chatPreviewPLP"
417
+ }]
418
+ },
419
+ {
420
+ variantId: "pdpDressesHasReviewsGlobalSearch",
421
+ variantType: "pdp",
422
+ variantTests: [
423
+ { testType: require_types.PageVariantTestType.ShopifyPDP },
424
+ {
425
+ testType: require_types.PageVariantTestType.InCollection,
426
+ collections: ["dresses"]
427
+ },
428
+ {
429
+ testType: require_types.PageVariantTestType.HasReviews,
430
+ reviewMinimum: 4
431
+ },
432
+ {
433
+ testType: require_types.PageVariantTestType.FeatureGate,
434
+ featureGate: require_models.FeatureGates.IsGlobalSearchEnabled
435
+ }
436
+ ],
437
+ productIdExtractor: "shopify-product-id",
438
+ widgetMounting: [
439
+ {
440
+ mountingConfigId: "globalSearchEntryPoint",
441
+ widgetConfigId: "globalSearchEntryPoint"
442
+ },
443
+ {
444
+ mountingConfigId: "globalSearchEntryPointMobile",
445
+ widgetConfigId: "globalSearchEntryPointMobile"
446
+ },
447
+ {
448
+ mountingConfigId: "topSuggestionBarPDP",
449
+ widgetConfigId: "topSuggestionsBarDressesHasReviews"
450
+ },
451
+ {
452
+ mountingConfigId: "chatPreviewPDP",
453
+ widgetConfigId: "chatPreviewPDP"
454
+ },
455
+ {
456
+ mountingConfigId: "bottomSuggestionBarPDP",
457
+ widgetConfigId: "bottomSuggestionsBar"
458
+ }
459
+ ]
460
+ },
461
+ {
462
+ variantId: "pdpDressesNoReviewsGlobalSearch",
463
+ variantType: "pdp",
464
+ variantTests: [
465
+ { testType: require_types.PageVariantTestType.ShopifyPDP },
466
+ {
467
+ testType: require_types.PageVariantTestType.InCollection,
468
+ collections: ["dresses"]
469
+ },
470
+ {
471
+ testType: require_types.PageVariantTestType.FeatureGate,
472
+ featureGate: require_models.FeatureGates.IsGlobalSearchEnabled
473
+ }
474
+ ],
475
+ productIdExtractor: "shopify-product-id",
476
+ widgetMounting: [
477
+ {
478
+ mountingConfigId: "globalSearchEntryPoint",
479
+ widgetConfigId: "globalSearchEntryPoint"
480
+ },
481
+ {
482
+ mountingConfigId: "globalSearchEntryPointMobile",
483
+ widgetConfigId: "globalSearchEntryPointMobile"
484
+ },
485
+ {
486
+ mountingConfigId: "topSuggestionBarPDP",
487
+ widgetConfigId: "topSuggestionsBarDressesNoReviews"
488
+ },
489
+ {
490
+ mountingConfigId: "chatPreviewPDP",
491
+ widgetConfigId: "chatPreviewPDP"
492
+ },
493
+ {
494
+ mountingConfigId: "bottomSuggestionBarPDP",
495
+ widgetConfigId: "bottomSuggestionsBar"
496
+ }
497
+ ]
498
+ },
499
+ {
500
+ variantId: "pdpSwimwearHasReviewsGlobalSearch",
501
+ variantType: "pdp",
502
+ variantTests: [
503
+ { testType: require_types.PageVariantTestType.ShopifyPDP },
504
+ {
505
+ testType: require_types.PageVariantTestType.InCollection,
506
+ collections: ["swim-html"]
507
+ },
508
+ {
509
+ testType: require_types.PageVariantTestType.HasReviews,
510
+ reviewMinimum: 4
511
+ },
512
+ {
513
+ testType: require_types.PageVariantTestType.FeatureGate,
514
+ featureGate: require_models.FeatureGates.IsGlobalSearchEnabled
515
+ }
516
+ ],
517
+ productIdExtractor: "shopify-product-id",
518
+ widgetMounting: [
519
+ {
520
+ mountingConfigId: "globalSearchEntryPoint",
521
+ widgetConfigId: "globalSearchEntryPoint"
522
+ },
523
+ {
524
+ mountingConfigId: "globalSearchEntryPointMobile",
525
+ widgetConfigId: "globalSearchEntryPointMobile"
526
+ },
527
+ {
528
+ mountingConfigId: "topSuggestionBarPDP",
529
+ widgetConfigId: "topSuggestionsBarSwimwearHasReviews"
530
+ },
531
+ {
532
+ mountingConfigId: "chatPreviewPDP",
533
+ widgetConfigId: "chatPreviewPDP"
534
+ },
535
+ {
536
+ mountingConfigId: "bottomSuggestionBarPDP",
537
+ widgetConfigId: "bottomSuggestionsBar"
538
+ }
539
+ ]
540
+ },
541
+ {
542
+ variantId: "pdpSwimwearNoReviewsGlobalSearch",
543
+ variantType: "pdp",
544
+ variantTests: [
545
+ { testType: require_types.PageVariantTestType.ShopifyPDP },
546
+ {
547
+ testType: require_types.PageVariantTestType.InCollection,
548
+ collections: ["swim-html"]
549
+ },
550
+ {
551
+ testType: require_types.PageVariantTestType.FeatureGate,
552
+ featureGate: require_models.FeatureGates.IsGlobalSearchEnabled
553
+ }
554
+ ],
555
+ productIdExtractor: "shopify-product-id",
556
+ widgetMounting: [
557
+ {
558
+ mountingConfigId: "globalSearchEntryPoint",
559
+ widgetConfigId: "globalSearchEntryPoint"
560
+ },
561
+ {
562
+ mountingConfigId: "globalSearchEntryPointMobile",
563
+ widgetConfigId: "globalSearchEntryPointMobile"
564
+ },
565
+ {
566
+ mountingConfigId: "topSuggestionBarPDP",
567
+ widgetConfigId: "topSuggestionsBarSwimwearNoReviews"
568
+ },
569
+ {
570
+ mountingConfigId: "chatPreviewPDP",
571
+ widgetConfigId: "chatPreviewPDP"
572
+ },
573
+ {
574
+ mountingConfigId: "bottomSuggestionBarPDP",
575
+ widgetConfigId: "bottomSuggestionsBar"
576
+ }
577
+ ]
578
+ },
579
+ {
580
+ variantId: "pdpShoesHasReviewsGlobalSearch",
581
+ variantType: "pdp",
582
+ variantTests: [
583
+ { testType: require_types.PageVariantTestType.ShopifyPDP },
584
+ {
585
+ testType: require_types.PageVariantTestType.InCollection,
586
+ collections: ["shoes"]
587
+ },
588
+ {
589
+ testType: require_types.PageVariantTestType.HasReviews,
590
+ reviewMinimum: 4
591
+ },
592
+ {
593
+ testType: require_types.PageVariantTestType.FeatureGate,
594
+ featureGate: require_models.FeatureGates.IsGlobalSearchEnabled
595
+ }
596
+ ],
597
+ productIdExtractor: "shopify-product-id",
598
+ widgetMounting: [
599
+ {
600
+ mountingConfigId: "globalSearchEntryPoint",
601
+ widgetConfigId: "globalSearchEntryPoint"
602
+ },
603
+ {
604
+ mountingConfigId: "globalSearchEntryPointMobile",
605
+ widgetConfigId: "globalSearchEntryPointMobile"
606
+ },
607
+ {
608
+ mountingConfigId: "topSuggestionBarPDP",
609
+ widgetConfigId: "topSuggestionsBarShoesHasReviews"
610
+ },
611
+ {
612
+ mountingConfigId: "chatPreviewPDP",
613
+ widgetConfigId: "chatPreviewPDP"
614
+ },
615
+ {
616
+ mountingConfigId: "bottomSuggestionBarPDP",
617
+ widgetConfigId: "bottomSuggestionsBar"
618
+ }
619
+ ]
620
+ },
621
+ {
622
+ variantId: "pdpShoesNoReviewsGlobalSearch",
623
+ variantType: "pdp",
624
+ variantTests: [
625
+ { testType: require_types.PageVariantTestType.ShopifyPDP },
626
+ {
627
+ testType: require_types.PageVariantTestType.InCollection,
628
+ collections: ["shoes"]
629
+ },
630
+ {
631
+ testType: require_types.PageVariantTestType.FeatureGate,
632
+ featureGate: require_models.FeatureGates.IsGlobalSearchEnabled
633
+ }
634
+ ],
635
+ productIdExtractor: "shopify-product-id",
636
+ widgetMounting: [
637
+ {
638
+ mountingConfigId: "globalSearchEntryPoint",
639
+ widgetConfigId: "globalSearchEntryPoint"
640
+ },
641
+ {
642
+ mountingConfigId: "globalSearchEntryPointMobile",
643
+ widgetConfigId: "globalSearchEntryPointMobile"
644
+ },
645
+ {
646
+ mountingConfigId: "topSuggestionBarPDP",
647
+ widgetConfigId: "topSuggestionsBarShoesNoReviews"
648
+ },
649
+ {
650
+ mountingConfigId: "chatPreviewPDP",
651
+ widgetConfigId: "chatPreviewPDP"
652
+ },
653
+ {
654
+ mountingConfigId: "bottomSuggestionBarPDP",
655
+ widgetConfigId: "bottomSuggestionsBar"
656
+ }
657
+ ]
658
+ },
659
+ {
660
+ variantId: "pdpGlobalSearch",
661
+ variantType: "pdp",
662
+ variantTests: [{ testType: require_types.PageVariantTestType.ShopifyPDP }, {
663
+ testType: require_types.PageVariantTestType.FeatureGate,
664
+ featureGate: require_models.FeatureGates.IsGlobalSearchEnabled
665
+ }],
666
+ productIdExtractor: "shopify-product-id",
667
+ widgetMounting: [
668
+ {
669
+ mountingConfigId: "globalSearchEntryPoint",
670
+ widgetConfigId: "globalSearchEntryPoint"
671
+ },
672
+ {
673
+ mountingConfigId: "globalSearchEntryPointMobile",
674
+ widgetConfigId: "globalSearchEntryPointMobile"
675
+ },
676
+ {
677
+ mountingConfigId: "topSuggestionBarPDP",
678
+ widgetConfigId: "topSuggestionsBar"
679
+ },
680
+ {
681
+ mountingConfigId: "chatPreviewPDP",
682
+ widgetConfigId: "chatPreviewPDP"
683
+ },
684
+ {
685
+ mountingConfigId: "bottomSuggestionBarPDP",
686
+ widgetConfigId: "bottomSuggestionsBar"
687
+ }
688
+ ]
689
+ },
690
+ {
691
+ variantId: "pdpDressesHasReviews",
692
+ variantType: "pdp",
693
+ variantTests: [
694
+ { testType: require_types.PageVariantTestType.ShopifyPDP },
695
+ {
696
+ testType: require_types.PageVariantTestType.InCollection,
697
+ collections: ["dresses"]
698
+ },
699
+ {
700
+ testType: require_types.PageVariantTestType.HasReviews,
701
+ reviewMinimum: 4
702
+ }
703
+ ],
704
+ productIdExtractor: "shopify-product-id",
705
+ widgetMounting: [
706
+ {
707
+ mountingConfigId: "topSuggestionBarPDP",
708
+ widgetConfigId: "topSuggestionsBarDressesHasReviews"
709
+ },
710
+ {
711
+ mountingConfigId: "chatPreviewPDP",
712
+ widgetConfigId: "chatPreviewPDP"
713
+ },
714
+ {
715
+ mountingConfigId: "bottomSuggestionBarPDP",
716
+ widgetConfigId: "bottomSuggestionsBar"
717
+ }
718
+ ]
719
+ },
720
+ {
721
+ variantId: "pdpDressesNoReviews",
722
+ variantType: "pdp",
723
+ variantTests: [{ testType: require_types.PageVariantTestType.ShopifyPDP }, {
724
+ testType: require_types.PageVariantTestType.InCollection,
725
+ collections: ["dresses"]
726
+ }],
727
+ productIdExtractor: "shopify-product-id",
728
+ widgetMounting: [
729
+ {
730
+ mountingConfigId: "topSuggestionBarPDP",
731
+ widgetConfigId: "topSuggestionsBarDressesNoReviews"
732
+ },
733
+ {
734
+ mountingConfigId: "chatPreviewPDP",
735
+ widgetConfigId: "chatPreviewPDP"
736
+ },
737
+ {
738
+ mountingConfigId: "bottomSuggestionBarPDP",
739
+ widgetConfigId: "bottomSuggestionsBar"
740
+ }
741
+ ]
742
+ },
743
+ {
744
+ variantId: "pdpSwimwearHasReviews",
745
+ variantType: "pdp",
746
+ variantTests: [
747
+ { testType: require_types.PageVariantTestType.ShopifyPDP },
748
+ {
749
+ testType: require_types.PageVariantTestType.InCollection,
750
+ collections: ["swim-html"]
751
+ },
752
+ {
753
+ testType: require_types.PageVariantTestType.HasReviews,
754
+ reviewMinimum: 4
755
+ }
756
+ ],
757
+ productIdExtractor: "shopify-product-id",
758
+ widgetMounting: [
759
+ {
760
+ mountingConfigId: "topSuggestionBarPDP",
761
+ widgetConfigId: "topSuggestionsBarSwimwearHasReviews"
762
+ },
763
+ {
764
+ mountingConfigId: "chatPreviewPDP",
765
+ widgetConfigId: "chatPreviewPDP"
766
+ },
767
+ {
768
+ mountingConfigId: "bottomSuggestionBarPDP",
769
+ widgetConfigId: "bottomSuggestionsBar"
770
+ }
771
+ ]
772
+ },
773
+ {
774
+ variantId: "pdpSwimwearNoReviews",
775
+ variantType: "pdp",
776
+ variantTests: [{ testType: require_types.PageVariantTestType.ShopifyPDP }, {
777
+ testType: require_types.PageVariantTestType.InCollection,
778
+ collections: ["swim-html"]
779
+ }],
780
+ productIdExtractor: "shopify-product-id",
781
+ widgetMounting: [
782
+ {
783
+ mountingConfigId: "topSuggestionBarPDP",
784
+ widgetConfigId: "topSuggestionsBarSwimwearNoReviews"
785
+ },
786
+ {
787
+ mountingConfigId: "chatPreviewPDP",
788
+ widgetConfigId: "chatPreviewPDP"
789
+ },
790
+ {
791
+ mountingConfigId: "bottomSuggestionBarPDP",
792
+ widgetConfigId: "bottomSuggestionsBar"
793
+ }
794
+ ]
795
+ },
796
+ {
797
+ variantId: "pdpShoesHasReviews",
798
+ variantType: "pdp",
799
+ variantTests: [
800
+ { testType: require_types.PageVariantTestType.ShopifyPDP },
801
+ {
802
+ testType: require_types.PageVariantTestType.InCollection,
803
+ collections: ["shoes"]
804
+ },
805
+ {
806
+ testType: require_types.PageVariantTestType.HasReviews,
807
+ reviewMinimum: 4
808
+ }
809
+ ],
810
+ productIdExtractor: "shopify-product-id",
811
+ widgetMounting: [
812
+ {
813
+ mountingConfigId: "topSuggestionBarPDP",
814
+ widgetConfigId: "topSuggestionsBarShoesHasReviews"
815
+ },
816
+ {
817
+ mountingConfigId: "chatPreviewPDP",
818
+ widgetConfigId: "chatPreviewPDP"
819
+ },
820
+ {
821
+ mountingConfigId: "bottomSuggestionBarPDP",
822
+ widgetConfigId: "bottomSuggestionsBar"
823
+ }
824
+ ]
825
+ },
826
+ {
827
+ variantId: "pdpShoesNoReviews",
828
+ variantType: "pdp",
829
+ variantTests: [{ testType: require_types.PageVariantTestType.ShopifyPDP }, {
830
+ testType: require_types.PageVariantTestType.InCollection,
831
+ collections: ["shoes"]
832
+ }],
833
+ productIdExtractor: "shopify-product-id",
834
+ widgetMounting: [
835
+ {
836
+ mountingConfigId: "topSuggestionBarPDP",
837
+ widgetConfigId: "topSuggestionsBarShoesNoReviews"
838
+ },
839
+ {
840
+ mountingConfigId: "chatPreviewPDP",
841
+ widgetConfigId: "chatPreviewPDP"
842
+ },
843
+ {
844
+ mountingConfigId: "bottomSuggestionBarPDP",
845
+ widgetConfigId: "bottomSuggestionsBar"
846
+ }
847
+ ]
848
+ },
849
+ {
850
+ variantId: "pdp",
851
+ variantType: "pdp",
852
+ variantTests: [{ testType: require_types.PageVariantTestType.ShopifyPDP }],
853
+ productIdExtractor: "shopify-product-id",
854
+ widgetMounting: [
855
+ {
856
+ mountingConfigId: "topSuggestionBarPDP",
857
+ widgetConfigId: "topSuggestionsBar"
858
+ },
859
+ {
860
+ mountingConfigId: "chatPreviewPDP",
861
+ widgetConfigId: "chatPreviewPDP"
862
+ },
863
+ {
864
+ mountingConfigId: "bottomSuggestionBarPDP",
865
+ widgetConfigId: "bottomSuggestionsBar"
866
+ }
867
+ ]
868
+ }
869
+ ],
870
+ widgetConfigs: {
871
+ globalSearchEntryPoint: {
872
+ widgetConfigId: "globalSearchEntryPoint",
873
+ type: require_types.WidgetType.SearchZeroStateEntryPoint,
874
+ searchZeroStateVariant: "backgroundTertiary",
875
+ searchInputVariant: "standard",
876
+ suggestionButtonConfig: {
877
+ variant: "darkAccent",
878
+ hoverVariant: "secondaryAccent"
879
+ },
880
+ layout: "icon",
881
+ compactLabel: "Search",
882
+ searchBoxPlaceholder: "Try \"Colorful maxi for a summer wedding\"",
883
+ initialSuggestions: [
884
+ "Vintage dresses",
885
+ "Maxi dresses",
886
+ "Disney outfit",
887
+ "Barbie collection",
888
+ "1970s jumpsuit",
889
+ "One-piece swimsuit",
890
+ "Cinderella divine dresses"
891
+ ]
892
+ },
893
+ globalSearchEntryPointMobile: {
894
+ widgetConfigId: "globalSearchEntryPointMobile",
895
+ type: require_types.WidgetType.SearchZeroStateEntryPoint,
896
+ searchZeroStateVariant: "backgroundTertiary",
897
+ searchInputVariant: "standard",
898
+ suggestionButtonConfig: {
899
+ variant: "darkAccent",
900
+ hoverVariant: "secondaryAccent"
901
+ },
902
+ layout: "icon",
903
+ searchBoxPlaceholder: "Try \"Colorful maxi for a summer wedding\"",
904
+ initialSuggestions: [
905
+ "Vintage dresses",
906
+ "Maxi dresses",
907
+ "Disney outfit",
908
+ "Barbie collection",
909
+ "1970s jumpsuit",
910
+ "One-piece swimsuit",
911
+ "Cinderella divine dresses"
912
+ ]
913
+ },
914
+ topSuggestionsBar: {
915
+ widgetConfigId: "topSuggestionsBar",
916
+ contentId: "spiffy-top-suggestion-bar-contents",
917
+ type: require_types.WidgetType.SuggestionBarV2,
918
+ metricDisplayLocation: require_suggestionBarV2_types.ChatElementDisplayLocation.TOP_REVIEWS_SNIPPET,
919
+ location: require_suggestionBarV2_types.SuggestionBarLocationForMetrics.SUGGESTION_BAR_TOP,
920
+ variant: "primary",
921
+ hoverVariant: "secondaryDark",
922
+ buttonTexts: { default: [
923
+ "Summarize the reviews",
924
+ "What retro charm will this piece bring to my wardrobe?",
925
+ "What occasions is this piece perfect for?",
926
+ "How do others describe the fit and feel?",
927
+ "What makes this piece stand out for others?"
928
+ ] },
929
+ boldFirstButton: true,
930
+ twoRowsOnMobile: false,
931
+ buttonBorderRadius: "md"
932
+ },
933
+ topSuggestionsBarDressesHasReviews: {
934
+ widgetConfigId: "topSuggestionsBarDressesHasReviews",
935
+ contentId: "spiffy-top-suggestion-bar-contents",
936
+ type: require_types.WidgetType.SuggestionBarV2,
937
+ metricDisplayLocation: require_suggestionBarV2_types.ChatElementDisplayLocation.TOP_REVIEWS_SNIPPET,
938
+ location: require_suggestionBarV2_types.SuggestionBarLocationForMetrics.SUGGESTION_BAR_TOP,
939
+ variant: "primary",
940
+ hoverVariant: "secondaryDark",
941
+ buttonTexts: { default: [
942
+ "Summarize the reviews",
943
+ "Which unique accessories pair with this?",
944
+ "Is the fit flowy or figure-enhancing?",
945
+ "Is it true to size?"
946
+ ] },
947
+ boldFirstButton: true,
948
+ twoRowsOnMobile: false,
949
+ buttonBorderRadius: "md"
950
+ },
951
+ topSuggestionsBarDressesNoReviews: {
952
+ widgetConfigId: "topSuggestionsBarDressesNoReviews",
953
+ contentId: "spiffy-top-suggestion-bar-contents",
954
+ type: require_types.WidgetType.SuggestionBarV2,
955
+ metricDisplayLocation: require_suggestionBarV2_types.ChatElementDisplayLocation.TOP_REVIEWS_SNIPPET,
956
+ location: require_suggestionBarV2_types.SuggestionBarLocationForMetrics.SUGGESTION_BAR_TOP,
957
+ variant: "primary",
958
+ hoverVariant: "secondaryDark",
959
+ buttonTexts: { default: [
960
+ "What occasion is this dress for?",
961
+ "Which unique accessories pair with this?",
962
+ "Is the fit flowy or figure-enhancing?",
963
+ "Is it true to size?"
964
+ ] },
965
+ boldFirstButton: true,
966
+ twoRowsOnMobile: false,
967
+ buttonBorderRadius: "md"
968
+ },
969
+ topSuggestionsBarSwimwearHasReviews: {
970
+ widgetConfigId: "topSuggestionsBarSwimwearHasReviews",
971
+ contentId: "spiffy-top-suggestion-bar-contents",
972
+ type: require_types.WidgetType.SuggestionBarV2,
973
+ metricDisplayLocation: require_suggestionBarV2_types.ChatElementDisplayLocation.TOP_REVIEWS_SNIPPET,
974
+ location: require_suggestionBarV2_types.SuggestionBarLocationForMetrics.SUGGESTION_BAR_TOP,
975
+ variant: "primary",
976
+ hoverVariant: "secondaryDark",
977
+ buttonTexts: { default: [
978
+ "Summarize the reviews",
979
+ "Which accessories pair well?",
980
+ "Does the top have padding?",
981
+ "Does it run true to size?"
982
+ ] },
983
+ boldFirstButton: true,
984
+ twoRowsOnMobile: false,
985
+ buttonBorderRadius: "md"
986
+ },
987
+ topSuggestionsBarSwimwearNoReviews: {
988
+ widgetConfigId: "topSuggestionsBarSwimwearNoReviews",
989
+ contentId: "spiffy-top-suggestion-bar-contents",
990
+ type: require_types.WidgetType.SuggestionBarV2,
991
+ metricDisplayLocation: require_suggestionBarV2_types.ChatElementDisplayLocation.TOP_REVIEWS_SNIPPET,
992
+ location: require_suggestionBarV2_types.SuggestionBarLocationForMetrics.SUGGESTION_BAR_TOP,
993
+ variant: "primary",
994
+ hoverVariant: "secondaryDark",
995
+ buttonTexts: { default: [
996
+ "Does it run true to size?",
997
+ "Which accessories pair well?",
998
+ "Does the top have padding?",
999
+ "Does it run true to size?"
1000
+ ] },
1001
+ boldFirstButton: true,
1002
+ twoRowsOnMobile: false,
1003
+ buttonBorderRadius: "md"
1004
+ },
1005
+ topSuggestionsBarShoesHasReviews: {
1006
+ widgetConfigId: "topSuggestionsBarShoesHasReviews",
1007
+ contentId: "spiffy-top-suggestion-bar-contents",
1008
+ type: require_types.WidgetType.SuggestionBarV2,
1009
+ metricDisplayLocation: require_suggestionBarV2_types.ChatElementDisplayLocation.TOP_REVIEWS_SNIPPET,
1010
+ location: require_suggestionBarV2_types.SuggestionBarLocationForMetrics.SUGGESTION_BAR_TOP,
1011
+ variant: "primary",
1012
+ hoverVariant: "secondaryDark",
1013
+ buttonTexts: { default: [
1014
+ "Summarize the reviews",
1015
+ "Is this good for a night out?",
1016
+ "Are these true to size?",
1017
+ "Are these good for casual wear?"
1018
+ ] },
1019
+ boldFirstButton: true,
1020
+ twoRowsOnMobile: false,
1021
+ buttonBorderRadius: "md"
1022
+ },
1023
+ topSuggestionsBarShoesNoReviews: {
1024
+ widgetConfigId: "topSuggestionsBarShoesNoReviews",
1025
+ contentId: "spiffy-top-suggestion-bar-contents",
1026
+ type: require_types.WidgetType.SuggestionBarV2,
1027
+ metricDisplayLocation: require_suggestionBarV2_types.ChatElementDisplayLocation.TOP_REVIEWS_SNIPPET,
1028
+ location: require_suggestionBarV2_types.SuggestionBarLocationForMetrics.SUGGESTION_BAR_TOP,
1029
+ variant: "primary",
1030
+ hoverVariant: "secondaryDark",
1031
+ buttonTexts: { default: [
1032
+ "What era inspired these shoes?",
1033
+ "Is this good for a night out?",
1034
+ "Are these true to size?",
1035
+ "Are these good for casual wear?"
1036
+ ] },
1037
+ boldFirstButton: true,
1038
+ twoRowsOnMobile: false,
1039
+ buttonBorderRadius: "md"
1040
+ },
1041
+ searchPromptPLP: {
1042
+ widgetConfigId: "searchPromptPLP",
1043
+ type: require_types.WidgetType.SearchPrompt,
1044
+ variant: "primary",
1045
+ title: "Find exactly what you're looking for...",
1046
+ headerConfig: {
1047
+ title: "Search Assistant",
1048
+ logo: "search-logo.svg",
1049
+ logoHeight: 25,
1050
+ orgShortName: "unique-vintage"
1051
+ },
1052
+ suggestionButtons: {
1053
+ variant: "darkPrimary",
1054
+ hoverVariant: "secondary",
1055
+ buttonTexts: [
1056
+ "Vintage dresses",
1057
+ "Maxi dresses",
1058
+ "Disney outfit",
1059
+ "Barbie collection",
1060
+ "1970s jumpsuit",
1061
+ "One-piece swimsuit",
1062
+ "Cinderella divine dresses"
1063
+ ]
1064
+ },
1065
+ footerConfig: {
1066
+ replyButtonText: "Be as specific as you like...",
1067
+ replyButtonIcon: "ai-search"
1068
+ }
1069
+ },
1070
+ chatPreviewPLP: {
1071
+ widgetConfigId: "chatPreview",
1072
+ type: require_types.WidgetType.ChatPreview,
1073
+ variant: "filled",
1074
+ addSeparators: true,
1075
+ footerConfig: {
1076
+ replyButtonText: "What can I help you find?",
1077
+ replyButtonIcon: "magnifyingGlass"
1078
+ }
1079
+ },
1080
+ chatPreviewPDP: {
1081
+ widgetConfigId: "chatPreviewPDP",
1082
+ type: require_types.WidgetType.ChatPreview,
1083
+ variant: "filled",
1084
+ addSeparators: true
1085
+ },
1086
+ bottomSuggestionsBar: {
1087
+ widgetConfigId: "bottomSuggestionsBar",
1088
+ contentId: "spiffy-bottom-suggestion-bar-contents",
1089
+ type: require_types.WidgetType.SuggestionBarV2,
1090
+ metricDisplayLocation: require_suggestionBarV2_types.ChatElementDisplayLocation.BOTTOM_REVIEWS_SNIPPET,
1091
+ location: require_suggestionBarV2_types.SuggestionBarLocationForMetrics.SUGGESTION_BAR_BOTTOM,
1092
+ variant: "dark",
1093
+ hoverVariant: "secondaryDark",
1094
+ buttonTexts: { default: [
1095
+ "Summarize the reviews",
1096
+ "What retro charm will this piece bring to my wardrobe?",
1097
+ "What occasions is this piece perfect for?",
1098
+ "How do others describe the fit and feel?",
1099
+ "What makes this piece stand out for others?"
1100
+ ] },
1101
+ boldFirstButton: true,
1102
+ twoRowsOnMobile: true,
1103
+ animationSpeed: "none",
1104
+ buttonBorderRadius: "md"
1105
+ }
1106
+ },
1107
+ mountingConfigs: {
1108
+ globalSearchEntryPoint: {
1109
+ mountingConfigId: "globalSearchEntryPoint",
1110
+ containerId: require_divIds.GLOBAL_SEARCH_ENTRYPOINT_ID,
1111
+ testId: require_divIds.GLOBAL_SEARCH_ENTRYPOINT_TESTID,
1112
+ insertionPoint: {
1113
+ selector: ".header__search.header__search--desktop",
1114
+ insertionType: require_divIds.DOMInsertionType.AFTER
1115
+ },
1116
+ suppressionSelector: ".search-modal__content.search-modal__content-bottom",
1117
+ className: "global-entry-desktop",
1118
+ style: {
1119
+ zIndex: "2147483647",
1120
+ marginRight: "32px",
1121
+ height: "80px"
1122
+ }
1123
+ },
1124
+ globalSearchEntryPointMobile: {
1125
+ mountingConfigId: "globalSearchEntryPoint",
1126
+ containerId: require_divIds.MOBILE_GLOBAL_SEARCH_ENTRYPOINT_ID,
1127
+ testId: require_divIds.GLOBAL_SEARCH_ENTRYPOINT_TESTID,
1128
+ insertionPoint: {
1129
+ selector: "sticky-header.header-wrapper:has(.mobile-search)",
1130
+ insertionType: require_divIds.DOMInsertionType.AFTER
1131
+ },
1132
+ suppressionSelector: ".mobile-search .search-modal__form",
1133
+ className: "global-entry-mobile",
1134
+ style: {
1135
+ zIndex: "2147483647",
1136
+ marginTop: "8px",
1137
+ marginLeft: "15px",
1138
+ marginRight: "15px"
1139
+ }
1140
+ },
1141
+ chatPreviewPLP: {
1142
+ mountingConfigId: "chatPreviewPLP",
1143
+ containerId: require_divIds.CHAT_PREVIEW_CONTAINER_ID,
1144
+ testId: require_divIds.CHAT_PREVIEW_TESTID,
1145
+ insertionPoint: {
1146
+ selector: ".collection .product-grid",
1147
+ insertionType: require_divIds.DOMInsertionType.AFTER
1148
+ },
1149
+ gridInsertionType: require_GridInsertionService.GridInsertionType.ROW_2
1150
+ },
1151
+ chatPreviewPDP: {
1152
+ mountingConfigId: "chatPreviewPDP",
1153
+ containerId: require_divIds.CHAT_PREVIEW_CONTAINER_ID,
1154
+ testId: require_divIds.CHAT_PREVIEW_TESTID,
1155
+ insertionPoint: {
1156
+ selector: ".product__accordion",
1157
+ insertionType: require_divIds.DOMInsertionType.BEFORE
1158
+ },
1159
+ style: {
1160
+ marginTop: "16px",
1161
+ marginBottom: "8px"
1162
+ }
1163
+ },
1164
+ topSuggestionBarPDP: {
1165
+ mountingConfigId: "topSuggestionBarPDP",
1166
+ containerId: require_divIds.TOP_SUGGESTION_BAR_PDP_ID,
1167
+ testId: require_divIds.TOP_SUGGESTION_BAR_TESTID,
1168
+ insertionPoint: {
1169
+ selector: "div:has(> .main_price)",
1170
+ insertionType: require_divIds.DOMInsertionType.AFTER
1171
+ },
1172
+ style: {
1173
+ marginTop: "16px",
1174
+ marginBottom: "16px"
1175
+ }
1176
+ },
1177
+ bottomSuggestionBarPDP: {
1178
+ mountingConfigId: "bottomSuggestionBarPDP",
1179
+ containerId: require_divIds.BOTTOM_REVIEWS_BAR_ID,
1180
+ testId: require_divIds.BOTTOM_SUGGESTION_BAR_TESTID,
1181
+ insertionPoint: {
1182
+ selector: ".junip-product-review-summary-wrapper + div.junip-separator",
1183
+ insertionType: require_divIds.DOMInsertionType.ADJACENT_AFTER_END,
1184
+ selectionIndex: 0
1185
+ },
1186
+ style: {
1187
+ marginTop: "16px",
1188
+ marginBottom: "16px"
1189
+ }
1190
+ }
1191
+ }
1192
+ });
1193
+ const uniqueVintageOrgInfo = {
1194
+ shortName: require_types.OrgShortName.UniqueVintage,
1195
+ name: "Unique Vintage",
1196
+ domain: "unique-vintage.com",
1197
+ defaultProductId: "red-cowgirl-print-swing-shirt-dress",
1198
+ alwaysEnabledMerchants: true,
1199
+ orgUIConfig: uniqueVintageOrgUIConfig,
1200
+ orgColors: () => uniqueVintageColors,
1201
+ orgPageConfig: uniqueVintagePageConfig
1202
+ };
1203
+
1204
+ //#endregion
1205
+ exports.uniqueVintageOrgInfo = uniqueVintageOrgInfo;