@blotoutio/edgetag-sdk-js 0.23.0 → 0.24.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.
- package/index.cjs +35 -24
- package/index.d.ts +4 -1
- package/index.esm.js +35 -24
- package/internal.d.ts +2 -1
- package/package.json +1 -1
package/index.cjs
CHANGED
|
@@ -512,7 +512,7 @@ const getStandardPayload = (payload) => {
|
|
|
512
512
|
referrer: getReferrer(),
|
|
513
513
|
search: getSearch(),
|
|
514
514
|
locale: getLocale(),
|
|
515
|
-
sdkVersion: "0.
|
|
515
|
+
sdkVersion: "0.24.1" ,
|
|
516
516
|
...(payload || {}),
|
|
517
517
|
};
|
|
518
518
|
let storage = {};
|
|
@@ -581,8 +581,11 @@ const getConsent = () => {
|
|
|
581
581
|
};
|
|
582
582
|
|
|
583
583
|
const manifestVariables = {};
|
|
584
|
-
const addProviderVariable = (name, variables) => {
|
|
585
|
-
manifestVariables[name] =
|
|
584
|
+
const addProviderVariable = (name, variables, tagName) => {
|
|
585
|
+
manifestVariables[name] = {
|
|
586
|
+
...manifestVariables[name],
|
|
587
|
+
[tagName]: variables || {},
|
|
588
|
+
};
|
|
586
589
|
};
|
|
587
590
|
const getProviderVariables = (name) => {
|
|
588
591
|
if (!name) {
|
|
@@ -659,17 +662,19 @@ const handleTag = (eventName, data = {}, providers, options) => {
|
|
|
659
662
|
!allowProviderWithConsent(providers, pkg.name)) {
|
|
660
663
|
return;
|
|
661
664
|
}
|
|
662
|
-
const
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
|
|
665
|
+
const variables = getProviderVariables(pkg.name);
|
|
666
|
+
const result = {};
|
|
667
|
+
for (const [tagName, variableSet] of Object.entries(variables)) {
|
|
668
|
+
result[tagName] = pkg.tag({
|
|
669
|
+
userId,
|
|
670
|
+
eventName,
|
|
671
|
+
eventId,
|
|
672
|
+
data: JSON.parse(JSON.stringify(data)),
|
|
673
|
+
sendTag,
|
|
674
|
+
manifestVariables: variableSet,
|
|
675
|
+
});
|
|
672
676
|
}
|
|
677
|
+
providerData[pkg.name] = result;
|
|
673
678
|
});
|
|
674
679
|
}
|
|
675
680
|
sendTag({
|
|
@@ -698,11 +703,14 @@ const handleData = (data, providers, options) => {
|
|
|
698
703
|
!allowProviderWithConsent(providers, pkg.name)) {
|
|
699
704
|
return;
|
|
700
705
|
}
|
|
701
|
-
pkg.
|
|
702
|
-
|
|
703
|
-
|
|
704
|
-
|
|
705
|
-
|
|
706
|
+
const variables = getProviderVariables(pkg.name);
|
|
707
|
+
for (const variableSet of Object.values(variables)) {
|
|
708
|
+
pkg.user({
|
|
709
|
+
userId,
|
|
710
|
+
data,
|
|
711
|
+
manifestVariables: variableSet,
|
|
712
|
+
});
|
|
713
|
+
}
|
|
706
714
|
});
|
|
707
715
|
}
|
|
708
716
|
postRequest(getDataURL(), { data, providers }, options).catch(error);
|
|
@@ -807,7 +815,7 @@ const handleManifest = (manifest) => {
|
|
|
807
815
|
const userId = handleGetUserId();
|
|
808
816
|
setAllowedProviders(manifest.map((provider) => provider.package));
|
|
809
817
|
manifest.forEach((provider) => {
|
|
810
|
-
addProviderVariable(provider.package, provider.variables);
|
|
818
|
+
addProviderVariable(provider.package, provider.variables, provider.tagName);
|
|
811
819
|
if (provider.rules) {
|
|
812
820
|
Object.entries(provider.rules).forEach(([name, recipe]) => {
|
|
813
821
|
switch (name) {
|
|
@@ -890,11 +898,14 @@ const handleUser = (key, value, providers, options) => {
|
|
|
890
898
|
!allowProviderWithConsent(providers, pkg.name)) {
|
|
891
899
|
return;
|
|
892
900
|
}
|
|
893
|
-
pkg.
|
|
894
|
-
|
|
895
|
-
|
|
896
|
-
|
|
897
|
-
|
|
901
|
+
const variables = getProviderVariables(pkg.name);
|
|
902
|
+
for (const variableSet of Object.values(variables)) {
|
|
903
|
+
pkg.user({
|
|
904
|
+
userId,
|
|
905
|
+
data: { [key]: value },
|
|
906
|
+
manifestVariables: variableSet,
|
|
907
|
+
});
|
|
908
|
+
}
|
|
898
909
|
});
|
|
899
910
|
}
|
|
900
911
|
postRequest(getUserURL(), {
|
package/index.d.ts
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
// TODO this all located in '@blotoutio/shared/utility-sdk'
|
|
2
2
|
|
|
3
|
+
import { Library } from '@blotoutio/cdn/types'
|
|
4
|
+
|
|
3
5
|
type PersistType = 'local' | 'session' | 'edge'
|
|
4
6
|
|
|
5
7
|
type EventOptions = {
|
|
@@ -12,7 +14,7 @@ export type SendTag = {
|
|
|
12
14
|
eventName: string
|
|
13
15
|
eventId: string
|
|
14
16
|
data: Data
|
|
15
|
-
providerData?: Data
|
|
17
|
+
providerData?: Partial<Record<Library, Record<string, Data>>>
|
|
16
18
|
providers?: Data
|
|
17
19
|
options?: EventOptions
|
|
18
20
|
}
|
|
@@ -26,6 +28,7 @@ type ManifestRule = {
|
|
|
26
28
|
|
|
27
29
|
type Manifest = {
|
|
28
30
|
package: string
|
|
31
|
+
tagName: string
|
|
29
32
|
variables?: Record<string, string>
|
|
30
33
|
rules: Record<string, ManifestRule[]>
|
|
31
34
|
}
|
package/index.esm.js
CHANGED
|
@@ -510,7 +510,7 @@ const getStandardPayload = (payload) => {
|
|
|
510
510
|
referrer: getReferrer(),
|
|
511
511
|
search: getSearch(),
|
|
512
512
|
locale: getLocale(),
|
|
513
|
-
sdkVersion: "0.
|
|
513
|
+
sdkVersion: "0.24.1" ,
|
|
514
514
|
...(payload || {}),
|
|
515
515
|
};
|
|
516
516
|
let storage = {};
|
|
@@ -579,8 +579,11 @@ const getConsent = () => {
|
|
|
579
579
|
};
|
|
580
580
|
|
|
581
581
|
const manifestVariables = {};
|
|
582
|
-
const addProviderVariable = (name, variables) => {
|
|
583
|
-
manifestVariables[name] =
|
|
582
|
+
const addProviderVariable = (name, variables, tagName) => {
|
|
583
|
+
manifestVariables[name] = {
|
|
584
|
+
...manifestVariables[name],
|
|
585
|
+
[tagName]: variables || {},
|
|
586
|
+
};
|
|
584
587
|
};
|
|
585
588
|
const getProviderVariables = (name) => {
|
|
586
589
|
if (!name) {
|
|
@@ -657,17 +660,19 @@ const handleTag = (eventName, data = {}, providers, options) => {
|
|
|
657
660
|
!allowProviderWithConsent(providers, pkg.name)) {
|
|
658
661
|
return;
|
|
659
662
|
}
|
|
660
|
-
const
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
663
|
+
const variables = getProviderVariables(pkg.name);
|
|
664
|
+
const result = {};
|
|
665
|
+
for (const [tagName, variableSet] of Object.entries(variables)) {
|
|
666
|
+
result[tagName] = pkg.tag({
|
|
667
|
+
userId,
|
|
668
|
+
eventName,
|
|
669
|
+
eventId,
|
|
670
|
+
data: JSON.parse(JSON.stringify(data)),
|
|
671
|
+
sendTag,
|
|
672
|
+
manifestVariables: variableSet,
|
|
673
|
+
});
|
|
670
674
|
}
|
|
675
|
+
providerData[pkg.name] = result;
|
|
671
676
|
});
|
|
672
677
|
}
|
|
673
678
|
sendTag({
|
|
@@ -696,11 +701,14 @@ const handleData = (data, providers, options) => {
|
|
|
696
701
|
!allowProviderWithConsent(providers, pkg.name)) {
|
|
697
702
|
return;
|
|
698
703
|
}
|
|
699
|
-
pkg.
|
|
700
|
-
|
|
701
|
-
|
|
702
|
-
|
|
703
|
-
|
|
704
|
+
const variables = getProviderVariables(pkg.name);
|
|
705
|
+
for (const variableSet of Object.values(variables)) {
|
|
706
|
+
pkg.user({
|
|
707
|
+
userId,
|
|
708
|
+
data,
|
|
709
|
+
manifestVariables: variableSet,
|
|
710
|
+
});
|
|
711
|
+
}
|
|
704
712
|
});
|
|
705
713
|
}
|
|
706
714
|
postRequest(getDataURL(), { data, providers }, options).catch(error);
|
|
@@ -805,7 +813,7 @@ const handleManifest = (manifest) => {
|
|
|
805
813
|
const userId = handleGetUserId();
|
|
806
814
|
setAllowedProviders(manifest.map((provider) => provider.package));
|
|
807
815
|
manifest.forEach((provider) => {
|
|
808
|
-
addProviderVariable(provider.package, provider.variables);
|
|
816
|
+
addProviderVariable(provider.package, provider.variables, provider.tagName);
|
|
809
817
|
if (provider.rules) {
|
|
810
818
|
Object.entries(provider.rules).forEach(([name, recipe]) => {
|
|
811
819
|
switch (name) {
|
|
@@ -888,11 +896,14 @@ const handleUser = (key, value, providers, options) => {
|
|
|
888
896
|
!allowProviderWithConsent(providers, pkg.name)) {
|
|
889
897
|
return;
|
|
890
898
|
}
|
|
891
|
-
pkg.
|
|
892
|
-
|
|
893
|
-
|
|
894
|
-
|
|
895
|
-
|
|
899
|
+
const variables = getProviderVariables(pkg.name);
|
|
900
|
+
for (const variableSet of Object.values(variables)) {
|
|
901
|
+
pkg.user({
|
|
902
|
+
userId,
|
|
903
|
+
data: { [key]: value },
|
|
904
|
+
manifestVariables: variableSet,
|
|
905
|
+
});
|
|
906
|
+
}
|
|
896
907
|
});
|
|
897
908
|
}
|
|
898
909
|
postRequest(getUserURL(), {
|
package/internal.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { Library } from '@blotoutio/cdn/types'
|
|
1
2
|
import { UserKey, Data } from './index'
|
|
2
3
|
|
|
3
4
|
type Navigator = {
|
|
@@ -8,7 +9,7 @@ type TagPayload = {
|
|
|
8
9
|
eventName: string
|
|
9
10
|
eventId: string
|
|
10
11
|
timestamp: number
|
|
11
|
-
providerData?: Data
|
|
12
|
+
providerData?: Partial<Record<Library, Record<string, Data>>>
|
|
12
13
|
data?: Data
|
|
13
14
|
providers?: Data
|
|
14
15
|
}
|