@adobe/alloy 2.21.1 → 2.22.0-alpha.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 (442) hide show
  1. package/babel.config.cjs +0 -1
  2. package/libEs5/baseCode/index.js +3 -2
  3. package/libEs5/components/ActivityCollector/attachClickActivityCollector.js +23 -20
  4. package/libEs5/components/ActivityCollector/configValidators.js +2 -2
  5. package/libEs5/components/ActivityCollector/createClickActivityStorage.js +11 -9
  6. package/libEs5/components/ActivityCollector/createClickedElementProperties.js +39 -32
  7. package/libEs5/components/ActivityCollector/createGetClickedElementProperties.js +28 -20
  8. package/libEs5/components/ActivityCollector/createInjectClickedElementProperties.js +24 -21
  9. package/libEs5/components/ActivityCollector/createRecallAndInjectClickedElementProperties.js +10 -8
  10. package/libEs5/components/ActivityCollector/createStorePageViewProperties.js +6 -4
  11. package/libEs5/components/ActivityCollector/getLinkName.js +19 -18
  12. package/libEs5/components/ActivityCollector/getLinkRegion.js +10 -9
  13. package/libEs5/components/ActivityCollector/index.js +61 -45
  14. package/libEs5/components/ActivityCollector/utils/activityMapExtensionEnabled.js +3 -5
  15. package/libEs5/components/ActivityCollector/utils/createTransientStorage.js +7 -6
  16. package/libEs5/components/ActivityCollector/utils/determineLinkType.js +4 -3
  17. package/libEs5/components/ActivityCollector/utils/dom/elementHasClickHandler.js +3 -2
  18. package/libEs5/components/ActivityCollector/utils/dom/extractDomain.js +5 -4
  19. package/libEs5/components/ActivityCollector/utils/dom/findClickableElement.js +4 -3
  20. package/libEs5/components/ActivityCollector/utils/dom/getAbsoluteUrlFromAnchorElement.js +11 -8
  21. package/libEs5/components/ActivityCollector/utils/dom/isButtonSubmitElement.js +3 -2
  22. package/libEs5/components/ActivityCollector/utils/dom/isDownloadLink.js +6 -5
  23. package/libEs5/components/ActivityCollector/utils/dom/isExitLink.js +6 -5
  24. package/libEs5/components/ActivityCollector/utils/dom/isInputSubmitElement.js +4 -3
  25. package/libEs5/components/ActivityCollector/utils/dom/isSupportedAnchorElement.js +3 -2
  26. package/libEs5/components/ActivityCollector/utils/dom/isSupportedTextNode.js +4 -3
  27. package/libEs5/components/ActivityCollector/utils/hasPageName.js +4 -3
  28. package/libEs5/components/ActivityCollector/utils/isDifferentDomains.js +5 -4
  29. package/libEs5/components/ActivityCollector/utils/trimQueryFromUrl.js +5 -4
  30. package/libEs5/components/ActivityCollector/utils/truncateWhiteSpace.js +3 -2
  31. package/libEs5/components/ActivityCollector/utils/urlStartsWithScheme.js +3 -2
  32. package/libEs5/components/Audiences/index.js +13 -12
  33. package/libEs5/components/Audiences/injectProcessDestinations.js +32 -35
  34. package/libEs5/components/Audiences/injectProcessResponse.js +19 -16
  35. package/libEs5/components/Context/createComponent.js +10 -13
  36. package/libEs5/components/Context/implementationDetails.js +5 -4
  37. package/libEs5/components/Context/index.js +24 -28
  38. package/libEs5/components/Context/injectDevice.js +23 -15
  39. package/libEs5/components/Context/injectEnvironment.js +17 -12
  40. package/libEs5/components/Context/injectHighEntropyUserAgentHints.js +12 -21
  41. package/libEs5/components/Context/injectPlaceContext.js +8 -7
  42. package/libEs5/components/Context/injectTimestamp.js +6 -5
  43. package/libEs5/components/Context/injectWeb.js +6 -5
  44. package/libEs5/components/DataCollector/index.js +37 -38
  45. package/libEs5/components/DataCollector/validateApplyResponse.js +6 -4
  46. package/libEs5/components/DataCollector/validateUserEventOptions.js +6 -4
  47. package/libEs5/components/DecisioningEngine/consequenceAdapters/inAppMessageConsequenceAdapter.js +11 -8
  48. package/libEs5/components/DecisioningEngine/consequenceAdapters/schemaTypeConsequenceAdapter.js +10 -7
  49. package/libEs5/components/DecisioningEngine/constants.js +3 -3
  50. package/libEs5/components/DecisioningEngine/createApplyResponse.js +15 -15
  51. package/libEs5/components/DecisioningEngine/createConsequenceAdapter.js +17 -13
  52. package/libEs5/components/DecisioningEngine/createContextProvider.js +48 -44
  53. package/libEs5/components/DecisioningEngine/createDecisionHistory.js +7 -5
  54. package/libEs5/components/DecisioningEngine/createDecisionProvider.js +16 -21
  55. package/libEs5/components/DecisioningEngine/createEvaluableRulesetPayload.js +39 -37
  56. package/libEs5/components/DecisioningEngine/createEvaluateRulesetsCommand.js +21 -19
  57. package/libEs5/components/DecisioningEngine/createEventRegistry.js +63 -67
  58. package/libEs5/components/DecisioningEngine/createOnResponseHandler.js +23 -22
  59. package/libEs5/components/DecisioningEngine/createSubscribeRulesetItems.js +100 -55
  60. package/libEs5/components/DecisioningEngine/index.js +83 -54
  61. package/libEs5/components/DecisioningEngine/utils.js +43 -38
  62. package/libEs5/components/EventMerge/createComponent.js +5 -3
  63. package/libEs5/components/EventMerge/createEventMergeId.js +3 -2
  64. package/libEs5/components/EventMerge/index.js +1 -1
  65. package/libEs5/components/Identity/addEcidQueryToPayload.js +3 -2
  66. package/libEs5/components/Identity/addEcidToPayload.js +3 -2
  67. package/libEs5/components/Identity/appendIdentityToUrl/injectAppendIdentityToUrl.js +13 -23
  68. package/libEs5/components/Identity/configValidators.js +1 -1
  69. package/libEs5/components/Identity/constants/authState.js +3 -3
  70. package/libEs5/components/Identity/createComponent.js +39 -33
  71. package/libEs5/components/Identity/createLegacyIdentity.js +29 -29
  72. package/libEs5/components/Identity/getEcidFromResponse.js +5 -7
  73. package/libEs5/components/Identity/getIdentity/createGetIdentity.js +17 -15
  74. package/libEs5/components/Identity/getIdentity/createIdentityRequest.js +10 -8
  75. package/libEs5/components/Identity/getIdentity/createIdentityRequestPayload.js +5 -4
  76. package/libEs5/components/Identity/index.js +61 -62
  77. package/libEs5/components/Identity/injectAddLegacyEcidToPayload.js +8 -6
  78. package/libEs5/components/Identity/injectAddQueryStringIdentityToPayload.js +46 -52
  79. package/libEs5/components/Identity/injectAwaitIdentityCookie.js +14 -11
  80. package/libEs5/components/Identity/injectEnsureSingleIdentity.js +25 -24
  81. package/libEs5/components/Identity/injectHandleResponseForIdSyncs.js +6 -4
  82. package/libEs5/components/Identity/injectProcessIdSyncs.js +20 -22
  83. package/libEs5/components/Identity/injectSetDomainForInitialIdentityPayload.js +7 -5
  84. package/libEs5/components/Identity/visitorService/awaitVisitorOptIn.js +8 -6
  85. package/libEs5/components/Identity/visitorService/getVisitor.js +4 -3
  86. package/libEs5/components/Identity/visitorService/injectGetEcidFromVisitor.js +15 -13
  87. package/libEs5/components/LegacyMediaAnalytics/constants/constants.js +9 -9
  88. package/libEs5/components/LegacyMediaAnalytics/constants/mediaKeysToXdmConverter.js +2 -2
  89. package/libEs5/components/LegacyMediaAnalytics/createGetInstance.js +61 -63
  90. package/libEs5/components/LegacyMediaAnalytics/createLegacyMediaComponent.js +38 -37
  91. package/libEs5/components/LegacyMediaAnalytics/createMediaHelper.js +54 -52
  92. package/libEs5/components/LegacyMediaAnalytics/index.js +32 -33
  93. package/libEs5/components/LibraryInfo/index.js +23 -30
  94. package/libEs5/components/MachineLearning/index.js +1 -1
  95. package/libEs5/components/MachineLearning/processResponse.js +5 -3
  96. package/libEs5/components/Personalization/constants/loggerMessage.js +2 -2
  97. package/libEs5/components/Personalization/constants/scopeType.js +3 -3
  98. package/libEs5/components/Personalization/constants/surface.js +4 -4
  99. package/libEs5/components/Personalization/createActionsProvider.js +37 -32
  100. package/libEs5/components/Personalization/createApplyPropositions.js +71 -81
  101. package/libEs5/components/Personalization/createClickStorage.js +30 -32
  102. package/libEs5/components/Personalization/createComponent.js +65 -74
  103. package/libEs5/components/Personalization/createFetchDataHandler.js +83 -52
  104. package/libEs5/components/Personalization/createGetPageLocation.js +6 -6
  105. package/libEs5/components/Personalization/createHandleConsentFlicker.js +15 -14
  106. package/libEs5/components/Personalization/createInteractionStorage.js +25 -39
  107. package/libEs5/components/Personalization/createNotificationHandler.js +9 -10
  108. package/libEs5/components/Personalization/createOnClickHandler.js +29 -25
  109. package/libEs5/components/Personalization/createOnDecisionHandler.js +23 -21
  110. package/libEs5/components/Personalization/createPersonalizationDetails.js +39 -45
  111. package/libEs5/components/Personalization/createPreprocessors.js +7 -7
  112. package/libEs5/components/Personalization/createSetTargetMigration.js +6 -4
  113. package/libEs5/components/Personalization/createViewCacheManager.js +29 -32
  114. package/libEs5/components/Personalization/createViewChangeHandler.js +35 -20
  115. package/libEs5/components/Personalization/dom-actions/action.js +24 -25
  116. package/libEs5/components/Personalization/dom-actions/addNonceToInlineStyleElements.js +12 -13
  117. package/libEs5/components/Personalization/dom-actions/appendHtml.js +8 -7
  118. package/libEs5/components/Personalization/dom-actions/clicks/collectClicks.js +28 -33
  119. package/libEs5/components/Personalization/dom-actions/clicks/collectInteractions.js +37 -40
  120. package/libEs5/components/Personalization/dom-actions/collectInteractions.js +3 -2
  121. package/libEs5/components/Personalization/dom-actions/createPreprocess.js +10 -11
  122. package/libEs5/components/Personalization/dom-actions/createRedirect.js +11 -13
  123. package/libEs5/components/Personalization/dom-actions/dom/createFragment.js +3 -2
  124. package/libEs5/components/Personalization/dom-actions/dom/getAttribute.js +3 -2
  125. package/libEs5/components/Personalization/dom-actions/dom/getChildNodes.js +6 -3
  126. package/libEs5/components/Personalization/dom-actions/dom/getChildren.js +6 -3
  127. package/libEs5/components/Personalization/dom-actions/dom/getElementById.js +3 -3
  128. package/libEs5/components/Personalization/dom-actions/dom/getFirstChild.js +3 -2
  129. package/libEs5/components/Personalization/dom-actions/dom/getNextSibling.js +3 -2
  130. package/libEs5/components/Personalization/dom-actions/dom/getNonce.js +7 -6
  131. package/libEs5/components/Personalization/dom-actions/dom/getParent.js +3 -2
  132. package/libEs5/components/Personalization/dom-actions/dom/helperForEq.js +7 -7
  133. package/libEs5/components/Personalization/dom-actions/dom/index.js +14 -14
  134. package/libEs5/components/Personalization/dom-actions/dom/insertAfter.js +4 -3
  135. package/libEs5/components/Personalization/dom-actions/dom/insertBefore.js +4 -3
  136. package/libEs5/components/Personalization/dom-actions/dom/isDomElement.js +2 -3
  137. package/libEs5/components/Personalization/dom-actions/dom/matchesSelectorWithEq.js +6 -5
  138. package/libEs5/components/Personalization/dom-actions/dom/removeAttribute.js +3 -2
  139. package/libEs5/components/Personalization/dom-actions/dom/selectNodesWithEq.js +39 -38
  140. package/libEs5/components/Personalization/dom-actions/dom/setAttribute.js +3 -2
  141. package/libEs5/components/Personalization/dom-actions/dom/setStyle.js +4 -3
  142. package/libEs5/components/Personalization/dom-actions/images.js +10 -9
  143. package/libEs5/components/Personalization/dom-actions/index.js +1 -1
  144. package/libEs5/components/Personalization/dom-actions/initDomActionsModules.js +40 -25
  145. package/libEs5/components/Personalization/dom-actions/insertHtmlAfter.js +9 -8
  146. package/libEs5/components/Personalization/dom-actions/insertHtmlBefore.js +8 -7
  147. package/libEs5/components/Personalization/dom-actions/prependHtml.js +13 -10
  148. package/libEs5/components/Personalization/dom-actions/rearrangeChildren.js +9 -7
  149. package/libEs5/components/Personalization/dom-actions/remapCustomCodeOffers.js +14 -9
  150. package/libEs5/components/Personalization/dom-actions/remapHeadOffers.js +16 -14
  151. package/libEs5/components/Personalization/dom-actions/replaceHtml.js +4 -3
  152. package/libEs5/components/Personalization/dom-actions/scripts.js +58 -38
  153. package/libEs5/components/Personalization/dom-actions/setAttributes.js +4 -3
  154. package/libEs5/components/Personalization/dom-actions/setHtml.js +5 -4
  155. package/libEs5/components/Personalization/dom-actions/setStyles.js +8 -8
  156. package/libEs5/components/Personalization/dom-actions/setText.js +3 -2
  157. package/libEs5/components/Personalization/dom-actions/swapImage.js +3 -2
  158. package/libEs5/components/Personalization/flicker/index.js +66 -49
  159. package/libEs5/components/Personalization/handlers/createDecorateProposition.js +16 -13
  160. package/libEs5/components/Personalization/handlers/createProcessDomAction.js +45 -50
  161. package/libEs5/components/Personalization/handlers/createProcessHtmlContent.js +30 -29
  162. package/libEs5/components/Personalization/handlers/createProcessInAppMessage.js +35 -31
  163. package/libEs5/components/Personalization/handlers/createProcessPropositions.js +109 -105
  164. package/libEs5/components/Personalization/handlers/createProcessRedirect.js +38 -28
  165. package/libEs5/components/Personalization/handlers/injectCreateProposition.js +59 -67
  166. package/libEs5/components/Personalization/handlers/processDefaultContent.js +3 -2
  167. package/libEs5/components/Personalization/in-app-message-actions/actions/displayIframeContent.js +140 -121
  168. package/libEs5/components/Personalization/in-app-message-actions/initInAppMessageActionsModules.js +4 -5
  169. package/libEs5/components/Personalization/in-app-message-actions/utils.js +23 -19
  170. package/libEs5/components/Personalization/index.js +120 -103
  171. package/libEs5/components/Personalization/utils/addRenderAttemptedToDecisions.js +10 -10
  172. package/libEs5/components/Personalization/utils/createAsyncArray.js +10 -9
  173. package/libEs5/components/Personalization/utils/isAuthoringModeEnabled.js +3 -3
  174. package/libEs5/components/Personalization/utils/metaUtils.js +14 -19
  175. package/libEs5/components/Personalization/utils/surfaceUtils.js +27 -46
  176. package/libEs5/components/Personalization/validateApplyPropositionsOptions.js +8 -6
  177. package/libEs5/components/Privacy/computeConsentHash.js +9 -9
  178. package/libEs5/components/Privacy/createComponent.js +32 -32
  179. package/libEs5/components/Privacy/createConsentHashStore.js +27 -24
  180. package/libEs5/components/Privacy/createConsentRequest.js +10 -8
  181. package/libEs5/components/Privacy/createConsentRequestPayload.js +9 -8
  182. package/libEs5/components/Privacy/createStoredConsent.js +11 -9
  183. package/libEs5/components/Privacy/index.js +26 -23
  184. package/libEs5/components/Privacy/injectSendSetConsentRequest.js +30 -29
  185. package/libEs5/components/Privacy/parseConsentCookie.js +6 -14
  186. package/libEs5/components/StreamingMedia/createMediaEventManager.js +59 -45
  187. package/libEs5/components/StreamingMedia/createMediaRequest.js +8 -6
  188. package/libEs5/components/StreamingMedia/createMediaResponseHandler.js +22 -17
  189. package/libEs5/components/StreamingMedia/createMediaSessionCacheManager.js +22 -18
  190. package/libEs5/components/StreamingMedia/createStreamingMediaComponent.js +30 -29
  191. package/libEs5/components/StreamingMedia/createTrackMediaEvent.js +41 -36
  192. package/libEs5/components/StreamingMedia/createTrackMediaSession.js +25 -22
  193. package/libEs5/components/StreamingMedia/index.js +33 -34
  194. package/libEs5/components/StreamingMedia/validateMediaEventOptions.js +9 -12
  195. package/libEs5/components/StreamingMedia/validateMediaSessionOptions.js +6 -4
  196. package/libEs5/constants/browser.js +7 -7
  197. package/libEs5/constants/consentPurpose.js +1 -1
  198. package/libEs5/constants/consentStatus.js +3 -3
  199. package/libEs5/constants/contentType.js +2 -2
  200. package/libEs5/constants/cookieNameKey.js +3 -3
  201. package/libEs5/constants/coreCommands.js +2 -2
  202. package/libEs5/constants/decisionProvider.js +4 -3
  203. package/libEs5/constants/domain.js +2 -2
  204. package/libEs5/constants/elementAttribute.js +1 -1
  205. package/libEs5/constants/eventType.js +5 -5
  206. package/libEs5/constants/handle.js +1 -1
  207. package/libEs5/constants/httpHeaderNames.js +2 -2
  208. package/libEs5/constants/httpStatusCode.js +5 -5
  209. package/libEs5/constants/identityMapAuthenticatedState.js +3 -3
  210. package/libEs5/constants/legacyCookies.js +3 -3
  211. package/libEs5/constants/libraryVersion.js +1 -1
  212. package/libEs5/constants/propositionEventType.js +18 -12
  213. package/libEs5/constants/propositionInteractionType.js +4 -4
  214. package/libEs5/constants/schema.js +11 -11
  215. package/libEs5/constants/sessionDataKeys.js +1 -1
  216. package/libEs5/constants/tagName.js +7 -7
  217. package/libEs5/core/buildAndValidateConfig.js +55 -69
  218. package/libEs5/core/componentCreators.js +70 -41
  219. package/libEs5/core/config/createConfig.js +4 -3
  220. package/libEs5/core/config/createCoreConfigs.js +11 -12
  221. package/libEs5/core/consent/createConsent.js +16 -14
  222. package/libEs5/core/consent/createConsentStateMachine.js +27 -35
  223. package/libEs5/core/createComponentRegistry.js +28 -27
  224. package/libEs5/core/createCookieTransfer.js +18 -18
  225. package/libEs5/core/createEvent.js +39 -44
  226. package/libEs5/core/createEventManager.js +64 -69
  227. package/libEs5/core/createInstanceFunction.js +4 -11
  228. package/libEs5/core/createLifecycle.js +14 -19
  229. package/libEs5/core/createLogController.js +30 -29
  230. package/libEs5/core/createLogger.js +41 -27
  231. package/libEs5/core/edgeNetwork/handleRequestFailure.js +6 -5
  232. package/libEs5/core/edgeNetwork/injectApplyResponse.js +29 -32
  233. package/libEs5/core/edgeNetwork/injectExtractEdgeInfo.js +19 -25
  234. package/libEs5/core/edgeNetwork/injectGetLocationHint.js +11 -11
  235. package/libEs5/core/edgeNetwork/injectProcessWarningsAndErrors.js +20 -16
  236. package/libEs5/core/edgeNetwork/injectSendEdgeNetworkRequest.js +42 -38
  237. package/libEs5/core/edgeNetwork/mergeLifecycleResponses.js +8 -12
  238. package/libEs5/core/index.js +137 -133
  239. package/libEs5/core/initializeComponents.js +17 -15
  240. package/libEs5/core/injectCreateResponse.js +47 -53
  241. package/libEs5/core/injectExecuteCommand.js +39 -40
  242. package/libEs5/core/injectHandleError.js +19 -19
  243. package/libEs5/core/injectShouldTransferCookie.js +12 -12
  244. package/libEs5/core/network/getRequestRetryDelay.js +20 -18
  245. package/libEs5/core/network/injectSendNetworkRequest.js +46 -49
  246. package/libEs5/core/network/isRequestRetryable.js +9 -8
  247. package/libEs5/core/network/requestMethods/injectSendBeaconRequest.js +10 -8
  248. package/libEs5/core/network/requestMethods/injectSendFetchRequest.js +18 -19
  249. package/libEs5/core/requiredComponentCreators.js +23 -0
  250. package/libEs5/core/validateCommandOptions.js +14 -11
  251. package/libEs5/index.js +43 -22
  252. package/libEs5/standalone.js +6 -1
  253. package/libEs5/utils/areThirdPartyCookiesSupportedByDefault.js +3 -5
  254. package/libEs5/utils/assignConcatArrayValues.js +9 -18
  255. package/libEs5/utils/clone.js +2 -3
  256. package/libEs5/utils/cookieJar.js +4 -4
  257. package/libEs5/utils/crc32.js +8 -8
  258. package/libEs5/utils/createCallbackAggregator.js +7 -11
  259. package/libEs5/utils/createCollect.js +52 -0
  260. package/libEs5/utils/createLoggingCookieJar.js +14 -16
  261. package/libEs5/utils/createMerger.js +9 -10
  262. package/libEs5/utils/createSubscription.js +48 -48
  263. package/libEs5/utils/createTaskQueue.js +8 -7
  264. package/libEs5/utils/deduplicateArray.js +7 -11
  265. package/libEs5/utils/deepAssign.js +7 -11
  266. package/libEs5/utils/defer.js +5 -4
  267. package/libEs5/utils/dom/appendNode.js +3 -2
  268. package/libEs5/utils/dom/awaitSelector.js +36 -34
  269. package/libEs5/utils/dom/createNode.js +10 -15
  270. package/libEs5/utils/dom/index.js +8 -8
  271. package/libEs5/utils/dom/isShadowSelector.js +2 -3
  272. package/libEs5/utils/dom/matchesSelector.js +3 -2
  273. package/libEs5/utils/dom/querySelectorAll.js +5 -13
  274. package/libEs5/utils/dom/removeNode.js +4 -3
  275. package/libEs5/utils/dom/selectNodes.js +3 -3
  276. package/libEs5/utils/dom/selectNodesWithShadow.js +14 -23
  277. package/libEs5/utils/event.js +49 -0
  278. package/libEs5/utils/filterObject.js +14 -12
  279. package/libEs5/utils/fireImage.js +10 -9
  280. package/libEs5/utils/flattenArray.js +4 -11
  281. package/libEs5/utils/flattenObject.js +8 -18
  282. package/libEs5/utils/getApexDomain.js +7 -6
  283. package/libEs5/utils/getBrowser.js +45 -12
  284. package/libEs5/utils/getLastArrayItems.js +2 -3
  285. package/libEs5/utils/getNamespacedCookieName.js +2 -3
  286. package/libEs5/utils/groupBy.js +6 -5
  287. package/libEs5/utils/index.js +50 -113
  288. package/libEs5/utils/injectDoesIdentityCookieExist.js +7 -7
  289. package/libEs5/utils/injectFireReferrerHideableImage.js +28 -34
  290. package/libEs5/utils/injectStorage.js +13 -15
  291. package/libEs5/utils/intersection.js +2 -6
  292. package/libEs5/utils/isBlankString.js +2 -3
  293. package/libEs5/utils/isBoolean.js +2 -3
  294. package/libEs5/utils/isEmptyObject.js +2 -3
  295. package/libEs5/utils/isFunction.js +2 -3
  296. package/libEs5/utils/isInteger.js +4 -3
  297. package/libEs5/utils/isNamespacedCookieName.js +2 -3
  298. package/libEs5/utils/isNil.js +2 -3
  299. package/libEs5/utils/isNonEmptyArray.js +2 -3
  300. package/libEs5/utils/isNonEmptyString.js +2 -3
  301. package/libEs5/utils/isNumber.js +2 -4
  302. package/libEs5/utils/isObject.js +3 -4
  303. package/libEs5/utils/isString.js +2 -3
  304. package/libEs5/utils/isUnique.js +6 -5
  305. package/libEs5/utils/isValidRegExp.js +3 -2
  306. package/libEs5/utils/memoize.js +7 -6
  307. package/libEs5/utils/noop.js +2 -1
  308. package/libEs5/utils/parseUrl.js +19 -25
  309. package/libEs5/utils/prepareConfigOverridesForEdge.js +6 -5
  310. package/libEs5/utils/request/createAddIdentity.js +4 -3
  311. package/libEs5/utils/request/createDataCollectionRequest.js +15 -11
  312. package/libEs5/utils/request/createDataCollectionRequestPayload.js +9 -10
  313. package/libEs5/utils/request/createGetAssuranceValidationTokenParams.js +17 -15
  314. package/libEs5/utils/request/createHasIdentity.js +4 -5
  315. package/libEs5/utils/request/createRequest.js +26 -23
  316. package/libEs5/utils/request/createRequestParams.js +13 -13
  317. package/libEs5/utils/request/createRequestPayload.js +13 -12
  318. package/libEs5/utils/request/index.js +8 -8
  319. package/libEs5/utils/sanitizeOrgIdForCookieName.js +2 -3
  320. package/libEs5/utils/stackError.js +8 -6
  321. package/libEs5/utils/stringToBoolean.js +3 -2
  322. package/libEs5/utils/toArray.js +3 -2
  323. package/libEs5/utils/toError.js +3 -2
  324. package/libEs5/utils/toISOStringLocal.js +29 -14
  325. package/libEs5/utils/toInteger.js +5 -5
  326. package/libEs5/utils/updateErrorMessage.js +6 -4
  327. package/libEs5/utils/validation/booleanValidator.js +3 -2
  328. package/libEs5/utils/validation/callbackValidator.js +3 -2
  329. package/libEs5/utils/validation/createAnyOfValidator.js +14 -17
  330. package/libEs5/utils/validation/createArrayOfValidator.js +16 -18
  331. package/libEs5/utils/validation/createDefaultValidator.js +7 -8
  332. package/libEs5/utils/validation/createDeprecatedValidator.js +12 -14
  333. package/libEs5/utils/validation/createLiteralValidator.js +5 -6
  334. package/libEs5/utils/validation/createMapOfValuesValidator.js +20 -22
  335. package/libEs5/utils/validation/createMaximumValidator.js +5 -6
  336. package/libEs5/utils/validation/createMinimumValidator.js +5 -6
  337. package/libEs5/utils/validation/createNoUnknownFieldsValidator.js +13 -14
  338. package/libEs5/utils/validation/createNonEmptyValidator.js +9 -10
  339. package/libEs5/utils/validation/createObjectOfValidator.js +27 -29
  340. package/libEs5/utils/validation/createRenamedValidator.js +24 -27
  341. package/libEs5/utils/validation/createUniqueItemsValidator.js +4 -3
  342. package/libEs5/utils/validation/createUniqueValidator.js +5 -4
  343. package/libEs5/utils/validation/domainValidator.js +4 -3
  344. package/libEs5/utils/validation/index.js +66 -72
  345. package/libEs5/utils/validation/integerValidator.js +3 -2
  346. package/libEs5/utils/validation/matchesRegexpValidator.js +5 -6
  347. package/libEs5/utils/validation/numberValidator.js +3 -2
  348. package/libEs5/utils/validation/regexpValidator.js +3 -2
  349. package/libEs5/utils/validation/requiredValidator.js +3 -2
  350. package/libEs5/utils/validation/stringValidator.js +3 -2
  351. package/libEs5/utils/validation/utils.js +29 -35
  352. package/libEs6/components/ActivityCollector/index.js +18 -8
  353. package/libEs6/components/Context/createComponent.js +1 -3
  354. package/libEs6/components/DecisioningEngine/createApplyResponse.js +1 -1
  355. package/libEs6/components/DecisioningEngine/createSubscribeRulesetItems.js +78 -28
  356. package/libEs6/components/DecisioningEngine/index.js +22 -2
  357. package/libEs6/components/DecisioningEngine/utils.js +2 -9
  358. package/libEs6/components/Identity/createComponent.js +4 -2
  359. package/libEs6/components/Identity/getEcidFromResponse.js +1 -3
  360. package/libEs6/components/LegacyMediaAnalytics/createGetInstance.js +2 -2
  361. package/libEs6/components/LibraryInfo/index.js +4 -5
  362. package/libEs6/components/Personalization/createActionsProvider.js +4 -2
  363. package/libEs6/components/Personalization/createComponent.js +2 -2
  364. package/libEs6/components/Personalization/createFetchDataHandler.js +35 -1
  365. package/libEs6/components/Personalization/createPersonalizationDetails.js +6 -6
  366. package/libEs6/components/Personalization/createViewCacheManager.js +5 -2
  367. package/libEs6/components/Personalization/createViewChangeHandler.js +11 -1
  368. package/libEs6/components/Personalization/dom-actions/createPreprocess.js +5 -2
  369. package/libEs6/components/Personalization/dom-actions/dom/selectNodesWithEq.js +1 -3
  370. package/libEs6/components/Personalization/dom-actions/remapCustomCodeOffers.js +6 -4
  371. package/libEs6/components/Personalization/dom-actions/remapHeadOffers.js +3 -2
  372. package/libEs6/components/Personalization/dom-actions/scripts.js +18 -2
  373. package/libEs6/components/Personalization/flicker/index.js +44 -30
  374. package/libEs6/components/Personalization/handlers/createDecorateProposition.js +2 -2
  375. package/libEs6/components/Personalization/handlers/createProcessPropositions.js +29 -9
  376. package/libEs6/components/Personalization/handlers/createProcessRedirect.js +9 -0
  377. package/libEs6/components/Personalization/handlers/injectCreateProposition.js +0 -3
  378. package/libEs6/components/Personalization/in-app-message-actions/actions/displayIframeContent.js +8 -5
  379. package/libEs6/components/Personalization/in-app-message-actions/utils.js +2 -2
  380. package/libEs6/components/Personalization/index.js +9 -5
  381. package/libEs6/components/Personalization/utils/addRenderAttemptedToDecisions.js +4 -4
  382. package/libEs6/components/Personalization/utils/surfaceUtils.js +3 -3
  383. package/libEs6/constants/decisionProvider.js +1 -0
  384. package/libEs6/constants/libraryVersion.js +1 -1
  385. package/libEs6/constants/schema.js +1 -1
  386. package/libEs6/core/buildAndValidateConfig.js +8 -5
  387. package/libEs6/core/componentCreators.js +14 -43
  388. package/libEs6/core/config/createConfig.js +3 -2
  389. package/libEs6/core/createCookieTransfer.js +1 -3
  390. package/libEs6/core/createInstanceFunction.js +1 -9
  391. package/libEs6/core/createLogger.js +17 -2
  392. package/libEs6/core/edgeNetwork/injectExtractEdgeInfo.js +1 -7
  393. package/libEs6/core/index.js +11 -10
  394. package/libEs6/core/injectCreateResponse.js +1 -3
  395. package/libEs6/core/network/isRequestRetryable.js +1 -2
  396. package/libEs6/core/network/requestMethods/injectSendFetchRequest.js +1 -2
  397. package/libEs6/{utils/assignIf.js → core/requiredComponentCreators.js} +4 -8
  398. package/libEs6/index.js +26 -6
  399. package/libEs6/standalone.js +7 -1
  400. package/libEs6/utils/areThirdPartyCookiesSupportedByDefault.js +1 -2
  401. package/libEs6/utils/assignConcatArrayValues.js +1 -2
  402. package/libEs6/utils/cookieJar.js +4 -4
  403. package/libEs6/{components/Personalization → utils}/createCollect.js +3 -3
  404. package/libEs6/utils/createSubscription.js +20 -3
  405. package/libEs6/utils/dom/querySelectorAll.js +1 -10
  406. package/libEs6/utils/dom/selectNodesWithShadow.js +2 -12
  407. package/libEs6/{components/Personalization → utils}/event.js +1 -1
  408. package/libEs6/utils/index.js +1 -10
  409. package/libEs6/utils/injectStorage.js +1 -2
  410. package/libEs6/utils/intersection.js +1 -4
  411. package/libEs6/utils/isNumber.js +1 -2
  412. package/libEs6/utils/toISOStringLocal.js +14 -1
  413. package/libEs6/utils/toInteger.js +1 -2
  414. package/libEs6/utils/validation/createAnyOfValidator.js +1 -2
  415. package/libEs6/utils/validation/utils.js +3 -6
  416. package/package.json +35 -37
  417. package/rollup.config.js +115 -7
  418. package/scripts/alloyBuilder.js +89 -55
  419. package/scripts/helpers/entryPointGeneratorBabelPlugin.js +39 -0
  420. package/libEs5/components/Personalization/createCollect.js +0 -53
  421. package/libEs5/components/Personalization/event.js +0 -49
  422. package/libEs5/core/network/requestMethods/injectSendXhrRequest.js +0 -50
  423. package/libEs5/utils/assign.js +0 -16
  424. package/libEs5/utils/assignIf.js +0 -21
  425. package/libEs5/utils/endsWith.js +0 -23
  426. package/libEs5/utils/find.js +0 -30
  427. package/libEs5/utils/flatMap.js +0 -17
  428. package/libEs5/utils/includes.js +0 -23
  429. package/libEs5/utils/padStart.js +0 -27
  430. package/libEs5/utils/startsWith.js +0 -23
  431. package/libEs5/utils/values.js +0 -25
  432. package/libEs6/core/network/requestMethods/injectSendXhrRequest.js +0 -49
  433. package/libEs6/utils/assign.js +0 -14
  434. package/libEs6/utils/endsWith.js +0 -19
  435. package/libEs6/utils/find.js +0 -28
  436. package/libEs6/utils/flatMap.js +0 -14
  437. package/libEs6/utils/includes.js +0 -21
  438. package/libEs6/utils/padStart.js +0 -25
  439. package/libEs6/utils/startsWith.js +0 -19
  440. package/libEs6/utils/values.js +0 -21
  441. package/scripts/helpers/alloyComponents.js +0 -63
  442. package/scripts/helpers/conditionalBuildBabelPlugin.js +0 -57
