@adobe/alloy 2.20.0 → 2.21.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (120) hide show
  1. package/libEs5/components/Audiences/injectProcessDestinations.js +1 -1
  2. package/libEs5/components/Context/index.js +1 -1
  3. package/libEs5/components/Context/injectHighEntropyUserAgentHints.js +4 -4
  4. package/libEs5/components/DataCollector/index.js +2 -2
  5. package/libEs5/components/DecisioningEngine/createConsequenceAdapter.js +1 -1
  6. package/libEs5/components/DecisioningEngine/createContextProvider.js +1 -1
  7. package/libEs5/components/DecisioningEngine/createEvaluableRulesetPayload.js +1 -1
  8. package/libEs5/components/DecisioningEngine/createEventRegistry.js +1 -1
  9. package/libEs5/components/DecisioningEngine/createOnResponseHandler.js +1 -1
  10. package/libEs5/components/DecisioningEngine/createSubscribeRulesetItems.js +1 -1
  11. package/libEs5/components/DecisioningEngine/index.js +1 -1
  12. package/libEs5/components/Identity/appendIdentityToUrl/injectAppendIdentityToUrl.js +4 -4
  13. package/libEs5/components/Identity/createLegacyIdentity.js +1 -1
  14. package/libEs5/components/Identity/injectAddQueryStringIdentityToPayload.js +4 -4
  15. package/libEs5/components/LegacyMediaAnalytics/createGetInstance.js +1 -1
  16. package/libEs5/components/LegacyMediaAnalytics/createLegacyMediaComponent.js +1 -1
  17. package/libEs5/components/LibraryInfo/index.js +6 -6
  18. package/libEs5/components/Personalization/createApplyPropositions.js +33 -16
  19. package/libEs5/components/Personalization/createClickStorage.js +5 -5
  20. package/libEs5/components/Personalization/createFetchDataHandler.js +5 -5
  21. package/libEs5/components/Personalization/createInteractionStorage.js +102 -0
  22. package/libEs5/components/Personalization/createOnClickHandler.js +49 -21
  23. package/libEs5/components/Personalization/createPersonalizationDetails.js +5 -5
  24. package/libEs5/components/Personalization/createPreprocessors.js +1 -1
  25. package/libEs5/components/Personalization/dom-actions/action.js +4 -4
  26. package/libEs5/components/Personalization/dom-actions/appendHtml.js +2 -1
  27. package/libEs5/components/Personalization/dom-actions/clicks/collectClicks.js +15 -33
  28. package/libEs5/components/Personalization/dom-actions/clicks/collectInteractions.js +81 -0
  29. package/libEs5/components/Personalization/dom-actions/collectInteractions.js +17 -0
  30. package/libEs5/components/Personalization/dom-actions/dom/isDomElement.js +17 -0
  31. package/libEs5/components/Personalization/dom-actions/dom/selectNodesWithEq.js +4 -4
  32. package/libEs5/components/Personalization/dom-actions/initDomActionsModules.js +36 -19
  33. package/libEs5/components/Personalization/dom-actions/insertHtmlAfter.js +5 -2
  34. package/libEs5/components/Personalization/dom-actions/insertHtmlBefore.js +2 -1
  35. package/libEs5/components/Personalization/dom-actions/prependHtml.js +2 -1
  36. package/libEs5/components/Personalization/dom-actions/rearrangeChildren.js +3 -1
  37. package/libEs5/components/Personalization/dom-actions/remapCustomCodeOffers.js +2 -2
  38. package/libEs5/components/Personalization/dom-actions/remapHeadOffers.js +2 -2
  39. package/libEs5/components/Personalization/dom-actions/replaceHtml.js +4 -3
  40. package/libEs5/components/Personalization/dom-actions/scripts.js +1 -1
  41. package/libEs5/components/Personalization/dom-actions/setAttributes.js +2 -1
  42. package/libEs5/components/Personalization/dom-actions/setHtml.js +2 -2
  43. package/libEs5/components/Personalization/dom-actions/setStyles.js +4 -3
  44. package/libEs5/components/Personalization/dom-actions/setText.js +2 -1
  45. package/libEs5/components/Personalization/dom-actions/swapImage.js +2 -1
  46. package/libEs5/components/Personalization/event.js +1 -1
  47. package/libEs5/components/Personalization/flicker/index.js +1 -1
  48. package/libEs5/components/Personalization/handlers/createDecorateProposition.js +60 -0
  49. package/libEs5/components/Personalization/handlers/createProcessDomAction.js +11 -7
  50. package/libEs5/components/Personalization/handlers/createProcessHtmlContent.js +6 -2
  51. package/libEs5/components/Personalization/handlers/createProcessInAppMessage.js +1 -1
  52. package/libEs5/components/Personalization/handlers/createProcessPropositions.js +6 -6
  53. package/libEs5/components/Personalization/handlers/injectCreateProposition.js +13 -2
  54. package/libEs5/components/Personalization/in-app-message-actions/actions/displayIframeContent.js +1 -1
  55. package/libEs5/components/Personalization/index.js +27 -8
  56. package/libEs5/components/Personalization/utils/metaUtils.js +33 -0
  57. package/libEs5/components/Personalization/validateApplyPropositionsOptions.js +12 -1
  58. package/libEs5/components/Privacy/createComponent.js +1 -1
  59. package/libEs5/components/Privacy/createConsentHashStore.js +2 -2
  60. package/libEs5/components/Privacy/parseConsentCookie.js +4 -4
  61. package/libEs5/components/StreamingMedia/validateMediaEventOptions.js +5 -5
  62. package/libEs5/constants/decisionProvider.js +3 -2
  63. package/libEs5/constants/libraryVersion.js +1 -1
  64. package/libEs5/constants/propositionEventType.js +1 -1
  65. package/libEs5/constants/propositionInteractionType.js +18 -0
  66. package/libEs5/core/buildAndValidateConfig.js +6 -6
  67. package/libEs5/core/createEvent.js +5 -5
  68. package/libEs5/core/createEventManager.js +3 -3
  69. package/libEs5/core/edgeNetwork/mergeLifecycleResponses.js +5 -5
  70. package/libEs5/core/network/injectSendNetworkRequest.js +1 -1
  71. package/libEs5/utils/assignConcatArrayValues.js +5 -5
  72. package/libEs5/utils/createLoggingCookieJar.js +1 -1
  73. package/libEs5/utils/createSubscription.js +5 -5
  74. package/libEs5/utils/dom/awaitSelector.js +5 -1
  75. package/libEs5/utils/filterObject.js +1 -1
  76. package/libEs5/utils/flattenArray.js +5 -5
  77. package/libEs5/utils/flattenObject.js +5 -5
  78. package/libEs5/utils/getBrowser.js +1 -1
  79. package/libEs5/utils/injectFireReferrerHideableImage.js +4 -4
  80. package/libEs5/utils/parseUrl.js +1 -1
  81. package/libEs5/utils/request/createRequestParams.js +2 -2
  82. package/libEs5/utils/validation/createDeprecatedValidator.js +3 -3
  83. package/libEs5/utils/validation/index.js +1 -1
  84. package/libEs6/components/Personalization/createApplyPropositions.js +25 -10
  85. package/libEs6/components/Personalization/createClickStorage.js +4 -4
  86. package/libEs6/components/Personalization/createInteractionStorage.js +85 -0
  87. package/libEs6/components/Personalization/createOnClickHandler.js +49 -22
  88. package/libEs6/components/Personalization/dom-actions/action.js +4 -4
  89. package/libEs6/components/Personalization/dom-actions/appendHtml.js +3 -2
  90. package/libEs6/components/Personalization/dom-actions/clicks/collectClicks.js +8 -18
  91. package/libEs6/components/Personalization/dom-actions/clicks/collectInteractions.js +74 -0
  92. package/libEs6/components/Personalization/dom-actions/collectInteractions.js +15 -0
  93. package/libEs6/components/Personalization/dom-actions/dom/isDomElement.js +12 -0
  94. package/libEs6/components/Personalization/dom-actions/initDomActionsModules.js +46 -16
  95. package/libEs6/components/Personalization/dom-actions/insertHtmlAfter.js +5 -2
  96. package/libEs6/components/Personalization/dom-actions/insertHtmlBefore.js +3 -2
  97. package/libEs6/components/Personalization/dom-actions/prependHtml.js +3 -2
  98. package/libEs6/components/Personalization/dom-actions/rearrangeChildren.js +3 -1
  99. package/libEs6/components/Personalization/dom-actions/remapCustomCodeOffers.js +2 -2
  100. package/libEs6/components/Personalization/dom-actions/remapHeadOffers.js +2 -2
  101. package/libEs6/components/Personalization/dom-actions/replaceHtml.js +4 -3
  102. package/libEs6/components/Personalization/dom-actions/setAttributes.js +2 -1
  103. package/libEs6/components/Personalization/dom-actions/setHtml.js +2 -2
  104. package/libEs6/components/Personalization/dom-actions/setStyles.js +2 -1
  105. package/libEs6/components/Personalization/dom-actions/setText.js +2 -1
  106. package/libEs6/components/Personalization/dom-actions/swapImage.js +3 -2
  107. package/libEs6/components/Personalization/handlers/createDecorateProposition.js +59 -0
  108. package/libEs6/components/Personalization/handlers/createProcessDomAction.js +10 -4
  109. package/libEs6/components/Personalization/handlers/createProcessHtmlContent.js +6 -2
  110. package/libEs6/components/Personalization/handlers/createProcessPropositions.js +1 -1
  111. package/libEs6/components/Personalization/handlers/injectCreateProposition.js +12 -1
  112. package/libEs6/components/Personalization/index.js +32 -8
  113. package/libEs6/components/Personalization/utils/metaUtils.js +23 -0
  114. package/libEs6/components/Personalization/validateApplyPropositionsOptions.js +12 -1
  115. package/libEs6/constants/decisionProvider.js +2 -1
  116. package/libEs6/constants/libraryVersion.js +1 -1
  117. package/libEs6/constants/propositionInteractionType.js +15 -0
  118. package/libEs6/utils/dom/awaitSelector.js +5 -1
  119. package/package.json +23 -22
  120. package/scripts/build-alloy.js +125 -0
