@adobe/alloy 2.18.0 → 2.19.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (576) 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 +25 -35
  23. package/libEs5/components/DataCollector/validateApplyResponse.js +6 -4
  24. package/libEs5/components/DataCollector/validateUserEventOptions.js +5 -6
  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 +47 -49
  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 +40 -42
  66. package/libEs5/components/Personalization/createFetchDataHandler.js +81 -26
  67. package/libEs5/components/Personalization/createGetPageLocation.js +0 -2
  68. package/libEs5/components/Personalization/createOnClickHandler.js +8 -18
  69. package/libEs5/components/Personalization/{utils/composePersonalizationResultingObject.js → createPendingNotificationsHandler.js} +9 -18
  70. package/libEs5/components/Personalization/createPersonalizationDetails.js +24 -30
  71. package/libEs5/components/Personalization/createSetTargetMigration.js +0 -5
  72. package/libEs5/components/Personalization/createViewCacheManager.js +54 -28
  73. package/libEs5/components/Personalization/createViewChangeHandler.js +25 -37
  74. package/libEs5/components/Personalization/dom-actions/action.js +6 -37
  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/{libEs6/components/Personalization/utils/composePersonalizationResultingObject.js → libEs5/components/Personalization/dom-actions/createPreprocess.js} +14 -14
  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 +1 -10
  99. package/libEs5/components/Personalization/dom-actions/initDomActionsModules.js +2 -14
  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 +5 -15
  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 +54 -0
  116. package/libEs5/components/Personalization/handlers/createProcessHtmlContent.js +38 -0
  117. package/libEs5/components/Personalization/handlers/createProcessPropositions.js +195 -0
  118. package/libEs5/components/Personalization/handlers/createProcessRedirect.js +42 -0
  119. package/libEs5/components/Personalization/handlers/injectCreateProposition.js +118 -0
  120. package/libEs5/components/Personalization/{dom-actions/clicks/index.js → handlers/processDefaultContent.js} +7 -5
  121. package/libEs5/components/Personalization/index.js +72 -80
  122. package/libEs5/components/Personalization/utils/addRenderAttemptedToDecisions.js +1 -4
  123. package/libEs5/components/Personalization/utils/createAsyncArray.js +39 -0
  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 +5 -8
  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 +41 -32
  171. package/libEs5/core/createEventManager.js +27 -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 +32 -0
  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 +7 -55
  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 +5 -12
  320. package/libEs6/components/DataCollector/validateApplyResponse.js +6 -1
  321. package/libEs6/components/DataCollector/validateUserEventOptions.js +6 -2
  322. package/libEs6/components/EventMerge/createComponent.js +1 -0
  323. package/libEs6/components/EventMerge/createEventMergeId.js +1 -0
  324. package/libEs6/components/EventMerge/index.js +1 -2
  325. package/libEs6/components/Identity/addEcidQueryToPayload.js +1 -0
  326. package/libEs6/components/Identity/addEcidToPayload.js +1 -0
  327. package/libEs6/components/Identity/appendIdentityToUrl/appendIdentityToUrlOptionsValidator.js +1 -1
  328. package/libEs6/components/Identity/appendIdentityToUrl/injectAppendIdentityToUrl.js +0 -4
  329. package/libEs6/components/Identity/configValidators.js +1 -0
  330. package/libEs6/components/Identity/constants/authState.js +1 -0
  331. package/libEs6/components/Identity/constants/defaultIdSyncTtlMinutes.js +1 -0
  332. package/libEs6/components/Identity/createComponent.js +5 -7
  333. package/libEs6/components/Identity/createLegacyIdentity.js +0 -10
  334. package/libEs6/components/Identity/getEcidFromResponse.js +1 -0
  335. package/libEs6/components/Identity/getIdentity/createGetIdentity.js +1 -0
  336. package/libEs6/components/Identity/getIdentity/createIdentityRequest.js +1 -3
  337. package/libEs6/components/Identity/getIdentity/createIdentityRequestPayload.js +1 -0
  338. package/libEs6/components/Identity/getIdentity/getIdentityOptionsValidator.js +1 -1
  339. package/libEs6/components/Identity/index.js +1 -2
  340. package/libEs6/components/Identity/injectAddLegacyEcidToPayload.js +1 -1
  341. package/libEs6/components/Identity/injectAddQueryStringIdentityToPayload.js +5 -7
  342. package/libEs6/components/Identity/injectAwaitIdentityCookie.js +6 -3
  343. package/libEs6/components/Identity/injectEnsureSingleIdentity.js +12 -11
  344. package/libEs6/components/Identity/injectHandleResponseForIdSyncs.js +1 -0
  345. package/libEs6/components/Identity/injectProcessIdSyncs.js +0 -4
  346. package/libEs6/components/Identity/injectSetDomainForInitialIdentityPayload.js +1 -0
  347. package/libEs6/components/Identity/visitorService/awaitVisitorOptIn.js +1 -0
  348. package/libEs6/components/Identity/visitorService/getVisitor.js +1 -0
  349. package/libEs6/components/Identity/visitorService/injectGetEcidFromVisitor.js +1 -2
  350. package/libEs6/components/LibraryInfo/index.js +3 -6
  351. package/libEs6/components/MachineLearning/index.js +1 -2
  352. package/libEs6/components/MachineLearning/processResponse.js +1 -0
  353. package/libEs6/components/Personalization/constants/eventType.js +1 -0
  354. package/libEs6/components/Personalization/constants/propositionEventType.js +1 -0
  355. package/libEs6/components/Personalization/constants/schema.js +1 -0
  356. package/libEs6/components/Personalization/constants/scopeType.js +1 -0
  357. package/libEs6/components/Personalization/constants/surface.js +1 -0
  358. package/libEs6/components/Personalization/createApplyPropositions.js +31 -34
  359. package/libEs6/components/Personalization/createClickStorage.js +1 -8
  360. package/libEs6/components/Personalization/createCollect.js +0 -5
  361. package/libEs6/components/Personalization/createComponent.js +23 -21
  362. package/libEs6/components/Personalization/createFetchDataHandler.js +61 -10
  363. package/libEs6/components/Personalization/createGetPageLocation.js +1 -0
  364. package/libEs6/components/Personalization/createOnClickHandler.js +4 -7
  365. package/{libEs5/components/Personalization/dom-actions/click.js → libEs6/components/Personalization/createPendingNotificationsHandler.js} +11 -15
  366. package/libEs6/components/Personalization/createPersonalizationDetails.js +9 -22
  367. package/libEs6/components/Personalization/createSetTargetMigration.js +1 -1
  368. package/libEs6/components/Personalization/createViewCacheManager.js +50 -24
  369. package/libEs6/components/Personalization/createViewChangeHandler.js +25 -29
  370. package/libEs6/components/Personalization/dom-actions/action.js +5 -14
  371. package/libEs6/components/Personalization/dom-actions/addNonceToInlineStyleElements.js +1 -8
  372. package/libEs6/components/Personalization/dom-actions/appendHtml.js +1 -0
  373. package/libEs6/components/Personalization/dom-actions/clicks/collectClicks.js +2 -14
  374. package/libEs6/components/Personalization/dom-actions/{click.js → createPreprocess.js} +7 -11
  375. package/libEs6/components/Personalization/dom-actions/dom/createFragment.js +1 -0
  376. package/libEs6/components/Personalization/dom-actions/dom/getAttribute.js +1 -0
  377. package/libEs6/components/Personalization/dom-actions/dom/getChildNodes.js +1 -2
  378. package/libEs6/components/Personalization/dom-actions/dom/getChildren.js +1 -2
  379. package/libEs6/components/Personalization/dom-actions/dom/getFirstChild.js +1 -0
  380. package/libEs6/components/Personalization/dom-actions/dom/getNextSibling.js +1 -0
  381. package/libEs6/components/Personalization/dom-actions/dom/getNonce.js +6 -5
  382. package/libEs6/components/Personalization/dom-actions/dom/getParent.js +1 -0
  383. package/libEs6/components/Personalization/dom-actions/dom/helperForEq.js +1 -0
  384. package/libEs6/components/Personalization/dom-actions/dom/index.js +1 -0
  385. package/libEs6/components/Personalization/dom-actions/dom/insertAfter.js +1 -2
  386. package/libEs6/components/Personalization/dom-actions/dom/insertBefore.js +1 -2
  387. package/libEs6/components/Personalization/dom-actions/dom/matchesSelectorWithEq.js +7 -6
  388. package/libEs6/components/Personalization/dom-actions/dom/removeAttribute.js +1 -0
  389. package/libEs6/components/Personalization/dom-actions/dom/selectNodesWithEq.js +6 -18
  390. package/libEs6/components/Personalization/dom-actions/dom/setAttribute.js +1 -0
  391. package/libEs6/components/Personalization/dom-actions/dom/setStyle.js +1 -2
  392. package/libEs6/components/Personalization/dom-actions/images.js +1 -1
  393. package/libEs6/components/Personalization/dom-actions/index.js +2 -2
  394. package/libEs6/components/Personalization/dom-actions/initDomActionsModules.js +4 -7
  395. package/libEs6/components/Personalization/dom-actions/insertHtmlAfter.js +1 -0
  396. package/libEs6/components/Personalization/dom-actions/insertHtmlBefore.js +1 -0
  397. package/libEs6/components/Personalization/dom-actions/prependHtml.js +5 -5
  398. package/libEs6/components/Personalization/dom-actions/rearrangeChildren.js +1 -2
  399. package/libEs6/components/Personalization/dom-actions/remapCustomCodeOffers.js +0 -3
  400. package/libEs6/components/Personalization/dom-actions/remapHeadOffers.js +4 -6
  401. package/libEs6/components/Personalization/dom-actions/replaceHtml.js +1 -0
  402. package/libEs6/components/Personalization/dom-actions/scripts.js +5 -16
  403. package/libEs6/components/Personalization/dom-actions/setAttributes.js +1 -0
  404. package/libEs6/components/Personalization/dom-actions/setHtml.js +1 -2
  405. package/libEs6/components/Personalization/dom-actions/setStyles.js +1 -0
  406. package/libEs6/components/Personalization/dom-actions/setText.js +1 -0
  407. package/libEs6/components/Personalization/dom-actions/swapImage.js +7 -4
  408. package/libEs6/components/Personalization/event.js +4 -4
  409. package/libEs6/components/Personalization/flicker/index.js +9 -12
  410. package/libEs6/components/Personalization/handlers/createProcessDomAction.js +48 -0
  411. package/libEs6/components/Personalization/handlers/createProcessHtmlContent.js +34 -0
  412. package/libEs6/components/Personalization/handlers/createProcessPropositions.js +175 -0
  413. package/libEs6/components/Personalization/handlers/createProcessRedirect.js +38 -0
  414. package/libEs6/components/Personalization/handlers/injectCreateProposition.js +113 -0
  415. package/libEs6/components/Personalization/{dom-actions/clicks/index.js → handlers/processDefaultContent.js} +7 -3
  416. package/libEs6/components/Personalization/index.js +61 -42
  417. package/libEs6/components/Personalization/utils/addRenderAttemptedToDecisions.js +1 -0
  418. package/libEs6/components/Personalization/utils/createAsyncArray.js +35 -0
  419. package/libEs6/components/Personalization/utils/isAuthoringModeEnabled.js +1 -0
  420. package/libEs6/components/Personalization/utils/isPageWideScope.js +1 -0
  421. package/libEs6/components/Personalization/utils/surfaceUtils.js +1 -20
  422. package/libEs6/components/Personalization/validateApplyPropositionsOptions.js +4 -4
  423. package/libEs6/components/Privacy/computeConsentHash.js +3 -4
  424. package/libEs6/components/Privacy/createComponent.js +5 -10
  425. package/libEs6/components/Privacy/createConsentHashStore.js +0 -10
  426. package/libEs6/components/Privacy/createConsentRequest.js +1 -3
  427. package/libEs6/components/Privacy/createConsentRequestPayload.js +1 -2
  428. package/libEs6/components/Privacy/createStoredConsent.js +1 -2
  429. package/libEs6/components/Privacy/index.js +1 -2
  430. package/libEs6/components/Privacy/injectSendSetConsentRequest.js +3 -3
  431. package/libEs6/constants/browser.js +1 -0
  432. package/libEs6/constants/consentPurpose.js +1 -0
  433. package/libEs6/constants/consentStatus.js +1 -0
  434. package/libEs6/constants/cookieNameKey.js +1 -0
  435. package/libEs6/constants/cookieNamePrefix.js +1 -0
  436. package/libEs6/constants/coreCommands.js +1 -0
  437. package/libEs6/constants/debugQueryParam.js +1 -0
  438. package/libEs6/constants/domain.js +1 -0
  439. package/libEs6/constants/ecidNamespace.js +1 -0
  440. package/libEs6/constants/elementAttribute.js +1 -0
  441. package/libEs6/constants/highEntropyUserAgentClientHints.js +1 -0
  442. package/libEs6/constants/httpHeaderNames.js +1 -0
  443. package/libEs6/constants/httpStatusCode.js +1 -0
  444. package/libEs6/constants/legacyCookies.js +1 -0
  445. package/libEs6/constants/libraryName.js +1 -0
  446. package/libEs6/constants/libraryVersion.js +3 -1
  447. package/libEs6/constants/namespace.js +1 -0
  448. package/libEs6/constants/pageWideScope.js +1 -0
  449. package/libEs6/constants/queryStringIdentityParam.js +1 -0
  450. package/libEs6/constants/shadowSeparator.js +1 -0
  451. package/libEs6/constants/tagName.js +1 -0
  452. package/libEs6/core/buildAndValidateConfig.js +4 -10
  453. package/libEs6/core/componentCreators.js +3 -3
  454. package/libEs6/core/config/createConfig.js +1 -2
  455. package/libEs6/core/config/createCoreConfigs.js +1 -0
  456. package/libEs6/core/consent/createConsent.js +1 -9
  457. package/libEs6/core/consent/createConsentStateMachine.js +1 -20
  458. package/libEs6/core/createComponentRegistry.js +3 -15
  459. package/libEs6/core/createCookieTransfer.js +6 -12
  460. package/libEs6/core/createEvent.js +25 -31
  461. package/libEs6/core/createEventManager.js +8 -10
  462. package/libEs6/core/createInstanceFunction.js +1 -0
  463. package/libEs6/core/createLifecycle.js +14 -10
  464. package/libEs6/core/createLogController.js +1 -7
  465. package/libEs6/core/createLogger.js +1 -17
  466. package/libEs6/core/edgeNetwork/handleRequestFailure.js +0 -1
  467. package/libEs6/core/edgeNetwork/injectApplyResponse.js +2 -3
  468. package/libEs6/core/edgeNetwork/injectExtractEdgeInfo.js +5 -6
  469. package/libEs6/core/edgeNetwork/injectGetLocationHint.js +1 -5
  470. package/libEs6/core/edgeNetwork/injectProcessWarningsAndErrors.js +1 -2
  471. package/libEs6/core/edgeNetwork/injectSendEdgeNetworkRequest.js +5 -5
  472. package/libEs6/core/index.js +4 -10
  473. package/libEs6/core/initializeComponents.js +3 -4
  474. package/libEs6/core/injectCreateResponse.js +3 -7
  475. package/libEs6/core/injectExecuteCommand.js +5 -11
  476. package/libEs6/core/injectHandleError.js +4 -3
  477. package/libEs6/core/injectShouldTransferCookie.js +1 -0
  478. package/libEs6/core/network/getRequestRetryDelay.js +11 -13
  479. package/libEs6/core/network/injectSendNetworkRequest.js +3 -7
  480. package/libEs6/core/network/isRequestRetryable.js +4 -2
  481. package/libEs6/core/network/requestMethods/injectSendBeaconRequest.js +4 -6
  482. package/libEs6/core/network/requestMethods/injectSendFetchRequest.js +1 -2
  483. package/libEs6/core/network/requestMethods/injectSendXhrRequest.js +1 -5
  484. package/libEs6/core/validateCommandOptions.js +1 -2
  485. package/libEs6/index.js +5 -3
  486. package/libEs6/utils/areThirdPartyCookiesSupportedByDefault.js +4 -2
  487. package/libEs6/utils/assign.js +1 -0
  488. package/libEs6/utils/assignIf.js +1 -1
  489. package/libEs6/utils/cookieJar.js +1 -0
  490. package/libEs6/utils/crc32.js +0 -7
  491. package/libEs6/utils/createCallbackAggregator.js +0 -2
  492. package/libEs6/utils/createLoggingCookieJar.js +3 -3
  493. package/libEs6/utils/createMerger.js +2 -1
  494. package/libEs6/utils/createTaskQueue.js +0 -4
  495. package/libEs6/utils/deduplicateArray.js +23 -0
  496. package/libEs6/utils/deepAssign.js +2 -5
  497. package/libEs6/utils/dom/appendNode.js +1 -0
  498. package/libEs6/utils/dom/awaitSelector.js +1 -14
  499. package/libEs6/utils/dom/createNode.js +1 -2
  500. package/libEs6/utils/dom/index.js +1 -0
  501. package/libEs6/utils/dom/isShadowSelector.js +1 -0
  502. package/libEs6/utils/dom/matchesSelector.js +2 -2
  503. package/libEs6/utils/dom/querySelectorAll.js +3 -2
  504. package/libEs6/utils/dom/removeNode.js +1 -2
  505. package/libEs6/utils/dom/selectNodes.js +2 -2
  506. package/libEs6/utils/dom/selectNodesWithShadow.js +6 -16
  507. package/libEs6/utils/filterObject.js +8 -12
  508. package/libEs6/utils/find.js +0 -2
  509. package/libEs6/utils/fireImage.js +2 -1
  510. package/libEs6/utils/getApexDomain.js +4 -4
  511. package/libEs6/utils/getBrowser.js +1 -7
  512. package/libEs6/utils/getNamespacedCookieName.js +1 -0
  513. package/libEs6/utils/groupBy.js +0 -2
  514. package/libEs6/utils/index.js +2 -0
  515. package/libEs6/utils/injectDoesIdentityCookieExist.js +1 -1
  516. package/libEs6/utils/injectFireReferrerHideableImage.js +1 -4
  517. package/libEs6/utils/injectStorage.js +1 -5
  518. package/libEs6/utils/intersection.js +2 -1
  519. package/libEs6/utils/isBlankString.js +2 -1
  520. package/libEs6/utils/isEmptyObject.js +2 -1
  521. package/libEs6/utils/isInteger.js +2 -1
  522. package/libEs6/utils/isNamespacedCookieName.js +2 -1
  523. package/libEs6/utils/isNonEmptyString.js +2 -1
  524. package/libEs6/utils/isObject.js +2 -1
  525. package/libEs6/utils/isUnique.js +0 -5
  526. package/libEs6/utils/memoize.js +0 -2
  527. package/libEs6/utils/padStart.js +1 -4
  528. package/libEs6/utils/prepareConfigOverridesForEdge.js +5 -12
  529. package/libEs6/utils/querystring.js +1 -0
  530. package/libEs6/utils/request/createDataCollectionRequest.js +1 -3
  531. package/libEs6/utils/request/createDataCollectionRequestPayload.js +0 -3
  532. package/libEs6/utils/request/createGetAssuranceValidationTokenParams.js +1 -6
  533. package/libEs6/utils/request/createHasIdentity.js +1 -0
  534. package/libEs6/utils/request/createRequest.js +3 -9
  535. package/libEs6/utils/request/createRequestParams.js +0 -3
  536. package/libEs6/utils/request/createRequestPayload.js +4 -4
  537. package/libEs6/utils/request/index.js +1 -0
  538. package/libEs6/utils/sanitizeOrgIdForCookieName.js +1 -0
  539. package/libEs6/utils/stackError.js +2 -1
  540. package/libEs6/utils/toArray.js +1 -2
  541. package/libEs6/utils/toISOStringLocal.js +4 -3
  542. package/libEs6/utils/toInteger.js +4 -4
  543. package/libEs6/utils/updateErrorMessage.js +3 -1
  544. package/libEs6/utils/uuid.js +1 -0
  545. package/libEs6/utils/validateConfigOverride.js +1 -0
  546. package/libEs6/utils/validateIdentityMap.js +1 -0
  547. package/libEs6/utils/validation/booleanValidator.js +1 -0
  548. package/libEs6/utils/validation/createArrayOfValidator.js +0 -2
  549. package/libEs6/utils/validation/createDefaultValidator.js +1 -1
  550. package/libEs6/utils/validation/createDeprecatedValidator.js +0 -4
  551. package/libEs6/utils/validation/createMapOfValuesValidator.js +1 -4
  552. package/libEs6/utils/validation/createNoUnknownFieldsValidator.js +1 -2
  553. package/libEs6/utils/validation/createNonEmptyValidator.js +1 -1
  554. package/libEs6/utils/validation/createObjectOfValidator.js +3 -5
  555. package/libEs6/utils/validation/createUniqueValidator.js +1 -0
  556. package/libEs6/utils/validation/index.js +14 -32
  557. package/libEs6/utils/validation/integerValidator.js +1 -0
  558. package/libEs6/utils/validation/numberValidator.js +1 -0
  559. package/libEs6/utils/validation/regexpValidator.js +1 -0
  560. package/libEs6/utils/validation/requiredValidator.js +1 -1
  561. package/libEs6/utils/validation/utils.js +8 -12
  562. package/package.json +2 -2
  563. package/libEs5/components/Personalization/createAutoRenderingHandler.js +0 -92
  564. package/libEs5/components/Personalization/createExecuteDecisions.js +0 -89
  565. package/libEs5/components/Personalization/createNonRenderingHandler.js +0 -66
  566. package/libEs5/components/Personalization/createOnResponseHandler.js +0 -73
  567. package/libEs5/components/Personalization/createRedirectHandler.js +0 -58
  568. package/libEs5/components/Personalization/dom-actions/executeActions.js +0 -75
  569. package/libEs5/components/Personalization/groupDecisions.js +0 -160
  570. package/libEs6/components/Personalization/createAutoRenderingHandler.js +0 -84
  571. package/libEs6/components/Personalization/createExecuteDecisions.js +0 -77
  572. package/libEs6/components/Personalization/createNonRenderingHandler.js +0 -56
  573. package/libEs6/components/Personalization/createOnResponseHandler.js +0 -68
  574. package/libEs6/components/Personalization/createRedirectHandler.js +0 -57
  575. package/libEs6/components/Personalization/dom-actions/executeActions.js +0 -66
  576. package/libEs6/components/Personalization/groupDecisions.js +0 -131
