@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.
Files changed (559) hide show
  1. package/libEs5/baseCode/index.js +2 -12
  2. package/libEs5/components/ActivityCollector/attachClickActivityCollector.js +9 -12
  3. package/libEs5/components/ActivityCollector/configValidators.js +1 -4
  4. package/libEs5/components/ActivityCollector/createGetLinkDetails.js +7 -17
  5. package/libEs5/components/ActivityCollector/createLinkClick.js +3 -8
  6. package/libEs5/components/ActivityCollector/getLinkName.js +8 -26
  7. package/libEs5/components/ActivityCollector/getLinkRegion.js +2 -16
  8. package/libEs5/components/ActivityCollector/index.js +8 -18
  9. package/libEs5/components/ActivityCollector/utils.js +3 -40
  10. package/libEs5/components/Audiences/index.js +2 -8
  11. package/libEs5/components/Audiences/injectProcessDestinations.js +20 -19
  12. package/libEs5/components/Audiences/injectProcessResponse.js +0 -5
  13. package/libEs5/components/Context/createComponent.js +0 -4
  14. package/libEs5/components/Context/implementationDetails.js +0 -5
  15. package/libEs5/components/Context/index.js +12 -19
  16. package/libEs5/components/Context/injectDevice.js +3 -20
  17. package/libEs5/components/Context/injectEnvironment.js +1 -8
  18. package/libEs5/components/Context/injectHighEntropyUserAgentHints.js +14 -21
  19. package/libEs5/components/Context/injectPlaceContext.js +2 -8
  20. package/libEs5/components/Context/injectTimestamp.js +0 -3
  21. package/libEs5/components/Context/injectWeb.js +0 -3
  22. package/libEs5/components/DataCollector/index.js +23 -35
  23. package/libEs5/components/DataCollector/validateApplyResponse.js +0 -3
  24. package/libEs5/components/DataCollector/validateUserEventOptions.js +0 -5
  25. package/libEs5/components/EventMerge/createComponent.js +0 -2
  26. package/libEs5/components/EventMerge/createEventMergeId.js +0 -3
  27. package/libEs5/components/EventMerge/index.js +1 -4
  28. package/libEs5/components/Identity/addEcidQueryToPayload.js +0 -3
  29. package/libEs5/components/Identity/addEcidToPayload.js +0 -3
  30. package/libEs5/components/Identity/appendIdentityToUrl/appendIdentityToUrlOptionsValidator.js +0 -5
  31. package/libEs5/components/Identity/appendIdentityToUrl/injectAppendIdentityToUrl.js +5 -19
  32. package/libEs5/components/Identity/configValidators.js +1 -2
  33. package/libEs5/components/Identity/constants/authState.js +1 -1
  34. package/libEs5/components/Identity/constants/defaultIdSyncTtlMinutes.js +0 -2
  35. package/libEs5/components/Identity/createComponent.js +16 -22
  36. package/libEs5/components/Identity/createLegacyIdentity.js +5 -19
  37. package/libEs5/components/Identity/getEcidFromResponse.js +0 -4
  38. package/libEs5/components/Identity/getIdentity/createGetIdentity.js +5 -9
  39. package/libEs5/components/Identity/getIdentity/createIdentityRequest.js +1 -4
  40. package/libEs5/components/Identity/getIdentity/createIdentityRequestPayload.js +0 -3
  41. package/libEs5/components/Identity/getIdentity/getIdentityOptionsValidator.js +0 -5
  42. package/libEs5/components/Identity/index.js +8 -29
  43. package/libEs5/components/Identity/injectAddLegacyEcidToPayload.js +1 -5
  44. package/libEs5/components/Identity/injectAddQueryStringIdentityToPayload.js +22 -28
  45. package/libEs5/components/Identity/injectAwaitIdentityCookie.js +7 -8
  46. package/libEs5/components/Identity/injectEnsureSingleIdentity.js +17 -20
  47. package/libEs5/components/Identity/injectHandleResponseForIdSyncs.js +0 -2
  48. package/libEs5/components/Identity/injectProcessIdSyncs.js +2 -7
  49. package/libEs5/components/Identity/injectSetDomainForInitialIdentityPayload.js +1 -4
  50. package/libEs5/components/Identity/visitorService/awaitVisitorOptIn.js +0 -3
  51. package/libEs5/components/Identity/visitorService/getVisitor.js +0 -3
  52. package/libEs5/components/Identity/visitorService/injectGetEcidFromVisitor.js +2 -7
  53. package/libEs5/components/LibraryInfo/index.js +13 -21
  54. package/libEs5/components/MachineLearning/index.js +1 -3
  55. package/libEs5/components/MachineLearning/processResponse.js +0 -2
  56. package/libEs5/components/Personalization/constants/eventType.js +1 -1
  57. package/libEs5/components/Personalization/constants/loggerMessage.js +0 -1
  58. package/libEs5/components/Personalization/constants/propositionEventType.js +1 -1
  59. package/libEs5/components/Personalization/constants/schema.js +1 -1
  60. package/libEs5/components/Personalization/constants/scopeType.js +1 -1
  61. package/libEs5/components/Personalization/constants/surface.js +1 -1
  62. package/libEs5/components/Personalization/createApplyPropositions.js +24 -39
  63. package/libEs5/components/Personalization/createClickStorage.js +1 -10
  64. package/libEs5/components/Personalization/createCollect.js +5 -15
  65. package/libEs5/components/Personalization/createComponent.js +25 -35
  66. package/libEs5/components/Personalization/createFetchDataHandler.js +35 -46
  67. package/libEs5/components/Personalization/createGetPageLocation.js +0 -2
  68. package/libEs5/components/Personalization/createOnClickHandler.js +6 -16
  69. package/libEs5/components/Personalization/createPendingNotificationsHandler.js +1 -4
  70. package/libEs5/components/Personalization/createPersonalizationDetails.js +17 -29
  71. package/libEs5/components/Personalization/createSetTargetMigration.js +0 -5
  72. package/libEs5/components/Personalization/createViewCacheManager.js +2 -15
  73. package/libEs5/components/Personalization/createViewChangeHandler.js +4 -11
  74. package/libEs5/components/Personalization/dom-actions/action.js +3 -19
  75. package/libEs5/components/Personalization/dom-actions/addNonceToInlineStyleElements.js +1 -13
  76. package/libEs5/components/Personalization/dom-actions/appendHtml.js +0 -7
  77. package/libEs5/components/Personalization/dom-actions/clicks/collectClicks.js +16 -27
  78. package/libEs5/components/Personalization/dom-actions/createPreprocess.js +0 -4
  79. package/libEs5/components/Personalization/dom-actions/dom/createFragment.js +0 -4
  80. package/libEs5/components/Personalization/dom-actions/dom/getAttribute.js +0 -2
  81. package/libEs5/components/Personalization/dom-actions/dom/getChildNodes.js +0 -5
  82. package/libEs5/components/Personalization/dom-actions/dom/getChildren.js +0 -5
  83. package/libEs5/components/Personalization/dom-actions/dom/getElementById.js +0 -3
  84. package/libEs5/components/Personalization/dom-actions/dom/getFirstChild.js +0 -2
  85. package/libEs5/components/Personalization/dom-actions/dom/getNextSibling.js +0 -2
  86. package/libEs5/components/Personalization/dom-actions/dom/getNonce.js +4 -10
  87. package/libEs5/components/Personalization/dom-actions/dom/getParent.js +0 -2
  88. package/libEs5/components/Personalization/dom-actions/dom/helperForEq.js +1 -6
  89. package/libEs5/components/Personalization/dom-actions/dom/index.js +0 -14
  90. package/libEs5/components/Personalization/dom-actions/dom/insertAfter.js +0 -6
  91. package/libEs5/components/Personalization/dom-actions/dom/insertBefore.js +0 -5
  92. package/libEs5/components/Personalization/dom-actions/dom/matchesSelectorWithEq.js +6 -11
  93. package/libEs5/components/Personalization/dom-actions/dom/removeAttribute.js +0 -2
  94. package/libEs5/components/Personalization/dom-actions/dom/selectNodesWithEq.js +16 -36
  95. package/libEs5/components/Personalization/dom-actions/dom/setAttribute.js +0 -2
  96. package/libEs5/components/Personalization/dom-actions/dom/setStyle.js +0 -4
  97. package/libEs5/components/Personalization/dom-actions/images.js +1 -11
  98. package/libEs5/components/Personalization/dom-actions/index.js +0 -1
  99. package/libEs5/components/Personalization/dom-actions/initDomActionsModules.js +0 -4
  100. package/libEs5/components/Personalization/dom-actions/insertHtmlAfter.js +0 -6
  101. package/libEs5/components/Personalization/dom-actions/insertHtmlBefore.js +0 -6
  102. package/libEs5/components/Personalization/dom-actions/prependHtml.js +4 -12
  103. package/libEs5/components/Personalization/dom-actions/rearrangeChildren.js +1 -6
  104. package/libEs5/components/Personalization/dom-actions/remapCustomCodeOffers.js +2 -8
  105. package/libEs5/components/Personalization/dom-actions/remapHeadOffers.js +2 -16
  106. package/libEs5/components/Personalization/dom-actions/replaceHtml.js +0 -4
  107. package/libEs5/components/Personalization/dom-actions/scripts.js +13 -35
  108. package/libEs5/components/Personalization/dom-actions/setAttributes.js +0 -3
  109. package/libEs5/components/Personalization/dom-actions/setHtml.js +1 -6
  110. package/libEs5/components/Personalization/dom-actions/setStyles.js +12 -8
  111. package/libEs5/components/Personalization/dom-actions/setText.js +0 -2
  112. package/libEs5/components/Personalization/dom-actions/swapImage.js +6 -9
  113. package/libEs5/components/Personalization/event.js +2 -10
  114. package/libEs5/components/Personalization/flicker/index.js +17 -31
  115. package/libEs5/components/Personalization/handlers/createProcessDomAction.js +4 -11
  116. package/libEs5/components/Personalization/handlers/createProcessHtmlContent.js +3 -8
  117. package/libEs5/components/Personalization/handlers/createProcessPropositions.js +6 -51
  118. package/libEs5/components/Personalization/handlers/createProcessRedirect.js +5 -8
  119. package/libEs5/components/Personalization/handlers/injectCreateProposition.js +19 -25
  120. package/libEs5/components/Personalization/handlers/processDefaultContent.js +0 -2
  121. package/libEs5/components/Personalization/index.js +17 -42
  122. package/libEs5/components/Personalization/utils/addRenderAttemptedToDecisions.js +1 -4
  123. package/libEs5/components/Personalization/utils/createAsyncArray.js +0 -3
  124. package/libEs5/components/Personalization/utils/isAuthoringModeEnabled.js +0 -2
  125. package/libEs5/components/Personalization/utils/isPageWideScope.js +0 -4
  126. package/libEs5/components/Personalization/utils/surfaceUtils.js +1 -27
  127. package/libEs5/components/Personalization/validateApplyPropositionsOptions.js +2 -6
  128. package/libEs5/components/Privacy/computeConsentHash.js +11 -8
  129. package/libEs5/components/Privacy/createComponent.js +24 -26
  130. package/libEs5/components/Privacy/createConsentHashStore.js +14 -15
  131. package/libEs5/components/Privacy/createConsentRequest.js +1 -4
  132. package/libEs5/components/Privacy/createConsentRequestPayload.js +0 -5
  133. package/libEs5/components/Privacy/createStoredConsent.js +2 -6
  134. package/libEs5/components/Privacy/index.js +5 -15
  135. package/libEs5/components/Privacy/injectSendSetConsentRequest.js +7 -12
  136. package/libEs5/components/Privacy/parseConsentCookie.js +3 -13
  137. package/libEs5/components/Privacy/validateSetConsentOptions.js +0 -4
  138. package/libEs5/constants/apiVersion.js +0 -1
  139. package/libEs5/constants/browser.js +1 -1
  140. package/libEs5/constants/consentPurpose.js +1 -1
  141. package/libEs5/constants/consentStatus.js +1 -1
  142. package/libEs5/constants/cookieNameKey.js +1 -1
  143. package/libEs5/constants/cookieNamePrefix.js +0 -1
  144. package/libEs5/constants/coreCommands.js +1 -1
  145. package/libEs5/constants/debugQueryParam.js +0 -1
  146. package/libEs5/constants/domain.js +1 -1
  147. package/libEs5/constants/ecidNamespace.js +0 -1
  148. package/libEs5/constants/edgeBasePath.js +0 -1
  149. package/libEs5/constants/elementAttribute.js +1 -1
  150. package/libEs5/constants/highEntropyUserAgentClientHints.js +0 -1
  151. package/libEs5/constants/httpHeaderNames.js +1 -1
  152. package/libEs5/constants/httpStatusCode.js +1 -1
  153. package/libEs5/constants/identityMapAuthenticatedState.js +0 -1
  154. package/libEs5/constants/legacyCookies.js +1 -1
  155. package/libEs5/constants/libraryName.js +0 -1
  156. package/libEs5/constants/libraryVersion.js +1 -2
  157. package/libEs5/constants/namespace.js +0 -1
  158. package/libEs5/constants/pageWideScope.js +0 -1
  159. package/libEs5/constants/queryStringIdentityParam.js +0 -1
  160. package/libEs5/constants/shadowSeparator.js +0 -1
  161. package/libEs5/constants/tagName.js +1 -1
  162. package/libEs5/core/buildAndValidateConfig.js +21 -32
  163. package/libEs5/core/componentCreators.js +0 -12
  164. package/libEs5/core/config/createConfig.js +1 -3
  165. package/libEs5/core/config/createCoreConfigs.js +0 -7
  166. package/libEs5/core/consent/createConsent.js +1 -11
  167. package/libEs5/core/consent/createConsentStateMachine.js +1 -18
  168. package/libEs5/core/createComponentRegistry.js +4 -14
  169. package/libEs5/core/createCookieTransfer.js +9 -18
  170. package/libEs5/core/createEvent.js +24 -33
  171. package/libEs5/core/createEventManager.js +26 -33
  172. package/libEs5/core/createInstanceFunction.js +0 -2
  173. package/libEs5/core/createLifecycle.js +14 -14
  174. package/libEs5/core/createLogController.js +5 -17
  175. package/libEs5/core/createLogger.js +3 -17
  176. package/libEs5/core/edgeNetwork/handleRequestFailure.js +0 -3
  177. package/libEs5/core/edgeNetwork/injectApplyResponse.js +12 -18
  178. package/libEs5/core/edgeNetwork/injectExtractEdgeInfo.js +4 -8
  179. package/libEs5/core/edgeNetwork/injectGetLocationHint.js +1 -11
  180. package/libEs5/core/edgeNetwork/injectProcessWarningsAndErrors.js +6 -11
  181. package/libEs5/core/edgeNetwork/injectSendEdgeNetworkRequest.js +18 -26
  182. package/libEs5/core/edgeNetwork/mergeLifecycleResponses.js +11 -10
  183. package/libEs5/core/index.js +12 -54
  184. package/libEs5/core/initializeComponents.js +5 -10
  185. package/libEs5/core/injectCreateResponse.js +8 -16
  186. package/libEs5/core/injectExecuteCommand.js +8 -19
  187. package/libEs5/core/injectHandleError.js +4 -8
  188. package/libEs5/core/injectShouldTransferCookie.js +1 -5
  189. package/libEs5/core/network/getRequestRetryDelay.js +10 -17
  190. package/libEs5/core/network/injectSendNetworkRequest.js +20 -22
  191. package/libEs5/core/network/isRequestRetryable.js +5 -7
  192. package/libEs5/core/network/requestMethods/injectSendBeaconRequest.js +5 -8
  193. package/libEs5/core/network/requestMethods/injectSendFetchRequest.js +0 -2
  194. package/libEs5/core/network/requestMethods/injectSendXhrRequest.js +0 -5
  195. package/libEs5/core/validateCommandOptions.js +5 -9
  196. package/libEs5/index.js +7 -15
  197. package/libEs5/utils/areThirdPartyCookiesSupportedByDefault.js +1 -5
  198. package/libEs5/utils/assign.js +0 -2
  199. package/libEs5/utils/assignIf.js +0 -4
  200. package/libEs5/utils/clone.js +0 -3
  201. package/libEs5/utils/cookieJar.js +0 -2
  202. package/libEs5/utils/crc32.js +0 -8
  203. package/libEs5/utils/createCallbackAggregator.js +0 -4
  204. package/libEs5/utils/createLoggingCookieJar.js +1 -6
  205. package/libEs5/utils/createMerger.js +0 -4
  206. package/libEs5/utils/createTaskQueue.js +0 -7
  207. package/libEs5/utils/deduplicateArray.js +0 -5
  208. package/libEs5/utils/deepAssign.js +2 -10
  209. package/libEs5/utils/defer.js +0 -3
  210. package/libEs5/utils/dom/appendNode.js +0 -2
  211. package/libEs5/utils/dom/awaitSelector.js +1 -29
  212. package/libEs5/utils/dom/createNode.js +1 -5
  213. package/libEs5/utils/dom/index.js +0 -8
  214. package/libEs5/utils/dom/isShadowSelector.js +0 -3
  215. package/libEs5/utils/dom/matchesSelector.js +2 -5
  216. package/libEs5/utils/dom/querySelectorAll.js +3 -6
  217. package/libEs5/utils/dom/removeNode.js +0 -4
  218. package/libEs5/utils/dom/selectNodes.js +0 -8
  219. package/libEs5/utils/dom/selectNodesWithShadow.js +6 -20
  220. package/libEs5/utils/endsWith.js +0 -3
  221. package/libEs5/utils/filterObject.js +13 -17
  222. package/libEs5/utils/find.js +0 -5
  223. package/libEs5/utils/fireImage.js +2 -7
  224. package/libEs5/utils/flatMap.js +0 -2
  225. package/libEs5/utils/getApexDomain.js +4 -8
  226. package/libEs5/utils/getBrowser.js +11 -11
  227. package/libEs5/utils/getLastArrayItems.js +0 -3
  228. package/libEs5/utils/getNamespacedCookieName.js +0 -4
  229. package/libEs5/utils/groupBy.js +0 -5
  230. package/libEs5/utils/includes.js +0 -3
  231. package/libEs5/utils/index.js +0 -56
  232. package/libEs5/utils/injectDoesIdentityCookieExist.js +0 -6
  233. package/libEs5/utils/injectFireReferrerHideableImage.js +21 -29
  234. package/libEs5/utils/injectStorage.js +1 -7
  235. package/libEs5/utils/intersection.js +0 -4
  236. package/libEs5/utils/isBlankString.js +0 -4
  237. package/libEs5/utils/isBoolean.js +0 -3
  238. package/libEs5/utils/isEmptyObject.js +0 -4
  239. package/libEs5/utils/isFunction.js +0 -3
  240. package/libEs5/utils/isInteger.js +0 -4
  241. package/libEs5/utils/isNamespacedCookieName.js +0 -5
  242. package/libEs5/utils/isNil.js +0 -3
  243. package/libEs5/utils/isNonEmptyArray.js +0 -3
  244. package/libEs5/utils/isNonEmptyString.js +0 -4
  245. package/libEs5/utils/isNumber.js +0 -3
  246. package/libEs5/utils/isObject.js +11 -5
  247. package/libEs5/utils/isString.js +0 -3
  248. package/libEs5/utils/isUnique.js +0 -7
  249. package/libEs5/utils/isValidRegExp.js +0 -3
  250. package/libEs5/utils/memoize.js +0 -5
  251. package/libEs5/utils/noop.js +0 -3
  252. package/libEs5/utils/padStart.js +0 -6
  253. package/libEs5/utils/prepareConfigOverridesForEdge.js +13 -21
  254. package/libEs5/utils/querystring.js +0 -2
  255. package/libEs5/utils/request/createAddIdentity.js +0 -2
  256. package/libEs5/utils/request/createDataCollectionRequest.js +1 -6
  257. package/libEs5/utils/request/createDataCollectionRequestPayload.js +0 -8
  258. package/libEs5/utils/request/createGetAssuranceValidationTokenParams.js +2 -11
  259. package/libEs5/utils/request/createHasIdentity.js +0 -2
  260. package/libEs5/utils/request/createRequest.js +3 -6
  261. package/libEs5/utils/request/createRequestParams.js +4 -12
  262. package/libEs5/utils/request/createRequestPayload.js +2 -7
  263. package/libEs5/utils/request/index.js +0 -8
  264. package/libEs5/utils/sanitizeOrgIdForCookieName.js +0 -2
  265. package/libEs5/utils/stackError.js +1 -6
  266. package/libEs5/utils/startsWith.js +0 -3
  267. package/libEs5/utils/stringToBoolean.js +0 -3
  268. package/libEs5/utils/toArray.js +0 -4
  269. package/libEs5/utils/toError.js +0 -3
  270. package/libEs5/utils/toISOStringLocal.js +3 -7
  271. package/libEs5/utils/toInteger.js +2 -8
  272. package/libEs5/utils/updateErrorMessage.js +3 -5
  273. package/libEs5/utils/uuid.js +0 -2
  274. package/libEs5/utils/validateConfigOverride.js +0 -3
  275. package/libEs5/utils/validateIdentityMap.js +0 -4
  276. package/libEs5/utils/validation/booleanValidator.js +0 -4
  277. package/libEs5/utils/validation/callbackValidator.js +0 -4
  278. package/libEs5/utils/validation/createAnyOfValidator.js +0 -5
  279. package/libEs5/utils/validation/createArrayOfValidator.js +0 -6
  280. package/libEs5/utils/validation/createDefaultValidator.js +0 -3
  281. package/libEs5/utils/validation/createDeprecatedValidator.js +13 -21
  282. package/libEs5/utils/validation/createLiteralValidator.js +0 -3
  283. package/libEs5/utils/validation/createMapOfValuesValidator.js +0 -9
  284. package/libEs5/utils/validation/createMinimumValidator.js +0 -3
  285. package/libEs5/utils/validation/createNoUnknownFieldsValidator.js +0 -4
  286. package/libEs5/utils/validation/createNonEmptyValidator.js +0 -6
  287. package/libEs5/utils/validation/createObjectOfValidator.js +2 -10
  288. package/libEs5/utils/validation/createUniqueItemsValidator.js +0 -4
  289. package/libEs5/utils/validation/createUniqueValidator.js +0 -3
  290. package/libEs5/utils/validation/domainValidator.js +1 -4
  291. package/libEs5/utils/validation/index.js +76 -59
  292. package/libEs5/utils/validation/integerValidator.js +0 -4
  293. package/libEs5/utils/validation/numberValidator.js +0 -4
  294. package/libEs5/utils/validation/regexpValidator.js +0 -4
  295. package/libEs5/utils/validation/requiredValidator.js +0 -3
  296. package/libEs5/utils/validation/stringValidator.js +0 -4
  297. package/libEs5/utils/validation/utils.js +7 -21
  298. package/libEs5/utils/values.js +0 -3
  299. package/libEs6/baseCode/index.js +3 -8
  300. package/libEs6/components/ActivityCollector/attachClickActivityCollector.js +5 -6
  301. package/libEs6/components/ActivityCollector/configValidators.js +1 -0
  302. package/libEs6/components/ActivityCollector/createGetLinkDetails.js +1 -8
  303. package/libEs6/components/ActivityCollector/createLinkClick.js +0 -3
  304. package/libEs6/components/ActivityCollector/getLinkName.js +8 -23
  305. package/libEs6/components/ActivityCollector/getLinkRegion.js +2 -12
  306. package/libEs6/components/ActivityCollector/index.js +3 -6
  307. package/libEs6/components/ActivityCollector/utils.js +2 -29
  308. package/libEs6/components/Audiences/index.js +1 -2
  309. package/libEs6/components/Audiences/injectProcessDestinations.js +3 -6
  310. package/libEs6/components/Audiences/injectProcessResponse.js +1 -2
  311. package/libEs6/components/Context/createComponent.js +1 -2
  312. package/libEs6/components/Context/index.js +3 -3
  313. package/libEs6/components/Context/injectDevice.js +1 -16
  314. package/libEs6/components/Context/injectEnvironment.js +1 -4
  315. package/libEs6/components/Context/injectHighEntropyUserAgentHints.js +2 -5
  316. package/libEs6/components/Context/injectPlaceContext.js +2 -5
  317. package/libEs6/components/Context/injectTimestamp.js +1 -0
  318. package/libEs6/components/Context/injectWeb.js +1 -0
  319. package/libEs6/components/DataCollector/index.js +1 -10
  320. package/libEs6/components/DataCollector/validateUserEventOptions.js +1 -1
  321. package/libEs6/components/EventMerge/createComponent.js +1 -0
  322. package/libEs6/components/EventMerge/createEventMergeId.js +1 -0
  323. package/libEs6/components/EventMerge/index.js +1 -2
  324. package/libEs6/components/Identity/addEcidQueryToPayload.js +1 -0
  325. package/libEs6/components/Identity/addEcidToPayload.js +1 -0
  326. package/libEs6/components/Identity/appendIdentityToUrl/appendIdentityToUrlOptionsValidator.js +1 -1
  327. package/libEs6/components/Identity/appendIdentityToUrl/injectAppendIdentityToUrl.js +0 -4
  328. package/libEs6/components/Identity/configValidators.js +1 -0
  329. package/libEs6/components/Identity/constants/authState.js +1 -0
  330. package/libEs6/components/Identity/constants/defaultIdSyncTtlMinutes.js +1 -0
  331. package/libEs6/components/Identity/createComponent.js +5 -7
  332. package/libEs6/components/Identity/createLegacyIdentity.js +0 -10
  333. package/libEs6/components/Identity/getEcidFromResponse.js +1 -0
  334. package/libEs6/components/Identity/getIdentity/createGetIdentity.js +1 -0
  335. package/libEs6/components/Identity/getIdentity/createIdentityRequest.js +1 -3
  336. package/libEs6/components/Identity/getIdentity/createIdentityRequestPayload.js +1 -0
  337. package/libEs6/components/Identity/getIdentity/getIdentityOptionsValidator.js +1 -1
  338. package/libEs6/components/Identity/index.js +1 -2
  339. package/libEs6/components/Identity/injectAddLegacyEcidToPayload.js +1 -1
  340. package/libEs6/components/Identity/injectAddQueryStringIdentityToPayload.js +5 -7
  341. package/libEs6/components/Identity/injectAwaitIdentityCookie.js +6 -3
  342. package/libEs6/components/Identity/injectEnsureSingleIdentity.js +12 -11
  343. package/libEs6/components/Identity/injectHandleResponseForIdSyncs.js +1 -0
  344. package/libEs6/components/Identity/injectProcessIdSyncs.js +0 -4
  345. package/libEs6/components/Identity/injectSetDomainForInitialIdentityPayload.js +1 -0
  346. package/libEs6/components/Identity/visitorService/awaitVisitorOptIn.js +1 -0
  347. package/libEs6/components/Identity/visitorService/getVisitor.js +1 -0
  348. package/libEs6/components/Identity/visitorService/injectGetEcidFromVisitor.js +1 -2
  349. package/libEs6/components/LibraryInfo/index.js +3 -6
  350. package/libEs6/components/MachineLearning/index.js +1 -2
  351. package/libEs6/components/MachineLearning/processResponse.js +1 -0
  352. package/libEs6/components/Personalization/constants/eventType.js +1 -0
  353. package/libEs6/components/Personalization/constants/propositionEventType.js +1 -0
  354. package/libEs6/components/Personalization/constants/schema.js +1 -0
  355. package/libEs6/components/Personalization/constants/scopeType.js +1 -0
  356. package/libEs6/components/Personalization/constants/surface.js +1 -0
  357. package/libEs6/components/Personalization/createApplyPropositions.js +7 -11
  358. package/libEs6/components/Personalization/createClickStorage.js +1 -8
  359. package/libEs6/components/Personalization/createCollect.js +0 -5
  360. package/libEs6/components/Personalization/createComponent.js +5 -11
  361. package/libEs6/components/Personalization/createFetchDataHandler.js +6 -12
  362. package/libEs6/components/Personalization/createGetPageLocation.js +1 -0
  363. package/libEs6/components/Personalization/createOnClickHandler.js +1 -4
  364. package/libEs6/components/Personalization/createPersonalizationDetails.js +1 -22
  365. package/libEs6/components/Personalization/createSetTargetMigration.js +1 -1
  366. package/libEs6/components/Personalization/createViewCacheManager.js +3 -12
  367. package/libEs6/components/Personalization/createViewChangeHandler.js +1 -2
  368. package/libEs6/components/Personalization/dom-actions/action.js +1 -2
  369. package/libEs6/components/Personalization/dom-actions/addNonceToInlineStyleElements.js +1 -8
  370. package/libEs6/components/Personalization/dom-actions/appendHtml.js +1 -0
  371. package/libEs6/components/Personalization/dom-actions/clicks/collectClicks.js +2 -14
  372. package/libEs6/components/Personalization/dom-actions/createPreprocess.js +0 -1
  373. package/libEs6/components/Personalization/dom-actions/dom/createFragment.js +1 -0
  374. package/libEs6/components/Personalization/dom-actions/dom/getAttribute.js +1 -0
  375. package/libEs6/components/Personalization/dom-actions/dom/getChildNodes.js +1 -2
  376. package/libEs6/components/Personalization/dom-actions/dom/getChildren.js +1 -2
  377. package/libEs6/components/Personalization/dom-actions/dom/getFirstChild.js +1 -0
  378. package/libEs6/components/Personalization/dom-actions/dom/getNextSibling.js +1 -0
  379. package/libEs6/components/Personalization/dom-actions/dom/getNonce.js +6 -5
  380. package/libEs6/components/Personalization/dom-actions/dom/getParent.js +1 -0
  381. package/libEs6/components/Personalization/dom-actions/dom/helperForEq.js +1 -0
  382. package/libEs6/components/Personalization/dom-actions/dom/index.js +1 -0
  383. package/libEs6/components/Personalization/dom-actions/dom/insertAfter.js +1 -2
  384. package/libEs6/components/Personalization/dom-actions/dom/insertBefore.js +1 -2
  385. package/libEs6/components/Personalization/dom-actions/dom/matchesSelectorWithEq.js +7 -6
  386. package/libEs6/components/Personalization/dom-actions/dom/removeAttribute.js +1 -0
  387. package/libEs6/components/Personalization/dom-actions/dom/selectNodesWithEq.js +6 -18
  388. package/libEs6/components/Personalization/dom-actions/dom/setAttribute.js +1 -0
  389. package/libEs6/components/Personalization/dom-actions/dom/setStyle.js +1 -2
  390. package/libEs6/components/Personalization/dom-actions/images.js +1 -1
  391. package/libEs6/components/Personalization/dom-actions/index.js +1 -0
  392. package/libEs6/components/Personalization/dom-actions/initDomActionsModules.js +1 -0
  393. package/libEs6/components/Personalization/dom-actions/insertHtmlAfter.js +1 -0
  394. package/libEs6/components/Personalization/dom-actions/insertHtmlBefore.js +1 -0
  395. package/libEs6/components/Personalization/dom-actions/prependHtml.js +5 -5
  396. package/libEs6/components/Personalization/dom-actions/rearrangeChildren.js +1 -2
  397. package/libEs6/components/Personalization/dom-actions/remapCustomCodeOffers.js +0 -3
  398. package/libEs6/components/Personalization/dom-actions/remapHeadOffers.js +1 -7
  399. package/libEs6/components/Personalization/dom-actions/replaceHtml.js +1 -0
  400. package/libEs6/components/Personalization/dom-actions/scripts.js +5 -16
  401. package/libEs6/components/Personalization/dom-actions/setAttributes.js +1 -0
  402. package/libEs6/components/Personalization/dom-actions/setHtml.js +1 -2
  403. package/libEs6/components/Personalization/dom-actions/setStyles.js +1 -0
  404. package/libEs6/components/Personalization/dom-actions/setText.js +1 -0
  405. package/libEs6/components/Personalization/dom-actions/swapImage.js +7 -4
  406. package/libEs6/components/Personalization/event.js +4 -4
  407. package/libEs6/components/Personalization/flicker/index.js +9 -12
  408. package/libEs6/components/Personalization/handlers/createProcessDomAction.js +0 -5
  409. package/libEs6/components/Personalization/handlers/createProcessHtmlContent.js +0 -3
  410. package/libEs6/components/Personalization/handlers/createProcessPropositions.js +1 -28
  411. package/libEs6/components/Personalization/handlers/createProcessRedirect.js +2 -3
  412. package/libEs6/components/Personalization/handlers/injectCreateProposition.js +5 -21
  413. package/libEs6/components/Personalization/index.js +1 -2
  414. package/libEs6/components/Personalization/utils/addRenderAttemptedToDecisions.js +1 -0
  415. package/libEs6/components/Personalization/utils/createAsyncArray.js +0 -2
  416. package/libEs6/components/Personalization/utils/isAuthoringModeEnabled.js +1 -0
  417. package/libEs6/components/Personalization/utils/isPageWideScope.js +1 -0
  418. package/libEs6/components/Personalization/utils/surfaceUtils.js +1 -20
  419. package/libEs6/components/Personalization/validateApplyPropositionsOptions.js +0 -1
  420. package/libEs6/components/Privacy/computeConsentHash.js +3 -4
  421. package/libEs6/components/Privacy/createComponent.js +5 -10
  422. package/libEs6/components/Privacy/createConsentHashStore.js +0 -10
  423. package/libEs6/components/Privacy/createConsentRequest.js +1 -3
  424. package/libEs6/components/Privacy/createConsentRequestPayload.js +1 -2
  425. package/libEs6/components/Privacy/createStoredConsent.js +1 -2
  426. package/libEs6/components/Privacy/index.js +1 -2
  427. package/libEs6/components/Privacy/injectSendSetConsentRequest.js +3 -3
  428. package/libEs6/constants/browser.js +1 -0
  429. package/libEs6/constants/consentPurpose.js +1 -0
  430. package/libEs6/constants/consentStatus.js +1 -0
  431. package/libEs6/constants/cookieNameKey.js +1 -0
  432. package/libEs6/constants/cookieNamePrefix.js +1 -0
  433. package/libEs6/constants/coreCommands.js +1 -0
  434. package/libEs6/constants/debugQueryParam.js +1 -0
  435. package/libEs6/constants/domain.js +1 -0
  436. package/libEs6/constants/ecidNamespace.js +1 -0
  437. package/libEs6/constants/elementAttribute.js +1 -0
  438. package/libEs6/constants/highEntropyUserAgentClientHints.js +1 -0
  439. package/libEs6/constants/httpHeaderNames.js +1 -0
  440. package/libEs6/constants/httpStatusCode.js +1 -0
  441. package/libEs6/constants/legacyCookies.js +1 -0
  442. package/libEs6/constants/libraryName.js +1 -0
  443. package/libEs6/constants/libraryVersion.js +3 -1
  444. package/libEs6/constants/namespace.js +1 -0
  445. package/libEs6/constants/pageWideScope.js +1 -0
  446. package/libEs6/constants/queryStringIdentityParam.js +1 -0
  447. package/libEs6/constants/shadowSeparator.js +1 -0
  448. package/libEs6/constants/tagName.js +1 -0
  449. package/libEs6/core/buildAndValidateConfig.js +4 -10
  450. package/libEs6/core/componentCreators.js +3 -3
  451. package/libEs6/core/config/createConfig.js +1 -2
  452. package/libEs6/core/config/createCoreConfigs.js +1 -0
  453. package/libEs6/core/consent/createConsent.js +1 -9
  454. package/libEs6/core/consent/createConsentStateMachine.js +1 -20
  455. package/libEs6/core/createComponentRegistry.js +3 -15
  456. package/libEs6/core/createCookieTransfer.js +6 -12
  457. package/libEs6/core/createEvent.js +14 -36
  458. package/libEs6/core/createEventManager.js +5 -8
  459. package/libEs6/core/createInstanceFunction.js +1 -0
  460. package/libEs6/core/createLifecycle.js +14 -10
  461. package/libEs6/core/createLogController.js +1 -7
  462. package/libEs6/core/createLogger.js +1 -17
  463. package/libEs6/core/edgeNetwork/handleRequestFailure.js +0 -1
  464. package/libEs6/core/edgeNetwork/injectApplyResponse.js +2 -3
  465. package/libEs6/core/edgeNetwork/injectExtractEdgeInfo.js +5 -6
  466. package/libEs6/core/edgeNetwork/injectGetLocationHint.js +1 -5
  467. package/libEs6/core/edgeNetwork/injectProcessWarningsAndErrors.js +1 -2
  468. package/libEs6/core/edgeNetwork/injectSendEdgeNetworkRequest.js +5 -5
  469. package/libEs6/core/index.js +4 -10
  470. package/libEs6/core/initializeComponents.js +3 -4
  471. package/libEs6/core/injectCreateResponse.js +3 -7
  472. package/libEs6/core/injectExecuteCommand.js +5 -11
  473. package/libEs6/core/injectHandleError.js +4 -3
  474. package/libEs6/core/injectShouldTransferCookie.js +1 -0
  475. package/libEs6/core/network/getRequestRetryDelay.js +11 -13
  476. package/libEs6/core/network/injectSendNetworkRequest.js +3 -7
  477. package/libEs6/core/network/isRequestRetryable.js +4 -2
  478. package/libEs6/core/network/requestMethods/injectSendBeaconRequest.js +4 -6
  479. package/libEs6/core/network/requestMethods/injectSendFetchRequest.js +1 -2
  480. package/libEs6/core/network/requestMethods/injectSendXhrRequest.js +1 -5
  481. package/libEs6/core/validateCommandOptions.js +1 -2
  482. package/libEs6/index.js +5 -3
  483. package/libEs6/utils/areThirdPartyCookiesSupportedByDefault.js +4 -2
  484. package/libEs6/utils/assign.js +1 -0
  485. package/libEs6/utils/assignIf.js +1 -1
  486. package/libEs6/utils/cookieJar.js +1 -0
  487. package/libEs6/utils/crc32.js +0 -7
  488. package/libEs6/utils/createCallbackAggregator.js +0 -2
  489. package/libEs6/utils/createLoggingCookieJar.js +3 -3
  490. package/libEs6/utils/createMerger.js +2 -1
  491. package/libEs6/utils/createTaskQueue.js +0 -4
  492. package/libEs6/utils/deduplicateArray.js +0 -3
  493. package/libEs6/utils/deepAssign.js +2 -5
  494. package/libEs6/utils/dom/appendNode.js +1 -0
  495. package/libEs6/utils/dom/awaitSelector.js +1 -14
  496. package/libEs6/utils/dom/createNode.js +1 -2
  497. package/libEs6/utils/dom/index.js +1 -0
  498. package/libEs6/utils/dom/isShadowSelector.js +1 -0
  499. package/libEs6/utils/dom/matchesSelector.js +2 -2
  500. package/libEs6/utils/dom/querySelectorAll.js +3 -2
  501. package/libEs6/utils/dom/removeNode.js +1 -2
  502. package/libEs6/utils/dom/selectNodes.js +2 -2
  503. package/libEs6/utils/dom/selectNodesWithShadow.js +6 -16
  504. package/libEs6/utils/filterObject.js +8 -12
  505. package/libEs6/utils/find.js +0 -2
  506. package/libEs6/utils/fireImage.js +2 -1
  507. package/libEs6/utils/getApexDomain.js +4 -4
  508. package/libEs6/utils/getBrowser.js +1 -7
  509. package/libEs6/utils/getNamespacedCookieName.js +1 -0
  510. package/libEs6/utils/groupBy.js +0 -2
  511. package/libEs6/utils/index.js +1 -0
  512. package/libEs6/utils/injectDoesIdentityCookieExist.js +1 -1
  513. package/libEs6/utils/injectFireReferrerHideableImage.js +1 -4
  514. package/libEs6/utils/injectStorage.js +1 -5
  515. package/libEs6/utils/intersection.js +2 -1
  516. package/libEs6/utils/isBlankString.js +2 -1
  517. package/libEs6/utils/isEmptyObject.js +2 -1
  518. package/libEs6/utils/isInteger.js +2 -1
  519. package/libEs6/utils/isNamespacedCookieName.js +2 -1
  520. package/libEs6/utils/isNonEmptyString.js +2 -1
  521. package/libEs6/utils/isObject.js +2 -1
  522. package/libEs6/utils/isUnique.js +0 -5
  523. package/libEs6/utils/memoize.js +0 -2
  524. package/libEs6/utils/padStart.js +1 -4
  525. package/libEs6/utils/prepareConfigOverridesForEdge.js +5 -12
  526. package/libEs6/utils/querystring.js +1 -0
  527. package/libEs6/utils/request/createDataCollectionRequest.js +1 -3
  528. package/libEs6/utils/request/createDataCollectionRequestPayload.js +0 -3
  529. package/libEs6/utils/request/createGetAssuranceValidationTokenParams.js +1 -6
  530. package/libEs6/utils/request/createHasIdentity.js +1 -0
  531. package/libEs6/utils/request/createRequest.js +3 -9
  532. package/libEs6/utils/request/createRequestParams.js +0 -3
  533. package/libEs6/utils/request/createRequestPayload.js +4 -4
  534. package/libEs6/utils/request/index.js +1 -0
  535. package/libEs6/utils/sanitizeOrgIdForCookieName.js +1 -0
  536. package/libEs6/utils/stackError.js +2 -1
  537. package/libEs6/utils/toArray.js +1 -2
  538. package/libEs6/utils/toISOStringLocal.js +4 -3
  539. package/libEs6/utils/toInteger.js +4 -4
  540. package/libEs6/utils/updateErrorMessage.js +3 -1
  541. package/libEs6/utils/uuid.js +1 -0
  542. package/libEs6/utils/validateConfigOverride.js +1 -0
  543. package/libEs6/utils/validateIdentityMap.js +1 -0
  544. package/libEs6/utils/validation/booleanValidator.js +1 -0
  545. package/libEs6/utils/validation/createArrayOfValidator.js +0 -2
  546. package/libEs6/utils/validation/createDefaultValidator.js +1 -1
  547. package/libEs6/utils/validation/createDeprecatedValidator.js +0 -4
  548. package/libEs6/utils/validation/createMapOfValuesValidator.js +1 -4
  549. package/libEs6/utils/validation/createNoUnknownFieldsValidator.js +1 -2
  550. package/libEs6/utils/validation/createNonEmptyValidator.js +1 -1
  551. package/libEs6/utils/validation/createObjectOfValidator.js +3 -5
  552. package/libEs6/utils/validation/createUniqueValidator.js +1 -0
  553. package/libEs6/utils/validation/index.js +14 -32
  554. package/libEs6/utils/validation/integerValidator.js +1 -0
  555. package/libEs6/utils/validation/numberValidator.js +1 -0
  556. package/libEs6/utils/validation/regexpValidator.js +1 -0
  557. package/libEs6/utils/validation/requiredValidator.js +1 -1
  558. package/libEs6/utils/validation/utils.js +8 -12
  559. package/package.json +2 -2
