@smoud/playable-sdk 1.0.19 → 1.0.20
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/README.md +6 -0
- package/defines.d.ts +5 -1
- package/dist/esm/index.js +12 -1
- package/dist/iife/index.js +12 -1
- package/dist/index.js +12 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -39,6 +39,8 @@ It's powerful, unified SDK that seamlessly integrates multiple ad network SDKs,
|
|
|
39
39
|
- Chartboost
|
|
40
40
|
- AdColony
|
|
41
41
|
- MyTarget
|
|
42
|
+
- Smadex
|
|
43
|
+
- Adikteev
|
|
42
44
|
|
|
43
45
|
### Protocol Support
|
|
44
46
|
|
|
@@ -162,6 +164,8 @@ Supported **Ad Networks**:
|
|
|
162
164
|
- `pangle`
|
|
163
165
|
- `mytarget`
|
|
164
166
|
- `liftoff`
|
|
167
|
+
- `smadex`
|
|
168
|
+
- `adikteev`
|
|
165
169
|
|
|
166
170
|
See more details in [`GitHub repository.`](https://github.com/smoudjs/playable-scripts?tab=readme-ov-file#installation)
|
|
167
171
|
|
|
@@ -382,11 +386,13 @@ Get started quickly with our template projects:
|
|
|
382
386
|
- [IronSource - DAPI requirements](https://developers.is.com/ironsource-mobile/general/dapi-requirements/#step-1)
|
|
383
387
|
- [Unity Ads Documentation](https://docs.unity.com/acquire/en-us/manual/playable-ads-specifications)
|
|
384
388
|
- [Chartboost Integration](https://docs.chartboost.com/en/advertising/creatives/creative-assets/)
|
|
389
|
+
- [Adikteev specifications for external creatives](https://help.adikteev.com/hc/en-us/articles/10549028250130-Specifications-for-external-creatives)
|
|
385
390
|
|
|
386
391
|
#### Proprietary Networks
|
|
387
392
|
|
|
388
393
|
- [Google HTML5 / Playable Ads](https://support.google.com/google-ads/answer/9981650?hl=en)
|
|
389
394
|
- [Meta (Facebook) Playable Ads](https://www.facebook.com/business/help/412951382532338)
|
|
395
|
+
- [Moloco Requirements](https://help.moloco.com/hc/en-us/articles/24124525963799-Playable-and-Interactive-End-Card-IEC-creative-guide)
|
|
390
396
|
- [Mintegral Integration](https://www.playturbo.com/review/doc)
|
|
391
397
|
|
|
392
398
|
### Testing Tools
|
package/defines.d.ts
CHANGED
|
@@ -41,6 +41,7 @@ declare const NUC: {
|
|
|
41
41
|
};
|
|
42
42
|
|
|
43
43
|
declare const FbPlayableAd: { onCTAClick: () => void };
|
|
44
|
+
declare const smxTracking: { redirect: () => void };
|
|
44
45
|
declare const ExitApi: { exit: () => void };
|
|
45
46
|
|
|
46
47
|
declare const AD_NETWORK:
|
|
@@ -61,7 +62,10 @@ declare const AD_NETWORK:
|
|
|
61
62
|
| 'chartboost'
|
|
62
63
|
| 'pangle'
|
|
63
64
|
| 'mytarget'
|
|
64
|
-
| 'liftoff'
|
|
65
|
+
| 'liftoff'
|
|
66
|
+
| 'smadex'
|
|
67
|
+
| 'adikteev';
|
|
68
|
+
|
|
65
69
|
declare const AD_PROTOCOL: 'mraid' | 'dapi' | 'nucleo' | 'none';
|
|
66
70
|
declare const GOOGLE_PLAY_URL: string;
|
|
67
71
|
declare const APP_STORE_URL: string;
|
package/dist/esm/index.js
CHANGED
|
@@ -51,6 +51,7 @@ var GOOGLE = uid++;
|
|
|
51
51
|
var MINTEGRAL = uid++;
|
|
52
52
|
var TAPJOY = uid++;
|
|
53
53
|
var TIKTOK = uid++;
|
|
54
|
+
var SMADEX = uid++;
|
|
54
55
|
var actualProtocol = NONE;
|
|
55
56
|
function isMraid() {
|
|
56
57
|
return actualProtocol === MRAID;
|
|
@@ -64,6 +65,9 @@ function isNucleo() {
|
|
|
64
65
|
function isFacebook() {
|
|
65
66
|
return actualProtocol === FACEBOOK;
|
|
66
67
|
}
|
|
68
|
+
function isSmadex() {
|
|
69
|
+
return actualProtocol === SMADEX;
|
|
70
|
+
}
|
|
67
71
|
function isGoogle() {
|
|
68
72
|
return actualProtocol === GOOGLE;
|
|
69
73
|
}
|
|
@@ -105,6 +109,11 @@ function ensureProtocol() {
|
|
|
105
109
|
if (window.TJ_API) actualProtocol = TAPJOY;
|
|
106
110
|
} else if ("tiktok" === AD_NETWORK) {
|
|
107
111
|
if (window.openAppStore) actualProtocol = TIKTOK;
|
|
112
|
+
} else if ("smadex" === AD_NETWORK) {
|
|
113
|
+
try {
|
|
114
|
+
if (smxTracking) actualProtocol = SMADEX;
|
|
115
|
+
} catch (error) {
|
|
116
|
+
}
|
|
108
117
|
}
|
|
109
118
|
}
|
|
110
119
|
|
|
@@ -466,6 +475,8 @@ var _sdk = class _sdk {
|
|
|
466
475
|
NUC.trigger.convert(destinationUrl);
|
|
467
476
|
} else if ("facebook" == AD_NETWORK && isFacebook()) {
|
|
468
477
|
FbPlayableAd.onCTAClick();
|
|
478
|
+
} else if ("smadex" == AD_NETWORK && isSmadex()) {
|
|
479
|
+
smxTracking.redirect();
|
|
469
480
|
} else if ("vungle" == AD_NETWORK) {
|
|
470
481
|
parent.postMessage("download", "*");
|
|
471
482
|
} else if ("google" == AD_NETWORK && isGoogle()) {
|
|
@@ -580,7 +591,7 @@ var _sdk = class _sdk {
|
|
|
580
591
|
}
|
|
581
592
|
};
|
|
582
593
|
/** Current version of the SDK */
|
|
583
|
-
_sdk.version = "1.0.
|
|
594
|
+
_sdk.version = "1.0.20";
|
|
584
595
|
/** Current maximum width of the playable ad container in pixels */
|
|
585
596
|
_sdk.maxWidth = Math.floor(window.innerWidth);
|
|
586
597
|
/** Current maximum height of the playable ad container in pixels */
|
package/dist/iife/index.js
CHANGED
|
@@ -53,6 +53,7 @@
|
|
|
53
53
|
var MINTEGRAL = uid++;
|
|
54
54
|
var TAPJOY = uid++;
|
|
55
55
|
var TIKTOK = uid++;
|
|
56
|
+
var SMADEX = uid++;
|
|
56
57
|
var actualProtocol = NONE;
|
|
57
58
|
function isMraid() {
|
|
58
59
|
return actualProtocol === MRAID;
|
|
@@ -66,6 +67,9 @@
|
|
|
66
67
|
function isFacebook() {
|
|
67
68
|
return actualProtocol === FACEBOOK;
|
|
68
69
|
}
|
|
70
|
+
function isSmadex() {
|
|
71
|
+
return actualProtocol === SMADEX;
|
|
72
|
+
}
|
|
69
73
|
function isGoogle() {
|
|
70
74
|
return actualProtocol === GOOGLE;
|
|
71
75
|
}
|
|
@@ -107,6 +111,11 @@
|
|
|
107
111
|
if (window.TJ_API) actualProtocol = TAPJOY;
|
|
108
112
|
} else if ("tiktok" === AD_NETWORK) {
|
|
109
113
|
if (window.openAppStore) actualProtocol = TIKTOK;
|
|
114
|
+
} else if ("smadex" === AD_NETWORK) {
|
|
115
|
+
try {
|
|
116
|
+
if (smxTracking) actualProtocol = SMADEX;
|
|
117
|
+
} catch (error) {
|
|
118
|
+
}
|
|
110
119
|
}
|
|
111
120
|
}
|
|
112
121
|
|
|
@@ -468,6 +477,8 @@
|
|
|
468
477
|
NUC.trigger.convert(destinationUrl);
|
|
469
478
|
} else if ("facebook" == AD_NETWORK && isFacebook()) {
|
|
470
479
|
FbPlayableAd.onCTAClick();
|
|
480
|
+
} else if ("smadex" == AD_NETWORK && isSmadex()) {
|
|
481
|
+
smxTracking.redirect();
|
|
471
482
|
} else if ("vungle" == AD_NETWORK) {
|
|
472
483
|
parent.postMessage("download", "*");
|
|
473
484
|
} else if ("google" == AD_NETWORK && isGoogle()) {
|
|
@@ -582,7 +593,7 @@
|
|
|
582
593
|
}
|
|
583
594
|
};
|
|
584
595
|
/** Current version of the SDK */
|
|
585
|
-
_sdk.version = "1.0.
|
|
596
|
+
_sdk.version = "1.0.20";
|
|
586
597
|
/** Current maximum width of the playable ad container in pixels */
|
|
587
598
|
_sdk.maxWidth = Math.floor(window.innerWidth);
|
|
588
599
|
/** Current maximum height of the playable ad container in pixels */
|
package/dist/index.js
CHANGED
|
@@ -78,6 +78,7 @@ var GOOGLE = uid++;
|
|
|
78
78
|
var MINTEGRAL = uid++;
|
|
79
79
|
var TAPJOY = uid++;
|
|
80
80
|
var TIKTOK = uid++;
|
|
81
|
+
var SMADEX = uid++;
|
|
81
82
|
var actualProtocol = NONE;
|
|
82
83
|
function isMraid() {
|
|
83
84
|
return actualProtocol === MRAID;
|
|
@@ -91,6 +92,9 @@ function isNucleo() {
|
|
|
91
92
|
function isFacebook() {
|
|
92
93
|
return actualProtocol === FACEBOOK;
|
|
93
94
|
}
|
|
95
|
+
function isSmadex() {
|
|
96
|
+
return actualProtocol === SMADEX;
|
|
97
|
+
}
|
|
94
98
|
function isGoogle() {
|
|
95
99
|
return actualProtocol === GOOGLE;
|
|
96
100
|
}
|
|
@@ -132,6 +136,11 @@ function ensureProtocol() {
|
|
|
132
136
|
if (window.TJ_API) actualProtocol = TAPJOY;
|
|
133
137
|
} else if ("tiktok" === AD_NETWORK) {
|
|
134
138
|
if (window.openAppStore) actualProtocol = TIKTOK;
|
|
139
|
+
} else if ("smadex" === AD_NETWORK) {
|
|
140
|
+
try {
|
|
141
|
+
if (smxTracking) actualProtocol = SMADEX;
|
|
142
|
+
} catch (error) {
|
|
143
|
+
}
|
|
135
144
|
}
|
|
136
145
|
}
|
|
137
146
|
|
|
@@ -493,6 +502,8 @@ var _sdk = class _sdk {
|
|
|
493
502
|
NUC.trigger.convert(destinationUrl);
|
|
494
503
|
} else if ("facebook" == AD_NETWORK && isFacebook()) {
|
|
495
504
|
FbPlayableAd.onCTAClick();
|
|
505
|
+
} else if ("smadex" == AD_NETWORK && isSmadex()) {
|
|
506
|
+
smxTracking.redirect();
|
|
496
507
|
} else if ("vungle" == AD_NETWORK) {
|
|
497
508
|
parent.postMessage("download", "*");
|
|
498
509
|
} else if ("google" == AD_NETWORK && isGoogle()) {
|
|
@@ -607,7 +618,7 @@ var _sdk = class _sdk {
|
|
|
607
618
|
}
|
|
608
619
|
};
|
|
609
620
|
/** Current version of the SDK */
|
|
610
|
-
_sdk.version = "1.0.
|
|
621
|
+
_sdk.version = "1.0.20";
|
|
611
622
|
/** Current maximum width of the playable ad container in pixels */
|
|
612
623
|
_sdk.maxWidth = Math.floor(window.innerWidth);
|
|
613
624
|
/** Current maximum height of the playable ad container in pixels */
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@smoud/playable-sdk",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.20",
|
|
4
4
|
"description": "It's unified Playable SDK that supports MRAID, Google, Facebook, Vungle, and many more Ad Networks, simplifying playable ad development with a standardized interface for seamless cross-network compatibility.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"module": "dist/esm/index.js",
|