@@ -13,12 +13,13 @@ the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTA
13
13
  OF ANY KIND, either express or implied. See the License for the specific language
14
14
  governing permissions and limitations under the License.
15
15
  */
16
- var _default = exports.default = function _default(container, _ref, decorateProposition) {
17
- var from = _ref.from,
18
- to = _ref.to;
19
- var children = (0, _index.getChildren)(container);
20
- var elementFrom = children[from];
21
- var elementTo = children[to];
16
+ var _default = (container, {
17
+ from,
18
+ to
19
+ }, decorateProposition) => {
20
+ const children = (0, _index.getChildren)(container);
21
+ const elementFrom = children[from];
22
+ const elementTo = children[to];
22
23
  if (!elementFrom || !elementTo) {
23
24
  // TODO: We will need to add logging
24
25
  // to ease troubleshooting
@@ -31,4 +32,5 @@ var _default = exports.default = function _default(container, _ref, decorateProp
31
32
  }
32
33
  decorateProposition(elementTo);
33
34
  decorateProposition(elementFrom);
34
- };
35
+ };
36
+ exports.default = _default;
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
 
3
3
  exports.default = void 0;
4
- var _index = require("../../../utils/index.js");
5
4
  var _initDomActionsModules = require("./initDomActionsModules.js");
6
5
  /*
7
6
  Copyright 2021 Adobe. All rights reserved.
@@ -20,17 +19,23 @@ governing permissions and limitations under the License.
20
19
  * target offers, to align with the way it works in at.js.
21
20
  */
22
21
 
23
- var TARGET_BODY_SELECTOR = "BODY > *:eq(0)";
24
- var _default = exports.default = function _default(action) {
25
- var selector = action.selector,
26
- type = action.type;
22
+ const TARGET_BODY_SELECTOR = "BODY > *:eq(0)";
23
+ var _default = action => {
24
+ const {
25
+ selector,
26
+ type
27
+ } = action;
27
28
  if (type !== _initDomActionsModules.DOM_ACTION_CUSTOM_CODE) {
28
29
  return action;
29
30
  }
30
31
  if (selector !== TARGET_BODY_SELECTOR) {
31
32
  return action;
32
33
  }
33
- return (0, _index.assign)({}, action, {
34
- selector: "BODY"
35
- });
36
- };
34
+ return {
35
+ ...action,
36
+ ...{
37
+ selector: "BODY"
38
+ }
39
+ };
40
+ };
41
+ exports.default = _default;
@@ -4,7 +4,6 @@ exports.default = void 0;
4
4
  var _index = require("../../../utils/dom/index.js");
5
5
  var _scripts = require("./scripts.js");
6
6
  var _index2 = require("./dom/index.js");
7
- var _index3 = require("../../../utils/index.js");
8
7
  var _isBlankString = require("../../../utils/isBlankString.js");
9
8
  var _tagName = require("../../../constants/tagName.js");
10
9
  var _initDomActionsModules = require("./initDomActionsModules.js");
@@ -26,29 +25,32 @@ governing permissions and limitations under the License.
26
25
  * Offer content should also be filtered, so that only tags allowed in HEAD are preserved.
27
26
  */
28
27
 
29
- var HEAD_TAGS_SELECTOR = "SCRIPT,LINK,STYLE";
30
- var filterHeadContent = function filterHeadContent(content) {
31
- var container = (0, _index2.createFragment)(content);
32
- var headNodes = (0, _index.selectNodes)(HEAD_TAGS_SELECTOR, container);
33
- return headNodes.map(function (node) {
34
- return node.outerHTML;
35
- }).join("");
28
+ const HEAD_TAGS_SELECTOR = "SCRIPT,LINK,STYLE";
29
+ const filterHeadContent = content => {
30
+ const container = (0, _index2.createFragment)(content);
31
+ const headNodes = (0, _index.selectNodes)(HEAD_TAGS_SELECTOR, container);
32
+ return headNodes.map(node => node.outerHTML).join("");
36
33
  };
37
- var _default = exports.default = function _default(action) {
38
- var result = (0, _index3.assign)({}, action);
39
- var content = result.content,
40
- selector = result.selector;
34
+ var _default = action => {
35
+ const result = {
36
+ ...action
37
+ };
38
+ const {
39
+ content,
40
+ selector
41
+ } = result;
41
42
  if ((0, _isBlankString.default)(content)) {
42
43
  return result;
43
44
  }
44
45
  if (selector == null) {
45
46
  return result;
46
47
  }
47
- var container = (0, _index2.selectNodesWithEq)(selector);
48
+ const container = (0, _index2.selectNodesWithEq)(selector);
48
49
  if (!(0, _scripts.is)(container[0], _tagName.HEAD)) {
49
50
  return result;
50
51
  }
51
52
  result.type = _initDomActionsModules.DOM_ACTION_APPEND_HTML;
52
53
  result.content = filterHeadContent(content);
53
54
  return result;
54
- };
55
+ };
56
+ exports.default = _default;
@@ -14,8 +14,9 @@ the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTA
14
14
  OF ANY KIND, either express or implied. See the License for the specific language
15
15
  governing permissions and limitations under the License.
16
16
  */
17
- var _default = exports.default = function _default(container, html, decorateProposition) {
18
- return (0, _insertHtmlBefore.default)(container, html, decorateProposition).then(function () {
17
+ var _default = (container, html, decorateProposition) => {
18
+ return (0, _insertHtmlBefore.default)(container, html, decorateProposition).then(() => {
19
19
  (0, _index.removeNode)(container);
20
20
  });
21
- };
21
+ };
22
+ exports.default = _default;
@@ -1,17 +1,11 @@
1
1
  "use strict";
2
2
 
3
3
  exports.is = exports.getRemoteScriptsUrls = exports.getInlineScripts = exports.executeRemoteScripts = exports.executeInlineScripts = void 0;
4
- var _reactorLoadScript = require("@adobe/reactor-load-script");
5
4
  var _index = require("../../../utils/dom/index.js");
6
5
  var _tagName = require("../../../constants/tagName.js");
7
6
  var _elementAttribute = require("../../../constants/elementAttribute.js");
8
7
  var _index2 = require("./dom/index.js");
9
- function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
10
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
11
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
12
- function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
13
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
14
- function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } /*
8
+ /*
15
9
  Copyright 2019 Adobe. All rights reserved.
16
10
  This file is licensed to you under the Apache License, Version 2.0 (the "License");
17
11
  you may not use this file except in compliance with the License. You may obtain a copy
@@ -22,54 +16,77 @@ the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTA
22
16
  OF ANY KIND, either express or implied. See the License for the specific language
23
17
  governing permissions and limitations under the License.
24
18
  */
25
- var is = exports.is = function is(element, tagName) {
26
- return !!element && element.tagName === tagName;
27
- };
28
- var isInlineScript = function isInlineScript(element) {
29
- return is(element, _tagName.SCRIPT) && !(0, _index2.getAttribute)(element, _elementAttribute.SRC);
19
+
20
+ const getPromise = (url, script) => {
21
+ return new Promise((resolve, reject) => {
22
+ script.onload = () => {
23
+ resolve(script);
24
+ };
25
+ script.onerror = () => {
26
+ reject(new Error("Failed to load script: " + url));
27
+ };
28
+ });
30
29
  };
31
- var isRemoteScript = function isRemoteScript(element) {
32
- return is(element, _tagName.SCRIPT) && (0, _index2.getAttribute)(element, _elementAttribute.SRC);
30
+ const loadScript = url => {
31
+ const script = document.createElement("script");
32
+ script.src = url;
33
+ script.async = true;
34
+ const promise = getPromise(url, script);
35
+ document.head.appendChild(script);
36
+ return promise;
33
37
  };
34
- var getInlineScripts = exports.getInlineScripts = function getInlineScripts(fragment) {
35
- var scripts = (0, _index.selectNodes)(_tagName.SCRIPT, fragment);
36
- var result = [];
37
- var length = scripts.length;
38
- var nonce = (0, _index2.getNonce)();
39
- var attributes = _objectSpread({}, nonce && {
40
- nonce: nonce
41
- });
38
+ const is = (element, tagName) => !!element && element.tagName === tagName;
39
+ exports.is = is;
40
+ const isInlineScript = element => is(element, _tagName.SCRIPT) && !(0, _index2.getAttribute)(element, _elementAttribute.SRC);
41
+ const isRemoteScript = element => is(element, _tagName.SCRIPT) && (0, _index2.getAttribute)(element, _elementAttribute.SRC);
42
+ const getInlineScripts = fragment => {
43
+ const scripts = (0, _index.selectNodes)(_tagName.SCRIPT, fragment);
44
+ const result = [];
45
+ const {
46
+ length
47
+ } = scripts;
48
+ const nonce = (0, _index2.getNonce)();
49
+ const attributes = {
50
+ ...(nonce && {
51
+ nonce
52
+ })
53
+ };
42
54
 
43
55
  /* eslint-disable no-continue */
44
- for (var i = 0; i < length; i += 1) {
45
- var element = scripts[i];
56
+ for (let i = 0; i < length; i += 1) {
57
+ const element = scripts[i];
46
58
  if (!isInlineScript(element)) {
47
59
  continue;
48
60
  }
49
- var textContent = element.textContent;
61
+ const {
62
+ textContent
63
+ } = element;
50
64
  if (!textContent) {
51
65
  continue;
52
66
  }
53
67
  result.push((0, _index.createNode)(_tagName.SCRIPT, attributes, {
54
- textContent: textContent
68
+ textContent
55
69
  }));
56
70
  }
57
71
  /* eslint-enable no-continue */
58
72
 
59
73
  return result;
60
74
  };
61
- var getRemoteScriptsUrls = exports.getRemoteScriptsUrls = function getRemoteScriptsUrls(fragment) {
62
- var scripts = (0, _index.selectNodes)(_tagName.SCRIPT, fragment);
63
- var result = [];
64
- var length = scripts.length;
75
+ exports.getInlineScripts = getInlineScripts;
76
+ const getRemoteScriptsUrls = fragment => {
77
+ const scripts = (0, _index.selectNodes)(_tagName.SCRIPT, fragment);
78
+ const result = [];
79
+ const {
80
+ length
81
+ } = scripts;
65
82
 
66
83
  /* eslint-disable no-continue */
67
- for (var i = 0; i < length; i += 1) {
68
- var element = scripts[i];
84
+ for (let i = 0; i < length; i += 1) {
85
+ const element = scripts[i];
69
86
  if (!isRemoteScript(element)) {
70
87
  continue;
71
88
  }
72
- var url = (0, _index2.getAttribute)(element, _elementAttribute.SRC);
89
+ const url = (0, _index2.getAttribute)(element, _elementAttribute.SRC);
73
90
  if (!url) {
74
91
  continue;
75
92
  }
@@ -79,12 +96,15 @@ var getRemoteScriptsUrls = exports.getRemoteScriptsUrls = function getRemoteScri
79
96
 
80
97
  return result;
81
98
  };
82
- var executeInlineScripts = exports.executeInlineScripts = function executeInlineScripts(parent, scripts) {
83
- scripts.forEach(function (script) {
99
+ exports.getRemoteScriptsUrls = getRemoteScriptsUrls;
100
+ const executeInlineScripts = (parent, scripts) => {
101
+ scripts.forEach(script => {
84
102
  parent.appendChild(script);
85
103
  parent.removeChild(script);
86
104
  });
87
105
  };
88
- var executeRemoteScripts = exports.executeRemoteScripts = function executeRemoteScripts(urls) {
89
- return Promise.all(urls.map(_reactorLoadScript.default));
90
- };
106
+ exports.executeInlineScripts = executeInlineScripts;
107
+ const executeRemoteScripts = urls => {
108
+ return Promise.all(urls.map(loadScript));
109
+ };
110
+ exports.executeRemoteScripts = executeRemoteScripts;
@@ -13,9 +13,10 @@ the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTA
13
13
  OF ANY KIND, either express or implied. See the License for the specific language
14
14
  governing permissions and limitations under the License.
15
15
  */
16
- var _default = exports.default = function _default(container, attributes, decorateProposition) {
17
- Object.keys(attributes).forEach(function (key) {
16
+ var _default = (container, attributes, decorateProposition) => {
17
+ Object.keys(attributes).forEach(key => {
18
18
  (0, _index.setAttribute)(container, key, attributes[key]);
19
19
  });
20
20
  decorateProposition(container);
21
- };
21
+ };
22
+ exports.default = _default;
@@ -16,12 +16,13 @@ OF ANY KIND, either express or implied. See the License for the specific languag
16
16
  governing permissions and limitations under the License.
17
17
  */
18
18
 
19
- var clear = function clear(container) {
19
+ const clear = container => {
20
20
  // We want to remove ALL nodes, text, comments etc
21
- var childNodes = (0, _index2.getChildNodes)(container);
21
+ const childNodes = (0, _index2.getChildNodes)(container);
22
22
  childNodes.forEach(_index.removeNode);
23
23
  };
24
- var _default = exports.default = function _default(container, html, decorateProposition) {
24
+ var _default = (container, html, decorateProposition) => {
25
25
  clear(container);
26
26
  return (0, _appendHtml.default)(container, html, decorateProposition);
27
- };
27
+ };
28
+ exports.default = _default;
@@ -2,7 +2,6 @@
2
2
 
3
3
  exports.default = void 0;
4
4
  var _index = require("./dom/index.js");
5
- var _excluded = ["priority"];
6
5
  /*
7
6
  Copyright 2019 Adobe. All rights reserved.
8
7
  This file is licensed to you under the Apache License, Version 2.0 (the "License");
@@ -14,13 +13,14 @@ the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTA
14
13
  OF ANY KIND, either express or implied. See the License for the specific language
15
14
  governing permissions and limitations under the License.
16
15
  */
17
- function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var s = Object.getOwnPropertySymbols(e); for (r = 0; r < s.length; r++) o = s[r], t.includes(o) || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
18
- function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (e.includes(n)) continue; t[n] = r[n]; } return t; }
19
- var _default = exports.default = function _default(container, styles, decorateProposition) {
20
- var priority = styles.priority,
21
- style = _objectWithoutProperties(styles, _excluded);
22
- Object.keys(style).forEach(function (key) {
16
+ var _default = (container, styles, decorateProposition) => {
17
+ const {
18
+ priority,
19
+ ...style
20
+ } = styles;
21
+ Object.keys(style).forEach(key => {
23
22
  (0, _index.setStyle)(container, key, style[key], priority);
24
23
  });
25
24
  decorateProposition(container);
26
- };
25
+ };
26
+ exports.default = _default;
@@ -12,7 +12,8 @@ the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTA
12
12
  OF ANY KIND, either express or implied. See the License for the specific language
13
13
  governing permissions and limitations under the License.
14
14
  */
15
- var _default = exports.default = function _default(container, text, decorateProposition) {
15
+ var _default = (container, text, decorateProposition) => {
16
16
  decorateProposition(container);
17
17
  container.textContent = text;
18
- };
18
+ };
19
+ exports.default = _default;
@@ -15,7 +15,7 @@ the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTA
15
15
  OF ANY KIND, either express or implied. See the License for the specific language
16
16
  governing permissions and limitations under the License.
17
17
  */
18
- var _default = exports.default = function _default(container, url, decorateProposition) {
18
+ var _default = (container, url, decorateProposition) => {
19
19
  if (!(0, _images.isImage)(container)) {
20
20
  return;
21
21
  }
@@ -29,4 +29,5 @@ var _default = exports.default = function _default(container, url, decoratePropo
29
29
 
30
30
  // Replace the image "src"
31
31
  (0, _index.setAttribute)(container, _elementAttribute.SRC, url);
32
- };
32
+ };
33
+ exports.default = _default;
@@ -1,15 +1,10 @@
1
1
  "use strict";
2
2
 
3
- exports.showElements = exports.showContainers = exports.hideElements = exports.hideContainers = void 0;
3
+ exports.showElements = exports.hideElements = exports.createShowContainers = exports.createHideContainers = void 0;
4
4
  var _index = require("../../../utils/dom/index.js");
5
5
  var _tagName = require("../../../constants/tagName.js");
6
6
  var _index2 = require("../dom-actions/dom/index.js");
7
- function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
8
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
9
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
10
- function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
11
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
12
- function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } /*
7
+ /*
13
8
  Copyright 2019 Adobe. All rights reserved.
14
9
  This file is licensed to you under the Apache License, Version 2.0 (the "License");
15
10
  you may not use this file except in compliance with the License. You may obtain a copy
@@ -20,67 +15,89 @@ the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTA
20
15
  OF ANY KIND, either express or implied. See the License for the specific language
21
16
  governing permissions and limitations under the License.
22
17
  */
23
- var PREHIDING_ID = "alloy-prehiding";
24
- var HIDING_STYLE_DEFINITION = "{ visibility: hidden }";
18
+
19
+ const PREHIDING_ID = "alloy-prehiding";
20
+ const HIDING_STYLE_DEFINITION = "{ visibility: hidden }";
25
21
 
26
22
  // Using global is OK since we have a single DOM
27
23
  // so storing nodes even for multiple Alloy instances is fine
28
- var styleNodes = {};
29
- var hideElements = exports.hideElements = function hideElements(prehidingSelector) {
24
+ const styleNodes = {};
25
+ const hideElements = prehidingSelector => {
30
26
  // if we have different events with the same
31
27
  // prehiding selector we don't want to recreate
32
28
  // the style tag
33
29
  if (styleNodes[prehidingSelector]) {
34
30
  return;
35
31
  }
36
- var nonce = (0, _index2.getNonce)();
37
- var attrs = _objectSpread({}, nonce && {
38
- nonce: nonce
39
- });
40
- var props = {
32
+ const nonce = (0, _index2.getNonce)();
33
+ const attrs = {
34
+ ...(nonce && {
35
+ nonce
36
+ })
37
+ };
38
+ const props = {
41
39
  textContent: prehidingSelector + " " + HIDING_STYLE_DEFINITION
42
40
  };
43
- var node = (0, _index.createNode)(_tagName.STYLE, attrs, props);
41
+ const node = (0, _index.createNode)(_tagName.STYLE, attrs, props);
44
42
  (0, _index.appendNode)(document.head, node);
45
43
  styleNodes[prehidingSelector] = node;
46
44
  };
47
- var showElements = exports.showElements = function showElements(prehidingSelector) {
48
- var node = styleNodes[prehidingSelector];
45
+ exports.hideElements = hideElements;
46
+ const showElements = prehidingSelector => {
47
+ const node = styleNodes[prehidingSelector];
49
48
  if (node) {
50
49
  (0, _index.removeNode)(node);
51
50
  delete styleNodes[prehidingSelector];
52
51
  }
53
52
  };
54
- var hideContainers = exports.hideContainers = function hideContainers(prehidingStyle) {
55
- if (!prehidingStyle) {
56
- return;
57
- }
53
+ exports.showElements = showElements;
54
+ const createHideContainers = logger => {
55
+ return prehidingStyle => {
56
+ if (!prehidingStyle) {
57
+ return;
58
+ }
58
59
 
59
- // If containers prehiding style has been added
60
- // by customer's prehiding snippet we don't
61
- // want to add the same node
62
- var node = (0, _index2.getElementById)(PREHIDING_ID);
63
- if (node) {
64
- return;
65
- }
66
- var nonce = (0, _index2.getNonce)();
67
- var attrs = _objectSpread({
68
- id: PREHIDING_ID
69
- }, nonce && {
70
- nonce: nonce
71
- });
72
- var props = {
73
- textContent: prehidingStyle
60
+ // If containers prehiding style has been added
61
+ // by customer's prehiding snippet we don't
62
+ // want to add the same node
63
+ const node = (0, _index2.getElementById)(PREHIDING_ID);
64
+ if (node) {
65
+ return;
66
+ }
67
+ const nonce = (0, _index2.getNonce)();
68
+ const attrs = {
69
+ id: PREHIDING_ID,
70
+ ...(nonce && {
71
+ nonce
72
+ })
73
+ };
74
+ const props = {
75
+ textContent: prehidingStyle
76
+ };
77
+ const styleNode = (0, _index.createNode)(_tagName.STYLE, attrs, props);
78
+ logger.logOnContentHiding({
79
+ status: "hide-containers",
80
+ message: "Prehiding style applied to hide containers.",
81
+ logLevel: "info"
82
+ });
83
+ (0, _index.appendNode)(document.head, styleNode);
74
84
  };
75
- var styleNode = (0, _index.createNode)(_tagName.STYLE, attrs, props);
76
- (0, _index.appendNode)(document.head, styleNode);
77
85
  };
78
- var showContainers = exports.showContainers = function showContainers() {
79
- // If containers prehiding style exists
80
- // we will remove it
81
- var node = (0, _index2.getElementById)(PREHIDING_ID);
82
- if (!node) {
83
- return;
84
- }
85
- (0, _index.removeNode)(node);
86
- };
86
+ exports.createHideContainers = createHideContainers;
87
+ const createShowContainers = logger => {
88
+ return () => {
89
+ // If containers prehiding style exists
90
+ // we will remove it
91
+ const node = (0, _index2.getElementById)(PREHIDING_ID);
92
+ if (!node) {
93
+ return;
94
+ }
95
+ logger.logOnContentHiding({
96
+ status: "show-containers",
97
+ message: "Prehiding style removed to show containers.",
98
+ logLevel: "info"
99
+ });
100
+ (0, _index.removeNode)(node);
101
+ };
102
+ };
103
+ exports.createShowContainers = createShowContainers;
@@ -17,11 +17,11 @@ OF ANY KIND, either express or implied. See the License for the specific languag
17
17
  governing permissions and limitations under the License.
18
18
  */
19
19
 
20
- var INTERACT_ID_DATA_ATTRIBUTE = exports.INTERACT_ID_DATA_ATTRIBUTE = "data-aep-interact-id";
21
- var CLICK_LABEL_DATA_ATTRIBUTE = exports.CLICK_LABEL_DATA_ATTRIBUTE = "data-aep-click-label";
22
- var CLICK_TOKEN_DATA_ATTRIBUTE = exports.CLICK_TOKEN_DATA_ATTRIBUTE = "data-aep-click-token";
23
- var lastInteractId = 0;
24
- var getInteractId = function getInteractId(propositionId, existingInteractId) {
20
+ const INTERACT_ID_DATA_ATTRIBUTE = exports.INTERACT_ID_DATA_ATTRIBUTE = "data-aep-interact-id";
21
+ const CLICK_LABEL_DATA_ATTRIBUTE = exports.CLICK_LABEL_DATA_ATTRIBUTE = "data-aep-click-label";
22
+ const CLICK_TOKEN_DATA_ATTRIBUTE = exports.CLICK_TOKEN_DATA_ATTRIBUTE = "data-aep-click-token";
23
+ let lastInteractId = 0;
24
+ const getInteractId = (propositionId, existingInteractId) => {
25
25
  if (existingInteractId) {
26
26
  return parseInt(existingInteractId, 10);
27
27
  }
@@ -29,27 +29,30 @@ var getInteractId = function getInteractId(propositionId, existingInteractId) {
29
29
  // eslint-disable-next-line no-plusplus
30
30
  return ++lastInteractId;
31
31
  };
32
- var interactionTrackingSupported = function interactionTrackingSupported(autoCollectPropositionInteractions, decisionProvider) {
32
+ const interactionTrackingSupported = (autoCollectPropositionInteractions, decisionProvider) => {
33
33
  if (!autoCollectPropositionInteractions) {
34
34
  return false;
35
35
  }
36
36
  if (!autoCollectPropositionInteractions[decisionProvider]) {
37
37
  return false;
38
38
  }
39
- return (0, _index2.includes)([_propositionInteractionType.ALWAYS, _propositionInteractionType.DECORATED_ELEMENTS_ONLY], autoCollectPropositionInteractions[decisionProvider]);
39
+ return [_propositionInteractionType.ALWAYS, _propositionInteractionType.DECORATED_ELEMENTS_ONLY].includes(autoCollectPropositionInteractions[decisionProvider]);
40
40
  };
41
- var createDecorateProposition = function createDecorateProposition(autoCollectPropositionInteractions, type, propositionId, itemId, trackingLabel, scopeType, notification, storeInteractionMeta) {
42
- var _notification$scopeDe = notification.scopeDetails,
43
- scopeDetails = _notification$scopeDe === void 0 ? {} : _notification$scopeDe;
44
- var decisionProvider = scopeDetails.decisionProvider;
41
+ const createDecorateProposition = (autoCollectPropositionInteractions, type, propositionId, itemId, trackingLabel, scopeType, notification, storeInteractionMeta) => {
42
+ const {
43
+ scopeDetails = {}
44
+ } = notification;
45
+ const {
46
+ decisionProvider
47
+ } = scopeDetails;
45
48
  if (!interactionTrackingSupported(autoCollectPropositionInteractions, decisionProvider) && type !== _initDomActionsModules.DOM_ACTION_CLICK) {
46
49
  return _index2.noop;
47
50
  }
48
- return function (element) {
51
+ return element => {
49
52
  if (!element.tagName) {
50
53
  return;
51
54
  }
52
- var interactId = getInteractId(propositionId, (0, _index.getAttribute)(element, INTERACT_ID_DATA_ATTRIBUTE));
55
+ const interactId = getInteractId(propositionId, (0, _index.getAttribute)(element, INTERACT_ID_DATA_ATTRIBUTE));
53
56
  storeInteractionMeta(propositionId, itemId, scopeType, notification, interactId);
54
57
  (0, _index.setAttribute)(element, INTERACT_ID_DATA_ATTRIBUTE, interactId);
55
58
  if (trackingLabel && !(0, _index.getAttribute)(element, CLICK_LABEL_DATA_ATTRIBUTE)) {