@@ -15,37 +15,65 @@ the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTA
15
15
  OF ANY KIND, either express or implied. See the License for the specific language
16
16
  governing permissions and limitations under the License.
17
17
  */
18
+
19
+ var createPropositionAction = function createPropositionAction(clickLabel, clickToken) {
20
+ if (!clickToken && !clickLabel) {
21
+ return undefined;
22
+ }
23
+ var propositionAction = {};
24
+ if (clickLabel) {
25
+ propositionAction.label = clickLabel;
26
+ }
27
+ if (clickToken) {
28
+ propositionAction.tokens = [clickToken];
29
+ }
30
+ return propositionAction;
31
+ };
18
32
  var _default = exports.default = function _default(_ref) {
19
33
  var mergeDecisionsMeta = _ref.mergeDecisionsMeta,
34
+ collectInteractions = _ref.collectInteractions,
20
35
  collectClicks = _ref.collectClicks,
36
+ getInteractionMetas = _ref.getInteractionMetas,
37
+ getClickMetas = _ref.getClickMetas,
21
38
  getClickSelectors = _ref.getClickSelectors,
22
- getClickMetasBySelector = _ref.getClickMetasBySelector;
39
+ autoCollectPropositionInteractions = _ref.autoCollectPropositionInteractions;
23
40
  // Called when an element qualifying for conversion within an offer is clicked.
24
41
  return function (_ref2) {
25
42
  var event = _ref2.event,
26
43
  clickedElement = _ref2.clickedElement;
27
- var selectors = getClickSelectors();
28
- if ((0, _index.isNonEmptyArray)(selectors)) {
29
- var _collectClicks = collectClicks(clickedElement, selectors, getClickMetasBySelector),
30
- decisionsMeta = _collectClicks.decisionsMeta,
31
- eventLabel = _collectClicks.eventLabel,
32
- viewName = _collectClicks.viewName;
33
- if ((0, _index.isNonEmptyArray)(decisionsMeta)) {
34
- var xdm = {
35
- eventType: _eventType.INTERACT
44
+ var decisionsMeta = [];
45
+ var propositionActionLabel;
46
+ var propositionActionToken;
47
+ var viewName;
48
+ [collectInteractions(clickedElement, getInteractionMetas, autoCollectPropositionInteractions), collectClicks(clickedElement, getClickSelectors(), getClickMetas)].forEach(function (_ref3) {
49
+ var curDecisionsMeta = _ref3.decisionsMeta,
50
+ curPropositionActionLabel = _ref3.propositionActionLabel,
51
+ curPropositionActionToken = _ref3.propositionActionToken,
52
+ curViewName = _ref3.viewName;
53
+ Array.prototype.push.apply(decisionsMeta, curDecisionsMeta);
54
+ if (!propositionActionLabel && curPropositionActionLabel) {
55
+ propositionActionLabel = curPropositionActionLabel;
56
+ }
57
+ if (!propositionActionToken && curPropositionActionToken) {
58
+ propositionActionToken = curPropositionActionToken;
59
+ }
60
+ if (!viewName && curViewName) {
61
+ viewName = curViewName;
62
+ }
63
+ });
64
+ if ((0, _index.isNonEmptyArray)(decisionsMeta)) {
65
+ var xdm = {
66
+ eventType: _eventType.INTERACT
67
+ };
68
+ if (viewName) {
69
+ xdm.web = {
70
+ webPageDetails: {
71
+ viewName: viewName
72
+ }
36
73
  };
37
- if (viewName) {
38
- xdm.web = {
39
- webPageDetails: {
40
- viewName: viewName
41
- }
42
- };
43
- }
44
- event.mergeXdm(xdm);
45
- mergeDecisionsMeta(event, decisionsMeta, [_propositionEventType.PropositionEventType.INTERACT], eventLabel ? {
46
- label: eventLabel
47
- } : undefined);
48
74
  }
75
+ event.mergeXdm(xdm);
76
+ mergeDecisionsMeta(event, decisionsMeta, [_propositionEventType.PropositionEventType.INTERACT], createPropositionAction(propositionActionLabel, propositionActionToken));
49
77
  }
50
78
  };
51
79
  };
@@ -5,12 +5,12 @@ var _index = require("../../utils/index.js");
5
5
  var _surfaceUtils = require("./utils/surfaceUtils.js");
6
6
  var _pageWideScope = require("../../constants/pageWideScope.js");
7
7
  var _schema = require("../../constants/schema.js");
8
- function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
8
+ function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
9
9
  function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
10
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
11
- function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
12
- function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
13
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; } /*
10
+ 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; } }
11
+ function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
12
+ function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }
13
+ 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; } /*
14
14
  Copyright 2020 Adobe. All rights reserved.
15
15
  This file is licensed to you under the Apache License, Version 2.0 (the "License");
16
16
  you may not use this file except in compliance with the License. You may obtain a copy
@@ -5,7 +5,7 @@ var _schema = require("../../constants/schema.js");
5
5
  var _remapHeadOffers = require("./dom-actions/remapHeadOffers.js");
6
6
  var _remapCustomCodeOffers = require("./dom-actions/remapCustomCodeOffers.js");
7
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 _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; }
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
9
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
10
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); } /*
11
11
  Copyright 2023 Adobe. All rights reserved.
@@ -93,20 +93,20 @@ OF ANY KIND, either express or implied. See the License for the specific languag
93
93
  governing permissions and limitations under the License.
94
94
  */
95
95
 
96
- var renderContent = function renderContent(elements, content, renderFunc) {
96
+ var renderContent = function renderContent(elements, content, decorateProposition, renderFunc) {
97
97
  var executions = elements.map(function (element) {
98
- return renderFunc(element, content);
98
+ return renderFunc(element, content, decorateProposition);
99
99
  });
100
100
  return Promise.all(executions);
101
101
  };
102
102
  var createAction = exports.createAction = function createAction(renderFunc) {
103
- return function (itemData) {
103
+ return function (itemData, decorateProposition) {
104
104
  var selector = itemData.selector,
105
105
  prehidingSelector = itemData.prehidingSelector,
106
106
  content = itemData.content;
107
107
  (0, _index2.hideElements)(prehidingSelector);
108
108
  return (0, _index.awaitSelector)(selector, _index3.selectNodesWithEq).then(function (elements) {
109
- return renderContent(elements, content, renderFunc);
109
+ return renderContent(elements, content, decorateProposition, renderFunc);
110
110
  }).then(function () {
111
111
  // if everything is OK, show elements
112
112
  (0, _index2.showElements)(prehidingSelector);
@@ -17,7 +17,7 @@ the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTA
17
17
  OF ANY KIND, either express or implied. See the License for the specific language
18
18
  governing permissions and limitations under the License.
19
19
  */
20
- var _default = exports.default = function _default(container, html) {
20
+ var _default = exports.default = function _default(container, html, decorateProposition) {
21
21
  var fragment = (0, _index2.createFragment)(html);
22
22
  (0, _addNonceToInlineStyleElements.default)(fragment);
23
23
  var elements = (0, _index2.getChildNodes)(fragment);
@@ -27,6 +27,7 @@ var _default = exports.default = function _default(container, html) {
27
27
  elements.forEach(function (element) {
28
28
  (0, _index.appendNode)(container, element);
29
29
  });
30
+ decorateProposition(container);
30
31
  (0, _scripts.executeInlineScripts)(container, scripts);
31
32
  return (0, _scripts.executeRemoteScripts)(scriptsUrls);
32
33
  };
@@ -3,8 +3,13 @@
3
3
  exports.default = void 0;
4
4
  var _matchesSelectorWithEq = require("../dom/matchesSelectorWithEq.js");
5
5
  var _scopeType = require("../../constants/scopeType.js");
6
- var _excluded = ["trackingLabel", "scopeType"];
7
- /*
6
+ var _metaUtils = require("../../utils/metaUtils.js");
7
+ function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
8
+ 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."); }
9
+ 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; } }
10
+ function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
11
+ function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }
12
+ 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; } /*
8
13
  Copyright 2019 Adobe. All rights reserved.
9
14
  This file is licensed to you under the Apache License, Version 2.0 (the "License");
10
15
  you may not use this file except in compliance with the License. You may obtain a copy
@@ -15,22 +20,14 @@ the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTA
15
20
  OF ANY KIND, either express or implied. See the License for the specific language
16
21
  governing permissions and limitations under the License.
17
22
  */
18
- function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
19
- 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."); }
20
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
21
- function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
22
- function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
23
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
24
- function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
25
- function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } } return target; }
26
- var getMetasIfMatches = function getMetasIfMatches(clickedElement, selector, getClickMetasBySelector) {
23
+ var getMetasIfMatches = function getMetasIfMatches(clickedElement, selector, getClickMetas) {
27
24
  var _document = document,
28
25
  documentElement = _document.documentElement;
29
26
  var element = clickedElement;
30
27
  var i = 0;
31
28
  while (element && element !== documentElement) {
32
29
  if ((0, _matchesSelectorWithEq.default)(selector, element)) {
33
- var matchedMetas = getClickMetasBySelector(selector);
30
+ var matchedMetas = getClickMetas(selector);
34
31
  var returnValue = {
35
32
  metas: matchedMetas
36
33
  };
@@ -57,23 +54,7 @@ var getMetasIfMatches = function getMetasIfMatches(clickedElement, selector, get
57
54
  metas: null
58
55
  };
59
56
  };
60
- var cleanMetas = function cleanMetas(metas) {
61
- return metas.map(function (meta) {
62
- var trackingLabel = meta.trackingLabel,
63
- scopeType = meta.scopeType,
64
- rest = _objectWithoutProperties(meta, _excluded);
65
- return rest;
66
- });
67
- };
68
- var dedupMetas = function dedupMetas(metas) {
69
- return metas.filter(function (meta, index) {
70
- var stringifiedMeta = JSON.stringify(meta);
71
- return index === metas.findIndex(function (innerMeta) {
72
- return JSON.stringify(innerMeta) === stringifiedMeta;
73
- });
74
- });
75
- };
76
- var _default = exports.default = function _default(clickedElement, selectors, getClickMetasBySelector) {
57
+ var _default = exports.default = function _default(clickedElement, selectors, getClickMetas) {
77
58
  var result = [];
78
59
  var resultLabel = "";
79
60
  var resultLabelWeight = Number.MAX_SAFE_INTEGER;
@@ -82,7 +63,7 @@ var _default = exports.default = function _default(clickedElement, selectors, ge
82
63
 
83
64
  /* eslint-disable no-continue */
84
65
  for (var i = 0; i < selectors.length; i += 1) {
85
- var _getMetasIfMatches = getMetasIfMatches(clickedElement, selectors[i], getClickMetasBySelector),
66
+ var _getMetasIfMatches = getMetasIfMatches(clickedElement, selectors[i], getClickMetas),
86
67
  metas = _getMetasIfMatches.metas,
87
68
  label = _getMetasIfMatches.label,
88
69
  weight = _getMetasIfMatches.weight,
@@ -98,11 +79,12 @@ var _default = exports.default = function _default(clickedElement, selectors, ge
98
79
  resultViewName = viewName;
99
80
  resultViewNameWeight = weight;
100
81
  }
101
- result.push.apply(result, _toConsumableArray(cleanMetas(metas)));
82
+ result.push.apply(result, _toConsumableArray((0, _metaUtils.cleanMetas)(metas)));
102
83
  }
103
84
  return {
104
- decisionsMeta: dedupMetas(result),
105
- eventLabel: resultLabel,
85
+ decisionsMeta: (0, _metaUtils.dedupeMetas)(result),
86
+ propositionActionLabel: resultLabel,
87
+ propositionActionToken: undefined,
106
88
  viewName: resultViewName
107
89
  };
108
90
  };
@@ -0,0 +1,81 @@
1
+ "use strict";
2
+
3
+ exports.default = void 0;
4
+ var _scopeType = require("../../constants/scopeType.js");
5
+ var _getAttribute = require("../dom/getAttribute.js");
6
+ var _createDecorateProposition = require("../../handlers/createDecorateProposition.js");
7
+ var _metaUtils = require("../../utils/metaUtils.js");
8
+ var _propositionInteractionType = require("../../../../constants/propositionInteractionType.js");
9
+ function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
10
+ 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."); }
11
+ 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; } }
12
+ function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
13
+ function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }
14
+ 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; } /*
15
+ Copyright 2019 Adobe. All rights reserved.
16
+ This file is licensed to you under the Apache License, Version 2.0 (the "License");
17
+ you may not use this file except in compliance with the License. You may obtain a copy
18
+ of the License at http://www.apache.org/licenses/LICENSE-2.0
19
+
20
+ Unless required by applicable law or agreed to in writing, software distributed under
21
+ the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
22
+ OF ANY KIND, either express or implied. See the License for the specific language
23
+ governing permissions and limitations under the License.
24
+ */
25
+ var getInteractionDetail = function getInteractionDetail(clickedElement) {
26
+ var _document = document,
27
+ documentElement = _document.documentElement;
28
+ var element = clickedElement;
29
+ var interactIds = new Set();
30
+ var clickLabel;
31
+ var clickToken;
32
+ while (element && element !== documentElement) {
33
+ var interactId = (0, _getAttribute.default)(element, _createDecorateProposition.INTERACT_ID_DATA_ATTRIBUTE);
34
+ if (interactId) {
35
+ interactIds.add(interactId);
36
+ }
37
+ clickLabel = clickLabel || (0, _getAttribute.default)(element, _createDecorateProposition.CLICK_LABEL_DATA_ATTRIBUTE);
38
+ clickToken = clickToken || (0, _getAttribute.default)(element, _createDecorateProposition.CLICK_TOKEN_DATA_ATTRIBUTE);
39
+ element = element.parentNode;
40
+ }
41
+ return {
42
+ interactIds: _toConsumableArray(interactIds),
43
+ clickLabel: clickLabel,
44
+ clickToken: clickToken
45
+ };
46
+ };
47
+ var extractViewName = function extractViewName(metas) {
48
+ var foundMetaWithScopeTypeView = metas.find(function (meta) {
49
+ return meta.scopeType === _scopeType.VIEW_SCOPE_TYPE;
50
+ });
51
+ return foundMetaWithScopeTypeView ? foundMetaWithScopeTypeView.scope : undefined;
52
+ };
53
+ var createMetaFilter = function createMetaFilter(autoCollectPropositionInteractions, clickLabel, clickToken) {
54
+ return function (meta) {
55
+ var _meta$scopeDetails = meta.scopeDetails,
56
+ scopeDetails = _meta$scopeDetails === void 0 ? {} : _meta$scopeDetails;
57
+ var decisionProvider = scopeDetails.decisionProvider;
58
+ if (autoCollectPropositionInteractions[decisionProvider] === _propositionInteractionType.ALWAYS) {
59
+ return true;
60
+ }
61
+ return autoCollectPropositionInteractions[decisionProvider] === _propositionInteractionType.DECORATED_ELEMENTS_ONLY && (clickLabel || clickToken);
62
+ };
63
+ };
64
+ var _default = exports.default = function _default(clickedElement, getInteractionMetas, autoCollectPropositionInteractions) {
65
+ var _getInteractionDetail = getInteractionDetail(clickedElement),
66
+ interactIds = _getInteractionDetail.interactIds,
67
+ _getInteractionDetail2 = _getInteractionDetail.clickLabel,
68
+ clickLabel = _getInteractionDetail2 === void 0 ? "" : _getInteractionDetail2,
69
+ clickToken = _getInteractionDetail.clickToken;
70
+ var metasMatchingConfigurationOptions = createMetaFilter(autoCollectPropositionInteractions, clickLabel, clickToken);
71
+ if (interactIds.length === 0) {
72
+ return {};
73
+ }
74
+ var metas = getInteractionMetas(interactIds).filter(metasMatchingConfigurationOptions);
75
+ return {
76
+ decisionsMeta: (0, _metaUtils.cleanMetas)(metas),
77
+ propositionActionLabel: clickLabel,
78
+ propositionActionToken: clickToken,
79
+ viewName: extractViewName(metas)
80
+ };
81
+ };
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+
3
+ exports.default = void 0;
4
+ /*
5
+ Copyright 2019 Adobe. All rights reserved.
6
+ This file is licensed to you under the Apache License, Version 2.0 (the "License");
7
+ you may not use this file except in compliance with the License. You may obtain a copy
8
+ of the License at http://www.apache.org/licenses/LICENSE-2.0
9
+
10
+ Unless required by applicable law or agreed to in writing, software distributed under
11
+ the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
12
+ OF ANY KIND, either express or implied. See the License for the specific language
13
+ governing permissions and limitations under the License.
14
+ */
15
+ var _default = exports.default = function _default(container, content, decorateProposition) {
16
+ decorateProposition(container);
17
+ };
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+
3
+ exports.default = void 0;
4
+ /*
5
+ Copyright 2024 Adobe. All rights reserved.
6
+ This file is licensed to you under the Apache License, Version 2.0 (the "License");
7
+ you may not use this file except in compliance with the License. You may obtain a copy
8
+ of the License at http://www.apache.org/licenses/LICENSE-2.0
9
+
10
+ Unless required by applicable law or agreed to in writing, software distributed under
11
+ the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
12
+ OF ANY KIND, either express or implied. See the License for the specific language
13
+ governing permissions and limitations under the License.
14
+ */
15
+ var _default = exports.default = function _default(element) {
16
+ return element instanceof Element || element instanceof HTMLDocument;
17
+ };
@@ -4,12 +4,12 @@ exports.selectNodesWithEq = exports.parseSelector = exports.escapeIdentifiersInS
4
4
  var _css = require("css.escape");
5
5
  var _index = require("../../../../utils/dom/index.js");
6
6
  var _helperForEq = require("./helperForEq.js");
7
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
7
+ function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
8
8
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
9
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
10
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
9
+ 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; } }
10
+ 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; }
11
11
  function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
12
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } /*
12
+ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; } /*
13
13
  Copyright 2019 Adobe. All rights reserved.
14
14
  This file is licensed to you under the Apache License, Version 2.0 (the "License");
15
15
  you may not use this file except in compliance with the License. You may obtain a copy
@@ -1,9 +1,24 @@
1
1
  "use strict";
2
2
 
3
- exports.default = void 0;
3
+ exports.default = exports.DOM_ACTION_SET_TEXT = exports.DOM_ACTION_SET_STYLE = exports.DOM_ACTION_SET_IMAGE_SOURCE = exports.DOM_ACTION_SET_HTML = exports.DOM_ACTION_SET_ATTRIBUTE = exports.DOM_ACTION_RESIZE = exports.DOM_ACTION_REPLACE_HTML = exports.DOM_ACTION_REMOVE = exports.DOM_ACTION_REARRANGE = exports.DOM_ACTION_PREPEND_HTML = exports.DOM_ACTION_MOVE = exports.DOM_ACTION_INSERT_BEFORE = exports.DOM_ACTION_INSERT_AFTER = exports.DOM_ACTION_CUSTOM_CODE = exports.DOM_ACTION_COLLECT_INTERACTIONS = exports.DOM_ACTION_CLICK = exports.DOM_ACTION_APPEND_HTML = void 0;
4
4
  var _index = require("../../../utils/dom/index.js");
5
+ var _setHtml = require("./setHtml.js");
6
+ var _prependHtml = require("./prependHtml.js");
5
7
  var _action = require("./action.js");
6
- /*
8
+ var _setText = require("./setText.js");
9
+ var _setAttributes = require("./setAttributes.js");
10
+ var _swapImage = require("./swapImage.js");
11
+ var _setStyles = require("./setStyles.js");
12
+ var _rearrangeChildren = require("./rearrangeChildren.js");
13
+ var _insertHtmlAfter = require("./insertHtmlAfter.js");
14
+ var _insertHtmlBefore = require("./insertHtmlBefore.js");
15
+ var _replaceHtml = require("./replaceHtml.js");
16
+ var _appendHtml = require("./appendHtml.js");
17
+ var _collectInteractions = require("./collectInteractions.js");
18
+ 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); }
19
+ 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; }
20
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
21
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } /*
7
22
  Copyright 2019 Adobe. All rights reserved.
8
23
  This file is licensed to you under the Apache License, Version 2.0 (the "License");
9
24
  you may not use this file except in compliance with the License. You may obtain a copy
@@ -14,22 +29,24 @@ the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTA
14
29
  OF ANY KIND, either express or implied. See the License for the specific language
15
30
  governing permissions and limitations under the License.
16
31
  */
32
+ var DOM_ACTION_SET_HTML = exports.DOM_ACTION_SET_HTML = "setHtml";
33
+ var DOM_ACTION_CUSTOM_CODE = exports.DOM_ACTION_CUSTOM_CODE = "customCode";
34
+ var DOM_ACTION_SET_TEXT = exports.DOM_ACTION_SET_TEXT = "setText";
35
+ var DOM_ACTION_SET_ATTRIBUTE = exports.DOM_ACTION_SET_ATTRIBUTE = "setAttribute";
36
+ var DOM_ACTION_SET_IMAGE_SOURCE = exports.DOM_ACTION_SET_IMAGE_SOURCE = "setImageSource";
37
+ var DOM_ACTION_SET_STYLE = exports.DOM_ACTION_SET_STYLE = "setStyle";
38
+ var DOM_ACTION_MOVE = exports.DOM_ACTION_MOVE = "move";
39
+ var DOM_ACTION_RESIZE = exports.DOM_ACTION_RESIZE = "resize";
40
+ var DOM_ACTION_REARRANGE = exports.DOM_ACTION_REARRANGE = "rearrange";
41
+ var DOM_ACTION_REMOVE = exports.DOM_ACTION_REMOVE = "remove";
42
+ var DOM_ACTION_INSERT_AFTER = exports.DOM_ACTION_INSERT_AFTER = "insertAfter";
43
+ var DOM_ACTION_INSERT_BEFORE = exports.DOM_ACTION_INSERT_BEFORE = "insertBefore";
44
+ var DOM_ACTION_REPLACE_HTML = exports.DOM_ACTION_REPLACE_HTML = "replaceHtml";
45
+ var DOM_ACTION_PREPEND_HTML = exports.DOM_ACTION_PREPEND_HTML = "prependHtml";
46
+ var DOM_ACTION_APPEND_HTML = exports.DOM_ACTION_APPEND_HTML = "appendHtml";
47
+ var DOM_ACTION_CLICK = exports.DOM_ACTION_CLICK = "click";
48
+ var DOM_ACTION_COLLECT_INTERACTIONS = exports.DOM_ACTION_COLLECT_INTERACTIONS = "collectInteractions";
17
49
  var _default = exports.default = function _default() {
18
- return {
19
- setHtml: (0, _action.createAction)(_action.setHtml),
20
- customCode: (0, _action.createAction)(_action.prependHtml),
21
- setText: (0, _action.createAction)(_action.setText),
22
- setAttribute: (0, _action.createAction)(_action.setAttributes),
23
- setImageSource: (0, _action.createAction)(_action.swapImage),
24
- setStyle: (0, _action.createAction)(_action.setStyles),
25
- move: (0, _action.createAction)(_action.setStyles),
26
- resize: (0, _action.createAction)(_action.setStyles),
27
- rearrange: (0, _action.createAction)(_action.rearrangeChildren),
28
- remove: (0, _action.createAction)(_index.removeNode),
29
- insertAfter: (0, _action.createAction)(_action.insertHtmlAfter),
30
- insertBefore: (0, _action.createAction)(_action.insertHtmlBefore),
31
- replaceHtml: (0, _action.createAction)(_action.replaceHtml),
32
- prependHtml: (0, _action.createAction)(_action.prependHtml),
33
- appendHtml: (0, _action.createAction)(_action.appendHtml)
34
- };
50
+ var _ref;
51
+ return _ref = {}, _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_ref, DOM_ACTION_SET_HTML, (0, _action.createAction)(_setHtml.default)), DOM_ACTION_CUSTOM_CODE, (0, _action.createAction)(_prependHtml.default)), DOM_ACTION_SET_TEXT, (0, _action.createAction)(_setText.default)), DOM_ACTION_SET_ATTRIBUTE, (0, _action.createAction)(_setAttributes.default)), DOM_ACTION_SET_IMAGE_SOURCE, (0, _action.createAction)(_swapImage.default)), DOM_ACTION_SET_STYLE, (0, _action.createAction)(_setStyles.default)), DOM_ACTION_MOVE, (0, _action.createAction)(_setStyles.default)), DOM_ACTION_RESIZE, (0, _action.createAction)(_setStyles.default)), DOM_ACTION_REARRANGE, (0, _action.createAction)(_rearrangeChildren.default)), DOM_ACTION_REMOVE, (0, _action.createAction)(_index.removeNode)), _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_ref, DOM_ACTION_INSERT_AFTER, (0, _action.createAction)(_insertHtmlAfter.default)), DOM_ACTION_INSERT_BEFORE, (0, _action.createAction)(_insertHtmlBefore.default)), DOM_ACTION_REPLACE_HTML, (0, _action.createAction)(_replaceHtml.default)), DOM_ACTION_PREPEND_HTML, (0, _action.createAction)(_prependHtml.default)), DOM_ACTION_APPEND_HTML, (0, _action.createAction)(_appendHtml.default)), DOM_ACTION_COLLECT_INTERACTIONS, (0, _action.createAction)(_collectInteractions.default));
35
52
  };
