@adobe/alloy 2.20.0-alpha.0 → 2.20.0-beta.0

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 (395) hide show
  1. package/libEs5/baseCode/index.js +2 -3
  2. package/libEs5/components/ActivityCollector/attachClickActivityCollector.js +2 -3
  3. package/libEs5/components/ActivityCollector/configValidators.js +3 -5
  4. package/libEs5/components/ActivityCollector/createGetLinkDetails.js +2 -3
  5. package/libEs5/components/ActivityCollector/createLinkClick.js +2 -3
  6. package/libEs5/components/ActivityCollector/getLinkName.js +2 -3
  7. package/libEs5/components/ActivityCollector/getLinkRegion.js +2 -3
  8. package/libEs5/components/ActivityCollector/index.js +1 -2
  9. package/libEs5/components/ActivityCollector/utils.js +11 -21
  10. package/libEs5/components/Audiences/index.js +1 -2
  11. package/libEs5/components/Audiences/injectProcessDestinations.js +18 -16
  12. package/libEs5/components/Audiences/injectProcessResponse.js +2 -3
  13. package/libEs5/components/Context/createComponent.js +2 -3
  14. package/libEs5/components/Context/implementationDetails.js +2 -3
  15. package/libEs5/components/Context/index.js +17 -15
  16. package/libEs5/components/Context/injectDevice.js +2 -3
  17. package/libEs5/components/Context/injectEnvironment.js +6 -7
  18. package/libEs5/components/Context/injectHighEntropyUserAgentHints.js +15 -16
  19. package/libEs5/components/Context/injectPlaceContext.js +2 -3
  20. package/libEs5/components/Context/injectTimestamp.js +2 -3
  21. package/libEs5/components/Context/injectWeb.js +2 -3
  22. package/libEs5/components/DataCollector/index.js +1 -2
  23. package/libEs5/components/DataCollector/validateApplyResponse.js +2 -3
  24. package/libEs5/components/DataCollector/validateUserEventOptions.js +2 -3
  25. package/libEs5/components/DecisioningEngine/consequenceAdapters/inAppMessageConsequenceAdapter.js +2 -3
  26. package/libEs5/components/DecisioningEngine/consequenceAdapters/schemaTypeConsequenceAdapter.js +2 -3
  27. package/libEs5/components/DecisioningEngine/constants.js +4 -7
  28. package/libEs5/components/DecisioningEngine/createApplyResponse.js +2 -3
  29. package/libEs5/components/DecisioningEngine/createConsequenceAdapter.js +17 -16
  30. package/libEs5/components/DecisioningEngine/createContextProvider.js +18 -16
  31. package/libEs5/components/DecisioningEngine/createDecisionHistory.js +2 -3
  32. package/libEs5/components/DecisioningEngine/createDecisionProvider.js +2 -3
  33. package/libEs5/components/DecisioningEngine/createEvaluableRulesetPayload.js +18 -16
  34. package/libEs5/components/DecisioningEngine/createEvaluateRulesetsCommand.js +2 -3
  35. package/libEs5/components/DecisioningEngine/createEventRegistry.js +20 -20
  36. package/libEs5/components/DecisioningEngine/createOnResponseHandler.js +18 -16
  37. package/libEs5/components/DecisioningEngine/createSubscribeRulesetItems.js +18 -16
  38. package/libEs5/components/DecisioningEngine/index.js +19 -19
  39. package/libEs5/components/DecisioningEngine/utils.js +10 -18
  40. package/libEs5/components/EventMerge/createComponent.js +2 -3
  41. package/libEs5/components/EventMerge/createEventMergeId.js +2 -3
  42. package/libEs5/components/EventMerge/index.js +1 -2
  43. package/libEs5/components/Identity/addEcidQueryToPayload.js +2 -3
  44. package/libEs5/components/Identity/addEcidToPayload.js +2 -3
  45. package/libEs5/components/Identity/appendIdentityToUrl/appendIdentityToUrlOptionsValidator.js +2 -3
  46. package/libEs5/components/Identity/appendIdentityToUrl/injectAppendIdentityToUrl.js +4 -5
  47. package/libEs5/components/Identity/configValidators.js +1 -2
  48. package/libEs5/components/Identity/constants/authState.js +3 -6
  49. package/libEs5/components/Identity/constants/defaultIdSyncTtlMinutes.js +1 -2
  50. package/libEs5/components/Identity/createComponent.js +2 -3
  51. package/libEs5/components/Identity/createLegacyIdentity.js +8 -6
  52. package/libEs5/components/Identity/getEcidFromResponse.js +2 -3
  53. package/libEs5/components/Identity/getIdentity/createGetIdentity.js +2 -3
  54. package/libEs5/components/Identity/getIdentity/createIdentityRequest.js +2 -3
  55. package/libEs5/components/Identity/getIdentity/createIdentityRequestPayload.js +2 -3
  56. package/libEs5/components/Identity/getIdentity/getIdentityOptionsValidator.js +2 -3
  57. package/libEs5/components/Identity/index.js +3 -3
  58. package/libEs5/components/Identity/injectAddLegacyEcidToPayload.js +2 -3
  59. package/libEs5/components/Identity/injectAddQueryStringIdentityToPayload.js +18 -15
  60. package/libEs5/components/Identity/injectAwaitIdentityCookie.js +9 -14
  61. package/libEs5/components/Identity/injectEnsureSingleIdentity.js +8 -6
  62. package/libEs5/components/Identity/injectHandleResponseForIdSyncs.js +2 -3
  63. package/libEs5/components/Identity/injectProcessIdSyncs.js +2 -3
  64. package/libEs5/components/Identity/injectSetDomainForInitialIdentityPayload.js +2 -3
  65. package/libEs5/components/Identity/visitorService/awaitVisitorOptIn.js +2 -3
  66. package/libEs5/components/Identity/visitorService/getVisitor.js +2 -3
  67. package/libEs5/components/Identity/visitorService/injectGetEcidFromVisitor.js +2 -3
  68. package/libEs5/components/LegacyMediaAnalytics/{media → constants}/constants.js +15 -25
  69. package/libEs5/components/LegacyMediaAnalytics/{media → constants}/mediaKeysToXdmConverter.js +3 -5
  70. package/libEs5/components/LegacyMediaAnalytics/createGetInstance.js +246 -0
  71. package/libEs5/components/LegacyMediaAnalytics/createLegacyMediaComponent.js +87 -0
  72. package/libEs5/components/LegacyMediaAnalytics/createMediaHelper.js +157 -158
  73. package/libEs5/components/LegacyMediaAnalytics/index.js +43 -20
  74. package/libEs5/components/LibraryInfo/index.js +21 -17
  75. package/libEs5/components/MachineLearning/index.js +1 -2
  76. package/libEs5/components/MachineLearning/processResponse.js +2 -3
  77. package/libEs5/components/Personalization/constants/loggerMessage.js +2 -4
  78. package/libEs5/components/Personalization/constants/scopeType.js +3 -6
  79. package/libEs5/components/Personalization/constants/surface.js +4 -8
  80. package/libEs5/components/Personalization/createActionsProvider.js +2 -3
  81. package/libEs5/components/Personalization/createApplyPropositions.js +19 -17
  82. package/libEs5/components/Personalization/createClickStorage.js +8 -6
  83. package/libEs5/components/Personalization/createCollect.js +2 -3
  84. package/libEs5/components/Personalization/createComponent.js +7 -4
  85. package/libEs5/components/Personalization/createFetchDataHandler.js +28 -20
  86. package/libEs5/components/Personalization/createGetPageLocation.js +2 -3
  87. package/libEs5/{utils/debounce.js → components/Personalization/createHandleConsentFlicker.js} +13 -14
  88. package/libEs5/components/Personalization/createNotificationHandler.js +10 -5
  89. package/libEs5/components/Personalization/createOnClickHandler.js +2 -3
  90. package/libEs5/components/Personalization/createOnDecisionHandler.js +3 -4
  91. package/libEs5/components/Personalization/createPersonalizationDetails.js +13 -14
  92. package/libEs5/components/Personalization/createPreprocessors.js +16 -14
  93. package/libEs5/components/Personalization/createSetTargetMigration.js +2 -3
  94. package/libEs5/components/Personalization/createViewCacheManager.js +2 -3
  95. package/libEs5/components/Personalization/createViewChangeHandler.js +2 -3
  96. package/libEs5/components/Personalization/dom-actions/action.js +2 -3
  97. package/libEs5/components/Personalization/dom-actions/addNonceToInlineStyleElements.js +2 -3
  98. package/libEs5/components/Personalization/dom-actions/appendHtml.js +2 -3
  99. package/libEs5/components/Personalization/dom-actions/clicks/collectClicks.js +3 -4
  100. package/libEs5/components/Personalization/dom-actions/createPreprocess.js +2 -3
  101. package/libEs5/components/Personalization/dom-actions/createRedirect.js +2 -3
  102. package/libEs5/components/Personalization/dom-actions/dom/createFragment.js +2 -3
  103. package/libEs5/components/Personalization/dom-actions/dom/getAttribute.js +2 -3
  104. package/libEs5/components/Personalization/dom-actions/dom/getChildNodes.js +2 -3
  105. package/libEs5/components/Personalization/dom-actions/dom/getChildren.js +2 -3
  106. package/libEs5/components/Personalization/dom-actions/dom/getElementById.js +2 -3
  107. package/libEs5/components/Personalization/dom-actions/dom/getFirstChild.js +2 -3
  108. package/libEs5/components/Personalization/dom-actions/dom/getNextSibling.js +2 -3
  109. package/libEs5/components/Personalization/dom-actions/dom/getNonce.js +3 -5
  110. package/libEs5/components/Personalization/dom-actions/dom/getParent.js +2 -3
  111. package/libEs5/components/Personalization/dom-actions/dom/helperForEq.js +3 -5
  112. package/libEs5/components/Personalization/dom-actions/dom/insertAfter.js +2 -3
  113. package/libEs5/components/Personalization/dom-actions/dom/insertBefore.js +2 -3
  114. package/libEs5/components/Personalization/dom-actions/dom/matchesSelectorWithEq.js +2 -3
  115. package/libEs5/components/Personalization/dom-actions/dom/removeAttribute.js +2 -3
  116. package/libEs5/components/Personalization/dom-actions/dom/selectNodesWithEq.js +16 -19
  117. package/libEs5/components/Personalization/dom-actions/dom/setAttribute.js +2 -3
  118. package/libEs5/components/Personalization/dom-actions/dom/setStyle.js +2 -3
  119. package/libEs5/components/Personalization/dom-actions/images.js +4 -7
  120. package/libEs5/components/Personalization/dom-actions/initDomActionsModules.js +2 -3
  121. package/libEs5/components/Personalization/dom-actions/insertHtmlAfter.js +2 -3
  122. package/libEs5/components/Personalization/dom-actions/insertHtmlBefore.js +2 -3
  123. package/libEs5/components/Personalization/dom-actions/prependHtml.js +2 -3
  124. package/libEs5/components/Personalization/dom-actions/rearrangeChildren.js +2 -3
  125. package/libEs5/components/Personalization/dom-actions/remapCustomCodeOffers.js +2 -3
  126. package/libEs5/components/Personalization/dom-actions/remapHeadOffers.js +2 -3
  127. package/libEs5/components/Personalization/dom-actions/replaceHtml.js +2 -3
  128. package/libEs5/components/Personalization/dom-actions/scripts.js +22 -24
  129. package/libEs5/components/Personalization/dom-actions/setAttributes.js +2 -3
  130. package/libEs5/components/Personalization/dom-actions/setHtml.js +2 -3
  131. package/libEs5/components/Personalization/dom-actions/setStyles.js +2 -3
  132. package/libEs5/components/Personalization/dom-actions/setText.js +2 -3
  133. package/libEs5/components/Personalization/dom-actions/swapImage.js +2 -3
  134. package/libEs5/components/Personalization/event.js +19 -18
  135. package/libEs5/components/Personalization/flicker/index.js +21 -22
  136. package/libEs5/components/Personalization/handlers/createProcessDomAction.js +8 -6
  137. package/libEs5/components/Personalization/handlers/createProcessHtmlContent.js +2 -3
  138. package/libEs5/components/Personalization/handlers/createProcessInAppMessage.js +18 -16
  139. package/libEs5/components/Personalization/handlers/createProcessPropositions.js +3 -4
  140. package/libEs5/components/Personalization/handlers/createProcessRedirect.js +2 -4
  141. package/libEs5/components/Personalization/handlers/injectCreateProposition.js +24 -22
  142. package/libEs5/components/Personalization/handlers/processDefaultContent.js +2 -3
  143. package/libEs5/components/Personalization/in-app-message-actions/actions/displayIframeContent.js +25 -29
  144. package/libEs5/components/Personalization/in-app-message-actions/initInAppMessageActionsModules.js +2 -3
  145. package/libEs5/components/Personalization/in-app-message-actions/utils.js +3 -5
  146. package/libEs5/components/Personalization/index.js +31 -22
  147. package/libEs5/components/Personalization/utils/addRenderAttemptedToDecisions.js +2 -3
  148. package/libEs5/components/Personalization/utils/createAsyncArray.js +2 -3
  149. package/libEs5/components/Personalization/utils/isAuthoringModeEnabled.js +2 -3
  150. package/libEs5/components/Personalization/utils/surfaceUtils.js +4 -7
  151. package/libEs5/components/Personalization/validateApplyPropositionsOptions.js +3 -5
  152. package/libEs5/components/Privacy/computeConsentHash.js +13 -14
  153. package/libEs5/components/Privacy/createComponent.js +16 -14
  154. package/libEs5/components/Privacy/createConsentHashStore.js +2 -3
  155. package/libEs5/components/Privacy/createConsentRequest.js +2 -3
  156. package/libEs5/components/Privacy/createConsentRequestPayload.js +2 -3
  157. package/libEs5/components/Privacy/createStoredConsent.js +2 -3
  158. package/libEs5/components/Privacy/index.js +1 -2
  159. package/libEs5/components/Privacy/injectSendSetConsentRequest.js +2 -3
  160. package/libEs5/components/Privacy/parseConsentCookie.js +4 -5
  161. package/libEs5/components/Privacy/validateSetConsentOptions.js +2 -3
  162. package/libEs5/components/{MediaCollection/createMediaRequestPayload.js → StreamingMedia/configValidators.js} +11 -16
  163. package/libEs5/components/StreamingMedia/constants/eventTypes.js +34 -0
  164. package/libEs5/components/StreamingMedia/constants/playbackState.js +19 -0
  165. package/libEs5/components/{MediaCollection → StreamingMedia}/createMediaEventManager.js +46 -53
  166. package/libEs5/components/{MediaCollection → StreamingMedia}/createMediaRequest.js +2 -3
  167. package/libEs5/components/StreamingMedia/createMediaResponseHandler.js +57 -0
  168. package/libEs5/components/{MediaCollection → StreamingMedia}/createMediaSessionCacheManager.js +23 -27
  169. package/libEs5/components/StreamingMedia/createStreamingMediaComponent.js +72 -0
  170. package/libEs5/components/StreamingMedia/createTrackMediaEvent.js +90 -0
  171. package/libEs5/components/StreamingMedia/createTrackMediaSession.js +52 -0
  172. package/libEs5/components/StreamingMedia/index.js +69 -0
  173. package/libEs5/components/StreamingMedia/validateMediaEventOptions.js +40 -0
  174. package/libEs5/components/{MediaCollection → StreamingMedia}/validateMediaSessionOptions.js +3 -4
  175. package/libEs5/constants/apiVersion.js +1 -2
  176. package/libEs5/constants/browser.js +7 -14
  177. package/libEs5/constants/consentPurpose.js +1 -2
  178. package/libEs5/constants/consentStatus.js +3 -6
  179. package/libEs5/constants/contentType.js +2 -4
  180. package/libEs5/constants/cookieNameKey.js +3 -6
  181. package/libEs5/constants/cookieNamePrefix.js +1 -2
  182. package/libEs5/constants/coreCommands.js +2 -4
  183. package/libEs5/constants/debugQueryParam.js +1 -2
  184. package/libEs5/constants/decisionProvider.js +1 -2
  185. package/libEs5/constants/domain.js +2 -4
  186. package/libEs5/constants/ecidNamespace.js +1 -2
  187. package/libEs5/constants/edgeBasePath.js +1 -2
  188. package/libEs5/constants/elementAttribute.js +1 -2
  189. package/libEs5/constants/eventType.js +5 -10
  190. package/libEs5/constants/handle.js +1 -2
  191. package/libEs5/constants/highEntropyUserAgentClientHints.js +1 -2
  192. package/libEs5/constants/httpHeaderNames.js +2 -4
  193. package/libEs5/constants/httpStatusCode.js +5 -10
  194. package/libEs5/constants/identityMapAuthenticatedState.js +3 -6
  195. package/libEs5/constants/legacyCookies.js +3 -6
  196. package/libEs5/constants/libraryName.js +1 -2
  197. package/libEs5/constants/libraryVersion.js +1 -2
  198. package/libEs5/constants/namespace.js +1 -2
  199. package/libEs5/constants/pageWideScope.js +1 -2
  200. package/libEs5/constants/propositionEventType.js +20 -21
  201. package/libEs5/constants/queryStringIdentityParam.js +1 -2
  202. package/libEs5/constants/schema.js +10 -20
  203. package/libEs5/constants/shadowSeparator.js +1 -2
  204. package/libEs5/constants/tagName.js +7 -14
  205. package/libEs5/core/buildAndValidateConfig.js +19 -17
  206. package/libEs5/core/componentCreators.js +9 -4
  207. package/libEs5/core/config/createConfig.js +1 -2
  208. package/libEs5/core/config/createCoreConfigs.js +2 -3
  209. package/libEs5/core/consent/createConsent.js +5 -3
  210. package/libEs5/core/consent/createConsentStateMachine.js +41 -13
  211. package/libEs5/core/createComponentRegistry.js +5 -3
  212. package/libEs5/core/createCookieTransfer.js +2 -3
  213. package/libEs5/core/createEvent.js +13 -14
  214. package/libEs5/core/createEventManager.js +8 -6
  215. package/libEs5/core/createInstanceFunction.js +2 -3
  216. package/libEs5/core/createLifecycle.js +2 -3
  217. package/libEs5/core/createLogController.js +2 -3
  218. package/libEs5/core/createLogger.js +2 -3
  219. package/libEs5/core/edgeNetwork/handleRequestFailure.js +2 -3
  220. package/libEs5/core/edgeNetwork/injectApplyResponse.js +2 -3
  221. package/libEs5/core/edgeNetwork/injectExtractEdgeInfo.js +2 -3
  222. package/libEs5/core/edgeNetwork/injectGetLocationHint.js +2 -3
  223. package/libEs5/core/edgeNetwork/injectProcessWarningsAndErrors.js +2 -3
  224. package/libEs5/core/edgeNetwork/injectSendEdgeNetworkRequest.js +2 -3
  225. package/libEs5/core/edgeNetwork/mergeLifecycleResponses.js +13 -14
  226. package/libEs5/core/index.js +3 -5
  227. package/libEs5/core/initializeComponents.js +2 -3
  228. package/libEs5/core/injectCreateResponse.js +2 -3
  229. package/libEs5/core/injectExecuteCommand.js +2 -3
  230. package/libEs5/core/injectHandleError.js +2 -3
  231. package/libEs5/core/injectShouldTransferCookie.js +2 -3
  232. package/libEs5/core/network/getRequestRetryDelay.js +2 -3
  233. package/libEs5/core/network/injectSendNetworkRequest.js +18 -16
  234. package/libEs5/core/network/isRequestRetryable.js +2 -3
  235. package/libEs5/core/network/requestMethods/injectSendBeaconRequest.js +2 -3
  236. package/libEs5/core/network/requestMethods/injectSendFetchRequest.js +2 -3
  237. package/libEs5/core/network/requestMethods/injectSendXhrRequest.js +2 -3
  238. package/libEs5/core/validateCommandOptions.js +2 -3
  239. package/libEs5/index.js +2 -3
  240. package/libEs5/utils/areThirdPartyCookiesSupportedByDefault.js +2 -3
  241. package/libEs5/utils/assign.js +1 -2
  242. package/libEs5/utils/assignConcatArrayValues.js +13 -14
  243. package/libEs5/utils/assignIf.js +2 -3
  244. package/libEs5/utils/clone.js +2 -3
  245. package/libEs5/utils/cookieJar.js +2 -3
  246. package/libEs5/utils/crc32.js +1 -2
  247. package/libEs5/utils/createCallbackAggregator.js +2 -3
  248. package/libEs5/utils/createLoggingCookieJar.js +8 -6
  249. package/libEs5/utils/createMerger.js +2 -3
  250. package/libEs5/utils/createSubscription.js +12 -13
  251. package/libEs5/utils/createTaskQueue.js +2 -3
  252. package/libEs5/utils/deduplicateArray.js +2 -3
  253. package/libEs5/utils/deepAssign.js +2 -3
  254. package/libEs5/utils/defer.js +2 -3
  255. package/libEs5/utils/dom/appendNode.js +2 -3
  256. package/libEs5/utils/dom/awaitSelector.js +7 -13
  257. package/libEs5/utils/dom/createNode.js +2 -3
  258. package/libEs5/utils/dom/isShadowSelector.js +2 -3
  259. package/libEs5/utils/dom/matchesSelector.js +2 -3
  260. package/libEs5/utils/dom/querySelectorAll.js +2 -3
  261. package/libEs5/utils/dom/removeNode.js +2 -3
  262. package/libEs5/utils/dom/selectNodes.js +2 -3
  263. package/libEs5/utils/dom/selectNodesWithShadow.js +2 -3
  264. package/libEs5/utils/endsWith.js +2 -3
  265. package/libEs5/utils/filterObject.js +17 -15
  266. package/libEs5/utils/find.js +2 -3
  267. package/libEs5/utils/fireImage.js +2 -3
  268. package/libEs5/utils/flatMap.js +2 -3
  269. package/libEs5/utils/flattenArray.js +2 -3
  270. package/libEs5/utils/flattenObject.js +4 -5
  271. package/libEs5/utils/getApexDomain.js +2 -3
  272. package/libEs5/utils/getBrowser.js +17 -16
  273. package/libEs5/utils/getLastArrayItems.js +2 -3
  274. package/libEs5/utils/getNamespacedCookieName.js +2 -3
  275. package/libEs5/utils/groupBy.js +2 -3
  276. package/libEs5/utils/includes.js +2 -3
  277. package/libEs5/utils/injectDoesIdentityCookieExist.js +2 -3
  278. package/libEs5/utils/injectFireReferrerHideableImage.js +14 -15
  279. package/libEs5/utils/injectStorage.js +2 -3
  280. package/libEs5/utils/intersection.js +2 -3
  281. package/libEs5/utils/isBlankString.js +2 -3
  282. package/libEs5/utils/isBoolean.js +2 -3
  283. package/libEs5/utils/isEmptyObject.js +2 -3
  284. package/libEs5/utils/isFunction.js +2 -3
  285. package/libEs5/utils/isInteger.js +2 -3
  286. package/libEs5/utils/isNamespacedCookieName.js +2 -3
  287. package/libEs5/utils/isNil.js +2 -3
  288. package/libEs5/utils/isNonEmptyArray.js +2 -3
  289. package/libEs5/utils/isNonEmptyString.js +2 -3
  290. package/libEs5/utils/isNumber.js +2 -3
  291. package/libEs5/utils/isObject.js +13 -14
  292. package/libEs5/utils/isString.js +2 -3
  293. package/libEs5/utils/isUnique.js +2 -3
  294. package/libEs5/utils/isValidRegExp.js +2 -3
  295. package/libEs5/utils/memoize.js +2 -3
  296. package/libEs5/utils/noop.js +1 -2
  297. package/libEs5/utils/padStart.js +2 -3
  298. package/libEs5/utils/parseUrl.js +17 -15
  299. package/libEs5/utils/prepareConfigOverridesForEdge.js +13 -14
  300. package/libEs5/utils/querystring.js +1 -2
  301. package/libEs5/utils/request/createAddIdentity.js +2 -3
  302. package/libEs5/utils/request/createDataCollectionRequest.js +2 -3
  303. package/libEs5/utils/request/createDataCollectionRequestPayload.js +2 -3
  304. package/libEs5/utils/request/createGetAssuranceValidationTokenParams.js +2 -3
  305. package/libEs5/utils/request/createHasIdentity.js +2 -3
  306. package/libEs5/utils/request/createRequest.js +2 -3
  307. package/libEs5/utils/request/createRequestParams.js +2 -3
  308. package/libEs5/utils/request/createRequestPayload.js +2 -3
  309. package/libEs5/utils/sanitizeOrgIdForCookieName.js +2 -3
  310. package/libEs5/utils/stackError.js +2 -3
  311. package/libEs5/utils/startsWith.js +2 -3
  312. package/libEs5/utils/stringToBoolean.js +2 -3
  313. package/libEs5/utils/toArray.js +2 -3
  314. package/libEs5/utils/toError.js +2 -3
  315. package/libEs5/utils/toISOStringLocal.js +2 -3
  316. package/libEs5/utils/toInteger.js +2 -3
  317. package/libEs5/utils/updateErrorMessage.js +2 -3
  318. package/libEs5/utils/uuid.js +1 -2
  319. package/libEs5/utils/validateConfigOverride.js +1 -2
  320. package/libEs5/utils/validateIdentityMap.js +2 -3
  321. package/libEs5/utils/validation/booleanValidator.js +2 -3
  322. package/libEs5/utils/validation/callbackValidator.js +2 -3
  323. package/libEs5/utils/validation/createAnyOfValidator.js +2 -3
  324. package/libEs5/utils/validation/createArrayOfValidator.js +2 -3
  325. package/libEs5/utils/validation/createDefaultValidator.js +2 -3
  326. package/libEs5/utils/validation/createDeprecatedValidator.js +18 -19
  327. package/libEs5/utils/validation/createLiteralValidator.js +2 -3
  328. package/libEs5/utils/validation/createMapOfValuesValidator.js +2 -3
  329. package/libEs5/utils/validation/createMaximumValidator.js +2 -3
  330. package/libEs5/utils/validation/createMinimumValidator.js +2 -3
  331. package/libEs5/utils/validation/createNoUnknownFieldsValidator.js +2 -3
  332. package/libEs5/utils/validation/createNonEmptyValidator.js +2 -3
  333. package/libEs5/utils/validation/createObjectOfValidator.js +2 -3
  334. package/libEs5/utils/validation/createUniqueItemsValidator.js +2 -3
  335. package/libEs5/utils/validation/createUniqueValidator.js +2 -3
  336. package/libEs5/utils/validation/domainValidator.js +2 -3
  337. package/libEs5/utils/validation/index.js +90 -93
  338. package/libEs5/utils/validation/integerValidator.js +2 -3
  339. package/{libEs6/components/MediaCollection/createMediaRequestPayload.js → libEs5/utils/validation/matchesRegexpValidator.js} +9 -14
  340. package/libEs5/utils/validation/numberValidator.js +2 -3
  341. package/libEs5/utils/validation/regexpValidator.js +2 -3
  342. package/libEs5/utils/validation/requiredValidator.js +2 -3
  343. package/libEs5/utils/validation/stringValidator.js +2 -3
  344. package/libEs5/utils/validation/utils.js +5 -9
  345. package/libEs5/utils/values.js +2 -3
  346. package/libEs6/components/ActivityCollector/index.js +0 -1
  347. package/libEs6/components/Identity/index.js +2 -1
  348. package/libEs6/components/Identity/injectAddQueryStringIdentityToPayload.js +5 -1
  349. package/libEs6/components/Identity/injectAwaitIdentityCookie.js +7 -11
  350. package/libEs6/components/Identity/injectEnsureSingleIdentity.js +4 -3
  351. package/libEs6/components/LegacyMediaAnalytics/{media → constants}/constants.js +11 -10
  352. package/libEs6/components/LegacyMediaAnalytics/createGetInstance.js +240 -0
  353. package/libEs6/components/LegacyMediaAnalytics/createLegacyMediaComponent.js +85 -0
  354. package/libEs6/components/LegacyMediaAnalytics/createMediaHelper.js +157 -150
  355. package/libEs6/components/LegacyMediaAnalytics/index.js +40 -18
  356. package/libEs6/components/LibraryInfo/index.js +3 -1
  357. package/libEs6/components/Personalization/createComponent.js +5 -1
  358. package/libEs6/components/Personalization/createFetchDataHandler.js +16 -6
  359. package/libEs6/components/{MediaCollection/createUpdateMediaSessionState.js → Personalization/createHandleConsentFlicker.js} +14 -24
  360. package/libEs6/components/Personalization/createNotificationHandler.js +6 -2
  361. package/libEs6/components/Personalization/createOnDecisionHandler.js +1 -1
  362. package/libEs6/components/Personalization/handlers/createProcessRedirect.js +0 -1
  363. package/libEs6/components/Personalization/index.js +11 -3
  364. package/libEs6/components/StreamingMedia/configValidators.js +22 -0
  365. package/libEs6/components/StreamingMedia/constants/eventTypes.js +31 -0
  366. package/libEs6/components/StreamingMedia/constants/playbackState.js +16 -0
  367. package/libEs6/components/{MediaCollection → StreamingMedia}/createMediaEventManager.js +44 -44
  368. package/libEs6/components/StreamingMedia/createMediaResponseHandler.js +58 -0
  369. package/libEs6/components/{MediaCollection → StreamingMedia}/createMediaSessionCacheManager.js +17 -21
  370. package/libEs6/components/StreamingMedia/createStreamingMediaComponent.js +69 -0
  371. package/libEs6/components/StreamingMedia/createTrackMediaEvent.js +88 -0
  372. package/libEs6/components/StreamingMedia/createTrackMediaSession.js +51 -0
  373. package/libEs6/components/StreamingMedia/index.js +64 -0
  374. package/libEs6/components/{MediaCollection → StreamingMedia}/validateMediaEventOptions.js +4 -3
  375. package/libEs6/components/{MediaCollection → StreamingMedia}/validateMediaSessionOptions.js +1 -1
  376. package/libEs6/constants/libraryVersion.js +1 -1
  377. package/libEs6/core/componentCreators.js +19 -3
  378. package/libEs6/core/consent/createConsent.js +3 -0
  379. package/libEs6/core/consent/createConsentStateMachine.js +34 -0
  380. package/libEs6/core/createComponentRegistry.js +3 -0
  381. package/libEs6/utils/validation/index.js +6 -1
  382. package/libEs6/utils/{debounce.js → validation/matchesRegexpValidator.js} +5 -10
  383. package/package.json +19 -4
  384. package/libEs5/components/LegacyMediaAnalytics/createMediaAnalyticsTracker.js +0 -272
  385. package/libEs5/components/MediaCollection/createHeartbeatEngine.js +0 -55
  386. package/libEs5/components/MediaCollection/createUpdateMediaSessionState.js +0 -35
  387. package/libEs5/components/MediaCollection/index.js +0 -159
  388. package/libEs5/components/MediaCollection/mediaConstants/mediaEvents.js +0 -13
  389. package/libEs5/components/MediaCollection/validateMediaEventOptions.js +0 -35
  390. package/libEs6/components/LegacyMediaAnalytics/createMediaAnalyticsTracker.js +0 -276
  391. package/libEs6/components/MediaCollection/createHeartbeatEngine.js +0 -57
  392. package/libEs6/components/MediaCollection/index.js +0 -158
  393. package/libEs6/components/MediaCollection/mediaConstants/mediaEvents.js +0 -9
  394. /package/libEs6/components/LegacyMediaAnalytics/{media → constants}/mediaKeysToXdmConverter.js +0 -0
  395. /package/libEs6/components/{MediaCollection → StreamingMedia}/createMediaRequest.js +0 -0
