@adobe/alloy 2.19.0-beta.0 → 2.19.0-beta.2
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 +35 -46
- 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 +6 -12
- 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,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
|
sendBeacon,
|
|
14
15
|
sendFetchRequest,
|
|
@@ -18,22 +19,19 @@ export default (({
|
|
|
18
19
|
const blob = new Blob([body], {
|
|
19
20
|
type: "text/plain; charset=UTF-8"
|
|
20
21
|
});
|
|
21
|
-
|
|
22
22
|
if (!sendBeacon(url, blob)) {
|
|
23
23
|
logger.info("Unable to use `sendBeacon`; falling back to `fetch`.");
|
|
24
24
|
return sendFetchRequest(url, body);
|
|
25
|
-
}
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
// Using sendBeacon, we technically don't get a response back from
|
|
26
28
|
// the server, but we'll resolve the promise with an object to maintain
|
|
27
29
|
// consistency with other network strategies.
|
|
28
|
-
|
|
29
|
-
|
|
30
30
|
return Promise.resolve({
|
|
31
31
|
statusCode: 204,
|
|
32
|
-
|
|
33
32
|
getHeader() {
|
|
34
33
|
return null;
|
|
35
34
|
},
|
|
36
|
-
|
|
37
35
|
body: ""
|
|
38
36
|
});
|
|
39
37
|
};
|
|
@@ -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
|
fetch
|
|
14
15
|
}) => {
|
|
@@ -26,7 +27,6 @@ export default (({
|
|
|
26
27
|
}).then(response => {
|
|
27
28
|
return response.text().then(responseBody => ({
|
|
28
29
|
statusCode: response.status,
|
|
29
|
-
|
|
30
30
|
// We expose headers through a function instead of creating an object
|
|
31
31
|
// with all the headers up front largely because the native
|
|
32
32
|
// request.getResponseHeader method is case-insensitive but also because it prevents
|
|
@@ -34,7 +34,6 @@ export default (({
|
|
|
34
34
|
getHeader(name) {
|
|
35
35
|
return response.headers.get(name);
|
|
36
36
|
},
|
|
37
|
-
|
|
38
37
|
body: responseBody
|
|
39
38
|
}));
|
|
40
39
|
});
|
|
@@ -9,13 +9,13 @@ 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
|
XMLHttpRequest
|
|
14
15
|
}) => {
|
|
15
16
|
return (url, body) => {
|
|
16
17
|
return new Promise((resolve, reject) => {
|
|
17
18
|
const request = new XMLHttpRequest();
|
|
18
|
-
|
|
19
19
|
request.onreadystatechange = () => {
|
|
20
20
|
if (request.readyState === 4) {
|
|
21
21
|
if (request.status === 0) {
|
|
@@ -23,7 +23,6 @@ export default (({
|
|
|
23
23
|
} else {
|
|
24
24
|
resolve({
|
|
25
25
|
statusCode: request.status,
|
|
26
|
-
|
|
27
26
|
// We expose headers through a function instead of creating an object
|
|
28
27
|
// with all the headers up front because:
|
|
29
28
|
// 1. It avoids having to add header parsing code to get all headers.
|
|
@@ -31,17 +30,14 @@ export default (({
|
|
|
31
30
|
getHeader(name) {
|
|
32
31
|
return request.getResponseHeader(name);
|
|
33
32
|
},
|
|
34
|
-
|
|
35
33
|
body: request.responseText
|
|
36
34
|
});
|
|
37
35
|
}
|
|
38
36
|
}
|
|
39
37
|
};
|
|
40
|
-
|
|
41
38
|
request.onloadstart = () => {
|
|
42
39
|
request.responseType = "text";
|
|
43
40
|
};
|
|
44
|
-
|
|
45
41
|
request.open("POST", url, true);
|
|
46
42
|
request.setRequestHeader("Content-Type", "text/plain; charset=UTF-8");
|
|
47
43
|
request.withCredentials = true;
|
|
@@ -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 COMMAND_DOC_URI = "https://adobe.ly/3sHgQHb";
|
|
13
14
|
export default (({
|
|
14
15
|
command,
|
|
@@ -20,7 +21,6 @@ export default (({
|
|
|
20
21
|
optionsValidator
|
|
21
22
|
} = command;
|
|
22
23
|
let validatedOptions = options;
|
|
23
|
-
|
|
24
24
|
if (optionsValidator) {
|
|
25
25
|
try {
|
|
26
26
|
validatedOptions = optionsValidator(options);
|
|
@@ -29,6 +29,5 @@ export default (({
|
|
|
29
29
|
throw new Error(invalidOptionsMessage);
|
|
30
30
|
}
|
|
31
31
|
}
|
|
32
|
-
|
|
33
32
|
return validatedOptions;
|
|
34
33
|
});
|
package/libEs6/index.js
CHANGED
|
@@ -9,9 +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
|
+
|
|
12
13
|
// This file is used to rollup the code into an ES module version to be used by other npm projects
|
|
13
14
|
// like the launch extension. Everything that is exported here can be used independently by other
|
|
14
15
|
// npm projects.
|
|
16
|
+
|
|
15
17
|
import { createExecuteCommand } from "./core";
|
|
16
18
|
import createLogger from "./core/createLogger";
|
|
17
19
|
import createLogController from "./core/createLogController";
|
|
@@ -29,11 +31,11 @@ export const createInstance = (options = {}) => {
|
|
|
29
31
|
const {
|
|
30
32
|
name,
|
|
31
33
|
monitors
|
|
32
|
-
} = eventOptionsValidator(options);
|
|
33
|
-
// eslint-disable-next-line no-underscore-dangle
|
|
34
|
+
} = eventOptionsValidator(options);
|
|
34
35
|
|
|
36
|
+
// this is a function so that window.__alloyMonitors can be set or added to at any time
|
|
37
|
+
// eslint-disable-next-line no-underscore-dangle
|
|
35
38
|
const getMonitors = () => (window.__alloyMonitors || []).concat(monitors);
|
|
36
|
-
|
|
37
39
|
const logController = createLogController({
|
|
38
40
|
console,
|
|
39
41
|
locationSearch: window.location.search,
|
|
@@ -9,10 +9,12 @@ 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 { CHROME, EDGE, EDGE_CHROMIUM, IE, UNKNOWN } from "../constants/browser";
|
|
13
|
-
import includes from "./includes";
|
|
14
|
+
import includes from "./includes";
|
|
15
|
+
|
|
16
|
+
// Users could have also disabled third-party cookies within these browsers, but
|
|
14
17
|
// we don't know. We also assume "unknown" browsers support third-party cookies,
|
|
15
18
|
// though we don't really know that either. We're making best guesses.
|
|
16
|
-
|
|
17
19
|
const browsersSupportingThirdPartyCookie = [CHROME, EDGE, EDGE_CHROMIUM, IE, UNKNOWN];
|
|
18
20
|
export default (browser => includes(browsersSupportingThirdPartyCookie, browser));
|
package/libEs6/utils/assign.js
CHANGED
|
@@ -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
|
import assign from "@adobe/reactor-object-assign";
|
|
13
14
|
export default assign;
|
package/libEs6/utils/assignIf.js
CHANGED
|
@@ -9,11 +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
|
+
|
|
12
13
|
import assign from "./assign";
|
|
13
14
|
export default ((target, source, predicate) => {
|
|
14
15
|
if (predicate()) {
|
|
15
16
|
assign(target, source);
|
|
16
17
|
}
|
|
17
|
-
|
|
18
18
|
return target;
|
|
19
19
|
});
|
|
@@ -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 cookie from "js-cookie";
|
|
13
14
|
export default {
|
|
14
15
|
get: cookie.get,
|
package/libEs6/utils/crc32.js
CHANGED
|
@@ -11,30 +11,23 @@ Description
|
|
|
11
11
|
*/
|
|
12
12
|
const crc32 = (() => {
|
|
13
13
|
const table = [];
|
|
14
|
-
|
|
15
14
|
for (let i = 0; i < 256; i++) {
|
|
16
15
|
let c = i;
|
|
17
|
-
|
|
18
16
|
for (let j = 0; j < 8; j++) {
|
|
19
17
|
c = c & 1 ? 0xedb88320 ^ c >>> 1 : c >>> 1;
|
|
20
18
|
}
|
|
21
|
-
|
|
22
19
|
table.push(c);
|
|
23
20
|
}
|
|
24
|
-
|
|
25
21
|
return function (str, crc) {
|
|
26
22
|
str = unescape(encodeURIComponent(str));
|
|
27
23
|
if (!crc) crc = 0;
|
|
28
24
|
crc = crc ^ -1;
|
|
29
|
-
|
|
30
25
|
for (let i = 0; i < str.length; i++) {
|
|
31
26
|
const y = (crc ^ str.charCodeAt(i)) & 0xff;
|
|
32
27
|
crc = crc >>> 8 ^ table[y];
|
|
33
28
|
}
|
|
34
|
-
|
|
35
29
|
crc = crc ^ -1;
|
|
36
30
|
return crc >>> 0;
|
|
37
31
|
};
|
|
38
32
|
})();
|
|
39
|
-
|
|
40
33
|
export default crc32;
|
|
@@ -20,7 +20,6 @@ export default (() => {
|
|
|
20
20
|
add(callback) {
|
|
21
21
|
callbacks.push(callback);
|
|
22
22
|
},
|
|
23
|
-
|
|
24
23
|
call(...args) {
|
|
25
24
|
// While this utility doesn't necessarily need to be doing the
|
|
26
25
|
// Promise.all, it's currently useful everywhere this is used and
|
|
@@ -28,6 +27,5 @@ export default (() => {
|
|
|
28
27
|
// to make this utility more "pure".
|
|
29
28
|
return Promise.all(callbacks.map(callback => callback(...args)));
|
|
30
29
|
}
|
|
31
|
-
|
|
32
30
|
};
|
|
33
31
|
});
|
|
@@ -9,12 +9,13 @@ 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
|
logger,
|
|
14
15
|
cookieJar
|
|
15
16
|
}) => {
|
|
16
|
-
return {
|
|
17
|
-
|
|
17
|
+
return {
|
|
18
|
+
...cookieJar,
|
|
18
19
|
set(key, value, options) {
|
|
19
20
|
logger.info("Setting cookie", {
|
|
20
21
|
name: key,
|
|
@@ -23,6 +24,5 @@ export default (({
|
|
|
23
24
|
});
|
|
24
25
|
cookieJar.set(key, value, options);
|
|
25
26
|
}
|
|
26
|
-
|
|
27
27
|
};
|
|
28
28
|
});
|
|
@@ -9,7 +9,9 @@ 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 deepAssign from "./deepAssign";
|
|
14
|
+
|
|
13
15
|
/**
|
|
14
16
|
* Creates a function that, when passed an object of updates, will merge
|
|
15
17
|
* the updates onto the current value of a payload property.
|
|
@@ -18,7 +20,6 @@ import deepAssign from "./deepAssign";
|
|
|
18
20
|
* can be a dot-notation property path.
|
|
19
21
|
* @returns {Function}
|
|
20
22
|
*/
|
|
21
|
-
|
|
22
23
|
export default ((content, key) => updates => {
|
|
23
24
|
const propertyPath = key.split(".");
|
|
24
25
|
const hostObjectForUpdates = propertyPath.reduce((obj, propertyName) => {
|
|
@@ -28,17 +28,14 @@ export default (() => {
|
|
|
28
28
|
*/
|
|
29
29
|
addTask(task) {
|
|
30
30
|
queueLength += 1;
|
|
31
|
-
|
|
32
31
|
const lastPromiseFulfilledHandler = () => {
|
|
33
32
|
return task().finally(() => {
|
|
34
33
|
queueLength -= 1;
|
|
35
34
|
});
|
|
36
35
|
};
|
|
37
|
-
|
|
38
36
|
lastPromiseInQueue = lastPromiseInQueue.then(lastPromiseFulfilledHandler, lastPromiseFulfilledHandler);
|
|
39
37
|
return lastPromiseInQueue;
|
|
40
38
|
},
|
|
41
|
-
|
|
42
39
|
/**
|
|
43
40
|
* How many tasks are in the queue. This includes the task
|
|
44
41
|
* that's currently running.
|
|
@@ -47,6 +44,5 @@ export default (() => {
|
|
|
47
44
|
get length() {
|
|
48
45
|
return queueLength;
|
|
49
46
|
}
|
|
50
|
-
|
|
51
47
|
};
|
|
52
48
|
});
|
|
@@ -10,17 +10,14 @@ OF ANY KIND, either express or implied. See the License for the specific languag
|
|
|
10
10
|
governing permissions and limitations under the License.
|
|
11
11
|
*/
|
|
12
12
|
const REFERENCE_EQUALITY = (a, b) => a === b;
|
|
13
|
-
|
|
14
13
|
const findIndex = (array, item, isEqual) => {
|
|
15
14
|
for (let i = 0; i < array.length; i += 1) {
|
|
16
15
|
if (isEqual(array[i], item)) {
|
|
17
16
|
return i;
|
|
18
17
|
}
|
|
19
18
|
}
|
|
20
|
-
|
|
21
19
|
return -1;
|
|
22
20
|
};
|
|
23
|
-
|
|
24
21
|
export default ((array, isEqual = REFERENCE_EQUALITY) => {
|
|
25
22
|
return array.filter((item, index) => findIndex(array, item, isEqual) === index);
|
|
26
23
|
});
|
|
@@ -9,19 +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 isNil from "./isNil";
|
|
13
14
|
import isObject from "./isObject";
|
|
14
|
-
|
|
15
15
|
const deepAssignObject = (target, source) => {
|
|
16
16
|
Object.keys(source).forEach(key => {
|
|
17
17
|
if (isObject(target[key]) && isObject(source[key])) {
|
|
18
18
|
deepAssignObject(target[key], source[key]);
|
|
19
19
|
return;
|
|
20
20
|
}
|
|
21
|
-
|
|
22
21
|
target[key] = source[key];
|
|
23
22
|
});
|
|
24
23
|
};
|
|
24
|
+
|
|
25
25
|
/**
|
|
26
26
|
* Recursively copy the values of all enumerable own properties from a source item to a target item if the both items are objects
|
|
27
27
|
* @param {Object} target - a target object
|
|
@@ -30,13 +30,10 @@ const deepAssignObject = (target, source) => {
|
|
|
30
30
|
* deepAssign({ a: 'a', b: 'b' }, { b: 'B', c: 'c' });
|
|
31
31
|
* // { a: 'a', b: 'B', c: 'c' }
|
|
32
32
|
*/
|
|
33
|
-
|
|
34
|
-
|
|
35
33
|
export default ((target, ...sources) => {
|
|
36
34
|
if (isNil(target)) {
|
|
37
35
|
throw new TypeError('deepAssign "target" cannot be null or undefined');
|
|
38
36
|
}
|
|
39
|
-
|
|
40
37
|
const result = Object(target);
|
|
41
38
|
sources.forEach(source => deepAssignObject(result, Object(source)));
|
|
42
39
|
return result;
|
|
@@ -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 ((parent, node) => {
|
|
13
14
|
return parent.appendChild(node);
|
|
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 isFunction from "../isFunction";
|
|
13
14
|
import isNonEmptyArray from "../isNonEmptyArray";
|
|
14
15
|
import selectNodes from "./selectNodes";
|
|
@@ -22,15 +23,12 @@ const VISIBILITY_STATE = "visibilityState";
|
|
|
22
23
|
const VISIBLE = "visible";
|
|
23
24
|
const DELAY = 100;
|
|
24
25
|
const MAX_POLLING_TIMEOUT = 5000;
|
|
25
|
-
|
|
26
26
|
const createError = selector => {
|
|
27
27
|
return new Error(`Could not find: ${selector}`);
|
|
28
28
|
};
|
|
29
|
-
|
|
30
29
|
const createPromise = executor => {
|
|
31
30
|
return new Promise(executor);
|
|
32
31
|
};
|
|
33
|
-
|
|
34
32
|
export const canUseMutationObserver = win => {
|
|
35
33
|
return isFunction(win[MUTATION_OBSERVER]);
|
|
36
34
|
};
|
|
@@ -38,7 +36,6 @@ export const awaitUsingMutationObserver = (win, doc, selector, timeout, selectFu
|
|
|
38
36
|
return createPromise((resolve, reject) => {
|
|
39
37
|
const mutationObserver = new win[MUTATION_OBSERVER](() => {
|
|
40
38
|
const nodes = selectFunc(selector);
|
|
41
|
-
|
|
42
39
|
if (isNonEmptyArray(nodes)) {
|
|
43
40
|
mutationObserver.disconnect();
|
|
44
41
|
resolve(nodes);
|
|
@@ -58,15 +55,12 @@ export const awaitUsingRequestAnimation = (win, selector, timeout, selectFunc) =
|
|
|
58
55
|
return createPromise((resolve, reject) => {
|
|
59
56
|
const execute = () => {
|
|
60
57
|
const nodes = selectFunc(selector);
|
|
61
|
-
|
|
62
58
|
if (isNonEmptyArray(nodes)) {
|
|
63
59
|
resolve(nodes);
|
|
64
60
|
return;
|
|
65
61
|
}
|
|
66
|
-
|
|
67
62
|
win[RAF](execute);
|
|
68
63
|
};
|
|
69
|
-
|
|
70
64
|
execute();
|
|
71
65
|
setTimeout(() => {
|
|
72
66
|
reject(createError(selector));
|
|
@@ -77,15 +71,12 @@ export const awaitUsingTimer = (selector, timeout, selectFunc) => {
|
|
|
77
71
|
return createPromise((resolve, reject) => {
|
|
78
72
|
const execute = () => {
|
|
79
73
|
const nodes = selectFunc(selector);
|
|
80
|
-
|
|
81
74
|
if (isNonEmptyArray(nodes)) {
|
|
82
75
|
resolve(nodes);
|
|
83
76
|
return;
|
|
84
77
|
}
|
|
85
|
-
|
|
86
78
|
setTimeout(execute, DELAY);
|
|
87
79
|
};
|
|
88
|
-
|
|
89
80
|
execute();
|
|
90
81
|
setTimeout(() => {
|
|
91
82
|
reject(createError(selector));
|
|
@@ -94,18 +85,14 @@ export const awaitUsingTimer = (selector, timeout, selectFunc) => {
|
|
|
94
85
|
};
|
|
95
86
|
export default ((selector, selectFunc = selectNodes, timeout = MAX_POLLING_TIMEOUT, win = window, doc = document) => {
|
|
96
87
|
const nodes = selectFunc(selector);
|
|
97
|
-
|
|
98
88
|
if (isNonEmptyArray(nodes)) {
|
|
99
89
|
return Promise.resolve(nodes);
|
|
100
90
|
}
|
|
101
|
-
|
|
102
91
|
if (canUseMutationObserver(win)) {
|
|
103
92
|
return awaitUsingMutationObserver(win, doc, selector, timeout, selectFunc);
|
|
104
93
|
}
|
|
105
|
-
|
|
106
94
|
if (canUseRequestAnimationFrame(doc)) {
|
|
107
95
|
return awaitUsingRequestAnimation(win, selector, timeout, selectFunc);
|
|
108
96
|
}
|
|
109
|
-
|
|
110
97
|
return awaitUsingTimer(selector, timeout, selectFunc);
|
|
111
98
|
});
|
|
@@ -9,9 +9,9 @@ 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 "./appendNode";
|
|
13
14
|
import isObject from "../isObject";
|
|
14
|
-
|
|
15
15
|
const populateElementProperties = (element, props) => {
|
|
16
16
|
Object.keys(props).forEach(key => {
|
|
17
17
|
// The following is to support setting style properties to avoid CSP errors.
|
|
@@ -25,7 +25,6 @@ const populateElementProperties = (element, props) => {
|
|
|
25
25
|
}
|
|
26
26
|
});
|
|
27
27
|
};
|
|
28
|
-
|
|
29
28
|
export default ((tag, attrs = {}, props = {}, children = [], doc = document) => {
|
|
30
29
|
const result = doc.createElement(tag);
|
|
31
30
|
Object.keys(attrs).forEach(key => {
|
|
@@ -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 as awaitSelector } from "./awaitSelector";
|
|
13
14
|
export { default as appendNode } from "./appendNode";
|
|
14
15
|
export { default as createNode } from "./createNode";
|
|
@@ -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
|
import SHADOW_SEPARATOR from "../../constants/shadowSeparator";
|
|
13
14
|
export default (str => str.indexOf(SHADOW_SEPARATOR) !== -1);
|
|
@@ -19,8 +19,8 @@ governing permissions and limitations under the License.
|
|
|
19
19
|
export default ((selector, element) => {
|
|
20
20
|
if (element.matches) {
|
|
21
21
|
return element.matches(selector);
|
|
22
|
-
}
|
|
23
|
-
|
|
22
|
+
}
|
|
24
23
|
|
|
24
|
+
// Making IE 11 happy
|
|
25
25
|
return element.msMatchesSelector(selector);
|
|
26
26
|
});
|
|
@@ -9,16 +9,17 @@ 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 toArray from "../toArray";
|
|
13
14
|
const SIBLING_PATTERN = /^\s*>/;
|
|
14
15
|
export default ((context, selector) => {
|
|
15
16
|
if (!SIBLING_PATTERN.test(selector)) {
|
|
16
17
|
return toArray(context.querySelectorAll(selector));
|
|
17
18
|
}
|
|
19
|
+
const tag = `alloy-${Date.now()}`;
|
|
18
20
|
|
|
19
|
-
|
|
21
|
+
// We could use a :scope selector here, but we want to be IE compliant
|
|
20
22
|
// so we add a dummy css class to be able to select the children
|
|
21
|
-
|
|
22
23
|
try {
|
|
23
24
|
context.classList.add(tag);
|
|
24
25
|
return toArray(context.querySelectorAll(`.${tag} ${selector}`));
|
|
@@ -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
|
+
|
|
12
13
|
export default (node => {
|
|
13
14
|
const parent = node.parentNode;
|
|
14
|
-
|
|
15
15
|
if (parent) {
|
|
16
16
|
return parent.removeChild(node);
|
|
17
17
|
}
|
|
18
|
-
|
|
19
18
|
return null;
|
|
20
19
|
});
|
|
@@ -9,20 +9,20 @@ 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 querySelectorAll from "./querySelectorAll";
|
|
13
14
|
import selectNodesWithShadow from "./selectNodesWithShadow";
|
|
14
15
|
import isShadowSelector from "./isShadowSelector";
|
|
16
|
+
|
|
15
17
|
/**
|
|
16
18
|
* Returns an array of matched DOM nodes.
|
|
17
19
|
* @param {String} selector
|
|
18
20
|
* @param {Node} [context=document] defaults to document
|
|
19
21
|
* @returns {Array} an array of DOM nodes
|
|
20
22
|
*/
|
|
21
|
-
|
|
22
23
|
export default ((selector, context = document) => {
|
|
23
24
|
if (!isShadowSelector(selector)) {
|
|
24
25
|
return querySelectorAll(context, selector);
|
|
25
26
|
}
|
|
26
|
-
|
|
27
27
|
return selectNodesWithShadow(context, selector);
|
|
28
28
|
});
|
|
@@ -9,58 +9,48 @@ 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 querySelectorAll from "./querySelectorAll";
|
|
13
14
|
import startsWith from "../startsWith";
|
|
14
15
|
import SHADOW_SEPARATOR from "../../constants/shadowSeparator";
|
|
15
|
-
|
|
16
16
|
const splitWithShadow = selector => {
|
|
17
17
|
return selector.split(SHADOW_SEPARATOR);
|
|
18
18
|
};
|
|
19
|
-
|
|
20
19
|
const transformPrefix = (parent, selector) => {
|
|
21
20
|
const result = selector.trim();
|
|
22
21
|
const hasChildCombinatorPrefix = startsWith(result, ">");
|
|
23
|
-
|
|
24
22
|
if (!hasChildCombinatorPrefix) {
|
|
25
23
|
return result;
|
|
26
|
-
}
|
|
27
|
-
|
|
24
|
+
}
|
|
28
25
|
|
|
26
|
+
// IE doesn't support :scope
|
|
29
27
|
if (window.document.documentMode) {
|
|
30
28
|
return result.substring(1).trim();
|
|
31
29
|
}
|
|
32
|
-
|
|
33
30
|
const prefix = parent instanceof Element || parent instanceof HTMLDocument ? ":scope" : ":host"; // see https://bugs.webkit.org/show_bug.cgi?id=233380
|
|
34
31
|
|
|
35
32
|
return `${prefix} ${result}`;
|
|
36
33
|
};
|
|
37
|
-
|
|
38
34
|
export default ((context, selector) => {
|
|
39
35
|
// Shadow DOM should be supported
|
|
40
36
|
if (!window.document.documentElement.attachShadow) {
|
|
41
37
|
return querySelectorAll(context, selector.replace(SHADOW_SEPARATOR, ""));
|
|
42
38
|
}
|
|
43
|
-
|
|
44
39
|
const parts = splitWithShadow(selector);
|
|
45
|
-
|
|
46
40
|
if (parts.length < 2) {
|
|
47
41
|
return querySelectorAll(context, selector);
|
|
48
|
-
}
|
|
49
|
-
// find each subselector element based on the previously selected node's shadowRoot
|
|
50
|
-
|
|
42
|
+
}
|
|
51
43
|
|
|
44
|
+
// split the selector into parts separated by :shadow pseudo-selectors
|
|
45
|
+
// find each subselector element based on the previously selected node's shadowRoot
|
|
52
46
|
let parent = context;
|
|
53
|
-
|
|
54
47
|
for (let i = 0; i < parts.length; i += 1) {
|
|
55
48
|
const part = transformPrefix(parent, parts[i]);
|
|
56
49
|
const partNode = querySelectorAll(parent, part);
|
|
57
|
-
|
|
58
50
|
if (partNode.length === 0 || !partNode[0] || !partNode[0].shadowRoot) {
|
|
59
51
|
return partNode;
|
|
60
52
|
}
|
|
61
|
-
|
|
62
53
|
parent = partNode[0].shadowRoot;
|
|
63
54
|
}
|
|
64
|
-
|
|
65
55
|
return undefined;
|
|
66
56
|
});
|