@adobe/alloy 2.18.0 → 2.19.0-beta.1
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/libEs5/baseCode/index.js +2 -12
- package/libEs5/components/ActivityCollector/attachClickActivityCollector.js +9 -12
- package/libEs5/components/ActivityCollector/configValidators.js +1 -4
- package/libEs5/components/ActivityCollector/createGetLinkDetails.js +7 -17
- package/libEs5/components/ActivityCollector/createLinkClick.js +3 -8
- package/libEs5/components/ActivityCollector/getLinkName.js +8 -26
- package/libEs5/components/ActivityCollector/getLinkRegion.js +2 -16
- package/libEs5/components/ActivityCollector/index.js +8 -18
- package/libEs5/components/ActivityCollector/utils.js +3 -40
- package/libEs5/components/Audiences/index.js +2 -8
- package/libEs5/components/Audiences/injectProcessDestinations.js +20 -19
- package/libEs5/components/Audiences/injectProcessResponse.js +0 -5
- package/libEs5/components/Context/createComponent.js +0 -4
- package/libEs5/components/Context/implementationDetails.js +0 -5
- package/libEs5/components/Context/index.js +12 -19
- package/libEs5/components/Context/injectDevice.js +3 -20
- package/libEs5/components/Context/injectEnvironment.js +1 -8
- package/libEs5/components/Context/injectHighEntropyUserAgentHints.js +14 -21
- package/libEs5/components/Context/injectPlaceContext.js +2 -8
- package/libEs5/components/Context/injectTimestamp.js +0 -3
- package/libEs5/components/Context/injectWeb.js +0 -3
- package/libEs5/components/DataCollector/index.js +25 -35
- package/libEs5/components/DataCollector/validateApplyResponse.js +6 -4
- package/libEs5/components/DataCollector/validateUserEventOptions.js +5 -6
- package/libEs5/components/EventMerge/createComponent.js +0 -2
- package/libEs5/components/EventMerge/createEventMergeId.js +0 -3
- package/libEs5/components/EventMerge/index.js +1 -4
- package/libEs5/components/Identity/addEcidQueryToPayload.js +0 -3
- package/libEs5/components/Identity/addEcidToPayload.js +0 -3
- package/libEs5/components/Identity/appendIdentityToUrl/appendIdentityToUrlOptionsValidator.js +0 -5
- package/libEs5/components/Identity/appendIdentityToUrl/injectAppendIdentityToUrl.js +5 -19
- package/libEs5/components/Identity/configValidators.js +1 -2
- package/libEs5/components/Identity/constants/authState.js +1 -1
- package/libEs5/components/Identity/constants/defaultIdSyncTtlMinutes.js +0 -2
- package/libEs5/components/Identity/createComponent.js +16 -22
- package/libEs5/components/Identity/createLegacyIdentity.js +5 -19
- package/libEs5/components/Identity/getEcidFromResponse.js +0 -4
- package/libEs5/components/Identity/getIdentity/createGetIdentity.js +5 -9
- package/libEs5/components/Identity/getIdentity/createIdentityRequest.js +1 -4
- package/libEs5/components/Identity/getIdentity/createIdentityRequestPayload.js +0 -3
- package/libEs5/components/Identity/getIdentity/getIdentityOptionsValidator.js +0 -5
- package/libEs5/components/Identity/index.js +8 -29
- package/libEs5/components/Identity/injectAddLegacyEcidToPayload.js +1 -5
- package/libEs5/components/Identity/injectAddQueryStringIdentityToPayload.js +22 -28
- package/libEs5/components/Identity/injectAwaitIdentityCookie.js +7 -8
- package/libEs5/components/Identity/injectEnsureSingleIdentity.js +17 -20
- package/libEs5/components/Identity/injectHandleResponseForIdSyncs.js +0 -2
- package/libEs5/components/Identity/injectProcessIdSyncs.js +2 -7
- package/libEs5/components/Identity/injectSetDomainForInitialIdentityPayload.js +1 -4
- package/libEs5/components/Identity/visitorService/awaitVisitorOptIn.js +0 -3
- package/libEs5/components/Identity/visitorService/getVisitor.js +0 -3
- package/libEs5/components/Identity/visitorService/injectGetEcidFromVisitor.js +2 -7
- package/libEs5/components/LibraryInfo/index.js +13 -21
- package/libEs5/components/MachineLearning/index.js +1 -3
- package/libEs5/components/MachineLearning/processResponse.js +0 -2
- package/libEs5/components/Personalization/constants/eventType.js +1 -1
- package/libEs5/components/Personalization/constants/loggerMessage.js +0 -1
- package/libEs5/components/Personalization/constants/propositionEventType.js +1 -1
- package/libEs5/components/Personalization/constants/schema.js +1 -1
- package/libEs5/components/Personalization/constants/scopeType.js +1 -1
- package/libEs5/components/Personalization/constants/surface.js +1 -1
- package/libEs5/components/Personalization/createApplyPropositions.js +47 -49
- package/libEs5/components/Personalization/createClickStorage.js +1 -10
- package/libEs5/components/Personalization/createCollect.js +5 -15
- package/libEs5/components/Personalization/createComponent.js +40 -42
- package/libEs5/components/Personalization/createFetchDataHandler.js +81 -26
- package/libEs5/components/Personalization/createGetPageLocation.js +0 -2
- package/libEs5/components/Personalization/createOnClickHandler.js +8 -18
- package/libEs5/components/Personalization/{utils/composePersonalizationResultingObject.js → createPendingNotificationsHandler.js} +9 -18
- package/libEs5/components/Personalization/createPersonalizationDetails.js +24 -30
- package/libEs5/components/Personalization/createSetTargetMigration.js +0 -5
- package/libEs5/components/Personalization/createViewCacheManager.js +54 -28
- package/libEs5/components/Personalization/createViewChangeHandler.js +25 -37
- package/libEs5/components/Personalization/dom-actions/action.js +6 -37
- package/libEs5/components/Personalization/dom-actions/addNonceToInlineStyleElements.js +1 -13
- package/libEs5/components/Personalization/dom-actions/appendHtml.js +0 -7
- package/libEs5/components/Personalization/dom-actions/clicks/collectClicks.js +16 -27
- package/{libEs6/components/Personalization/utils/composePersonalizationResultingObject.js → libEs5/components/Personalization/dom-actions/createPreprocess.js} +14 -14
- package/libEs5/components/Personalization/dom-actions/dom/createFragment.js +0 -4
- package/libEs5/components/Personalization/dom-actions/dom/getAttribute.js +0 -2
- package/libEs5/components/Personalization/dom-actions/dom/getChildNodes.js +0 -5
- package/libEs5/components/Personalization/dom-actions/dom/getChildren.js +0 -5
- package/libEs5/components/Personalization/dom-actions/dom/getElementById.js +0 -3
- package/libEs5/components/Personalization/dom-actions/dom/getFirstChild.js +0 -2
- package/libEs5/components/Personalization/dom-actions/dom/getNextSibling.js +0 -2
- package/libEs5/components/Personalization/dom-actions/dom/getNonce.js +4 -10
- package/libEs5/components/Personalization/dom-actions/dom/getParent.js +0 -2
- package/libEs5/components/Personalization/dom-actions/dom/helperForEq.js +1 -6
- package/libEs5/components/Personalization/dom-actions/dom/index.js +0 -14
- package/libEs5/components/Personalization/dom-actions/dom/insertAfter.js +0 -6
- package/libEs5/components/Personalization/dom-actions/dom/insertBefore.js +0 -5
- package/libEs5/components/Personalization/dom-actions/dom/matchesSelectorWithEq.js +6 -11
- package/libEs5/components/Personalization/dom-actions/dom/removeAttribute.js +0 -2
- package/libEs5/components/Personalization/dom-actions/dom/selectNodesWithEq.js +16 -36
- package/libEs5/components/Personalization/dom-actions/dom/setAttribute.js +0 -2
- package/libEs5/components/Personalization/dom-actions/dom/setStyle.js +0 -4
- package/libEs5/components/Personalization/dom-actions/images.js +1 -11
- package/libEs5/components/Personalization/dom-actions/index.js +1 -10
- package/libEs5/components/Personalization/dom-actions/initDomActionsModules.js +2 -14
- package/libEs5/components/Personalization/dom-actions/insertHtmlAfter.js +0 -6
- package/libEs5/components/Personalization/dom-actions/insertHtmlBefore.js +0 -6
- package/libEs5/components/Personalization/dom-actions/prependHtml.js +4 -12
- package/libEs5/components/Personalization/dom-actions/rearrangeChildren.js +1 -6
- package/libEs5/components/Personalization/dom-actions/remapCustomCodeOffers.js +2 -8
- package/libEs5/components/Personalization/dom-actions/remapHeadOffers.js +5 -15
- package/libEs5/components/Personalization/dom-actions/replaceHtml.js +0 -4
- package/libEs5/components/Personalization/dom-actions/scripts.js +13 -35
- package/libEs5/components/Personalization/dom-actions/setAttributes.js +0 -3
- package/libEs5/components/Personalization/dom-actions/setHtml.js +1 -6
- package/libEs5/components/Personalization/dom-actions/setStyles.js +12 -8
- package/libEs5/components/Personalization/dom-actions/setText.js +0 -2
- package/libEs5/components/Personalization/dom-actions/swapImage.js +6 -9
- package/libEs5/components/Personalization/event.js +2 -10
- package/libEs5/components/Personalization/flicker/index.js +17 -31
- package/libEs5/components/Personalization/handlers/createProcessDomAction.js +54 -0
- package/libEs5/components/Personalization/handlers/createProcessHtmlContent.js +38 -0
- package/libEs5/components/Personalization/handlers/createProcessPropositions.js +195 -0
- package/libEs5/components/Personalization/handlers/createProcessRedirect.js +42 -0
- package/libEs5/components/Personalization/handlers/injectCreateProposition.js +118 -0
- package/libEs5/components/Personalization/{dom-actions/clicks/index.js → handlers/processDefaultContent.js} +7 -5
- package/libEs5/components/Personalization/index.js +72 -80
- package/libEs5/components/Personalization/utils/addRenderAttemptedToDecisions.js +1 -4
- package/libEs5/components/Personalization/utils/createAsyncArray.js +39 -0
- package/libEs5/components/Personalization/utils/isAuthoringModeEnabled.js +0 -2
- package/libEs5/components/Personalization/utils/isPageWideScope.js +0 -4
- package/libEs5/components/Personalization/utils/surfaceUtils.js +1 -27
- package/libEs5/components/Personalization/validateApplyPropositionsOptions.js +5 -8
- package/libEs5/components/Privacy/computeConsentHash.js +11 -8
- package/libEs5/components/Privacy/createComponent.js +24 -26
- package/libEs5/components/Privacy/createConsentHashStore.js +14 -15
- package/libEs5/components/Privacy/createConsentRequest.js +1 -4
- package/libEs5/components/Privacy/createConsentRequestPayload.js +0 -5
- package/libEs5/components/Privacy/createStoredConsent.js +2 -6
- package/libEs5/components/Privacy/index.js +5 -15
- package/libEs5/components/Privacy/injectSendSetConsentRequest.js +7 -12
- package/libEs5/components/Privacy/parseConsentCookie.js +3 -13
- package/libEs5/components/Privacy/validateSetConsentOptions.js +0 -4
- package/libEs5/constants/apiVersion.js +0 -1
- package/libEs5/constants/browser.js +1 -1
- package/libEs5/constants/consentPurpose.js +1 -1
- package/libEs5/constants/consentStatus.js +1 -1
- package/libEs5/constants/cookieNameKey.js +1 -1
- package/libEs5/constants/cookieNamePrefix.js +0 -1
- package/libEs5/constants/coreCommands.js +1 -1
- package/libEs5/constants/debugQueryParam.js +0 -1
- package/libEs5/constants/domain.js +1 -1
- package/libEs5/constants/ecidNamespace.js +0 -1
- package/libEs5/constants/edgeBasePath.js +0 -1
- package/libEs5/constants/elementAttribute.js +1 -1
- package/libEs5/constants/highEntropyUserAgentClientHints.js +0 -1
- package/libEs5/constants/httpHeaderNames.js +1 -1
- package/libEs5/constants/httpStatusCode.js +1 -1
- package/libEs5/constants/identityMapAuthenticatedState.js +0 -1
- package/libEs5/constants/legacyCookies.js +1 -1
- package/libEs5/constants/libraryName.js +0 -1
- package/libEs5/constants/libraryVersion.js +1 -2
- package/libEs5/constants/namespace.js +0 -1
- package/libEs5/constants/pageWideScope.js +0 -1
- package/libEs5/constants/queryStringIdentityParam.js +0 -1
- package/libEs5/constants/shadowSeparator.js +0 -1
- package/libEs5/constants/tagName.js +1 -1
- package/libEs5/core/buildAndValidateConfig.js +21 -32
- package/libEs5/core/componentCreators.js +0 -12
- package/libEs5/core/config/createConfig.js +1 -3
- package/libEs5/core/config/createCoreConfigs.js +0 -7
- package/libEs5/core/consent/createConsent.js +1 -11
- package/libEs5/core/consent/createConsentStateMachine.js +1 -18
- package/libEs5/core/createComponentRegistry.js +4 -14
- package/libEs5/core/createCookieTransfer.js +9 -18
- package/libEs5/core/createEvent.js +41 -32
- package/libEs5/core/createEventManager.js +27 -33
- package/libEs5/core/createInstanceFunction.js +0 -2
- package/libEs5/core/createLifecycle.js +14 -14
- package/libEs5/core/createLogController.js +5 -17
- package/libEs5/core/createLogger.js +3 -17
- package/libEs5/core/edgeNetwork/handleRequestFailure.js +0 -3
- package/libEs5/core/edgeNetwork/injectApplyResponse.js +12 -18
- package/libEs5/core/edgeNetwork/injectExtractEdgeInfo.js +4 -8
- package/libEs5/core/edgeNetwork/injectGetLocationHint.js +1 -11
- package/libEs5/core/edgeNetwork/injectProcessWarningsAndErrors.js +6 -11
- package/libEs5/core/edgeNetwork/injectSendEdgeNetworkRequest.js +18 -26
- package/libEs5/core/edgeNetwork/mergeLifecycleResponses.js +11 -10
- package/libEs5/core/index.js +12 -54
- package/libEs5/core/initializeComponents.js +5 -10
- package/libEs5/core/injectCreateResponse.js +8 -16
- package/libEs5/core/injectExecuteCommand.js +8 -19
- package/libEs5/core/injectHandleError.js +4 -8
- package/libEs5/core/injectShouldTransferCookie.js +1 -5
- package/libEs5/core/network/getRequestRetryDelay.js +10 -17
- package/libEs5/core/network/injectSendNetworkRequest.js +20 -22
- package/libEs5/core/network/isRequestRetryable.js +5 -7
- package/libEs5/core/network/requestMethods/injectSendBeaconRequest.js +5 -8
- package/libEs5/core/network/requestMethods/injectSendFetchRequest.js +0 -2
- package/libEs5/core/network/requestMethods/injectSendXhrRequest.js +0 -5
- package/libEs5/core/validateCommandOptions.js +5 -9
- package/libEs5/index.js +7 -15
- package/libEs5/utils/areThirdPartyCookiesSupportedByDefault.js +1 -5
- package/libEs5/utils/assign.js +0 -2
- package/libEs5/utils/assignIf.js +0 -4
- package/libEs5/utils/clone.js +0 -3
- package/libEs5/utils/cookieJar.js +0 -2
- package/libEs5/utils/crc32.js +0 -8
- package/libEs5/utils/createCallbackAggregator.js +0 -4
- package/libEs5/utils/createLoggingCookieJar.js +1 -6
- package/libEs5/utils/createMerger.js +0 -4
- package/libEs5/utils/createTaskQueue.js +0 -7
- package/libEs5/utils/deduplicateArray.js +32 -0
- package/libEs5/utils/deepAssign.js +2 -10
- package/libEs5/utils/defer.js +0 -3
- package/libEs5/utils/dom/appendNode.js +0 -2
- package/libEs5/utils/dom/awaitSelector.js +1 -29
- package/libEs5/utils/dom/createNode.js +1 -5
- package/libEs5/utils/dom/index.js +0 -8
- package/libEs5/utils/dom/isShadowSelector.js +0 -3
- package/libEs5/utils/dom/matchesSelector.js +2 -5
- package/libEs5/utils/dom/querySelectorAll.js +3 -6
- package/libEs5/utils/dom/removeNode.js +0 -4
- package/libEs5/utils/dom/selectNodes.js +0 -8
- package/libEs5/utils/dom/selectNodesWithShadow.js +6 -20
- package/libEs5/utils/endsWith.js +0 -3
- package/libEs5/utils/filterObject.js +13 -17
- package/libEs5/utils/find.js +0 -5
- package/libEs5/utils/fireImage.js +2 -7
- package/libEs5/utils/flatMap.js +0 -2
- package/libEs5/utils/getApexDomain.js +4 -8
- package/libEs5/utils/getBrowser.js +11 -11
- package/libEs5/utils/getLastArrayItems.js +0 -3
- package/libEs5/utils/getNamespacedCookieName.js +0 -4
- package/libEs5/utils/groupBy.js +0 -5
- package/libEs5/utils/includes.js +0 -3
- package/libEs5/utils/index.js +7 -55
- package/libEs5/utils/injectDoesIdentityCookieExist.js +0 -6
- package/libEs5/utils/injectFireReferrerHideableImage.js +21 -29
- package/libEs5/utils/injectStorage.js +1 -7
- package/libEs5/utils/intersection.js +0 -4
- package/libEs5/utils/isBlankString.js +0 -4
- package/libEs5/utils/isBoolean.js +0 -3
- package/libEs5/utils/isEmptyObject.js +0 -4
- package/libEs5/utils/isFunction.js +0 -3
- package/libEs5/utils/isInteger.js +0 -4
- package/libEs5/utils/isNamespacedCookieName.js +0 -5
- package/libEs5/utils/isNil.js +0 -3
- package/libEs5/utils/isNonEmptyArray.js +0 -3
- package/libEs5/utils/isNonEmptyString.js +0 -4
- package/libEs5/utils/isNumber.js +0 -3
- package/libEs5/utils/isObject.js +11 -5
- package/libEs5/utils/isString.js +0 -3
- package/libEs5/utils/isUnique.js +0 -7
- package/libEs5/utils/isValidRegExp.js +0 -3
- package/libEs5/utils/memoize.js +0 -5
- package/libEs5/utils/noop.js +0 -3
- package/libEs5/utils/padStart.js +0 -6
- package/libEs5/utils/prepareConfigOverridesForEdge.js +13 -21
- package/libEs5/utils/querystring.js +0 -2
- package/libEs5/utils/request/createAddIdentity.js +0 -2
- package/libEs5/utils/request/createDataCollectionRequest.js +1 -6
- package/libEs5/utils/request/createDataCollectionRequestPayload.js +0 -8
- package/libEs5/utils/request/createGetAssuranceValidationTokenParams.js +2 -11
- package/libEs5/utils/request/createHasIdentity.js +0 -2
- package/libEs5/utils/request/createRequest.js +3 -6
- package/libEs5/utils/request/createRequestParams.js +4 -12
- package/libEs5/utils/request/createRequestPayload.js +2 -7
- package/libEs5/utils/request/index.js +0 -8
- package/libEs5/utils/sanitizeOrgIdForCookieName.js +0 -2
- package/libEs5/utils/stackError.js +1 -6
- package/libEs5/utils/startsWith.js +0 -3
- package/libEs5/utils/stringToBoolean.js +0 -3
- package/libEs5/utils/toArray.js +0 -4
- package/libEs5/utils/toError.js +0 -3
- package/libEs5/utils/toISOStringLocal.js +3 -7
- package/libEs5/utils/toInteger.js +2 -8
- package/libEs5/utils/updateErrorMessage.js +3 -5
- package/libEs5/utils/uuid.js +0 -2
- package/libEs5/utils/validateConfigOverride.js +0 -3
- package/libEs5/utils/validateIdentityMap.js +0 -4
- package/libEs5/utils/validation/booleanValidator.js +0 -4
- package/libEs5/utils/validation/callbackValidator.js +0 -4
- package/libEs5/utils/validation/createAnyOfValidator.js +0 -5
- package/libEs5/utils/validation/createArrayOfValidator.js +0 -6
- package/libEs5/utils/validation/createDefaultValidator.js +0 -3
- package/libEs5/utils/validation/createDeprecatedValidator.js +13 -21
- package/libEs5/utils/validation/createLiteralValidator.js +0 -3
- package/libEs5/utils/validation/createMapOfValuesValidator.js +0 -9
- package/libEs5/utils/validation/createMinimumValidator.js +0 -3
- package/libEs5/utils/validation/createNoUnknownFieldsValidator.js +0 -4
- package/libEs5/utils/validation/createNonEmptyValidator.js +0 -6
- package/libEs5/utils/validation/createObjectOfValidator.js +2 -10
- package/libEs5/utils/validation/createUniqueItemsValidator.js +0 -4
- package/libEs5/utils/validation/createUniqueValidator.js +0 -3
- package/libEs5/utils/validation/domainValidator.js +1 -4
- package/libEs5/utils/validation/index.js +76 -59
- package/libEs5/utils/validation/integerValidator.js +0 -4
- package/libEs5/utils/validation/numberValidator.js +0 -4
- package/libEs5/utils/validation/regexpValidator.js +0 -4
- package/libEs5/utils/validation/requiredValidator.js +0 -3
- package/libEs5/utils/validation/stringValidator.js +0 -4
- package/libEs5/utils/validation/utils.js +7 -21
- package/libEs5/utils/values.js +0 -3
- package/libEs6/baseCode/index.js +3 -8
- package/libEs6/components/ActivityCollector/attachClickActivityCollector.js +5 -6
- package/libEs6/components/ActivityCollector/configValidators.js +1 -0
- package/libEs6/components/ActivityCollector/createGetLinkDetails.js +1 -8
- package/libEs6/components/ActivityCollector/createLinkClick.js +0 -3
- package/libEs6/components/ActivityCollector/getLinkName.js +8 -23
- package/libEs6/components/ActivityCollector/getLinkRegion.js +2 -12
- package/libEs6/components/ActivityCollector/index.js +3 -6
- package/libEs6/components/ActivityCollector/utils.js +2 -29
- package/libEs6/components/Audiences/index.js +1 -2
- package/libEs6/components/Audiences/injectProcessDestinations.js +3 -6
- package/libEs6/components/Audiences/injectProcessResponse.js +1 -2
- package/libEs6/components/Context/createComponent.js +1 -2
- package/libEs6/components/Context/index.js +3 -3
- package/libEs6/components/Context/injectDevice.js +1 -16
- package/libEs6/components/Context/injectEnvironment.js +1 -4
- package/libEs6/components/Context/injectHighEntropyUserAgentHints.js +2 -5
- package/libEs6/components/Context/injectPlaceContext.js +2 -5
- package/libEs6/components/Context/injectTimestamp.js +1 -0
- package/libEs6/components/Context/injectWeb.js +1 -0
- package/libEs6/components/DataCollector/index.js +5 -12
- package/libEs6/components/DataCollector/validateApplyResponse.js +6 -1
- package/libEs6/components/DataCollector/validateUserEventOptions.js +6 -2
- package/libEs6/components/EventMerge/createComponent.js +1 -0
- package/libEs6/components/EventMerge/createEventMergeId.js +1 -0
- package/libEs6/components/EventMerge/index.js +1 -2
- package/libEs6/components/Identity/addEcidQueryToPayload.js +1 -0
- package/libEs6/components/Identity/addEcidToPayload.js +1 -0
- package/libEs6/components/Identity/appendIdentityToUrl/appendIdentityToUrlOptionsValidator.js +1 -1
- package/libEs6/components/Identity/appendIdentityToUrl/injectAppendIdentityToUrl.js +0 -4
- package/libEs6/components/Identity/configValidators.js +1 -0
- package/libEs6/components/Identity/constants/authState.js +1 -0
- package/libEs6/components/Identity/constants/defaultIdSyncTtlMinutes.js +1 -0
- package/libEs6/components/Identity/createComponent.js +5 -7
- package/libEs6/components/Identity/createLegacyIdentity.js +0 -10
- package/libEs6/components/Identity/getEcidFromResponse.js +1 -0
- package/libEs6/components/Identity/getIdentity/createGetIdentity.js +1 -0
- package/libEs6/components/Identity/getIdentity/createIdentityRequest.js +1 -3
- package/libEs6/components/Identity/getIdentity/createIdentityRequestPayload.js +1 -0
- package/libEs6/components/Identity/getIdentity/getIdentityOptionsValidator.js +1 -1
- package/libEs6/components/Identity/index.js +1 -2
- package/libEs6/components/Identity/injectAddLegacyEcidToPayload.js +1 -1
- package/libEs6/components/Identity/injectAddQueryStringIdentityToPayload.js +5 -7
- package/libEs6/components/Identity/injectAwaitIdentityCookie.js +6 -3
- package/libEs6/components/Identity/injectEnsureSingleIdentity.js +12 -11
- package/libEs6/components/Identity/injectHandleResponseForIdSyncs.js +1 -0
- package/libEs6/components/Identity/injectProcessIdSyncs.js +0 -4
- package/libEs6/components/Identity/injectSetDomainForInitialIdentityPayload.js +1 -0
- package/libEs6/components/Identity/visitorService/awaitVisitorOptIn.js +1 -0
- package/libEs6/components/Identity/visitorService/getVisitor.js +1 -0
- package/libEs6/components/Identity/visitorService/injectGetEcidFromVisitor.js +1 -2
- package/libEs6/components/LibraryInfo/index.js +3 -6
- package/libEs6/components/MachineLearning/index.js +1 -2
- package/libEs6/components/MachineLearning/processResponse.js +1 -0
- package/libEs6/components/Personalization/constants/eventType.js +1 -0
- package/libEs6/components/Personalization/constants/propositionEventType.js +1 -0
- package/libEs6/components/Personalization/constants/schema.js +1 -0
- package/libEs6/components/Personalization/constants/scopeType.js +1 -0
- package/libEs6/components/Personalization/constants/surface.js +1 -0
- package/libEs6/components/Personalization/createApplyPropositions.js +31 -34
- package/libEs6/components/Personalization/createClickStorage.js +1 -8
- package/libEs6/components/Personalization/createCollect.js +0 -5
- package/libEs6/components/Personalization/createComponent.js +23 -21
- package/libEs6/components/Personalization/createFetchDataHandler.js +61 -10
- package/libEs6/components/Personalization/createGetPageLocation.js +1 -0
- package/libEs6/components/Personalization/createOnClickHandler.js +4 -7
- package/{libEs5/components/Personalization/dom-actions/click.js → libEs6/components/Personalization/createPendingNotificationsHandler.js} +11 -15
- package/libEs6/components/Personalization/createPersonalizationDetails.js +9 -22
- package/libEs6/components/Personalization/createSetTargetMigration.js +1 -1
- package/libEs6/components/Personalization/createViewCacheManager.js +50 -24
- package/libEs6/components/Personalization/createViewChangeHandler.js +25 -29
- package/libEs6/components/Personalization/dom-actions/action.js +5 -14
- package/libEs6/components/Personalization/dom-actions/addNonceToInlineStyleElements.js +1 -8
- package/libEs6/components/Personalization/dom-actions/appendHtml.js +1 -0
- package/libEs6/components/Personalization/dom-actions/clicks/collectClicks.js +2 -14
- package/libEs6/components/Personalization/dom-actions/{click.js → createPreprocess.js} +7 -11
- package/libEs6/components/Personalization/dom-actions/dom/createFragment.js +1 -0
- package/libEs6/components/Personalization/dom-actions/dom/getAttribute.js +1 -0
- package/libEs6/components/Personalization/dom-actions/dom/getChildNodes.js +1 -2
- package/libEs6/components/Personalization/dom-actions/dom/getChildren.js +1 -2
- package/libEs6/components/Personalization/dom-actions/dom/getFirstChild.js +1 -0
- package/libEs6/components/Personalization/dom-actions/dom/getNextSibling.js +1 -0
- package/libEs6/components/Personalization/dom-actions/dom/getNonce.js +6 -5
- package/libEs6/components/Personalization/dom-actions/dom/getParent.js +1 -0
- package/libEs6/components/Personalization/dom-actions/dom/helperForEq.js +1 -0
- package/libEs6/components/Personalization/dom-actions/dom/index.js +1 -0
- package/libEs6/components/Personalization/dom-actions/dom/insertAfter.js +1 -2
- package/libEs6/components/Personalization/dom-actions/dom/insertBefore.js +1 -2
- package/libEs6/components/Personalization/dom-actions/dom/matchesSelectorWithEq.js +7 -6
- package/libEs6/components/Personalization/dom-actions/dom/removeAttribute.js +1 -0
- package/libEs6/components/Personalization/dom-actions/dom/selectNodesWithEq.js +6 -18
- package/libEs6/components/Personalization/dom-actions/dom/setAttribute.js +1 -0
- package/libEs6/components/Personalization/dom-actions/dom/setStyle.js +1 -2
- package/libEs6/components/Personalization/dom-actions/images.js +1 -1
- package/libEs6/components/Personalization/dom-actions/index.js +2 -2
- package/libEs6/components/Personalization/dom-actions/initDomActionsModules.js +4 -7
- package/libEs6/components/Personalization/dom-actions/insertHtmlAfter.js +1 -0
- package/libEs6/components/Personalization/dom-actions/insertHtmlBefore.js +1 -0
- package/libEs6/components/Personalization/dom-actions/prependHtml.js +5 -5
- package/libEs6/components/Personalization/dom-actions/rearrangeChildren.js +1 -2
- package/libEs6/components/Personalization/dom-actions/remapCustomCodeOffers.js +0 -3
- package/libEs6/components/Personalization/dom-actions/remapHeadOffers.js +4 -6
- package/libEs6/components/Personalization/dom-actions/replaceHtml.js +1 -0
- package/libEs6/components/Personalization/dom-actions/scripts.js +5 -16
- package/libEs6/components/Personalization/dom-actions/setAttributes.js +1 -0
- package/libEs6/components/Personalization/dom-actions/setHtml.js +1 -2
- package/libEs6/components/Personalization/dom-actions/setStyles.js +1 -0
- package/libEs6/components/Personalization/dom-actions/setText.js +1 -0
- package/libEs6/components/Personalization/dom-actions/swapImage.js +7 -4
- package/libEs6/components/Personalization/event.js +4 -4
- package/libEs6/components/Personalization/flicker/index.js +9 -12
- package/libEs6/components/Personalization/handlers/createProcessDomAction.js +48 -0
- package/libEs6/components/Personalization/handlers/createProcessHtmlContent.js +34 -0
- package/libEs6/components/Personalization/handlers/createProcessPropositions.js +175 -0
- package/libEs6/components/Personalization/handlers/createProcessRedirect.js +38 -0
- package/libEs6/components/Personalization/handlers/injectCreateProposition.js +113 -0
- package/libEs6/components/Personalization/{dom-actions/clicks/index.js → handlers/processDefaultContent.js} +7 -3
- package/libEs6/components/Personalization/index.js +61 -42
- package/libEs6/components/Personalization/utils/addRenderAttemptedToDecisions.js +1 -0
- package/libEs6/components/Personalization/utils/createAsyncArray.js +35 -0
- package/libEs6/components/Personalization/utils/isAuthoringModeEnabled.js +1 -0
- package/libEs6/components/Personalization/utils/isPageWideScope.js +1 -0
- package/libEs6/components/Personalization/utils/surfaceUtils.js +1 -20
- package/libEs6/components/Personalization/validateApplyPropositionsOptions.js +4 -4
- package/libEs6/components/Privacy/computeConsentHash.js +3 -4
- package/libEs6/components/Privacy/createComponent.js +5 -10
- package/libEs6/components/Privacy/createConsentHashStore.js +0 -10
- package/libEs6/components/Privacy/createConsentRequest.js +1 -3
- package/libEs6/components/Privacy/createConsentRequestPayload.js +1 -2
- package/libEs6/components/Privacy/createStoredConsent.js +1 -2
- package/libEs6/components/Privacy/index.js +1 -2
- package/libEs6/components/Privacy/injectSendSetConsentRequest.js +3 -3
- package/libEs6/constants/browser.js +1 -0
- package/libEs6/constants/consentPurpose.js +1 -0
- package/libEs6/constants/consentStatus.js +1 -0
- package/libEs6/constants/cookieNameKey.js +1 -0
- package/libEs6/constants/cookieNamePrefix.js +1 -0
- package/libEs6/constants/coreCommands.js +1 -0
- package/libEs6/constants/debugQueryParam.js +1 -0
- package/libEs6/constants/domain.js +1 -0
- package/libEs6/constants/ecidNamespace.js +1 -0
- package/libEs6/constants/elementAttribute.js +1 -0
- package/libEs6/constants/highEntropyUserAgentClientHints.js +1 -0
- package/libEs6/constants/httpHeaderNames.js +1 -0
- package/libEs6/constants/httpStatusCode.js +1 -0
- package/libEs6/constants/legacyCookies.js +1 -0
- package/libEs6/constants/libraryName.js +1 -0
- package/libEs6/constants/libraryVersion.js +3 -1
- package/libEs6/constants/namespace.js +1 -0
- package/libEs6/constants/pageWideScope.js +1 -0
- package/libEs6/constants/queryStringIdentityParam.js +1 -0
- package/libEs6/constants/shadowSeparator.js +1 -0
- package/libEs6/constants/tagName.js +1 -0
- package/libEs6/core/buildAndValidateConfig.js +4 -10
- package/libEs6/core/componentCreators.js +3 -3
- package/libEs6/core/config/createConfig.js +1 -2
- package/libEs6/core/config/createCoreConfigs.js +1 -0
- package/libEs6/core/consent/createConsent.js +1 -9
- package/libEs6/core/consent/createConsentStateMachine.js +1 -20
- package/libEs6/core/createComponentRegistry.js +3 -15
- package/libEs6/core/createCookieTransfer.js +6 -12
- package/libEs6/core/createEvent.js +25 -31
- package/libEs6/core/createEventManager.js +8 -10
- package/libEs6/core/createInstanceFunction.js +1 -0
- package/libEs6/core/createLifecycle.js +14 -10
- package/libEs6/core/createLogController.js +1 -7
- package/libEs6/core/createLogger.js +1 -17
- package/libEs6/core/edgeNetwork/handleRequestFailure.js +0 -1
- package/libEs6/core/edgeNetwork/injectApplyResponse.js +2 -3
- package/libEs6/core/edgeNetwork/injectExtractEdgeInfo.js +5 -6
- package/libEs6/core/edgeNetwork/injectGetLocationHint.js +1 -5
- package/libEs6/core/edgeNetwork/injectProcessWarningsAndErrors.js +1 -2
- package/libEs6/core/edgeNetwork/injectSendEdgeNetworkRequest.js +5 -5
- package/libEs6/core/index.js +4 -10
- package/libEs6/core/initializeComponents.js +3 -4
- package/libEs6/core/injectCreateResponse.js +3 -7
- package/libEs6/core/injectExecuteCommand.js +5 -11
- package/libEs6/core/injectHandleError.js +4 -3
- package/libEs6/core/injectShouldTransferCookie.js +1 -0
- package/libEs6/core/network/getRequestRetryDelay.js +11 -13
- package/libEs6/core/network/injectSendNetworkRequest.js +3 -7
- package/libEs6/core/network/isRequestRetryable.js +4 -2
- package/libEs6/core/network/requestMethods/injectSendBeaconRequest.js +4 -6
- package/libEs6/core/network/requestMethods/injectSendFetchRequest.js +1 -2
- package/libEs6/core/network/requestMethods/injectSendXhrRequest.js +1 -5
- package/libEs6/core/validateCommandOptions.js +1 -2
- package/libEs6/index.js +5 -3
- package/libEs6/utils/areThirdPartyCookiesSupportedByDefault.js +4 -2
- package/libEs6/utils/assign.js +1 -0
- package/libEs6/utils/assignIf.js +1 -1
- package/libEs6/utils/cookieJar.js +1 -0
- package/libEs6/utils/crc32.js +0 -7
- package/libEs6/utils/createCallbackAggregator.js +0 -2
- package/libEs6/utils/createLoggingCookieJar.js +3 -3
- package/libEs6/utils/createMerger.js +2 -1
- package/libEs6/utils/createTaskQueue.js +0 -4
- package/libEs6/utils/deduplicateArray.js +23 -0
- package/libEs6/utils/deepAssign.js +2 -5
- package/libEs6/utils/dom/appendNode.js +1 -0
- package/libEs6/utils/dom/awaitSelector.js +1 -14
- package/libEs6/utils/dom/createNode.js +1 -2
- package/libEs6/utils/dom/index.js +1 -0
- package/libEs6/utils/dom/isShadowSelector.js +1 -0
- package/libEs6/utils/dom/matchesSelector.js +2 -2
- package/libEs6/utils/dom/querySelectorAll.js +3 -2
- package/libEs6/utils/dom/removeNode.js +1 -2
- package/libEs6/utils/dom/selectNodes.js +2 -2
- package/libEs6/utils/dom/selectNodesWithShadow.js +6 -16
- package/libEs6/utils/filterObject.js +8 -12
- package/libEs6/utils/find.js +0 -2
- package/libEs6/utils/fireImage.js +2 -1
- package/libEs6/utils/getApexDomain.js +4 -4
- package/libEs6/utils/getBrowser.js +1 -7
- package/libEs6/utils/getNamespacedCookieName.js +1 -0
- package/libEs6/utils/groupBy.js +0 -2
- package/libEs6/utils/index.js +2 -0
- package/libEs6/utils/injectDoesIdentityCookieExist.js +1 -1
- package/libEs6/utils/injectFireReferrerHideableImage.js +1 -4
- package/libEs6/utils/injectStorage.js +1 -5
- package/libEs6/utils/intersection.js +2 -1
- package/libEs6/utils/isBlankString.js +2 -1
- package/libEs6/utils/isEmptyObject.js +2 -1
- package/libEs6/utils/isInteger.js +2 -1
- package/libEs6/utils/isNamespacedCookieName.js +2 -1
- package/libEs6/utils/isNonEmptyString.js +2 -1
- package/libEs6/utils/isObject.js +2 -1
- package/libEs6/utils/isUnique.js +0 -5
- package/libEs6/utils/memoize.js +0 -2
- package/libEs6/utils/padStart.js +1 -4
- package/libEs6/utils/prepareConfigOverridesForEdge.js +5 -12
- package/libEs6/utils/querystring.js +1 -0
- package/libEs6/utils/request/createDataCollectionRequest.js +1 -3
- package/libEs6/utils/request/createDataCollectionRequestPayload.js +0 -3
- package/libEs6/utils/request/createGetAssuranceValidationTokenParams.js +1 -6
- package/libEs6/utils/request/createHasIdentity.js +1 -0
- package/libEs6/utils/request/createRequest.js +3 -9
- package/libEs6/utils/request/createRequestParams.js +0 -3
- package/libEs6/utils/request/createRequestPayload.js +4 -4
- package/libEs6/utils/request/index.js +1 -0
- package/libEs6/utils/sanitizeOrgIdForCookieName.js +1 -0
- package/libEs6/utils/stackError.js +2 -1
- package/libEs6/utils/toArray.js +1 -2
- package/libEs6/utils/toISOStringLocal.js +4 -3
- package/libEs6/utils/toInteger.js +4 -4
- package/libEs6/utils/updateErrorMessage.js +3 -1
- package/libEs6/utils/uuid.js +1 -0
- package/libEs6/utils/validateConfigOverride.js +1 -0
- package/libEs6/utils/validateIdentityMap.js +1 -0
- package/libEs6/utils/validation/booleanValidator.js +1 -0
- package/libEs6/utils/validation/createArrayOfValidator.js +0 -2
- package/libEs6/utils/validation/createDefaultValidator.js +1 -1
- package/libEs6/utils/validation/createDeprecatedValidator.js +0 -4
- package/libEs6/utils/validation/createMapOfValuesValidator.js +1 -4
- package/libEs6/utils/validation/createNoUnknownFieldsValidator.js +1 -2
- package/libEs6/utils/validation/createNonEmptyValidator.js +1 -1
- package/libEs6/utils/validation/createObjectOfValidator.js +3 -5
- package/libEs6/utils/validation/createUniqueValidator.js +1 -0
- package/libEs6/utils/validation/index.js +14 -32
- package/libEs6/utils/validation/integerValidator.js +1 -0
- package/libEs6/utils/validation/numberValidator.js +1 -0
- package/libEs6/utils/validation/regexpValidator.js +1 -0
- package/libEs6/utils/validation/requiredValidator.js +1 -1
- package/libEs6/utils/validation/utils.js +8 -12
- package/package.json +2 -2
- package/libEs5/components/Personalization/createAutoRenderingHandler.js +0 -92
- package/libEs5/components/Personalization/createExecuteDecisions.js +0 -89
- package/libEs5/components/Personalization/createNonRenderingHandler.js +0 -66
- package/libEs5/components/Personalization/createOnResponseHandler.js +0 -73
- package/libEs5/components/Personalization/createRedirectHandler.js +0 -58
- package/libEs5/components/Personalization/dom-actions/executeActions.js +0 -75
- package/libEs5/components/Personalization/groupDecisions.js +0 -160
- package/libEs6/components/Personalization/createAutoRenderingHandler.js +0 -84
- package/libEs6/components/Personalization/createExecuteDecisions.js +0 -77
- package/libEs6/components/Personalization/createNonRenderingHandler.js +0 -56
- package/libEs6/components/Personalization/createOnResponseHandler.js +0 -68
- package/libEs6/components/Personalization/createRedirectHandler.js +0 -57
- package/libEs6/components/Personalization/dom-actions/executeActions.js +0 -66
- package/libEs6/components/Personalization/groupDecisions.js +0 -131
|
@@ -9,6 +9,7 @@ the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTA
|
|
|
9
9
|
OF ANY KIND, either express or implied. See the License for the specific language
|
|
10
10
|
governing permissions and limitations under the License.
|
|
11
11
|
*/
|
|
12
|
+
|
|
12
13
|
import { IN, OUT, PENDING } from "../../constants/consentStatus";
|
|
13
14
|
import { GENERAL } from "../../constants/consentPurpose";
|
|
14
15
|
import { CONSENT_SOURCE_DEFAULT, CONSENT_SOURCE_INITIAL, CONSENT_SOURCE_NEW } from "./createConsentStateMachine";
|
|
@@ -21,21 +22,17 @@ export default (({
|
|
|
21
22
|
case IN:
|
|
22
23
|
generalConsentState.in(source);
|
|
23
24
|
break;
|
|
24
|
-
|
|
25
25
|
case OUT:
|
|
26
26
|
generalConsentState.out(source);
|
|
27
27
|
break;
|
|
28
|
-
|
|
29
28
|
case PENDING:
|
|
30
29
|
generalConsentState.pending(source);
|
|
31
30
|
break;
|
|
32
|
-
|
|
33
31
|
default:
|
|
34
32
|
logger.warn(`Unknown consent value: ${consentByPurpose[GENERAL]}`);
|
|
35
33
|
break;
|
|
36
34
|
}
|
|
37
35
|
};
|
|
38
|
-
|
|
39
36
|
return {
|
|
40
37
|
initializeConsent(defaultConsentByPurpose, storedConsentByPurpose) {
|
|
41
38
|
if (storedConsentByPurpose[GENERAL]) {
|
|
@@ -44,22 +41,17 @@ export default (({
|
|
|
44
41
|
setConsent(defaultConsentByPurpose, CONSENT_SOURCE_DEFAULT);
|
|
45
42
|
}
|
|
46
43
|
},
|
|
47
|
-
|
|
48
44
|
setConsent(consentByPurpose) {
|
|
49
45
|
setConsent(consentByPurpose, CONSENT_SOURCE_NEW);
|
|
50
46
|
},
|
|
51
|
-
|
|
52
47
|
suspend() {
|
|
53
48
|
generalConsentState.pending();
|
|
54
49
|
},
|
|
55
|
-
|
|
56
50
|
awaitConsent() {
|
|
57
51
|
return generalConsentState.awaitConsent();
|
|
58
52
|
},
|
|
59
|
-
|
|
60
53
|
withConsent() {
|
|
61
54
|
return generalConsentState.withConsent();
|
|
62
55
|
}
|
|
63
|
-
|
|
64
56
|
};
|
|
65
57
|
});
|
|
@@ -9,57 +9,46 @@ the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTA
|
|
|
9
9
|
OF ANY KIND, either express or implied. See the License for the specific language
|
|
10
10
|
governing permissions and limitations under the License.
|
|
11
11
|
*/
|
|
12
|
+
|
|
12
13
|
import { defer } from "../../utils";
|
|
13
14
|
export const DECLINED_CONSENT = "The user declined consent.";
|
|
14
15
|
export const DECLINED_CONSENT_ERROR_CODE = "declinedConsent";
|
|
15
16
|
export const CONSENT_SOURCE_DEFAULT = "default";
|
|
16
17
|
export const CONSENT_SOURCE_INITIAL = "initial";
|
|
17
18
|
export const CONSENT_SOURCE_NEW = "new";
|
|
18
|
-
|
|
19
19
|
const createDeclinedConsentError = errorMessage => {
|
|
20
20
|
const error = new Error(errorMessage);
|
|
21
21
|
error.code = DECLINED_CONSENT_ERROR_CODE;
|
|
22
22
|
error.message = errorMessage;
|
|
23
23
|
return error;
|
|
24
24
|
};
|
|
25
|
-
|
|
26
25
|
export default (({
|
|
27
26
|
logger
|
|
28
27
|
}) => {
|
|
29
28
|
const deferreds = [];
|
|
30
|
-
|
|
31
29
|
const runAll = () => {
|
|
32
30
|
while (deferreds.length) {
|
|
33
31
|
deferreds.shift().resolve();
|
|
34
32
|
}
|
|
35
33
|
};
|
|
36
|
-
|
|
37
34
|
const discardAll = () => {
|
|
38
35
|
while (deferreds.length) {
|
|
39
36
|
deferreds.shift().reject(createDeclinedConsentError("The user declined consent."));
|
|
40
37
|
}
|
|
41
38
|
};
|
|
42
|
-
|
|
43
39
|
const awaitInitial = () => Promise.reject(new Error("Consent has not been initialized."));
|
|
44
|
-
|
|
45
40
|
const awaitInDefault = () => Promise.resolve();
|
|
46
|
-
|
|
47
41
|
const awaitIn = () => Promise.resolve();
|
|
48
|
-
|
|
49
42
|
const awaitOutDefault = () => Promise.reject(createDeclinedConsentError("No consent preferences have been set."));
|
|
50
|
-
|
|
51
43
|
const awaitOut = () => Promise.reject(createDeclinedConsentError("The user declined consent."));
|
|
52
|
-
|
|
53
44
|
const awaitPending = returnImmediately => {
|
|
54
45
|
if (returnImmediately) {
|
|
55
46
|
return Promise.reject(new Error("Consent is pending."));
|
|
56
47
|
}
|
|
57
|
-
|
|
58
48
|
const deferred = defer();
|
|
59
49
|
deferreds.push(deferred);
|
|
60
50
|
return deferred.promise;
|
|
61
51
|
};
|
|
62
|
-
|
|
63
52
|
return {
|
|
64
53
|
in(source) {
|
|
65
54
|
if (source === CONSENT_SOURCE_DEFAULT) {
|
|
@@ -70,12 +59,10 @@ export default (({
|
|
|
70
59
|
} else if (source === CONSENT_SOURCE_NEW && this.awaitConsent !== awaitIn) {
|
|
71
60
|
logger.info("User consented.");
|
|
72
61
|
}
|
|
73
|
-
|
|
74
62
|
runAll();
|
|
75
63
|
this.awaitConsent = awaitIn;
|
|
76
64
|
}
|
|
77
65
|
},
|
|
78
|
-
|
|
79
66
|
out(source) {
|
|
80
67
|
if (source === CONSENT_SOURCE_DEFAULT) {
|
|
81
68
|
logger.warn("User consent preferences not found. Default consent of out will be used.");
|
|
@@ -86,25 +73,19 @@ export default (({
|
|
|
86
73
|
} else if (source === CONSENT_SOURCE_NEW && this.awaitConsent !== awaitOut) {
|
|
87
74
|
logger.warn("User declined consent.");
|
|
88
75
|
}
|
|
89
|
-
|
|
90
76
|
discardAll();
|
|
91
77
|
this.awaitConsent = awaitOut;
|
|
92
78
|
}
|
|
93
79
|
},
|
|
94
|
-
|
|
95
80
|
pending(source) {
|
|
96
81
|
if (source === CONSENT_SOURCE_DEFAULT) {
|
|
97
82
|
logger.info("User consent preferences not found. Default consent of pending will be used. Some commands may be delayed.");
|
|
98
83
|
}
|
|
99
|
-
|
|
100
84
|
this.awaitConsent = awaitPending;
|
|
101
85
|
},
|
|
102
|
-
|
|
103
86
|
awaitConsent: awaitInitial,
|
|
104
|
-
|
|
105
87
|
withConsent() {
|
|
106
88
|
return this.awaitConsent(true);
|
|
107
89
|
}
|
|
108
|
-
|
|
109
90
|
};
|
|
110
91
|
});
|
|
@@ -9,12 +9,11 @@ the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTA
|
|
|
9
9
|
OF ANY KIND, either express or implied. See the License for the specific language
|
|
10
10
|
governing permissions and limitations under the License.
|
|
11
11
|
*/
|
|
12
|
-
import { intersection, stackError } from "../utils";
|
|
13
12
|
|
|
13
|
+
import { intersection, stackError } from "../utils";
|
|
14
14
|
const wrapForErrorHandling = (fn, stackMessage) => {
|
|
15
15
|
return (...args) => {
|
|
16
16
|
let result;
|
|
17
|
-
|
|
18
17
|
try {
|
|
19
18
|
result = fn(...args);
|
|
20
19
|
} catch (error) {
|
|
@@ -23,7 +22,6 @@ const wrapForErrorHandling = (fn, stackMessage) => {
|
|
|
23
22
|
message: stackMessage
|
|
24
23
|
});
|
|
25
24
|
}
|
|
26
|
-
|
|
27
25
|
if (result instanceof Promise) {
|
|
28
26
|
result = result.catch(error => {
|
|
29
27
|
throw stackError({
|
|
@@ -32,24 +30,20 @@ const wrapForErrorHandling = (fn, stackMessage) => {
|
|
|
32
30
|
});
|
|
33
31
|
});
|
|
34
32
|
}
|
|
35
|
-
|
|
36
33
|
return result;
|
|
37
34
|
};
|
|
38
|
-
};
|
|
39
|
-
|
|
35
|
+
};
|
|
40
36
|
|
|
37
|
+
// TO-DOCUMENT: All public commands and their signatures.
|
|
41
38
|
export default (() => {
|
|
42
39
|
const componentsByNamespace = {};
|
|
43
40
|
const commandsByName = {};
|
|
44
41
|
const lifecycleCallbacksByName = {};
|
|
45
|
-
|
|
46
42
|
const registerComponentCommands = (namespace, componentCommandsByName = {}) => {
|
|
47
43
|
const conflictingCommandNames = intersection(Object.keys(commandsByName), Object.keys(componentCommandsByName));
|
|
48
|
-
|
|
49
44
|
if (conflictingCommandNames.length) {
|
|
50
45
|
throw new Error(`[ComponentRegistry] Could not register ${namespace} ` + `because it has existing command(s): ${conflictingCommandNames.join(",")}`);
|
|
51
46
|
}
|
|
52
|
-
|
|
53
47
|
Object.keys(componentCommandsByName).forEach(commandName => {
|
|
54
48
|
const command = componentCommandsByName[commandName];
|
|
55
49
|
command.commandName = commandName;
|
|
@@ -57,14 +51,12 @@ export default (() => {
|
|
|
57
51
|
commandsByName[commandName] = command;
|
|
58
52
|
});
|
|
59
53
|
};
|
|
60
|
-
|
|
61
54
|
const registerLifecycleCallbacks = (namespace, componentLifecycleCallbacksByName = {}) => {
|
|
62
55
|
Object.keys(componentLifecycleCallbacksByName).forEach(hookName => {
|
|
63
56
|
lifecycleCallbacksByName[hookName] = lifecycleCallbacksByName[hookName] || [];
|
|
64
57
|
lifecycleCallbacksByName[hookName].push(wrapForErrorHandling(componentLifecycleCallbacksByName[hookName], `[${namespace}] An error occurred while executing the ${hookName} lifecycle hook.`));
|
|
65
58
|
});
|
|
66
59
|
};
|
|
67
|
-
|
|
68
60
|
return {
|
|
69
61
|
register(namespace, component) {
|
|
70
62
|
const {
|
|
@@ -75,18 +67,14 @@ export default (() => {
|
|
|
75
67
|
registerLifecycleCallbacks(namespace, lifecycle);
|
|
76
68
|
componentsByNamespace[namespace] = component;
|
|
77
69
|
},
|
|
78
|
-
|
|
79
70
|
getCommand(commandName) {
|
|
80
71
|
return commandsByName[commandName];
|
|
81
72
|
},
|
|
82
|
-
|
|
83
73
|
getCommandNames() {
|
|
84
74
|
return Object.keys(commandsByName);
|
|
85
75
|
},
|
|
86
|
-
|
|
87
76
|
getLifecycleCallbacks(hookName) {
|
|
88
77
|
return lifecycleCallbacksByName[hookName] || [];
|
|
89
78
|
}
|
|
90
|
-
|
|
91
79
|
};
|
|
92
80
|
});
|
|
@@ -9,6 +9,7 @@ the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTA
|
|
|
9
9
|
OF ANY KIND, either express or implied. See the License for the specific language
|
|
10
10
|
governing permissions and limitations under the License.
|
|
11
11
|
*/
|
|
12
|
+
|
|
12
13
|
import { endsWith } from "../utils";
|
|
13
14
|
const STATE_STORE_HANDLE_TYPE = "state:store";
|
|
14
15
|
export default (({
|
|
@@ -28,10 +29,11 @@ export default (({
|
|
|
28
29
|
const state = {
|
|
29
30
|
domain: apexDomain,
|
|
30
31
|
cookiesEnabled: true
|
|
31
|
-
};
|
|
32
|
+
};
|
|
33
|
+
|
|
34
|
+
// If the endpoint is first-party, there's no need to transfer cookies
|
|
32
35
|
// to the payload since they'll be automatically passed through cookie
|
|
33
36
|
// headers.
|
|
34
|
-
|
|
35
37
|
if (!isEndpointFirstParty) {
|
|
36
38
|
const cookies = cookieJar.get();
|
|
37
39
|
const entries = Object.keys(cookies).filter(shouldTransferCookie).map(qualifyingCookieName => {
|
|
@@ -40,15 +42,12 @@ export default (({
|
|
|
40
42
|
value: cookies[qualifyingCookieName]
|
|
41
43
|
};
|
|
42
44
|
});
|
|
43
|
-
|
|
44
45
|
if (entries.length) {
|
|
45
46
|
state.entries = entries;
|
|
46
47
|
}
|
|
47
48
|
}
|
|
48
|
-
|
|
49
49
|
payload.mergeState(state);
|
|
50
50
|
},
|
|
51
|
-
|
|
52
51
|
/**
|
|
53
52
|
* When receiving from a third-party endpoint, the endpoint won't be able to
|
|
54
53
|
* write first-party cookies, therefore we write first-party cookies
|
|
@@ -60,25 +59,20 @@ export default (({
|
|
|
60
59
|
domain: apexDomain
|
|
61
60
|
};
|
|
62
61
|
const sameSite = stateItem.attrs && stateItem.attrs.SameSite && stateItem.attrs.SameSite.toLowerCase();
|
|
63
|
-
|
|
64
62
|
if (stateItem.maxAge !== undefined) {
|
|
65
63
|
// cookieJar expects "expires" as a date object
|
|
66
64
|
options.expires = new Date(dateProvider().getTime() + stateItem.maxAge * 1000);
|
|
67
65
|
}
|
|
68
|
-
|
|
69
66
|
if (sameSite !== undefined) {
|
|
70
67
|
options.sameSite = sameSite;
|
|
71
|
-
}
|
|
68
|
+
}
|
|
69
|
+
// When sameSite is set to none, the secure flag must be set.
|
|
72
70
|
// Experience edge will not set the secure flag in these cases.
|
|
73
|
-
|
|
74
|
-
|
|
75
71
|
if (sameSite === "none") {
|
|
76
72
|
options.secure = true;
|
|
77
73
|
}
|
|
78
|
-
|
|
79
74
|
cookieJar.set(stateItem.key, stateItem.value, options);
|
|
80
75
|
});
|
|
81
76
|
}
|
|
82
|
-
|
|
83
77
|
};
|
|
84
78
|
});
|
|
@@ -9,7 +9,19 @@ the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTA
|
|
|
9
9
|
OF ANY KIND, either express or implied. See the License for the specific language
|
|
10
10
|
governing permissions and limitations under the License.
|
|
11
11
|
*/
|
|
12
|
-
|
|
12
|
+
|
|
13
|
+
import { isEmptyObject, deepAssign, isNonEmptyArray, deduplicateArray } from "../utils";
|
|
14
|
+
const getXdmPropositions = xdm => {
|
|
15
|
+
return xdm &&
|
|
16
|
+
// eslint-disable-next-line no-underscore-dangle
|
|
17
|
+
xdm._experience &&
|
|
18
|
+
// eslint-disable-next-line no-underscore-dangle
|
|
19
|
+
xdm._experience.decisioning &&
|
|
20
|
+
// eslint-disable-next-line no-underscore-dangle
|
|
21
|
+
isNonEmptyArray(xdm._experience.decisioning.propositions) ?
|
|
22
|
+
// eslint-disable-next-line no-underscore-dangle
|
|
23
|
+
xdm._experience.decisioning.propositions : [];
|
|
24
|
+
};
|
|
13
25
|
export default (() => {
|
|
14
26
|
const content = {};
|
|
15
27
|
let userXdm;
|
|
@@ -17,79 +29,71 @@ export default (() => {
|
|
|
17
29
|
let documentMayUnload = false;
|
|
18
30
|
let isFinalized = false;
|
|
19
31
|
let shouldSendEvent = true;
|
|
20
|
-
|
|
21
32
|
const throwIfEventFinalized = methodName => {
|
|
22
33
|
if (isFinalized) {
|
|
23
34
|
throw new Error(`${methodName} cannot be called after event is finalized.`);
|
|
24
35
|
}
|
|
25
36
|
};
|
|
26
|
-
|
|
27
37
|
const event = {
|
|
28
38
|
setUserXdm(value) {
|
|
29
39
|
throwIfEventFinalized("setUserXdm");
|
|
30
40
|
userXdm = value;
|
|
31
41
|
},
|
|
32
|
-
|
|
33
42
|
setUserData(value) {
|
|
34
43
|
throwIfEventFinalized("setUserData");
|
|
35
44
|
userData = value;
|
|
36
45
|
},
|
|
37
|
-
|
|
38
46
|
mergeXdm(xdm) {
|
|
39
47
|
throwIfEventFinalized("mergeXdm");
|
|
40
|
-
|
|
41
48
|
if (xdm) {
|
|
42
49
|
deepAssign(content, {
|
|
43
50
|
xdm
|
|
44
51
|
});
|
|
45
52
|
}
|
|
46
53
|
},
|
|
47
|
-
|
|
48
54
|
mergeMeta(meta) {
|
|
49
55
|
throwIfEventFinalized("mergeMeta");
|
|
50
|
-
|
|
51
56
|
if (meta) {
|
|
52
57
|
deepAssign(content, {
|
|
53
58
|
meta
|
|
54
59
|
});
|
|
55
60
|
}
|
|
56
61
|
},
|
|
57
|
-
|
|
58
62
|
mergeQuery(query) {
|
|
59
63
|
throwIfEventFinalized("mergeQuery");
|
|
60
|
-
|
|
61
64
|
if (query) {
|
|
62
65
|
deepAssign(content, {
|
|
63
66
|
query
|
|
64
67
|
});
|
|
65
68
|
}
|
|
66
69
|
},
|
|
67
|
-
|
|
68
70
|
documentMayUnload() {
|
|
69
71
|
documentMayUnload = true;
|
|
70
72
|
},
|
|
71
|
-
|
|
72
73
|
finalize(onBeforeEventSend) {
|
|
73
74
|
if (isFinalized) {
|
|
74
75
|
return;
|
|
75
76
|
}
|
|
76
|
-
|
|
77
|
+
const newPropositions = deduplicateArray([...getXdmPropositions(userXdm), ...getXdmPropositions(content.xdm)], (a, b) => a === b || a.id && b.id && a.id === b.id && a.scope && b.scope && a.scope === b.scope);
|
|
77
78
|
if (userXdm) {
|
|
78
|
-
|
|
79
|
+
this.mergeXdm(userXdm);
|
|
80
|
+
}
|
|
81
|
+
if (newPropositions.length > 0) {
|
|
82
|
+
// eslint-disable-next-line no-underscore-dangle
|
|
83
|
+
content.xdm._experience.decisioning.propositions = newPropositions;
|
|
79
84
|
}
|
|
80
|
-
|
|
81
85
|
if (userData) {
|
|
82
86
|
content.data = userData;
|
|
83
|
-
}
|
|
84
|
-
|
|
87
|
+
}
|
|
85
88
|
|
|
89
|
+
// the event should already be considered finalized in case onBeforeEventSend throws an error
|
|
86
90
|
isFinalized = true;
|
|
87
|
-
|
|
88
91
|
if (onBeforeEventSend) {
|
|
89
92
|
// assume that the onBeforeEventSend callback will fail (in-case of an error)
|
|
90
|
-
shouldSendEvent = false;
|
|
91
|
-
// on the object passed to the callback
|
|
93
|
+
shouldSendEvent = false;
|
|
92
94
|
|
|
95
|
+
// this allows the user to replace the xdm and data properties
|
|
96
|
+
// on the object passed to the callback
|
|
93
97
|
const tempContent = {
|
|
94
98
|
xdm: content.xdm || {},
|
|
95
99
|
data: content.data || {}
|
|
@@ -98,45 +102,35 @@ export default (() => {
|
|
|
98
102
|
shouldSendEvent = result !== false;
|
|
99
103
|
content.xdm = tempContent.xdm || {};
|
|
100
104
|
content.data = tempContent.data || {};
|
|
101
|
-
|
|
102
105
|
if (isEmptyObject(content.xdm)) {
|
|
103
106
|
delete content.xdm;
|
|
104
107
|
}
|
|
105
|
-
|
|
106
108
|
if (isEmptyObject(content.data)) {
|
|
107
109
|
delete content.data;
|
|
108
110
|
}
|
|
109
111
|
}
|
|
110
112
|
},
|
|
111
|
-
|
|
112
113
|
getDocumentMayUnload() {
|
|
113
114
|
return documentMayUnload;
|
|
114
115
|
},
|
|
115
|
-
|
|
116
116
|
isEmpty() {
|
|
117
117
|
return isEmptyObject(content) && (!userXdm || isEmptyObject(userXdm)) && (!userData || isEmptyObject(userData));
|
|
118
118
|
},
|
|
119
|
-
|
|
120
119
|
shouldSend() {
|
|
121
120
|
return shouldSendEvent;
|
|
122
121
|
},
|
|
123
|
-
|
|
124
122
|
getViewName() {
|
|
125
|
-
if (!userXdm || !userXdm.web || !userXdm.web.webPageDetails) {
|
|
123
|
+
if (!userXdm || !userXdm.web || !userXdm.web.webPageDetails || !userXdm.web.webPageDetails.viewName) {
|
|
126
124
|
return undefined;
|
|
127
125
|
}
|
|
128
|
-
|
|
129
126
|
return userXdm.web.webPageDetails.viewName;
|
|
130
127
|
},
|
|
131
|
-
|
|
132
128
|
toJSON() {
|
|
133
129
|
if (!isFinalized) {
|
|
134
130
|
throw new Error("toJSON called before finalize");
|
|
135
131
|
}
|
|
136
|
-
|
|
137
132
|
return content;
|
|
138
133
|
}
|
|
139
|
-
|
|
140
134
|
};
|
|
141
135
|
return event;
|
|
142
136
|
});
|
|
@@ -9,6 +9,7 @@ the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTA
|
|
|
9
9
|
OF ANY KIND, either express or implied. See the License for the specific language
|
|
10
10
|
governing permissions and limitations under the License.
|
|
11
11
|
*/
|
|
12
|
+
|
|
12
13
|
import PAGE_WIDE_SCOPE from "../constants/pageWideScope";
|
|
13
14
|
import { createCallbackAggregator, noop } from "../utils";
|
|
14
15
|
import { createRequestParams } from "../utils/request";
|
|
@@ -30,7 +31,6 @@ export default (({
|
|
|
30
31
|
} = config;
|
|
31
32
|
return {
|
|
32
33
|
createEvent,
|
|
33
|
-
|
|
34
34
|
/**
|
|
35
35
|
* Sends an event. This includes running the event and payload through
|
|
36
36
|
* the appropriate lifecycle hooks, sending the request to the server,
|
|
@@ -83,25 +83,24 @@ export default (({
|
|
|
83
83
|
const throwError = () => {
|
|
84
84
|
throw error;
|
|
85
85
|
};
|
|
86
|
-
|
|
87
86
|
onRequestFailureCallbackAggregator.add(lifecycle.onRequestFailure);
|
|
88
87
|
return onRequestFailureCallbackAggregator.call({
|
|
89
88
|
error
|
|
90
89
|
}).then(throwError, throwError);
|
|
91
|
-
}
|
|
92
|
-
|
|
90
|
+
}
|
|
93
91
|
|
|
92
|
+
// if the callback returns false, the event should not be sent
|
|
94
93
|
if (!event.shouldSend()) {
|
|
95
94
|
onRequestFailureCallbackAggregator.add(lifecycle.onRequestFailure);
|
|
96
95
|
logger.info(EVENT_CANCELLATION_MESSAGE);
|
|
97
96
|
const error = new Error(EVENT_CANCELLATION_MESSAGE);
|
|
98
97
|
return onRequestFailureCallbackAggregator.call({
|
|
99
98
|
error
|
|
100
|
-
}).then(() => {
|
|
99
|
+
}).then(() => {
|
|
100
|
+
// Ensure the promise gets resolved with undefined instead
|
|
101
101
|
// of an array of return values from the callbacks.
|
|
102
102
|
});
|
|
103
103
|
}
|
|
104
|
-
|
|
105
104
|
return sendEdgeNetworkRequest({
|
|
106
105
|
request,
|
|
107
106
|
runOnResponseCallbacks: onResponseCallbackAggregator.call,
|
|
@@ -109,14 +108,14 @@ export default (({
|
|
|
109
108
|
});
|
|
110
109
|
});
|
|
111
110
|
},
|
|
112
|
-
|
|
113
111
|
applyResponse(event, options = {}) {
|
|
114
112
|
const {
|
|
115
113
|
renderDecisions = false,
|
|
116
114
|
responseHeaders = {},
|
|
117
115
|
responseBody = {
|
|
118
116
|
handle: []
|
|
119
|
-
}
|
|
117
|
+
},
|
|
118
|
+
personalization
|
|
120
119
|
} = options;
|
|
121
120
|
const payload = createDataCollectionRequestPayload();
|
|
122
121
|
const request = createDataCollectionRequest({
|
|
@@ -127,7 +126,7 @@ export default (({
|
|
|
127
126
|
event,
|
|
128
127
|
renderDecisions,
|
|
129
128
|
decisionScopes: [PAGE_WIDE_SCOPE],
|
|
130
|
-
personalization
|
|
129
|
+
personalization,
|
|
131
130
|
onResponse: onResponseCallbackAggregator.add,
|
|
132
131
|
onRequestFailure: noop
|
|
133
132
|
}).then(() => {
|
|
@@ -140,6 +139,5 @@ export default (({
|
|
|
140
139
|
});
|
|
141
140
|
});
|
|
142
141
|
}
|
|
143
|
-
|
|
144
142
|
};
|
|
145
143
|
});
|
|
@@ -9,6 +9,7 @@ the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTA
|
|
|
9
9
|
OF ANY KIND, either express or implied. See the License for the specific language
|
|
10
10
|
governing permissions and limitations under the License.
|
|
11
11
|
*/
|
|
12
|
+
|
|
12
13
|
export default (executeCommand => {
|
|
13
14
|
return args => {
|
|
14
15
|
// Would use destructuring, but destructuring doesn't work on IE
|
|
@@ -9,21 +9,27 @@ the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTA
|
|
|
9
9
|
OF ANY KIND, either express or implied. See the License for the specific language
|
|
10
10
|
governing permissions and limitations under the License.
|
|
11
11
|
*/
|
|
12
|
+
|
|
12
13
|
// TO-DOCUMENT: Lifecycle hooks and their params.
|
|
13
|
-
const hookNames = [
|
|
14
|
-
|
|
15
|
-
"
|
|
16
|
-
|
|
14
|
+
const hookNames = [
|
|
15
|
+
// Called after all components have been registered.
|
|
16
|
+
"onComponentsRegistered",
|
|
17
|
+
// Called before an event is sent on a data collection request
|
|
18
|
+
"onBeforeEvent",
|
|
19
|
+
// Called before each request is made to the edge.
|
|
20
|
+
"onBeforeRequest",
|
|
21
|
+
// Called after each response is returned from the edge with a successful
|
|
17
22
|
// status code
|
|
18
|
-
"onResponse",
|
|
23
|
+
"onResponse",
|
|
24
|
+
// Called after a network request to the edge fails. Either the request
|
|
19
25
|
// didn't make it to the edge, didn't make it to Konductor, or Konductor
|
|
20
26
|
// failed to return a regularly-structured response. (In this case { error }
|
|
21
27
|
// is passed as the parameter)
|
|
22
28
|
// Also called when the respone returns a 400 or 500 error. (In this case
|
|
23
29
|
// { response } is passed as the parameter)
|
|
24
|
-
"onRequestFailure",
|
|
30
|
+
"onRequestFailure",
|
|
31
|
+
// A user clicked on an element.
|
|
25
32
|
"onClick"];
|
|
26
|
-
|
|
27
33
|
const createHook = (componentRegistry, hookName) => {
|
|
28
34
|
return (...args) => {
|
|
29
35
|
return Promise.all(componentRegistry.getLifecycleCallbacks(hookName).map(callback => {
|
|
@@ -33,6 +39,7 @@ const createHook = (componentRegistry, hookName) => {
|
|
|
33
39
|
}));
|
|
34
40
|
};
|
|
35
41
|
};
|
|
42
|
+
|
|
36
43
|
/**
|
|
37
44
|
* This ensures that if a component's lifecycle method X
|
|
38
45
|
* attempts to execute lifecycle method Y, that all X methods on all components
|
|
@@ -40,8 +47,6 @@ const createHook = (componentRegistry, hookName) => {
|
|
|
40
47
|
* this by kicking the call to the Y method to the next JavaScript tick.
|
|
41
48
|
* @returns {function}
|
|
42
49
|
*/
|
|
43
|
-
|
|
44
|
-
|
|
45
50
|
const guardHook = fn => {
|
|
46
51
|
return (...args) => {
|
|
47
52
|
return Promise.resolve().then(() => {
|
|
@@ -49,7 +54,6 @@ const guardHook = fn => {
|
|
|
49
54
|
});
|
|
50
55
|
};
|
|
51
56
|
};
|
|
52
|
-
|
|
53
57
|
export default (componentRegistry => {
|
|
54
58
|
return hookNames.reduce((memo, hookName) => {
|
|
55
59
|
memo[hookName] = guardHook(createHook(componentRegistry, hookName));
|
|
@@ -9,6 +9,7 @@ the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTA
|
|
|
9
9
|
OF ANY KIND, either express or implied. See the License for the specific language
|
|
10
10
|
governing permissions and limitations under the License.
|
|
11
11
|
*/
|
|
12
|
+
|
|
12
13
|
import { queryString, stringToBoolean } from "../utils";
|
|
13
14
|
import debugQueryParam from "../constants/debugQueryParam";
|
|
14
15
|
export default (({
|
|
@@ -24,29 +25,24 @@ export default (({
|
|
|
24
25
|
const debugSessionValue = storage.session.getItem("debug");
|
|
25
26
|
let debugEnabled = debugSessionValue === "true";
|
|
26
27
|
let debugEnabledWritableFromConfig = debugSessionValue === null;
|
|
27
|
-
|
|
28
28
|
const getDebugEnabled = () => debugEnabled;
|
|
29
|
-
|
|
30
29
|
const setDebugEnabled = (value, {
|
|
31
30
|
fromConfig
|
|
32
31
|
}) => {
|
|
33
32
|
if (!fromConfig || debugEnabledWritableFromConfig) {
|
|
34
33
|
debugEnabled = value;
|
|
35
34
|
}
|
|
36
|
-
|
|
37
35
|
if (!fromConfig) {
|
|
38
36
|
// Web storage only allows strings, so we explicitly convert to string.
|
|
39
37
|
storage.session.setItem("debug", value.toString());
|
|
40
38
|
debugEnabledWritableFromConfig = false;
|
|
41
39
|
}
|
|
42
40
|
};
|
|
43
|
-
|
|
44
41
|
if (parsedQueryString[debugQueryParam] !== undefined) {
|
|
45
42
|
setDebugEnabled(stringToBoolean(parsedQueryString[debugQueryParam]), {
|
|
46
43
|
fromConfig: false
|
|
47
44
|
});
|
|
48
45
|
}
|
|
49
|
-
|
|
50
46
|
return {
|
|
51
47
|
setDebugEnabled,
|
|
52
48
|
logger: createLogger({
|
|
@@ -57,7 +53,6 @@ export default (({
|
|
|
57
53
|
getMonitors,
|
|
58
54
|
console
|
|
59
55
|
}),
|
|
60
|
-
|
|
61
56
|
createComponentLogger(componentName) {
|
|
62
57
|
return createLogger({
|
|
63
58
|
getDebugEnabled,
|
|
@@ -69,6 +64,5 @@ export default (({
|
|
|
69
64
|
console
|
|
70
65
|
});
|
|
71
66
|
}
|
|
72
|
-
|
|
73
67
|
};
|
|
74
68
|
});
|