@@ -16,15 +16,18 @@ the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTA
16
16
  OF ANY KIND, either express or implied. See the License for the specific language
17
17
  governing permissions and limitations under the License.
18
18
  */
19
- var _default = exports.default = function _default(container, html) {
19
+ var _default = exports.default = function _default(container, html, decorateProposition) {
20
20
  var fragment = (0, _index.createFragment)(html);
21
21
  (0, _addNonceToInlineStyleElements.default)(fragment);
22
22
  var elements = (0, _index.getChildNodes)(fragment);
23
23
  var scripts = (0, _scripts.getInlineScripts)(fragment);
24
24
  var scriptsUrls = (0, _scripts.getRemoteScriptsUrls)(fragment);
25
25
  (0, _images.loadImages)(fragment);
26
+ var insertionPoint = container;
26
27
  elements.forEach(function (element) {
27
- (0, _index.insertAfter)(container, element);
28
+ decorateProposition(element);
29
+ (0, _index.insertAfter)(insertionPoint, element);
30
+ insertionPoint = element;
28
31
  });
29
32
  (0, _scripts.executeInlineScripts)(container, scripts);
30
33
  return (0, _scripts.executeRemoteScripts)(scriptsUrls);
@@ -16,7 +16,7 @@ the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTA
16
16
  OF ANY KIND, either express or implied. See the License for the specific language
17
17
  governing permissions and limitations under the License.
18
18
  */
19
- var _default = exports.default = function _default(container, html) {
19
+ var _default = exports.default = function _default(container, html, decorateProposition) {
20
20
  var fragment = (0, _index.createFragment)(html);
21
21
  (0, _addNonceToInlineStyleElements.default)(fragment);
22
22
  var elements = (0, _index.getChildNodes)(fragment);
@@ -24,6 +24,7 @@ var _default = exports.default = function _default(container, html) {
24
24
  var scriptsUrls = (0, _scripts.getRemoteScriptsUrls)(fragment);
25
25
  (0, _images.loadImages)(fragment);
26
26
  elements.forEach(function (element) {
27
+ decorateProposition(element);
27
28
  (0, _index.insertBefore)(container, element);
28
29
  });
29
30
  (0, _scripts.executeInlineScripts)(container, scripts);
@@ -17,7 +17,7 @@ the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTA
17
17
  OF ANY KIND, either express or implied. See the License for the specific language
18
18
  governing permissions and limitations under the License.
19
19
  */
20
- var _default = exports.default = function _default(container, html) {
20
+ var _default = exports.default = function _default(container, html, decorateProposition) {
21
21
  var fragment = (0, _index2.createFragment)(html);
22
22
  (0, _addNonceToInlineStyleElements.default)(fragment);
23
23
  var elements = (0, _index2.getChildNodes)(fragment);
@@ -32,6 +32,7 @@ var _default = exports.default = function _default(container, html) {
32
32
  // We are inserting elements in reverse order
33
33
  while (i >= 0) {
34
34
  var element = elements[i];
35
+ decorateProposition(element);
35
36
  var firstChild = (0, _index2.getFirstChild)(container);
36
37
  if (firstChild) {
37
38
  (0, _index2.insertBefore)(firstChild, element);
@@ -13,7 +13,7 @@ the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTA
13
13
  OF ANY KIND, either express or implied. See the License for the specific language
14
14
  governing permissions and limitations under the License.
15
15
  */
16
- var _default = exports.default = function _default(container, _ref) {
16
+ var _default = exports.default = function _default(container, _ref, decorateProposition) {
17
17
  var from = _ref.from,
18
18
  to = _ref.to;
19
19
  var children = (0, _index.getChildren)(container);
@@ -29,4 +29,6 @@ var _default = exports.default = function _default(container, _ref) {
29
29
  } else {
30
30
  (0, _index.insertBefore)(elementTo, elementFrom);
31
31
  }
32
+ decorateProposition(elementTo);
33
+ decorateProposition(elementFrom);
32
34
  };
@@ -2,6 +2,7 @@
2
2
 
3
3
  exports.default = void 0;
4
4
  var _index = require("../../../utils/index.js");
5
+ var _initDomActionsModules = require("./initDomActionsModules.js");
5
6
  /*
6
7
  Copyright 2021 Adobe. All rights reserved.
7
8
  This file is licensed to you under the Apache License, Version 2.0 (the "License");
@@ -19,12 +20,11 @@ governing permissions and limitations under the License.
19
20
  * target offers, to align with the way it works in at.js.
20
21
  */
21
22
 
22
- var ACTION_CUSTOM_CODE = "customCode";
23
23
  var TARGET_BODY_SELECTOR = "BODY > *:eq(0)";
24
24
  var _default = exports.default = function _default(action) {
25
25
  var selector = action.selector,
26
26
  type = action.type;
27
- if (type !== ACTION_CUSTOM_CODE) {
27
+ if (type !== _initDomActionsModules.DOM_ACTION_CUSTOM_CODE) {
28
28
  return action;
29
29
  }
30
30
  if (selector !== TARGET_BODY_SELECTOR) {
@@ -7,6 +7,7 @@ var _index2 = require("./dom/index.js");
7
7
  var _index3 = require("../../../utils/index.js");
8
8
  var _isBlankString = require("../../../utils/isBlankString.js");
9
9
  var _tagName = require("../../../constants/tagName.js");
10
+ var _initDomActionsModules = require("./initDomActionsModules.js");
10
11
  /*
11
12
  Copyright 2021 Adobe. All rights reserved.
12
13
  This file is licensed to you under the Apache License, Version 2.0 (the "License");
@@ -25,7 +26,6 @@ governing permissions and limitations under the License.
25
26
  * Offer content should also be filtered, so that only tags allowed in HEAD are preserved.
26
27
  */
27
28
 
28
- var APPEND_HTML = "appendHtml";
29
29
  var HEAD_TAGS_SELECTOR = "SCRIPT,LINK,STYLE";
30
30
  var filterHeadContent = function filterHeadContent(content) {
31
31
  var container = (0, _index2.createFragment)(content);
@@ -48,7 +48,7 @@ var _default = exports.default = function _default(action) {
48
48
  if (!(0, _scripts.is)(container[0], _tagName.HEAD)) {
49
49
  return result;
50
50
  }
51
- result.type = APPEND_HTML;
51
+ result.type = _initDomActionsModules.DOM_ACTION_APPEND_HTML;
52
52
  result.content = filterHeadContent(content);
53
53
  return result;
54
54
  };
@@ -14,7 +14,8 @@ the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTA
14
14
  OF ANY KIND, either express or implied. See the License for the specific language
15
15
  governing permissions and limitations under the License.
16
16
  */
17
- var _default = exports.default = function _default(container, html) {
18
- (0, _insertHtmlBefore.default)(container, html);
19
- (0, _index.removeNode)(container);
17
+ var _default = exports.default = function _default(container, html, decorateProposition) {
18
+ return (0, _insertHtmlBefore.default)(container, html, decorateProposition).then(function () {
19
+ (0, _index.removeNode)(container);
20
+ });
20
21
  };
@@ -9,7 +9,7 @@ var _index2 = require("./dom/index.js");
9
9
  function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
10
10
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
11
11
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
12
- function _defineProperty(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; }
12
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
13
13
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
14
14
  function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } /*
15
15
  Copyright 2019 Adobe. All rights reserved.