@@ -9,18 +9,20 @@ the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTA
9
9
  OF ANY KIND, either express or implied. See the License for the specific language
10
10
  governing permissions and limitations under the License.
11
11
  */
12
+
12
13
  // This is used to add methods onto a function.
13
14
  import assign from "../assign";
15
+
14
16
  /**
15
17
  * Wraps a validator returning the value if it is null or undefined, otherwise
16
18
  * it will call the original validator and return the result.
17
19
  *
18
20
  * @param {function} validator - the validator to call if the value is not null
19
21
  */
20
-
21
22
  const skipIfNull = validator => function skipIfNullValidator(value, path) {
22
23
  return value == null ? value : validator.call(this, value, path);
23
24
  };
25
+
24
26
  /**
25
27
  * Returns a new validator that calls the first validator and then calls the second
26
28
  * validator with the result of the first validator. The result of the second validator
@@ -30,11 +32,10 @@ const skipIfNull = validator => function skipIfNullValidator(value, path) {
30
32
  * @param {function} secondValidator - validator to call second
31
33
  * @returns {function} - a new validator that calls the first and second validators
32
34
  */
33
-
34
-
35
35
  const callSequentially = (firstValidator, secondValidator) => function callSequentiallyValidator(value, path) {
36
36
  return secondValidator.call(this, firstValidator.call(this, value, path), path);
37
37
  };
