@adobe/alloy 2.21.1 → 2.22.0-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/babel.config.cjs +0 -1
- package/libEs5/baseCode/index.js +3 -2
- package/libEs5/components/ActivityCollector/attachClickActivityCollector.js +23 -20
- package/libEs5/components/ActivityCollector/configValidators.js +2 -2
- package/libEs5/components/ActivityCollector/createClickActivityStorage.js +11 -9
- package/libEs5/components/ActivityCollector/createClickedElementProperties.js +39 -32
- package/libEs5/components/ActivityCollector/createGetClickedElementProperties.js +28 -20
- package/libEs5/components/ActivityCollector/createInjectClickedElementProperties.js +24 -21
- package/libEs5/components/ActivityCollector/createRecallAndInjectClickedElementProperties.js +10 -8
- package/libEs5/components/ActivityCollector/createStorePageViewProperties.js +6 -4
- package/libEs5/components/ActivityCollector/getLinkName.js +19 -18
- package/libEs5/components/ActivityCollector/getLinkRegion.js +10 -9
- package/libEs5/components/ActivityCollector/index.js +61 -45
- package/libEs5/components/ActivityCollector/utils/activityMapExtensionEnabled.js +3 -5
- package/libEs5/components/ActivityCollector/utils/createTransientStorage.js +7 -6
- package/libEs5/components/ActivityCollector/utils/determineLinkType.js +4 -3
- package/libEs5/components/ActivityCollector/utils/dom/elementHasClickHandler.js +3 -2
- package/libEs5/components/ActivityCollector/utils/dom/extractDomain.js +5 -4
- package/libEs5/components/ActivityCollector/utils/dom/findClickableElement.js +4 -3
- package/libEs5/components/ActivityCollector/utils/dom/getAbsoluteUrlFromAnchorElement.js +11 -8
- package/libEs5/components/ActivityCollector/utils/dom/isButtonSubmitElement.js +3 -2
- package/libEs5/components/ActivityCollector/utils/dom/isDownloadLink.js +6 -5
- package/libEs5/components/ActivityCollector/utils/dom/isExitLink.js +6 -5
- package/libEs5/components/ActivityCollector/utils/dom/isInputSubmitElement.js +4 -3
- package/libEs5/components/ActivityCollector/utils/dom/isSupportedAnchorElement.js +3 -2
- package/libEs5/components/ActivityCollector/utils/dom/isSupportedTextNode.js +4 -3
- package/libEs5/components/ActivityCollector/utils/hasPageName.js +4 -3
- package/libEs5/components/ActivityCollector/utils/isDifferentDomains.js +5 -4
- package/libEs5/components/ActivityCollector/utils/trimQueryFromUrl.js +5 -4
- package/libEs5/components/ActivityCollector/utils/truncateWhiteSpace.js +3 -2
- package/libEs5/components/ActivityCollector/utils/urlStartsWithScheme.js +3 -2
- package/libEs5/components/Audiences/index.js +13 -12
- package/libEs5/components/Audiences/injectProcessDestinations.js +32 -35
- package/libEs5/components/Audiences/injectProcessResponse.js +19 -16
- package/libEs5/components/Context/createComponent.js +10 -13
- package/libEs5/components/Context/implementationDetails.js +5 -4
- package/libEs5/components/Context/index.js +24 -28
- package/libEs5/components/Context/injectDevice.js +23 -15
- package/libEs5/components/Context/injectEnvironment.js +17 -12
- package/libEs5/components/Context/injectHighEntropyUserAgentHints.js +12 -21
- package/libEs5/components/Context/injectPlaceContext.js +8 -7
- package/libEs5/components/Context/injectTimestamp.js +6 -5
- package/libEs5/components/Context/injectWeb.js +6 -5
- package/libEs5/components/DataCollector/index.js +37 -38
- package/libEs5/components/DataCollector/validateApplyResponse.js +6 -4
- package/libEs5/components/DataCollector/validateUserEventOptions.js +6 -4
- package/libEs5/components/DecisioningEngine/consequenceAdapters/inAppMessageConsequenceAdapter.js +11 -8
- package/libEs5/components/DecisioningEngine/consequenceAdapters/schemaTypeConsequenceAdapter.js +10 -7
- package/libEs5/components/DecisioningEngine/constants.js +3 -3
- package/libEs5/components/DecisioningEngine/createApplyResponse.js +15 -15
- package/libEs5/components/DecisioningEngine/createConsequenceAdapter.js +17 -13
- package/libEs5/components/DecisioningEngine/createContextProvider.js +48 -44
- package/libEs5/components/DecisioningEngine/createDecisionHistory.js +7 -5
- package/libEs5/components/DecisioningEngine/createDecisionProvider.js +16 -21
- package/libEs5/components/DecisioningEngine/createEvaluableRulesetPayload.js +39 -37
- package/libEs5/components/DecisioningEngine/createEvaluateRulesetsCommand.js +21 -19
- package/libEs5/components/DecisioningEngine/createEventRegistry.js +63 -67
- package/libEs5/components/DecisioningEngine/createOnResponseHandler.js +23 -22
- package/libEs5/components/DecisioningEngine/createSubscribeRulesetItems.js +100 -55
- package/libEs5/components/DecisioningEngine/index.js +83 -54
- package/libEs5/components/DecisioningEngine/utils.js +43 -38
- package/libEs5/components/EventMerge/createComponent.js +5 -3
- package/libEs5/components/EventMerge/createEventMergeId.js +3 -2
- package/libEs5/components/EventMerge/index.js +1 -1
- package/libEs5/components/Identity/addEcidQueryToPayload.js +3 -2
- package/libEs5/components/Identity/addEcidToPayload.js +3 -2
- package/libEs5/components/Identity/appendIdentityToUrl/injectAppendIdentityToUrl.js +13 -23
- package/libEs5/components/Identity/configValidators.js +1 -1
- package/libEs5/components/Identity/constants/authState.js +3 -3
- package/libEs5/components/Identity/createComponent.js +39 -33
- package/libEs5/components/Identity/createLegacyIdentity.js +29 -29
- package/libEs5/components/Identity/getEcidFromResponse.js +5 -7
- package/libEs5/components/Identity/getIdentity/createGetIdentity.js +17 -15
- package/libEs5/components/Identity/getIdentity/createIdentityRequest.js +10 -8
- package/libEs5/components/Identity/getIdentity/createIdentityRequestPayload.js +5 -4
- package/libEs5/components/Identity/index.js +61 -62
- package/libEs5/components/Identity/injectAddLegacyEcidToPayload.js +8 -6
- package/libEs5/components/Identity/injectAddQueryStringIdentityToPayload.js +46 -52
- package/libEs5/components/Identity/injectAwaitIdentityCookie.js +14 -11
- package/libEs5/components/Identity/injectEnsureSingleIdentity.js +25 -24
- package/libEs5/components/Identity/injectHandleResponseForIdSyncs.js +6 -4
- package/libEs5/components/Identity/injectProcessIdSyncs.js +20 -22
- package/libEs5/components/Identity/injectSetDomainForInitialIdentityPayload.js +7 -5
- package/libEs5/components/Identity/visitorService/awaitVisitorOptIn.js +8 -6
- package/libEs5/components/Identity/visitorService/getVisitor.js +4 -3
- package/libEs5/components/Identity/visitorService/injectGetEcidFromVisitor.js +15 -13
- package/libEs5/components/LegacyMediaAnalytics/constants/constants.js +9 -9
- package/libEs5/components/LegacyMediaAnalytics/constants/mediaKeysToXdmConverter.js +2 -2
- package/libEs5/components/LegacyMediaAnalytics/createGetInstance.js +61 -63
- package/libEs5/components/LegacyMediaAnalytics/createLegacyMediaComponent.js +38 -37
- package/libEs5/components/LegacyMediaAnalytics/createMediaHelper.js +54 -52
- package/libEs5/components/LegacyMediaAnalytics/index.js +32 -33
- package/libEs5/components/LibraryInfo/index.js +23 -30
- package/libEs5/components/MachineLearning/index.js +1 -1
- package/libEs5/components/MachineLearning/processResponse.js +5 -3
- package/libEs5/components/Personalization/constants/loggerMessage.js +2 -2
- package/libEs5/components/Personalization/constants/scopeType.js +3 -3
- package/libEs5/components/Personalization/constants/surface.js +4 -4
- package/libEs5/components/Personalization/createActionsProvider.js +37 -32
- package/libEs5/components/Personalization/createApplyPropositions.js +71 -81
- package/libEs5/components/Personalization/createClickStorage.js +30 -32
- package/libEs5/components/Personalization/createComponent.js +65 -74
- package/libEs5/components/Personalization/createFetchDataHandler.js +49 -52
- package/libEs5/components/Personalization/createGetPageLocation.js +6 -6
- package/libEs5/components/Personalization/createHandleConsentFlicker.js +15 -14
- package/libEs5/components/Personalization/createInteractionStorage.js +25 -39
- package/libEs5/components/Personalization/createNotificationHandler.js +9 -10
- package/libEs5/components/Personalization/createOnClickHandler.js +29 -25
- package/libEs5/components/Personalization/createOnDecisionHandler.js +23 -21
- package/libEs5/components/Personalization/createPersonalizationDetails.js +39 -45
- package/libEs5/components/Personalization/createPreprocessors.js +7 -7
- package/libEs5/components/Personalization/createSetTargetMigration.js +6 -4
- package/libEs5/components/Personalization/createViewCacheManager.js +29 -32
- package/libEs5/components/Personalization/createViewChangeHandler.js +25 -20
- package/libEs5/components/Personalization/dom-actions/action.js +24 -25
- package/libEs5/components/Personalization/dom-actions/addNonceToInlineStyleElements.js +12 -13
- package/libEs5/components/Personalization/dom-actions/appendHtml.js +8 -7
- package/libEs5/components/Personalization/dom-actions/clicks/collectClicks.js +28 -33
- package/libEs5/components/Personalization/dom-actions/clicks/collectInteractions.js +37 -40
- package/libEs5/components/Personalization/dom-actions/collectInteractions.js +3 -2
- package/libEs5/components/Personalization/dom-actions/createPreprocess.js +10 -11
- package/libEs5/components/Personalization/dom-actions/createRedirect.js +11 -13
- package/libEs5/components/Personalization/dom-actions/dom/createFragment.js +3 -2
- package/libEs5/components/Personalization/dom-actions/dom/getAttribute.js +3 -2
- package/libEs5/components/Personalization/dom-actions/dom/getChildNodes.js +6 -3
- package/libEs5/components/Personalization/dom-actions/dom/getChildren.js +6 -3
- package/libEs5/components/Personalization/dom-actions/dom/getElementById.js +3 -3
- package/libEs5/components/Personalization/dom-actions/dom/getFirstChild.js +3 -2
- package/libEs5/components/Personalization/dom-actions/dom/getNextSibling.js +3 -2
- package/libEs5/components/Personalization/dom-actions/dom/getNonce.js +7 -6
- package/libEs5/components/Personalization/dom-actions/dom/getParent.js +3 -2
- package/libEs5/components/Personalization/dom-actions/dom/helperForEq.js +7 -7
- package/libEs5/components/Personalization/dom-actions/dom/index.js +14 -14
- package/libEs5/components/Personalization/dom-actions/dom/insertAfter.js +4 -3
- package/libEs5/components/Personalization/dom-actions/dom/insertBefore.js +4 -3
- package/libEs5/components/Personalization/dom-actions/dom/isDomElement.js +2 -3
- package/libEs5/components/Personalization/dom-actions/dom/matchesSelectorWithEq.js +6 -5
- package/libEs5/components/Personalization/dom-actions/dom/removeAttribute.js +3 -2
- package/libEs5/components/Personalization/dom-actions/dom/selectNodesWithEq.js +39 -38
- package/libEs5/components/Personalization/dom-actions/dom/setAttribute.js +3 -2
- package/libEs5/components/Personalization/dom-actions/dom/setStyle.js +4 -3
- package/libEs5/components/Personalization/dom-actions/images.js +10 -9
- package/libEs5/components/Personalization/dom-actions/index.js +1 -1
- package/libEs5/components/Personalization/dom-actions/initDomActionsModules.js +40 -25
- package/libEs5/components/Personalization/dom-actions/insertHtmlAfter.js +9 -8
- package/libEs5/components/Personalization/dom-actions/insertHtmlBefore.js +8 -7
- package/libEs5/components/Personalization/dom-actions/prependHtml.js +13 -10
- package/libEs5/components/Personalization/dom-actions/rearrangeChildren.js +9 -7
- package/libEs5/components/Personalization/dom-actions/remapCustomCodeOffers.js +14 -9
- package/libEs5/components/Personalization/dom-actions/remapHeadOffers.js +16 -14
- package/libEs5/components/Personalization/dom-actions/replaceHtml.js +4 -3
- package/libEs5/components/Personalization/dom-actions/scripts.js +58 -38
- package/libEs5/components/Personalization/dom-actions/setAttributes.js +4 -3
- package/libEs5/components/Personalization/dom-actions/setHtml.js +5 -4
- package/libEs5/components/Personalization/dom-actions/setStyles.js +8 -8
- package/libEs5/components/Personalization/dom-actions/setText.js +3 -2
- package/libEs5/components/Personalization/dom-actions/swapImage.js +3 -2
- package/libEs5/components/Personalization/flicker/index.js +34 -31
- package/libEs5/components/Personalization/handlers/createDecorateProposition.js +16 -13
- package/libEs5/components/Personalization/handlers/createProcessDomAction.js +45 -50
- package/libEs5/components/Personalization/handlers/createProcessHtmlContent.js +30 -29
- package/libEs5/components/Personalization/handlers/createProcessInAppMessage.js +35 -31
- package/libEs5/components/Personalization/handlers/createProcessPropositions.js +91 -107
- package/libEs5/components/Personalization/handlers/createProcessRedirect.js +30 -29
- package/libEs5/components/Personalization/handlers/injectCreateProposition.js +59 -64
- package/libEs5/components/Personalization/handlers/processDefaultContent.js +3 -2
- package/libEs5/components/Personalization/in-app-message-actions/actions/displayIframeContent.js +140 -121
- package/libEs5/components/Personalization/in-app-message-actions/initInAppMessageActionsModules.js +4 -5
- package/libEs5/components/Personalization/in-app-message-actions/utils.js +23 -19
- package/libEs5/components/Personalization/index.js +112 -99
- package/libEs5/components/Personalization/utils/addRenderAttemptedToDecisions.js +10 -10
- package/libEs5/components/Personalization/utils/createAsyncArray.js +10 -9
- package/libEs5/components/Personalization/utils/isAuthoringModeEnabled.js +3 -3
- package/libEs5/components/Personalization/utils/metaUtils.js +14 -19
- package/libEs5/components/Personalization/utils/surfaceUtils.js +27 -46
- package/libEs5/components/Personalization/validateApplyPropositionsOptions.js +8 -6
- package/libEs5/components/Privacy/computeConsentHash.js +9 -9
- package/libEs5/components/Privacy/createComponent.js +32 -32
- package/libEs5/components/Privacy/createConsentHashStore.js +27 -24
- package/libEs5/components/Privacy/createConsentRequest.js +10 -8
- package/libEs5/components/Privacy/createConsentRequestPayload.js +9 -8
- package/libEs5/components/Privacy/createStoredConsent.js +11 -9
- package/libEs5/components/Privacy/index.js +26 -23
- package/libEs5/components/Privacy/injectSendSetConsentRequest.js +30 -29
- package/libEs5/components/Privacy/parseConsentCookie.js +6 -14
- package/libEs5/components/StreamingMedia/createMediaEventManager.js +59 -45
- package/libEs5/components/StreamingMedia/createMediaRequest.js +8 -6
- package/libEs5/components/StreamingMedia/createMediaResponseHandler.js +22 -17
- package/libEs5/components/StreamingMedia/createMediaSessionCacheManager.js +22 -18
- package/libEs5/components/StreamingMedia/createStreamingMediaComponent.js +30 -29
- package/libEs5/components/StreamingMedia/createTrackMediaEvent.js +41 -36
- package/libEs5/components/StreamingMedia/createTrackMediaSession.js +25 -22
- package/libEs5/components/StreamingMedia/index.js +33 -34
- package/libEs5/components/StreamingMedia/validateMediaEventOptions.js +9 -12
- package/libEs5/components/StreamingMedia/validateMediaSessionOptions.js +6 -4
- package/libEs5/constants/browser.js +7 -7
- package/libEs5/constants/consentPurpose.js +1 -1
- package/libEs5/constants/consentStatus.js +3 -3
- package/libEs5/constants/contentType.js +2 -2
- package/libEs5/constants/cookieNameKey.js +3 -3
- package/libEs5/constants/coreCommands.js +2 -2
- package/libEs5/constants/decisionProvider.js +4 -3
- package/libEs5/constants/domain.js +2 -2
- package/libEs5/constants/elementAttribute.js +1 -1
- package/libEs5/constants/eventType.js +5 -5
- package/libEs5/constants/handle.js +1 -1
- package/libEs5/constants/httpHeaderNames.js +2 -2
- package/libEs5/constants/httpStatusCode.js +5 -5
- package/libEs5/constants/identityMapAuthenticatedState.js +3 -3
- package/libEs5/constants/legacyCookies.js +3 -3
- package/libEs5/constants/libraryVersion.js +1 -1
- package/libEs5/constants/propositionEventType.js +18 -12
- package/libEs5/constants/propositionInteractionType.js +4 -4
- package/libEs5/constants/schema.js +11 -11
- package/libEs5/constants/sessionDataKeys.js +1 -1
- package/libEs5/constants/tagName.js +7 -7
- package/libEs5/core/buildAndValidateConfig.js +55 -69
- package/libEs5/core/componentCreators.js +70 -41
- package/libEs5/core/config/createConfig.js +4 -3
- package/libEs5/core/config/createCoreConfigs.js +11 -12
- package/libEs5/core/consent/createConsent.js +16 -14
- package/libEs5/core/consent/createConsentStateMachine.js +27 -35
- package/libEs5/core/createComponentRegistry.js +28 -27
- package/libEs5/core/createCookieTransfer.js +18 -18
- package/libEs5/core/createEvent.js +39 -44
- package/libEs5/core/createEventManager.js +64 -69
- package/libEs5/core/createInstanceFunction.js +4 -11
- package/libEs5/core/createLifecycle.js +14 -19
- package/libEs5/core/createLogController.js +30 -29
- package/libEs5/core/createLogger.js +28 -27
- package/libEs5/core/edgeNetwork/handleRequestFailure.js +6 -5
- package/libEs5/core/edgeNetwork/injectApplyResponse.js +29 -32
- package/libEs5/core/edgeNetwork/injectExtractEdgeInfo.js +19 -25
- package/libEs5/core/edgeNetwork/injectGetLocationHint.js +11 -11
- package/libEs5/core/edgeNetwork/injectProcessWarningsAndErrors.js +20 -16
- package/libEs5/core/edgeNetwork/injectSendEdgeNetworkRequest.js +42 -38
- package/libEs5/core/edgeNetwork/mergeLifecycleResponses.js +8 -12
- package/libEs5/core/index.js +137 -133
- package/libEs5/core/initializeComponents.js +17 -15
- package/libEs5/core/injectCreateResponse.js +47 -53
- package/libEs5/core/injectExecuteCommand.js +39 -40
- package/libEs5/core/injectHandleError.js +19 -19
- package/libEs5/core/injectShouldTransferCookie.js +12 -12
- package/libEs5/core/network/getRequestRetryDelay.js +20 -18
- package/libEs5/core/network/injectSendNetworkRequest.js +46 -49
- package/libEs5/core/network/isRequestRetryable.js +9 -8
- package/libEs5/core/network/requestMethods/injectSendBeaconRequest.js +10 -8
- package/libEs5/core/network/requestMethods/injectSendFetchRequest.js +18 -19
- package/libEs5/core/requiredComponentCreators.js +23 -0
- package/libEs5/core/validateCommandOptions.js +14 -11
- package/libEs5/index.js +43 -22
- package/libEs5/standalone.js +6 -1
- package/libEs5/utils/areThirdPartyCookiesSupportedByDefault.js +3 -5
- package/libEs5/utils/assignConcatArrayValues.js +9 -18
- package/libEs5/utils/clone.js +2 -3
- package/libEs5/utils/cookieJar.js +4 -4
- package/libEs5/utils/crc32.js +8 -8
- package/libEs5/utils/createCallbackAggregator.js +7 -11
- package/libEs5/utils/createCollect.js +52 -0
- package/libEs5/utils/createLoggingCookieJar.js +14 -16
- package/libEs5/utils/createMerger.js +9 -10
- package/libEs5/utils/createSubscription.js +48 -48
- package/libEs5/utils/createTaskQueue.js +8 -7
- package/libEs5/utils/deduplicateArray.js +7 -11
- package/libEs5/utils/deepAssign.js +7 -11
- package/libEs5/utils/defer.js +5 -4
- package/libEs5/utils/dom/appendNode.js +3 -2
- package/libEs5/utils/dom/awaitSelector.js +36 -34
- package/libEs5/utils/dom/createNode.js +10 -15
- package/libEs5/utils/dom/index.js +8 -8
- package/libEs5/utils/dom/isShadowSelector.js +2 -3
- package/libEs5/utils/dom/matchesSelector.js +3 -2
- package/libEs5/utils/dom/querySelectorAll.js +5 -13
- package/libEs5/utils/dom/removeNode.js +4 -3
- package/libEs5/utils/dom/selectNodes.js +3 -3
- package/libEs5/utils/dom/selectNodesWithShadow.js +14 -23
- package/libEs5/utils/event.js +49 -0
- package/libEs5/utils/filterObject.js +14 -12
- package/libEs5/utils/fireImage.js +10 -9
- package/libEs5/utils/flattenArray.js +4 -11
- package/libEs5/utils/flattenObject.js +8 -18
- package/libEs5/utils/getApexDomain.js +7 -6
- package/libEs5/utils/getBrowser.js +45 -12
- package/libEs5/utils/getLastArrayItems.js +2 -3
- package/libEs5/utils/getNamespacedCookieName.js +2 -3
- package/libEs5/utils/groupBy.js +6 -5
- package/libEs5/utils/index.js +50 -113
- package/libEs5/utils/injectDoesIdentityCookieExist.js +7 -7
- package/libEs5/utils/injectFireReferrerHideableImage.js +28 -34
- package/libEs5/utils/injectStorage.js +13 -15
- package/libEs5/utils/intersection.js +2 -6
- package/libEs5/utils/isBlankString.js +2 -3
- package/libEs5/utils/isBoolean.js +2 -3
- package/libEs5/utils/isEmptyObject.js +2 -3
- package/libEs5/utils/isFunction.js +2 -3
- package/libEs5/utils/isInteger.js +4 -3
- package/libEs5/utils/isNamespacedCookieName.js +2 -3
- package/libEs5/utils/isNil.js +2 -3
- package/libEs5/utils/isNonEmptyArray.js +2 -3
- package/libEs5/utils/isNonEmptyString.js +2 -3
- package/libEs5/utils/isNumber.js +2 -4
- package/libEs5/utils/isObject.js +3 -4
- package/libEs5/utils/isString.js +2 -3
- package/libEs5/utils/isUnique.js +6 -5
- package/libEs5/utils/isValidRegExp.js +3 -2
- package/libEs5/utils/memoize.js +7 -6
- package/libEs5/utils/noop.js +2 -1
- package/libEs5/utils/parseUrl.js +19 -25
- package/libEs5/utils/prepareConfigOverridesForEdge.js +6 -5
- package/libEs5/utils/request/createAddIdentity.js +4 -3
- package/libEs5/utils/request/createDataCollectionRequest.js +15 -11
- package/libEs5/utils/request/createDataCollectionRequestPayload.js +9 -10
- package/libEs5/utils/request/createGetAssuranceValidationTokenParams.js +17 -15
- package/libEs5/utils/request/createHasIdentity.js +4 -5
- package/libEs5/utils/request/createRequest.js +26 -23
- package/libEs5/utils/request/createRequestParams.js +13 -13
- package/libEs5/utils/request/createRequestPayload.js +13 -12
- package/libEs5/utils/request/index.js +8 -8
- package/libEs5/utils/sanitizeOrgIdForCookieName.js +2 -3
- package/libEs5/utils/stackError.js +8 -6
- package/libEs5/utils/stringToBoolean.js +3 -2
- package/libEs5/utils/toArray.js +3 -2
- package/libEs5/utils/toError.js +3 -2
- package/libEs5/utils/toISOStringLocal.js +29 -14
- package/libEs5/utils/toInteger.js +5 -5
- package/libEs5/utils/updateErrorMessage.js +6 -4
- package/libEs5/utils/validation/booleanValidator.js +3 -2
- package/libEs5/utils/validation/callbackValidator.js +3 -2
- package/libEs5/utils/validation/createAnyOfValidator.js +14 -17
- package/libEs5/utils/validation/createArrayOfValidator.js +16 -18
- package/libEs5/utils/validation/createDefaultValidator.js +7 -8
- package/libEs5/utils/validation/createDeprecatedValidator.js +12 -14
- package/libEs5/utils/validation/createLiteralValidator.js +5 -6
- package/libEs5/utils/validation/createMapOfValuesValidator.js +20 -22
- package/libEs5/utils/validation/createMaximumValidator.js +5 -6
- package/libEs5/utils/validation/createMinimumValidator.js +5 -6
- package/libEs5/utils/validation/createNoUnknownFieldsValidator.js +13 -14
- package/libEs5/utils/validation/createNonEmptyValidator.js +9 -10
- package/libEs5/utils/validation/createObjectOfValidator.js +27 -29
- package/libEs5/utils/validation/createRenamedValidator.js +24 -27
- package/libEs5/utils/validation/createUniqueItemsValidator.js +4 -3
- package/libEs5/utils/validation/createUniqueValidator.js +5 -4
- package/libEs5/utils/validation/domainValidator.js +4 -3
- package/libEs5/utils/validation/index.js +66 -72
- package/libEs5/utils/validation/integerValidator.js +3 -2
- package/libEs5/utils/validation/matchesRegexpValidator.js +5 -6
- package/libEs5/utils/validation/numberValidator.js +3 -2
- package/libEs5/utils/validation/regexpValidator.js +3 -2
- package/libEs5/utils/validation/requiredValidator.js +3 -2
- package/libEs5/utils/validation/stringValidator.js +3 -2
- package/libEs5/utils/validation/utils.js +29 -35
- package/libEs6/components/ActivityCollector/index.js +18 -8
- package/libEs6/components/Context/createComponent.js +1 -3
- package/libEs6/components/DecisioningEngine/createApplyResponse.js +1 -1
- package/libEs6/components/DecisioningEngine/createSubscribeRulesetItems.js +78 -28
- package/libEs6/components/DecisioningEngine/index.js +22 -2
- package/libEs6/components/DecisioningEngine/utils.js +2 -9
- package/libEs6/components/Identity/createComponent.js +4 -2
- package/libEs6/components/Identity/getEcidFromResponse.js +1 -3
- package/libEs6/components/LegacyMediaAnalytics/createGetInstance.js +2 -2
- package/libEs6/components/LibraryInfo/index.js +4 -5
- package/libEs6/components/Personalization/createActionsProvider.js +4 -2
- package/libEs6/components/Personalization/createComponent.js +2 -2
- package/libEs6/components/Personalization/createPersonalizationDetails.js +6 -6
- package/libEs6/components/Personalization/createViewCacheManager.js +5 -2
- package/libEs6/components/Personalization/dom-actions/createPreprocess.js +5 -2
- package/libEs6/components/Personalization/dom-actions/dom/selectNodesWithEq.js +1 -3
- package/libEs6/components/Personalization/dom-actions/remapCustomCodeOffers.js +6 -4
- package/libEs6/components/Personalization/dom-actions/remapHeadOffers.js +3 -2
- package/libEs6/components/Personalization/dom-actions/scripts.js +18 -2
- package/libEs6/components/Personalization/handlers/createDecorateProposition.js +2 -2
- package/libEs6/components/Personalization/in-app-message-actions/actions/displayIframeContent.js +8 -5
- package/libEs6/components/Personalization/in-app-message-actions/utils.js +2 -2
- package/libEs6/components/Personalization/index.js +2 -2
- package/libEs6/components/Personalization/utils/addRenderAttemptedToDecisions.js +4 -4
- package/libEs6/components/Personalization/utils/surfaceUtils.js +3 -3
- package/libEs6/constants/decisionProvider.js +1 -0
- package/libEs6/constants/libraryVersion.js +1 -1
- package/libEs6/constants/schema.js +1 -1
- package/libEs6/core/buildAndValidateConfig.js +8 -5
- package/libEs6/core/componentCreators.js +14 -43
- package/libEs6/core/config/createConfig.js +3 -2
- package/libEs6/core/createCookieTransfer.js +1 -3
- package/libEs6/core/createInstanceFunction.js +1 -9
- package/libEs6/core/createLogger.js +4 -2
- package/libEs6/core/edgeNetwork/injectExtractEdgeInfo.js +1 -7
- package/libEs6/core/index.js +11 -10
- package/libEs6/core/injectCreateResponse.js +1 -3
- package/libEs6/core/network/isRequestRetryable.js +1 -2
- package/libEs6/core/network/requestMethods/injectSendFetchRequest.js +1 -2
- package/libEs6/{utils/assignIf.js → core/requiredComponentCreators.js} +4 -8
- package/libEs6/index.js +26 -6
- package/libEs6/standalone.js +7 -1
- package/libEs6/utils/areThirdPartyCookiesSupportedByDefault.js +1 -2
- package/libEs6/utils/assignConcatArrayValues.js +1 -2
- package/libEs6/utils/cookieJar.js +4 -4
- package/libEs6/{components/Personalization → utils}/createCollect.js +3 -3
- package/libEs6/utils/createSubscription.js +20 -3
- package/libEs6/utils/dom/querySelectorAll.js +1 -10
- package/libEs6/utils/dom/selectNodesWithShadow.js +2 -12
- package/libEs6/{components/Personalization → utils}/event.js +1 -1
- package/libEs6/utils/index.js +1 -10
- package/libEs6/utils/injectStorage.js +1 -2
- package/libEs6/utils/intersection.js +1 -4
- package/libEs6/utils/isNumber.js +1 -2
- package/libEs6/utils/toISOStringLocal.js +14 -1
- package/libEs6/utils/toInteger.js +1 -2
- package/libEs6/utils/validation/createAnyOfValidator.js +1 -2
- package/libEs6/utils/validation/utils.js +3 -6
- package/package.json +35 -37
- package/rollup.config.js +115 -7
- package/scripts/alloyBuilder.js +89 -55
- package/scripts/helpers/entryPointGeneratorBabelPlugin.js +39 -0
- package/libEs5/components/Personalization/createCollect.js +0 -53
- package/libEs5/components/Personalization/event.js +0 -49
- package/libEs5/core/network/requestMethods/injectSendXhrRequest.js +0 -50
- package/libEs5/utils/assign.js +0 -16
- package/libEs5/utils/assignIf.js +0 -21
- package/libEs5/utils/endsWith.js +0 -23
- package/libEs5/utils/find.js +0 -30
- package/libEs5/utils/flatMap.js +0 -17
- package/libEs5/utils/includes.js +0 -23
- package/libEs5/utils/padStart.js +0 -27
- package/libEs5/utils/startsWith.js +0 -23
- package/libEs5/utils/values.js +0 -25
- package/libEs6/core/network/requestMethods/injectSendXhrRequest.js +0 -49
- package/libEs6/utils/assign.js +0 -14
- package/libEs6/utils/endsWith.js +0 -19
- package/libEs6/utils/find.js +0 -28
- package/libEs6/utils/flatMap.js +0 -14
- package/libEs6/utils/includes.js +0 -21
- package/libEs6/utils/padStart.js +0 -25
- package/libEs6/utils/startsWith.js +0 -19
- package/libEs6/utils/values.js +0 -21
- package/scripts/helpers/alloyComponents.js +0 -63
- package/scripts/helpers/conditionalBuildBabelPlugin.js +0 -57
|
@@ -5,18 +5,7 @@ var _index = require("../../utils/index.js");
|
|
|
5
5
|
var _schema = require("../../constants/schema.js");
|
|
6
6
|
var _pageWideScope = require("../../constants/pageWideScope.js");
|
|
7
7
|
var _initDomActionsModules = require("./dom-actions/initDomActionsModules.js");
|
|
8
|
-
|
|
9
|
-
function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
|
|
10
|
-
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
11
|
-
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
12
|
-
function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
|
|
13
|
-
function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }
|
|
14
|
-
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
15
|
-
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
16
|
-
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
17
|
-
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
18
|
-
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
|
|
19
|
-
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } /*
|
|
8
|
+
/*
|
|
20
9
|
Copyright 2022 Adobe. All rights reserved.
|
|
21
10
|
This file is licensed to you under the Apache License, Version 2.0 (the "License");
|
|
22
11
|
you may not use this file except in compliance with the License. You may obtain a copy
|
|
@@ -27,66 +16,70 @@ the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTA
|
|
|
27
16
|
OF ANY KIND, either express or implied. See the License for the specific language
|
|
28
17
|
governing permissions and limitations under the License.
|
|
29
18
|
*/
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
}), _schema.JSON_CONTENT_ITEM, isInteractionTrackingItem), _schema.MESSAGE_IN_APP, function () {
|
|
38
|
-
return true;
|
|
39
|
-
});
|
|
40
|
-
var filterItemsPredicate = function filterItemsPredicate(schema, actionType) {
|
|
41
|
-
return typeof SUPPORTED_SCHEMAS[schema] === "function" && SUPPORTED_SCHEMAS[schema](schema, actionType);
|
|
19
|
+
|
|
20
|
+
const isInteractionTrackingItem = (schema, actionType) => schema === _schema.JSON_CONTENT_ITEM && actionType === _initDomActionsModules.DOM_ACTION_COLLECT_INTERACTIONS;
|
|
21
|
+
const SUPPORTED_SCHEMAS = {
|
|
22
|
+
[_schema.DOM_ACTION]: () => true,
|
|
23
|
+
[_schema.HTML_CONTENT_ITEM]: () => true,
|
|
24
|
+
[_schema.JSON_CONTENT_ITEM]: isInteractionTrackingItem,
|
|
25
|
+
[_schema.MESSAGE_IN_APP]: () => true
|
|
42
26
|
};
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
27
|
+
const filterItemsPredicate = (schema, actionType) => typeof SUPPORTED_SCHEMAS[schema] === "function" && SUPPORTED_SCHEMAS[schema](schema, actionType);
|
|
28
|
+
var _default = ({
|
|
29
|
+
processPropositions,
|
|
30
|
+
createProposition,
|
|
31
|
+
renderedPropositions,
|
|
32
|
+
viewCache
|
|
33
|
+
}) => {
|
|
34
|
+
const updatePropositionItems = ({
|
|
35
|
+
items,
|
|
36
|
+
metadataForScope = {}
|
|
37
|
+
}) => {
|
|
38
|
+
const {
|
|
39
|
+
actionType,
|
|
40
|
+
selector
|
|
41
|
+
} = metadataForScope;
|
|
42
|
+
return items.filter(item => filterItemsPredicate(item.schema, actionType)).map(item => {
|
|
43
|
+
const {
|
|
44
|
+
schema
|
|
45
|
+
} = item;
|
|
58
46
|
if (schema !== _schema.HTML_CONTENT_ITEM && !isInteractionTrackingItem(schema, actionType)) {
|
|
59
|
-
return
|
|
47
|
+
return {
|
|
48
|
+
...item
|
|
49
|
+
};
|
|
60
50
|
}
|
|
61
51
|
if (!(0, _index.isEmptyObject)(metadataForScope)) {
|
|
62
|
-
return
|
|
52
|
+
return {
|
|
53
|
+
...item,
|
|
63
54
|
schema: isInteractionTrackingItem(schema, actionType) ? _schema.DOM_ACTION : schema,
|
|
64
|
-
data:
|
|
65
|
-
|
|
55
|
+
data: {
|
|
56
|
+
...item.data,
|
|
57
|
+
selector,
|
|
66
58
|
type: actionType
|
|
67
|
-
}
|
|
68
|
-
}
|
|
59
|
+
}
|
|
60
|
+
};
|
|
69
61
|
}
|
|
70
62
|
return undefined;
|
|
71
|
-
}).filter(
|
|
72
|
-
return item;
|
|
73
|
-
});
|
|
63
|
+
}).filter(item => item);
|
|
74
64
|
};
|
|
75
|
-
|
|
65
|
+
const filterPropositionsPredicate = proposition => {
|
|
76
66
|
return !(proposition.scope === _pageWideScope.default && proposition.renderAttempted);
|
|
77
67
|
};
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
68
|
+
const preparePropositions = ({
|
|
69
|
+
propositions,
|
|
70
|
+
metadata
|
|
71
|
+
}) => {
|
|
72
|
+
return propositions.filter(filterPropositionsPredicate).map(proposition => {
|
|
82
73
|
if ((0, _index.isNonEmptyArray)(proposition.items)) {
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
74
|
+
const {
|
|
75
|
+
id,
|
|
76
|
+
scope,
|
|
77
|
+
scopeDetails
|
|
78
|
+
} = proposition;
|
|
86
79
|
return {
|
|
87
|
-
id
|
|
88
|
-
scope
|
|
89
|
-
scopeDetails
|
|
80
|
+
id,
|
|
81
|
+
scope,
|
|
82
|
+
scopeDetails,
|
|
90
83
|
items: updatePropositionItems({
|
|
91
84
|
items: proposition.items,
|
|
92
85
|
metadataForScope: metadata[proposition.scope]
|
|
@@ -94,39 +87,36 @@ var _default = exports.default = function _default(_ref) {
|
|
|
94
87
|
};
|
|
95
88
|
}
|
|
96
89
|
return proposition;
|
|
97
|
-
}).filter(
|
|
98
|
-
return (0, _index.isNonEmptyArray)(proposition.items);
|
|
99
|
-
});
|
|
90
|
+
}).filter(proposition => (0, _index.isNonEmptyArray)(proposition.items));
|
|
100
91
|
};
|
|
101
|
-
return
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
viewName = _ref4.viewName;
|
|
92
|
+
return ({
|
|
93
|
+
propositions = [],
|
|
94
|
+
metadata = {},
|
|
95
|
+
viewName
|
|
96
|
+
}) => {
|
|
107
97
|
// We need to immediately call concat so that subsequent sendEvent
|
|
108
98
|
// calls will wait for applyPropositions to complete before executing.
|
|
109
|
-
|
|
99
|
+
const renderedPropositionsDeferred = (0, _index.defer)();
|
|
110
100
|
renderedPropositions.concat(renderedPropositionsDeferred.promise);
|
|
111
|
-
|
|
112
|
-
propositions
|
|
113
|
-
metadata
|
|
114
|
-
}).map(
|
|
115
|
-
|
|
116
|
-
});
|
|
117
|
-
return Promise.resolve().then(function () {
|
|
101
|
+
const propositionsToExecute = preparePropositions({
|
|
102
|
+
propositions,
|
|
103
|
+
metadata
|
|
104
|
+
}).map(proposition => createProposition(proposition));
|
|
105
|
+
return Promise.resolve().then(() => {
|
|
118
106
|
if (viewName) {
|
|
119
107
|
return viewCache.getView(viewName);
|
|
120
108
|
}
|
|
121
109
|
return [];
|
|
122
|
-
}).then(
|
|
123
|
-
|
|
124
|
-
render
|
|
125
|
-
returnedPropositions
|
|
110
|
+
}).then(additionalPropositions => {
|
|
111
|
+
const {
|
|
112
|
+
render,
|
|
113
|
+
returnedPropositions
|
|
114
|
+
} = processPropositions([...propositionsToExecute, ...additionalPropositions]);
|
|
126
115
|
render().then(renderedPropositionsDeferred.resolve);
|
|
127
116
|
return {
|
|
128
117
|
propositions: returnedPropositions
|
|
129
118
|
};
|
|
130
119
|
});
|
|
131
120
|
};
|
|
132
|
-
};
|
|
121
|
+
};
|
|
122
|
+
exports.default = _default;
|
|
@@ -1,12 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
exports.default = void 0;
|
|
4
|
-
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
5
|
-
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
6
|
-
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
7
|
-
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
8
|
-
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
|
|
9
|
-
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
10
4
|
/*
|
|
11
5
|
Copyright 2020 Adobe. All rights reserved.
|
|
12
6
|
This file is licensed to you under the Apache License, Version 2.0 (the "License");
|
|
@@ -19,46 +13,50 @@ OF ANY KIND, either express or implied. See the License for the specific languag
|
|
|
19
13
|
governing permissions and limitations under the License.
|
|
20
14
|
*/
|
|
21
15
|
|
|
22
|
-
|
|
23
|
-
return Object.keys(metas).map(
|
|
24
|
-
return
|
|
25
|
-
id: key
|
|
26
|
-
|
|
16
|
+
const metasToArray = metas => {
|
|
17
|
+
return Object.keys(metas).map(key => {
|
|
18
|
+
return {
|
|
19
|
+
id: key,
|
|
20
|
+
...metas[key]
|
|
21
|
+
};
|
|
27
22
|
});
|
|
28
23
|
};
|
|
29
|
-
var _default =
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
id
|
|
35
|
-
scope
|
|
36
|
-
scopeDetails
|
|
37
|
-
trackingLabel
|
|
38
|
-
scopeType
|
|
24
|
+
var _default = () => {
|
|
25
|
+
const clickStorage = {};
|
|
26
|
+
const storeClickMeta = ({
|
|
27
|
+
selector,
|
|
28
|
+
meta: {
|
|
29
|
+
id,
|
|
30
|
+
scope,
|
|
31
|
+
scopeDetails,
|
|
32
|
+
trackingLabel,
|
|
33
|
+
scopeType
|
|
34
|
+
}
|
|
35
|
+
}) => {
|
|
39
36
|
if (!clickStorage[selector]) {
|
|
40
37
|
clickStorage[selector] = {};
|
|
41
38
|
}
|
|
42
39
|
clickStorage[selector][id] = {
|
|
43
|
-
scope
|
|
44
|
-
scopeDetails
|
|
45
|
-
trackingLabel
|
|
46
|
-
scopeType
|
|
40
|
+
scope,
|
|
41
|
+
scopeDetails,
|
|
42
|
+
trackingLabel,
|
|
43
|
+
scopeType
|
|
47
44
|
};
|
|
48
45
|
};
|
|
49
|
-
|
|
46
|
+
const getClickSelectors = () => {
|
|
50
47
|
return Object.keys(clickStorage);
|
|
51
48
|
};
|
|
52
|
-
|
|
53
|
-
|
|
49
|
+
const getClickMetas = selector => {
|
|
50
|
+
const metas = clickStorage[selector];
|
|
54
51
|
if (!metas) {
|
|
55
52
|
return {};
|
|
56
53
|
}
|
|
57
54
|
return metasToArray(clickStorage[selector]);
|
|
58
55
|
};
|
|
59
56
|
return {
|
|
60
|
-
storeClickMeta
|
|
61
|
-
getClickSelectors
|
|
62
|
-
getClickMetas
|
|
57
|
+
storeClickMeta,
|
|
58
|
+
getClickSelectors,
|
|
59
|
+
getClickMetas
|
|
63
60
|
};
|
|
64
|
-
};
|
|
61
|
+
};
|
|
62
|
+
exports.default = _default;
|
|
@@ -17,53 +17,48 @@ the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTA
|
|
|
17
17
|
OF ANY KIND, either express or implied. See the License for the specific language
|
|
18
18
|
governing permissions and limitations under the License.
|
|
19
19
|
*/
|
|
20
|
-
var _default =
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
20
|
+
var _default = ({
|
|
21
|
+
getPageLocation,
|
|
22
|
+
logger,
|
|
23
|
+
fetchDataHandler,
|
|
24
|
+
viewChangeHandler,
|
|
25
|
+
onClickHandler,
|
|
26
|
+
isAuthoringModeEnabled,
|
|
27
|
+
mergeQuery,
|
|
28
|
+
viewCache,
|
|
29
|
+
showContainers,
|
|
30
|
+
applyPropositions,
|
|
31
|
+
setTargetMigration,
|
|
32
|
+
mergeDecisionsMeta,
|
|
33
|
+
renderedPropositions,
|
|
34
|
+
onDecisionHandler,
|
|
35
|
+
handleConsentFlicker
|
|
36
|
+
}) => {
|
|
36
37
|
return {
|
|
37
38
|
lifecycle: {
|
|
38
|
-
onComponentsRegistered
|
|
39
|
+
onComponentsRegistered() {
|
|
39
40
|
handleConsentFlicker();
|
|
40
41
|
},
|
|
41
42
|
onDecision: onDecisionHandler,
|
|
42
|
-
onBeforeRequest
|
|
43
|
-
|
|
43
|
+
onBeforeRequest({
|
|
44
|
+
request
|
|
45
|
+
}) {
|
|
44
46
|
setTargetMigration(request);
|
|
45
47
|
return Promise.resolve();
|
|
46
48
|
},
|
|
47
|
-
onBeforeEvent
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
onResponse = _ref3$onResponse === void 0 ? _index.noop : _ref3$onResponse,
|
|
56
|
-
_ref3$onRequestFailur = _ref3.onRequestFailure,
|
|
57
|
-
onRequestFailure = _ref3$onRequestFailur === void 0 ? _index.noop : _ref3$onRequestFailur;
|
|
49
|
+
onBeforeEvent({
|
|
50
|
+
event,
|
|
51
|
+
renderDecisions,
|
|
52
|
+
decisionScopes = [],
|
|
53
|
+
personalization = {},
|
|
54
|
+
onResponse = _index.noop,
|
|
55
|
+
onRequestFailure = _index.noop
|
|
56
|
+
}) {
|
|
58
57
|
// Include propositions on all responses, overridden with data as needed
|
|
59
|
-
onResponse(
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
});
|
|
64
|
-
onRequestFailure(function () {
|
|
65
|
-
return showContainers();
|
|
66
|
-
});
|
|
58
|
+
onResponse(() => ({
|
|
59
|
+
propositions: []
|
|
60
|
+
}));
|
|
61
|
+
onRequestFailure(() => showContainers());
|
|
67
62
|
if (isAuthoringModeEnabled()) {
|
|
68
63
|
logger.warn(_loggerMessage.AUTHORING_ENABLED);
|
|
69
64
|
|
|
@@ -73,73 +68,69 @@ var _default = exports.default = function _default(_ref) {
|
|
|
73
68
|
});
|
|
74
69
|
return Promise.resolve();
|
|
75
70
|
}
|
|
76
|
-
|
|
77
|
-
getPageLocation
|
|
78
|
-
renderDecisions
|
|
79
|
-
decisionScopes
|
|
80
|
-
personalization
|
|
81
|
-
event
|
|
71
|
+
const personalizationDetails = (0, _createPersonalizationDetails.default)({
|
|
72
|
+
getPageLocation,
|
|
73
|
+
renderDecisions,
|
|
74
|
+
decisionScopes,
|
|
75
|
+
personalization,
|
|
76
|
+
event,
|
|
82
77
|
isCacheInitialized: viewCache.isInitialized(),
|
|
83
|
-
logger
|
|
78
|
+
logger
|
|
84
79
|
});
|
|
85
|
-
|
|
80
|
+
const decisionsMetaPromises = [];
|
|
86
81
|
if (personalizationDetails.shouldIncludeRenderedPropositions()) {
|
|
87
82
|
decisionsMetaPromises.push(renderedPropositions.clear());
|
|
88
83
|
}
|
|
89
84
|
if (personalizationDetails.shouldFetchData()) {
|
|
90
|
-
|
|
91
|
-
onRequestFailure(
|
|
92
|
-
return cacheUpdate.cancel();
|
|
93
|
-
});
|
|
85
|
+
const cacheUpdate = viewCache.createCacheUpdate(personalizationDetails.getViewName());
|
|
86
|
+
onRequestFailure(() => cacheUpdate.cancel());
|
|
94
87
|
fetchDataHandler({
|
|
95
|
-
cacheUpdate
|
|
96
|
-
personalizationDetails
|
|
97
|
-
event
|
|
98
|
-
onResponse
|
|
88
|
+
cacheUpdate,
|
|
89
|
+
personalizationDetails,
|
|
90
|
+
event,
|
|
91
|
+
onResponse
|
|
99
92
|
});
|
|
100
93
|
} else if (personalizationDetails.shouldUseCachedData()) {
|
|
101
94
|
// eslint-disable-next-line consistent-return
|
|
102
95
|
decisionsMetaPromises.push(viewChangeHandler({
|
|
103
|
-
personalizationDetails
|
|
104
|
-
event
|
|
105
|
-
onResponse
|
|
106
|
-
onRequestFailure
|
|
96
|
+
personalizationDetails,
|
|
97
|
+
event,
|
|
98
|
+
onResponse,
|
|
99
|
+
onRequestFailure
|
|
107
100
|
}));
|
|
108
101
|
}
|
|
109
102
|
|
|
110
103
|
// This promise.all waits for both the pending display notifications to be resolved
|
|
111
104
|
// (i.e. the top of page call to finish rendering) and the view change handler to
|
|
112
105
|
// finish rendering anything for this view.
|
|
113
|
-
return Promise.all(decisionsMetaPromises).then(
|
|
106
|
+
return Promise.all(decisionsMetaPromises).then(decisionsMetas => {
|
|
114
107
|
// We only want to call mergeDecisionsMeta once, but we can get the propositions
|
|
115
108
|
// from two places: the pending display notifications and the view change handler.
|
|
116
|
-
|
|
117
|
-
return dms;
|
|
118
|
-
});
|
|
109
|
+
const decisionsMeta = decisionsMetas.flatMap(dms => dms);
|
|
119
110
|
if ((0, _index.isNonEmptyArray)(decisionsMeta)) {
|
|
120
111
|
mergeDecisionsMeta(event, decisionsMeta, [_propositionEventType.PropositionEventType.DISPLAY]);
|
|
121
112
|
}
|
|
122
113
|
});
|
|
123
114
|
},
|
|
124
|
-
onClick
|
|
125
|
-
|
|
126
|
-
|
|
115
|
+
onClick({
|
|
116
|
+
event,
|
|
117
|
+
clickedElement
|
|
118
|
+
}) {
|
|
127
119
|
onClickHandler({
|
|
128
|
-
event
|
|
129
|
-
clickedElement
|
|
120
|
+
event,
|
|
121
|
+
clickedElement
|
|
130
122
|
});
|
|
131
123
|
}
|
|
132
124
|
},
|
|
133
125
|
commands: {
|
|
134
126
|
applyPropositions: {
|
|
135
|
-
optionsValidator:
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
});
|
|
140
|
-
},
|
|
127
|
+
optionsValidator: options => (0, _validateApplyPropositionsOptions.default)({
|
|
128
|
+
logger,
|
|
129
|
+
options
|
|
130
|
+
}),
|
|
141
131
|
run: applyPropositions
|
|
142
132
|
}
|
|
143
133
|
}
|
|
144
134
|
};
|
|
145
|
-
};
|
|
135
|
+
};
|
|
136
|
+
exports.default = _default;
|
|
@@ -2,12 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
exports.default = void 0;
|
|
4
4
|
var _index = require("../../utils/index.js");
|
|
5
|
-
|
|
6
|
-
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
7
|
-
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
8
|
-
function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
|
|
9
|
-
function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }
|
|
10
|
-
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; } /*
|
|
5
|
+
/*
|
|
11
6
|
Copyright 2023 Adobe. All rights reserved.
|
|
12
7
|
This file is licensed to you under the Apache License, Version 2.0 (the "License");
|
|
13
8
|
you may not use this file except in compliance with the License. You may obtain a copy
|
|
@@ -18,24 +13,28 @@ the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTA
|
|
|
18
13
|
OF ANY KIND, either express or implied. See the License for the specific language
|
|
19
14
|
governing permissions and limitations under the License.
|
|
20
15
|
*/
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
16
|
+
|
|
17
|
+
const DECISIONS_HANDLE = "personalization:decisions";
|
|
18
|
+
var _default = ({
|
|
19
|
+
prehidingStyle,
|
|
20
|
+
showContainers,
|
|
21
|
+
hideContainers,
|
|
22
|
+
mergeQuery,
|
|
23
|
+
processPropositions,
|
|
24
|
+
createProposition,
|
|
25
|
+
notificationHandler,
|
|
26
|
+
consent
|
|
27
|
+
}) => {
|
|
28
|
+
return ({
|
|
29
|
+
cacheUpdate,
|
|
30
|
+
personalizationDetails,
|
|
31
|
+
event,
|
|
32
|
+
onResponse
|
|
33
|
+
}) => {
|
|
34
|
+
const {
|
|
35
|
+
state,
|
|
36
|
+
wasSet
|
|
37
|
+
} = consent.current();
|
|
39
38
|
if (!(state === "out" && wasSet)) {
|
|
40
39
|
if (personalizationDetails.isRenderDecisions()) {
|
|
41
40
|
hideContainers(prehidingStyle);
|
|
@@ -47,31 +46,27 @@ var _default = exports.default = function _default(_ref) {
|
|
|
47
46
|
|
|
48
47
|
// This needs to be called before the response so that future sendEvent calls
|
|
49
48
|
// can know to wait until this request is complete for pending display notifications.
|
|
50
|
-
|
|
51
|
-
onResponse(
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
nonRenderedPropositions = _groupBy$proposition === void 0 ? [] : _groupBy$proposition;
|
|
66
|
-
var currentViewPropositions = cacheUpdate.update(viewPropositions);
|
|
67
|
-
var render;
|
|
68
|
-
var returnedPropositions;
|
|
69
|
-
var returnedDecisions;
|
|
49
|
+
const handleNotifications = notificationHandler(personalizationDetails.isRenderDecisions(), personalizationDetails.isSendDisplayEvent(), personalizationDetails.getViewName());
|
|
50
|
+
onResponse(({
|
|
51
|
+
response
|
|
52
|
+
}) => {
|
|
53
|
+
const handles = response.getPayloadsByType(DECISIONS_HANDLE);
|
|
54
|
+
const propositions = handles.map(handle => createProposition(handle));
|
|
55
|
+
const {
|
|
56
|
+
page: pagePropositions = [],
|
|
57
|
+
view: viewPropositions = [],
|
|
58
|
+
proposition: nonRenderedPropositions = []
|
|
59
|
+
} = (0, _index.groupBy)(propositions, p => p.getScopeType());
|
|
60
|
+
const currentViewPropositions = cacheUpdate.update(viewPropositions);
|
|
61
|
+
let render;
|
|
62
|
+
let returnedPropositions;
|
|
63
|
+
let returnedDecisions;
|
|
70
64
|
if (personalizationDetails.isRenderDecisions()) {
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
65
|
+
({
|
|
66
|
+
render,
|
|
67
|
+
returnedPropositions,
|
|
68
|
+
returnedDecisions
|
|
69
|
+
} = processPropositions([...pagePropositions, ...currentViewPropositions], nonRenderedPropositions));
|
|
75
70
|
render().then(handleNotifications);
|
|
76
71
|
|
|
77
72
|
// Render could take a long time especially if one of the renders
|
|
@@ -79,9 +74,10 @@ var _default = exports.default = function _default(_ref) {
|
|
|
79
74
|
// immediately, and whatever renders quickly will not have flicker.
|
|
80
75
|
showContainers();
|
|
81
76
|
} else {
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
77
|
+
({
|
|
78
|
+
returnedPropositions,
|
|
79
|
+
returnedDecisions
|
|
80
|
+
} = processPropositions([], [...pagePropositions, ...currentViewPropositions, ...nonRenderedPropositions]));
|
|
85
81
|
}
|
|
86
82
|
return {
|
|
87
83
|
propositions: returnedPropositions,
|
|
@@ -89,4 +85,5 @@ var _default = exports.default = function _default(_ref) {
|
|
|
89
85
|
};
|
|
90
86
|
});
|
|
91
87
|
};
|
|
92
|
-
};
|
|
88
|
+
};
|
|
89
|
+
exports.default = _default;
|
|
@@ -12,9 +12,9 @@ the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTA
|
|
|
12
12
|
OF ANY KIND, either express or implied. See the License for the specific language
|
|
13
13
|
governing permissions and limitations under the License.
|
|
14
14
|
*/
|
|
15
|
-
var _default =
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
15
|
+
var _default = ({
|
|
16
|
+
window
|
|
17
|
+
}) => () => {
|
|
18
|
+
return window.location;
|
|
19
|
+
};
|
|
20
|
+
exports.default = _default;
|