@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
@@ -9,17 +9,15 @@ 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 loadScript from "@adobe/reactor-load-script";
13
14
  import { selectNodes, createNode } from "../../../utils/dom";
14
15
  import { SCRIPT } from "../../../constants/tagName";
15
16
  import { SRC } from "../../../constants/elementAttribute";
16
17
  import { getAttribute, getNonce } from "./dom";
17
18
  export const is = (element, tagName) => !!element && element.tagName === tagName;
18
-
19
19
  const isInlineScript = element => is(element, SCRIPT) && !getAttribute(element, SRC);
20
-
21
20
  const isRemoteScript = element => is(element, SCRIPT) && getAttribute(element, SRC);
22
-
23
21
  export const getInlineScripts = fragment => {
24
22
  const scripts = selectNodes(SCRIPT, fragment);
25
23
  const result = [];
@@ -27,34 +25,30 @@ export const getInlineScripts = fragment => {
27
25
  length
28
26
  } = scripts;
29
27
  const nonce = getNonce();
30
- const attributes = { ...(nonce && {
28
+ const attributes = {
29
+ ...(nonce && {
31
30
  nonce
32
31
  })
33
32
  };
34
- /* eslint-disable no-continue */
35
33
 
34
+ /* eslint-disable no-continue */
36
35
  for (let i = 0; i < length; i += 1) {
37
36
  const element = scripts[i];
38
-
39
37
  if (!isInlineScript(element)) {
40
38
  continue;
41
39
  }
42
-
43
40
  const {
44
41
  textContent
45
42
  } = element;
46
-
47
43
  if (!textContent) {
48
44
  continue;
49
45
  }
50
-
51
46
  result.push(createNode(SCRIPT, attributes, {
52
47
  textContent
53
48
  }));
54
49
  }
55
50
  /* eslint-enable no-continue */
56
51
 
57
-
58
52
  return result;
59
53
  };
60
54
  export const getRemoteScriptsUrls = fragment => {
@@ -63,26 +57,21 @@ export const getRemoteScriptsUrls = fragment => {
63
57
  const {
64
58
  length
65
59
  } = scripts;
66
- /* eslint-disable no-continue */
67
60
 
61
+ /* eslint-disable no-continue */
68
62
  for (let i = 0; i < length; i += 1) {
69
63
  const element = scripts[i];
70
-
71
64
  if (!isRemoteScript(element)) {
72
65
  continue;
73
66
  }
74
-
75
67
  const url = getAttribute(element, SRC);
76
-
77
68
  if (!url) {
78
69
  continue;
79
70
  }
80
-
81
71
  result.push(url);
82
72
  }
83
73
  /* eslint-enable no-continue */
84
74
 
85
-
86
75
  return result;
87
76
  };
88
77
  export const executeInlineScripts = (parent, scripts) => {
@@ -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 { setAttribute } from "./dom";
13
14
  export default ((container, attributes) => {
14
15
  Object.keys(attributes).forEach(key => {
@@ -9,16 +9,15 @@ 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 { removeNode } from "../../../utils/dom";
13
14
  import { getChildNodes } from "./dom";
14
15
  import appendHtml from "./appendHtml";
15
-
16
16
  const clear = container => {
17
17
  // We want to remove ALL nodes, text, comments etc
18
18
  const childNodes = getChildNodes(container);
19
19
  childNodes.forEach(removeNode);
20
20
  };
21
-
22
21
  export default ((container, html) => {
23
22
  clear(container);
24
23
  appendHtml(container, html);
@@ -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 { setStyle } from "./dom";
13
14
  export default ((container, styles) => {
14
15
  const {
@@ -9,6 +9,7 @@ the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTA
9
9
  OF ANY KIND, either express or implied. See the License for the specific language
10
10
  governing permissions and limitations under the License.
11
11
  */
12
+
12
13
  export default ((container, text) => {
13
14
  container.textContent = text;
14
15
  });
@@ -9,18 +9,21 @@ 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 { SRC } from "../../../constants/elementAttribute";
13
14
  import { setAttribute, removeAttribute } from "./dom";
14
15
  import { isImage, loadImage } from "./images";
15
16
  export default ((container, url) => {
16
17
  if (!isImage(container)) {
17
18
  return;
18
- } // Start downloading the image
19
-
19
+ }
20
20
 
21
- loadImage(url); // Remove "src" so there is no flicker
21
+ // Start downloading the image
22
+ loadImage(url);
22
23
 
23
- removeAttribute(container, SRC); // Replace the image "src"
24
+ // Remove "src" so there is no flicker
25
+ removeAttribute(container, SRC);
24
26
 
27
+ // Replace the image "src"
25
28
  setAttribute(container, SRC, url);
26
29
  });
@@ -9,9 +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
  const EVENT_TYPE_TRUE = 1;
13
- /* eslint-disable no-underscore-dangle */
14
14
 
15
+ /* eslint-disable no-underscore-dangle */
15
16
  export const mergeDecisionsMeta = (event, decisionsMeta, eventType, eventLabel = "") => {
16
17
  const xdm = {
17
18
  _experience: {
@@ -23,18 +24,17 @@ export const mergeDecisionsMeta = (event, decisionsMeta, eventType, eventLabel =
23
24
  }
24
25
  }
25
26
  };
26
-
27
27
  if (eventLabel) {
28
28
  xdm._experience.decisioning.propositionAction = {
29
29
  label: eventLabel
30
30
  };
31
31
  }
32
-
33
32
  event.mergeXdm(xdm);
34
33
  };
35
34
  export const mergeQuery = (event, details) => {
36
35
  event.mergeQuery({
37
- personalization: { ...details
36
+ personalization: {
37
+ ...details
38
38
  }
39
39
  });
40
40
  };
@@ -9,13 +9,15 @@ 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 { createNode, appendNode, removeNode } from "../../../utils/dom";
13
14
  import { STYLE } from "../../../constants/tagName";
14
15
  import { getElementById, getNonce } from "../dom-actions/dom";
15
16
  const PREHIDING_ID = "alloy-prehiding";
16
- const HIDING_STYLE_DEFINITION = "{ visibility: hidden }"; // Using global is OK since we have a single DOM
17
- // so storing nodes even for multiple Alloy instances is fine
17
+ const HIDING_STYLE_DEFINITION = "{ visibility: hidden }";
18
18
 
19
+ // Using global is OK since we have a single DOM
20
+ // so storing nodes even for multiple Alloy instances is fine
19
21
  const styleNodes = {};
20
22
  export const hideElements = prehidingSelector => {
21
23
  // if we have different events with the same
@@ -24,9 +26,9 @@ export const hideElements = prehidingSelector => {
24
26
  if (styleNodes[prehidingSelector]) {
25
27
  return;
26
28
  }
27
-
28
29
  const nonce = getNonce();
29
- const attrs = { ...(nonce && {
30
+ const attrs = {
31
+ ...(nonce && {
30
32
  nonce
31
33
  })
32
34
  };
@@ -39,7 +41,6 @@ export const hideElements = prehidingSelector => {
39
41
  };
40
42
  export const showElements = prehidingSelector => {
41
43
  const node = styleNodes[prehidingSelector];
42
-
43
44
  if (node) {
44
45
  removeNode(node);
45
46
  delete styleNodes[prehidingSelector];
@@ -48,17 +49,15 @@ export const showElements = prehidingSelector => {
48
49
  export const hideContainers = prehidingStyle => {
49
50
  if (!prehidingStyle) {
50
51
  return;
51
- } // If containers prehiding style has been added
52
+ }
53
+
54
+ // If containers prehiding style has been added
52
55
  // by customer's prehiding snippet we don't
53
56
  // want to add the same node
54
-
55
-
56
57
  const node = getElementById(PREHIDING_ID);
57
-
58
58
  if (node) {
59
59
  return;
60
60
  }
61
-
62
61
  const nonce = getNonce();
63
62
  const attrs = {
64
63
  id: PREHIDING_ID,
@@ -76,10 +75,8 @@ export const showContainers = () => {
76
75
  // If containers prehiding style exists
77
76
  // we will remove it
78
77
  const node = getElementById(PREHIDING_ID);
79
-
80
78
  if (!node) {
81
79
  return;
82
80
  }
83
-
84
81
  removeNode(node);
85
82
  };
@@ -18,18 +18,15 @@ export default (({
18
18
  type,
19
19
  selector
20
20
  } = item.getData() || {};
21
-
22
21
  if (!type) {
23
22
  logger.warn("Invalid DOM action data: missing type.", item.getData());
24
23
  return {};
25
24
  }
26
-
27
25
  if (type === "click") {
28
26
  if (!selector) {
29
27
  logger.warn("Invalid DOM action data: missing selector.", item.getData());
30
28
  return {};
31
29
  }
32
-
33
30
  storeClickMetrics({
34
31
  selector,
35
32
  meta: item.getMeta()
@@ -39,12 +36,10 @@ export default (({
39
36
  includeInNotification: false
40
37
  };
41
38
  }
42
-
43
39
  if (!modules[type]) {
44
40
  logger.warn("Invalid DOM action data: unknown type.", item.getData());
45
41
  return {};
46
42
  }
47
-
48
43
  return {
49
44
  render: () => modules[type](item.getData()),
50
45
  setRenderAttempted: true,
@@ -17,16 +17,13 @@ export default (({
17
17
  type,
18
18
  selector
19
19
  } = item.getData() || {};
20
-
21
20
  if (!selector || !type) {
22
21
  return {};
23
22
  }
24
-
25
23
  if (!modules[type]) {
26
24
  logger.warn("Invalid HTML content data", item.getData());
27
25
  return {};
28
26
  }
29
-
30
27
  return {
31
28
  render: () => {
32
29
  modules[type](item.getData());
@@ -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
  schemaProcessors,
14
15
  logger
@@ -18,7 +19,6 @@ export default (({
18
19
  if (logger.enabled) {
19
20
  logger.info(`Action ${item.toString()} executed.`);
20
21
  }
21
-
22
22
  return true;
23
23
  }).catch(error => {
24
24
  if (logger.enabled) {
@@ -29,31 +29,24 @@ export default (({
29
29
  const errorMessage = `Failed to execute action ${item.toString()}. ${message} ${stack}`;
30
30
  logger.error(errorMessage);
31
31
  }
32
-
33
32
  return false;
34
33
  });
35
34
  };
36
-
37
35
  const renderItems = (renderers, meta) => Promise.all(renderers.map(renderer => renderer())).then(successes => {
38
36
  // as long as at least one renderer succeeds, we want to add the notification
39
37
  // to the display notifications
40
38
  if (!successes.includes(true)) {
41
39
  return undefined;
42
40
  }
43
-
44
41
  return meta;
45
42
  });
46
-
47
43
  const processItem = item => {
48
44
  const processor = schemaProcessors[item.getSchema()];
49
-
50
45
  if (!processor) {
51
46
  return {};
52
47
  }
53
-
54
48
  return processor(item);
55
49
  };
56
-
57
50
  const processItems = ({
58
51
  renderers: existingRenderers,
59
52
  returnedPropositions: existingReturnedPropositions,
@@ -74,7 +67,6 @@ export default (({
74
67
  let onlyRenderThis = false;
75
68
  let i = 0;
76
69
  let item;
77
-
78
70
  while (items.length > i) {
79
71
  item = items[i];
80
72
  ({
@@ -83,11 +75,9 @@ export default (({
83
75
  includeInNotification,
84
76
  onlyRenderThis
85
77
  } = processItem(item));
86
-
87
78
  if (onlyRenderThis) {
88
79
  returnedPropositions = [];
89
80
  returnedDecisions = [];
90
-
91
81
  if (setRenderAttempted) {
92
82
  renderedItems = [item];
93
83
  nonRenderedItems = [];
@@ -95,45 +85,36 @@ export default (({
95
85
  renderedItems = [];
96
86
  nonRenderedItems = [item];
97
87
  }
98
-
99
88
  renderers = [];
100
89
  itemRenderers = [render];
101
90
  atLeastOneWithNotification = includeInNotification;
102
91
  break;
103
92
  }
104
-
105
93
  if (render) {
106
94
  itemRenderers.push(wrapRenderWithLogging(render, item));
107
95
  }
108
-
109
96
  if (includeInNotification) {
110
97
  atLeastOneWithNotification = true;
111
98
  }
112
-
113
99
  if (setRenderAttempted) {
114
100
  renderedItems.push(item);
115
101
  } else {
116
102
  nonRenderedItems.push(item);
117
103
  }
118
-
119
104
  i += 1;
120
105
  }
121
-
122
106
  if (itemRenderers.length > 0) {
123
107
  const meta = atLeastOneWithNotification ? proposition.getNotification() : undefined;
124
108
  renderers.push(() => renderItems(itemRenderers, meta));
125
109
  } else if (atLeastOneWithNotification) {
126
110
  renderers.push(() => proposition.getNotification());
127
111
  }
128
-
129
112
  if (renderedItems.length > 0) {
130
113
  proposition.addToReturnValues(returnedPropositions, returnedDecisions, renderedItems, true);
131
114
  }
132
-
133
115
  if (nonRenderedItems.length > 0) {
134
116
  proposition.addToReturnValues(returnedPropositions, returnedDecisions, nonRenderedItems, false);
135
117
  }
136
-
137
118
  return {
138
119
  renderers,
139
120
  returnedPropositions,
@@ -141,7 +122,6 @@ export default (({
141
122
  onlyRenderThis
142
123
  };
143
124
  };
144
-
145
125
  return (renderPropositions, nonRenderPropositions = []) => {
146
126
  let renderers = [];
147
127
  let returnedPropositions = [];
@@ -150,7 +130,6 @@ export default (({
150
130
  let i = 0;
151
131
  let proposition;
152
132
  let items;
153
-
154
133
  while (renderPropositions.length > i) {
155
134
  proposition = renderPropositions[i];
156
135
  items = proposition.getItems();
@@ -166,14 +145,11 @@ export default (({
166
145
  items,
167
146
  proposition
168
147
  }));
169
-
170
148
  if (onlyRenderThis) {
171
149
  break;
172
150
  }
173
-
174
151
  i += 1;
175
152
  }
176
-
177
153
  if (onlyRenderThis) {
178
154
  // if onlyRenderThis is true, that means returnedPropositions and returnedDecisions
179
155
  // only contains the proposition that triggered only rendering this. We need to
@@ -184,15 +160,12 @@ export default (({
184
160
  }
185
161
  });
186
162
  }
187
-
188
163
  nonRenderPropositions.forEach(p => {
189
164
  p.addToReturnValues(returnedPropositions, returnedDecisions, p.getItems(), false);
190
165
  });
191
-
192
166
  const render = () => {
193
167
  return Promise.all(renderers.map(renderer => renderer())).then(metas => metas.filter(meta => meta));
194
168
  };
195
-
196
169
  return {
197
170
  returnedPropositions,
198
171
  returnedDecisions,
@@ -17,17 +17,16 @@ export default (({
17
17
  const {
18
18
  content
19
19
  } = item.getData() || {};
20
-
21
20
  if (!content) {
22
21
  logger.warn("Invalid Redirect data", item.getData());
23
22
  return {};
24
23
  }
25
-
26
24
  const render = () => {
27
25
  return collect({
28
26
  decisionsMeta: [item.getMeta()]
29
27
  }).then(() => {
30
- executeRedirect(content); // We've already sent the display notification, so don't return anything
28
+ executeRedirect(content);
29
+ // We've already sent the display notification, so don't return anything
31
30
  });
32
31
  };
33
32
 
@@ -9,6 +9,7 @@ the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTA
9
9
  OF ANY KIND, either express or implied. See the License for the specific language
10
10
  governing permissions and limitations under the License.
11
11
  */
12
+
12
13
  import PAGE_WIDE_SCOPE from "../../../constants/pageWideScope";
13
14
  export default (({
14
15
  preprocess,
@@ -23,39 +24,30 @@ export default (({
23
24
  } = {}
24
25
  } = item;
25
26
  const processedData = preprocess(data);
26
-
27
27
  if (trackingLabel) {
28
28
  meta.trackingLabel = trackingLabel;
29
29
  }
30
-
31
30
  return {
32
31
  getSchema() {
33
32
  return schema;
34
33
  },
35
-
36
34
  getData() {
37
35
  return processedData;
38
36
  },
39
-
40
37
  getMeta() {
41
38
  return meta;
42
39
  },
43
-
44
40
  getOriginalItem() {
45
41
  return item;
46
42
  },
47
-
48
43
  toString() {
49
44
  return JSON.stringify(item);
50
45
  },
51
-
52
46
  toJSON() {
53
47
  return item;
54
48
  }
55
-
56
49
  };
57
50
  };
58
-
59
51
  return (payload, visibleInReturnedItems = true) => {
60
52
  const {
61
53
  id,
@@ -73,22 +65,17 @@ export default (({
73
65
  if (!scope) {
74
66
  return scope;
75
67
  }
76
-
77
68
  return scope;
78
69
  },
79
-
80
70
  getScopeType() {
81
71
  if (scope === PAGE_WIDE_SCOPE || isPageWideSurface(scope)) {
82
72
  return "page";
83
73
  }
84
-
85
74
  if (scopeType === "view") {
86
75
  return "view";
87
76
  }
88
-
89
77
  return "proposition";
90
78
  },
91
-
92
79
  getItems() {
93
80
  return items.map(item => createItem(item, {
94
81
  id,
@@ -96,7 +83,6 @@ export default (({
96
83
  scopeDetails
97
84
  }));
98
85
  },
99
-
100
86
  getNotification() {
101
87
  return {
102
88
  id,
@@ -104,26 +90,24 @@ export default (({
104
90
  scopeDetails
105
91
  };
106
92
  },
107
-
108
93
  toJSON() {
109
94
  return payload;
110
95
  },
111
-
112
96
  addToReturnValues(propositions, decisions, includedItems, renderAttempted) {
113
97
  if (visibleInReturnedItems) {
114
- propositions.push({ ...payload,
98
+ propositions.push({
99
+ ...payload,
115
100
  items: includedItems.map(i => i.getOriginalItem()),
116
101
  renderAttempted
117
102
  });
118
-
119
103
  if (!renderAttempted) {
120
- decisions.push({ ...payload,
104
+ decisions.push({
105
+ ...payload,
121
106
  items: includedItems.map(i => i.getOriginalItem())
122
107
  });
123
108
  }
124
109
  }
125
110
  }
126
-
127
111
  };
128
112
  };
129
113
  });
@@ -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, boolean, objectOf } from "../../utils/validation";
13
14
  import createComponent from "./createComponent";
14
15
  import { initDomActionsModules } from "./dom-actions";
@@ -38,7 +39,6 @@ import createProcessDomAction from "./handlers/createProcessDomAction";
38
39
  import createProcessHtmlContent from "./handlers/createProcessHtmlContent";
39
40
  import createProcessRedirect from "./handlers/createProcessRedirect";
40
41
  import createProcessPropositions from "./handlers/createProcessPropositions";
41
-
42
42
  const createPersonalization = ({
43
43
  config,
44
44
  logger,
@@ -140,7 +140,6 @@ const createPersonalization = ({
140
140
  pendingNotificationsHandler
141
141
  });
142
142
  };
143
-
144
143
  createPersonalization.namespace = "Personalization";
145
144
  createPersonalization.configValidators = objectOf({
146
145
  prehidingStyle: string().nonEmpty(),
@@ -9,6 +9,7 @@ the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTA
9
9
  OF ANY KIND, either express or implied. See the License for the specific language
10
10
  governing permissions and limitations under the License.
11
11
  */
12
+
12
13
  import { assign } from "../../../utils";
13
14
  export default (({
14
15
  decisions,
@@ -21,7 +21,6 @@ export default (() => {
21
21
  });
22
22
  });
23
23
  },
24
-
25
24
  /**
26
25
  * Clears the saved propositions, waiting until the next propositions are resolved and available.
27
26
  *
@@ -32,6 +31,5 @@ export default (() => {
32
31
  latest = Promise.resolve([]);
33
32
  return oldLatest;
34
33
  }
35
-
36
34
  };
37
35
  });
@@ -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 ((doc = document) => {
13
14
  return doc.location.href.indexOf("adobe_authoring_enabled") !== -1;
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 { isPageWideSurface } from "./surfaceUtils";
13
14
  import PAGE_WIDE_SCOPE from "../../../constants/pageWideScope";
14
15
  export default (scope => scope === PAGE_WIDE_SCOPE || isPageWideSurface(scope));