38
+
38
39
  /**
39
40
  * Just like callSequentially, but if either validator throws an error, the errors
40
41
  * are collected and thrown at the end.
@@ -43,8 +44,6 @@ const callSequentially = (firstValidator, secondValidator) => function callSeque
43
44
  * @param {function} secondValidator
44
45
  * @returns {function}
45
46
  */
46
-
47
-
48
47
  const callSequentiallyJoinErrors = (firstValidator, secondValidator) => function callSequentiallyJoinErrorsValidator(value, path) {
49
48
  const errors = [];
50
49
  const newValue = [firstValidator, secondValidator].reduce((memo, validator) => {
@@ -55,13 +54,12 @@ const callSequentiallyJoinErrors = (firstValidator, secondValidator) => function
55
54
  return memo;
56
55
  }
57
56
  }, value);
58
-
59
57
  if (errors.length) {
60
58
  throw new Error(errors.join("\n"));
61
59
  }
62
-
63
60
  return newValue;
64
61
  };
62
+
65
63
  /**
66
64
  * Chains two validators together. In addition to calling the validators in
67
65
  * sequence, this will also copy over methods from the base validator to the
@@ -74,11 +72,10 @@ const callSequentiallyJoinErrors = (firstValidator, secondValidator) => function
74
72
  * validator.
75
73
  * @returns {function}
76
74
  */