@@ -1,9 +1,6 @@
1
1
  "use strict";
2
2
 
3
- exports.mediaEvent = exports.VideoMetadataKeys = exports.StreamType = exports.PlayerState = exports.MediaType = exports.MediaObjectKey = exports.Event = exports.AudioMetadataKeys = exports.AdMetadataKeys = void 0;
4
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
5
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
6
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
3
+ exports.VIDEO_METADATA_KEYS = exports.STREAM_TYPE = exports.PLAYER_STATE = exports.MEDIA_TYPE = exports.MEDIA_OBJECT_KEYS = exports.MEDIA_EVENTS_INTERNAL = exports.EVENT = exports.AUDIO_METADATA_KEYS = exports.AD_METADATA_KEYS = void 0;
7
4
  /*
8
5
  Copyright 2023 Adobe. All rights reserved.
9
6
  This file is licensed to you under the Apache License, Version 2.0 (the "License");
@@ -16,12 +13,11 @@ OF ANY KIND, either express or implied. See the License for the specific languag
16
13
  governing permissions and limitations under the License.
17
14
  */
18
15
 
19
- var MediaType = {
16
+ var MEDIA_TYPE = exports.MEDIA_TYPE = {
20
17
  Video: "video",
21
18
  Audio: "audio"
22
19
  };
23
- exports.MediaType = MediaType;
24
- var StreamType = {
20
+ var STREAM_TYPE = exports.STREAM_TYPE = {
25
21
  VOD: "vod",
26
22
  Live: "live",
27
23
  Linear: "linear",
@@ -29,16 +25,14 @@ var StreamType = {
29
25
  Audiobook: "audiobook",
30
26
  AOD: "aod"
31
27
  };
32
- exports.StreamType = StreamType;
33
- var PlayerState = {
28
+ var PLAYER_STATE = exports.PLAYER_STATE = {
34
29
  FullScreen: "fullScreen",
35
30
  ClosedCaption: "closedCaptioning",
36
31
  Mute: "mute",
37
32
  PictureInPicture: "pictureInPicture",
38
33
  InFocus: "inFocus"
39
34
  };
40
- exports.PlayerState = PlayerState;
41
- var Event = {
35
+ var EVENT = exports.EVENT = {
42
36
  /**
43
37
  * Constant defining event type for AdBreak start
44
38
  */
@@ -100,21 +94,20 @@ var Event = {
100
94
  */
101
95
  StateEnd: "stateEnd"
102
96
  };
103
- exports.Event = Event;
104
- var mediaEvent = _objectSpread({
97
+ var MEDIA_EVENTS_INTERNAL = exports.MEDIA_EVENTS_INTERNAL = {
105
98
  SessionStart: "sessionStart",
106
99
  SessionEnd: "sessionEnd",
107
100
  SessionComplete: "sessionComplete",
108
101
  Play: "play",
109
- Pause: "pauseStart"
110
- }, Event);
111
- exports.mediaEvent = mediaEvent;
112
- var MediaObjectKey = {
102
+ Pause: "pauseStart",
103
+ Error: "error",
104
+ StateUpdate: "statesUpdate"
105
+ };
106
+ var MEDIA_OBJECT_KEYS = exports.MEDIA_OBJECT_KEYS = {
113
107
  MediaResumed: "media.resumed",
114
108
  GranularAdTracking: "media.granularadtracking"
115
109
  };
116
- exports.MediaObjectKey = MediaObjectKey;
117
- var VideoMetadataKeys = {
110
+ var VIDEO_METADATA_KEYS = exports.VIDEO_METADATA_KEYS = {
118
111
  Show: "a.media.show",
119
112
  Season: "a.media.season",
120
113
  Episode: "a.media.episode",
@@ -133,8 +126,7 @@ var VideoMetadataKeys = {
133
126
  Feed: "a.media.feed",
134
127
  StreamFormat: "a.media.format"
135
128
  };
136
- exports.VideoMetadataKeys = VideoMetadataKeys;
137
- var AudioMetadataKeys = {
129
+ var AUDIO_METADATA_KEYS = exports.AUDIO_METADATA_KEYS = {
138
130
  Artist: "a.media.artist",
139
131
  Album: "a.media.album",
140
132
  Label: "a.media.label",
@@ -142,13 +134,11 @@ var AudioMetadataKeys = {
142
134
  Station: "a.media.station",
143
135
  Publisher: "a.media.publisher"
144
136
  };
145
- exports.AudioMetadataKeys = AudioMetadataKeys;
146
- var AdMetadataKeys = {
137
+ var AD_METADATA_KEYS = exports.AD_METADATA_KEYS = {
147
138
  Advertiser: "a.media.ad.advertiser",
148
139
  CampaignId: "a.media.ad.campaign",
149
140
  CreativeId: "a.media.ad.creative",
150
141
  PlacementId: "a.media.ad.placement",
151
142
  SiteId: "a.media.ad.site",
152
143
  CreativeUrl: "a.media.ad.creativeURL"
153
- };
154
- exports.AdMetadataKeys = AdMetadataKeys;
144
+ };
@@ -13,7 +13,7 @@ OF ANY KIND, either express or implied. See the License for the specific languag
13
13
  governing permissions and limitations under the License.
14
14
  */
15
15
 
16
- var mediaToXdmKeys = {
16
+ var mediaToXdmKeys = exports.mediaToXdmKeys = {
17
17
  "a.media.show": "show",
18
18
  "a.media.season": "season",
19
19
  "a.media.episode": "episode",
@@ -39,13 +39,11 @@ var mediaToXdmKeys = {
39
39
  "a.media.publisher": "publisher",
40
40
  "media.resumed": "hasResume"
41
41
  };
42
- exports.mediaToXdmKeys = mediaToXdmKeys;
43
- var adsToXdmKeys = {
42
+ var adsToXdmKeys = exports.adsToXdmKeys = {
44
43
  "a.media.ad.advertiser": "advertiser",
45
44
  "a.media.ad.campaign": "campaignID",
46
45
  "a.media.ad.creative": "creativeID",
47
46
  "a.media.ad.placement": "placementID",
48
47
  "a.media.ad.site": "siteID",
49
48
  "a.media.ad.creativeURL": "creativeURL"
50
- };
51
- exports.adsToXdmKeys = adsToXdmKeys;
49
+ };
@@ -0,0 +1,246 @@
1
+ "use strict";
2
+
3
+ exports.default = void 0;
4
+ var _constants = require("./constants/constants");
5
+ var _utils = require("../../utils");
6
+ var _mediaKeysToXdmConverter = require("./constants/mediaKeysToXdmConverter");
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(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
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); } /*
13
+ Copyright 2024 Adobe. All rights reserved.
14
+ This file is licensed to you under the Apache License, Version 2.0 (the "License");
15
+ you may not use this file except in compliance with the License. You may obtain a copy
16
+ of the License at http://www.apache.org/licenses/LICENSE-2.0
17
+
18
+ Unless required by applicable law or agreed to in writing, software distributed under
19
+ the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
20
+ OF ANY KIND, either express or implied. See the License for the specific language
21
+ governing permissions and limitations under the License.
22
+ */
23
+ var _default = exports.default = function _default(_ref) {
24
+ var logger = _ref.logger,
25
+ trackMediaSession = _ref.trackMediaSession,
26
+ trackMediaEvent = _ref.trackMediaEvent,
27
+ uuid = _ref.uuid;
28
+ var trackerState = {
29
+ qoe: null,
30
+ lastPlayhead: 0,
31
+ playerId: uuid()
32
+ };
33
+ var getEventType = function getEventType(_ref2) {
34
+ var eventType = _ref2.eventType;
35
+ if (eventType === _constants.EVENT.BufferComplete || eventType === _constants.EVENT.SeekComplete) {
36
+ return _constants.MEDIA_EVENTS_INTERNAL.Play;
37
+ }
38
+ if (eventType === _constants.EVENT.StateStart || eventType === _constants.EVENT.StateEnd) {
39
+ return _constants.MEDIA_EVENTS_INTERNAL.StateUpdate;
40
+ }
41
+ if (eventType === _constants.EVENT.SeekStart) {
42
+ return _constants.MEDIA_EVENTS_INTERNAL.Pause;
43
+ }
44
+ return eventType;
45
+ };
46
+ var createXdmObject = function createXdmObject(_ref3) {
47
+ var eventType = _ref3.eventType,
48
+ _ref3$mediaDetails = _ref3.mediaDetails,
49
+ mediaDetails = _ref3$mediaDetails === void 0 ? {} : _ref3$mediaDetails,
50
+ _ref3$contextData = _ref3.contextData,
51
+ contextData = _ref3$contextData === void 0 ? [] : _ref3$contextData;
52
+ var action = getEventType({
53
+ eventType: eventType
54
+ });
55
+ if (eventType === _constants.EVENT.StateStart) {
56
+ var _xdm = {
57
+ eventType: "media." + action,
58
+ mediaCollection: {
59
+ statesStart: [mediaDetails]
60
+ }
61
+ };
62
+ return _xdm;
63
+ }
64
+ if (eventType === _constants.EVENT.StateEnd) {
65
+ var _xdm2 = {
66
+ eventType: "media." + action,
67
+ mediaCollection: {
68
+ statesEnd: [mediaDetails]
69
+ }
70
+ };
71
+ return _xdm2;
72
+ }
73
+ var xdm = {
74
+ eventType: "media." + action,
75
+ mediaCollection: _objectSpread({}, mediaDetails)
76
+ };
77
+ var customMetadata = [];
78
+ Object.keys(contextData).forEach(function (key) {
79
+ if (_mediaKeysToXdmConverter.mediaToXdmKeys[key]) {
80
+ xdm.mediaCollection.sessionDetails[_mediaKeysToXdmConverter.mediaToXdmKeys[key]] = contextData[key];
81
+ } else if (_mediaKeysToXdmConverter.adsToXdmKeys[key]) {
82
+ xdm.mediaCollection.advertisingDetails[_mediaKeysToXdmConverter.adsToXdmKeys[key]] = contextData[key];
83
+ } else {
84
+ customMetadata.push({
85
+ name: key,
86
+ value: contextData[key]
87
+ });
88
+ }
89
+ });
90
+ if ((0, _utils.isNonEmptyArray)(customMetadata)) {
91
+ xdm.mediaCollection.customMetadata = customMetadata;
92
+ }
93
+ return xdm;
94
+ };
95
+ return {
96
+ trackSessionStart: function trackSessionStart(mediaObject) {
97
+ var contextData = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
98
+ if ((0, _utils.isEmptyObject)(mediaObject)) {
99
+ logger.warn("Invalid media object");
100
+ return {};
101
+ }
102
+ if (trackerState === null) {
103
+ logger.warn("The Media Session was completed. Restarting a new session.");
104
+ trackerState = {
105
+ qoe: null,
106
+ lastPlayhead: 0,
107
+ playerId: uuid()
108
+ };
109
+ }
110
+ var xdm = createXdmObject({
111
+ eventType: _constants.MEDIA_EVENTS_INTERNAL.SessionStart,
112
+ mediaDetails: mediaObject,
113
+ contextData: contextData
114
+ });
115
+ return trackMediaSession({
116
+ playerId: trackerState.playerId,
117
+ getPlayerDetails: function getPlayerDetails() {
118
+ return {
119
+ playhead: trackerState.lastPlayhead,
120
+ qoeDataDetails: trackerState.qoe
121
+ };
122
+ },
123
+ xdm: xdm
124
+ });
125
+ },
126
+ trackPlay: function trackPlay() {
127
+ if (trackerState === null) {
128
+ logger.warn("The Media Session was completed.");
129
+ return {};
130
+ }
131
+ var xdm = createXdmObject({
132
+ eventType: _constants.MEDIA_EVENTS_INTERNAL.Play
133
+ });
134
+ return trackMediaEvent({
135
+ playerId: trackerState.playerId,
136
+ xdm: xdm
137
+ });
138
+ },
139
+ trackPause: function trackPause() {
140
+ if (trackerState === null) {
141
+ logger.warn("The Media Session was completed.");
142
+ return {};
143
+ }
144
+ var xdm = createXdmObject({
145
+ eventType: _constants.MEDIA_EVENTS_INTERNAL.Pause
146
+ });
147
+ return trackMediaEvent({
148
+ playerId: trackerState.playerId,
149
+ xdm: xdm
150
+ });
151
+ },
152
+ trackSessionEnd: function trackSessionEnd() {
153
+ if (trackerState === null) {
154
+ logger.warn("The Media Session was completed.");
155
+ return {};
156
+ }
157
+ var xdm = createXdmObject({
158
+ eventType: _constants.MEDIA_EVENTS_INTERNAL.SessionEnd
159
+ });
160
+ return trackMediaEvent({
161
+ playerId: trackerState.playerId,
162
+ xdm: xdm
163
+ });
164
+ },
165
+ trackComplete: function trackComplete() {
166
+ if (trackerState === null) {
167
+ logger.warn("The Media Session was completed.");
168
+ return {};
169
+ }
170
+ var xdm = createXdmObject({
171
+ eventType: _constants.MEDIA_EVENTS_INTERNAL.SessionComplete
172
+ });
173
+ return trackMediaEvent({
174
+ playerId: trackerState.playerId,
175
+ xdm: xdm
176
+ });
177
+ },
178
+ trackError: function trackError(errorId) {
179
+ logger.warn("trackError(" + errorId + ")");
180
+ if (trackerState === null) {
181
+ logger.warn("The Media Session was completed.");
182
+ return {};
183
+ }
184
+ var errorDetails = {
185
+ name: errorId,
186
+ source: "player"
187
+ };
188
+ var xdm = createXdmObject({
189
+ eventType: _constants.MEDIA_EVENTS_INTERNAL.Error,
190
+ mediaDetails: {
191
+ errorDetails: errorDetails
192
+ }
193
+ });
194
+ return trackMediaEvent({
195
+ playerId: trackerState.playerId,
196
+ xdm: xdm
197
+ });
198
+ },
199
+ trackEvent: function trackEvent(eventType, info, context) {
200
+ if ((0, _utils.isEmptyObject)(info)) {
201
+ logger.warn("Invalid media object.");
202
+ return {};
203
+ }
204
+ if (trackerState === null) {
205
+ logger.warn("The Media Session was completed.");
206
+ return {};
207
+ }
208
+ if (!(0, _utils.includes)(Object.values(_constants.EVENT), eventType)) {
209
+ logger.warn("Invalid event type");
210
+ return {};
211
+ }
212
+ var xdm = createXdmObject({
213
+ eventType: eventType,
214
+ mediaDetails: info,
215
+ contextData: context
216
+ });
217
+ return trackMediaEvent({
218
+ playerId: trackerState.playerId,
219
+ xdm: xdm
220
+ });
221
+ },
222
+ updatePlayhead: function updatePlayhead(time) {
223
+ if (trackerState === null) {
224
+ logger.warn("The Media Session was completed.");
225
+ return;
226
+ }
227
+ if ((0, _utils.isNumber)(time)) {
228
+ trackerState.lastPlayhead = parseInt(time, 10);
229
+ }
230
+ },
231
+ updateQoEObject: function updateQoEObject(qoeObject) {
232
+ if (trackerState === null) {
233
+ logger.warn("The Media Session was completed.");
234
+ return;
235
+ }
236
+ if (!qoeObject) {
237
+ return;
238
+ }
239
+ trackerState.qoe = qoeObject;
240
+ },
241
+ destroy: function destroy() {
242
+ logger.warn("Destroy called, destroying the tracker.");
243
+ trackerState = null;
244
+ }
245
+ };
246
+ };
@@ -0,0 +1,87 @@
1
+ "use strict";
2
+
3
+ exports.default = void 0;
4
+ var _utils = require("../../utils");
5
+ var _constants = require("./constants/constants");
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(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
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); } /*
12
+ Copyright 2024 Adobe. All rights reserved.
13
+ This file is licensed to you under the Apache License, Version 2.0 (the "License");
14
+ you may not use this file except in compliance with the License. You may obtain a copy
15
+ of the License at http://www.apache.org/licenses/LICENSE-2.0
16
+
17
+ Unless required by applicable law or agreed to in writing, software distributed under
18
+ the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
19
+ OF ANY KIND, either express or implied. See the License for the specific language
20
+ governing permissions and limitations under the License.
21
+ */
22
+ var _default = exports.default = function _default(_ref) {
23
+ var trackMediaEvent = _ref.trackMediaEvent,
24
+ trackMediaSession = _ref.trackMediaSession,
25
+ mediaResponseHandler = _ref.mediaResponseHandler,
26
+ logger = _ref.logger,
27
+ createMediaHelper = _ref.createMediaHelper,
28
+ createGetInstance = _ref.createGetInstance,
29
+ config = _ref.config;
30
+ return {
31
+ lifecycle: {
32
+ onBeforeEvent: function onBeforeEvent(_ref2) {
33
+ var mediaOptions = _ref2.mediaOptions,
34
+ _ref2$onResponse = _ref2.onResponse,
35
+ onResponse = _ref2$onResponse === void 0 ? _utils.noop : _ref2$onResponse;
36
+ if (!mediaOptions) {
37
+ return;
38
+ }
39
+ var legacy = mediaOptions.legacy,
40
+ playerId = mediaOptions.playerId,
41
+ getPlayerDetails = mediaOptions.getPlayerDetails;
42
+ if (!legacy) {
43
+ return;
44
+ }
45
+ onResponse(function (_ref3) {
46
+ var response = _ref3.response;
47
+ return mediaResponseHandler({
48
+ playerId: playerId,
49
+ getPlayerDetails: getPlayerDetails,
50
+ response: response
51
+ });
52
+ });
53
+ }
54
+ },
55
+ commands: {
56
+ getMediaAnalyticsTracker: {
57
+ run: function run() {
58
+ if (!config.streamingMedia) {
59
+ return Promise.reject(new Error("Streaming media is not configured."));
60
+ }
61
+ logger.info("Streaming media is configured in legacy mode.");
62
+ var mediaAnalyticsHelper = createMediaHelper({
63
+ logger: logger
64
+ });
65
+ return Promise.resolve(_objectSpread({
66
+ getInstance: function getInstance() {
67
+ return createGetInstance({
68
+ logger: logger,
69
+ trackMediaEvent: trackMediaEvent,
70
+ trackMediaSession: trackMediaSession,
71
+ uuid: _utils.uuid
72
+ });
73
+ },
74
+ Event: _constants.EVENT,
75
+ MediaType: _constants.MEDIA_TYPE,
76
+ PlayerState: _constants.PLAYER_STATE,
77
+ StreamType: _constants.STREAM_TYPE,
78
+ MediaObjectKey: _constants.MEDIA_OBJECT_KEYS,
79
+ VideoMetadataKeys: _constants.VIDEO_METADATA_KEYS,
80
+ AudioMetadataKeys: _constants.AUDIO_METADATA_KEYS,
81
+ AdMetadataKeys: _constants.AD_METADATA_KEYS
82
+ }, mediaAnalyticsHelper));
83
+ }
84
+ }
85
+ }
86
+ };
87
+ };