@absmartly/sdk-plugins 1.1.1 → 1.2.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 (115) hide show
  1. package/README.md +34 -33
  2. package/dist/absmartly-cookie.min.js +1 -1
  3. package/dist/absmartly-dom-changes-core.min.js +1 -1
  4. package/dist/absmartly-dom-changes-lite.min.js +1 -1
  5. package/dist/absmartly-overrides-full.min.js +1 -1
  6. package/dist/absmartly-overrides-lite.min.js +1 -1
  7. package/dist/absmartly-sdk-plugins.min.js +1 -1
  8. package/dist/absmartly-vitals.min.js +1 -1
  9. package/es/cookies/CookiePlugin.js +10 -8
  10. package/es/cookies/CookiePlugin.js.map +1 -1
  11. package/es/core/DOMChangesPluginLite.js +226 -248
  12. package/es/core/DOMChangesPluginLite.js.map +1 -1
  13. package/es/core/DOMManipulatorLite.js +68 -10
  14. package/es/core/DOMManipulatorLite.js.map +1 -1
  15. package/es/core/ExposureTracker.js +136 -11
  16. package/es/core/ExposureTracker.js.map +1 -1
  17. package/es/entries/dom-with-overrides-lite.js +3 -0
  18. package/es/entries/dom-with-overrides-lite.js.map +1 -1
  19. package/es/index.js +9 -2
  20. package/es/index.js.map +1 -1
  21. package/es/overrides/OverridesPlugin.js +2 -2
  22. package/es/overrides/OverridesPlugin.js.map +1 -1
  23. package/es/overrides/OverridesPluginLite.js +29 -1
  24. package/es/overrides/OverridesPluginLite.js.map +1 -1
  25. package/es/overrides/overridesUtils.js +27 -18
  26. package/es/overrides/overridesUtils.js.map +1 -1
  27. package/es/parsers/VariantExtractor.js +80 -67
  28. package/es/parsers/VariantExtractor.js.map +1 -1
  29. package/es/url-redirect/URLRedirectExtractor.js +185 -0
  30. package/es/url-redirect/URLRedirectExtractor.js.map +1 -0
  31. package/es/url-redirect/URLRedirectMatcher.js +115 -0
  32. package/es/url-redirect/URLRedirectMatcher.js.map +1 -0
  33. package/es/url-redirect/URLRedirectPlugin.js +350 -0
  34. package/es/url-redirect/URLRedirectPlugin.js.map +1 -0
  35. package/es/url-redirect/index.js +5 -0
  36. package/es/url-redirect/index.js.map +1 -0
  37. package/es/url-redirect/types.js +2 -0
  38. package/es/url-redirect/types.js.map +1 -0
  39. package/es/utils/persistence.js +278 -0
  40. package/es/utils/persistence.js.map +1 -0
  41. package/es/utils/plugin-registry.js +47 -0
  42. package/es/utils/plugin-registry.js.map +1 -0
  43. package/es/vitals/WebVitalsPlugin.js +19 -4
  44. package/es/vitals/WebVitalsPlugin.js.map +1 -1
  45. package/lib/cookies/CookiePlugin.d.ts +2 -1
  46. package/lib/cookies/CookiePlugin.js +10 -8
  47. package/lib/cookies/CookiePlugin.js.map +1 -1
  48. package/lib/core/DOMChangesPluginLite.d.ts +13 -9
  49. package/lib/core/DOMChangesPluginLite.js +226 -248
  50. package/lib/core/DOMChangesPluginLite.js.map +1 -1
  51. package/lib/core/DOMManipulatorLite.js +68 -10
  52. package/lib/core/DOMManipulatorLite.js.map +1 -1
  53. package/lib/core/ExposureTracker.d.ts +6 -0
  54. package/lib/core/ExposureTracker.js +136 -11
  55. package/lib/core/ExposureTracker.js.map +1 -1
  56. package/lib/entries/dom-with-overrides-lite.d.ts +2 -0
  57. package/lib/entries/dom-with-overrides-lite.js +3 -1
  58. package/lib/entries/dom-with-overrides-lite.js.map +1 -1
  59. package/lib/index.d.ts +8 -2
  60. package/lib/index.js +17 -1
  61. package/lib/index.js.map +1 -1
  62. package/lib/overrides/OverridesPlugin.js +2 -2
  63. package/lib/overrides/OverridesPlugin.js.map +1 -1
  64. package/lib/overrides/OverridesPluginLite.d.ts +8 -0
  65. package/lib/overrides/OverridesPluginLite.js +29 -1
  66. package/lib/overrides/OverridesPluginLite.js.map +1 -1
  67. package/lib/overrides/overridesUtils.d.ts +10 -5
  68. package/lib/overrides/overridesUtils.js +28 -18
  69. package/lib/overrides/overridesUtils.js.map +1 -1
  70. package/lib/parsers/VariantExtractor.d.ts +4 -5
  71. package/lib/parsers/VariantExtractor.js +80 -67
  72. package/lib/parsers/VariantExtractor.js.map +1 -1
  73. package/lib/types/index.d.ts +5 -12
  74. package/lib/url-redirect/URLRedirectExtractor.d.ts +16 -0
  75. package/lib/url-redirect/URLRedirectExtractor.js +188 -0
  76. package/lib/url-redirect/URLRedirectExtractor.js.map +1 -0
  77. package/lib/url-redirect/URLRedirectMatcher.d.ts +8 -0
  78. package/lib/url-redirect/URLRedirectMatcher.js +118 -0
  79. package/lib/url-redirect/URLRedirectMatcher.js.map +1 -0
  80. package/lib/url-redirect/URLRedirectPlugin.d.ts +21 -0
  81. package/lib/url-redirect/URLRedirectPlugin.js +353 -0
  82. package/lib/url-redirect/URLRedirectPlugin.js.map +1 -0
  83. package/lib/url-redirect/index.d.ts +4 -0
  84. package/lib/url-redirect/index.js +25 -0
  85. package/lib/url-redirect/index.js.map +1 -0
  86. package/lib/url-redirect/types.d.ts +29 -0
  87. package/lib/url-redirect/types.js +3 -0
  88. package/lib/url-redirect/types.js.map +1 -0
  89. package/lib/utils/persistence.d.ts +23 -0
  90. package/lib/utils/persistence.js +281 -0
  91. package/lib/utils/persistence.js.map +1 -0
  92. package/lib/utils/plugin-registry.d.ts +40 -0
  93. package/lib/utils/plugin-registry.js +53 -0
  94. package/lib/utils/plugin-registry.js.map +1 -0
  95. package/lib/vitals/WebVitalsPlugin.d.ts +2 -0
  96. package/lib/vitals/WebVitalsPlugin.js +19 -4
  97. package/lib/vitals/WebVitalsPlugin.js.map +1 -1
  98. package/package.json +59 -3
  99. package/types/cookies/CookiePlugin.d.ts +2 -1
  100. package/types/core/DOMChangesPluginLite.d.ts +13 -9
  101. package/types/core/ExposureTracker.d.ts +6 -0
  102. package/types/entries/dom-with-overrides-lite.d.ts +2 -0
  103. package/types/index.d.ts +8 -2
  104. package/types/overrides/OverridesPluginLite.d.ts +8 -0
  105. package/types/overrides/overridesUtils.d.ts +10 -5
  106. package/types/parsers/VariantExtractor.d.ts +4 -5
  107. package/types/types/index.d.ts +5 -12
  108. package/types/url-redirect/URLRedirectExtractor.d.ts +16 -0
  109. package/types/url-redirect/URLRedirectMatcher.d.ts +8 -0
  110. package/types/url-redirect/URLRedirectPlugin.d.ts +21 -0
  111. package/types/url-redirect/index.d.ts +4 -0
  112. package/types/url-redirect/types.d.ts +29 -0
  113. package/types/utils/persistence.d.ts +23 -0
  114. package/types/utils/plugin-registry.d.ts +40 -0
  115. package/types/vitals/WebVitalsPlugin.d.ts +2 -0