77
-
78
-
79
75
  export const chain = (baseValidator, newValidator, additionalMethods) => {
80
76
  return assign(callSequentially(baseValidator, newValidator), baseValidator, additionalMethods);
81
77
  };
78
+
82
79
  /**
83
80
  * Chains two validators together, but skips the second validator if the value
84
81
  * is null. In addition to calling the validators in sequence, this will also
@@ -94,10 +91,10 @@ export const chain = (baseValidator, newValidator, additionalMethods) => {
94
91
  * validator.
95
92
  * @returns {function}
96
93
  */
97
-
98
94
  export const nullSafeChain = (baseValidator, newValidator, additionalMethods) => {
99
95
  return assign(callSequentially(baseValidator, skipIfNull(newValidator)), baseValidator, additionalMethods);
100
96
  };
97
+
101
98
  /**
102
99
  * Same as nullSafeChain, but calls the new validator first.
103
100
  *
@@ -109,10 +106,10 @@ export const nullSafeChain = (baseValidator, newValidator, additionalMethods) =>
109
106
  * validator.
110
107
  * @returns {function}
111
108
  */
112
-
113
109
  export const reverseNullSafeChainJoinErrors = (baseValidator, newValidator, additionalMethods) => {
114
110
  return assign(callSequentiallyJoinErrors(skipIfNull(newValidator), baseValidator), baseValidator, additionalMethods);
115
111
  };
