@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
@@ -3,12 +3,7 @@
3
3
  exports.default = void 0;
4
4
  var _createDecorateProposition = require("./createDecorateProposition.js");
5
5
  var _initDomActionsModules = require("../dom-actions/initDomActionsModules.js");
6
- 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); }
7
- 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; }
8
- 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; }
9
- 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; }
10
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
11
- 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); } /*
6
+ /*
12
7
  Copyright 2023 Adobe. All rights reserved.
13
8
  This file is licensed to you under the Apache License, Version 2.0 (the "License");
14
9
  you may not use this file except in compliance with the License. You may obtain a copy
@@ -19,57 +14,57 @@ the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTA
19
14
  OF ANY KIND, either express or implied. See the License for the specific language
20
15
  governing permissions and limitations under the License.
21
16
  */
22
- var _default = exports.default = function _default(_ref) {
23
- var modules = _ref.modules,
24
- logger = _ref.logger,
25
- storeInteractionMeta = _ref.storeInteractionMeta,
26
- storeClickMeta = _ref.storeClickMeta,
27
- autoCollectPropositionInteractions = _ref.autoCollectPropositionInteractions;
28
- return function (item) {
29
- var _ref2 = item.getData() || {},
30
- type = _ref2.type,
31
- selector = _ref2.selector;
32
- if (!type) {
33
- logger.warn("Invalid DOM action data: missing type.", item.getData());
17
+ var _default = ({
18
+ modules,
19
+ logger,
20
+ storeInteractionMeta,
21
+ storeClickMeta,
22
+ autoCollectPropositionInteractions
23
+ }) => item => {
24
+ const {
25
+ type,
26
+ selector
27
+ } = item.getData() || {};
28
+ if (!type) {
29
+ logger.warn("Invalid DOM action data: missing type.", item.getData());
30
+ return {
31
+ setRenderAttempted: false,
32
+ includeInNotification: false
33
+ };
34
+ }
35
+ if (type === _initDomActionsModules.DOM_ACTION_CLICK) {
36
+ if (!selector) {
37
+ logger.warn("Invalid DOM action data: missing selector.", item.getData());
34
38
  return {
35
39
  setRenderAttempted: false,
36
40
  includeInNotification: false
37
41
  };
38
42
  }
39
- if (type === _initDomActionsModules.DOM_ACTION_CLICK) {
40
- if (!selector) {
41
- logger.warn("Invalid DOM action data: missing selector.", item.getData());
42
- return {
43
- setRenderAttempted: false,
44
- includeInNotification: false
45
- };
43
+ storeClickMeta({
44
+ selector,
45
+ meta: {
46
+ ...item.getProposition().getNotification(),
47
+ trackingLabel: item.getTrackingLabel(),
48
+ scopeType: item.getProposition().getScopeType()
46
49
  }
47
- storeClickMeta({
48
- selector: selector,
49
- meta: _objectSpread(_objectSpread({}, item.getProposition().getNotification()), {}, {
50
- trackingLabel: item.getTrackingLabel(),
51
- scopeType: item.getProposition().getScopeType()
52
- })
53
- });
54
- return {
55
- setRenderAttempted: true,
56
- includeInNotification: false
57
- };
58
- }
59
- if (!modules[type]) {
60
- logger.warn("Invalid DOM action data: unknown type.", item.getData());
61
- return {
62
- setRenderAttempted: false,
63
- includeInNotification: false
64
- };
65
- }
66
- var decorateProposition = (0, _createDecorateProposition.default)(autoCollectPropositionInteractions, type, item.getProposition().getId(), item.getId(), item.getTrackingLabel(), item.getProposition().getScopeType(), item.getProposition().getNotification(), storeInteractionMeta);
50
+ });
67
51
  return {
68
- render: function render() {
69
- return modules[type](item.getData(), decorateProposition);
70
- },
71
52
  setRenderAttempted: true,
72
- includeInNotification: true
53
+ includeInNotification: false
54
+ };
55
+ }
56
+ if (!modules[type]) {
57
+ logger.warn("Invalid DOM action data: unknown type.", item.getData());
58
+ return {
59
+ setRenderAttempted: false,
60
+ includeInNotification: false
73
61
  };
62
+ }
63
+ const decorateProposition = (0, _createDecorateProposition.default)(autoCollectPropositionInteractions, type, item.getProposition().getId(), item.getId(), item.getTrackingLabel(), item.getProposition().getScopeType(), item.getProposition().getNotification(), storeInteractionMeta);
64
+ return {
65
+ render: () => modules[type](item.getData(), decorateProposition),
66
+ setRenderAttempted: true,
67
+ includeInNotification: true
74
68
  };
75
- };
69
+ };
70
+ exports.default = _default;
@@ -13,35 +13,36 @@ 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(_ref) {
17
- var modules = _ref.modules,
18
- logger = _ref.logger,
19
- storeInteractionMeta = _ref.storeInteractionMeta,
20
- autoCollectPropositionInteractions = _ref.autoCollectPropositionInteractions;
21
- return function (item) {
22
- var _ref2 = item.getData() || {},
23
- type = _ref2.type,
24
- selector = _ref2.selector;
25
- if (!selector || !type) {
26
- return {
27
- setRenderAttempted: false,
28
- includeInNotification: false
29
- };
30
- }
31
- if (!modules[type]) {
32
- logger.warn("Invalid HTML content data", item.getData());
33
- return {
34
- setRenderAttempted: false,
35
- includeInNotification: false
36
- };
37
- }
38
- var decorateProposition = (0, _createDecorateProposition.default)(autoCollectPropositionInteractions, type, item.getProposition().getId(), item.getId(), item.getTrackingLabel(), item.getProposition().getScopeType(), item.getProposition().getNotification(), storeInteractionMeta);
16
+ var _default = ({
17
+ modules,
18
+ logger,
19
+ storeInteractionMeta,
20
+ autoCollectPropositionInteractions
21
+ }) => item => {
22
+ const {
23
+ type,
24
+ selector
25
+ } = item.getData() || {};
26
+ if (!selector || !type) {
39
27
  return {
40
- render: function render() {
41
- return modules[type](item.getData(), decorateProposition);
42
- },
43
- setRenderAttempted: true,
44
- includeInNotification: true
28
+ setRenderAttempted: false,
29
+ includeInNotification: false
45
30
  };
31
+ }
32
+ if (!modules[type]) {
33
+ logger.warn("Invalid HTML content data", item.getData());
34
+ return {
35
+ setRenderAttempted: false,
36
+ includeInNotification: false
37
+ };
38
+ }
39
+ const decorateProposition = (0, _createDecorateProposition.default)(autoCollectPropositionInteractions, type, item.getProposition().getId(), item.getId(), item.getTrackingLabel(), item.getProposition().getScopeType(), item.getProposition().getNotification(), storeInteractionMeta);
40
+ return {
41
+ render: () => {
42
+ return modules[type](item.getData(), decorateProposition);
43
+ },
44
+ setRenderAttempted: true,
45
+ includeInNotification: true
46
46
  };
47
- };
47
+ };
48
+ exports.default = _default;
@@ -2,12 +2,7 @@
2
2
 
3
3
  exports.default = void 0;
4
4
  var _contentType = require("../../../constants/contentType.js");
5
- 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); }
6
- 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; }
7
- 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; }
8
- 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; }
9
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
10
- 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); } /*
5
+ /*
11
6
  Copyright 2023 Adobe. All rights reserved.
12
7
  This file is licensed to you under the Apache License, Version 2.0 (the "License");
13
8
  you may not use this file except in compliance with the License. You may obtain a copy
@@ -18,42 +13,49 @@ the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTA
18
13
  OF ANY KIND, either express or implied. See the License for the specific language
19
14
  governing permissions and limitations under the License.
20
15
  */