@@ -0,0 +1,281 @@
1
+ "use strict";
2
+ var __values = (this && this.__values) || function(o) {
3
+ var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
4
+ if (m) return m.call(o);
5
+ if (o && typeof o.length === "number") return {
6
+ next: function () {
7
+ if (o && i >= o.length) o = void 0;
8
+ return { value: o && o[i++], done: !o };
9
+ }
10
+ };
11
+ throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
12
+ };
13
+ var __read = (this && this.__read) || function (o, n) {
14
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
15
+ if (!m) return o;
16
+ var i = m.call(o), r, ar = [], e;
17
+ try {
18
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
19
+ }
20
+ catch (error) { e = { error: error }; }
21
+ finally {
22
+ try {
23
+ if (r && !r.done && (m = i["return"])) m.call(i);
24
+ }
25
+ finally { if (e) throw e.error; }
26
+ }
27
+ return ar;
28
+ };
29
+ Object.defineProperty(exports, "__esModule", { value: true });
30
+ exports.DOMPersistenceManager = void 0;
31
+ var debug_1 = require("./debug");
32
+ var DOMPersistenceManager = /** @class */ (function () {
33
+ function DOMPersistenceManager(config) {
34
+ this.watchedElements = new WeakMap();
35
+ this.persistenceObserver = null;
36
+ this.reapplyingElements = new Set();
37
+ this.reapplyLogThrottle = new Map();
38
+ this.appliedChanges = new Map();
39
+ this.config = config;
40
+ }
41
+ DOMPersistenceManager.prototype.watchElement = function (element, experimentName, change) {
42
+ var experiments = this.watchedElements.get(element);
43
+ if (!experiments) {
44
+ experiments = new Set();
45
+ this.watchedElements.set(element, experiments);
46
+ }
47
+ experiments.add(experimentName);
48
+ if (!this.appliedChanges.has(experimentName)) {
49
+ this.appliedChanges.set(experimentName, []);
50
+ }
51
+ var changes = this.appliedChanges.get(experimentName);
52
+ var isNewWatch = !changes.includes(change);
53
+ if (isNewWatch) {
54
+ changes.push(change);
55
+ if (this.config.debug) {
56
+ var currentStyles_1 = {};
57
+ if (change.value && typeof change.value === 'object') {
58
+ Object.keys(change.value).forEach(function (prop) {
59
+ var cssProp = prop.replace(/([A-Z])/g, '-$1').toLowerCase();
60
+ currentStyles_1[cssProp] = element.style.getPropertyValue(cssProp);
61
+ });
62
+ }
63
+ (0, debug_1.logDebug)('[WATCH-ELEMENT] Started watching element for persistence', {
64
+ experimentName: experimentName,
65
+ selector: change.selector,
66
+ element: element.tagName,
67
+ changeType: change.type,
68
+ value: change.value,
69
+ currentStyles: change.type === 'style' ? currentStyles_1 : undefined,
70
+ timestamp: Date.now(),
71
+ });
72
+ }
73
+ }
74
+ if (!this.persistenceObserver) {
75
+ this.setupPersistenceObserver();
76
+ }
77
+ };
78
+ DOMPersistenceManager.prototype.unwatchElement = function (element, experimentName) {
79
+ var experiments = this.watchedElements.get(element);
80
+ if (experiments) {
81
+ experiments.delete(experimentName);
82
+ if (experiments.size === 0) {
83
+ this.watchedElements.delete(element);
84
+ }
85
+ }
86
+ };
87
+ DOMPersistenceManager.prototype.unwatchExperiment = function (experimentName) {
88
+ this.appliedChanges.delete(experimentName);
89
+ };
90
+ DOMPersistenceManager.prototype.getAppliedChanges = function () {
91
+ return this.appliedChanges;
92
+ };
93
+ DOMPersistenceManager.prototype.clearAll = function () {
94
+ this.appliedChanges.clear();
95
+ };
96
+ DOMPersistenceManager.prototype.destroy = function () {
97
+ if (this.persistenceObserver) {
98
+ this.persistenceObserver.disconnect();
99
+ this.persistenceObserver = null;
100
+ }
101
+ this.appliedChanges.clear();
102
+ this.reapplyingElements.clear();
103
+ this.reapplyLogThrottle.clear();
104
+ };
105
+ DOMPersistenceManager.prototype.setupPersistenceObserver = function () {
106
+ var _this = this;
107
+ if (this.persistenceObserver)
108
+ return;
109
+ if (this.config.debug) {
110
+ (0, debug_1.logDebug)('[PERSISTENCE-OBSERVER] Setting up persistence observer', {
111
+ timestamp: Date.now(),
112
+ });
113
+ }
114
+ this.persistenceObserver = new MutationObserver(function (mutations) {
115
+ if (_this.config.debug) {
116
+ (0, debug_1.logDebug)('[MUTATION-DETECTED] Persistence observer detected mutations', {
117
+ mutationCount: mutations.length,
118
+ timestamp: Date.now(),
119
+ });
120
+ }
121
+ mutations.forEach(function (mutation) {
122
+ var element = mutation.target;
123
+ if (_this.reapplyingElements.has(element)) {
124
+ if (_this.config.debug) {
125
+ (0, debug_1.logDebug)('[MUTATION-SKIP] Skipping mutation - currently reapplying', {
126
+ element: element.tagName,
127
+ });
128
+ }
129
+ return;
130
+ }
131
+ var experiments = _this.watchedElements.get(element);
132
+ if (experiments) {
133
+ if (_this.config.debug) {
134
+ var elementKey = "mutation:".concat(element.tagName, ":").concat(element.getAttribute('name') || element.className);
135
+ var now = Date.now();
136
+ var lastLogged = _this.reapplyLogThrottle.get(elementKey) || 0;
137
+ if (now - lastLogged > 5000) {
138
+ (0, debug_1.logDebug)('[MUTATION-ON-WATCHED] Mutation detected on watched element', {
139
+ element: element.tagName,
140
+ attributeName: mutation.attributeName,
141
+ oldValue: mutation.oldValue,
142
+ experiments: Array.from(experiments),
143
+ });
144
+ _this.reapplyLogThrottle.set(elementKey, now);
145
+ }
146
+ }
147
+ experiments.forEach(function (experimentName) {
148
+ var appliedChanges = _this.appliedChanges.get(experimentName);
149
+ if (appliedChanges) {
150
+ appliedChanges.forEach(function (change) {
151
+ var e_1, _a, e_2, _b;
152
+ var needsReapply = false;
153
+ if (change.type === 'style' &&
154
+ mutation.attributeName === 'style' &&
155
+ change.persistStyle !== false) {
156
+ needsReapply = _this.checkStyleOverwritten(element, change.value);
157
+ }
158
+ else if (change.type === 'attribute' && change.persistAttribute !== false) {
159
+ if (change.value && typeof change.value === 'object') {
160
+ try {
161
+ for (var _c = __values(Object.keys(change.value)), _d = _c.next(); !_d.done; _d = _c.next()) {
162
+ var attrName = _d.value;
163
+ if (mutation.attributeName === attrName) {
164
+ needsReapply = _this.checkAttributeOverwritten(element, change.value);
165
+ break;
166
+ }
167
+ }
168
+ }
169
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
170
+ finally {
171
+ try {
172
+ if (_d && !_d.done && (_a = _c.return)) _a.call(_c);
173
+ }
174
+ finally { if (e_1) throw e_1.error; }
175
+ }
176
+ }
177
+ }
178
+ if (needsReapply) {
179
+ _this.reapplyingElements.add(element);
180
+ var logKey = "".concat(experimentName, "-").concat(change.selector);
181
+ var now = Date.now();
182
+ var lastLogged = _this.reapplyLogThrottle.get(logKey) || 0;
183
+ if (_this.config.debug && now - lastLogged > 5000) {
184
+ (0, debug_1.logDebug)('[REAPPLY-TRIGGERED] Reapplying after mutation (React/framework conflict detected)', {
185
+ experimentName: experimentName,
186
+ selector: change.selector,
187
+ element: element.tagName,
188
+ changeType: change.type,
189
+ timestamp: now,
190
+ });
191
+ _this.reapplyLogThrottle.set(logKey, now);
192
+ if (_this.reapplyLogThrottle.size > 100) {
193
+ var oldestAllowed = now - 60000;
194
+ try {
195
+ for (var _e = __values(_this.reapplyLogThrottle.entries()), _f = _e.next(); !_f.done; _f = _e.next()) {
196
+ var _g = __read(_f.value, 2), key = _g[0], time = _g[1];
197
+ if (time < oldestAllowed) {
198
+ _this.reapplyLogThrottle.delete(key);
199
+ }
200
+ }
201
+ }
202
+ catch (e_2_1) { e_2 = { error: e_2_1 }; }
203
+ finally {
204
+ try {
205
+ if (_f && !_f.done && (_b = _e.return)) _b.call(_e);
206
+ }
207
+ finally { if (e_2) throw e_2.error; }
208
+ }
209
+ }
210
+ }
211
+ _this.config.onReapply(change, experimentName);
212
+ setTimeout(function () {
213
+ _this.reapplyingElements.delete(element);
214
+ }, 0);
215
+ }
216
+ });
217
+ }
218
+ });
219
+ }
220
+ });
221
+ });
222
+ this.persistenceObserver.observe(document.body, {
223
+ attributes: true,
224
+ subtree: true,
225
+ attributeOldValue: true,
226
+ });
227
+ if (this.config.debug) {
228
+ (0, debug_1.logDebug)('[PERSISTENCE-OBSERVER] Setup complete - now observing mutations', {
229
+ target: 'document.body',
230
+ attributeFilter: ['style', 'class'],
231
+ subtree: true,
232
+ timestamp: Date.now(),
233
+ });
234
+ }
235
+ };
236
+ DOMPersistenceManager.prototype.checkStyleOverwritten = function (element, expectedStyles) {
237
+ var e_3, _a;
238
+ try {
239
+ for (var _b = __values(Object.entries(expectedStyles)), _c = _b.next(); !_c.done; _c = _b.next()) {
240
+ var _d = __read(_c.value, 2), prop = _d[0], value = _d[1];
241
+ var cssProp = prop.replace(/([A-Z])/g, '-$1').toLowerCase();
242
+ var currentValue = element.style.getPropertyValue(cssProp);
243
+ var currentPriority = element.style.getPropertyPriority(cssProp);
244
+ if (currentValue !== value || (value.includes('!important') && !currentPriority)) {
245
+ return true;
246
+ }
247
+ }
248
+ }
249
+ catch (e_3_1) { e_3 = { error: e_3_1 }; }
250
+ finally {
251
+ try {
252
+ if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
253
+ }
254
+ finally { if (e_3) throw e_3.error; }
255
+ }
256
+ return false;
257
+ };
258
+ DOMPersistenceManager.prototype.checkAttributeOverwritten = function (element, expectedAttributes) {
259
+ var e_4, _a;
260
+ try {
261
+ for (var _b = __values(Object.entries(expectedAttributes)), _c = _b.next(); !_c.done; _c = _b.next()) {
262
+ var _d = __read(_c.value, 2), attr = _d[0], value = _d[1];
263
+ var currentValue = element.getAttribute(attr);
264
+ if (currentValue !== value) {
265
+ return true;
266
+ }
267
+ }
268
+ }
269
+ catch (e_4_1) { e_4 = { error: e_4_1 }; }
270
+ finally {
271
+ try {
272
+ if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
273
+ }
274
+ finally { if (e_4) throw e_4.error; }
275
+ }
276
+ return false;
277
+ };
278
+ return DOMPersistenceManager;
279
+ }());
280
+ exports.DOMPersistenceManager = DOMPersistenceManager;
281
+ //# sourceMappingURL=persistence.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"persistence.js","sourceRoot":"","sources":["../../src/utils/persistence.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,40 @@
1
+ /**
2
+ * Global plugin registry for ABsmartly plugins
3
+ * Allows detection and inspection of loaded plugins
4
+ */
5
+ export interface PluginRegistryEntry {
6
+ name: string;
7
+ version: string;
8
+ initialized: boolean;
9
+ timestamp: number;
10
+ capabilities?: string[];
11
+ instance?: any;
12
+ }
13
+ export interface PluginRegistry {
14
+ dom?: PluginRegistryEntry;
15
+ overrides?: PluginRegistryEntry;
16
+ cookie?: PluginRegistryEntry;
17
+ vitals?: PluginRegistryEntry;
18
+ urlRedirect?: PluginRegistryEntry;
19
+ }
20
+ declare global {
21
+ interface Window {
22
+ __ABSMARTLY_PLUGINS__?: PluginRegistry;
23
+ }
24
+ }
25
+ /**
26
+ * Register a plugin in the global registry
27
+ */
28
+ export declare function registerPlugin(pluginType: keyof PluginRegistry, entry: PluginRegistryEntry): void;
29
+ /**
30
+ * Unregister a plugin from the global registry
31
+ */
32
+ export declare function unregisterPlugin(pluginType: keyof PluginRegistry): void;
33
+ /**
34
+ * Check if a plugin is registered
35
+ */
36
+ export declare function isPluginRegistered(pluginType: keyof PluginRegistry): boolean;
37
+ /**
38
+ * Get all registered plugins
39
+ */
40
+ export declare function getRegisteredPlugins(): PluginRegistry;
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ /**
3
+ * Global plugin registry for ABsmartly plugins
4
+ * Allows detection and inspection of loaded plugins
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.registerPlugin = registerPlugin;
8
+ exports.unregisterPlugin = unregisterPlugin;
9
+ exports.isPluginRegistered = isPluginRegistered;
10
+ exports.getRegisteredPlugins = getRegisteredPlugins;
11
+ /**
12
+ * Register a plugin in the global registry
13
+ */
14
+ function registerPlugin(pluginType, entry) {
15
+ if (typeof window === 'undefined') {
16
+ return; // Not in browser environment
17
+ }
18
+ if (!window.__ABSMARTLY_PLUGINS__) {
19
+ window.__ABSMARTLY_PLUGINS__ = {};
20
+ }
21
+ window.__ABSMARTLY_PLUGINS__[pluginType] = entry;
22
+ }
23
+ /**
24
+ * Unregister a plugin from the global registry
25
+ */
26
+ function unregisterPlugin(pluginType) {
27
+ if (typeof window === 'undefined') {
28
+ return;
29
+ }
30
+ if (window.__ABSMARTLY_PLUGINS__) {
31
+ delete window.__ABSMARTLY_PLUGINS__[pluginType];
32
+ }
33
+ }
34
+ /**
35
+ * Check if a plugin is registered
36
+ */
37
+ function isPluginRegistered(pluginType) {
38
+ var _a;
39
+ if (typeof window === 'undefined') {
40
+ return false;
41
+ }
42
+ return !!(window.__ABSMARTLY_PLUGINS__ && ((_a = window.__ABSMARTLY_PLUGINS__[pluginType]) === null || _a === void 0 ? void 0 : _a.initialized));
43
+ }
44
+ /**
45
+ * Get all registered plugins
46
+ */
47
+ function getRegisteredPlugins() {
48
+ if (typeof window === 'undefined') {
49
+ return {};
50
+ }
51
+ return window.__ABSMARTLY_PLUGINS__ || {};
52
+ }
53
+ //# sourceMappingURL=plugin-registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin-registry.js","sourceRoot":"","sources":["../../src/utils/plugin-registry.ts"],"names":[],"mappings":";AAAA;;;GAGG;;AA4BH,wCAUC;AAKD,4CAQC;AAKD,gDAMC;AAKD,oDAMC;AAhDD;;GAEG;AACH,SAAgB,cAAc,CAAC,UAAgC,EAAE,KAA0B;IACzF,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;QAClC,OAAO,CAAC,6BAA6B;IACvC,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,qBAAqB,EAAE,CAAC;QAClC,MAAM,CAAC,qBAAqB,GAAG,EAAE,CAAC;IACpC,CAAC;IAED,MAAM,CAAC,qBAAqB,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC;AACnD,CAAC;AAED;;GAEG;AACH,SAAgB,gBAAgB,CAAC,UAAgC;IAC/D,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;QAClC,OAAO;IACT,CAAC;IAED,IAAI,MAAM,CAAC,qBAAqB,EAAE,CAAC;QACjC,OAAO,MAAM,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;IAClD,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAgB,kBAAkB,CAAC,UAAgC;;IACjE,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;QAClC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,qBAAqB,KAAI,MAAA,MAAM,CAAC,qBAAqB,CAAC,UAAU,CAAC,0CAAE,WAAW,CAAA,CAAC,CAAC;AACnG,CAAC;AAED;;GAEG;AACH,SAAgB,oBAAoB;IAClC,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;QAClC,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,OAAO,MAAM,CAAC,qBAAqB,IAAI,EAAE,CAAC;AAC5C,CAAC"}
@@ -31,6 +31,8 @@ export declare class WebVitalsPlugin {
31
31
  trackPageMetricsData(context?: Context): void;
32
32
  private trackImmediateMetrics;
33
33
  private trackLoadMetrics;
34
+ start(): Promise<void>;
35
+ ready(): Promise<void>;
34
36
  initialize(): Promise<void>;
35
37
  reset(): void;
36
38
  }