@@ -15,16 +15,13 @@ export default (dateProvider => {
15
15
  const date = dateProvider();
16
16
  const placeContext = {};
17
17
  const localTimezoneOffset = toInteger(date.getTimezoneOffset());
18
-
19
18
  if (localTimezoneOffset !== undefined) {
20
19
  placeContext.localTimezoneOffset = localTimezoneOffset;
21
- } // make sure the timezone offset only uses two digits
22
-
23
-
20
+ }
21
+ // make sure the timezone offset only uses two digits
24
22
  if (localTimezoneOffset === undefined || Math.abs(localTimezoneOffset) < 6000) {
25
23
  placeContext.localTime = toISOStringLocal(date);
26
24
  }
27
-
28
25
  deepAssign(xdm, {
29
26
  placeContext
30
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 { deepAssign } from "../../utils";
13
14
  export default (dateProvider => {
14
15
  return xdm => {
@@ -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 { deepAssign } from "../../utils";
13
14
  export default (window => {
14
15
  return xdm => {
@@ -9,10 +9,10 @@ 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 validateUserEventOptions from "./validateUserEventOptions";
13
14
  import validateApplyResponse from "./validateApplyResponse";
14
15
  import { deepAssign } from "../../utils";
15
-
16
16
  const createDataCollector = ({
17
17
  eventManager,
18
18
  logger
@@ -41,36 +41,29 @@ const createDataCollector = ({
41
41
  edgeConfigOverrides
42
42
  } = options;
43
43
  const event = eventManager.createEvent();
44
-
45
44
  if (documentUnloading) {
46
45
  event.documentMayUnload();
47
46
  }
48
-
49
47
  event.setUserXdm(xdm);
50
48
  event.setUserData(data);
51
-
52
49
  if (type) {
53
50
  event.mergeXdm({
54
51
  eventType: type
55
52
  });
56
53
  }
57
-
58
54
  if (mergeId) {
59
55
  event.mergeXdm({
60
56
  eventMergeId: mergeId
61
57
  });
62
58
  }
63
-
64
59
  const sendEventOptions = {
65
60
  renderDecisions,
66
61
  decisionScopes,
67
62
  personalization
68
63
  };
69
-
70
64
  if (edgeConfigOverrides) {
71
65
  sendEventOptions.edgeConfigOverrides = edgeConfigOverrides;
72
66
  }
73
-
74
67
  if (datasetId) {
75
68
  logger.warn("The 'datasetId' option has been deprecated. Please use 'edgeConfigOverrides.com_adobe_experience_platform.datasets.event.datasetId' instead.");
76
69
  sendEventOptions.edgeConfigOverrides = edgeConfigOverrides || {};
@@ -84,7 +77,6 @@ const createDataCollector = ({
84
77
  }
85
78
  });
86
79
  }
87
-
88
80
  return eventManager.sendEvent(event, sendEventOptions);
89
81
  }
90
82
  },
@@ -116,6 +108,5 @@ const createDataCollector = ({
116
108
  }
117
109
  };
118
110
  };
119
-
120
111
  createDataCollector.namespace = "DataCollector";
121
112
  export default createDataCollector;
@@ -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 { string, objectOf, boolean, arrayOf } from "../../utils/validation";
13
14
  import { validateConfigOverride, validateIdentityMap } from "../../utils";
14
15
  /**
@@ -16,7 +17,6 @@ import { validateConfigOverride, validateIdentityMap } from "../../utils";
16
17
  * @param {*} options The user event options to validate
17
18
  * @returns {*} Validated options
18
19
  */
19
-
20
20
  export default (({
21
21
  options
22
22
  }) => {
@@ -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
  createEventMergeId
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 { uuid } from "../../utils";
13
14
  export default (() => {
14
15
  return {
@@ -9,14 +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
  import createEventMergeId from "./createEventMergeId";
13
14
  import createComponent from "./createComponent";
14
-
15
15
  const createEventMerge = () => {
16
16
  return createComponent({
17
17
  createEventMergeId
18
18
  });
19
19
  };
20
-
21
20
  createEventMerge.namespace = "EventMerge";
22
21
  export default createEventMerge;
@@ -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 ecidNamespace from "../../constants/ecidNamespace";
13
14
  export default (payload => {
14
15
  payload.mergeQuery({
@@ -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 ecidNamespace from "../../constants/ecidNamespace";
13
14
  export default ((payload, ecid) => {
14
15
  payload.addIdentity(ecidNamespace, {
@@ -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 { validateConfigOverride } from "../../../utils";
13
14
  import { objectOf, string } from "../../../utils/validation";
14
15
  /**
@@ -16,7 +17,6 @@ import { objectOf, string } from "../../../utils/validation";
16
17
  * @param {*} options The user event options to validate
17
18
  * @returns {*} Validated options
18
19
  */
19
-
20
20
  export default objectOf({
21
21
  url: string().required().nonEmpty(),
22
22
  edgeConfigOverrides: validateConfigOverride
@@ -10,19 +10,15 @@ 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 URL_REGEX = /^([^?#]*)(\??[^#]*)(#?.*)$/;
13
-
14
13
  const getSeparator = queryString => {
15
14
  if (queryString === "") {
16
15
  return "?";
17
16
  }
18
-
19
17
  if (queryString === "?") {
20
18
  return "";
21
19
  }
22
-
23
20
  return "&";
24
21
  };
25
-
26
22
  export default (({
27
23
  dateProvider,
28
24
  orgId
@@ -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 { boolean, objectOf } from "../../utils/validation";
13
14
  const configValidators = objectOf({
14
15
  thirdPartyCookiesEnabled: boolean().default(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
  export const AMBIGUOUS = "ambiguous";
13
14
  export const AUTHENTICATED = "authenticated";
14
15
  export const LOGGED_OUT = "loggedOut";
@@ -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 default 10080; // 7 days
@@ -43,25 +43,23 @@ export default (({
43
43
  onRequestFailure
44
44
  });
45
45
  },
46
-
47
46
  onResponse({
48
47
  response
49
48
  }) {
50
49
  if (!ecid) {
51
- ecid = getEcidFromResponse(response); // Only data collection calls will have an ECID in the response.
52
- // https://jira.corp.adobe.com/browse/EXEG-1234
50
+ ecid = getEcidFromResponse(response);
53
51
 
52
+ // Only data collection calls will have an ECID in the response.
53
+ // https://jira.corp.adobe.com/browse/EXEG-1234
54
54
  if (ecid) {
55
55
  setLegacyEcid(ecid);
56
56
  }
57
- } // For sendBeacon requests, getEdge() will return {}, so we are using assign here
57
+ }
58
+ // For sendBeacon requests, getEdge() will return {}, so we are using assign here
58
59
  // so that sendBeacon requests don't override the edge info from before.
59
-
60
-
61
60
  edge = assign(edge, response.getEdge());
62
61
  return handleResponseForIdSyncs(response);
63
62
  }
64
-
65
63
  },
66
64
  commands: {
67
65
  getIdentity: {
@@ -25,40 +25,31 @@ export default (({
25
25
  orgId
26
26
  } = config;
27
27
  const amcvCookieName = `AMCV_${orgId}`;
28
-
29
28
  const getEcidFromLegacyCookies = () => {
30
29
  let ecid = null;
31
30
  const secidCookieName = "s_ecid";
32
31
  const legacyEcidCookieValue = cookieJar.get(secidCookieName) || cookieJar.get(amcvCookieName);
33
-
34
32
  if (legacyEcidCookieValue) {
35
33
  const reg = /(^|\|)MCMID\|(\d+)($|\|)/;
36
34
  const matches = legacyEcidCookieValue.match(reg);
37
-
38
35
  if (matches) {
39
36
  // Destructuring arrays breaks in IE
40
37
  ecid = matches[2];
41
38
  }
42
39
  }
43
-
44
40
  return ecid;
45
41
  };
46
-
47
42
  return {
48
43
  getEcid() {
49
44
  if (idMigrationEnabled) {
50
45
  const ecid = getEcidFromLegacyCookies();
51
-
52
46
  if (ecid) {
53
47
  return Promise.resolve(ecid);
54
48
  }
55
-
56
49
  return getEcidFromVisitor();
57
50
  }
58
-
59
51
  return Promise.resolve();
60
52
  },
61
-
62
53
  setEcid(ecid) {
63
54
  if (idMigrationEnabled && getEcidFromLegacyCookies() !== ecid) {
64
55
  const extraOptions = isPageSsl ? {
@@ -74,6 +65,5 @@ export default (({
74
65
  });
75
66
  }
76
67
  }
77
-
78
68
  };
79
69
  });
@@ -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 { find } from "../../utils";
13
14
  import ecidNamespace from "../../constants/ecidNamespace";
14
15
  export default (response => {
@@ -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 { createRequestParams } from "../../../utils/request";
13
14
  export default (({
14
15
  sendEdgeNetworkRequest,
@@ -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 { createRequest } from "../../../utils/request";
13
14
  export default (({
14
15
  payload,
@@ -17,14 +18,11 @@ export default (({
17
18
  return createRequest({
18
19
  payload,
19
20
  datastreamIdOverride,
20
-
21
21
  getAction() {
22
22
  return "identity/acquire";
23
23
  },
24
-
25
24
  getUseSendBeacon() {
26
25
  return false;
27
26
  }
28
-
29
27
  });
30
28
  });
@@ -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 { createAddIdentity, createHasIdentity, createRequestPayload } from "../../../utils/request";
13
14
  export default (namespaces => {
14
15
  const content = {
@@ -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 { validateConfigOverride } from "../../../utils";
13
14
  import { objectOf, literal, arrayOf } from "../../../utils/validation";
14
15
  /**
@@ -16,7 +17,6 @@ import { objectOf, literal, arrayOf } from "../../../utils/validation";
16
17
  * @param {*} options The user event options to validate
17
18
  * @returns {*} Validated options
18
19
  */
19
-
20
20
  export default objectOf({
21
21
  namespaces: arrayOf(literal("ECID")).nonEmpty().uniqueItems().default(["ECID"]),
22
22
  edgeConfigOverrides: validateConfigOverride
@@ -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 { areThirdPartyCookiesSupportedByDefault, injectDoesIdentityCookieExist, createLoggingCookieJar, cookieJar } from "../../utils";
13
14
  import injectProcessIdSyncs from "./injectProcessIdSyncs";
14
15
  import configValidators from "./configValidators";
@@ -29,7 +30,6 @@ import createGetIdentity from "./getIdentity/createGetIdentity";
29
30
  import createIdentityRequest from "./getIdentity/createIdentityRequest";
30
31
  import createIdentityRequestPayload from "./getIdentity/createIdentityRequestPayload";
31
32
  import injectAppendIdentityToUrl from "./appendIdentityToUrl/injectAppendIdentityToUrl";
32
-
33
33
  const createIdentity = ({
34
34
  config,
35
35
  logger,
@@ -119,7 +119,6 @@ const createIdentity = ({
119
119
  config
120
120
  });
121
121
  };
122
-
123
122
  createIdentity.namespace = "Identity";
124
123
  createIdentity.configValidators = configValidators;
125
124
  export default createIdentity;
@@ -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 ecidNamespace from "../../constants/ecidNamespace";
13
14
  export default (({
14
15
  getLegacyEcid,
@@ -20,7 +21,6 @@ export default (({
20
21
  // the user specified it in the identity map
21
22
  return Promise.resolve();
22
23
  }
23
-
24
24
  return getLegacyEcid().then(ecidToMigrate => {
25
25
  if (ecidToMigrate) {
26
26
  addEcidToPayload(payload, ecidToMigrate);
@@ -11,6 +11,7 @@ governing permissions and limitations under the License.
11
11
  */
12
12
  // Example: adobe_mc=TS%3D1641432103%7CMCMID%3D77094828402023918047117570965393734545%7CMCORGID%3DFAF554945B90342F0A495E2C%40AdobeOrg
13
13
  // Decoded: adobe_mc=TS=1641432103|MCMID=77094828402023918047117570965393734545|MCORGID=FAF554945B90342F0A495E2C@AdobeOrg
14
+
14
15
  import { queryString } from "../../utils";
15
16
  import queryStringIdentityParam from "../../constants/queryStringIdentityParam";
16
17
  import ecidNamespace from "../../constants/ecidNamespace";
@@ -26,25 +27,22 @@ export default (({
26
27
  // don't overwrite a user provided ecid identity
27
28
  return;
28
29
  }
29
-
30
30
  const parsedQueryString = queryString.parse(locationSearch);
31
31
  const queryStringValue = parsedQueryString[queryStringIdentityParam];
32
-
33
32
  if (queryStringValue === undefined) {
34
33
  return;
35
34
  }
36
-
37
35
  const properties = queryStringValue.split("|").reduce((memo, keyValue) => {
38
36
  const [key, value] = keyValue.split("=");
39
37
  memo[key] = value;
40
38
  return memo;
41
- }, {}); // We are using MCMID and MCORGID to be compatible with Visitor.
42
-
39
+ }, {});
40
+ // We are using MCMID and MCORGID to be compatible with Visitor.
43
41
  const ts = parseInt(properties.TS, 10);
44
42
  const mcmid = properties.MCMID;
45
43
  const mcorgid = decodeURIComponent(properties.MCORGID);
46
-
47
- if ( // When TS is not specified or not a number, the following inequality returns false.
44
+ if (
45
+ // When TS is not specified or not a number, the following inequality returns false.
48
46
  // All inequalities with NaN variables are false.
49
47
  dateProvider().getTime() / 1000 <= ts + LINK_TTL_SECONDS && mcorgid === orgId && mcmid) {
50
48
  logger.info(`Found valid ECID identity ${mcmid} from the adobe_mc query string parameter.`);
@@ -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
  doesIdentityCookieExist,
14
15
  orgId
@@ -29,13 +30,15 @@ export default (({
29
30
  } else {
30
31
  // This logic assumes that the code setting the cookie is working as expected and that
31
32
  // the cookie was missing from the response.
32
- const noIdentityCookieError = new Error(`An identity was not set properly. Please verify that the org ID ${orgId} configured in Alloy matches the org ID specified in the edge configuration.`); // Rejecting the promise will reject commands that were queued
33
+ const noIdentityCookieError = new Error(`An identity was not set properly. Please verify that the org ID ${orgId} configured in Alloy matches the org ID specified in the edge configuration.`);
34
+
35
+ // Rejecting the promise will reject commands that were queued
33
36
  // by the Identity component while waiting on the response to
34
37
  // the initial request.
38
+ reject(noIdentityCookieError);
35
39
 
36
- reject(noIdentityCookieError); // Throwing an error will reject the event command that initiated
40
+ // Throwing an error will reject the event command that initiated
37
41
  // the request.
38
-
39
42
  throw noIdentityCookieError;
40
43
  }
41
44
  });
@@ -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
  // TO-DOCUMENT: We queue subsequent requests until we have an identity cookie.
13
14
  export default (({
14
15
  doesIdentityCookieExist,
@@ -18,11 +19,11 @@ export default (({
18
19
  logger
19
20
  }) => {
20
21
  let obtainedIdentityPromise;
21
-
22
22
  const allowRequestToGoWithoutIdentity = request => {
23
23
  setDomainForInitialIdentityPayload(request);
24
24
  return addLegacyEcidToPayload(request.getPayload());
25
25
  };
26
+
26
27
  /**
27
28
  * Ensures that if no identity cookie exists, we only let one request at a
28
29
  * time without an identity until its response returns. In the meantime,
@@ -42,8 +43,6 @@ export default (({
42
43
  * an identity is to prevent a single malformed request causing all other
43
44
  * requests to never send.
44
45
  */
45
-
46
-
47
46
  return ({
48
47
  request,
49
48
  onResponse,
@@ -53,7 +52,6 @@ export default (({
53
52
  request.setIsIdentityEstablished();
54
53
  return Promise.resolve();
55
54
  }
56
-
57
55
  if (obtainedIdentityPromise) {
58
56
  // We don't have an identity cookie, but at least one request has
59
57
  // been sent to get it. Konductor may set the identity cookie in the
@@ -61,32 +59,35 @@ export default (({
61
59
  // requiring identity returns and awaitIdentityCookie confirms the
62
60
  // identity was set.
63
61
  logger.info("Delaying request while retrieving ECID from server.");
64
- const previousObtainedIdentityPromise = obtainedIdentityPromise; // This promise resolves when we have an identity cookie. Additional
62
+ const previousObtainedIdentityPromise = obtainedIdentityPromise;
63
+
64
+ // This promise resolves when we have an identity cookie. Additional
65
65
  // requests are chained together so that only one is sent at a time
66
66
  // until we have the identity cookie.
67
-
68
67
  obtainedIdentityPromise = previousObtainedIdentityPromise.catch(() => {
69
68
  return awaitIdentityCookie({
70
69
  onResponse,
71
70
  onRequestFailure
72
71
  });
73
- }); // When this returned promise resolves, the request will go out.
72
+ });
74
73
 
74
+ // When this returned promise resolves, the request will go out.
75
75
  return previousObtainedIdentityPromise.then(() => {
76
76
  logger.info("Resuming previously delayed request.");
77
77
  request.setIsIdentityEstablished();
78
- }) // If Konductor did not set the identity cookie on the previous
78
+ })
79
+ // If Konductor did not set the identity cookie on the previous
79
80
  // request, then awaitIdentityCookie will reject its promise.
80
81
  // Catch the rejection here and allow this request to go out.
81
82
  .catch(() => {
82
83
  return allowRequestToGoWithoutIdentity(request);
83
84
  });
84
- } // For Alloy+Konductor communication to be as robust as possible and
85
+ }
86
+
87
+ // For Alloy+Konductor communication to be as robust as possible and
85
88
  // to ensure we don't mint new ECIDs for requests that would otherwise
86
89
  // be sent in parallel, we'll let this request go out to fetch the
87
90
  // cookie
88
-
89
-
90
91
  obtainedIdentityPromise = awaitIdentityCookie({
91
92
  onResponse,
92
93
  onRequestFailure
@@ -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
  processIdSyncs
14
15
  }) => {
@@ -10,21 +10,17 @@ 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
  import { noop } from "../../utils";
13
-
14
13
  const createResultLogMessage = (idSync, success) => {
15
14
  return `ID sync ${success ? "succeeded" : "failed"}: ${idSync.spec.url}`;
16
15
  };
17
-
18
16
  export default (({
19
17
  fireReferrerHideableImage,
20
18
  logger
21
19
  }) => idSyncs => {
22
20
  const urlIdSyncs = idSyncs.filter(idSync => idSync.type === "url");
23
-
24
21
  if (!urlIdSyncs.length) {
25
22
  return Promise.resolve();
26
23
  }
27
-
28
24
  return Promise.all(urlIdSyncs.map(idSync => {
29
25
  return fireReferrerHideableImage(idSync.spec).then(() => {
30
26
  logger.info(createResultLogMessage(idSync, 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
  import getBrowser from "../../utils/getBrowser";
13
14
  export default (({
14
15
  thirdPartyCookiesEnabled,
@@ -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 { isObject } from "../../../utils";
13
14
  export default (({
14
15
  logger
@@ -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 "../../../utils";
13
14
  export default (window => {
14
15
  const Visitor = window.Visitor;
@@ -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 getVisitor from "./getVisitor";
13
14
  export default (({
14
15
  logger,
@@ -17,7 +18,6 @@ export default (({
17
18
  }) => {
18
19
  return () => {
19
20
  const Visitor = getVisitor(window);
20
-
21
21
  if (Visitor) {
22
22
  // Need to explicitly wait for optIn because visitor will call callback
23
23
  // with invalid values prior to optIn being approved
@@ -43,7 +43,6 @@ export default (({
43
43
  }
44
44
  });
45
45
  }
46
-
47
46
  return Promise.resolve();
48
47
  };
49
48
  });