@envive-ai/react-hooks 0.2.10-arthur-3 → 0.2.11
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.
- package/README.md +0 -33
- package/dist/{chunk-CUT6urMc.cjs → _virtual/rolldown_runtime.cjs} +11 -12
- package/dist/application/commerce-api.cjs +319 -0
- package/dist/application/commerce-api.js +318 -0
- package/dist/application/logging/logger.cjs +21 -0
- package/dist/application/logging/logger.js +20 -0
- package/dist/application/models/api/context.d.cts +8 -0
- package/dist/application/models/api/context.d.ts +8 -0
- package/dist/application/models/api/generationParams.d.cts +8 -0
- package/dist/application/models/api/generationParams.d.ts +8 -0
- package/dist/application/models/api/nextMessageRequest.d.cts +15 -0
- package/dist/application/models/api/nextMessageRequest.d.ts +15 -0
- package/dist/application/models/api/orgAnalyticsConfig.d.cts +20 -0
- package/dist/application/models/api/orgAnalyticsConfig.d.ts +20 -0
- package/dist/application/models/api/orgConfigResults.d.cts +43 -0
- package/dist/application/models/api/orgConfigResults.d.ts +43 -0
- package/dist/application/models/api/organizationConfig.d.cts +16 -0
- package/dist/application/models/api/organizationConfig.d.ts +16 -0
- package/dist/application/models/api/response.d.cts +94 -0
- package/dist/application/models/api/response.d.ts +94 -0
- package/dist/application/models/api/responseGenerics.d.cts +60 -0
- package/dist/application/models/api/responseGenerics.d.ts +60 -0
- package/dist/{search-6RrxBXD6.d.cts → application/models/api/search.d.cts} +2 -2
- package/dist/{search-DrJiCT7d.d.ts → application/models/api/search.d.ts} +2 -2
- package/dist/application/models/api/suggestion.d.cts +8 -0
- package/dist/application/models/api/suggestion.d.ts +8 -0
- package/dist/application/models/api/supportedEventRequest.d.cts +12 -0
- package/dist/application/models/api/supportedEventRequest.d.ts +12 -0
- package/dist/application/models/api/userEvent.d.cts +57 -0
- package/dist/application/models/api/userEvent.d.ts +57 -0
- package/dist/application/models/cachedValue.d.cts +8 -0
- package/dist/application/models/cachedValue.d.ts +8 -0
- package/dist/application/models/chatElementDisplayLocation.cjs +29 -0
- package/dist/application/models/chatElementDisplayLocation.d.cts +26 -0
- package/dist/application/models/chatElementDisplayLocation.d.ts +26 -0
- package/dist/application/models/chatElementDisplayLocation.js +28 -0
- package/dist/application/models/clientDetails.d.cts +18 -0
- package/dist/application/models/clientDetails.d.ts +18 -0
- package/dist/application/models/colorsConfig.cjs +29 -0
- package/dist/application/models/colorsConfig.d.cts +26 -0
- package/dist/application/models/colorsConfig.d.ts +26 -0
- package/dist/application/models/colorsConfig.js +27 -0
- package/dist/application/models/conversationalSearchIds.d.cts +9 -0
- package/dist/application/models/conversationalSearchIds.d.ts +9 -0
- package/dist/application/models/dataLayer.d.cts +45 -0
- package/dist/application/models/dataLayer.d.ts +45 -0
- package/dist/application/models/events.cjs +11 -0
- package/dist/application/models/events.d.cts +8 -0
- package/dist/application/models/events.d.ts +8 -0
- package/dist/application/models/events.js +10 -0
- package/dist/application/models/featureGates.cjs +27 -0
- package/dist/application/models/featureGates.d.cts +24 -0
- package/dist/application/models/featureGates.d.ts +24 -0
- package/dist/application/models/featureGates.js +26 -0
- package/dist/application/models/frontendConfig.d.cts +13 -0
- package/dist/application/models/frontendConfig.d.ts +13 -0
- package/dist/application/models/googleAnalyticsEvents.cjs +11 -0
- package/dist/application/models/googleAnalyticsEvents.d.cts +8 -0
- package/dist/application/models/googleAnalyticsEvents.d.ts +8 -0
- package/dist/application/models/googleAnalyticsEvents.js +10 -0
- package/dist/application/models/graphql/index.cjs +6 -5
- package/dist/application/models/graphql/index.d.cts +3 -1
- package/dist/application/models/graphql/index.d.ts +3 -1
- package/dist/application/models/graphql/index.js +3 -2
- package/dist/application/models/graphql/queries/getMerchantColorsQuery.cjs +18 -0
- package/dist/application/models/graphql/queries/getMerchantColorsQuery.d.cts +25 -0
- package/dist/application/models/graphql/queries/getMerchantColorsQuery.d.ts +25 -0
- package/dist/application/models/graphql/queries/getMerchantColorsQuery.js +18 -0
- package/dist/application/models/graphql/queries/getMerchantFrontendConfigQuery.cjs +18 -0
- package/dist/application/models/graphql/queries/getMerchantFrontendConfigQuery.d.cts +75 -0
- package/dist/application/models/graphql/queries/getMerchantFrontendConfigQuery.d.ts +75 -0
- package/dist/application/models/graphql/queries/getMerchantFrontendConfigQuery.js +18 -0
- package/dist/application/models/graphql/queries/getMerchantOrgIdQuery.cjs +15 -0
- package/dist/application/models/graphql/queries/getMerchantOrgIdQuery.d.cts +5 -0
- package/dist/application/models/graphql/queries/getMerchantOrgIdQuery.d.ts +5 -0
- package/dist/application/models/graphql/queries/getMerchantOrgIdQuery.js +14 -0
- package/dist/application/models/guards/api/index.cjs +24 -15
- package/dist/application/models/guards/api/index.d.cts +12 -3
- package/dist/application/models/guards/api/index.d.ts +12 -3
- package/dist/application/models/guards/api/index.js +12 -3
- package/dist/application/models/guards/api/isApiFormResponse.cjs +51 -0
- package/dist/application/models/guards/api/isApiFormResponse.d.cts +16 -0
- package/dist/application/models/guards/api/isApiFormResponse.d.ts +16 -0
- package/dist/application/models/guards/api/isApiFormResponse.js +50 -0
- package/dist/application/models/guards/api/isApiFormSubmittedResponseAttributes.cjs +29 -0
- package/dist/application/models/guards/api/isApiFormSubmittedResponseAttributes.d.cts +7 -0
- package/dist/application/models/guards/api/isApiFormSubmittedResponseAttributes.d.ts +7 -0
- package/dist/application/models/guards/api/isApiFormSubmittedResponseAttributes.js +28 -0
- package/dist/application/models/guards/api/isApiOrderResponseAttributes.cjs +82 -0
- package/dist/application/models/guards/api/isApiOrderResponseAttributes.d.cts +17 -0
- package/dist/application/models/guards/api/isApiOrderResponseAttributes.d.ts +17 -0
- package/dist/application/models/guards/api/isApiOrderResponseAttributes.js +82 -0
- package/dist/application/models/guards/api/isApiOrgConfigResults.cjs +130 -0
- package/dist/application/models/guards/api/isApiOrgConfigResults.d.cts +19 -0
- package/dist/application/models/guards/api/isApiOrgConfigResults.d.ts +19 -0
- package/dist/application/models/guards/api/isApiOrgConfigResults.js +129 -0
- package/dist/application/models/guards/api/isApiOrganizationConfig.cjs +116 -0
- package/dist/application/models/guards/api/isApiOrganizationConfig.d.cts +31 -0
- package/dist/application/models/guards/api/isApiOrganizationConfig.d.ts +31 -0
- package/dist/application/models/guards/api/isApiOrganizationConfig.js +116 -0
- package/dist/application/models/guards/api/isApiPDPEventAttributes.cjs +13 -0
- package/dist/application/models/guards/api/isApiPDPEventAttributes.d.cts +7 -0
- package/dist/application/models/guards/api/isApiPDPEventAttributes.d.ts +7 -0
- package/dist/application/models/guards/api/isApiPDPEventAttributes.js +12 -0
- package/dist/application/models/guards/api/isApiPLPEventAttributes.cjs +20 -0
- package/dist/application/models/guards/api/isApiPLPEventAttributes.d.cts +8 -0
- package/dist/application/models/guards/api/isApiPLPEventAttributes.d.ts +8 -0
- package/dist/application/models/guards/api/isApiPLPEventAttributes.js +18 -0
- package/dist/application/models/guards/api/isApiPageResponseAttributes.cjs +13 -0
- package/dist/application/models/guards/api/isApiPageResponseAttributes.d.cts +7 -0
- package/dist/application/models/guards/api/isApiPageResponseAttributes.d.ts +7 -0
- package/dist/application/models/guards/api/isApiPageResponseAttributes.js +12 -0
- package/dist/application/models/guards/api/isApiProductResponseAttributes.cjs +51 -0
- package/dist/application/models/guards/api/isApiProductResponseAttributes.d.cts +7 -0
- package/dist/application/models/guards/api/isApiProductResponseAttributes.d.ts +7 -0
- package/dist/application/models/guards/api/isApiProductResponseAttributes.js +51 -0
- package/dist/application/models/guards/api/isApiProductSearchAttributes.cjs +12 -0
- package/dist/application/models/guards/api/isApiProductSearchAttributes.d.cts +7 -0
- package/dist/application/models/guards/api/isApiProductSearchAttributes.d.ts +7 -0
- package/dist/application/models/guards/api/isApiProductSearchAttributes.js +11 -0
- package/dist/application/models/guards/api/isApiProductSearchFilterAttributes.cjs +11 -0
- package/dist/application/models/guards/api/isApiProductSearchFilterAttributes.d.cts +7 -0
- package/dist/application/models/guards/api/isApiProductSearchFilterAttributes.d.ts +7 -0
- package/dist/application/models/guards/api/isApiProductSearchFilterAttributes.js +10 -0
- package/dist/application/models/guards/api/isApiQueryTypedEventAttributes.cjs +7 -0
- package/dist/application/models/guards/api/isApiQueryTypedEventAttributes.d.cts +7 -0
- package/dist/application/models/guards/api/isApiQueryTypedEventAttributes.d.ts +7 -0
- package/dist/application/models/guards/api/isApiQueryTypedEventAttributes.js +6 -0
- package/dist/application/models/guards/api/isApiResponse.cjs +33 -0
- package/dist/application/models/guards/api/isApiResponse.d.cts +7 -0
- package/dist/application/models/guards/api/isApiResponse.d.ts +7 -0
- package/dist/application/models/guards/api/isApiResponse.js +32 -0
- package/dist/application/models/guards/api/isApiReviewResponseAttributes.cjs +16 -0
- package/dist/application/models/guards/api/isApiReviewResponseAttributes.d.cts +7 -0
- package/dist/application/models/guards/api/isApiReviewResponseAttributes.d.ts +7 -0
- package/dist/application/models/guards/api/isApiReviewResponseAttributes.js +16 -0
- package/dist/application/models/guards/api/isApiReviewRichInformation.cjs +15 -0
- package/dist/application/models/guards/api/isApiReviewRichInformation.d.cts +7 -0
- package/dist/application/models/guards/api/isApiReviewRichInformation.d.ts +7 -0
- package/dist/application/models/guards/api/isApiReviewRichInformation.js +14 -0
- package/dist/application/models/guards/api/isApiSearchEventAttributes.cjs +14 -0
- package/dist/application/models/guards/api/isApiSearchEventAttributes.d.cts +7 -0
- package/dist/application/models/guards/api/isApiSearchEventAttributes.d.ts +7 -0
- package/dist/application/models/guards/api/isApiSearchEventAttributes.js +13 -0
- package/dist/application/models/guards/api/isApiSuggestion.cjs +17 -0
- package/dist/application/models/guards/api/isApiSuggestion.d.cts +7 -0
- package/dist/application/models/guards/api/isApiSuggestion.d.ts +7 -0
- package/dist/application/models/guards/api/isApiSuggestion.js +16 -0
- package/dist/application/models/guards/api/isApiSuggestionClickedEventAttributes.cjs +7 -0
- package/dist/application/models/guards/api/isApiSuggestionClickedEventAttributes.d.cts +7 -0
- package/dist/application/models/guards/api/isApiSuggestionClickedEventAttributes.d.ts +7 -0
- package/dist/application/models/guards/api/isApiSuggestionClickedEventAttributes.js +6 -0
- package/dist/application/models/guards/api/isApiTextResponseAttributes.cjs +7 -0
- package/dist/application/models/guards/api/isApiTextResponseAttributes.d.cts +7 -0
- package/dist/application/models/guards/api/isApiTextResponseAttributes.d.ts +7 -0
- package/dist/application/models/guards/api/isApiTextResponseAttributes.js +6 -0
- package/dist/application/models/guards/api/isApiUserEvent.cjs +15 -0
- package/dist/application/models/guards/api/isApiUserEvent.d.cts +7 -0
- package/dist/application/models/guards/api/isApiUserEvent.d.ts +7 -0
- package/dist/application/models/guards/api/isApiUserEvent.js +14 -0
- package/dist/application/models/guards/graphQL/isGraphQLColorsConfig.cjs +46 -0
- package/dist/application/models/guards/graphQL/isGraphQLColorsConfig.d.cts +7 -0
- package/dist/application/models/guards/graphQL/isGraphQLColorsConfig.d.ts +7 -0
- package/dist/application/models/guards/graphQL/isGraphQLColorsConfig.js +46 -0
- package/dist/application/models/guards/isBaseEcommerceEvent.cjs +14 -0
- package/dist/application/models/guards/isBaseEcommerceEvent.d.cts +15 -0
- package/dist/application/models/guards/isBaseEcommerceEvent.d.ts +15 -0
- package/dist/application/models/guards/isBaseEcommerceEvent.js +13 -0
- package/dist/application/models/guards/isGA4EcommerceEvent.cjs +14 -0
- package/dist/application/models/guards/isGA4EcommerceEvent.d.cts +15 -0
- package/dist/application/models/guards/isGA4EcommerceEvent.d.ts +15 -0
- package/dist/application/models/guards/isGA4EcommerceEvent.js +13 -0
- package/dist/application/models/guards/isLegacyUAEcommerceEvent.cjs +14 -0
- package/dist/application/models/guards/isLegacyUAEcommerceEvent.d.cts +15 -0
- package/dist/application/models/guards/isLegacyUAEcommerceEvent.d.ts +15 -0
- package/dist/application/models/guards/isLegacyUAEcommerceEvent.js +13 -0
- package/dist/application/models/guards/isMobilePLPChatPlacementParameter.cjs +7 -0
- package/dist/application/models/guards/isMobilePLPChatPlacementParameter.d.cts +8 -0
- package/dist/application/models/guards/isMobilePLPChatPlacementParameter.d.ts +8 -0
- package/dist/application/models/guards/isMobilePLPChatPlacementParameter.js +6 -0
- package/dist/application/models/guards/isSpanxTakeAQuizCtaParameter.cjs +7 -0
- package/dist/application/models/guards/isSpanxTakeAQuizCtaParameter.d.cts +7 -0
- package/dist/application/models/guards/isSpanxTakeAQuizCtaParameter.d.ts +7 -0
- package/dist/application/models/guards/isSpanxTakeAQuizCtaParameter.js +6 -0
- package/dist/application/models/guards/isVariantInfo.cjs +19 -0
- package/dist/application/models/guards/isVariantInfo.d.cts +15 -0
- package/dist/application/models/guards/isVariantInfo.d.ts +15 -0
- package/dist/application/models/guards/isVariantInfo.js +18 -0
- package/dist/application/models/guards/utils.cjs +27 -2
- package/dist/application/models/guards/utils.d.cts +15 -2
- package/dist/application/models/guards/utils.d.ts +15 -2
- package/dist/application/models/guards/utils.js +26 -2
- package/dist/application/models/index.cjs +111 -67
- package/dist/application/models/index.d.cts +84 -12
- package/dist/application/models/index.d.ts +84 -12
- package/dist/application/models/index.js +54 -10
- package/dist/application/models/localStorageEventListener.d.cts +8 -0
- package/dist/application/models/localStorageEventListener.d.ts +8 -0
- package/dist/application/models/message.cjs +29 -0
- package/dist/application/models/message.d.cts +107 -0
- package/dist/application/models/message.d.ts +107 -0
- package/dist/application/models/message.js +27 -0
- package/dist/application/models/mobilePLPChatPlacementParameter.d.cts +7 -0
- package/dist/application/models/mobilePLPChatPlacementParameter.d.ts +7 -0
- package/dist/application/models/orgsEnum.cjs +41 -0
- package/dist/application/models/orgsEnum.d.cts +39 -0
- package/dist/application/models/orgsEnum.d.ts +39 -0
- package/dist/application/models/orgsEnum.js +40 -0
- package/dist/application/models/productExperiment.cjs +10 -0
- package/dist/application/models/productExperiment.d.cts +7 -0
- package/dist/application/models/productExperiment.d.ts +7 -0
- package/dist/application/models/productExperiment.js +9 -0
- package/dist/application/models/spanxTakeAQuizCtaParameter.d.cts +8 -0
- package/dist/application/models/spanxTakeAQuizCtaParameter.d.ts +8 -0
- package/dist/application/models/spiffyWidgets.cjs +24 -0
- package/dist/application/models/spiffyWidgets.d.cts +21 -0
- package/dist/application/models/spiffyWidgets.d.ts +21 -0
- package/dist/application/models/spiffyWidgets.js +23 -0
- package/dist/application/models/utilityTypes/camelCase.d.cts +70 -0
- package/dist/application/models/utilityTypes/camelCase.d.ts +70 -0
- package/dist/application/models/utilityTypes/camelCasedPropertiesDeep.d.cts +56 -0
- package/dist/application/models/utilityTypes/camelCasedPropertiesDeep.d.ts +56 -0
- package/dist/application/models/utilityTypes/delimiterCase.d.cts +67 -0
- package/dist/application/models/utilityTypes/delimiterCase.d.ts +67 -0
- package/dist/application/models/utilityTypes/delimiterCasedPropertiesDeep.d.cts +55 -0
- package/dist/application/models/utilityTypes/delimiterCasedPropertiesDeep.d.ts +55 -0
- package/dist/application/models/utilityTypes/index.cjs +0 -1
- package/dist/application/models/utilityTypes/index.d.cts +1 -1
- package/dist/application/models/utilityTypes/index.d.ts +1 -1
- package/dist/application/models/utilityTypes/index.js +0 -2
- package/dist/application/models/utilityTypes/internal.d.cts +33 -0
- package/dist/application/models/utilityTypes/internal.d.ts +33 -0
- package/dist/application/models/utilityTypes/primitive.d.cts +10 -0
- package/dist/application/models/utilityTypes/primitive.d.ts +10 -0
- package/dist/application/models/utilityTypes/snakeCasedPropertiesDeep.d.cts +52 -0
- package/dist/application/models/utilityTypes/snakeCasedPropertiesDeep.d.ts +52 -0
- package/dist/application/models/utilityTypes/splitWords.d.cts +29 -0
- package/dist/application/models/utilityTypes/splitWords.d.ts +29 -0
- package/dist/application/models/utilityTypes/trim.d.cts +29 -0
- package/dist/application/models/utilityTypes/trim.d.ts +29 -0
- package/dist/application/models/utilityTypes/unknownArray.d.cts +29 -0
- package/dist/application/models/utilityTypes/unknownArray.d.ts +29 -0
- package/dist/application/models/utils/snakeToCamelTransformer.cjs +66 -0
- package/dist/application/models/utils/snakeToCamelTransformer.d.cts +16 -0
- package/dist/application/models/utils/snakeToCamelTransformer.d.ts +16 -0
- package/dist/application/models/utils/snakeToCamelTransformer.js +64 -0
- package/dist/application/models/utils/stringToFulfillmentDisplayStatusEnumValue.cjs +46 -0
- package/dist/application/models/utils/stringToFulfillmentDisplayStatusEnumValue.d.cts +16 -0
- package/dist/application/models/utils/stringToFulfillmentDisplayStatusEnumValue.d.ts +16 -0
- package/dist/application/models/utils/stringToFulfillmentDisplayStatusEnumValue.js +45 -0
- package/dist/application/models/validators/validateGraphQLColorsConfig.cjs +10 -0
- package/dist/application/models/validators/validateGraphQLColorsConfig.d.cts +7 -0
- package/dist/application/models/validators/validateGraphQLColorsConfig.d.ts +7 -0
- package/dist/application/models/validators/validateGraphQLColorsConfig.js +10 -0
- package/dist/application/models/validators/validateGraphQLFrontendConfig.cjs +231 -0
- package/dist/application/models/validators/validateGraphQLFrontendConfig.d.cts +11 -0
- package/dist/application/models/validators/validateGraphQLFrontendConfig.d.ts +11 -0
- package/dist/application/models/validators/validateGraphQLFrontendConfig.js +228 -0
- package/dist/application/models/validators/validateGraphQLOrgId.cjs +10 -0
- package/dist/application/models/validators/validateGraphQLOrgId.d.cts +5 -0
- package/dist/application/models/validators/validateGraphQLOrgId.d.ts +5 -0
- package/dist/application/models/validators/validateGraphQLOrgId.js +9 -0
- package/dist/application/models/validators/validateMobilePLPChatPlacementParameter.cjs +11 -0
- package/dist/application/models/validators/validateMobilePLPChatPlacementParameter.d.cts +7 -0
- package/dist/application/models/validators/validateMobilePLPChatPlacementParameter.d.ts +7 -0
- package/dist/application/models/validators/validateMobilePLPChatPlacementParameter.js +11 -0
- package/dist/application/models/validators/validateOrgConfigResults.cjs +44 -0
- package/dist/application/models/validators/validateOrgConfigResults.d.cts +13 -0
- package/dist/application/models/validators/validateOrgConfigResults.d.ts +13 -0
- package/dist/application/models/validators/validateOrgConfigResults.js +44 -0
- package/dist/application/models/validators/validateOrganizationConfig.cjs +28 -0
- package/dist/application/models/validators/validateOrganizationConfig.d.cts +7 -0
- package/dist/application/models/validators/validateOrganizationConfig.d.ts +7 -0
- package/dist/application/models/validators/validateOrganizationConfig.js +28 -0
- package/dist/application/models/validators/validateResponse.cjs +136 -0
- package/dist/application/models/validators/validateResponse.d.cts +7 -0
- package/dist/application/models/validators/validateResponse.d.ts +7 -0
- package/dist/application/models/validators/validateResponse.js +135 -0
- package/dist/application/models/validators/validateSuggestion.cjs +17 -0
- package/dist/application/models/validators/validateSuggestion.d.cts +7 -0
- package/dist/application/models/validators/validateSuggestion.d.ts +7 -0
- package/dist/application/models/validators/validateSuggestion.js +17 -0
- package/dist/application/models/validators/validateUserEvent.cjs +75 -0
- package/dist/application/models/validators/validateUserEvent.d.cts +7 -0
- package/dist/application/models/validators/validateUserEvent.d.ts +7 -0
- package/dist/application/models/validators/validateUserEvent.js +74 -0
- package/dist/application/models/variantInfo/index.cjs +1 -1
- package/dist/application/models/variantInfo/index.d.cts +1 -1
- package/dist/application/models/variantInfo/index.d.ts +1 -1
- package/dist/application/models/variantInfo/index.js +1 -1
- package/dist/application/models/variantInfo/pageVisitInfo.d.cts +10 -0
- package/dist/application/models/variantInfo/pageVisitInfo.d.ts +10 -0
- package/dist/application/models/variantInfo/plpInfo.d.cts +7 -0
- package/dist/application/models/variantInfo/plpInfo.d.ts +7 -0
- package/dist/application/models/variantInfo/productInfo.d.cts +9 -0
- package/dist/application/models/variantInfo/productInfo.d.ts +9 -0
- package/dist/{variantInfo-DpLn4nHz.cjs → application/models/variantInfo/variantInfo.cjs} +2 -7
- package/dist/application/models/variantInfo/variantInfo.d.cts +28 -0
- package/dist/application/models/variantInfo/variantInfo.d.ts +28 -0
- package/dist/{variantInfo-BfKlkaWU.js → application/models/variantInfo/variantInfo.js} +1 -1
- package/dist/application/utils/analyticsUtils.cjs +88 -0
- package/dist/application/utils/analyticsUtils.d.cts +17 -0
- package/dist/application/utils/analyticsUtils.d.ts +17 -0
- package/dist/application/utils/analyticsUtils.js +87 -0
- package/dist/application/utils/coreContextToApiContext.cjs +14 -0
- package/dist/application/utils/coreContextToApiContext.d.cts +8 -0
- package/dist/application/utils/coreContextToApiContext.d.ts +8 -0
- package/dist/application/utils/coreContextToApiContext.js +13 -0
- package/dist/application/utils/coreUserEventToApiUserEvent.cjs +74 -0
- package/dist/application/utils/coreUserEventToApiUserEvent.d.cts +8 -0
- package/dist/application/utils/coreUserEventToApiUserEvent.d.ts +8 -0
- package/dist/application/utils/coreUserEventToApiUserEvent.js +73 -0
- package/dist/application/utils/divideArray.cjs +11 -0
- package/dist/application/utils/divideArray.d.cts +5 -0
- package/dist/application/utils/divideArray.d.ts +5 -0
- package/dist/application/utils/divideArray.js +10 -0
- package/dist/application/utils/domObserver.cjs +87 -0
- package/dist/application/utils/domObserver.d.cts +39 -0
- package/dist/application/utils/domObserver.d.ts +39 -0
- package/dist/application/utils/domObserver.js +87 -0
- package/dist/application/utils/elementObserver.cjs +176 -0
- package/dist/application/utils/elementObserver.d.cts +68 -0
- package/dist/application/utils/elementObserver.d.ts +68 -0
- package/dist/application/utils/elementObserver.js +175 -0
- package/dist/application/utils/imageFilter.cjs +12 -0
- package/dist/application/utils/imageFilter.d.cts +7 -0
- package/dist/application/utils/imageFilter.d.ts +7 -0
- package/dist/application/utils/imageFilter.js +12 -0
- package/dist/application/utils/index.cjs +40 -41
- package/dist/application/utils/index.d.cts +22 -264
- package/dist/application/utils/index.d.ts +22 -264
- package/dist/application/utils/index.js +20 -21
- package/dist/application/utils/merchantUtils.cjs +18 -0
- package/dist/application/utils/merchantUtils.d.cts +5 -0
- package/dist/application/utils/merchantUtils.d.ts +5 -0
- package/dist/application/utils/merchantUtils.js +17 -0
- package/dist/application/utils/messageFromFormSubmittedEvent.cjs +21 -0
- package/dist/application/utils/messageFromFormSubmittedEvent.d.cts +9 -0
- package/dist/application/utils/messageFromFormSubmittedEvent.d.ts +9 -0
- package/dist/application/utils/messageFromFormSubmittedEvent.js +20 -0
- package/dist/application/utils/messageFromQueryEvent.cjs +36 -0
- package/dist/application/utils/messageFromQueryEvent.d.cts +16 -0
- package/dist/application/utils/messageFromQueryEvent.d.ts +16 -0
- package/dist/application/utils/messageFromQueryEvent.js +35 -0
- package/dist/application/utils/messageFromResponse.cjs +97 -0
- package/dist/application/utils/messageFromResponse.d.cts +16 -0
- package/dist/application/utils/messageFromResponse.d.ts +16 -0
- package/dist/application/utils/messageFromResponse.js +96 -0
- package/dist/application/utils/messageFromSuggestionEvent.cjs +33 -0
- package/dist/application/utils/messageFromSuggestionEvent.d.cts +18 -0
- package/dist/application/utils/messageFromSuggestionEvent.d.ts +18 -0
- package/dist/application/utils/messageFromSuggestionEvent.js +32 -0
- package/dist/application/utils/mouseEventTypes.d.cts +5 -0
- package/dist/application/utils/mouseEventTypes.d.ts +5 -0
- package/dist/application/utils/mutationHelper.cjs +31 -0
- package/dist/application/utils/mutationHelper.d.cts +12 -0
- package/dist/application/utils/mutationHelper.d.ts +12 -0
- package/dist/application/utils/mutationHelper.js +30 -0
- package/dist/application/utils/nextMessageRequestToApiRequest.cjs +32 -0
- package/dist/application/utils/nextMessageRequestToApiRequest.d.cts +8 -0
- package/dist/application/utils/nextMessageRequestToApiRequest.d.ts +8 -0
- package/dist/application/utils/nextMessageRequestToApiRequest.js +32 -0
- package/dist/application/utils/nodeSelector.cjs +92 -0
- package/dist/application/utils/nodeSelector.d.cts +28 -0
- package/dist/application/utils/nodeSelector.d.ts +28 -0
- package/dist/application/utils/nodeSelector.js +90 -0
- package/dist/application/utils/overrides.cjs +95 -0
- package/dist/application/utils/overrides.d.cts +37 -0
- package/dist/application/utils/overrides.d.ts +37 -0
- package/dist/application/utils/overrides.js +94 -0
- package/dist/application/utils/stringUtils.cjs +35 -0
- package/dist/application/utils/stringUtils.d.cts +18 -0
- package/dist/application/utils/stringUtils.d.ts +18 -0
- package/dist/application/utils/stringUtils.js +34 -0
- package/dist/application/utils/supportedEventRequestToApiRequest.cjs +13 -0
- package/dist/application/utils/supportedEventRequestToApiRequest.d.cts +8 -0
- package/dist/application/utils/supportedEventRequestToApiRequest.d.ts +8 -0
- package/dist/application/utils/supportedEventRequestToApiRequest.js +13 -0
- package/dist/application/utils/urlsParser.cjs +47 -0
- package/dist/application/utils/urlsParser.d.cts +23 -0
- package/dist/application/utils/urlsParser.d.ts +23 -0
- package/dist/application/utils/urlsParser.js +41 -0
- package/dist/application/utils/validation.cjs +7 -0
- package/dist/application/utils/validation.d.cts +5 -0
- package/dist/application/utils/validation.d.ts +5 -0
- package/dist/application/utils/validation.js +6 -0
- package/dist/atoms/amplitude/amplitudeTrackEventAtom.cjs +9 -0
- package/dist/atoms/amplitude/amplitudeTrackEventAtom.js +8 -0
- package/dist/atoms/app/index.cjs +27 -19
- package/dist/atoms/app/index.d.cts +10 -24
- package/dist/atoms/app/index.d.ts +10 -24
- package/dist/atoms/app/index.js +22 -15
- package/dist/atoms/app/variant.cjs +98 -0
- package/dist/atoms/app/variant.d.cts +10 -0
- package/dist/atoms/app/variant.d.ts +10 -0
- package/dist/atoms/app/variant.js +95 -0
- package/dist/atoms/atomStore/atomStore.cjs +36 -0
- package/dist/atoms/atomStore/atomStore.d.cts +24 -0
- package/dist/atoms/atomStore/atomStore.d.ts +24 -0
- package/dist/atoms/atomStore/atomStore.js +32 -0
- package/dist/atoms/atomStore/index.cjs +1 -1
- package/dist/atoms/atomStore/index.d.cts +2 -24
- package/dist/atoms/atomStore/index.d.ts +2 -24
- package/dist/atoms/atomStore/index.js +1 -1
- package/dist/atoms/chat/chatState.cjs +48 -0
- package/dist/atoms/chat/chatState.d.cts +54 -0
- package/dist/atoms/chat/chatState.d.ts +54 -0
- package/dist/atoms/chat/chatState.js +34 -0
- package/dist/atoms/chat/form.cjs +23 -0
- package/dist/atoms/chat/form.d.cts +10 -0
- package/dist/atoms/chat/form.d.ts +10 -0
- package/dist/atoms/chat/form.js +22 -0
- package/dist/atoms/chat/index.cjs +43 -38
- package/dist/atoms/chat/index.d.cts +13 -146
- package/dist/atoms/chat/index.d.ts +13 -146
- package/dist/atoms/chat/index.js +27 -23
- package/dist/atoms/chat/lastMessage.cjs +16 -0
- package/dist/atoms/chat/lastMessage.d.cts +8 -0
- package/dist/atoms/chat/lastMessage.d.ts +8 -0
- package/dist/atoms/chat/lastMessage.js +15 -0
- package/dist/atoms/chat/messageQueue.cjs +75 -0
- package/dist/atoms/chat/messageQueue.js +69 -0
- package/dist/atoms/chat/performanceMetrics.cjs +74 -0
- package/dist/atoms/chat/performanceMetrics.d.cts +50 -0
- package/dist/atoms/chat/performanceMetrics.d.ts +50 -0
- package/dist/atoms/chat/performanceMetrics.js +65 -0
- package/dist/atoms/chat/renderedWidgetRefs.cjs +32 -0
- package/dist/atoms/chat/renderedWidgetRefs.d.cts +21 -0
- package/dist/atoms/chat/renderedWidgetRefs.d.ts +21 -0
- package/dist/atoms/chat/renderedWidgetRefs.js +30 -0
- package/dist/atoms/chat/replies.cjs +45 -0
- package/dist/atoms/chat/replies.d.cts +14 -0
- package/dist/atoms/chat/replies.d.ts +14 -0
- package/dist/atoms/chat/replies.js +44 -0
- package/dist/atoms/chat/suggestions.cjs +36 -0
- package/dist/atoms/chat/suggestions.d.cts +10 -0
- package/dist/atoms/chat/suggestions.d.ts +10 -0
- package/dist/atoms/chat/suggestions.js +35 -0
- package/dist/atoms/envive/enviveConfig.cjs +74 -0
- package/dist/atoms/envive/enviveConfig.js +63 -0
- package/dist/atoms/globalSearch/globalSearch.cjs +18 -0
- package/dist/atoms/globalSearch/globalSearch.d.cts +24 -0
- package/dist/atoms/globalSearch/globalSearch.d.ts +24 -0
- package/dist/atoms/globalSearch/globalSearch.js +14 -0
- package/dist/atoms/globalSearch/index.cjs +1 -1
- package/dist/atoms/globalSearch/index.d.cts +2 -24
- package/dist/atoms/globalSearch/index.d.ts +2 -24
- package/dist/atoms/globalSearch/index.js +1 -1
- package/dist/atoms/org/customerService.cjs +17 -0
- package/dist/atoms/org/customerService.d.cts +23 -0
- package/dist/atoms/org/customerService.d.ts +23 -0
- package/dist/atoms/org/customerService.js +12 -0
- package/dist/atoms/org/graphqlConfig.cjs +18 -0
- package/dist/atoms/org/graphqlConfig.d.cts +19 -0
- package/dist/atoms/org/graphqlConfig.d.ts +19 -0
- package/dist/atoms/org/graphqlConfig.js +14 -0
- package/dist/atoms/org/index.cjs +9 -9
- package/dist/atoms/org/index.d.cts +5 -60
- package/dist/atoms/org/index.d.ts +5 -60
- package/dist/atoms/org/index.js +4 -4
- package/dist/atoms/org/newOrgConfigAtom.cjs +9 -0
- package/dist/atoms/org/newOrgConfigAtom.d.cts +10 -0
- package/dist/atoms/org/newOrgConfigAtom.d.ts +10 -0
- package/dist/atoms/org/newOrgConfigAtom.js +8 -0
- package/dist/atoms/org/orgAnalyticsConfig.cjs +18 -0
- package/dist/atoms/org/orgAnalyticsConfig.d.cts +11 -0
- package/dist/atoms/org/orgAnalyticsConfig.d.ts +11 -0
- package/dist/atoms/org/orgAnalyticsConfig.js +14 -0
- package/dist/atoms/search/chatSearch.cjs +208 -0
- package/dist/atoms/search/chatSearch.d.cts +115 -0
- package/dist/atoms/search/chatSearch.d.ts +115 -0
- package/dist/atoms/search/chatSearch.js +190 -0
- package/dist/atoms/search/index.cjs +15 -42
- package/dist/atoms/search/index.d.cts +2 -14
- package/dist/atoms/search/index.d.ts +2 -14
- package/dist/atoms/search/index.js +2 -29
- package/dist/atoms/search/productFilters.cjs +99 -0
- package/dist/atoms/search/productFilters.js +99 -0
- package/dist/atoms/search/productRetrievalAPI.cjs +50 -0
- package/dist/atoms/search/productRetrievalAPI.js +47 -0
- package/dist/atoms/search/productRetrievalAdapter.cjs +11 -0
- package/dist/atoms/search/productRetrievalAdapter.js +10 -0
- package/dist/atoms/search/productSorter.cjs +16 -0
- package/dist/atoms/search/productSorter.js +16 -0
- package/dist/atoms/search/searchAPI.cjs +135 -0
- package/dist/atoms/search/searchAPI.d.cts +76 -0
- package/dist/atoms/search/searchAPI.d.ts +76 -0
- package/dist/atoms/search/searchAPI.js +122 -0
- package/dist/atoms/search/searchServiceAdapter.cjs +19 -0
- package/dist/atoms/search/searchServiceAdapter.js +16 -0
- package/dist/atoms/search/types.cjs +32 -4
- package/dist/atoms/search/types.d.cts +60 -4
- package/dist/atoms/search/types.d.ts +60 -4
- package/dist/atoms/search/types.js +29 -2
- package/dist/atoms/search/utils.cjs +23 -2
- package/dist/atoms/search/utils.js +22 -2
- package/dist/config/index.cjs +74 -70
- package/dist/config/index.d.cts +8 -4
- package/dist/config/index.d.ts +8 -4
- package/dist/config/index.js +8 -4
- package/dist/config/locators/components/chat/index.cjs +44 -21
- package/dist/config/locators/components/chat/index.d.cts +24 -2
- package/dist/config/locators/components/chat/index.d.ts +24 -2
- package/dist/config/locators/components/chat/index.js +24 -2
- package/dist/config/locators/components/chat/variants/index.cjs +1 -1
- package/dist/config/locators/components/chat/variants/index.js +1 -1
- package/dist/config/locators/components/common/buttons.cjs +17 -0
- package/dist/config/locators/components/common/buttons.d.cts +10 -0
- package/dist/config/locators/components/common/buttons.d.ts +10 -0
- package/dist/config/locators/components/common/buttons.js +11 -0
- package/dist/config/locators/components/common/cards.cjs +39 -0
- package/dist/config/locators/components/common/cards.d.cts +21 -0
- package/dist/config/locators/components/common/cards.d.ts +21 -0
- package/dist/config/locators/components/common/cards.js +22 -0
- package/dist/config/locators/components/common/index.cjs +29 -26
- package/dist/config/locators/components/common/index.d.cts +4 -1
- package/dist/config/locators/components/common/index.d.ts +4 -1
- package/dist/config/locators/components/common/index.js +4 -1
- package/dist/config/locators/components/common/links.cjs +7 -0
- package/dist/config/locators/components/common/links.d.cts +5 -0
- package/dist/config/locators/components/common/links.d.ts +5 -0
- package/dist/config/locators/components/common/links.js +6 -0
- package/dist/config/locators/components/common/tables.cjs +7 -0
- package/dist/config/locators/components/common/tables.d.cts +5 -0
- package/dist/config/locators/components/common/tables.d.ts +5 -0
- package/dist/config/locators/components/common/tables.js +6 -0
- package/dist/config/locators/components/floating-button.cjs +9 -0
- package/dist/config/locators/components/floating-button.d.cts +6 -0
- package/dist/config/locators/components/floating-button.d.ts +6 -0
- package/dist/config/locators/components/floating-button.js +7 -0
- package/dist/config/locators/components/index.cjs +5 -4
- package/dist/config/locators/components/index.d.cts +2 -1
- package/dist/config/locators/components/index.d.ts +2 -1
- package/dist/config/locators/components/index.js +2 -1
- package/dist/config/locators/components/shadow-dom.cjs +7 -0
- package/dist/config/locators/components/shadow-dom.d.cts +5 -0
- package/dist/config/locators/components/shadow-dom.d.ts +5 -0
- package/dist/config/locators/components/shadow-dom.js +6 -0
- package/dist/config/locators/embedded.cjs +41 -0
- package/dist/{index-COXkY78t.d.cts → config/locators/embedded.d.cts} +1 -1
- package/dist/{index-BKvFVPUX.d.ts → config/locators/embedded.d.ts} +1 -1
- package/dist/{locators-BMQGmGLq.js → config/locators/embedded.js} +1 -1
- package/dist/config/locators/index.cjs +74 -70
- package/dist/config/locators/index.d.cts +8 -4
- package/dist/config/locators/index.d.ts +8 -4
- package/dist/config/locators/index.js +8 -4
- package/dist/contexts/amplitudeContext/amplitudeContext.cjs +275 -0
- package/dist/contexts/amplitudeContext/amplitudeContext.d.cts +52 -0
- package/dist/contexts/amplitudeContext/amplitudeContext.d.ts +52 -0
- package/dist/contexts/amplitudeContext/amplitudeContext.js +271 -0
- package/dist/contexts/amplitudeContext/index.cjs +1 -20
- package/dist/contexts/amplitudeContext/index.d.cts +1 -1
- package/dist/contexts/amplitudeContext/index.d.ts +1 -1
- package/dist/contexts/amplitudeContext/index.js +1 -20
- package/dist/contexts/cdnContext/cdnContext.cjs +41 -0
- package/dist/contexts/cdnContext/cdnContext.d.cts +15 -0
- package/dist/contexts/cdnContext/cdnContext.d.ts +15 -0
- package/dist/contexts/cdnContext/cdnContext.js +38 -0
- package/dist/contexts/cdnContext/index.cjs +1 -4
- package/dist/contexts/cdnContext/index.d.cts +2 -15
- package/dist/contexts/cdnContext/index.d.ts +2 -15
- package/dist/contexts/cdnContext/index.js +1 -4
- package/dist/contexts/chatContext/chatContext.cjs +306 -0
- package/dist/contexts/chatContext/chatContext.d.cts +15 -0
- package/dist/contexts/chatContext/chatContext.d.ts +15 -0
- package/dist/contexts/chatContext/chatContext.js +304 -0
- package/dist/contexts/chatContext/index.cjs +3 -330
- package/dist/contexts/chatContext/index.d.cts +2 -15
- package/dist/contexts/chatContext/index.d.ts +2 -15
- package/dist/contexts/chatContext/index.js +2 -323
- package/dist/contexts/enviveConfigContext/enviveConfigContext.cjs +48 -0
- package/dist/contexts/enviveConfigContext/enviveConfigContext.d.cts +29 -0
- package/dist/contexts/enviveConfigContext/enviveConfigContext.d.ts +29 -0
- package/dist/contexts/enviveConfigContext/enviveConfigContext.js +45 -0
- package/dist/contexts/enviveConfigContext/index.cjs +1 -4
- package/dist/contexts/enviveConfigContext/index.d.cts +2 -30
- package/dist/contexts/enviveConfigContext/index.d.ts +2 -30
- package/dist/contexts/enviveConfigContext/index.js +1 -4
- package/dist/contexts/enviveCssContext/enviveCssContext.cjs +49 -0
- package/dist/contexts/enviveCssContext/enviveCssContext.d.cts +10 -0
- package/dist/contexts/enviveCssContext/enviveCssContext.d.ts +10 -0
- package/dist/contexts/enviveCssContext/enviveCssContext.js +47 -0
- package/dist/contexts/enviveCssContext/index.cjs +2 -65
- package/dist/contexts/enviveCssContext/index.d.cts +2 -10
- package/dist/contexts/enviveCssContext/index.d.ts +2 -10
- package/dist/contexts/enviveCssContext/index.js +2 -62
- package/dist/contexts/featureFlagContext/featureFlagContext.cjs +105 -0
- package/dist/contexts/featureFlagContext/featureFlagContext.d.cts +19 -0
- package/dist/contexts/featureFlagContext/featureFlagContext.d.ts +19 -0
- package/dist/contexts/featureFlagContext/featureFlagContext.js +102 -0
- package/dist/contexts/featureFlagContext/index.cjs +3 -106
- package/dist/contexts/featureFlagContext/index.d.cts +2 -20
- package/dist/contexts/featureFlagContext/index.d.ts +2 -20
- package/dist/contexts/featureFlagContext/index.js +2 -102
- package/dist/contexts/featureFlagServiceContext/featureFlagServiceContext.cjs +46 -0
- package/dist/contexts/featureFlagServiceContext/featureFlagServiceContext.d.cts +24 -0
- package/dist/contexts/featureFlagServiceContext/featureFlagServiceContext.d.ts +24 -0
- package/dist/contexts/featureFlagServiceContext/featureFlagServiceContext.js +42 -0
- package/dist/contexts/featureFlagServiceContext/index.cjs +1 -3
- package/dist/contexts/featureFlagServiceContext/index.d.cts +1 -4
- package/dist/contexts/featureFlagServiceContext/index.d.ts +1 -4
- package/dist/contexts/featureFlagServiceContext/index.js +1 -3
- package/dist/contexts/graphqlContext/graphqlContext.cjs +99 -0
- package/dist/contexts/graphqlContext/graphqlContext.d.cts +29 -0
- package/dist/contexts/graphqlContext/graphqlContext.d.ts +29 -0
- package/dist/contexts/graphqlContext/graphqlContext.js +96 -0
- package/dist/contexts/graphqlContext/index.cjs +1 -13
- package/dist/contexts/graphqlContext/index.d.cts +1 -14
- package/dist/contexts/graphqlContext/index.d.ts +1 -14
- package/dist/contexts/graphqlContext/index.js +1 -13
- package/dist/contexts/localStorageContext/index.cjs +1 -2
- package/dist/contexts/localStorageContext/index.d.cts +2 -30
- package/dist/contexts/localStorageContext/index.d.ts +2 -30
- package/dist/contexts/localStorageContext/index.js +1 -2
- package/dist/contexts/localStorageContext/localStorageContext.cjs +99 -0
- package/dist/contexts/localStorageContext/localStorageContext.d.cts +25 -0
- package/dist/contexts/localStorageContext/localStorageContext.d.ts +25 -0
- package/dist/contexts/localStorageContext/localStorageContext.js +95 -0
- package/dist/contexts/newOrgConfigContext/index.cjs +1 -17
- package/dist/contexts/newOrgConfigContext/index.d.cts +1 -15
- package/dist/contexts/newOrgConfigContext/index.d.ts +1 -15
- package/dist/contexts/newOrgConfigContext/index.js +1 -17
- package/dist/contexts/newOrgConfigContext/newOrgConfigContext.cjs +56 -0
- package/dist/contexts/newOrgConfigContext/newOrgConfigContext.d.cts +16 -0
- package/dist/contexts/newOrgConfigContext/newOrgConfigContext.d.ts +16 -0
- package/dist/contexts/newOrgConfigContext/newOrgConfigContext.js +53 -0
- package/dist/contexts/searchContext/index.cjs +1 -21
- package/dist/contexts/searchContext/index.d.cts +2 -16
- package/dist/contexts/searchContext/index.d.ts +2 -16
- package/dist/contexts/searchContext/index.js +1 -21
- package/dist/contexts/searchContext/searchContext.cjs +132 -0
- package/dist/contexts/searchContext/searchContext.d.cts +15 -0
- package/dist/contexts/searchContext/searchContext.d.ts +15 -0
- package/dist/contexts/searchContext/searchContext.js +129 -0
- package/dist/contexts/sessionStorageContext/index.cjs +1 -2
- package/dist/contexts/sessionStorageContext/index.d.cts +2 -15
- package/dist/contexts/sessionStorageContext/index.d.ts +2 -15
- package/dist/contexts/sessionStorageContext/index.js +1 -2
- package/dist/contexts/sessionStorageContext/sessionStorageContext.cjs +55 -0
- package/dist/contexts/sessionStorageContext/sessionStorageContext.d.cts +15 -0
- package/dist/contexts/sessionStorageContext/sessionStorageContext.d.ts +15 -0
- package/dist/contexts/sessionStorageContext/sessionStorageContext.js +52 -0
- package/dist/contexts/shopifyUrlContext/index.cjs +1 -2
- package/dist/contexts/shopifyUrlContext/index.d.cts +2 -20
- package/dist/contexts/shopifyUrlContext/index.d.ts +2 -20
- package/dist/contexts/shopifyUrlContext/index.js +1 -2
- package/dist/contexts/shopifyUrlContext/shopifyUrlContext.cjs +64 -0
- package/dist/contexts/shopifyUrlContext/shopifyUrlContext.d.cts +18 -0
- package/dist/contexts/shopifyUrlContext/shopifyUrlContext.d.ts +18 -0
- package/dist/contexts/shopifyUrlContext/shopifyUrlContext.js +61 -0
- package/dist/contexts/systemSettingsContext/index.cjs +1 -4
- package/dist/contexts/systemSettingsContext/index.d.cts +2 -38
- package/dist/contexts/systemSettingsContext/index.d.ts +2 -38
- package/dist/contexts/systemSettingsContext/index.js +1 -4
- package/dist/contexts/systemSettingsContext/systemSettingsContext.cjs +42 -0
- package/dist/contexts/systemSettingsContext/systemSettingsContext.d.cts +27 -0
- package/dist/contexts/systemSettingsContext/systemSettingsContext.d.ts +27 -0
- package/dist/contexts/systemSettingsContext/systemSettingsContext.js +39 -0
- package/dist/contexts/types.cjs +56 -6
- package/dist/contexts/types.d.cts +696 -4
- package/dist/contexts/types.d.ts +696 -4
- package/dist/contexts/types.js +52 -2
- package/dist/contexts/userIdentityContext/index.cjs +1 -25
- package/dist/contexts/userIdentityContext/index.d.cts +1 -1
- package/dist/contexts/userIdentityContext/index.d.ts +1 -1
- package/dist/contexts/userIdentityContext/index.js +1 -25
- package/dist/contexts/userIdentityContext/userIdentityContext.cjs +131 -0
- package/dist/contexts/userIdentityContext/userIdentityContext.d.cts +20 -0
- package/dist/contexts/userIdentityContext/userIdentityContext.d.ts +20 -0
- package/dist/contexts/userIdentityContext/userIdentityContext.js +127 -0
- package/dist/events/event-types.cjs +18 -0
- package/dist/events/event-types.d.cts +15 -0
- package/dist/events/event-types.d.ts +15 -0
- package/dist/events/event-types.js +17 -0
- package/dist/events/index.cjs +65 -3
- package/dist/events/index.d.cts +4 -14
- package/dist/events/index.d.ts +4 -14
- package/dist/events/index.js +64 -2
- package/dist/hooks/AmplitudeOperations/index.cjs +1 -21
- package/dist/hooks/AmplitudeOperations/index.d.cts +2 -12
- package/dist/hooks/AmplitudeOperations/index.d.ts +2 -12
- package/dist/hooks/AmplitudeOperations/index.js +1 -21
- package/dist/hooks/AmplitudeOperations/useAmplitudeOperations.cjs +35 -0
- package/dist/hooks/AmplitudeOperations/useAmplitudeOperations.d.cts +12 -0
- package/dist/hooks/AmplitudeOperations/useAmplitudeOperations.d.ts +12 -0
- package/dist/hooks/AmplitudeOperations/useAmplitudeOperations.js +34 -0
- package/dist/hooks/AppDetails/index.cjs +1 -17
- package/dist/hooks/AppDetails/index.d.cts +2 -28
- package/dist/hooks/AppDetails/index.d.ts +2 -28
- package/dist/hooks/AppDetails/index.js +1 -17
- package/dist/hooks/AppDetails/useAppDetails.cjs +25 -0
- package/dist/hooks/AppDetails/useAppDetails.d.cts +17 -0
- package/dist/hooks/AppDetails/useAppDetails.d.ts +17 -0
- package/dist/hooks/AppDetails/useAppDetails.js +24 -0
- package/dist/hooks/BlockBackButton/index.cjs +2 -28
- package/dist/hooks/BlockBackButton/index.d.cts +2 -5
- package/dist/hooks/BlockBackButton/index.d.ts +2 -5
- package/dist/hooks/BlockBackButton/index.js +2 -26
- package/dist/hooks/BlockBackButton/useBlockBackButton.cjs +28 -0
- package/dist/hooks/BlockBackButton/useBlockBackButton.d.cts +5 -0
- package/dist/hooks/BlockBackButton/useBlockBackButton.d.ts +5 -0
- package/dist/hooks/BlockBackButton/useBlockBackButton.js +27 -0
- package/dist/hooks/CdnOperations/index.cjs +4 -23
- package/dist/hooks/CdnOperations/index.d.cts +2 -7
- package/dist/hooks/CdnOperations/index.d.ts +2 -7
- package/dist/hooks/CdnOperations/index.js +2 -21
- package/dist/hooks/CdnOperations/useCdnOperations.cjs +22 -0
- package/dist/hooks/CdnOperations/useCdnOperations.d.cts +7 -0
- package/dist/hooks/CdnOperations/useCdnOperations.d.ts +7 -0
- package/dist/hooks/CdnOperations/useCdnOperations.js +20 -0
- package/dist/hooks/ChatToggle/index.cjs +2 -64
- package/dist/hooks/ChatToggle/index.d.cts +2 -12
- package/dist/hooks/ChatToggle/index.d.ts +2 -12
- package/dist/hooks/ChatToggle/index.js +2 -62
- package/dist/hooks/ChatToggle/useChatToggle.cjs +45 -0
- package/dist/hooks/ChatToggle/useChatToggle.d.cts +12 -0
- package/dist/hooks/ChatToggle/useChatToggle.d.ts +12 -0
- package/dist/hooks/ChatToggle/useChatToggle.js +44 -0
- package/dist/hooks/ChatToggleAnalytics/index.cjs +2 -38
- package/dist/hooks/ChatToggleAnalytics/index.d.cts +2 -9
- package/dist/hooks/ChatToggleAnalytics/index.d.ts +2 -9
- package/dist/hooks/ChatToggleAnalytics/index.js +2 -36
- package/dist/hooks/ChatToggleAnalytics/useChatToggleAnalytics.cjs +19 -0
- package/dist/hooks/ChatToggleAnalytics/useChatToggleAnalytics.d.cts +9 -0
- package/dist/hooks/ChatToggleAnalytics/useChatToggleAnalytics.d.ts +9 -0
- package/dist/hooks/ChatToggleAnalytics/useChatToggleAnalytics.js +18 -0
- package/dist/hooks/CustomerSupportHandoff/index.cjs +2 -35
- package/dist/hooks/CustomerSupportHandoff/index.d.cts +2 -16
- package/dist/hooks/CustomerSupportHandoff/index.d.ts +2 -16
- package/dist/hooks/CustomerSupportHandoff/index.js +2 -33
- package/dist/hooks/CustomerSupportHandoff/useCustomerSupportHandoff.cjs +35 -0
- package/dist/hooks/CustomerSupportHandoff/useCustomerSupportHandoff.d.cts +16 -0
- package/dist/hooks/CustomerSupportHandoff/useCustomerSupportHandoff.d.ts +16 -0
- package/dist/hooks/CustomerSupportHandoff/useCustomerSupportHandoff.js +34 -0
- package/dist/hooks/Debounce/index.cjs +2 -20
- package/dist/hooks/Debounce/index.d.cts +2 -5
- package/dist/hooks/Debounce/index.d.ts +2 -5
- package/dist/hooks/Debounce/index.js +2 -18
- package/dist/hooks/Debounce/useDebounce.cjs +20 -0
- package/dist/hooks/Debounce/useDebounce.d.cts +5 -0
- package/dist/hooks/Debounce/useDebounce.d.ts +5 -0
- package/dist/hooks/Debounce/useDebounce.js +19 -0
- package/dist/hooks/ElementObserver/index.cjs +2 -178
- package/dist/hooks/ElementObserver/index.d.cts +2 -29
- package/dist/hooks/ElementObserver/index.d.ts +2 -29
- package/dist/hooks/ElementObserver/index.js +2 -176
- package/dist/hooks/ElementObserver/useElementObserver.cjs +178 -0
- package/dist/hooks/ElementObserver/useElementObserver.d.cts +30 -0
- package/dist/hooks/ElementObserver/useElementObserver.d.ts +30 -0
- package/dist/hooks/ElementObserver/useElementObserver.js +177 -0
- package/dist/hooks/GrabAndScroll/index.cjs +2 -98
- package/dist/hooks/GrabAndScroll/index.d.cts +2 -14
- package/dist/hooks/GrabAndScroll/index.d.ts +2 -14
- package/dist/hooks/GrabAndScroll/index.js +2 -96
- package/dist/hooks/GrabAndScroll/useGrabAndScroll.cjs +96 -0
- package/dist/hooks/GrabAndScroll/useGrabAndScroll.d.cts +14 -0
- package/dist/hooks/GrabAndScroll/useGrabAndScroll.d.ts +14 -0
- package/dist/hooks/GrabAndScroll/useGrabAndScroll.js +95 -0
- package/dist/hooks/GraphQLConfig/index.cjs +1 -14
- package/dist/hooks/GraphQLConfig/index.d.cts +2 -29
- package/dist/hooks/GraphQLConfig/index.d.ts +2 -29
- package/dist/hooks/GraphQLConfig/index.js +1 -14
- package/dist/hooks/GraphQLConfig/useGraphQLConfig.cjs +63 -0
- package/dist/hooks/GraphQLConfig/useGraphQLConfig.d.cts +17 -0
- package/dist/hooks/GraphQLConfig/useGraphQLConfig.d.ts +17 -0
- package/dist/hooks/GraphQLConfig/useGraphQLConfig.js +61 -0
- package/dist/hooks/IdentifyUser/index.cjs +2 -60
- package/dist/hooks/IdentifyUser/index.d.cts +2 -10
- package/dist/hooks/IdentifyUser/index.d.ts +2 -10
- package/dist/hooks/IdentifyUser/index.js +2 -58
- package/dist/hooks/IdentifyUser/useIdentifyUser.cjs +35 -0
- package/dist/hooks/IdentifyUser/useIdentifyUser.d.cts +10 -0
- package/dist/hooks/IdentifyUser/useIdentifyUser.d.ts +10 -0
- package/dist/hooks/IdentifyUser/useIdentifyUser.js +34 -0
- package/dist/hooks/ImageResolver/index.cjs +2 -54
- package/dist/hooks/ImageResolver/index.d.cts +2 -7
- package/dist/hooks/ImageResolver/index.d.ts +2 -7
- package/dist/hooks/ImageResolver/index.js +2 -52
- package/dist/hooks/ImageResolver/useImageResolver.cjs +45 -0
- package/dist/hooks/ImageResolver/useImageResolver.d.cts +7 -0
- package/dist/hooks/ImageResolver/useImageResolver.d.ts +7 -0
- package/dist/hooks/ImageResolver/useImageResolver.js +44 -0
- package/dist/hooks/Intersection/index.cjs +1 -1
- package/dist/hooks/Intersection/index.d.cts +2 -7
- package/dist/hooks/Intersection/index.d.ts +2 -7
- package/dist/hooks/Intersection/index.js +1 -1
- package/dist/hooks/Intersection/useIntersection.cjs +22 -0
- package/dist/hooks/Intersection/useIntersection.d.cts +7 -0
- package/dist/hooks/Intersection/useIntersection.d.ts +7 -0
- package/dist/hooks/Intersection/useIntersection.js +21 -0
- package/dist/hooks/IsSmallScreen/index.cjs +2 -21
- package/dist/hooks/IsSmallScreen/index.d.cts +2 -5
- package/dist/hooks/IsSmallScreen/index.d.ts +2 -5
- package/dist/hooks/IsSmallScreen/index.js +2 -19
- package/dist/hooks/IsSmallScreen/useIsSmallScreen.cjs +21 -0
- package/dist/hooks/IsSmallScreen/useIsSmallScreen.d.cts +5 -0
- package/dist/hooks/IsSmallScreen/useIsSmallScreen.d.ts +5 -0
- package/dist/hooks/IsSmallScreen/useIsSmallScreen.js +20 -0
- package/dist/hooks/LocalStorageOperations/index.cjs +5 -78
- package/dist/hooks/LocalStorageOperations/index.d.cts +2 -17
- package/dist/hooks/LocalStorageOperations/index.d.ts +2 -17
- package/dist/hooks/LocalStorageOperations/index.js +2 -73
- package/dist/hooks/LocalStorageOperations/useLocalStorageOperations.cjs +77 -0
- package/dist/hooks/LocalStorageOperations/useLocalStorageOperations.d.cts +17 -0
- package/dist/hooks/LocalStorageOperations/useLocalStorageOperations.d.ts +17 -0
- package/dist/hooks/LocalStorageOperations/useLocalStorageOperations.js +73 -0
- package/dist/hooks/MessageFilter/index.cjs +2 -53
- package/dist/hooks/MessageFilter/index.d.cts +2 -31
- package/dist/hooks/MessageFilter/index.d.ts +2 -31
- package/dist/hooks/MessageFilter/index.js +2 -53
- package/dist/hooks/MessageFilter/useMessageFilter.cjs +43 -0
- package/dist/hooks/MessageFilter/useMessageFilter.d.cts +20 -0
- package/dist/hooks/MessageFilter/useMessageFilter.d.ts +20 -0
- package/dist/hooks/MessageFilter/useMessageFilter.js +43 -0
- package/dist/hooks/MessageScrollObserver/index.cjs +2 -35
- package/dist/hooks/MessageScrollObserver/index.d.cts +2 -5
- package/dist/hooks/MessageScrollObserver/index.d.ts +2 -5
- package/dist/hooks/MessageScrollObserver/index.js +2 -33
- package/dist/hooks/MessageScrollObserver/useMessageScrollObserver.cjs +33 -0
- package/dist/hooks/MessageScrollObserver/useMessageScrollObserver.d.cts +5 -0
- package/dist/hooks/MessageScrollObserver/useMessageScrollObserver.d.ts +5 -0
- package/dist/hooks/MessageScrollObserver/useMessageScrollObserver.js +32 -0
- package/dist/hooks/NewOrgConfig/index.cjs +2 -19
- package/dist/hooks/NewOrgConfig/index.d.cts +2 -21
- package/dist/hooks/NewOrgConfig/index.d.ts +2 -21
- package/dist/hooks/NewOrgConfig/index.js +1 -18
- package/dist/hooks/NewOrgConfig/useNewOrgConfig.cjs +10 -0
- package/dist/hooks/NewOrgConfig/useNewOrgConfig.d.cts +7 -0
- package/dist/hooks/NewOrgConfig/useNewOrgConfig.d.ts +7 -0
- package/dist/hooks/NewOrgConfig/useNewOrgConfig.js +10 -0
- package/dist/hooks/Search/index.cjs +2 -503
- package/dist/hooks/Search/index.d.cts +2 -72
- package/dist/hooks/Search/index.d.ts +2 -72
- package/dist/hooks/Search/index.js +2 -499
- package/dist/hooks/Search/useRecommendedProducts.cjs +41 -0
- package/dist/hooks/Search/useRecommendedProducts.js +40 -0
- package/dist/hooks/Search/useSearch.cjs +232 -0
- package/dist/hooks/Search/useSearch.d.cts +62 -0
- package/dist/hooks/Search/useSearch.d.ts +62 -0
- package/dist/hooks/Search/useSearch.js +231 -0
- package/dist/hooks/Search/useSearchInput.cjs +173 -0
- package/dist/hooks/Search/useSearchInput.js +171 -0
- package/dist/hooks/SearchOperations/index.cjs +3 -101
- package/dist/hooks/SearchOperations/index.d.cts +2 -22
- package/dist/hooks/SearchOperations/index.d.ts +2 -22
- package/dist/hooks/SearchOperations/index.js +2 -98
- package/dist/hooks/SearchOperations/useSearchOperations.cjs +77 -0
- package/dist/hooks/SearchOperations/useSearchOperations.d.cts +21 -0
- package/dist/hooks/SearchOperations/useSearchOperations.d.ts +21 -0
- package/dist/hooks/SearchOperations/useSearchOperations.js +75 -0
- package/dist/hooks/SessionStorageOperations/index.cjs +2 -29
- package/dist/hooks/SessionStorageOperations/index.d.cts +2 -8
- package/dist/hooks/SessionStorageOperations/index.d.ts +2 -8
- package/dist/hooks/SessionStorageOperations/index.js +2 -27
- package/dist/hooks/SessionStorageOperations/useSessionStorageOperations.cjs +28 -0
- package/dist/hooks/SessionStorageOperations/useSessionStorageOperations.d.cts +8 -0
- package/dist/hooks/SessionStorageOperations/useSessionStorageOperations.d.ts +8 -0
- package/dist/hooks/SessionStorageOperations/useSessionStorageOperations.js +27 -0
- package/dist/hooks/ShopifyUrlOperations/index.cjs +4 -52
- package/dist/hooks/ShopifyUrlOperations/index.d.cts +2 -23
- package/dist/hooks/ShopifyUrlOperations/index.d.ts +2 -23
- package/dist/hooks/ShopifyUrlOperations/index.js +2 -48
- package/dist/hooks/ShopifyUrlOperations/useShopifyUrlOperations.cjs +51 -0
- package/dist/hooks/ShopifyUrlOperations/useShopifyUrlOperations.d.cts +21 -0
- package/dist/hooks/ShopifyUrlOperations/useShopifyUrlOperations.d.ts +21 -0
- package/dist/hooks/ShopifyUrlOperations/useShopifyUrlOperations.js +48 -0
- package/dist/hooks/SnapCalculator/index.cjs +2 -28
- package/dist/hooks/SnapCalculator/index.d.cts +2 -12
- package/dist/hooks/SnapCalculator/index.d.ts +2 -12
- package/dist/hooks/SnapCalculator/index.js +2 -26
- package/dist/hooks/SnapCalculator/useSnapCalculator.cjs +28 -0
- package/dist/hooks/SnapCalculator/useSnapCalculator.d.cts +12 -0
- package/dist/hooks/SnapCalculator/useSnapCalculator.d.ts +12 -0
- package/dist/hooks/SnapCalculator/useSnapCalculator.js +27 -0
- package/dist/hooks/SystemSettingsContext/index.cjs +2 -6
- package/dist/hooks/SystemSettingsContext/index.d.cts +2 -24
- package/dist/hooks/SystemSettingsContext/index.d.ts +2 -24
- package/dist/hooks/SystemSettingsContext/index.js +1 -5
- package/dist/hooks/SystemSettingsContext/useSystemSettingsContext.cjs +15 -0
- package/dist/hooks/SystemSettingsContext/useSystemSettingsContext.d.cts +13 -0
- package/dist/hooks/SystemSettingsContext/useSystemSettingsContext.d.ts +13 -0
- package/dist/hooks/SystemSettingsContext/useSystemSettingsContext.js +14 -0
- package/dist/hooks/TrackComponentVisibleEvent/index.cjs +2 -22
- package/dist/hooks/TrackComponentVisibleEvent/index.d.cts +2 -18
- package/dist/hooks/TrackComponentVisibleEvent/index.d.ts +2 -18
- package/dist/hooks/TrackComponentVisibleEvent/index.js +1 -21
- package/dist/hooks/TrackComponentVisibleEvent/useTrackComponentVisibleEvent.cjs +53 -0
- package/dist/hooks/TrackComponentVisibleEvent/useTrackComponentVisibleEvent.d.cts +18 -0
- package/dist/hooks/TrackComponentVisibleEvent/useTrackComponentVisibleEvent.d.ts +18 -0
- package/dist/hooks/TrackComponentVisibleEvent/useTrackComponentVisibleEvent.js +52 -0
- package/dist/hooks/UpdateAnalyticsProps/index.cjs +2 -62
- package/dist/hooks/UpdateAnalyticsProps/index.d.cts +2 -9
- package/dist/hooks/UpdateAnalyticsProps/index.d.ts +2 -9
- package/dist/hooks/UpdateAnalyticsProps/index.js +2 -59
- package/dist/hooks/UpdateAnalyticsProps/useUpdateAnalyticsProps.cjs +44 -0
- package/dist/hooks/UpdateAnalyticsProps/useUpdateAnalyticsProps.d.cts +9 -0
- package/dist/hooks/UpdateAnalyticsProps/useUpdateAnalyticsProps.d.ts +9 -0
- package/dist/hooks/UpdateAnalyticsProps/useUpdateAnalyticsProps.js +43 -0
- package/dist/hooks/utils.cjs +97 -7
- package/dist/hooks/utils.d.cts +22 -14
- package/dist/hooks/utils.d.ts +22 -14
- package/dist/hooks/utils.js +91 -2
- package/dist/interceptors/index.cjs +1 -2
- package/dist/interceptors/index.d.cts +3 -21
- package/dist/interceptors/index.d.ts +3 -21
- package/dist/interceptors/index.js +1 -2
- package/dist/interceptors/types.cjs +0 -1
- package/dist/interceptors/types.d.cts +10 -14
- package/dist/interceptors/types.d.ts +10 -14
- package/dist/interceptors/types.js +0 -2
- package/dist/interceptors/useMessageInterceptor.cjs +26 -0
- package/dist/interceptors/useMessageInterceptor.d.cts +9 -0
- package/dist/interceptors/useMessageInterceptor.d.ts +9 -0
- package/dist/interceptors/useMessageInterceptor.js +25 -0
- package/dist/merchants/domInsertion.cjs +17 -0
- package/dist/merchants/domInsertion.d.cts +14 -0
- package/dist/merchants/domInsertion.d.ts +14 -0
- package/dist/merchants/domInsertion.js +16 -0
- package/dist/merchants/gridInsertion.cjs +24 -0
- package/dist/merchants/gridInsertion.d.cts +21 -0
- package/dist/merchants/gridInsertion.d.ts +21 -0
- package/dist/merchants/gridInsertion.js +23 -0
- package/dist/types/OrgInfo.d.cts +13 -0
- package/dist/types/OrgInfo.d.ts +13 -0
- package/dist/types/config-versions.cjs +8 -0
- package/dist/types/config-versions.js +8 -0
- package/dist/types/customerService.d.cts +22 -0
- package/dist/types/customerService.d.ts +24 -0
- package/dist/types/custservice-types.cjs +25 -0
- package/dist/types/custservice-types.d.cts +29 -0
- package/dist/types/custservice-types.d.ts +29 -0
- package/dist/types/custservice-types.js +23 -0
- package/dist/types/exceptions/sessionExceptions.cjs +12 -0
- package/dist/types/exceptions/sessionExceptions.js +11 -0
- package/dist/types/exceptions/unsupportedProductExceptions.cjs +12 -0
- package/dist/types/exceptions/unsupportedProductExceptions.js +11 -0
- package/dist/types/index.cjs +5 -33
- package/dist/types/index.d.cts +6 -3
- package/dist/types/index.d.ts +6 -3
- package/dist/types/index.js +3 -30
- package/dist/types/search-filter-types.d.cts +102 -0
- package/dist/types/search-filter-types.d.ts +102 -0
- package/dist/types/suggestionBarV2-types.cjs +11 -0
- package/dist/types/suggestionBarV2-types.d.cts +8 -0
- package/dist/types/suggestionBarV2-types.d.ts +8 -0
- package/dist/types/suggestionBarV2-types.js +10 -0
- package/dist/types/test-types.d.cts +7 -0
- package/dist/types/test-types.d.ts +7 -0
- package/package.json +4 -5
- package/src/application/commerce-api.ts +123 -176
- package/src/application/logging/logger.ts +2 -10
- package/src/application/models/api/orgConfigResults.ts +4 -4
- package/src/application/models/cachedValue.ts +1 -3
- package/src/application/models/clientDetails.ts +1 -3
- package/src/application/models/colorsConfig.ts +18 -18
- package/src/application/models/frontendConfig.ts +2 -2
- package/src/application/models/googleAnalyticsEvents.ts +1 -3
- package/src/application/models/graphql/index.ts +1 -1
- package/src/application/models/graphql/queries/getMerchantColorsQuery.ts +1 -1
- package/src/application/models/graphql/queries/getMerchantFrontendConfigQuery.ts +1 -1
- package/src/application/models/guards/api/isApiOrgConfigResults.ts +3 -3
- package/src/application/models/guards/api/isApiOrganizationConfig.ts +1 -4
- package/src/application/models/guards/api/isApiProductResponseAttributes.ts +1 -3
- package/src/application/models/guards/api/isApiReviewRichInformation.ts +2 -2
- package/src/application/models/guards/api/isApiSearchEventAttributes.ts +1 -1
- package/src/application/models/guards/graphQL/isGraphQLColorsConfig.ts +1 -1
- package/src/application/models/guards/isSpanxTakeAQuizCtaParameter.ts +1 -1
- package/src/application/models/index.ts +87 -87
- package/src/application/models/spanxTakeAQuizCtaParameter.ts +1 -1
- package/src/application/models/spiffyWidgets.ts +0 -1
- package/src/application/models/utils/snakeToCamelTransformer.ts +10 -10
- package/src/application/models/validators/validateGraphQLColorsConfig.ts +3 -5
- package/src/application/models/validators/validateOrgConfigResults.ts +3 -3
- package/src/application/models/validators/validateResponse.ts +1 -1
- package/src/application/utils/analyticsUtils.ts +17 -33
- package/src/application/utils/cdnUtils.ts +4 -7
- package/src/application/utils/domObserver.ts +8 -8
- package/src/application/utils/elementObserver.ts +3 -3
- package/src/application/utils/imageFilter.ts +9 -6
- package/src/application/utils/index.ts +21 -21
- package/src/application/utils/merchantUtils.ts +8 -8
- package/src/application/utils/messageFromSuggestionEvent.ts +1 -1
- package/src/application/utils/mutationHelper.ts +3 -3
- package/src/application/utils/nextMessageRequestToApiRequest.ts +1 -1
- package/src/application/utils/stringUtils.ts +0 -2
- package/src/application/utils/urlsParser.ts +1 -1
- package/src/atoms/amplitude/amplitudeTrackEventAtom.ts +5 -5
- package/src/atoms/app/index.ts +21 -26
- package/src/atoms/app/variant.ts +8 -8
- package/src/atoms/atomStore/index.ts +1 -1
- package/src/atoms/chat/chatState.ts +9 -19
- package/src/atoms/chat/index.ts +1 -1
- package/src/atoms/chat/lastMessage.ts +1 -1
- package/src/atoms/chat/messageQueue.ts +27 -52
- package/src/atoms/chat/performanceMetrics.ts +38 -51
- package/src/atoms/chat/renderedWidgetRefs.ts +3 -3
- package/src/atoms/chat/replies.ts +40 -43
- package/src/atoms/envive/enviveConfig.ts +27 -32
- package/src/atoms/globalSearch/index.ts +1 -1
- package/src/atoms/org/customerService.ts +4 -8
- package/src/atoms/org/graphqlConfig.ts +10 -16
- package/src/atoms/org/index.ts +4 -4
- package/src/atoms/org/newOrgConfigAtom.ts +2 -2
- package/src/atoms/org/orgAnalyticsConfig.ts +4 -4
- package/src/atoms/search/chatSearch.ts +74 -101
- package/src/atoms/search/productFilters.ts +15 -15
- package/src/atoms/search/productRetrievalAPI.ts +9 -11
- package/src/atoms/search/productRetrievalAdapter.ts +4 -4
- package/src/atoms/search/searchAPI.ts +46 -64
- package/src/atoms/search/searchServiceAdapter.ts +4 -8
- package/src/atoms/search/types.ts +2 -2
- package/src/atoms/search/utils.ts +1 -1
- package/src/config/divIds.ts +8 -4
- package/src/config/index.ts +1 -1
- package/src/config/locators/components/chat/variants/index.ts +12 -13
- package/src/config/locators/components/floating-button.ts +2 -2
- package/src/config/locators/components/shadow-dom.ts +1 -1
- package/src/config/locators/embedded.ts +2 -1
- package/src/config/socialProofClasses.ts +9 -14
- package/src/contexts/amplitudeContext/__tests__/amplitudeContext.test.tsx +107 -122
- package/src/contexts/amplitudeContext/amplitudeContext.tsx +112 -143
- package/src/contexts/amplitudeContext/index.ts +1 -1
- package/src/contexts/cdnContext/cdnContext.tsx +8 -10
- package/src/contexts/cdnContext/index.ts +1 -1
- package/src/contexts/chatContext/chatContext.tsx +77 -123
- package/src/contexts/chatContext/index.ts +1 -1
- package/src/contexts/enviveConfigContext/__tests__/enviveConfigContext.test.tsx +125 -153
- package/src/contexts/enviveConfigContext/enviveConfigContext.tsx +7 -7
- package/src/contexts/enviveConfigContext/index.ts +1 -1
- package/src/contexts/enviveCssContext/enviveCssContext.tsx +4 -8
- package/src/contexts/enviveCssContext/index.ts +1 -1
- package/src/contexts/featureFlagContext/featureFlagContext.tsx +28 -41
- package/src/contexts/featureFlagContext/index.ts +1 -1
- package/src/contexts/featureFlagServiceContext/featureFlagServiceContext.tsx +15 -25
- package/src/contexts/featureFlagServiceContext/index.ts +1 -1
- package/src/contexts/graphqlContext/__tests__/graphqlContext.test.tsx +142 -170
- package/src/contexts/graphqlContext/graphqlContext.tsx +40 -60
- package/src/contexts/graphqlContext/index.ts +1 -1
- package/src/contexts/localStorageContext/__tests__/localStorageContext.test.tsx +155 -161
- package/src/contexts/localStorageContext/index.ts +1 -1
- package/src/contexts/localStorageContext/localStorageContext.tsx +25 -47
- package/src/contexts/newOrgConfigContext/__tests__/newOrgConfigContext.test.tsx +119 -153
- package/src/contexts/newOrgConfigContext/index.ts +1 -1
- package/src/contexts/newOrgConfigContext/newOrgConfigContext.tsx +11 -17
- package/src/contexts/searchContext/__tests__/searchContext.test.tsx +290 -227
- package/src/contexts/searchContext/index.ts +1 -1
- package/src/contexts/searchContext/searchContext.tsx +31 -45
- package/src/contexts/sessionStorageContext/index.ts +1 -1
- package/src/contexts/sessionStorageContext/sessionStorageContext.tsx +11 -27
- package/src/contexts/shopifyUrlContext/index.ts +1 -1
- package/src/contexts/shopifyUrlContext/shopifyUrlContext.tsx +21 -30
- package/src/contexts/systemSettingsContext/__tests__/systemSettingsContext.test.tsx +130 -133
- package/src/contexts/systemSettingsContext/index.ts +1 -1
- package/src/contexts/systemSettingsContext/systemSettingsContext.tsx +8 -21
- package/src/contexts/types.ts +166 -221
- package/src/contexts/userIdentityContext/__tests__/userIdentityContext.test.tsx +116 -130
- package/src/contexts/userIdentityContext/index.ts +1 -1
- package/src/contexts/userIdentityContext/userIdentityContext.tsx +29 -64
- package/src/events/index.ts +7 -3
- package/src/events/registerAnalyticsListeners.ts +10 -13
- package/src/hooks/AmplitudeOperations/index.ts +1 -1
- package/src/hooks/AmplitudeOperations/useAmplitudeOperations.ts +5 -8
- package/src/hooks/AppDetails/index.ts +1 -1
- package/src/hooks/AppDetails/useAppDetails.ts +10 -14
- package/src/hooks/BlockBackButton/index.ts +1 -1
- package/src/hooks/BlockBackButton/useBlockBackButton.ts +10 -13
- package/src/hooks/CdnOperations/index.ts +1 -1
- package/src/hooks/CdnOperations/useCdnOperations.ts +1 -1
- package/src/hooks/ChatToggle/index.ts +1 -1
- package/src/hooks/ChatToggle/useChatToggle.ts +7 -16
- package/src/hooks/ChatToggleAnalytics/index.ts +1 -1
- package/src/hooks/ChatToggleAnalytics/useChatToggleAnalytics.ts +4 -4
- package/src/hooks/CustomerSupportHandoff/index.ts +1 -1
- package/src/hooks/Debounce/index.ts +1 -1
- package/src/hooks/ElementObserver/index.ts +1 -1
- package/src/hooks/GrabAndScroll/index.ts +1 -1
- package/src/hooks/GrabAndScroll/useGrabAndScroll.ts +131 -119
- package/src/hooks/GraphQLConfig/index.ts +1 -1
- package/src/hooks/GraphQLConfig/useGraphQLConfig.ts +4 -7
- package/src/hooks/IdentifyUser/index.ts +1 -1
- package/src/hooks/IdentifyUser/useIdentifyUser.ts +4 -8
- package/src/hooks/ImageResolver/index.ts +1 -1
- package/src/hooks/ImageResolver/useImageResolver.ts +7 -16
- package/src/hooks/Intersection/index.ts +1 -1
- package/src/hooks/IsSmallScreen/index.ts +1 -1
- package/src/hooks/LocalStorageOperations/index.ts +1 -1
- package/src/hooks/LocalStorageOperations/useLocalStorageOperations.ts +12 -19
- package/src/hooks/MessageFilter/index.ts +1 -1
- package/src/hooks/MessageFilter/useMessageFilter.ts +1 -1
- package/src/hooks/MessageScrollObserver/index.ts +1 -1
- package/src/hooks/MessageScrollObserver/useMessageScrollObserver.ts +35 -37
- package/src/hooks/NewOrgConfig/index.ts +1 -1
- package/src/hooks/NewOrgConfig/useNewOrgConfig.ts +1 -1
- package/src/hooks/Search/__tests__/useSearch.test.tsx +214 -247
- package/src/hooks/Search/index.ts +1 -1
- package/src/hooks/Search/useRecommendedProducts.ts +27 -33
- package/src/hooks/Search/useSearch.tsx +65 -53
- package/src/hooks/Search/useSearchInput.ts +23 -34
- package/src/hooks/SearchOperations/index.ts +1 -1
- package/src/hooks/SearchOperations/useSearchOperations.ts +8 -12
- package/src/hooks/SessionStorageOperations/index.ts +1 -1
- package/src/hooks/SessionStorageOperations/useSessionStorageOperations.ts +5 -5
- package/src/hooks/ShopifyUrlOperations/index.ts +1 -1
- package/src/hooks/ShopifyUrlOperations/useShopifyUrlOperations.ts +8 -14
- package/src/hooks/SnapCalculator/index.ts +1 -1
- package/src/hooks/SnapCalculator/useSnapCalculator.ts +1 -1
- package/src/hooks/SystemSettingsContext/index.ts +1 -1
- package/src/hooks/SystemSettingsContext/useSystemSettingsContext.ts +3 -5
- package/src/hooks/TrackComponentVisibleEvent/index.ts +1 -1
- package/src/hooks/TrackComponentVisibleEvent/useTrackComponentVisibleEvent.ts +6 -6
- package/src/hooks/UpdateAnalyticsProps/index.ts +1 -1
- package/src/hooks/UpdateAnalyticsProps/useUpdateAnalyticsProps.ts +10 -22
- package/src/hooks/utils.ts +20 -29
- package/src/interceptors/index.ts +2 -2
- package/src/interceptors/useMessageInterceptor.ts +4 -4
- package/src/merchants/domInsertion.ts +13 -15
- package/src/merchants/gridInsertion.ts +15 -15
- package/src/types/FilterAttribute.ts +7 -10
- package/src/{types.ts → types/OrgInfo.ts} +1 -3
- package/src/types/config-versions.ts +2 -4
- package/src/types/customerService.ts +15 -15
- package/src/types/custservice-types.ts +2 -2
- package/src/types/exceptions/unsupportedProductExceptions.ts +1 -1
- package/src/types/index.ts +5 -4
- package/src/types/search-filter-types.ts +2 -2
- package/src/types/suggestionBarV2-types.ts +3 -3
- package/dist/AmplitudeOperations-ChZWcSsc.js +0 -1
- package/dist/AmplitudeOperations-JggIc1zD.cjs +0 -0
- package/dist/NewOrgConfig-BYo4V8-u.cjs +0 -15
- package/dist/NewOrgConfig-kYrS59aR.js +0 -10
- package/dist/SystemSettingsContext-BY1BFgAQ.js +0 -13
- package/dist/SystemSettingsContext-EDpRMMt2.cjs +0 -20
- package/dist/TrackComponentVisibleEvent-BHVBHQhu.js +0 -52
- package/dist/TrackComponentVisibleEvent-B_2kXqvV.cjs +0 -59
- package/dist/amplitudeContext-BItT9HmT.js +0 -1
- package/dist/amplitudeContext-CCVyp5RU.d.cts +0 -52
- package/dist/amplitudeContext-CjkMpI_a.cjs +0 -290
- package/dist/amplitudeContext-D58WY1aS.js +0 -268
- package/dist/amplitudeContext-DPtyVv3Q.cjs +0 -0
- package/dist/amplitudeContext-DcRur97Z.d.ts +0 -52
- package/dist/api-BWSsazAG.js +0 -166
- package/dist/api-DeW6rHj3.cjs +0 -239
- package/dist/app-BbPSHefQ.cjs +0 -156
- package/dist/app-CflxT_xI.js +0 -110
- package/dist/atomStore-CmZbgQHc.cjs +0 -58
- package/dist/atomStore-DEcDhiLp.js +0 -32
- package/dist/cdnContext-CaDyQ_5p.cjs +0 -53
- package/dist/cdnContext-CtrIlAqX.js +0 -38
- package/dist/chat-CLo8FBCb.cjs +0 -400
- package/dist/chat-ClvJ9xEj.js +0 -25
- package/dist/chat-DCGriB7h.cjs +0 -145
- package/dist/chat-Qkx5llOV.js +0 -258
- package/dist/chatElementDisplayLocation-BO3fY4hq.d.ts +0 -26
- package/dist/chatElementDisplayLocation-Igta1TL1.d.cts +0 -26
- package/dist/chatSearch-CP7QtVyA.cjs +0 -418
- package/dist/chatSearch-CjMcB3fG.js +0 -295
- package/dist/chatState-BUN8ehpy.js +0 -34
- package/dist/chatState-BUlDJ4NK.cjs +0 -120
- package/dist/commerce-api-CxnUXpTq.js +0 -312
- package/dist/commerce-api-DNnrOYWX.cjs +0 -319
- package/dist/common-DQPvV_S_.cjs +0 -189
- package/dist/common-c_4eX0qn.js +0 -39
- package/dist/components-CDpaMUjK.js +0 -11
- package/dist/components-DKwVHIjq.cjs +0 -29
- package/dist/domObserver-COKvTfZV.cjs +0 -304
- package/dist/domObserver-DEiUh0qg.js +0 -285
- package/dist/enviveConfig-DZBohDpc.js +0 -62
- package/dist/enviveConfig-Dv9-esGV.cjs +0 -130
- package/dist/enviveConfigContext-D2OELZDR.cjs +0 -60
- package/dist/enviveConfigContext-DrDjCems.js +0 -45
- package/dist/events-DYY4l817.cjs +0 -90
- package/dist/events-DyUix-Bn.js +0 -78
- package/dist/featureFlagServiceContext-CJyYItqu.cjs +0 -62
- package/dist/featureFlagServiceContext-CPqbnfe3.d.cts +0 -23
- package/dist/featureFlagServiceContext-FBM6DdMJ.js +0 -42
- package/dist/featureFlagServiceContext-mFEI_SIk.d.ts +0 -23
- package/dist/featureGates-KEwAL8p_.js +0 -26
- package/dist/featureGates-qU_ulhpC.cjs +0 -32
- package/dist/frontendConfig-DPpzM5cz.d.cts +0 -860
- package/dist/frontendConfig-msK69LYN.d.ts +0 -860
- package/dist/globalSearch-BOG3wmck.cjs +0 -39
- package/dist/globalSearch-BQEX-2Ml.js +0 -14
- package/dist/graphql-CkxgqsXP.js +0 -48
- package/dist/graphql-i3dtpVTl.cjs +0 -71
- package/dist/graphqlConfig-BnfE0ql5.cjs +0 -39
- package/dist/graphqlConfig-CZGjJ8hP.js +0 -14
- package/dist/graphqlContext-1BkFjchL.d.cts +0 -28
- package/dist/graphqlContext-B1vmNkWT.d.ts +0 -28
- package/dist/graphqlContext-C0hG5Uer.js +0 -96
- package/dist/graphqlContext-Dddy7mr7.cjs +0 -111
- package/dist/index--9_c4tze.d.ts +0 -9
- package/dist/index-A0HvA68Y.d.cts +0 -1
- package/dist/index-BEpDGqnz.d.cts +0 -41
- package/dist/index-BNHIIgYk.d.ts +0 -24
- package/dist/index-Bb3zXP0P.d.ts +0 -673
- package/dist/index-Bq0xKgFw.d.cts +0 -186
- package/dist/index-CCboEuTO.d.cts +0 -24
- package/dist/index-CESxqFso.d.cts +0 -228
- package/dist/index-D7htGSQC.d.ts +0 -44
- package/dist/index-DM_5fh8c.d.ts +0 -101
- package/dist/index-DNVvRcKu.d.ts +0 -1
- package/dist/index-DU7uw0ba.d.cts +0 -101
- package/dist/index-DXTWZLEm.d.cts +0 -673
- package/dist/index-DZtnHhlr.d.cts +0 -9
- package/dist/index-DeLfV7w5.d.ts +0 -186
- package/dist/index-Dtw-hJdt.d.ts +0 -35
- package/dist/index-Dxpscrvz.d.ts +0 -228
- package/dist/index-ErVcwUnR.d.ts +0 -41
- package/dist/index-OkKEOL6H.d.cts +0 -44
- package/dist/index-hAqp0oYb.d.cts +0 -35
- package/dist/localStorageContext-BPZ82q-G.js +0 -95
- package/dist/localStorageContext-NRP-CdmF.cjs +0 -115
- package/dist/locators-DxYdak1F.cjs +0 -131
- package/dist/logger-TBIl4uIH.cjs +0 -26
- package/dist/logger-W3lqg-4b.js +0 -20
- package/dist/models-CE5YjbzE.js +0 -1286
- package/dist/models-CJy0mOoW.cjs +0 -1521
- package/dist/newOrgConfigAtom-CPA6Gp6n.cjs +0 -15
- package/dist/newOrgConfigAtom-DEUj6H-p.js +0 -8
- package/dist/newOrgConfigContext-CmQ-7Trc.d.ts +0 -16
- package/dist/newOrgConfigContext-Deofb8_o.d.cts +0 -16
- package/dist/newOrgConfigContext-Dg2gtrwB.cjs +0 -68
- package/dist/newOrgConfigContext-P4xkie1E.js +0 -53
- package/dist/nodeSelector-B5NfnUHv.d.ts +0 -31
- package/dist/nodeSelector-vKB44CDB.d.cts +0 -31
- package/dist/org-B_cWn2bt.cjs +0 -43
- package/dist/org-h32_LSEb.js +0 -12
- package/dist/orgAnalyticsConfig-Bm23fw4s.cjs +0 -39
- package/dist/orgAnalyticsConfig-CpBmga08.js +0 -14
- package/dist/responseGenerics-D9bS-Dd6.d.ts +0 -148
- package/dist/responseGenerics-DWLV09cQ.d.cts +0 -148
- package/dist/search-BRBqhum7.js +0 -126
- package/dist/search-Bpd_wxaK.cjs +0 -205
- package/dist/search-filter-types-BItKtezf.d.cts +0 -102
- package/dist/search-filter-types-CGFhksO3.d.ts +0 -102
- package/dist/searchContext-CitUyTLP.js +0 -129
- package/dist/searchContext-D5_iwZ0f.cjs +0 -145
- package/dist/searchServiceAdapter-BGlvoZFE.cjs +0 -34
- package/dist/searchServiceAdapter-Db6jEcJs.js +0 -16
- package/dist/sessionStorageContext-B6FsNKjj.cjs +0 -66
- package/dist/sessionStorageContext-CLYCm83p.js +0 -52
- package/dist/shopifyUrlContext-CxjV3qvH.cjs +0 -75
- package/dist/shopifyUrlContext-D2btP_lY.js +0 -61
- package/dist/spiffyWidgets-DK7Ekcy7.d.cts +0 -21
- package/dist/spiffyWidgets-MTUAQq_u.d.ts +0 -21
- package/dist/systemSettingsContext-DF0jSq9m.js +0 -39
- package/dist/systemSettingsContext-dmE1v6w8.cjs +0 -60
- package/dist/test-types-BEml_bm3.d.ts +0 -40
- package/dist/test-types-Dsu8RJZu.d.cts +0 -40
- package/dist/types-4LQ7LUCk.d.ts +0 -10
- package/dist/types-BegmH0S1.d.ts +0 -60
- package/dist/types-BuvXXGxE.cjs +0 -48
- package/dist/types-CKPddlfS.cjs +0 -0
- package/dist/types-CtUb63bt.js +0 -76
- package/dist/types-DFsSqmWx.d.cts +0 -10
- package/dist/types-DWorwfS-.d.cts +0 -60
- package/dist/types-DXnG1tV0.js +0 -30
- package/dist/types-Dc6hx6ei.js +0 -1
- package/dist/types-UUvB6h05.cjs +0 -106
- package/dist/types.cjs +0 -0
- package/dist/types.d.cts +0 -15
- package/dist/types.d.ts +0 -15
- package/dist/types.js +0 -1
- package/dist/unsupportedProductExceptions-DGENUnEA.cjs +0 -32
- package/dist/unsupportedProductExceptions-uQuuelOs.js +0 -20
- package/dist/urlsParser-COzMdJaX.cjs +0 -78
- package/dist/urlsParser-DxjoLj98.js +0 -42
- package/dist/useAmplitudeOperations-Cr03Hlk6.js +0 -34
- package/dist/useAmplitudeOperations-DzFMBUU_.cjs +0 -41
- package/dist/useAppDetails-BCvirEDu.cjs +0 -38
- package/dist/useAppDetails-CiBg_ni5.js +0 -30
- package/dist/useGraphQLConfig-8oeOwWRP.js +0 -63
- package/dist/useGraphQLConfig-CO9lCk8b.cjs +0 -76
- package/dist/useIntersection-CZSEBUbv.js +0 -21
- package/dist/useIntersection-DSDREfj6.cjs +0 -28
- package/dist/useMessageInterceptor-BjGP_uXm.js +0 -25
- package/dist/useMessageInterceptor-arAqUq1Q.cjs +0 -33
- package/dist/userIdentityContext-BgbcZ_P2.js +0 -126
- package/dist/userIdentityContext-C6kApbuk.d.ts +0 -20
- package/dist/userIdentityContext-CrWUNCrF.cjs +0 -143
- package/dist/userIdentityContext-kU1PIo8K.d.cts +0 -20
- package/dist/utilityTypes-B2KuRn37.js +0 -1
- package/dist/utilityTypes-BGbL2WTP.cjs +0 -0
- package/dist/utils-BRkGP1eb.d.ts +0 -15
- package/dist/utils-BXfzt6tu.cjs +0 -715
- package/dist/utils-C2HshI4X.d.cts +0 -22
- package/dist/utils-CDw74BCO.cjs +0 -33
- package/dist/utils-Cv772xzd.js +0 -606
- package/dist/utils-CvLmSsUj.cjs +0 -29
- package/dist/utils-D82gfbgU.js +0 -23
- package/dist/utils-DCrwX6FT.d.cts +0 -15
- package/dist/utils-DIvMgPe8.js +0 -27
- package/dist/utils-D_kATUj6.js +0 -92
- package/dist/utils-aa1jK0Xe.d.ts +0 -22
- package/dist/utils-hYTjy7hJ.cjs +0 -130
|
@@ -1,37 +1,37 @@
|
|
|
1
|
-
import React from
|
|
2
|
-
import { render, screen, waitFor, act } from
|
|
3
|
-
import userEvent from
|
|
4
|
-
import { Provider, useAtomValue, useSetAtom } from
|
|
5
|
-
import { useSearch } from
|
|
6
|
-
import { AmplitudeProvider } from
|
|
7
|
-
import { EnviveConfigProvider } from
|
|
8
|
-
import { LocalStorageProvider } from
|
|
9
|
-
import { GraphQLProvider } from
|
|
10
|
-
import { UserIdentityProvider } from
|
|
11
|
-
import { FeatureFlagServiceProvider } from
|
|
12
|
-
import { NewOrgConfigProvider } from
|
|
13
|
-
import { SearchProvider } from
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { render, screen, waitFor, act } from '@testing-library/react';
|
|
3
|
+
import userEvent from '@testing-library/user-event';
|
|
4
|
+
import { Provider, useAtomValue, useSetAtom } from 'jotai';
|
|
5
|
+
import { useSearch } from '../useSearch';
|
|
6
|
+
import { AmplitudeProvider } from 'src/contexts/amplitudeContext/amplitudeContext';
|
|
7
|
+
import { EnviveConfigProvider } from 'src/contexts/enviveConfigContext/enviveConfigContext';
|
|
8
|
+
import { LocalStorageProvider } from 'src/contexts/localStorageContext/localStorageContext';
|
|
9
|
+
import { GraphQLProvider } from 'src/contexts/graphqlContext/graphqlContext';
|
|
10
|
+
import { UserIdentityProvider } from 'src/contexts/userIdentityContext/userIdentityContext';
|
|
11
|
+
import { FeatureFlagServiceProvider } from 'src/contexts/featureFlagServiceContext/featureFlagServiceContext';
|
|
12
|
+
import { NewOrgConfigProvider } from 'src/contexts/newOrgConfigContext/newOrgConfigContext';
|
|
13
|
+
import { SearchProvider } from 'src/contexts/searchContext/searchContext';
|
|
14
14
|
import {
|
|
15
15
|
searchAtom,
|
|
16
16
|
searchParamsAtom,
|
|
17
17
|
searchSelectedFiltersAtom,
|
|
18
18
|
searchProductSortingAtom,
|
|
19
19
|
searchFiltersAtom,
|
|
20
|
-
} from
|
|
21
|
-
import { isFilterOpenAtom } from
|
|
22
|
-
import { ProductSorting } from
|
|
23
|
-
import { SearchResult } from
|
|
24
|
-
import { SearchResultsState } from
|
|
25
|
-
import { createFilterOption } from
|
|
26
|
-
import { SearchFilterDatum } from
|
|
27
|
-
import { SearchResponseProduct } from
|
|
20
|
+
} from 'src/atoms/search';
|
|
21
|
+
import { isFilterOpenAtom } from 'src/atoms/globalSearch/globalSearch';
|
|
22
|
+
import { ProductSorting } from 'src/atoms/search/types';
|
|
23
|
+
import { SearchResult } from 'src/application/models/api/search';
|
|
24
|
+
import { SearchResultsState } from 'src/hooks/utils';
|
|
25
|
+
import { createFilterOption } from 'src/atoms/search';
|
|
26
|
+
import { SearchFilterDatum } from 'src/types/search-filter-types';
|
|
27
|
+
import { SearchResponseProduct } from '@spiffy-ai/commerce-api-client';
|
|
28
28
|
|
|
29
29
|
// Mock dependencies
|
|
30
|
-
vi.mock(
|
|
30
|
+
vi.mock('src/hooks/TrackComponentVisibleEvent/useTrackComponentVisibleEvent', () => ({
|
|
31
31
|
useTrackComponentVisibleEvent: vi.fn(),
|
|
32
32
|
}));
|
|
33
33
|
|
|
34
|
-
vi.mock(
|
|
34
|
+
vi.mock('src/hooks/Intersection/useIntersection', () => ({
|
|
35
35
|
useIntersection: vi.fn(() => false),
|
|
36
36
|
}));
|
|
37
37
|
|
|
@@ -40,7 +40,7 @@ const mockTrack = vi.fn();
|
|
|
40
40
|
const mockInit = vi.fn();
|
|
41
41
|
const mockAdd = vi.fn();
|
|
42
42
|
|
|
43
|
-
vi.mock(
|
|
43
|
+
vi.mock('@amplitude/analytics-browser', () => ({
|
|
44
44
|
createInstance: vi.fn(() => ({
|
|
45
45
|
track: mockTrack,
|
|
46
46
|
init: mockInit,
|
|
@@ -49,65 +49,63 @@ vi.mock("@amplitude/analytics-browser", () => ({
|
|
|
49
49
|
}));
|
|
50
50
|
|
|
51
51
|
// Mock useAppDetails
|
|
52
|
-
vi.mock(
|
|
52
|
+
vi.mock('src/hooks/AppDetails/useAppDetails', () => ({
|
|
53
53
|
useAppDetails: vi.fn(() => ({
|
|
54
|
-
orgId:
|
|
55
|
-
userId:
|
|
56
|
-
orgShortName:
|
|
57
|
-
chatId:
|
|
58
|
-
source:
|
|
59
|
-
env:
|
|
54
|
+
orgId: 'test-org-id',
|
|
55
|
+
userId: 'test-user-id',
|
|
56
|
+
orgShortName: 'test-org',
|
|
57
|
+
chatId: 'test-chat-id',
|
|
58
|
+
source: 'app',
|
|
59
|
+
env: 'dev',
|
|
60
60
|
variantInfo: {},
|
|
61
61
|
})),
|
|
62
62
|
}));
|
|
63
63
|
|
|
64
64
|
// Mock useEnviveConfig
|
|
65
|
-
vi.mock(
|
|
66
|
-
const actual = await vi.importActual(
|
|
67
|
-
"src/contexts/enviveConfigContext/enviveConfigContext"
|
|
68
|
-
);
|
|
65
|
+
vi.mock('src/contexts/enviveConfigContext/enviveConfigContext', async () => {
|
|
66
|
+
const actual = await vi.importActual('src/contexts/enviveConfigContext/enviveConfigContext');
|
|
69
67
|
return {
|
|
70
68
|
...actual,
|
|
71
69
|
useEnviveConfig: vi.fn(() => ({
|
|
72
|
-
orgLevelApiKey:
|
|
73
|
-
publicKey:
|
|
74
|
-
baseUrl:
|
|
70
|
+
orgLevelApiKey: 'test-api-key',
|
|
71
|
+
publicKey: 'test-public-key',
|
|
72
|
+
baseUrl: 'https://test-api.example.com',
|
|
75
73
|
})),
|
|
76
74
|
};
|
|
77
75
|
});
|
|
78
76
|
|
|
79
77
|
// Mock useColorsAndFrontendConfig
|
|
80
|
-
vi.mock(
|
|
78
|
+
vi.mock('src/hooks/GraphQLConfig/useGraphQLConfig', () => ({
|
|
81
79
|
useColorsAndFrontendConfig: vi.fn(() => ({
|
|
82
80
|
data: {
|
|
83
|
-
colorsConfig: { accentPrimary:
|
|
81
|
+
colorsConfig: { accentPrimary: '#FF0000' },
|
|
84
82
|
frontendConfig: {
|
|
85
83
|
uiConfigs: {
|
|
86
84
|
productCardConfig: {
|
|
87
|
-
variant:
|
|
88
|
-
hoverVariant:
|
|
89
|
-
layoutVariant:
|
|
85
|
+
variant: 'minimal',
|
|
86
|
+
hoverVariant: 'none',
|
|
87
|
+
layoutVariant: 'square',
|
|
90
88
|
},
|
|
91
89
|
searchConfig: {
|
|
92
|
-
recommendedProductsHeading:
|
|
93
|
-
searchOverlayHeading:
|
|
90
|
+
recommendedProductsHeading: 'Suggested Products',
|
|
91
|
+
searchOverlayHeading: 'What can I help you find?',
|
|
94
92
|
recommendedProducts: [],
|
|
95
93
|
searchFilterConfig: [
|
|
96
94
|
{
|
|
97
|
-
filterId:
|
|
95
|
+
filterId: 'category',
|
|
98
96
|
type: 'dynamic',
|
|
99
|
-
displayName:
|
|
100
|
-
attribute:
|
|
97
|
+
displayName: 'Category',
|
|
98
|
+
attribute: 'category',
|
|
101
99
|
sorting: {
|
|
102
|
-
type:
|
|
100
|
+
type: 'alphabetic',
|
|
103
101
|
},
|
|
104
102
|
items: [
|
|
105
103
|
{
|
|
106
|
-
filterItemId:
|
|
107
|
-
displayName:
|
|
104
|
+
filterItemId: 'shoes',
|
|
105
|
+
displayName: 'Shoes',
|
|
108
106
|
},
|
|
109
107
|
],
|
|
110
|
-
}
|
|
108
|
+
},
|
|
111
109
|
],
|
|
112
110
|
additiveDynamicFilters: false,
|
|
113
111
|
},
|
|
@@ -122,7 +120,7 @@ vi.mock("src/hooks/GraphQLConfig/useGraphQLConfig", () => ({
|
|
|
122
120
|
|
|
123
121
|
// Mock commerce-api-client
|
|
124
122
|
const mockV1SearchQueryGet = vi.fn();
|
|
125
|
-
vi.mock(
|
|
123
|
+
vi.mock('@spiffy-ai/commerce-api-client', () => ({
|
|
126
124
|
SearchApi: vi.fn(function SearchApi() {
|
|
127
125
|
return {
|
|
128
126
|
v1SearchQueryGet: mockV1SearchQueryGet,
|
|
@@ -130,12 +128,12 @@ vi.mock("@spiffy-ai/commerce-api-client", () => ({
|
|
|
130
128
|
}),
|
|
131
129
|
Configuration: vi.fn(function Configuration() {}),
|
|
132
130
|
ResponseCategory: {
|
|
133
|
-
Product:
|
|
131
|
+
Product: 'product',
|
|
134
132
|
},
|
|
135
133
|
}));
|
|
136
134
|
|
|
137
135
|
// Mock Logger
|
|
138
|
-
vi.mock(
|
|
136
|
+
vi.mock('src/application/logging/logger', () => ({
|
|
139
137
|
default: {
|
|
140
138
|
logInfo: vi.fn(),
|
|
141
139
|
logWarn: vi.fn(),
|
|
@@ -145,7 +143,7 @@ vi.mock("src/application/logging/logger", () => ({
|
|
|
145
143
|
}));
|
|
146
144
|
|
|
147
145
|
// Mock search service adapter
|
|
148
|
-
vi.mock(
|
|
146
|
+
vi.mock('src/atoms/search/searchServiceAdapter', () => ({
|
|
149
147
|
setSearchServiceFunction: vi.fn(),
|
|
150
148
|
clearSearchServiceFunction: vi.fn(),
|
|
151
149
|
getSearchServiceFunction: vi.fn(),
|
|
@@ -153,7 +151,7 @@ vi.mock("src/atoms/search/searchServiceAdapter", () => ({
|
|
|
153
151
|
|
|
154
152
|
// Mock crypto.subtle.digest
|
|
155
153
|
const mockDigest = vi.fn().mockResolvedValue(new Uint8Array(32).fill(0));
|
|
156
|
-
Object.defineProperty(global,
|
|
154
|
+
Object.defineProperty(global, 'crypto', {
|
|
157
155
|
value: {
|
|
158
156
|
subtle: {
|
|
159
157
|
digest: mockDigest,
|
|
@@ -163,45 +161,43 @@ Object.defineProperty(global, "crypto", {
|
|
|
163
161
|
});
|
|
164
162
|
|
|
165
163
|
// Mock EventsDispatcher
|
|
166
|
-
vi.mock(
|
|
164
|
+
vi.mock('src/events', () => ({
|
|
167
165
|
EventsDispatcher: {
|
|
168
166
|
dispatch: vi.fn(),
|
|
169
167
|
},
|
|
170
168
|
SpiffyEvent: {
|
|
171
|
-
AMPLITUDE_EVENT:
|
|
169
|
+
AMPLITUDE_EVENT: 'AMPLITUDE_EVENT',
|
|
172
170
|
},
|
|
173
171
|
}));
|
|
174
172
|
|
|
175
173
|
const mockSearchData: SearchResult = {
|
|
176
174
|
products: [
|
|
177
175
|
{
|
|
178
|
-
id:
|
|
179
|
-
title:
|
|
176
|
+
id: '1',
|
|
177
|
+
title: 'Test Product 1',
|
|
180
178
|
price: 100,
|
|
181
179
|
filters: {
|
|
182
|
-
category: [
|
|
180
|
+
category: ['shoes'],
|
|
183
181
|
},
|
|
184
|
-
url:
|
|
182
|
+
url: 'https://example.com/product1',
|
|
185
183
|
} as SearchResponseProduct,
|
|
186
184
|
{
|
|
187
|
-
id:
|
|
188
|
-
title:
|
|
185
|
+
id: '2',
|
|
186
|
+
title: 'Test Product 2',
|
|
189
187
|
price: 200,
|
|
190
188
|
filters: {
|
|
191
|
-
category: [
|
|
189
|
+
category: ['other'],
|
|
192
190
|
},
|
|
193
|
-
url:
|
|
191
|
+
url: 'https://example.com/product2',
|
|
194
192
|
} as SearchResponseProduct,
|
|
195
193
|
],
|
|
196
|
-
filters: [
|
|
194
|
+
filters: ['brand', 'color'],
|
|
197
195
|
totalProductCount: 2,
|
|
198
|
-
searchResponseId:
|
|
196
|
+
searchResponseId: 'test-response-id',
|
|
199
197
|
};
|
|
200
198
|
|
|
201
199
|
// Test component that uses the hook
|
|
202
|
-
const TestComponent: React.FC<{ allowRedirect?: boolean }> = ({
|
|
203
|
-
allowRedirect = false,
|
|
204
|
-
}) => {
|
|
200
|
+
const TestComponent: React.FC<{ allowRedirect?: boolean }> = ({ allowRedirect = false }) => {
|
|
205
201
|
const searchHook = useSearch({ allowRedirect });
|
|
206
202
|
|
|
207
203
|
return (
|
|
@@ -209,34 +205,18 @@ const TestComponent: React.FC<{ allowRedirect?: boolean }> = ({
|
|
|
209
205
|
<div data-testid="search-text">{searchHook.searchText}</div>
|
|
210
206
|
<div data-testid="query">{searchHook.query}</div>
|
|
211
207
|
<div data-testid="is-loading">{searchHook.isLoadingSearch.toString()}</div>
|
|
212
|
-
<div data-testid="search-results-state">
|
|
213
|
-
|
|
214
|
-
</div>
|
|
215
|
-
<div data-testid="is-filter-open">
|
|
216
|
-
{searchHook.isFilterOpen.toString()}
|
|
217
|
-
</div>
|
|
218
|
-
<div data-testid="product-list-length">
|
|
219
|
-
{searchHook.productList.length}
|
|
220
|
-
</div>
|
|
208
|
+
<div data-testid="search-results-state">{searchHook.searchResultsState}</div>
|
|
209
|
+
<div data-testid="is-filter-open">{searchHook.isFilterOpen.toString()}</div>
|
|
210
|
+
<div data-testid="product-list-length">{searchHook.productList.length}</div>
|
|
221
211
|
<div data-testid="filter-button-text">{searchHook.filterButtonText}</div>
|
|
222
|
-
<div data-testid="merchant-short-name">
|
|
223
|
-
|
|
224
|
-
</div>
|
|
225
|
-
<div data-testid="recommended-products-heading">
|
|
226
|
-
{searchHook.recommendedProductsHeading}
|
|
227
|
-
</div>
|
|
228
|
-
<div data-testid="search-overlay-heading">
|
|
229
|
-
{searchHook.searchOverlayHeading}
|
|
230
|
-
</div>
|
|
212
|
+
<div data-testid="merchant-short-name">{searchHook.merchantShortName}</div>
|
|
213
|
+
<div data-testid="recommended-products-heading">{searchHook.recommendedProductsHeading}</div>
|
|
214
|
+
<div data-testid="search-overlay-heading">{searchHook.searchOverlayHeading}</div>
|
|
231
215
|
<div data-testid="available-dynamic-filters-count">
|
|
232
216
|
{searchHook.availableDynamicFilters.length}
|
|
233
217
|
</div>
|
|
234
|
-
<div data-testid="selected-filters-count">
|
|
235
|
-
|
|
236
|
-
</div>
|
|
237
|
-
<div data-testid="autocomplete-results-count">
|
|
238
|
-
{searchHook.autocompleteResults.length}
|
|
239
|
-
</div>
|
|
218
|
+
<div data-testid="selected-filters-count">{searchHook.selectedFilterOptions.length}</div>
|
|
219
|
+
<div data-testid="autocomplete-results-count">{searchHook.autocompleteResults.length}</div>
|
|
240
220
|
<div data-testid="should-show-autocomplete">
|
|
241
221
|
{searchHook.shouldShowAutocomplete.toString()}
|
|
242
222
|
</div>
|
|
@@ -244,7 +224,7 @@ const TestComponent: React.FC<{ allowRedirect?: boolean }> = ({
|
|
|
244
224
|
<input
|
|
245
225
|
data-testid="search-input"
|
|
246
226
|
value={searchHook.searchText}
|
|
247
|
-
onChange={
|
|
227
|
+
onChange={e => searchHook.onSearchInputChange(e.target.value)}
|
|
248
228
|
onFocus={searchHook.onSearchInputFocus}
|
|
249
229
|
onBlur={searchHook.onSearchInputBlur}
|
|
250
230
|
onKeyDown={searchHook.onKeyDown}
|
|
@@ -284,8 +264,7 @@ const TestComponent: React.FC<{ allowRedirect?: boolean }> = ({
|
|
|
284
264
|
onClick={() =>
|
|
285
265
|
searchHook.onToggleDynamicFilter({
|
|
286
266
|
filter: searchHook.availableDynamicFilters[0].name,
|
|
287
|
-
dynamicFilterDisplayName:
|
|
288
|
-
searchHook.availableDynamicFilters[0].displayName,
|
|
267
|
+
dynamicFilterDisplayName: searchHook.availableDynamicFilters[0].displayName,
|
|
289
268
|
})
|
|
290
269
|
}
|
|
291
270
|
>
|
|
@@ -312,17 +291,13 @@ const TestComponent: React.FC<{ allowRedirect?: boolean }> = ({
|
|
|
312
291
|
{searchHook.selectedFilterOptions.length > 0 && (
|
|
313
292
|
<button
|
|
314
293
|
data-testid="remove-filter"
|
|
315
|
-
onClick={() =>
|
|
316
|
-
searchHook.onRemoveFilter(searchHook.selectedFilterOptions[0])
|
|
317
|
-
}
|
|
294
|
+
onClick={() => searchHook.onRemoveFilter(searchHook.selectedFilterOptions[0])}
|
|
318
295
|
>
|
|
319
296
|
Remove Filter
|
|
320
297
|
</button>
|
|
321
298
|
)}
|
|
322
299
|
|
|
323
|
-
<div data-testid="search-results-ref">
|
|
324
|
-
Results Container
|
|
325
|
-
</div>
|
|
300
|
+
<div data-testid="search-results-ref">Results Container</div>
|
|
326
301
|
</div>
|
|
327
302
|
);
|
|
328
303
|
};
|
|
@@ -337,7 +312,7 @@ const AtomManipulator: React.FC<{
|
|
|
337
312
|
isFilterOpen?: boolean;
|
|
338
313
|
}> = ({
|
|
339
314
|
searchData = null,
|
|
340
|
-
query =
|
|
315
|
+
query = '',
|
|
341
316
|
loading = false,
|
|
342
317
|
selectedFilters = [],
|
|
343
318
|
sorting = ProductSorting.FEATURED,
|
|
@@ -390,7 +365,7 @@ const TestWrapper: React.FC<{
|
|
|
390
365
|
}> = ({
|
|
391
366
|
children,
|
|
392
367
|
searchData = null,
|
|
393
|
-
query =
|
|
368
|
+
query = '',
|
|
394
369
|
loading = false,
|
|
395
370
|
selectedFilters = [],
|
|
396
371
|
sorting = ProductSorting.FEATURED,
|
|
@@ -440,10 +415,10 @@ const TestWrapper: React.FC<{
|
|
|
440
415
|
);
|
|
441
416
|
};
|
|
442
417
|
|
|
443
|
-
describe(
|
|
418
|
+
describe('useSearch', () => {
|
|
444
419
|
beforeEach(() => {
|
|
445
420
|
vi.clearAllMocks();
|
|
446
|
-
if (typeof localStorage !==
|
|
421
|
+
if (typeof localStorage !== 'undefined') {
|
|
447
422
|
localStorage.clear();
|
|
448
423
|
}
|
|
449
424
|
mockTrack.mockClear();
|
|
@@ -452,86 +427,80 @@ describe("useSearch", () => {
|
|
|
452
427
|
mockDigest.mockResolvedValue(new Uint8Array(32).fill(0));
|
|
453
428
|
});
|
|
454
429
|
|
|
455
|
-
describe(
|
|
456
|
-
it(
|
|
430
|
+
describe('Initial State', () => {
|
|
431
|
+
it('should initialize with default values', async () => {
|
|
457
432
|
render(
|
|
458
433
|
<TestWrapper>
|
|
459
434
|
<TestComponent />
|
|
460
|
-
</TestWrapper
|
|
435
|
+
</TestWrapper>,
|
|
461
436
|
);
|
|
462
437
|
|
|
463
438
|
await waitFor(() => {
|
|
464
|
-
expect(screen.getByTestId(
|
|
439
|
+
expect(screen.getByTestId('test-component')).toBeInTheDocument();
|
|
465
440
|
});
|
|
466
441
|
|
|
467
|
-
expect(screen.getByTestId(
|
|
468
|
-
expect(screen.getByTestId(
|
|
469
|
-
expect(screen.getByTestId(
|
|
470
|
-
expect(screen.getByTestId(
|
|
471
|
-
String(SearchResultsState.NoResults)
|
|
472
|
-
);
|
|
473
|
-
expect(screen.getByTestId("is-filter-open")).toHaveTextContent("false");
|
|
474
|
-
expect(screen.getByTestId("product-list-length")).toHaveTextContent("0");
|
|
475
|
-
expect(screen.getByTestId("filter-button-text")).toHaveTextContent(
|
|
476
|
-
"Filter & Sort"
|
|
477
|
-
);
|
|
478
|
-
expect(screen.getByTestId("merchant-short-name")).toHaveTextContent(
|
|
479
|
-
"test-org"
|
|
442
|
+
expect(screen.getByTestId('search-text')).toHaveTextContent('');
|
|
443
|
+
expect(screen.getByTestId('query')).toHaveTextContent('');
|
|
444
|
+
expect(screen.getByTestId('is-loading')).toHaveTextContent('false');
|
|
445
|
+
expect(screen.getByTestId('search-results-state')).toHaveTextContent(
|
|
446
|
+
String(SearchResultsState.NoResults),
|
|
480
447
|
);
|
|
448
|
+
expect(screen.getByTestId('is-filter-open')).toHaveTextContent('false');
|
|
449
|
+
expect(screen.getByTestId('product-list-length')).toHaveTextContent('0');
|
|
450
|
+
expect(screen.getByTestId('filter-button-text')).toHaveTextContent('Filter & Sort');
|
|
451
|
+
expect(screen.getByTestId('merchant-short-name')).toHaveTextContent('test-org');
|
|
481
452
|
});
|
|
482
453
|
|
|
483
|
-
it(
|
|
454
|
+
it('should initialize with query from search params', async () => {
|
|
484
455
|
render(
|
|
485
456
|
<TestWrapper query="test query">
|
|
486
457
|
<TestComponent />
|
|
487
|
-
</TestWrapper
|
|
458
|
+
</TestWrapper>,
|
|
488
459
|
);
|
|
489
460
|
|
|
490
461
|
await waitFor(() => {
|
|
491
|
-
expect(screen.getByTestId(
|
|
462
|
+
expect(screen.getByTestId('query')).toHaveTextContent('test query');
|
|
492
463
|
});
|
|
493
464
|
});
|
|
494
465
|
});
|
|
495
466
|
|
|
496
|
-
describe(
|
|
497
|
-
it(
|
|
467
|
+
describe('Search Input', () => {
|
|
468
|
+
it('should update search text when input changes', async () => {
|
|
498
469
|
const user = userEvent.setup();
|
|
499
470
|
render(
|
|
500
471
|
<TestWrapper>
|
|
501
472
|
<TestComponent />
|
|
502
|
-
</TestWrapper
|
|
473
|
+
</TestWrapper>,
|
|
503
474
|
);
|
|
504
475
|
|
|
505
476
|
await waitFor(() => {
|
|
506
|
-
expect(screen.getByTestId(
|
|
477
|
+
expect(screen.getByTestId('search-input')).toBeInTheDocument();
|
|
507
478
|
});
|
|
508
479
|
|
|
509
|
-
const input = screen.getByTestId(
|
|
480
|
+
const input = screen.getByTestId('search-input') as HTMLInputElement;
|
|
510
481
|
|
|
511
482
|
await act(async () => {
|
|
512
|
-
await user.type(input,
|
|
483
|
+
await user.type(input, 'new search');
|
|
513
484
|
});
|
|
514
485
|
|
|
515
486
|
await waitFor(() => {
|
|
516
|
-
expect(screen.getByTestId(
|
|
517
|
-
"new search"
|
|
518
|
-
);
|
|
487
|
+
expect(screen.getByTestId('search-text')).toHaveTextContent('new search');
|
|
519
488
|
});
|
|
520
489
|
});
|
|
521
490
|
|
|
522
|
-
it(
|
|
491
|
+
it('should handle search input focus', async () => {
|
|
523
492
|
const user = userEvent.setup();
|
|
524
493
|
render(
|
|
525
494
|
<TestWrapper>
|
|
526
495
|
<TestComponent />
|
|
527
|
-
</TestWrapper
|
|
496
|
+
</TestWrapper>,
|
|
528
497
|
);
|
|
529
498
|
|
|
530
499
|
await waitFor(() => {
|
|
531
|
-
expect(screen.getByTestId(
|
|
500
|
+
expect(screen.getByTestId('search-input')).toBeInTheDocument();
|
|
532
501
|
});
|
|
533
502
|
|
|
534
|
-
const input = screen.getByTestId(
|
|
503
|
+
const input = screen.getByTestId('search-input') as HTMLInputElement;
|
|
535
504
|
|
|
536
505
|
await act(async () => {
|
|
537
506
|
await user.click(input);
|
|
@@ -541,173 +510,176 @@ describe("useSearch", () => {
|
|
|
541
510
|
expect(input).toBeInTheDocument();
|
|
542
511
|
});
|
|
543
512
|
|
|
544
|
-
it(
|
|
513
|
+
it('should handle search submission', async () => {
|
|
545
514
|
const user = userEvent.setup();
|
|
546
515
|
render(
|
|
547
516
|
<TestWrapper>
|
|
548
517
|
<TestComponent />
|
|
549
|
-
</TestWrapper
|
|
518
|
+
</TestWrapper>,
|
|
550
519
|
);
|
|
551
520
|
|
|
552
521
|
await waitFor(() => {
|
|
553
|
-
expect(screen.getByTestId(
|
|
522
|
+
expect(screen.getByTestId('submit-search')).toBeInTheDocument();
|
|
554
523
|
});
|
|
555
524
|
|
|
556
525
|
await act(async () => {
|
|
557
|
-
await user.click(screen.getByTestId(
|
|
526
|
+
await user.click(screen.getByTestId('submit-search'));
|
|
558
527
|
});
|
|
559
528
|
|
|
560
529
|
// Search submission should be handled
|
|
561
|
-
expect(screen.getByTestId(
|
|
530
|
+
expect(screen.getByTestId('submit-search')).toBeInTheDocument();
|
|
562
531
|
});
|
|
563
532
|
});
|
|
564
533
|
|
|
565
|
-
describe(
|
|
566
|
-
it(
|
|
534
|
+
describe('Filter Operations', () => {
|
|
535
|
+
it('should toggle filter open state', async () => {
|
|
567
536
|
const user = userEvent.setup();
|
|
568
537
|
render(
|
|
569
538
|
<TestWrapper>
|
|
570
539
|
<TestComponent />
|
|
571
|
-
</TestWrapper
|
|
540
|
+
</TestWrapper>,
|
|
572
541
|
);
|
|
573
542
|
|
|
574
543
|
await waitFor(() => {
|
|
575
|
-
expect(screen.getByTestId(
|
|
544
|
+
expect(screen.getByTestId('toggle-filter')).toBeInTheDocument();
|
|
576
545
|
});
|
|
577
546
|
|
|
578
|
-
expect(screen.getByTestId(
|
|
547
|
+
expect(screen.getByTestId('is-filter-open')).toHaveTextContent('false');
|
|
579
548
|
|
|
580
549
|
await act(async () => {
|
|
581
|
-
await user.click(screen.getByTestId(
|
|
550
|
+
await user.click(screen.getByTestId('toggle-filter'));
|
|
582
551
|
});
|
|
583
552
|
|
|
584
553
|
await waitFor(() => {
|
|
585
|
-
expect(screen.getByTestId(
|
|
554
|
+
expect(screen.getByTestId('is-filter-open')).toHaveTextContent('true');
|
|
586
555
|
});
|
|
587
556
|
});
|
|
588
557
|
|
|
589
|
-
it(
|
|
558
|
+
it('should clear all filters', async () => {
|
|
590
559
|
const user = userEvent.setup();
|
|
591
|
-
const selectedFilter = createFilterOption(
|
|
560
|
+
const selectedFilter = createFilterOption('category', 'shoes', 'Shoes');
|
|
592
561
|
render(
|
|
593
562
|
<TestWrapper selectedFilters={[selectedFilter]}>
|
|
594
563
|
<TestComponent />
|
|
595
|
-
</TestWrapper
|
|
564
|
+
</TestWrapper>,
|
|
596
565
|
);
|
|
597
566
|
|
|
598
567
|
await waitFor(() => {
|
|
599
|
-
expect(screen.getByTestId(
|
|
600
|
-
"1"
|
|
601
|
-
);
|
|
568
|
+
expect(screen.getByTestId('selected-filters-count')).toHaveTextContent('1');
|
|
602
569
|
});
|
|
603
570
|
|
|
604
571
|
await act(async () => {
|
|
605
|
-
await user.click(screen.getByTestId(
|
|
572
|
+
await user.click(screen.getByTestId('clear-all-filters'));
|
|
606
573
|
});
|
|
607
574
|
|
|
608
575
|
await waitFor(() => {
|
|
609
|
-
expect(screen.getByTestId(
|
|
610
|
-
"0"
|
|
611
|
-
);
|
|
576
|
+
expect(screen.getByTestId('selected-filters-count')).toHaveTextContent('0');
|
|
612
577
|
});
|
|
613
578
|
});
|
|
614
579
|
|
|
615
|
-
it(
|
|
616
|
-
const selectedFilter = createFilterOption(
|
|
580
|
+
it('should update filter button text when filters are selected', async () => {
|
|
581
|
+
const selectedFilter = createFilterOption('category', 'shoes', 'Shoes');
|
|
617
582
|
render(
|
|
618
|
-
<TestWrapper
|
|
583
|
+
<TestWrapper
|
|
584
|
+
selectedFilters={[selectedFilter]}
|
|
585
|
+
searchData={mockSearchData}
|
|
586
|
+
>
|
|
619
587
|
<TestComponent />
|
|
620
|
-
</TestWrapper
|
|
588
|
+
</TestWrapper>,
|
|
621
589
|
);
|
|
622
590
|
|
|
623
591
|
await waitFor(() => {
|
|
624
|
-
const filterButtonText = screen.getByTestId(
|
|
625
|
-
|
|
626
|
-
expect(filterButtonText).toContain("Filter & Sort (");
|
|
592
|
+
const filterButtonText = screen.getByTestId('filter-button-text').textContent;
|
|
593
|
+
expect(filterButtonText).toContain('Filter & Sort (');
|
|
627
594
|
});
|
|
628
595
|
});
|
|
629
596
|
});
|
|
630
597
|
|
|
631
|
-
describe(
|
|
632
|
-
|
|
598
|
+
describe('Search Results', () => {
|
|
633
599
|
// TODO: Come back and fix this test later
|
|
634
|
-
it.skip(
|
|
600
|
+
it.skip('should display search results when data is available', async () => {
|
|
635
601
|
render(
|
|
636
|
-
<TestWrapper
|
|
602
|
+
<TestWrapper
|
|
603
|
+
searchData={mockSearchData}
|
|
604
|
+
query="test"
|
|
605
|
+
>
|
|
637
606
|
<TestComponent />
|
|
638
|
-
</TestWrapper
|
|
607
|
+
</TestWrapper>,
|
|
639
608
|
);
|
|
640
609
|
|
|
641
610
|
await waitFor(() => {
|
|
642
|
-
expect(screen.getByTestId(
|
|
643
|
-
String(SearchResultsState.Results)
|
|
611
|
+
expect(screen.getByTestId('search-results-state')).toHaveTextContent(
|
|
612
|
+
String(SearchResultsState.Results),
|
|
644
613
|
);
|
|
645
614
|
});
|
|
646
615
|
|
|
647
|
-
expect(screen.getByTestId(
|
|
616
|
+
expect(screen.getByTestId('product-list-length')).toHaveTextContent('2');
|
|
648
617
|
});
|
|
649
618
|
|
|
650
|
-
it(
|
|
619
|
+
it('should show loading state', async () => {
|
|
651
620
|
render(
|
|
652
|
-
<TestWrapper
|
|
621
|
+
<TestWrapper
|
|
622
|
+
loading={true}
|
|
623
|
+
query="test"
|
|
624
|
+
>
|
|
653
625
|
<TestComponent />
|
|
654
|
-
</TestWrapper
|
|
626
|
+
</TestWrapper>,
|
|
655
627
|
);
|
|
656
628
|
|
|
657
629
|
await waitFor(() => {
|
|
658
|
-
expect(screen.getByTestId(
|
|
630
|
+
expect(screen.getByTestId('is-loading')).toHaveTextContent('true');
|
|
659
631
|
});
|
|
660
632
|
|
|
661
|
-
expect(screen.getByTestId(
|
|
662
|
-
String(SearchResultsState.Loading)
|
|
633
|
+
expect(screen.getByTestId('search-results-state')).toHaveTextContent(
|
|
634
|
+
String(SearchResultsState.Loading),
|
|
663
635
|
);
|
|
664
636
|
});
|
|
665
637
|
|
|
666
|
-
it(
|
|
638
|
+
it('should show no results state when search data is null', async () => {
|
|
667
639
|
render(
|
|
668
|
-
<TestWrapper
|
|
640
|
+
<TestWrapper
|
|
641
|
+
searchData={null}
|
|
642
|
+
loading={false}
|
|
643
|
+
>
|
|
669
644
|
<TestComponent />
|
|
670
|
-
</TestWrapper
|
|
645
|
+
</TestWrapper>,
|
|
671
646
|
);
|
|
672
647
|
|
|
673
648
|
await waitFor(() => {
|
|
674
|
-
expect(screen.getByTestId(
|
|
675
|
-
String(SearchResultsState.NoResults)
|
|
649
|
+
expect(screen.getByTestId('search-results-state')).toHaveTextContent(
|
|
650
|
+
String(SearchResultsState.NoResults),
|
|
676
651
|
);
|
|
677
652
|
});
|
|
678
653
|
});
|
|
679
654
|
|
|
680
655
|
// TODO: Come back and fix this test later
|
|
681
|
-
it.skip(
|
|
656
|
+
it.skip('should display available dynamic filters', async () => {
|
|
682
657
|
const searchDataWithFilters: SearchResult = {
|
|
683
658
|
...mockSearchData,
|
|
684
|
-
filters: [
|
|
659
|
+
filters: ['brand', 'color', 'size'],
|
|
685
660
|
};
|
|
686
661
|
|
|
687
662
|
render(
|
|
688
|
-
<TestWrapper
|
|
663
|
+
<TestWrapper
|
|
664
|
+
searchData={searchDataWithFilters}
|
|
665
|
+
query="test"
|
|
666
|
+
>
|
|
689
667
|
<TestComponent />
|
|
690
|
-
</TestWrapper
|
|
668
|
+
</TestWrapper>,
|
|
691
669
|
);
|
|
692
670
|
|
|
693
671
|
await waitFor(() => {
|
|
694
|
-
expect(
|
|
695
|
-
screen.getByTestId("available-dynamic-filters-count")
|
|
696
|
-
).toHaveTextContent("3");
|
|
672
|
+
expect(screen.getByTestId('available-dynamic-filters-count')).toHaveTextContent('3');
|
|
697
673
|
});
|
|
698
674
|
});
|
|
699
675
|
|
|
700
676
|
// TODO: Come back and fix this test later
|
|
701
|
-
it.skip(
|
|
677
|
+
it.skip('should exclude selected dynamic filters from available filters', async () => {
|
|
702
678
|
const searchDataWithFilters: SearchResult = {
|
|
703
679
|
...mockSearchData,
|
|
704
|
-
filters: [
|
|
680
|
+
filters: ['brand', 'color'],
|
|
705
681
|
};
|
|
706
|
-
const selectedFilter = createFilterOption(
|
|
707
|
-
"dynamic",
|
|
708
|
-
"brand",
|
|
709
|
-
"Brand"
|
|
710
|
-
);
|
|
682
|
+
const selectedFilter = createFilterOption('dynamic', 'brand', 'Brand');
|
|
711
683
|
|
|
712
684
|
render(
|
|
713
685
|
<TestWrapper
|
|
@@ -716,137 +688,132 @@ describe("useSearch", () => {
|
|
|
716
688
|
query="test"
|
|
717
689
|
>
|
|
718
690
|
<TestComponent />
|
|
719
|
-
</TestWrapper
|
|
691
|
+
</TestWrapper>,
|
|
720
692
|
);
|
|
721
693
|
|
|
722
694
|
await waitFor(() => {
|
|
723
|
-
expect(
|
|
724
|
-
screen.getByTestId("available-dynamic-filters-count")
|
|
725
|
-
).toHaveTextContent("1");
|
|
695
|
+
expect(screen.getByTestId('available-dynamic-filters-count')).toHaveTextContent('1');
|
|
726
696
|
});
|
|
727
697
|
});
|
|
728
698
|
});
|
|
729
699
|
|
|
730
|
-
describe(
|
|
731
|
-
it(
|
|
700
|
+
describe('Product Sorting', () => {
|
|
701
|
+
it('should handle product sorting changes', async () => {
|
|
732
702
|
render(
|
|
733
703
|
<TestWrapper sorting={ProductSorting.FEATURED}>
|
|
734
704
|
<TestComponent />
|
|
735
|
-
</TestWrapper
|
|
705
|
+
</TestWrapper>,
|
|
736
706
|
);
|
|
737
707
|
|
|
738
708
|
await waitFor(() => {
|
|
739
|
-
expect(screen.getByTestId(
|
|
709
|
+
expect(screen.getByTestId('test-component')).toBeInTheDocument();
|
|
740
710
|
});
|
|
741
711
|
|
|
742
712
|
// The sorting should be reflected in the filters
|
|
743
|
-
expect(screen.getByTestId(
|
|
713
|
+
expect(screen.getByTestId('filter-button-text')).toBeInTheDocument();
|
|
744
714
|
});
|
|
745
715
|
});
|
|
746
716
|
|
|
747
|
-
describe(
|
|
748
|
-
it(
|
|
717
|
+
describe('Configuration', () => {
|
|
718
|
+
it('should use default product card config when not provided', async () => {
|
|
749
719
|
render(
|
|
750
720
|
<TestWrapper>
|
|
751
721
|
<TestComponent />
|
|
752
|
-
</TestWrapper
|
|
722
|
+
</TestWrapper>,
|
|
753
723
|
);
|
|
754
724
|
|
|
755
725
|
await waitFor(() => {
|
|
756
|
-
expect(screen.getByTestId(
|
|
726
|
+
expect(screen.getByTestId('test-component')).toBeInTheDocument();
|
|
757
727
|
});
|
|
758
728
|
|
|
759
729
|
// Should have default config values
|
|
760
|
-
expect(screen.getByTestId(
|
|
761
|
-
"test-org"
|
|
762
|
-
);
|
|
730
|
+
expect(screen.getByTestId('merchant-short-name')).toHaveTextContent('test-org');
|
|
763
731
|
});
|
|
764
732
|
|
|
765
|
-
it(
|
|
733
|
+
it('should use recommended products heading from config', async () => {
|
|
766
734
|
render(
|
|
767
735
|
<TestWrapper>
|
|
768
736
|
<TestComponent />
|
|
769
|
-
</TestWrapper
|
|
737
|
+
</TestWrapper>,
|
|
770
738
|
);
|
|
771
739
|
|
|
772
740
|
await waitFor(() => {
|
|
773
|
-
expect(
|
|
774
|
-
|
|
775
|
-
)
|
|
741
|
+
expect(screen.getByTestId('recommended-products-heading')).toHaveTextContent(
|
|
742
|
+
'Suggested Products',
|
|
743
|
+
);
|
|
776
744
|
});
|
|
777
745
|
});
|
|
778
746
|
|
|
779
|
-
it(
|
|
747
|
+
it('should use search overlay heading from config', async () => {
|
|
780
748
|
render(
|
|
781
749
|
<TestWrapper>
|
|
782
750
|
<TestComponent />
|
|
783
|
-
</TestWrapper
|
|
751
|
+
</TestWrapper>,
|
|
784
752
|
);
|
|
785
753
|
|
|
786
754
|
await waitFor(() => {
|
|
787
|
-
expect(screen.getByTestId(
|
|
788
|
-
|
|
755
|
+
expect(screen.getByTestId('search-overlay-heading')).toHaveTextContent(
|
|
756
|
+
'What can I help you find?',
|
|
789
757
|
);
|
|
790
758
|
});
|
|
791
759
|
});
|
|
792
760
|
});
|
|
793
761
|
|
|
794
|
-
describe(
|
|
795
|
-
it(
|
|
762
|
+
describe('Reset Search', () => {
|
|
763
|
+
it('should reset search when resetSearch is called', async () => {
|
|
796
764
|
const user = userEvent.setup();
|
|
797
765
|
render(
|
|
798
766
|
<TestWrapper query="test query">
|
|
799
767
|
<TestComponent />
|
|
800
|
-
</TestWrapper
|
|
768
|
+
</TestWrapper>,
|
|
801
769
|
);
|
|
802
770
|
|
|
803
771
|
await waitFor(() => {
|
|
804
|
-
expect(screen.getByTestId(
|
|
772
|
+
expect(screen.getByTestId('reset-search')).toBeInTheDocument();
|
|
805
773
|
});
|
|
806
774
|
|
|
807
775
|
await act(async () => {
|
|
808
|
-
await user.click(screen.getByTestId(
|
|
776
|
+
await user.click(screen.getByTestId('reset-search'));
|
|
809
777
|
});
|
|
810
778
|
|
|
811
779
|
// Reset should clear the search text
|
|
812
780
|
await waitFor(() => {
|
|
813
|
-
expect(screen.getByTestId(
|
|
781
|
+
expect(screen.getByTestId('search-text')).toHaveTextContent('');
|
|
814
782
|
});
|
|
815
783
|
});
|
|
816
784
|
});
|
|
817
785
|
|
|
818
|
-
describe(
|
|
819
|
-
it(
|
|
786
|
+
describe('Search Results Ref', () => {
|
|
787
|
+
it('should provide a ref for search results container', async () => {
|
|
820
788
|
render(
|
|
821
789
|
<TestWrapper>
|
|
822
790
|
<TestComponent />
|
|
823
|
-
</TestWrapper
|
|
791
|
+
</TestWrapper>,
|
|
824
792
|
);
|
|
825
793
|
|
|
826
794
|
await waitFor(() => {
|
|
827
|
-
expect(screen.getByTestId(
|
|
795
|
+
expect(screen.getByTestId('search-results-ref')).toBeInTheDocument();
|
|
828
796
|
});
|
|
829
797
|
|
|
830
|
-
const refElement = screen.getByTestId(
|
|
831
|
-
expect(refElement).toHaveTextContent(
|
|
798
|
+
const refElement = screen.getByTestId('search-results-ref');
|
|
799
|
+
expect(refElement).toHaveTextContent('Results Container');
|
|
832
800
|
});
|
|
833
801
|
});
|
|
834
802
|
|
|
835
|
-
describe(
|
|
836
|
-
it(
|
|
803
|
+
describe('Allow Redirect Option', () => {
|
|
804
|
+
it('should pass allowRedirect option to performSearch', async () => {
|
|
837
805
|
render(
|
|
838
806
|
<TestWrapper allowRedirect={true}>
|
|
839
807
|
<TestComponent allowRedirect={true} />
|
|
840
|
-
</TestWrapper
|
|
808
|
+
</TestWrapper>,
|
|
841
809
|
);
|
|
842
810
|
|
|
843
811
|
await waitFor(() => {
|
|
844
|
-
expect(screen.getByTestId(
|
|
812
|
+
expect(screen.getByTestId('test-component')).toBeInTheDocument();
|
|
845
813
|
});
|
|
846
814
|
|
|
847
815
|
// Component should render with allowRedirect option
|
|
848
|
-
expect(screen.getByTestId(
|
|
816
|
+
expect(screen.getByTestId('test-component')).toBeInTheDocument();
|
|
849
817
|
});
|
|
850
818
|
});
|
|
851
819
|
});
|
|
852
|
-
|