@@ -391,12 +391,12 @@ var WebVitalsPlugin = /** @class */ (function () {
391
391
  finally { if (e_3) throw e_3.error; }
392
392
  }
393
393
  };
394
- WebVitalsPlugin.prototype.initialize = function () {
394
+ WebVitalsPlugin.prototype.start = function () {
395
395
  return __awaiter(this, void 0, void 0, function () {
396
396
  return __generator(this, function (_a) {
397
- this.debugLog('Initializing WebVitalsPlugin');
397
+ this.debugLog('Starting WebVitalsPlugin');
398
398
  if (!this.context) {
399
- this.debugLog('No context available during initialization');
399
+ this.debugLog('No context available during start');
400
400
  return [2 /*return*/];
401
401
  }
402
402
  if (this.autoTrack) {
@@ -411,11 +411,26 @@ var WebVitalsPlugin = /** @class */ (function () {
411
411
  this.trackPageMetricsData();
412
412
  }
413
413
  }
414
- this.debugLog('WebVitalsPlugin initialized successfully');
414
+ this.debugLog('WebVitalsPlugin started successfully');
415
415
  return [2 /*return*/];
416
416
  });
417
417
  });
418
418
  };
419
+ // Aliases for backwards compatibility
420
+ WebVitalsPlugin.prototype.ready = function () {
421
+ return __awaiter(this, void 0, void 0, function () {
422
+ return __generator(this, function (_a) {
423
+ return [2 /*return*/, this.start()];
424
+ });
425
+ });
426
+ };
427
+ WebVitalsPlugin.prototype.initialize = function () {
428
+ return __awaiter(this, void 0, void 0, function () {
429
+ return __generator(this, function (_a) {
430
+ return [2 /*return*/, this.start()];
431
+ });
432
+ });
433
+ };
419
434
  WebVitalsPlugin.prototype.reset = function () {
420
435
  this.metricsTracked = false;
421
436
  this.debugLog('WebVitalsPlugin reset');
@@ -1 +1 @@
1
- {"version":3,"file":"WebVitalsPlugin.js","sourceRoot":"","sources":["../../src/vitals/WebVitalsPlugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WebVitalsPlugin.js","sourceRoot":"","sources":["../../src/vitals/WebVitalsPlugin.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,wCAA0C;AAmB1C;IAUE,yBAAY,OAAoC;QAApC,wBAAA,EAAA,YAAoC;QAJxC,oBAAe,GAAY,KAAK,CAAC;QACjC,mBAAc,GAAY,KAAK,CAAC;QAItC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC/B,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,KAAK,CAAC;QACpC,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,cAAc,KAAK,KAAK,CAAC;QACvD,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,KAAK,KAAK,CAAC;QAC3D,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,KAAK,KAAK,CAAC;QAE7C,8EAA8E;QAC9E,+EAA+E;QAC/E,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACzD,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;YACpD,IAAI,CAAC,QAAQ,CAAC,wCAAwC,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC;IAEO,kCAAQ,GAAhB;QAAiB,cAAkB;aAAlB,UAAkB,EAAlB,qBAAkB,EAAlB,IAAkB;YAAlB,yBAAkB;;QACjC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,gBAAQ,8BAAC,mBAAmB,UAAK,IAAI,WAAE;QACzC,CAAC;IACH,CAAC;IAEM,oCAAU,GAAjB,UAAkB,OAAgB;QAChC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,QAAQ,CAAC,iCAAiC,CAAC,CAAC;IACnD,CAAC;IAEa,8CAAoB,GAAlC;;;;;;wBACE,IAAI,IAAI,CAAC,eAAe,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;4BAC1D,sBAAO,IAAI,EAAC;wBACd,CAAC;;;;wBAKmB,sFAAa,YAAY,QAAC;;wBAAtC,SAAS,GAAG,SAA0B;wBAC5C,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;wBAC5B,IAAI,CAAC,QAAQ,CAAC,uCAAuC,CAAC,CAAC;wBACvD,sBAAO,SAAS,EAAC;;;wBAEjB,IAAA,gBAAQ,EAAC,sDAAsD,EAAE,OAAK,CAAC,CAAC;wBACxE,MAAM,OAAK,CAAC;;;;;KAEf;IAEY,+CAAqB,GAAlC,UAAmC,OAAiB;;;;;;;wBAC5C,GAAG,GAAG,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC;wBACpC,IAAI,CAAC,GAAG,EAAE,CAAC;4BACT,IAAA,gBAAQ,EAAC,gEAAgE,CAAC,CAAC;4BAC3E,sBAAO;wBACT,CAAC;wBAED,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;4BACzB,sBAAO;wBACT,CAAC;;;;wBAKK,SAAS,SAAK,CAAC;6BACf,IAAI,CAAC,gBAAgB,EAArB,wBAAqB;wBACX,qBAAM,IAAI,CAAC,gBAAgB,EAAA;;wBAAvC,SAAS,GAAG,SAA2B,CAAC;;4BAG5B,qBAAM,IAAI,CAAC,oBAAoB,EAAE,EAAA;;wBAD7C,mDAAmD;wBACnD,SAAS,GAAG,SAAiC,CAAC;;;wBAGhD,IAAI,CAAC,SAAS,EAAE,CAAC;4BACf,IAAA,gBAAQ,EAAC,oDAAoD,CAAC,CAAC;4BAC/D,sBAAO;wBACT,CAAC;wBAED,wBAAwB;wBACxB,SAAS,CAAC,KAAK,CAAC,UAAC,MAAc;4BAC7B,KAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;4BAC9B,GAAG,CAAC,KAAK,CAAC,WAAW,eAAO,MAAM,EAAG,CAAC;wBACxC,CAAC,CAAC,CAAC;wBAEH,SAAS,CAAC,KAAK,CAAC,UAAC,MAAc;4BAC7B,KAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;4BAC9B,GAAG,CAAC,KAAK,CAAC,WAAW,eAAO,MAAM,EAAG,CAAC;wBACxC,CAAC,CAAC,CAAC;wBAEH,SAAS,CAAC,KAAK,CAAC,UAAC,MAAc;4BAC7B,KAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;4BAC9B,GAAG,CAAC,KAAK,CAAC,WAAW,eAAO,MAAM,EAAG,CAAC;wBACxC,CAAC,CAAC,CAAC;wBAEH,SAAS,CAAC,KAAK,CAAC,UAAC,MAAc;4BAC7B,KAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;4BAC9B,GAAG,CAAC,KAAK,CAAC,WAAW,eAAO,MAAM,EAAG,CAAC;wBACxC,CAAC,CAAC,CAAC;wBAEH,SAAS,CAAC,MAAM,CAAC,UAAC,MAAc;4BAC9B,KAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;4BAC/B,GAAG,CAAC,KAAK,CAAC,YAAY,eAAO,MAAM,EAAG,CAAC;wBACzC,CAAC,CAAC,CAAC;wBAEH,IAAI,CAAC,QAAQ,CAAC,iCAAiC,CAAC,CAAC;;;;wBAEjD,IAAA,gBAAQ,EAAC,8CAA8C,EAAE,OAAK,CAAC,CAAC;wBAChE,GAAG,CAAC,KAAK,CAAC,uBAAuB,EAAE;4BACjC,KAAK,EAAG,OAAe,CAAC,OAAO;4BAC/B,IAAI,EAAG,OAAe,CAAC,IAAI;yBAC5B,CAAC,CAAC;;;;;;KAEN;IAEM,8CAAoB,GAA3B,UAA4B,OAAiB;QAA7C,iBA8BC;QA7BC,IAAM,GAAG,GAAG,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC;QACpC,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,IAAA,gBAAQ,EAAC,kEAAkE,CAAC,CAAC;YAC7E,OAAO;QACT,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YAClD,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,0BAA0B;YAC1B,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC;YAEhC,+BAA+B;YAC/B,IAAI,QAAQ,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;gBACvC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;YAC7B,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,gBAAgB,CAAC,MAAM,EAAE,cAAM,OAAA,KAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAA1B,CAA0B,CAAC,CAAC;YACpE,CAAC;YAED,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC7B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAA,gBAAQ,EAAC,gDAAgD,EAAE,KAAK,CAAC,CAAC;YAClE,GAAG,CAAC,KAAK,CAAC,wBAAwB,EAAE;gBAClC,KAAK,EAAG,KAAe,CAAC,OAAO;gBAC/B,IAAI,EAAG,KAAe,CAAC,IAAI;aAC5B,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAEO,+CAAqB,GAA7B,UAA8B,OAAgB;;QAC5C,IAAM,UAAU,GAAG,WAAW,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC,CAAC,CAAgC,CAAC;QAChG,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,IAAI,CAAC,QAAQ,CAAC,iCAAiC,CAAC,CAAC;YACjD,OAAO;QACT,CAAC;QAED,yBAAyB;QACzB,IAAM,aAAa,GAA2B;YAC5C,GAAG,EAAE,UAAU,CAAC,eAAe,GAAG,UAAU,CAAC,iBAAiB;YAC9D,GAAG,EAAE,UAAU,CAAC,UAAU,GAAG,UAAU,CAAC,YAAY;YACpD,IAAI,EAAE,UAAU,CAAC,aAAa,GAAG,UAAU,CAAC,YAAY;YACxD,QAAQ,EAAE,UAAU,CAAC,WAAW,GAAG,UAAU,CAAC,aAAa;YAC3D,WAAW,EAAE,UAAU,CAAC,WAAW,GAAG,UAAU,CAAC,YAAY;SAC9D,CAAC;;YAEF,KAA8B,IAAA,KAAA,SAAA,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAA,gBAAA,4BAAE,CAAC;gBAAnD,IAAA,KAAA,mBAAe,EAAd,MAAM,QAAA,EAAE,KAAK,QAAA;gBACvB,OAAO,CAAC,KAAK,CAAC,sBAAe,MAAM,CAAE,EAAE;oBACrC,KAAK,OAAA;oBACL,IAAI,EAAE,IAAI;iBACX,CAAC,CAAC;gBACH,IAAI,CAAC,QAAQ,CAAC,sBAAe,MAAM,MAAG,EAAE,KAAK,CAAC,CAAC;YACjD,CAAC;;;;;;;;;QAED,eAAe;QACf,IAAM,WAAW,GAA2B;YAC1C,UAAU,EAAE,UAAU,CAAC,YAAY;YACnC,WAAW,EAAE,UAAU,CAAC,YAAY,GAAG,UAAU,CAAC,eAAe;YACjE,SAAS,EAAE,UAAU,CAAC,eAAe;YACrC,oBAAoB,EAAE,UAAU,CAAC,eAAe;SACjD,CAAC;;YAEF,KAA8B,IAAA,KAAA,SAAA,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA,gBAAA,4BAAE,CAAC;gBAAjD,IAAA,KAAA,mBAAe,EAAd,MAAM,QAAA,EAAE,KAAK,QAAA;gBACvB,OAAO,CAAC,KAAK,CAAC,eAAQ,MAAM,CAAE,EAAE;oBAC9B,KAAK,OAAA;oBACL,IAAI,EAAE,OAAO;iBACd,CAAC,CAAC;gBACH,IAAI,CAAC,QAAQ,CAAC,eAAQ,MAAM,MAAG,EAAE,KAAK,CAAC,CAAC;YAC1C,CAAC;;;;;;;;;QAED,oBAAoB;QACpB,IAAI,UAAU,CAAC,eAAe,GAAG,CAAC,EAAE,CAAC;YACnC,IAAM,gBAAgB,GAAG,UAAU,CAAC,eAAe,GAAG,UAAU,CAAC,eAAe,CAAC;YACjF,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE;gBACtC,KAAK,EAAE,gBAAgB;aACxB,CAAC,CAAC;YACH,IAAI,CAAC,QAAQ,CAAC,oBAAoB,EAAE,gBAAgB,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;IAEO,0CAAgB,GAAxB,UAAyB,OAAgB;;QACvC,IAAM,UAAU,GAAG,WAAW,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC,CAAC,CAAgC,CAAC;QAChG,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO;QACT,CAAC;QAED,qCAAqC;QACrC,IAAM,aAAa,GAAG,UAAU,CAAC,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC;QACtE,OAAO,CAAC,KAAK,CAAC,4BAA4B,EAAE;YAC1C,KAAK,EAAE,aAAa;YACpB,MAAM,EAAE,gBAAgB;YACxB,IAAI,EAAE,IAAI;YACV,MAAM,EAAE,aAAa,IAAI,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,aAAa,IAAI,IAAI,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,MAAM;SAC7F,CAAC,CAAC;QACH,IAAI,CAAC,QAAQ,CAAC,iBAAiB,EAAE,aAAa,CAAC,CAAC;QAEhD,IAAM,SAAS,GAAG,UAAU,CAAC,YAAY,GAAG,UAAU,CAAC,UAAU,CAAC;QAClE,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE;YACtC,KAAK,EAAE,SAAS;YAChB,MAAM,EAAE,YAAY;YACpB,IAAI,EAAE,IAAI;YACV,MAAM,EAAE,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,MAAM;SACtF,CAAC,CAAC;QACH,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;QAExC,qBAAqB;QACrB,IAAM,UAAU,GAA2B;YACzC,QAAQ,EAAE,QAAQ,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,MAAM;YACnD,UAAU,EAAE,QAAQ,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC,MAAM;YACvD,WAAW,EAAE,QAAQ,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC,MAAM;YAC3D,UAAU,EAAE,QAAQ,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,MAAM;YACzD,SAAS,EAAE,QAAQ,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,MAAM;SACxD,CAAC;;YAEF,KAA8B,IAAA,KAAA,SAAA,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA,gBAAA,4BAAE,CAAC;gBAAhD,IAAA,KAAA,mBAAe,EAAd,MAAM,QAAA,EAAE,KAAK,QAAA;gBACvB,OAAO,CAAC,KAAK,CAAC,cAAO,MAAM,CAAE,EAAE;oBAC7B,KAAK,OAAA;oBACL,MAAM,QAAA;oBACN,IAAI,EAAE,OAAO;oBACb,MAAM,EAAE,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,MAAM;iBAC9E,CAAC,CAAC;gBACH,IAAI,CAAC,QAAQ,CAAC,cAAO,MAAM,MAAG,EAAE,KAAK,CAAC,CAAC;YACzC,CAAC;;;;;;;;;IACH,CAAC;IAEY,+BAAK,GAAlB;;;gBACE,IAAI,CAAC,QAAQ,CAAC,0BAA0B,CAAC,CAAC;gBAE1C,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;oBAClB,IAAI,CAAC,QAAQ,CAAC,mCAAmC,CAAC,CAAC;oBACnD,sBAAO;gBACT,CAAC;gBAED,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;oBACnB,iEAAiE;oBACjE,uDAAuD;oBACvD,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;wBACxB,kDAAkD;wBAClD,IAAI,CAAC,qBAAqB,EAAE,CAAC;oBAC/B,CAAC;oBAED,0DAA0D;oBAC1D,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;wBAC1B,IAAI,CAAC,oBAAoB,EAAE,CAAC;oBAC9B,CAAC;gBACH,CAAC;gBAED,IAAI,CAAC,QAAQ,CAAC,sCAAsC,CAAC,CAAC;;;;KACvD;IAED,sCAAsC;IACzB,+BAAK,GAAlB;;;gBACE,sBAAO,IAAI,CAAC,KAAK,EAAE,EAAC;;;KACrB;IAEY,oCAAU,GAAvB;;;gBACE,sBAAO,IAAI,CAAC,KAAK,EAAE,EAAC;;;KACrB;IAEM,+BAAK,GAAZ;QACE,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;QAC5B,IAAI,CAAC,QAAQ,CAAC,uBAAuB,CAAC,CAAC;IACzC,CAAC;IACH,sBAAC;AAAD,CAAC,AA1RD,IA0RC;AA1RY,0CAAe"}
package/package.json CHANGED
@@ -1,11 +1,67 @@
1
1
  {
2
2
  "name": "@absmartly/sdk-plugins",
3
- "version": "1.1.1",
3
+ "version": "1.2.1",
4
4
  "description": "Collection of plugins for ABsmartly JavaScript SDK",
5
5
  "main": "lib/index.js",
6
6
  "module": "es/index.js",
7
7
  "browser": "dist/absmartly-sdk-plugins.min.js",
8
8
  "types": "types/index.d.ts",
9
+ "exports": {
10
+ ".": {
11
+ "source": "./src/index.ts",
12
+ "types": "./types/index.d.ts",
13
+ "import": "./es/index.js",
14
+ "require": "./lib/index.js"
15
+ },
16
+ "./dom-changes": {
17
+ "source": "./src/core/DOMChangesPluginLite.ts",
18
+ "types": "./types/core/DOMChangesPluginLite.d.ts",
19
+ "import": "./es/core/DOMChangesPluginLite.js",
20
+ "require": "./lib/core/DOMChangesPluginLite.js"
21
+ },
22
+ "./cookie": {
23
+ "source": "./src/cookies/CookiePlugin.ts",
24
+ "types": "./types/cookies/CookiePlugin.d.ts",
25
+ "import": "./es/cookies/CookiePlugin.js",
26
+ "require": "./lib/cookies/CookiePlugin.js"
27
+ },
28
+ "./web-vitals": {
29
+ "source": "./src/vitals/WebVitalsPlugin.ts",
30
+ "types": "./types/vitals/WebVitalsPlugin.d.ts",
31
+ "import": "./es/vitals/WebVitalsPlugin.js",
32
+ "require": "./lib/vitals/WebVitalsPlugin.js"
33
+ },
34
+ "./overrides": {
35
+ "source": "./src/overrides/overridesUtils.ts",
36
+ "types": "./types/overrides/overridesUtils.d.ts",
37
+ "import": "./es/overrides/overridesUtils.js",
38
+ "require": "./lib/overrides/overridesUtils.js"
39
+ },
40
+ "./url-redirect": {
41
+ "source": "./src/url-redirect/URLRedirectPlugin.ts",
42
+ "types": "./types/url-redirect/URLRedirectPlugin.d.ts",
43
+ "import": "./es/url-redirect/URLRedirectPlugin.js",
44
+ "require": "./lib/url-redirect/URLRedirectPlugin.js"
45
+ },
46
+ "./core/dom-manipulator": {
47
+ "source": "./src/core/DOMManipulatorLite.ts",
48
+ "types": "./types/core/DOMManipulatorLite.d.ts",
49
+ "import": "./es/core/DOMManipulatorLite.js",
50
+ "require": "./lib/core/DOMManipulatorLite.js"
51
+ },
52
+ "./core/style-sheet-manager": {
53
+ "source": "./src/core/StyleSheetManager.ts",
54
+ "types": "./types/core/StyleSheetManager.d.ts",
55
+ "import": "./es/core/StyleSheetManager.js",
56
+ "require": "./lib/core/StyleSheetManager.js"
57
+ },
58
+ "./core/pending-change-manager": {
59
+ "source": "./src/core/PendingChangeManager.ts",
60
+ "types": "./types/core/PendingChangeManager.d.ts",
61
+ "import": "./es/core/PendingChangeManager.js",
62
+ "require": "./lib/core/PendingChangeManager.js"
63
+ }
64
+ },
9
65
  "files": [
10
66
  "lib",
11
67
  "es",
@@ -46,8 +102,8 @@
46
102
  "dev:all": "npm run compile:cjs -- --watch & npm run compile:es -- --watch & npm run compile:types -- --watch",
47
103
  "watch": "webpack --mode development --watch --env BUILD_TYPE=all --devtool source-map",
48
104
  "prepublishOnly": "npm run build && npm test",
49
- "deploy": "npm run build && npm test && npm publish --access public",
50
- "deploy:dry-run": "npm run build && npm test && npm publish --dry-run --access public",
105
+ "publish": "npm run build && npm publish --access public",
106
+ "publish:dry-run": "npm run build && npm publish --dry-run --access public",
51
107
  "version:patch": "npm version patch",
52
108
  "version:minor": "npm version minor",
53
109
  "version:major": "npm version major"
@@ -45,8 +45,9 @@ export declare class CookiePlugin {
45
45
  getStoredUtmParams(): Record<string, string> | null;
46
46
  applyUtmAttributesToContext(context?: Context): void;
47
47
  clearAllCookies(): void;
48
+ ready(): Promise<void>;
48
49
  initialize(): Promise<void>;
49
50
  setContext(context: Context): void;
50
- needsWorkerCall(searchParams?: URLSearchParams): boolean;
51
+ needsServerSideCookie(): boolean;
51
52
  trackLanding(context?: Context): void;
52
53
  }
@@ -4,6 +4,7 @@ import { VariantExtractor } from '../parsers/VariantExtractor';
4
4
  import { StyleSheetManager } from './StyleSheetManager';
5
5
  import { ExposureTracker } from './ExposureTracker';
6
6
  import { HTMLInjector } from './HTMLInjector';
7
+ import { DOMPersistenceManager } from '../utils/persistence';
7
8
  export declare class DOMChangesPluginLite {
8
9
  static readonly VERSION: string;
9
10
  protected config: Required<PluginConfig>;
@@ -16,16 +17,13 @@ export declare class DOMChangesPluginLite {
16
17
  protected eventListeners: Map<string, EventCallback[]>;
17
18
  protected styleManagers: Map<string, StyleSheetManager>;
18
19
  protected initialized: boolean;
19
- protected watchedElements: WeakMap<Element, Set<string>>;
20
- protected persistenceObserver: MutationObserver | null;
21
- protected reapplyingElements: Set<Element>;
22
- protected reapplyLogThrottle: Map<string, number>;
23
- protected appliedChanges: Map<string, DOMChange[]>;
20
+ protected persistenceManager: DOMPersistenceManager | null;
24
21
  protected antiFlickerTimeout: number | null;
25
22
  protected antiFlickerStyleId: string;
23
+ private readyPromise;
26
24
  constructor(config: PluginConfig);
27
25
  ready(): Promise<void>;
28
- initialize(): Promise<void>;
26
+ private initialize;
29
27
  private setupMutationObserver;
30
28
  /**
31
29
  * Set up URL change listener for SPA mode
@@ -74,16 +72,22 @@ export declare class DOMChangesPluginLite {
74
72
  destroy(): void;
75
73
  protected registerWithContext(): void;
76
74
  protected unregisterFromContext(): void;
75
+ /**
76
+ * Register plugin in global registry for detection
77
+ */
78
+ protected registerGlobally(): void;
79
+ /**
80
+ * Unregister plugin from global registry
81
+ */
82
+ protected unregisterGlobally(): void;
77
83
  /**
78
84
  * Hide content to prevent flicker before experiments are applied
79
85
  */
80
86
  private hideContent;
81
87
  /**
82
- * Show hidden content after experiments are applied
88
+ * Show hidden content after experiments are applied or timeout expires
83
89
  */
84
90
  private showContent;
85
91
  watchElement(element: Element, experimentName: string, change: DOMChange): void;
86
92
  unwatchElement(element: Element, experimentName: string): void;
87
- private setupPersistenceObserver;
88
- private checkStyleOverwritten;
89
93
  }
@@ -20,6 +20,12 @@ export declare class ExposureTracker {
20
20
  * Uses inline-block with minimal dimensions to be observable but not affect layout
21
21
  */
22
22
  private createContainerPlaceholder;
23
+ /**
24
+ * Create an in-place placeholder that replaces a deleted element
25
+ * This allows viewport tracking for delete changes
26
+ * Returns the number of placeholders created
27
+ */
28
+ private createInPlacePlaceholder;
23
29
  /**
24
30
  * Get the original parent selector for move changes
25
31
  * This should be called BEFORE the move is applied