@adobe/alloy 2.19.0-beta.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 +23 -35
- package/libEs5/components/DataCollector/validateApplyResponse.js +0 -3
- package/libEs5/components/DataCollector/validateUserEventOptions.js +0 -5
- 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 +24 -39
- package/libEs5/components/Personalization/createClickStorage.js +1 -10
- package/libEs5/components/Personalization/createCollect.js +5 -15
- package/libEs5/components/Personalization/createComponent.js +25 -35
- package/libEs5/components/Personalization/createFetchDataHandler.js +29 -39
- package/libEs5/components/Personalization/createGetPageLocation.js +0 -2
- package/libEs5/components/Personalization/createOnClickHandler.js +6 -16
- package/libEs5/components/Personalization/createPendingNotificationsHandler.js +1 -4
- package/libEs5/components/Personalization/createPersonalizationDetails.js +17 -29
- package/libEs5/components/Personalization/createSetTargetMigration.js +0 -5
- package/libEs5/components/Personalization/createViewCacheManager.js +2 -15
- package/libEs5/components/Personalization/createViewChangeHandler.js +4 -11
- package/libEs5/components/Personalization/dom-actions/action.js +3 -19
- 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/libEs5/components/Personalization/dom-actions/createPreprocess.js +0 -4
- 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 +0 -1
- package/libEs5/components/Personalization/dom-actions/initDomActionsModules.js +0 -4
- 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 +2 -16
- 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 +4 -11
- package/libEs5/components/Personalization/handlers/createProcessHtmlContent.js +3 -8
- package/libEs5/components/Personalization/handlers/createProcessPropositions.js +6 -51
- package/libEs5/components/Personalization/handlers/createProcessRedirect.js +5 -8
- package/libEs5/components/Personalization/handlers/injectCreateProposition.js +19 -25
- package/libEs5/components/Personalization/handlers/processDefaultContent.js +0 -2
- package/libEs5/components/Personalization/index.js +17 -42
- package/libEs5/components/Personalization/utils/addRenderAttemptedToDecisions.js +1 -4
- package/libEs5/components/Personalization/utils/createAsyncArray.js +0 -3
- 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 +2 -6
- 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 +24 -33
- package/libEs5/core/createEventManager.js +26 -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 +0 -5
- 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 +0 -56
- 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 +1 -10
- package/libEs6/components/DataCollector/validateUserEventOptions.js +1 -1
- 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 +7 -11
- package/libEs6/components/Personalization/createClickStorage.js +1 -8
- package/libEs6/components/Personalization/createCollect.js +0 -5
- package/libEs6/components/Personalization/createComponent.js +5 -11
- package/libEs6/components/Personalization/createFetchDataHandler.js +0 -5
- package/libEs6/components/Personalization/createGetPageLocation.js +1 -0
- package/libEs6/components/Personalization/createOnClickHandler.js +1 -4
- package/libEs6/components/Personalization/createPersonalizationDetails.js +1 -22
- package/libEs6/components/Personalization/createSetTargetMigration.js +1 -1
- package/libEs6/components/Personalization/createViewCacheManager.js +3 -12
- package/libEs6/components/Personalization/createViewChangeHandler.js +1 -2
- package/libEs6/components/Personalization/dom-actions/action.js +1 -2
- 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/createPreprocess.js +0 -1
- 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 +1 -0
- package/libEs6/components/Personalization/dom-actions/initDomActionsModules.js +1 -0
- 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 +1 -7
- 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 +0 -5
- package/libEs6/components/Personalization/handlers/createProcessHtmlContent.js +0 -3
- package/libEs6/components/Personalization/handlers/createProcessPropositions.js +1 -28
- package/libEs6/components/Personalization/handlers/createProcessRedirect.js +2 -3
- package/libEs6/components/Personalization/handlers/injectCreateProposition.js +5 -21
- package/libEs6/components/Personalization/index.js +1 -2
- package/libEs6/components/Personalization/utils/addRenderAttemptedToDecisions.js +1 -0
- package/libEs6/components/Personalization/utils/createAsyncArray.js +0 -2
- 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 +0 -1
- 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 +14 -36
- package/libEs6/core/createEventManager.js +5 -8
- 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 +0 -3
- 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 +1 -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
|
@@ -9,23 +9,22 @@ 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 libraryVersion from "../../constants/libraryVersion";
|
|
13
14
|
import { CONFIGURE, SET_DEBUG } from "../../constants/coreCommands";
|
|
14
|
-
|
|
15
15
|
const prepareLibraryInfo = ({
|
|
16
16
|
config,
|
|
17
17
|
componentRegistry
|
|
18
18
|
}) => {
|
|
19
19
|
const allCommands = [...componentRegistry.getCommandNames(), CONFIGURE, SET_DEBUG].sort();
|
|
20
|
-
const resultConfig = {
|
|
20
|
+
const resultConfig = {
|
|
21
|
+
...config
|
|
21
22
|
};
|
|
22
23
|
Object.keys(config).forEach(key => {
|
|
23
24
|
const value = config[key];
|
|
24
|
-
|
|
25
25
|
if (typeof value !== "function") {
|
|
26
26
|
return;
|
|
27
27
|
}
|
|
28
|
-
|
|
29
28
|
resultConfig[key] = value.toString();
|
|
30
29
|
});
|
|
31
30
|
return {
|
|
@@ -34,7 +33,6 @@ const prepareLibraryInfo = ({
|
|
|
34
33
|
commands: allCommands
|
|
35
34
|
};
|
|
36
35
|
};
|
|
37
|
-
|
|
38
36
|
const createLibraryInfo = ({
|
|
39
37
|
config,
|
|
40
38
|
componentRegistry
|
|
@@ -55,6 +53,5 @@ const createLibraryInfo = ({
|
|
|
55
53
|
}
|
|
56
54
|
};
|
|
57
55
|
};
|
|
58
|
-
|
|
59
56
|
createLibraryInfo.namespace = "LibraryInfo";
|
|
60
57
|
export default createLibraryInfo;
|
|
@@ -9,8 +9,8 @@ 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 processResponse from "./processResponse";
|
|
13
12
|
|
|
13
|
+
import processResponse from "./processResponse";
|
|
14
14
|
const createMachineLearning = () => {
|
|
15
15
|
return {
|
|
16
16
|
lifecycle: {
|
|
@@ -19,6 +19,5 @@ const createMachineLearning = () => {
|
|
|
19
19
|
commands: {}
|
|
20
20
|
};
|
|
21
21
|
};
|
|
22
|
-
|
|
23
22
|
createMachineLearning.namespace = "MachineLearning";
|
|
24
23
|
export default createMachineLearning;
|
|
@@ -8,6 +8,7 @@ the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTA
|
|
|
8
8
|
OF ANY KIND, either express or implied. See the License for the specific language
|
|
9
9
|
governing permissions and limitations under the License.
|
|
10
10
|
*/
|
|
11
|
+
|
|
11
12
|
export default (({
|
|
12
13
|
response
|
|
13
14
|
}) => {
|
|
@@ -9,5 +9,6 @@ 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 const DISPLAY = "decisioning.propositionDisplay";
|
|
13
14
|
export const INTERACT = "decisioning.propositionInteract";
|
|
@@ -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 const PropositionEventType = {
|
|
13
14
|
DISPLAY: "display",
|
|
14
15
|
INTERACT: "interact"
|
|
@@ -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 const DEFAULT_CONTENT_ITEM = "https://ns.adobe.com/personalization/default-content-item";
|
|
13
14
|
export const DOM_ACTION = "https://ns.adobe.com/personalization/dom-action";
|
|
14
15
|
export const HTML_CONTENT_ITEM = "https://ns.adobe.com/personalization/html-content-item";
|
|
@@ -9,4 +9,5 @@ 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 const VIEW_SCOPE_TYPE = "view";
|
|
@@ -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 const WEB = "web";
|
|
13
14
|
export const WEBAPP = "webapp";
|
|
14
15
|
export const SURFACE_TYPE_DELIMITER = "://";
|
|
@@ -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 { isNonEmptyArray, isObject } from "../../utils";
|
|
13
14
|
import { DOM_ACTION, HTML_CONTENT_ITEM } from "./constants/schema";
|
|
14
15
|
import PAGE_WIDE_SCOPE from "../../constants/pageWideScope";
|
|
@@ -20,34 +21,32 @@ export default (({
|
|
|
20
21
|
viewCache
|
|
21
22
|
}) => {
|
|
22
23
|
const filterItemsPredicate = item => SUPPORTED_SCHEMAS.indexOf(item.schema) > -1;
|
|
23
|
-
|
|
24
24
|
const updatePropositionItems = ({
|
|
25
25
|
items,
|
|
26
26
|
metadataForScope
|
|
27
27
|
}) => {
|
|
28
28
|
return items.filter(filterItemsPredicate).map(item => {
|
|
29
29
|
if (item.schema !== HTML_CONTENT_ITEM) {
|
|
30
|
-
return {
|
|
30
|
+
return {
|
|
31
|
+
...item
|
|
31
32
|
};
|
|
32
33
|
}
|
|
33
|
-
|
|
34
34
|
if (isObject(metadataForScope)) {
|
|
35
|
-
return {
|
|
36
|
-
|
|
35
|
+
return {
|
|
36
|
+
...item,
|
|
37
|
+
data: {
|
|
38
|
+
...item.data,
|
|
37
39
|
selector: metadataForScope.selector,
|
|
38
40
|
type: metadataForScope.actionType
|
|
39
41
|
}
|
|
40
42
|
};
|
|
41
43
|
}
|
|
42
|
-
|
|
43
44
|
return undefined;
|
|
44
45
|
}).filter(item => item);
|
|
45
46
|
};
|
|
46
|
-
|
|
47
47
|
const filterPropositionsPredicate = proposition => {
|
|
48
48
|
return !(proposition.scope === PAGE_WIDE_SCOPE && proposition.renderAttempted);
|
|
49
49
|
};
|
|
50
|
-
|
|
51
50
|
const preparePropositions = ({
|
|
52
51
|
propositions,
|
|
53
52
|
metadata
|
|
@@ -69,11 +68,9 @@ export default (({
|
|
|
69
68
|
})
|
|
70
69
|
};
|
|
71
70
|
}
|
|
72
|
-
|
|
73
71
|
return proposition;
|
|
74
72
|
}).filter(proposition => isNonEmptyArray(proposition.items));
|
|
75
73
|
};
|
|
76
|
-
|
|
77
74
|
return ({
|
|
78
75
|
propositions = [],
|
|
79
76
|
metadata = {},
|
|
@@ -87,7 +84,6 @@ export default (({
|
|
|
87
84
|
if (viewName) {
|
|
88
85
|
return viewCache.getView(viewName);
|
|
89
86
|
}
|
|
90
|
-
|
|
91
87
|
return [];
|
|
92
88
|
}).then(additionalPropositions => {
|
|
93
89
|
const {
|
|
@@ -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
|
const metasToArray = metas => {
|
|
13
14
|
return Object.keys(metas).map(key => {
|
|
14
15
|
return {
|
|
@@ -19,36 +20,28 @@ const metasToArray = metas => {
|
|
|
19
20
|
};
|
|
20
21
|
});
|
|
21
22
|
};
|
|
22
|
-
|
|
23
23
|
export default (() => {
|
|
24
24
|
const clickStorage = {};
|
|
25
|
-
|
|
26
25
|
const storeClickMetrics = value => {
|
|
27
26
|
if (!clickStorage[value.selector]) {
|
|
28
27
|
clickStorage[value.selector] = {};
|
|
29
28
|
}
|
|
30
|
-
|
|
31
29
|
clickStorage[value.selector][value.meta.id] = {
|
|
32
30
|
scope: value.meta.scope,
|
|
33
31
|
scopeDetails: value.meta.scopeDetails,
|
|
34
32
|
trackingLabel: value.meta.trackingLabel
|
|
35
33
|
};
|
|
36
34
|
};
|
|
37
|
-
|
|
38
35
|
const getClickSelectors = () => {
|
|
39
36
|
return Object.keys(clickStorage);
|
|
40
37
|
};
|
|
41
|
-
|
|
42
38
|
const getClickMetasBySelector = selector => {
|
|
43
39
|
const metas = clickStorage[selector];
|
|
44
|
-
|
|
45
40
|
if (!metas) {
|
|
46
41
|
return {};
|
|
47
42
|
}
|
|
48
|
-
|
|
49
43
|
return metasToArray(clickStorage[selector]);
|
|
50
44
|
};
|
|
51
|
-
|
|
52
45
|
return {
|
|
53
46
|
storeClickMetrics,
|
|
54
47
|
getClickSelectors,
|
|
@@ -26,7 +26,6 @@ export default (({
|
|
|
26
26
|
const data = {
|
|
27
27
|
eventType: DISPLAY
|
|
28
28
|
};
|
|
29
|
-
|
|
30
29
|
if (viewName) {
|
|
31
30
|
data.web = {
|
|
32
31
|
webPageDetails: {
|
|
@@ -34,17 +33,13 @@ export default (({
|
|
|
34
33
|
}
|
|
35
34
|
};
|
|
36
35
|
}
|
|
37
|
-
|
|
38
36
|
if (isNonEmptyArray(decisionsMeta)) {
|
|
39
37
|
mergeDecisionsMeta(event, decisionsMeta, PropositionEventType.DISPLAY);
|
|
40
38
|
}
|
|
41
|
-
|
|
42
39
|
event.mergeXdm(data);
|
|
43
|
-
|
|
44
40
|
if (documentMayUnload) {
|
|
45
41
|
event.documentMayUnload();
|
|
46
42
|
}
|
|
47
|
-
|
|
48
43
|
return eventManager.sendEvent(event);
|
|
49
44
|
};
|
|
50
45
|
});
|
|
@@ -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 { noop } from "../../utils";
|
|
13
14
|
import createPersonalizationDetails from "./createPersonalizationDetails";
|
|
14
15
|
import { AUTHORING_ENABLED } from "./constants/loggerMessage";
|
|
@@ -35,7 +36,6 @@ export default (({
|
|
|
35
36
|
setTargetMigration(request);
|
|
36
37
|
return Promise.resolve();
|
|
37
38
|
},
|
|
38
|
-
|
|
39
39
|
onBeforeEvent({
|
|
40
40
|
event,
|
|
41
41
|
renderDecisions,
|
|
@@ -49,16 +49,15 @@ export default (({
|
|
|
49
49
|
propositions: []
|
|
50
50
|
}));
|
|
51
51
|
onRequestFailure(() => showContainers());
|
|
52
|
-
|
|
53
52
|
if (isAuthoringModeEnabled()) {
|
|
54
|
-
logger.warn(AUTHORING_ENABLED);
|
|
53
|
+
logger.warn(AUTHORING_ENABLED);
|
|
55
54
|
|
|
55
|
+
// If we are in authoring mode we disable personalization
|
|
56
56
|
mergeQuery(event, {
|
|
57
57
|
enabled: false
|
|
58
58
|
});
|
|
59
59
|
return Promise.resolve();
|
|
60
60
|
}
|
|
61
|
-
|
|
62
61
|
const personalizationDetails = createPersonalizationDetails({
|
|
63
62
|
getPageLocation,
|
|
64
63
|
renderDecisions,
|
|
@@ -69,13 +68,11 @@ export default (({
|
|
|
69
68
|
logger
|
|
70
69
|
});
|
|
71
70
|
const handlerPromises = [];
|
|
72
|
-
|
|
73
71
|
if (personalizationDetails.shouldAddPendingDisplayNotifications()) {
|
|
74
72
|
handlerPromises.push(pendingNotificationsHandler({
|
|
75
73
|
event
|
|
76
74
|
}));
|
|
77
75
|
}
|
|
78
|
-
|
|
79
76
|
if (personalizationDetails.shouldFetchData()) {
|
|
80
77
|
const cacheUpdate = viewCache.createCacheUpdate(personalizationDetails.getViewName());
|
|
81
78
|
onRequestFailure(() => cacheUpdate.cancel());
|
|
@@ -93,13 +90,11 @@ export default (({
|
|
|
93
90
|
onResponse,
|
|
94
91
|
onRequestFailure
|
|
95
92
|
}));
|
|
96
|
-
}
|
|
93
|
+
}
|
|
94
|
+
// We can wait for personalization to be applied and for
|
|
97
95
|
// the fetch data request to complete in parallel.
|
|
98
|
-
|
|
99
|
-
|
|
100
96
|
return Promise.all(handlerPromises);
|
|
101
97
|
},
|
|
102
|
-
|
|
103
98
|
onClick({
|
|
104
99
|
event,
|
|
105
100
|
clickedElement
|
|
@@ -109,7 +104,6 @@ export default (({
|
|
|
109
104
|
clickedElement
|
|
110
105
|
});
|
|
111
106
|
}
|
|
112
|
-
|
|
113
107
|
},
|
|
114
108
|
commands: {
|
|
115
109
|
applyPropositions: {
|
|
@@ -30,10 +30,8 @@ export default (({
|
|
|
30
30
|
if (personalizationDetails.isRenderDecisions()) {
|
|
31
31
|
hideContainers(prehidingStyle);
|
|
32
32
|
}
|
|
33
|
-
|
|
34
33
|
mergeQuery(event, personalizationDetails.createQueryDetails());
|
|
35
34
|
let handleNotifications;
|
|
36
|
-
|
|
37
35
|
if (personalizationDetails.isSendDisplayNotifications()) {
|
|
38
36
|
handleNotifications = decisionsMeta => {
|
|
39
37
|
if (decisionsMeta.length > 0) {
|
|
@@ -48,7 +46,6 @@ export default (({
|
|
|
48
46
|
pendingDisplayNotifications.concat(displayNotificationsDeferred.promise);
|
|
49
47
|
handleNotifications = displayNotificationsDeferred.resolve;
|
|
50
48
|
}
|
|
51
|
-
|
|
52
49
|
onResponse(({
|
|
53
50
|
response
|
|
54
51
|
}) => {
|
|
@@ -63,7 +60,6 @@ export default (({
|
|
|
63
60
|
let render;
|
|
64
61
|
let returnedPropositions;
|
|
65
62
|
let returnedDecisions;
|
|
66
|
-
|
|
67
63
|
if (personalizationDetails.isRenderDecisions()) {
|
|
68
64
|
({
|
|
69
65
|
render,
|
|
@@ -83,7 +79,6 @@ export default (({
|
|
|
83
79
|
returnedDecisions
|
|
84
80
|
} = processPropositions([], [...pagePropositions, ...currentViewPropositions, ...nonRenderedPropositions]));
|
|
85
81
|
}
|
|
86
|
-
|
|
87
82
|
return {
|
|
88
83
|
propositions: returnedPropositions,
|
|
89
84
|
decisions: returnedDecisions
|
|
@@ -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 (({
|
|
13
14
|
window
|
|
14
15
|
}) => () => {
|
|
@@ -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 { isNonEmptyArray, isNonEmptyString } from "../../utils";
|
|
13
14
|
import { INTERACT } from "./constants/eventType";
|
|
14
15
|
import { PropositionEventType } from "./constants/propositionEventType";
|
|
@@ -25,19 +26,16 @@ export default (({
|
|
|
25
26
|
clickedElement
|
|
26
27
|
}) => {
|
|
27
28
|
const selectors = getClickSelectors();
|
|
28
|
-
|
|
29
29
|
if (isNonEmptyArray(selectors)) {
|
|
30
30
|
const {
|
|
31
31
|
decisionsMeta,
|
|
32
32
|
eventLabel
|
|
33
33
|
} = collectClicks(clickedElement, selectors, getClickMetasBySelector);
|
|
34
|
-
|
|
35
34
|
if (isNonEmptyArray(decisionsMeta)) {
|
|
36
35
|
const xdm = {
|
|
37
36
|
eventType: INTERACT
|
|
38
37
|
};
|
|
39
38
|
const scope = decisionsMeta[0].scope;
|
|
40
|
-
|
|
41
39
|
if (isNonEmptyString(scope) && scope !== PAGE_WIDE_SCOPE) {
|
|
42
40
|
xdm.web = {
|
|
43
41
|
webPageDetails: {
|
|
@@ -45,7 +43,6 @@ export default (({
|
|
|
45
43
|
}
|
|
46
44
|
};
|
|
47
45
|
}
|
|
48
|
-
|
|
49
46
|
event.mergeXdm(xdm);
|
|
50
47
|
mergeDecisionsMeta(event, decisionsMeta, PropositionEventType.INTERACT, eventLabel);
|
|
51
48
|
}
|
|
@@ -9,27 +9,23 @@ 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 { includes, isNonEmptyString, isNonEmptyArray } from "../../utils";
|
|
13
14
|
import { buildPageSurface, normalizeSurfaces } from "./utils/surfaceUtils";
|
|
14
15
|
import PAGE_WIDE_SCOPE from "../../constants/pageWideScope";
|
|
15
16
|
import { DEFAULT_CONTENT_ITEM, DOM_ACTION, HTML_CONTENT_ITEM, JSON_CONTENT_ITEM, REDIRECT_ITEM } from "./constants/schema";
|
|
16
|
-
|
|
17
17
|
const addPageWideScope = scopes => {
|
|
18
18
|
if (!includes(scopes, PAGE_WIDE_SCOPE)) {
|
|
19
19
|
scopes.push(PAGE_WIDE_SCOPE);
|
|
20
20
|
}
|
|
21
21
|
};
|
|
22
|
-
|
|
23
22
|
const addPageSurface = (surfaces, getPageLocation) => {
|
|
24
23
|
const pageSurface = buildPageSurface(getPageLocation);
|
|
25
|
-
|
|
26
24
|
if (!includes(surfaces, pageSurface)) {
|
|
27
25
|
surfaces.push(pageSurface);
|
|
28
26
|
}
|
|
29
27
|
};
|
|
30
|
-
|
|
31
28
|
const dedupe = array => array.filter((item, pos) => array.indexOf(item) === pos);
|
|
32
|
-
|
|
33
29
|
export default (({
|
|
34
30
|
getPageLocation,
|
|
35
31
|
renderDecisions,
|
|
@@ -44,69 +40,52 @@ export default (({
|
|
|
44
40
|
isRenderDecisions() {
|
|
45
41
|
return renderDecisions;
|
|
46
42
|
},
|
|
47
|
-
|
|
48
43
|
isSendDisplayNotifications() {
|
|
49
44
|
return !!personalization.sendDisplayNotifications;
|
|
50
45
|
},
|
|
51
|
-
|
|
52
46
|
shouldAddPendingDisplayNotifications() {
|
|
53
47
|
return !!personalization.includePendingDisplayNotifications;
|
|
54
48
|
},
|
|
55
|
-
|
|
56
49
|
getViewName() {
|
|
57
50
|
return viewName;
|
|
58
51
|
},
|
|
59
|
-
|
|
60
52
|
hasScopes() {
|
|
61
53
|
return decisionScopes.length > 0 || isNonEmptyArray(personalization.decisionScopes);
|
|
62
54
|
},
|
|
63
|
-
|
|
64
55
|
hasSurfaces() {
|
|
65
56
|
return isNonEmptyArray(personalization.surfaces);
|
|
66
57
|
},
|
|
67
|
-
|
|
68
58
|
hasViewName() {
|
|
69
59
|
return isNonEmptyString(viewName);
|
|
70
60
|
},
|
|
71
|
-
|
|
72
61
|
createQueryDetails() {
|
|
73
62
|
const scopes = [...decisionScopes];
|
|
74
|
-
|
|
75
63
|
if (isNonEmptyArray(personalization.decisionScopes)) {
|
|
76
64
|
scopes.push(...personalization.decisionScopes);
|
|
77
65
|
}
|
|
78
|
-
|
|
79
66
|
const eventSurfaces = normalizeSurfaces(personalization.surfaces, getPageLocation, logger);
|
|
80
|
-
|
|
81
67
|
if (!this.isCacheInitialized()) {
|
|
82
68
|
addPageWideScope(scopes);
|
|
83
69
|
addPageSurface(eventSurfaces, getPageLocation);
|
|
84
70
|
}
|
|
85
|
-
|
|
86
71
|
const schemas = [DEFAULT_CONTENT_ITEM, HTML_CONTENT_ITEM, JSON_CONTENT_ITEM, REDIRECT_ITEM];
|
|
87
|
-
|
|
88
72
|
if (includes(scopes, PAGE_WIDE_SCOPE)) {
|
|
89
73
|
schemas.push(DOM_ACTION);
|
|
90
74
|
}
|
|
91
|
-
|
|
92
75
|
return {
|
|
93
76
|
schemas,
|
|
94
77
|
decisionScopes: dedupe(scopes),
|
|
95
78
|
surfaces: dedupe(eventSurfaces)
|
|
96
79
|
};
|
|
97
80
|
},
|
|
98
|
-
|
|
99
81
|
isCacheInitialized() {
|
|
100
82
|
return isCacheInitialized;
|
|
101
83
|
},
|
|
102
|
-
|
|
103
84
|
shouldFetchData() {
|
|
104
85
|
return this.hasScopes() || this.hasSurfaces() || !this.isCacheInitialized();
|
|
105
86
|
},
|
|
106
|
-
|
|
107
87
|
shouldUseCachedData() {
|
|
108
88
|
return this.hasViewName() && this.isCacheInitialized();
|
|
109
89
|
}
|
|
110
|
-
|
|
111
90
|
};
|
|
112
91
|
});
|
|
@@ -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 { noop } from "../../utils";
|
|
13
14
|
export default (({
|
|
14
15
|
targetMigrationEnabled
|
|
@@ -22,6 +23,5 @@ export default (({
|
|
|
22
23
|
});
|
|
23
24
|
};
|
|
24
25
|
}
|
|
25
|
-
|
|
26
26
|
return noop;
|
|
27
27
|
});
|
|
@@ -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 { assign, groupBy } from "../../utils";
|
|
13
14
|
import defer from "../../utils/defer";
|
|
14
15
|
import { DEFAULT_CONTENT_ITEM } from "./constants/schema";
|
|
@@ -18,14 +19,11 @@ export default (({
|
|
|
18
19
|
const viewStorage = {};
|
|
19
20
|
let cacheUpdateCreatedAtLeastOnce = false;
|
|
20
21
|
let previousUpdateCacheComplete = Promise.resolve();
|
|
21
|
-
|
|
22
22
|
const getViewPropositions = (currentViewStorage, viewName) => {
|
|
23
23
|
const viewPropositions = currentViewStorage[viewName.toLowerCase()];
|
|
24
|
-
|
|
25
24
|
if (viewPropositions && viewPropositions.length > 0) {
|
|
26
25
|
return viewPropositions;
|
|
27
26
|
}
|
|
28
|
-
|
|
29
27
|
const emptyViewProposition = createProposition({
|
|
30
28
|
scope: viewName,
|
|
31
29
|
scopeDetails: {
|
|
@@ -38,9 +36,9 @@ export default (({
|
|
|
38
36
|
}]
|
|
39
37
|
}, false);
|
|
40
38
|
return [emptyViewProposition];
|
|
41
|
-
};
|
|
42
|
-
|
|
39
|
+
};
|
|
43
40
|
|
|
41
|
+
// This should be called before making the request to experience edge.
|
|
44
42
|
const createCacheUpdate = viewName => {
|
|
45
43
|
const updateCacheDeferred = defer();
|
|
46
44
|
cacheUpdateCreatedAtLeastOnce = true;
|
|
@@ -52,29 +50,22 @@ export default (({
|
|
|
52
50
|
const viewPropositionsWithScope = viewPropositions.filter(proposition => proposition.getScope());
|
|
53
51
|
const newViewStorage = groupBy(viewPropositionsWithScope, proposition => proposition.getScope().toLowerCase());
|
|
54
52
|
updateCacheDeferred.resolve(newViewStorage);
|
|
55
|
-
|
|
56
53
|
if (viewName) {
|
|
57
54
|
return getViewPropositions(newViewStorage, viewName);
|
|
58
55
|
}
|
|
59
|
-
|
|
60
56
|
return [];
|
|
61
57
|
},
|
|
62
|
-
|
|
63
58
|
cancel() {
|
|
64
59
|
updateCacheDeferred.reject();
|
|
65
60
|
}
|
|
66
|
-
|
|
67
61
|
};
|
|
68
62
|
};
|
|
69
|
-
|
|
70
63
|
const getView = viewName => {
|
|
71
64
|
return previousUpdateCacheComplete.then(() => getViewPropositions(viewStorage, viewName));
|
|
72
65
|
};
|
|
73
|
-
|
|
74
66
|
const isInitialized = () => {
|
|
75
67
|
return cacheUpdateCreatedAtLeastOnce;
|
|
76
68
|
};
|
|
77
|
-
|
|
78
69
|
return {
|
|
79
70
|
createCacheUpdate,
|
|
80
71
|
getView,
|
|
@@ -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 { PropositionEventType } from "./constants/propositionEventType";
|
|
13
14
|
export default (({
|
|
14
15
|
mergeDecisionsMeta,
|
|
@@ -31,7 +32,6 @@ export default (({
|
|
|
31
32
|
});
|
|
32
33
|
return viewCache.getView(viewName).then(propositions => {
|
|
33
34
|
let render;
|
|
34
|
-
|
|
35
35
|
if (personalizationDetails.isRenderDecisions()) {
|
|
36
36
|
({
|
|
37
37
|
render,
|
|
@@ -40,7 +40,6 @@ export default (({
|
|
|
40
40
|
} = processPropositions(propositions));
|
|
41
41
|
return render();
|
|
42
42
|
}
|
|
43
|
-
|
|
44
43
|
({
|
|
45
44
|
returnedPropositions,
|
|
46
45
|
returnedDecisions
|
|
@@ -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 { awaitSelector } from "../../../utils/dom";
|
|
13
14
|
import { hideElements, showElements } from "../flicker";
|
|
14
15
|
import { selectNodesWithEq } from "./dom";
|
|
@@ -23,12 +24,10 @@ export { default as setStyles } from "./setStyles";
|
|
|
23
24
|
export { default as setAttributes } from "./setAttributes";
|
|
24
25
|
export { default as swapImage } from "./swapImage";
|
|
25
26
|
export { default as rearrangeChildren } from "./rearrangeChildren";
|
|
26
|
-
|
|
27
27
|
const renderContent = (elements, content, renderFunc) => {
|
|
28
28
|
const executions = elements.map(element => renderFunc(element, content));
|
|
29
29
|
return Promise.all(executions);
|
|
30
30
|
};
|
|
31
|
-
|
|
32
31
|
export const createAction = renderFunc => {
|
|
33
32
|
return itemData => {
|
|
34
33
|
const {
|
|
@@ -9,35 +9,28 @@ 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 { selectNodes } from "../../../utils/dom";
|
|
13
14
|
import { STYLE } from "../../../constants/tagName";
|
|
14
15
|
import { SRC } from "../../../constants/elementAttribute";
|
|
15
16
|
import { getAttribute, getNonce } from "./dom";
|
|
16
|
-
|
|
17
17
|
const is = (element, tagName) => element.tagName === tagName;
|
|
18
|
-
|
|
19
18
|
const isInlineStyleElement = element => is(element, STYLE) && !getAttribute(element, SRC);
|
|
20
|
-
|
|
21
19
|
export default (fragment => {
|
|
22
20
|
const styleNodes = selectNodes(STYLE, fragment);
|
|
23
21
|
const {
|
|
24
22
|
length
|
|
25
23
|
} = styleNodes;
|
|
26
24
|
const nonce = getNonce();
|
|
27
|
-
|
|
28
25
|
if (!nonce) {
|
|
29
26
|
return;
|
|
30
27
|
}
|
|
31
28
|
/* eslint-disable no-continue */
|
|
32
|
-
|
|
33
|
-
|
|
34
29
|
for (let i = 0; i < length; i += 1) {
|
|
35
30
|
const element = styleNodes[i];
|
|
36
|
-
|
|
37
31
|
if (!isInlineStyleElement(element)) {
|
|
38
32
|
continue;
|
|
39
33
|
}
|
|
40
|
-
|
|
41
34
|
element.nonce = nonce;
|
|
42
35
|
}
|
|
43
36
|
});
|
|
@@ -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 { appendNode } from "../../../utils/dom";
|
|
13
14
|
import { createFragment, getChildNodes } from "./dom";
|
|
14
15
|
import { loadImages } from "./images";
|