@absmartly/sdk-plugins 1.3.7 → 1.3.9
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.
- package/dist/absmartly-cookie.min.js +1 -1
- package/dist/absmartly-dom-changes-core.min.js +1 -1
- package/dist/absmartly-dom-changes-lite.min.js +1 -1
- package/dist/absmartly-overrides-full.min.js +1 -1
- package/dist/absmartly-overrides-lite.min.js +1 -1
- package/dist/absmartly-sdk-plugins.min.js +1 -1
- package/dist/absmartly-vitals.min.js +1 -1
- package/es/core/DOMManipulatorLite.js +2 -1
- package/es/core/DOMManipulatorLite.js.map +1 -1
- package/es/core/ExposureTracker.js +10 -2
- package/es/core/ExposureTracker.js.map +1 -1
- package/es/generated/buildInfo.js +1 -1
- package/es/parsers/VariantExtractor.js +41 -3
- package/es/parsers/VariantExtractor.js.map +1 -1
- package/es/utils/URLMatcher.js +86 -6
- package/es/utils/URLMatcher.js.map +1 -1
- package/es/utils/changeFlags.js +10 -0
- package/es/utils/changeFlags.js.map +1 -0
- package/lib/core/DOMManipulatorLite.js +2 -1
- package/lib/core/DOMManipulatorLite.js.map +1 -1
- package/lib/core/ExposureTracker.js +10 -2
- package/lib/core/ExposureTracker.js.map +1 -1
- package/lib/generated/buildInfo.d.ts +1 -1
- package/lib/generated/buildInfo.js +1 -1
- package/lib/parsers/VariantExtractor.d.ts +7 -0
- package/lib/parsers/VariantExtractor.js +41 -3
- package/lib/parsers/VariantExtractor.js.map +1 -1
- package/lib/types/index.d.ts +8 -0
- package/lib/utils/URLMatcher.d.ts +15 -0
- package/lib/utils/URLMatcher.js +86 -6
- package/lib/utils/URLMatcher.js.map +1 -1
- package/lib/utils/changeFlags.d.ts +7 -0
- package/lib/utils/changeFlags.js +13 -0
- package/lib/utils/changeFlags.js.map +1 -0
- package/package.json +1 -1
- package/types/generated/buildInfo.d.ts +1 -1
- package/types/parsers/VariantExtractor.d.ts +7 -0
- package/types/types/index.d.ts +8 -0
- package/types/utils/URLMatcher.d.ts +15 -0
- package/types/utils/changeFlags.d.ts +7 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"URLMatcher.js","sourceRoot":"","sources":["../../src/utils/URLMatcher.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"URLMatcher.js","sourceRoot":"","sources":["../../src/utils/URLMatcher.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { DOMChange } from '../types';
|
|
2
|
+
/**
|
|
3
|
+
* Whether a change is switched off. `disabled` is the canonical flag (written by
|
|
4
|
+
* the browser extension); `enabled: false` is the deprecated form. When both are
|
|
5
|
+
* set, `disabled` wins.
|
|
6
|
+
*/
|
|
7
|
+
export declare function isChangeDisabled(change: Pick<DOMChange, 'disabled' | 'enabled'>): boolean;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isChangeDisabled = isChangeDisabled;
|
|
4
|
+
/**
|
|
5
|
+
* Whether a change is switched off. `disabled` is the canonical flag (written by
|
|
6
|
+
* the browser extension); `enabled: false` is the deprecated form. When both are
|
|
7
|
+
* set, `disabled` wins.
|
|
8
|
+
*/
|
|
9
|
+
function isChangeDisabled(change) {
|
|
10
|
+
var _a;
|
|
11
|
+
return (_a = change.disabled) !== null && _a !== void 0 ? _a : change.enabled === false;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=changeFlags.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"changeFlags.js","sourceRoot":"","sources":["../../src/utils/changeFlags.ts"],"names":[],"mappings":";;AAOA,4CAEC;AAPD;;;;GAIG;AACH,SAAgB,gBAAgB,CAAC,MAA+C;;IAC9E,OAAO,MAAA,MAAM,CAAC,QAAQ,mCAAI,MAAM,CAAC,OAAO,KAAK,KAAK,CAAC;AACrD,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const BUILD_VERSION = "1.3.
|
|
1
|
+
export declare const BUILD_VERSION = "1.3.9";
|
|
2
2
|
export declare const BUILD_DEBUG = false;
|
|
@@ -14,6 +14,13 @@ export declare class VariantExtractor {
|
|
|
14
14
|
private extractChangesFromData;
|
|
15
15
|
getExperimentChanges(experimentName: string): DOMChange[] | null;
|
|
16
16
|
private parseChanges;
|
|
17
|
+
/**
|
|
18
|
+
* The browser extension saves the on-view flag as camelCase `triggerOnView`,
|
|
19
|
+
* while the plugin reads `trigger_on_view`. Accept both; snake_case wins.
|
|
20
|
+
*/
|
|
21
|
+
private normalizeChange;
|
|
22
|
+
/** Normalize every change inside raw DOMChangesData, keeping its array or wrapped shape. */
|
|
23
|
+
private normalizeChangesData;
|
|
17
24
|
private isValidChange;
|
|
18
25
|
/**
|
|
19
26
|
* Get all variant changes for an experiment (not just the current variant)
|
package/types/types/index.d.ts
CHANGED
|
@@ -17,6 +17,12 @@ export interface DOMChange {
|
|
|
17
17
|
selector: string;
|
|
18
18
|
type: ChangeType;
|
|
19
19
|
value?: DOMChangeValue;
|
|
20
|
+
/** If true, the change is not applied. */
|
|
21
|
+
disabled?: boolean;
|
|
22
|
+
/**
|
|
23
|
+
* @deprecated Use `disabled` instead. `enabled: false` is still honoured;
|
|
24
|
+
* `disabled` wins when both are set.
|
|
25
|
+
*/
|
|
20
26
|
enabled?: boolean;
|
|
21
27
|
add?: string[];
|
|
22
28
|
remove?: string[];
|
|
@@ -31,6 +37,8 @@ export interface DOMChange {
|
|
|
31
37
|
persistAttribute?: boolean;
|
|
32
38
|
persistScript?: boolean;
|
|
33
39
|
trigger_on_view?: boolean;
|
|
40
|
+
/** camelCase alias of trigger_on_view written by the browser extension; normalized on parse. */
|
|
41
|
+
triggerOnView?: boolean;
|
|
34
42
|
}
|
|
35
43
|
export interface DOMChangesConfig {
|
|
36
44
|
changes: DOMChange[];
|
|
@@ -11,4 +11,19 @@ export declare class URLMatcher {
|
|
|
11
11
|
private static matchesPatterns;
|
|
12
12
|
private static matchSimplePattern;
|
|
13
13
|
private static normalizeFilter;
|
|
14
|
+
/**
|
|
15
|
+
* Trim surrounding whitespace from patterns. A parsed URL never contains a
|
|
16
|
+
* literal space (it is encoded as %20), so a padded pattern (easy to paste by
|
|
17
|
+
* accident) could never match. Empty and whitespace-only patterns are
|
|
18
|
+
* dropped, since an empty regex would match every URL and silently turn an
|
|
19
|
+
* exclude into "exclude everything". Non-string patterns are dropped too.
|
|
20
|
+
*/
|
|
21
|
+
private static sanitizePatterns;
|
|
22
|
+
/**
|
|
23
|
+
* Surrounding whitespace can be part of a regex, so only trim when the
|
|
24
|
+
* trimmed regex still compiles and does not newly match the empty string.
|
|
25
|
+
* That keeps ` ?/admin` (would not compile) and `/checkout| ` (would match
|
|
26
|
+
* every URL) as written.
|
|
27
|
+
*/
|
|
28
|
+
private static trimChangesRegexMeaning;
|
|
14
29
|
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { DOMChange } from '../types';
|
|
2
|
+
/**
|
|
3
|
+
* Whether a change is switched off. `disabled` is the canonical flag (written by
|
|
4
|
+
* the browser extension); `enabled: false` is the deprecated form. When both are
|
|
5
|
+
* set, `disabled` wins.
|
|
6
|
+
*/
|
|
7
|
+
export declare function isChangeDisabled(change: Pick<DOMChange, 'disabled' | 'enabled'>): boolean;
|