112
+
116
113
  /**
117
114
  * Throws an error if the value is not valid.
118
115
  *
@@ -123,7 +120,6 @@ export const reverseNullSafeChainJoinErrors = (baseValidator, newValidator, addi
123
120
  * @throws {Error} - Throws an error if the value is not valid.
124
121
  * @returns {void}
125
122
  */
126
-
127
123
  export const assertValid = (isValid, value, path, message) => {
128
124
  if (!isValid) {
129
125
  throw new Error(`'${path}': Expected ${message}, but got ${JSON.stringify(value)}.`);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adobe/alloy",
3
- "version": "2.18.0",
3
+ "version": "2.19.0-beta.1",
4
4
  "description": "Adobe Experience Platform Web SDK",
5
5
  "main": "libEs5/index.js",
6
6
  "module": "libEs6/index.js",
@@ -66,7 +66,7 @@
66
66
  "uuid": "^3.3.2"
67
67
  },
68
68
  "devDependencies": {
69
- "@adobe/alloy": "^2.18.0-beta.3",
69
+ "@adobe/alloy": "^2.19.0-beta.0",
70
70
  "@babel/cli": "^7.12.8",
71
71
  "@babel/core": "^7.2.2",
72
72
  "@babel/plugin-proposal-object-rest-spread": "^7.3.2",
@@ -1,92 +0,0 @@
1
- "use strict";
2
-
3
- exports.default = void 0;
4
-
5
- var _addRenderAttemptedToDecisions = require("./utils/addRenderAttemptedToDecisions");
6
-
7
- var _isNonEmptyArray = require("../../utils/isNonEmptyArray");
8
-
9
- function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
10
-
11
- function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
12
-
13
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
14
-
15
- function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
16
-
17
- function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
18
-
19
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
20
-
21
- var getPropositions = function getPropositions(_ref) {
22
- var viewCache = _ref.viewCache,
23
- viewName = _ref.viewName,
24
- pageWideScopeDecisions = _ref.pageWideScopeDecisions;
25
-
26
- if (!viewName) {
27
- return {
28
- pageWideScopeDecisions: pageWideScopeDecisions,
29
- viewPropositions: []
30
- };
31
- }
32
-
33
- return viewCache.getView(viewName).then(function (viewPropositions) {
34
- return {
35
- pageWideScopeDecisions: pageWideScopeDecisions,
36
- viewPropositions: viewPropositions
37
- };
38
- });
39
- };
40
-
41
- var _default = function _default(_ref2) {
42
- var viewCache = _ref2.viewCache,
43
- executeDecisions = _ref2.executeDecisions,
44
- showContainers = _ref2.showContainers,
45
- collect = _ref2.collect;
46
- return function (_ref3) {
47
- var viewName = _ref3.viewName,
48
- pageWideScopeDecisions = _ref3.pageWideScopeDecisions,
49
- nonAutoRenderableDecisions = _ref3.nonAutoRenderableDecisions;
50
- return Promise.resolve(pageWideScopeDecisions).then(function (propositions) {
51
- return getPropositions({
52
- viewCache: viewCache,
53
- viewName: viewName,
54
- executeDecisions: executeDecisions,
55
- pageWideScopeDecisions: propositions
56
- });
57
- }).then(function (propositions) {
58
- executeDecisions(propositions.pageWideScopeDecisions).then(function (decisionsMeta) {
59
- if ((0, _isNonEmptyArray.default)(decisionsMeta)) {
60
- collect({
61
- decisionsMeta: decisionsMeta
62
- });
63
- }
64
- });
65
-
66
- if (viewName) {
67
- executeDecisions(propositions.viewPropositions).then(function (decisionsMeta) {
68
- collect({
69
- decisionsMeta: decisionsMeta,
70
- viewName: viewName
71
- });
72
- });
73
- }
74
-
75
- showContainers();
76
- return [].concat(_toConsumableArray(propositions.pageWideScopeDecisions), _toConsumableArray(propositions.viewPropositions));
77
- }).then(function (renderablePropositions) {
78
- return {
79
- decisions: _toConsumableArray(nonAutoRenderableDecisions),
80
- propositions: [].concat(_toConsumableArray((0, _addRenderAttemptedToDecisions.default)({
81
- decisions: renderablePropositions,
82
- renderAttempted: true
83
- })), _toConsumableArray((0, _addRenderAttemptedToDecisions.default)({
84
- decisions: nonAutoRenderableDecisions,
85
- renderAttempted: false
86
- })))
87
- };
88
- });
89
- };
90
- };
91
-
92
- exports.default = _default;
@@ -1,89 +0,0 @@
1
- "use strict";
2
-
3
- exports.default = void 0;
4
-
5
- var _utils = require("../../utils");
6
-
7
- /*
8
- Copyright 2020 Adobe. All rights reserved.
9
- This file is licensed to you under the Apache License, Version 2.0 (the "License");
10
- you may not use this file except in compliance with the License. You may obtain a copy
11
- of the License at http://www.apache.org/licenses/LICENSE-2.0
12
-
13
- Unless required by applicable law or agreed to in writing, software distributed under
14
- the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
15
- OF ANY KIND, either express or implied. See the License for the specific language
16
- governing permissions and limitations under the License.
17
- */
18
- var DEFAULT_ACTION_TYPE = "defaultContent";
19
-
20
- var identity = function identity(item) {
21
- return item;
22
- };
23
-
24
- var getItemMeta = function getItemMeta(item, decisionMeta) {
25
- return item.characteristics && item.characteristics.trackingLabel ? (0, _utils.assign)({
26
- trackingLabel: item.characteristics.trackingLabel
27
- }, decisionMeta) : decisionMeta;
28
- };
29
-
30
- var buildActions = function buildActions(decision) {
31
- var decisionMeta = {
32
- id: decision.id,
33
- scope: decision.scope,
34
- scopeDetails: decision.scopeDetails
35
- };
36
- return decision.items.map(function (item) {
37
- return (0, _utils.assign)({
38
- type: DEFAULT_ACTION_TYPE
39
- }, item.data, {
40
- meta: getItemMeta(item, decisionMeta)
41
- });
42
- });
43
- };
44
-
45
- var processMetas = function processMetas(logger, actionResults) {
46
- var results = (0, _utils.flatMap)(actionResults, identity);
47
- var finalMetas = [];
48
- var set = new Set();
49
- results.forEach(function (item) {
50
- // for click actions we don't return an item
51
- if (!item) {
52
- return;
53
- }
54
-
55
- if (item.error) {
56
- logger.warn(item);
57
- return;
58
- }
59
-
60
- var meta = item.meta;
61
-
62
- if (set.has(meta.id)) {
63
- return;
64
- }
65
-
66
- set.add(meta.id);
67
- finalMetas.push(meta);
68
- });
69
- return finalMetas;
70
- };
71
-
72
- var _default = function _default(_ref) {
73
- var modules = _ref.modules,
74
- logger = _ref.logger,
75
- executeActions = _ref.executeActions;
76
- return function (decisions) {
77
- var actionResultsPromises = decisions.map(function (decision) {
78
- var actions = buildActions(decision);
79
- return executeActions(actions, modules, logger);
80
- });
81
- return Promise.all(actionResultsPromises).then(function (results) {
82
- return processMetas(logger, results);
83
- }).catch(function (error) {
84
- logger.error(error);
85
- });
86
- };
87
- };
88
-
89
- exports.default = _default;
@@ -1,66 +0,0 @@
1
- "use strict";
2
-
3
- exports.default = void 0;
4
-
5
- var _addRenderAttemptedToDecisions = require("./utils/addRenderAttemptedToDecisions");
6
-
7
- function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
8
-
9
- function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
10
-
11
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
12
-
13
- function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
14
-
15
- function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
16
-
17
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
18
-
19
- var getViewPropositions = function getViewPropositions(_ref) {
20
- var viewCache = _ref.viewCache,
21
- viewName = _ref.viewName,
22
- propositions = _ref.propositions;
23
-
24
- if (!viewName) {
25
- return propositions;
26
- }
27
-
28
- return viewCache.getView(viewName).then(function (viewPropositions) {
29
- return [].concat(_toConsumableArray(viewPropositions), _toConsumableArray(propositions));
30
- });
31
- };
32
-
33
- var buildFinalResult = function buildFinalResult(_ref2) {
34
- var propositions = _ref2.propositions;
35
- return {
36
- decisions: propositions,
37
- propositions: (0, _addRenderAttemptedToDecisions.default)({
38
- decisions: propositions,
39
- renderAttempted: false
40
- })
41
- };
42
- };
43
-
44
- var _default = function _default(_ref3) {
45
- var viewCache = _ref3.viewCache;
46
- return function (_ref4) {
47
- var viewName = _ref4.viewName,
48
- redirectDecisions = _ref4.redirectDecisions,
49
- pageWideScopeDecisions = _ref4.pageWideScopeDecisions,
50
- nonAutoRenderableDecisions = _ref4.nonAutoRenderableDecisions;
51
- var propositions = [].concat(_toConsumableArray(redirectDecisions), _toConsumableArray(pageWideScopeDecisions), _toConsumableArray(nonAutoRenderableDecisions));
52
- return Promise.resolve(propositions).then(function (items) {
53
- return getViewPropositions({
54
- viewCache: viewCache,
55
- viewName: viewName,
56
- propositions: items
57
- });
58
- }).then(function (items) {
59
- return buildFinalResult({
60
- propositions: items
61
- });
62
- });
63
- };
64
- };
65
-
66
- exports.default = _default;
@@ -1,73 +0,0 @@
1
- "use strict";
2
-
3
- exports.default = void 0;
4
-
5
- var _isNonEmptyArray = require("../../utils/isNonEmptyArray");
6
-
7
- /*
8
- Copyright 2020 Adobe. All rights reserved.
9
- This file is licensed to you under the Apache License, Version 2.0 (the "License");
10
- you may not use this file except in compliance with the License. You may obtain a copy
11
- of the License at http://www.apache.org/licenses/LICENSE-2.0
12
-
13
- Unless required by applicable law or agreed to in writing, software distributed under
14
- the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
15
- OF ANY KIND, either express or implied. See the License for the specific language
16
- governing permissions and limitations under the License.
17
- */
18
- var DECISIONS_HANDLE = "personalization:decisions";
19
-
20
- var _default = function _default(_ref) {
21
- var autoRenderingHandler = _ref.autoRenderingHandler,
22
- nonRenderingHandler = _ref.nonRenderingHandler,
23
- groupDecisions = _ref.groupDecisions,
24
- handleRedirectDecisions = _ref.handleRedirectDecisions,
25
- showContainers = _ref.showContainers;
26
- return function (_ref2) {
27
- var decisionsDeferred = _ref2.decisionsDeferred,
28
- personalizationDetails = _ref2.personalizationDetails,
29
- response = _ref2.response;
30
- var unprocessedDecisions = response.getPayloadsByType(DECISIONS_HANDLE);
31
- var viewName = personalizationDetails.getViewName(); // if personalization payload is empty return empty decisions array
32
-
33
- if (unprocessedDecisions.length === 0) {
34
- showContainers();
35
- decisionsDeferred.resolve({});
36
- return {
37
- decisions: [],
38
- propositions: []
39
- };
40
- }
41
-
42
- var _groupDecisions = groupDecisions(unprocessedDecisions),
43
- redirectDecisions = _groupDecisions.redirectDecisions,
44
- pageWideScopeDecisions = _groupDecisions.pageWideScopeDecisions,
45
- viewDecisions = _groupDecisions.viewDecisions,
46
- nonAutoRenderableDecisions = _groupDecisions.nonAutoRenderableDecisions;
47
-
48
- if (personalizationDetails.isRenderDecisions() && (0, _isNonEmptyArray.default)(redirectDecisions)) {
49
- decisionsDeferred.resolve({});
50
- return handleRedirectDecisions(redirectDecisions);
51
- } // save decisions for views in local cache
52
-
53
-
54
- decisionsDeferred.resolve(viewDecisions);
55
-
56
- if (personalizationDetails.isRenderDecisions()) {
57
- return autoRenderingHandler({
58
- viewName: viewName,
59
- pageWideScopeDecisions: pageWideScopeDecisions,
60
- nonAutoRenderableDecisions: nonAutoRenderableDecisions
61
- });
62
- }
63
-
64
- return nonRenderingHandler({
65
- viewName: viewName,
66
- redirectDecisions: redirectDecisions,
67
- pageWideScopeDecisions: pageWideScopeDecisions,
68
- nonAutoRenderableDecisions: nonAutoRenderableDecisions
69
- });
70
- };
71
- };
72
-
73
- exports.default = _default;
@@ -1,58 +0,0 @@
1
- "use strict";
2
-
3
- exports.default = void 0;
4
-
5
- var _loggerMessage = require("./constants/loggerMessage");
6
-
7
- /*
8
- Copyright 2021 Adobe. All rights reserved.
9
- This file is licensed to you under the Apache License, Version 2.0 (the "License");
10
- you may not use this file except in compliance with the License. You may obtain a copy
11
- of the License at http://www.apache.org/licenses/LICENSE-2.0
12
-
13
- Unless required by applicable law or agreed to in writing, software distributed under
14
- the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
15
- OF ANY KIND, either express or implied. See the License for the specific language
16
- governing permissions and limitations under the License.
17
- */
18
- var getRedirectDetails = function getRedirectDetails(redirectDecisions) {
19
- var decision = redirectDecisions[0];
20
- var items = decision.items,
21
- id = decision.id,
22
- scope = decision.scope,
23
- scopeDetails = decision.scopeDetails;
24
- var content = items[0].data.content;
25
- return {
26
- content: content,
27
- decisions: [{
28
- id: id,
29
- scope: scope,
30
- scopeDetails: scopeDetails
31
- }]
32
- };
33
- };
34
-
35
- var _default = function _default(_ref) {
36
- var collect = _ref.collect,
37
- window = _ref.window,
38
- logger = _ref.logger,
39
- showContainers = _ref.showContainers;
40
- return function (redirectDecisions) {
41
- var _getRedirectDetails = getRedirectDetails(redirectDecisions),
42
- content = _getRedirectDetails.content,
43
- decisions = _getRedirectDetails.decisions;
44
-
45
- var documentMayUnload = true;
46
- return collect({
47
- decisionsMeta: decisions,
48
- documentMayUnload: documentMayUnload
49
- }).then(function () {
50
- window.location.replace(content);
51
- }).catch(function () {
52
- showContainers();
53
- logger.warn(_loggerMessage.REDIRECT_EXECUTION_ERROR);
54
- });
55
- };
56
- };
57
-
58
- exports.default = _default;
@@ -1,75 +0,0 @@
1
- "use strict";
2
-
3
- exports.default = void 0;
4
-
5
- var _remapHeadOffers = require("./remapHeadOffers");
6
-
7
- var _utils = require("../../../utils");
8
-
9
- var _remapCustomCodeOffers = require("./remapCustomCodeOffers");
10
-
11
- function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
12
-
13
- function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
14
-
15
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
16
-
17
- function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
18
-
19
- function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
20
-
21
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
22
-
23
- var logActionError = function logActionError(logger, action, error) {
24
- if (logger.enabled) {
25
- var details = JSON.stringify(action);
26
- var message = error.message,
27
- stack = error.stack;
28
- var errorMessage = "Failed to execute action " + details + ". " + message + " " + (stack ? "\n " + stack : "");
29
- logger.error(errorMessage);
30
- }
31
- };
32
-
33
- var logActionCompleted = function logActionCompleted(logger, action) {
34
- if (logger.enabled) {
35
- var details = JSON.stringify(action);
36
- logger.info("Action " + details + " executed.");
37
- }
38
- };
39
-
40
- var executeAction = function executeAction(logger, modules, type, args) {
41
- var execute = modules[type];
42
-
43
- if (!execute) {
44
- var error = new Error("DOM action \"" + type + "\" not found");
45
- logActionError(logger, args[0], error);
46
- throw error;
47
- }
48
-
49
- return execute.apply(void 0, _toConsumableArray(args));
50
- };
51
-
52
- var PREPROCESSORS = [_remapHeadOffers.default, _remapCustomCodeOffers.default];
53
-
54
- var preprocess = function preprocess(action) {
55
- return PREPROCESSORS.reduce(function (processed, fn) {
56
- return (0, _utils.assign)(processed, fn(processed));
57
- }, action);
58
- };
59
-
60
- var _default = function _default(actions, modules, logger) {
61
- var actionPromises = actions.map(function (action) {
62
- var processedAction = preprocess(action);
63
- var type = processedAction.type;
64
- return executeAction(logger, modules, type, [processedAction]).then(function (result) {
65
- logActionCompleted(logger, processedAction);
66
- return result;
67
- }).catch(function (error) {
68
- logActionError(logger, processedAction, error);
69
- throw error;
70
- });
71
- });
72
- return Promise.all(actionPromises);
73
- };
74
-
75
- exports.default = _default;