21
- var DEFAULT_CONTENT = "defaultContent";
22
- var expectedProps = ["content", "contentType"];
23
- var expectedContentProps = ["mobileParameters", "webParameters", "html"];
24
- var isValidInAppMessage = function isValidInAppMessage(data, logger) {
25
- for (var i = 0; i < expectedProps.length; i += 1) {
26
- var prop = expectedProps[i];
16
+
17
+ const DEFAULT_CONTENT = "defaultContent";
18
+ const expectedProps = ["content", "contentType"];
19
+ const expectedContentProps = ["mobileParameters", "webParameters", "html"];
20
+ const isValidInAppMessage = (data, logger) => {
21
+ for (let i = 0; i < expectedProps.length; i += 1) {
22
+ const prop = expectedProps[i];
27
23
  if (!Object.prototype.hasOwnProperty.call(data, prop)) {
28
24
  logger.warn("Invalid in-app message data: missing property '" + prop + "'.", data);
29
25
  return false;
30
26
  }
31
27
  }
32
- var content = data.content,
33
- contentType = data.contentType;
28
+ const {
29
+ content,
30
+ contentType
31
+ } = data;
34
32
  if (contentType === _contentType.APPLICATION_JSON) {
35
- for (var _i = 0; _i < expectedContentProps.length; _i += 1) {
36
- var _prop = expectedContentProps[_i];
37
- if (!Object.prototype.hasOwnProperty.call(content, _prop)) {
38
- logger.warn("Invalid in-app message data.content: missing property '" + _prop + "'.", data);
33
+ for (let i = 0; i < expectedContentProps.length; i += 1) {
34
+ const prop = expectedContentProps[i];
35
+ if (!Object.prototype.hasOwnProperty.call(content, prop)) {
36
+ logger.warn("Invalid in-app message data.content: missing property '" + prop + "'.", data);
39
37
  return false;
40
38
  }
41
39
  }
42
40
  }
43
41
  return true;
44
42
  };
45
- var _default = exports.default = function _default(_ref) {
46
- var modules = _ref.modules,
47
- logger = _ref.logger;
48
- return function (item) {
49
- var data = item.getData();
50
- var meta = _objectSpread({}, item.getProposition().getNotification());
43
+ var _default = ({
44
+ modules,
45
+ logger
46
+ }) => {
47
+ return item => {
48
+ const data = item.getData();
49
+ const meta = {
50
+ ...item.getProposition().getNotification()
51
+ };
51
52
  if (!data) {
52
53
  logger.warn("Invalid in-app message data: undefined.", data);
53
54
  return {};
54
55
  }
55
- var _data$type = data.type,
56
- type = _data$type === void 0 ? DEFAULT_CONTENT : _data$type;
56
+ const {
57
+ type = DEFAULT_CONTENT
58
+ } = data;
57
59
  if (!modules[type]) {
58
60
  logger.warn("Invalid in-app message data: unknown type.", data);
59
61
  return {};
@@ -66,13 +68,15 @@ var _default = exports.default = function _default(_ref) {
66
68
  return {};
67
69
  }
68
70
  return {
69
- render: function render() {
70
- return modules[type](_objectSpread(_objectSpread({}, data), {}, {
71
- meta: meta
72
- }));
71
+ render: () => {
72
+ return modules[type]({
73
+ ...data,
74
+ meta
75
+ });
73
76
  },
74
77
  setRenderAttempted: true,
75
78
  includeInNotification: true
76
79
  };
77
80
  };
78
- };
81
+ };
82
+ exports.default = _default;
@@ -1,12 +1,7 @@
1
1
  "use strict";
2
2
 
3
3
  exports.default = void 0;
4
- function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
5
- 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."); }
6
- function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
7
- function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
8
- function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }
9
- function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
4
+ var _index = require("../../../utils/index.js");
10
5
  /*
11
6
  Copyright 2023 Adobe. All rights reserved.
12
7
  This file is licensed to you under the Apache License, Version 2.0 (the "License");
@@ -18,72 +13,78 @@ the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTA
18
13
  OF ANY KIND, either express or implied. See the License for the specific language
19
14
  governing permissions and limitations under the License.
20
15
  */
21
- var _default = exports.default = function _default(_ref) {
22
- var schemaProcessors = _ref.schemaProcessors,
23
- logger = _ref.logger;
24
- var wrapRenderWithLogging = function wrapRenderWithLogging(render, item) {
25
- return function () {
26
- return Promise.resolve().then(render).then(function () {
27
- if (logger.enabled) {
28
- logger.info("Action " + item.toString() + " executed.");
29
- }
30
- return true;
31
- }).catch(function (error) {
32
- if (logger.enabled) {
33
- var message = error.message,
34
- stack = error.stack;
35
- var warning = "Failed to execute action " + item.toString() + ". " + message + " " + stack;
36
- logger.warn(warning);
37
- }
38
- return false;
39
- });
40
- };
41
- };
42
- var renderItems = function renderItems(renderers, meta) {
43
- return Promise.all(renderers.map(function (renderer) {
44
- return renderer();
45
- })).then(function (successes) {
46
- // as long as at least one renderer succeeds, we want to add the notification
47
- // to the display notifications
48
- if (!successes.includes(true)) {
49
- return undefined;
16
+ var _default = ({
17
+ schemaProcessors,
18
+ logger
19
+ }) => {
20
+ const wrapRenderWithLogging = (render, item) => () => {
21
+ return Promise.resolve().then(render).then(() => {
22
+ if (logger.enabled) {
23
+ logger.info("Action " + item.toString() + " executed.");
50
24
  }
51
- return meta;
25
+ return true;
26
+ }).catch(error => {
27
+ const {
28
+ message,
29
+ stack
30
+ } = error;
31
+ const warning = "Failed to execute action " + item.toString() + ". " + message + " " + stack;
32
+ logger.logOnContentRendering({
33
+ status: "rendering-failed",
34
+ detail: {
35
+ propositionDetails: item.getProposition().getNotification(),
36
+ item: item.toJSON()
37
+ },
38
+ error,
39
+ message: warning,
40
+ logLevel: "warn"
41
+ });
42
+ return false;
52
43
  });
53
44
  };
54
- var processItem = function processItem(item) {
55
- var processor = schemaProcessors[item.getSchema()];
45
+ const renderItems = (renderers, meta) => Promise.all(renderers.map(renderer => renderer())).then(successes => {
46
+ // as long as at least one renderer succeeds, we want to add the notification
47
+ // to the display notifications
48
+ if (!successes.includes(true)) {
49
+ return undefined;
50
+ }
51
+ return meta;
52
+ });
53
+ const processItem = item => {
54
+ const processor = schemaProcessors[item.getSchema()];
56
55
  if (!processor) {
57
56
  return {};
58
57
  }
59
58
  return processor(item);
60
59
  };
61
- var processItems = function processItems(_ref2) {
62
- var existingRenderers = _ref2.renderers,
63
- existingReturnedPropositions = _ref2.returnedPropositions,
64
- existingReturnedDecisions = _ref2.returnedDecisions,
65
- items = _ref2.items,
66
- proposition = _ref2.proposition;
67
- var renderers = _toConsumableArray(existingRenderers);
68
- var returnedPropositions = _toConsumableArray(existingReturnedPropositions);
69
- var returnedDecisions = _toConsumableArray(existingReturnedDecisions);
70
- var renderedItems = [];
71
- var nonRenderedItems = [];
72
- var itemRenderers = [];
73
- var atLeastOneWithNotification = false;
74
- var render;
75
- var setRenderAttempted;
76
- var includeInNotification;
77
- var onlyRenderThis = false;
78
- var i = 0;
79
- var item;
60
+ const processItems = ({
61
+ renderers: existingRenderers,
62
+ returnedPropositions: existingReturnedPropositions,
63
+ returnedDecisions: existingReturnedDecisions,
64
+ items,
65
+ proposition
66
+ }) => {
67
+ let renderers = [...existingRenderers];
68
+ let returnedPropositions = [...existingReturnedPropositions];
69
+ let returnedDecisions = [...existingReturnedDecisions];
70
+ let renderedItems = [];
71
+ let nonRenderedItems = [];
72
+ let itemRenderers = [];
73
+ let atLeastOneWithNotification = false;
74
+ let render;
75
+ let setRenderAttempted;
76
+ let includeInNotification;
77
+ let onlyRenderThis = false;
78
+ let i = 0;
79
+ let item;
80
80
  while (items.length > i) {
81
81
  item = items[i];
82
- var _processItem = processItem(item);
83
- render = _processItem.render;
84
- setRenderAttempted = _processItem.setRenderAttempted;
85
- includeInNotification = _processItem.includeInNotification;
86
- onlyRenderThis = _processItem.onlyRenderThis;
82
+ ({
83
+ render,
84
+ setRenderAttempted,
85
+ includeInNotification,
86
+ onlyRenderThis
87
+ } = processItem(item));
87
88
  if (onlyRenderThis) {
88
89
  returnedPropositions = [];
89
90
  returnedDecisions = [];
@@ -113,14 +114,10 @@ var _default = exports.default = function _default(_ref) {
113
114
  i += 1;
114
115
  }
115
116
  if (itemRenderers.length > 0) {
116
- var meta = atLeastOneWithNotification ? proposition.getNotification() : undefined;
117
- renderers.push(function () {
118
- return renderItems(itemRenderers, meta);
119
- });
117
+ const meta = atLeastOneWithNotification ? proposition.getNotification() : undefined;
118
+ renderers.push(() => renderItems(itemRenderers, meta));
120
119
  } else if (atLeastOneWithNotification) {
121
- renderers.push(function () {
122
- return Promise.resolve(proposition.getNotification());
123
- });
120
+ renderers.push(() => Promise.resolve(proposition.getNotification()));
124
121
  }
125
122
  if (renderedItems.length > 0) {
126
123
  proposition.addToReturnValues(returnedPropositions, returnedDecisions, renderedItems, true);
@@ -129,35 +126,35 @@ var _default = exports.default = function _default(_ref) {
129
126
  proposition.addToReturnValues(returnedPropositions, returnedDecisions, nonRenderedItems, false);
130
127
  }
131
128
  return {
132
- renderers: renderers,
133
- returnedPropositions: returnedPropositions,
134
- returnedDecisions: returnedDecisions,
135
- onlyRenderThis: onlyRenderThis
129
+ renderers,
130
+ returnedPropositions,
131
+ returnedDecisions,
132
+ onlyRenderThis
136
133
  };
137
134
  };
138
- return function (renderPropositions) {
139
- var nonRenderPropositions = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
140
- var renderers = [];
141
- var returnedPropositions = [];
142
- var returnedDecisions = [];
143
- var onlyRenderThis;
144
- var i = 0;
145
- var proposition;
146
- var items;
135
+ return (renderPropositions, nonRenderPropositions = []) => {
136
+ let renderers = [];
137
+ let returnedPropositions = [];
138
+ let returnedDecisions = [];
139
+ let onlyRenderThis;
140
+ let i = 0;
141
+ let proposition;
142
+ let items;
147
143
  while (renderPropositions.length > i) {
148
144
  proposition = renderPropositions[i];
149
145
  items = proposition.getItems();
150
- var _processItems = processItems({
151
- renderers: renderers,
152
- returnedPropositions: returnedPropositions,
153
- returnedDecisions: returnedDecisions,
154
- items: items,
155
- proposition: proposition
156
- });
157
- renderers = _processItems.renderers;
158
- returnedPropositions = _processItems.returnedPropositions;
159
- returnedDecisions = _processItems.returnedDecisions;
160
- onlyRenderThis = _processItems.onlyRenderThis;
146
+ ({
147
+ renderers,
148
+ returnedPropositions,
149
+ returnedDecisions,
150
+ onlyRenderThis
151
+ } = processItems({
152
+ renderers,
153
+ returnedPropositions,
154
+ returnedDecisions,
155
+ items,
156
+ proposition
157
+ }));
161
158
  if (onlyRenderThis) {
162
159
  break;
163
160
  }
@@ -167,28 +164,35 @@ var _default = exports.default = function _default(_ref) {
167
164
  // if onlyRenderThis is true, that means returnedPropositions and returnedDecisions
168
165
  // only contains the proposition that triggered only rendering this. We need to
169
166
  // add the other propositions to the returnedPropositions and returnedDecisions.
170
- renderPropositions.forEach(function (p, index) {
167
+ renderPropositions.forEach((p, index) => {
171
168
  if (index !== i) {
172
169
  p.addToReturnValues(returnedPropositions, returnedDecisions, p.getItems(), false);
173
170
  }
174
171
  });
175
172
  }
176
- nonRenderPropositions.forEach(function (p) {
173
+ nonRenderPropositions.forEach(p => {
177
174
  p.addToReturnValues(returnedPropositions, returnedDecisions, p.getItems(), false);
178
175
  });
179
- var render = function render() {
180
- return Promise.all(renderers.map(function (renderer) {
181
- return renderer();
182
- })).then(function (metas) {
183
- return metas.filter(function (meta) {
184
- return meta;
176
+ const render = () => {
177
+ return Promise.all(renderers.map(renderer => renderer())).then(metas => {
178
+ const renderedPropositions = metas.filter(meta => meta);
179
+ const propsByScope = (0, _index.groupBy)(renderedPropositions, p => p.scope);
180
+ logger.logOnContentRendering({
181
+ status: "rendering-succeeded",
182
+ detail: {
183
+ ...propsByScope
184
+ },
185
+ message: "Scopes: " + propsByScope + " successfully executed.",
186
+ logLevel: "info"
185
187
  });
188
+ return renderedPropositions;
186
189
  });
187
190
  };
188
191
  return {
189
- returnedPropositions: returnedPropositions,
190
- returnedDecisions: returnedDecisions,
191
- render: render
192
+ returnedPropositions,
193
+ returnedDecisions,
194
+ render
192
195
  };
193
196
  };
194
- };
197
+ };
198
+ exports.default = _default;
@@ -12,33 +12,43 @@ 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(_ref) {
16
- var logger = _ref.logger,
17
- executeRedirect = _ref.executeRedirect,
18
- collect = _ref.collect;
19
- return function (item) {
20
- var _ref2 = item.getData() || {},
21
- content = _ref2.content;
22
- if (!content) {
23
- logger.warn("Invalid Redirect data", item.getData());
24
- return {};
25
- }
26
- var render = function render() {
27
- return collect({
28
- decisionsMeta: [item.getProposition().getNotification()],
29
- documentMayUnload: true
30
- }).then(function () {
31
- return executeRedirect(content);
32
- // Execute redirect will never resolve. If there are bottom of page events that are waiting
33
- // for display notifications from this request, they will never run because this promise will
34
- // not resolve. This is intentional because we don't want to run bottom of page events if
35
- // there is a redirect.
15
+ var _default = ({
16
+ logger,
17
+ executeRedirect,
18
+ collect
19
+ }) => item => {
20
+ const {
21
+ content
22
+ } = item.getData() || {};
23
+ if (!content) {
24
+ logger.warn("Invalid Redirect data", item.getData());
25
+ return {};
26
+ }
27
+ const render = () => {
28
+ return collect({
29
+ decisionsMeta: [item.getProposition().getNotification()],
30
+ documentMayUnload: true
31
+ }).then(() => {
32
+ logger.logOnContentRendering({
33
+ status: "rendering-redirect",
34
+ detail: {
35
+ propositionDetails: item.getProposition().getNotification(),
36
+ redirect: content
37
+ },
38
+ message: "Redirect action " + item.toString() + " executed.",
39
+ logLevel: "info"
36
40
  });
37
- };
38
- return {
39
- render: render,
40
- setRenderAttempted: true,
41
- onlyRenderThis: true
42
- };
41
+ return executeRedirect(content);
42
+ // Execute redirect will never resolve. If there are bottom of page events that are waiting
43
+ // for display notifications from this request, they will never run because this promise will
44
+ // not resolve. This is intentional because we don't want to run bottom of page events if
45
+ // there is a redirect.
46
+ });
43
47
  };
44
- };
48
+ return {
49
+ render,
50
+ setRenderAttempted: true,
51
+ onlyRenderThis: true
52
+ };
53
+ };
54
+ exports.default = _default;