@surfside/ads 2.0.0 → 3.6.0-0652b02f.0
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 +15 -69
- package/lib/cjs/BuildInfo.js +9 -0
- package/lib/cjs/BuildInfo.js.map +1 -0
- package/lib/cjs/Constants.js +5 -0
- package/lib/cjs/Constants.js.map +1 -0
- package/lib/cjs/Init.js +130 -0
- package/lib/cjs/Init.js.map +1 -0
- package/lib/cjs/components/Banner.js +136 -0
- package/lib/cjs/components/Banner.js.map +1 -0
- package/lib/cjs/components/Card.js +170 -0
- package/lib/cjs/components/Card.js.map +1 -0
- package/lib/cjs/components/Carousel.js +249 -0
- package/lib/cjs/components/Carousel.js.map +1 -0
- package/lib/cjs/components/Creative.js +285 -0
- package/lib/cjs/components/Creative.js.map +1 -0
- package/lib/cjs/components/Dynamic.js +310 -0
- package/lib/cjs/components/Dynamic.js.map +1 -0
- package/lib/cjs/components/SimpleCreative.js +81 -0
- package/lib/cjs/components/SimpleCreative.js.map +1 -0
- package/lib/cjs/components/Video.js +144 -0
- package/lib/cjs/components/Video.js.map +1 -0
- package/lib/cjs/demo/test.js +7 -0
- package/lib/cjs/demo/test.js.map +1 -0
- package/lib/cjs/index.module.js +107 -0
- package/lib/cjs/index.module.js.map +1 -0
- package/lib/cjs/index.script.js +102 -0
- package/lib/cjs/index.script.js.map +1 -0
- package/lib/cjs/index.script.mock.js +154 -0
- package/lib/cjs/index.script.mock.js.map +1 -0
- package/lib/cjs/service/Init.js +3 -0
- package/lib/cjs/service/Init.js.map +1 -0
- package/lib/cjs/util/Attributes.js +93 -0
- package/lib/cjs/util/Attributes.js.map +1 -0
- package/lib/cjs/util/Types.js +3 -0
- package/lib/cjs/util/Types.js.map +1 -0
- package/lib/esm/BuildInfo.js +6 -0
- package/lib/esm/BuildInfo.js.map +1 -0
- package/lib/esm/Constants.js +2 -0
- package/lib/esm/Constants.js.map +1 -0
- package/lib/esm/Init.js +92 -0
- package/lib/esm/Init.js.map +1 -0
- package/lib/esm/components/Banner.js +132 -0
- package/lib/esm/components/Banner.js.map +1 -0
- package/lib/esm/components/Card.js +166 -0
- package/lib/esm/components/Card.js.map +1 -0
- package/lib/esm/components/Carousel.js +245 -0
- package/lib/esm/components/Carousel.js.map +1 -0
- package/lib/esm/components/Creative.js +280 -0
- package/lib/esm/components/Creative.js.map +1 -0
- package/lib/esm/components/Dynamic.js +306 -0
- package/lib/esm/components/Dynamic.js.map +1 -0
- package/lib/esm/components/SimpleCreative.js +75 -0
- package/lib/esm/components/SimpleCreative.js.map +1 -0
- package/lib/esm/components/Video.js +140 -0
- package/lib/esm/components/Video.js.map +1 -0
- package/lib/esm/demo/test.js +5 -0
- package/lib/esm/demo/test.js.map +1 -0
- package/lib/esm/index.module.js +67 -0
- package/lib/esm/index.module.js.map +1 -0
- package/lib/esm/index.script.js +100 -0
- package/lib/esm/index.script.js.map +1 -0
- package/lib/esm/index.script.mock.js +152 -0
- package/lib/esm/index.script.mock.js.map +1 -0
- package/lib/esm/service/Init.js +2 -0
- package/lib/esm/service/Init.js.map +1 -0
- package/lib/esm/util/Attributes.js +81 -0
- package/lib/esm/util/Attributes.js.map +1 -0
- package/lib/esm/util/Types.js +2 -0
- package/lib/esm/util/Types.js.map +1 -0
- package/lib/types/BuildInfo.d.ts +5 -0
- package/lib/types/Constants.d.ts +1 -0
- package/lib/types/Init.d.ts +31 -0
- package/lib/types/components/Banner.d.ts +17 -0
- package/lib/types/components/Card.d.ts +18 -0
- package/lib/types/components/Carousel.d.ts +32 -0
- package/lib/types/components/Creative.d.ts +84 -0
- package/lib/types/components/Dynamic.d.ts +24 -0
- package/lib/types/components/SimpleCreative.d.ts +20 -0
- package/lib/types/components/Video.d.ts +23 -0
- package/lib/types/demo/test.d.ts +1 -0
- package/lib/types/index.module.d.ts +12 -0
- package/lib/types/index.script.d.ts +1 -0
- package/lib/types/index.script.mock.d.ts +1 -0
- package/lib/types/service/Init.d.ts +1 -0
- package/lib/types/util/Attributes.d.ts +24 -0
- package/lib/types/util/Types.d.ts +3 -0
- package/package.json +42 -73
- package/lib/index.js +0 -2
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { AttributeValOrThrow, CreativeComponent } from './Creative';
|
|
2
|
+
import { AttributeNotANumberError, AttributeNotIntError, ReadIntAttribute } from '../util/Attributes';
|
|
3
|
+
import { GetValue } from '@surfside/ads-core';
|
|
4
|
+
const NumberValOrThrow = (element, attribute, value) => {
|
|
5
|
+
const strValue = AttributeValOrThrow(element, attribute, value);
|
|
6
|
+
const numValue = Number(strValue);
|
|
7
|
+
if (Number.isNaN(numValue)) {
|
|
8
|
+
throw new AttributeNotANumberError(element, attribute);
|
|
9
|
+
}
|
|
10
|
+
return numValue;
|
|
11
|
+
};
|
|
12
|
+
export const IntValOrThrow = (element, attribute, value) => {
|
|
13
|
+
const numValue = NumberValOrThrow(element, attribute, value);
|
|
14
|
+
if (!Number.isInteger(numValue)) {
|
|
15
|
+
throw new AttributeNotIntError(element, attribute);
|
|
16
|
+
}
|
|
17
|
+
return numValue;
|
|
18
|
+
};
|
|
19
|
+
export const IntValOr = (element, attribute, value, or) => {
|
|
20
|
+
try {
|
|
21
|
+
return IntValOrThrow(element, attribute, value);
|
|
22
|
+
}
|
|
23
|
+
catch {
|
|
24
|
+
return or;
|
|
25
|
+
}
|
|
26
|
+
};
|
|
27
|
+
export class SimpleCreativeComponent extends CreativeComponent {
|
|
28
|
+
width;
|
|
29
|
+
height;
|
|
30
|
+
constructor(initApi, getUserId, logger) {
|
|
31
|
+
super(initApi, getUserId, logger);
|
|
32
|
+
}
|
|
33
|
+
attributesLoaded() {
|
|
34
|
+
return (super.attributesLoaded() &&
|
|
35
|
+
this.width !== undefined &&
|
|
36
|
+
this.height !== undefined &&
|
|
37
|
+
this.width !== null &&
|
|
38
|
+
this.height !== null);
|
|
39
|
+
}
|
|
40
|
+
static get observedSimpleAttributes() {
|
|
41
|
+
return [...CreativeComponent.observedBaseAttributes, 'width', 'height'];
|
|
42
|
+
}
|
|
43
|
+
async handleSimpleAttributeChange(name, oldValue, newValue, logger) {
|
|
44
|
+
const changed = this.simpleAttributeChangedCallback(name, oldValue, newValue, logger);
|
|
45
|
+
if (this.api !== undefined) {
|
|
46
|
+
await changed;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
async simpleAttributeChangedCallback(name, oldValue, newValue, logger) {
|
|
50
|
+
const log = logger?.with('simpleAttributeChangedCallback');
|
|
51
|
+
log?.info('Simple attribute changed: ', name);
|
|
52
|
+
if (CreativeComponent.observedBaseAttributes.includes(name)) {
|
|
53
|
+
log?.info('Base attribute changed');
|
|
54
|
+
const key = name;
|
|
55
|
+
await this.baseAttributeChangedCallback(key, oldValue, newValue, log);
|
|
56
|
+
return;
|
|
57
|
+
}
|
|
58
|
+
if (name === 'width' || name === 'height') {
|
|
59
|
+
log?.debug('Before: width', this.width, 'height', this.height);
|
|
60
|
+
try {
|
|
61
|
+
this[name] = IntValOrThrow(this, name, newValue);
|
|
62
|
+
}
|
|
63
|
+
catch (error) {
|
|
64
|
+
log?.warn('Couldn\'t parse number attribute', error);
|
|
65
|
+
}
|
|
66
|
+
log?.debug('After: width', this.width, 'height', this.height);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
readSimpleAttributes() {
|
|
70
|
+
this.readBaseAttributes();
|
|
71
|
+
this.width = GetValue(ReadIntAttribute(this, 'width')) ?? this.width;
|
|
72
|
+
this.height = GetValue(ReadIntAttribute(this, 'height')) ?? this.height;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
//# sourceMappingURL=SimpleCreative.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SimpleCreative.js","sourceRoot":"../@surfside-ads/","sources":["components/SimpleCreative.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
import { CancellationToken } from '@surfside/ads-core';
|
|
2
|
+
import { IntValOrThrow, SimpleCreativeComponent } from './SimpleCreative';
|
|
3
|
+
import { DEBOUNCE_THRESHOLD } from './Creative';
|
|
4
|
+
export class SurfsideVideo extends SimpleCreativeComponent {
|
|
5
|
+
_cancellationToken = new CancellationToken();
|
|
6
|
+
minDuration;
|
|
7
|
+
maxDuration;
|
|
8
|
+
_bounce;
|
|
9
|
+
static get observedAttributes() {
|
|
10
|
+
return [...SimpleCreativeComponent.observedSimpleAttributes, 'min-duration', 'max-duration'];
|
|
11
|
+
}
|
|
12
|
+
constructor(initApi, getUserId, logger) {
|
|
13
|
+
super(initApi, getUserId, logger);
|
|
14
|
+
}
|
|
15
|
+
getComponentName() {
|
|
16
|
+
return 'SurfsideVideo';
|
|
17
|
+
}
|
|
18
|
+
attributesLoaded() {
|
|
19
|
+
return (super.attributesLoaded() && this.minDuration !== undefined && this.maxDuration !== undefined
|
|
20
|
+
&& this.minDuration !== null && this.maxDuration !== null);
|
|
21
|
+
}
|
|
22
|
+
async attributeChangedCallback(name, oldValue, newValue) {
|
|
23
|
+
const log = this.log?.with('attributeChangedCallback');
|
|
24
|
+
log?.info('Attribute changed');
|
|
25
|
+
if (name === 'min-duration') {
|
|
26
|
+
try {
|
|
27
|
+
this.minDuration = IntValOrThrow(this, 'min-duration', newValue);
|
|
28
|
+
}
|
|
29
|
+
catch (err) {
|
|
30
|
+
log?.warn('Couldn\'t parse min-duration', err);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
else if (name === 'max-duration') {
|
|
34
|
+
try {
|
|
35
|
+
this.maxDuration = IntValOrThrow(this, 'max-duration', newValue);
|
|
36
|
+
}
|
|
37
|
+
catch (err) {
|
|
38
|
+
log?.warn('Couldn\'t parse min-duration', err);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
else {
|
|
42
|
+
await this.handleSimpleAttributeChange(name, oldValue, newValue, log);
|
|
43
|
+
}
|
|
44
|
+
const totem = crypto.randomUUID();
|
|
45
|
+
this.totem = totem;
|
|
46
|
+
log?.debug(name, 'totem', totem);
|
|
47
|
+
if (!this.attributesLoaded()) {
|
|
48
|
+
log?.debug('Attributes not ready yet...');
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
if (this.totem !== totem) {
|
|
52
|
+
log?.debug('Totem changed. Deferring rendering of video until last attribute changed', totem, this.totem);
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
55
|
+
log?.debug(`Rendering video upon change of [${name}]`);
|
|
56
|
+
if (this._bounce !== undefined) {
|
|
57
|
+
globalThis.clearTimeout(this._bounce);
|
|
58
|
+
}
|
|
59
|
+
this._bounce = globalThis.setTimeout(() => this.render(), DEBOUNCE_THRESHOLD);
|
|
60
|
+
}
|
|
61
|
+
readVideoAttributes() {
|
|
62
|
+
this.readSimpleAttributes();
|
|
63
|
+
}
|
|
64
|
+
async connectedCallback() {
|
|
65
|
+
super.connectedCallback();
|
|
66
|
+
this.readVideoAttributes();
|
|
67
|
+
await this.initApi();
|
|
68
|
+
const totem = crypto.randomUUID();
|
|
69
|
+
this.totem = totem;
|
|
70
|
+
if (this.attributesLoaded()) {
|
|
71
|
+
await this.lazyLoadApi();
|
|
72
|
+
if (this.totem !== totem) {
|
|
73
|
+
this.log?.debug('Attributes changed after connectedCallback, waiting to render');
|
|
74
|
+
return;
|
|
75
|
+
}
|
|
76
|
+
this.log?.debug('Rendering upon connectedCallback');
|
|
77
|
+
await this.render();
|
|
78
|
+
}
|
|
79
|
+
else {
|
|
80
|
+
this.log?.warn('ConnectedCallback called before attributes were all ready.');
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
disconnectedCallback() {
|
|
84
|
+
super.disconnectedCallback();
|
|
85
|
+
this._cancellationToken.cancel();
|
|
86
|
+
if (this._bounce !== undefined) {
|
|
87
|
+
globalThis.clearTimeout(this._bounce);
|
|
88
|
+
this._bounce = undefined;
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
async render() {
|
|
92
|
+
const log = this.log?.with('SurfsideVideo', { zoneId: this.zoneId });
|
|
93
|
+
log?.info('rendering');
|
|
94
|
+
log?.debug('width', this.width, 'height', this.height);
|
|
95
|
+
const stopTimer = log?.time?.('render video');
|
|
96
|
+
this._cancellationToken.cancel();
|
|
97
|
+
this.clearReauction();
|
|
98
|
+
const token = new CancellationToken();
|
|
99
|
+
this._cancellationToken = token;
|
|
100
|
+
const { requestBids, startRequest, buildVideoResponse, renderVideo } = this.api;
|
|
101
|
+
const bidResponseResult = await requestBids(startRequest(this.zoneId)
|
|
102
|
+
.withSurfCategory(this.category)
|
|
103
|
+
.withKeywords(this.keywords)
|
|
104
|
+
.withVideo(this.width, this.height, this.minDuration, this.maxDuration)
|
|
105
|
+
.build());
|
|
106
|
+
if (token.cancelled) {
|
|
107
|
+
return;
|
|
108
|
+
}
|
|
109
|
+
if (!bidResponseResult.ok) {
|
|
110
|
+
log?.warn('Did not get any bid responses', bidResponseResult.error);
|
|
111
|
+
return;
|
|
112
|
+
}
|
|
113
|
+
const bid = bidResponseResult.value.seatbid?.[0]?.bid?.[0];
|
|
114
|
+
if (bid === undefined) {
|
|
115
|
+
log?.error('Got a bid response, but it was malformed', bidResponseResult);
|
|
116
|
+
return;
|
|
117
|
+
}
|
|
118
|
+
const responseResult = buildVideoResponse(bid);
|
|
119
|
+
if (!responseResult.ok) {
|
|
120
|
+
log?.error(responseResult.error);
|
|
121
|
+
return;
|
|
122
|
+
}
|
|
123
|
+
const elementResult = renderVideo(responseResult.value);
|
|
124
|
+
if (!elementResult.ok) {
|
|
125
|
+
log?.error(elementResult.error);
|
|
126
|
+
return;
|
|
127
|
+
}
|
|
128
|
+
if (!token.cancelled) {
|
|
129
|
+
stopTimer?.();
|
|
130
|
+
this.shadow.innerHTML = '';
|
|
131
|
+
this.shadow.appendChild(elementResult.value);
|
|
132
|
+
elementResult.value.classList.add(`surf-zone-${this.zoneId}`);
|
|
133
|
+
if (this.api.configuration.settings.reauctionEnabled && bid.ext?.takeover !== true) {
|
|
134
|
+
// Re-auction once the video ends. Deferred until the page regains focus if blurred
|
|
135
|
+
elementResult.value.onended = () => this.scheduleReauction(() => this.render(), 0);
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
//# sourceMappingURL=Video.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Video.js","sourceRoot":"../@surfside-ads/","sources":["components/Video.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"test.js","sourceRoot":"../@surfside-ads/","sources":["demo/test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAE3D,MAAM,CAAC,MAAM,GAAG,GAAG,EAAE;IACjB,wBAAwB,EAAE,CAAC;AAC/B,CAAC,CAAA"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { GetSurfUserIdCookie, InitSurfAdsWebInternal, SurfsideAdsCoreWebVersionInfo, } from '@surfside/ads-core-web';
|
|
2
|
+
import { SurfsideBanner } from './components/Banner';
|
|
3
|
+
import { InitLogger, MemoizeAsync, SurfsideAdsCoreVersionInfo } from '@surfside/ads-core';
|
|
4
|
+
import { SurfsideVideo } from './components/Video';
|
|
5
|
+
import { SurfsideCarousel } from './components/Carousel';
|
|
6
|
+
import { SurfsideProductCard } from './components/Card';
|
|
7
|
+
import { SurfsideDynamicZone } from './components/Dynamic';
|
|
8
|
+
import { InitSurfAdsCoreClient, SurfsideAdsCoreClientVersionInfo } from '@surfside/ads-core-client';
|
|
9
|
+
import * as SurfsideAdsVersionInfo from './BuildInfo';
|
|
10
|
+
export * from './Init';
|
|
11
|
+
const searchHasString = (str) => typeof globalThis.window !== 'undefined' &&
|
|
12
|
+
globalThis.window.location.search.toLowerCase().includes(str);
|
|
13
|
+
export const InitSurfAdsWebComponents = (initializer) => {
|
|
14
|
+
const debug = searchHasString('surf_debug=true');
|
|
15
|
+
const logger = debug ? InitLogger() : undefined;
|
|
16
|
+
const log = logger?.with('InitSurfAdsWebComponents');
|
|
17
|
+
log?.info('🏄♂️ Initializing surfside ads web components');
|
|
18
|
+
log?.table(SurfsideAdsVersionTable);
|
|
19
|
+
const initApi = MemoizeAsync((accountId, siteId, channelId, locationId, userId) => {
|
|
20
|
+
return InitSurfAdsWebInternal((initializer ?? InitSurfAdsCoreClient)(accountId, siteId, channelId, locationId, userId));
|
|
21
|
+
});
|
|
22
|
+
log?.debug('Defining surf-banner');
|
|
23
|
+
customElements.define('surf-banner', class extends SurfsideBanner {
|
|
24
|
+
constructor() {
|
|
25
|
+
super(initApi, GetSurfUserIdCookie, logger);
|
|
26
|
+
}
|
|
27
|
+
});
|
|
28
|
+
log?.debug('Definining surf-video');
|
|
29
|
+
customElements.define('surf-video', class extends SurfsideVideo {
|
|
30
|
+
constructor() {
|
|
31
|
+
super(initApi, GetSurfUserIdCookie, logger);
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
log?.debug('Definining surf-carousel');
|
|
35
|
+
customElements.define('surf-carousel', class extends SurfsideCarousel {
|
|
36
|
+
constructor() {
|
|
37
|
+
super(initApi, GetSurfUserIdCookie, logger);
|
|
38
|
+
}
|
|
39
|
+
});
|
|
40
|
+
log?.debug('Definining surf-product-card');
|
|
41
|
+
customElements.define('surf-product-card', class extends SurfsideProductCard {
|
|
42
|
+
constructor() {
|
|
43
|
+
super(initApi, GetSurfUserIdCookie, logger);
|
|
44
|
+
}
|
|
45
|
+
});
|
|
46
|
+
log?.debug('Definining surf-dynamic-zone');
|
|
47
|
+
customElements.define('surf-dynamic-zone', class extends SurfsideDynamicZone {
|
|
48
|
+
constructor() {
|
|
49
|
+
super(initApi, GetSurfUserIdCookie, logger);
|
|
50
|
+
}
|
|
51
|
+
});
|
|
52
|
+
};
|
|
53
|
+
const pad = (name) => {
|
|
54
|
+
let newName = name;
|
|
55
|
+
const remaining = 25 - name.length;
|
|
56
|
+
for (let i = 0; i < remaining; i++) {
|
|
57
|
+
newName += ' ';
|
|
58
|
+
}
|
|
59
|
+
return newName;
|
|
60
|
+
};
|
|
61
|
+
export const SurfsideAdsVersionTable = {
|
|
62
|
+
[pad('@surfside/ads-core')]: SurfsideAdsCoreVersionInfo.VersionInfo,
|
|
63
|
+
[pad('@surfside/ads-core-client')]: SurfsideAdsCoreClientVersionInfo.VersionInfo,
|
|
64
|
+
[pad('@surfside/ads-core-web')]: SurfsideAdsCoreWebVersionInfo.VersionInfo,
|
|
65
|
+
[pad('@surfside/ads')]: SurfsideAdsVersionInfo.VersionInfo
|
|
66
|
+
};
|
|
67
|
+
//# sourceMappingURL=index.module.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.module.js","sourceRoot":"../@surfside-ads/","sources":["index.module.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import { InitLogger, Ok, WrapBidRequestDebouncerIfEnabled } from '@surfside/ads-core';
|
|
2
|
+
import { LoadSurfAds } from './Init';
|
|
3
|
+
const edge = '//cdn.surfside.io/sdk/1.0.0/edge.js';
|
|
4
|
+
const searchHasString = (str) => typeof globalThis.window !== 'undefined' &&
|
|
5
|
+
globalThis.window.location.search.toLowerCase().includes(str);
|
|
6
|
+
function GetSafeUrl(relativeUrl) {
|
|
7
|
+
/* Already has the Protocol included */
|
|
8
|
+
if (relativeUrl.includes('://')) {
|
|
9
|
+
return relativeUrl;
|
|
10
|
+
}
|
|
11
|
+
/* Check if protocol begins with // or not */
|
|
12
|
+
const slashes = relativeUrl.startsWith('//') ? '' : '//';
|
|
13
|
+
let protocol = globalThis.location.protocol;
|
|
14
|
+
if (!protocol.startsWith('http')) {
|
|
15
|
+
protocol = 'https:';
|
|
16
|
+
}
|
|
17
|
+
return `${protocol}${slashes}${relativeUrl}`;
|
|
18
|
+
}
|
|
19
|
+
function appendEdge() {
|
|
20
|
+
const wind = globalThis.window;
|
|
21
|
+
if (wind.surf === undefined) {
|
|
22
|
+
const url = GetSafeUrl(edge);
|
|
23
|
+
wind.surfContext = wind.surfContext ?? [];
|
|
24
|
+
wind.surfContext.push('surf');
|
|
25
|
+
wind.surf = function surfadsEventHandler(...args) {
|
|
26
|
+
if (wind.surf === undefined) {
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
(wind.surf.q = wind.surf.q ?? []).push(args);
|
|
30
|
+
};
|
|
31
|
+
wind.surf.q = wind.surf.q ?? [];
|
|
32
|
+
const script = globalThis.document.createElement('script');
|
|
33
|
+
script.src = url;
|
|
34
|
+
script.async = true;
|
|
35
|
+
globalThis.document.head.appendChild(script);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
if (globalThis.document.readyState === 'loading') {
|
|
39
|
+
globalThis.window.addEventListener('DOMContentLoaded', () => {
|
|
40
|
+
start();
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
else {
|
|
44
|
+
start();
|
|
45
|
+
}
|
|
46
|
+
function start() {
|
|
47
|
+
const isDebug = searchHasString('surf_debug=true');
|
|
48
|
+
const isTelemetryEnabled = isDebug && searchHasString('surf_telemetry=true');
|
|
49
|
+
const logger = isDebug ? InitLogger(true) : undefined;
|
|
50
|
+
const monkeyPatchHistory = (name, newFunc) => {
|
|
51
|
+
const existing = globalThis.window[`surf_monkey_${name}_patched`];
|
|
52
|
+
if (existing !== undefined) {
|
|
53
|
+
return existing;
|
|
54
|
+
}
|
|
55
|
+
const oldFunc = globalThis.history[name];
|
|
56
|
+
globalThis.window[`surf_monkey_${name}`] = oldFunc;
|
|
57
|
+
const patched = (...p) => newFunc(oldFunc, ...p);
|
|
58
|
+
globalThis.window[`surf_monkey_${name}_patched`] = patched;
|
|
59
|
+
return patched;
|
|
60
|
+
};
|
|
61
|
+
try {
|
|
62
|
+
globalThis.history.replaceState = monkeyPatchHistory('replaceState', (oldFunc, ...args) => {
|
|
63
|
+
logger?.info('Intercepting replaceState');
|
|
64
|
+
oldFunc.call(globalThis.window.history, ...args);
|
|
65
|
+
globalThis.window.dispatchEvent(new Event('monkeyHistoryReplace'));
|
|
66
|
+
});
|
|
67
|
+
globalThis.history.pushState = monkeyPatchHistory('pushState', (oldFunc, ...args) => {
|
|
68
|
+
logger?.info('Intercepting pushState');
|
|
69
|
+
oldFunc.call(globalThis.window.history, ...args);
|
|
70
|
+
globalThis.window.dispatchEvent(new Event('monkeyHistoryReplace'));
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
catch (e) {
|
|
74
|
+
logger?.error('Unable to monkey patch the history functions', e);
|
|
75
|
+
}
|
|
76
|
+
try {
|
|
77
|
+
logger?.info('Loading digital SDK');
|
|
78
|
+
appendEdge();
|
|
79
|
+
}
|
|
80
|
+
catch (e) {
|
|
81
|
+
logger?.error('Failed to initialize digital SDK! Got', e);
|
|
82
|
+
}
|
|
83
|
+
try {
|
|
84
|
+
logger?.info('Starting up Surfside Ads');
|
|
85
|
+
LoadSurfAds({
|
|
86
|
+
logger,
|
|
87
|
+
telemetry: isTelemetryEnabled,
|
|
88
|
+
overrides: {
|
|
89
|
+
services: {
|
|
90
|
+
requestBids: (config, requestBids) => Ok(WrapBidRequestDebouncerIfEnabled(logger, config.configuration, config.windowInfo, requestBids))
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
catch (e) {
|
|
96
|
+
logger?.error('Failed to initialize Surfside Ads! Got ', e);
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
;
|
|
100
|
+
//# sourceMappingURL=index.script.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.script.js","sourceRoot":"../@surfside-ads/","sources":["index.script.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
import { DeviceToTelemetryDevice, GetValue, InitLogger, ITelemetryCollector, Ok, WrapBidRequestDebouncerIfEnabled } from '@surfside/ads-core';
|
|
2
|
+
import { LoadSurfAds } from './Init';
|
|
3
|
+
import { FallbackSponsoredProducts, MockGetConfiguration, MockRequestBids } from '@surfside/ads-core-mock';
|
|
4
|
+
const edge = '//cdn.surfside.io/sdk/1.0.0/edge.js';
|
|
5
|
+
const searchHasString = (str) => typeof globalThis.window !== 'undefined' &&
|
|
6
|
+
globalThis.window.location.search.toLowerCase().includes(str);
|
|
7
|
+
function GetSafeUrl(relativeUrl) {
|
|
8
|
+
/* Already has the Protocol included */
|
|
9
|
+
if (relativeUrl.includes('://')) {
|
|
10
|
+
return relativeUrl;
|
|
11
|
+
}
|
|
12
|
+
/* Check if protocol begins with // or not */
|
|
13
|
+
const slashes = relativeUrl.startsWith('//') ? '' : '//';
|
|
14
|
+
let protocol = globalThis.location.protocol;
|
|
15
|
+
if (!protocol.startsWith('http')) {
|
|
16
|
+
protocol = 'https:';
|
|
17
|
+
}
|
|
18
|
+
return `${protocol}${slashes}${relativeUrl}`;
|
|
19
|
+
}
|
|
20
|
+
function appendEdge() {
|
|
21
|
+
const wind = globalThis.window;
|
|
22
|
+
if (wind.surf === undefined) {
|
|
23
|
+
const url = GetSafeUrl(edge);
|
|
24
|
+
wind.surfContext = wind.surfContext ?? [];
|
|
25
|
+
wind.surfContext.push('surf');
|
|
26
|
+
wind.surf = function surfadsEventHandler(...args) {
|
|
27
|
+
if (wind.surf === undefined) {
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
30
|
+
(wind.surf.q = wind.surf.q ?? []).push(args);
|
|
31
|
+
};
|
|
32
|
+
wind.surf.q = wind.surf.q ?? [];
|
|
33
|
+
const script = globalThis.document.createElement('script');
|
|
34
|
+
script.src = url;
|
|
35
|
+
script.async = true;
|
|
36
|
+
globalThis.document.head.appendChild(script);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
if (globalThis.document.readyState === 'loading') {
|
|
40
|
+
globalThis.window.addEventListener('DOMContentLoaded', () => {
|
|
41
|
+
start();
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
else {
|
|
45
|
+
start();
|
|
46
|
+
}
|
|
47
|
+
const MOCK_GEO = {
|
|
48
|
+
country: 'USA',
|
|
49
|
+
region: 'Virginia',
|
|
50
|
+
city: 'Richmond',
|
|
51
|
+
zip: '23218',
|
|
52
|
+
coords: {
|
|
53
|
+
latitude: 37.538837527059044,
|
|
54
|
+
longitude: -77.43359909814527,
|
|
55
|
+
accuracy: 1
|
|
56
|
+
},
|
|
57
|
+
utcoffset: -4,
|
|
58
|
+
ip: '127.0.0.1'
|
|
59
|
+
};
|
|
60
|
+
async function start() {
|
|
61
|
+
const isDebug = searchHasString('surf_debug=true');
|
|
62
|
+
const isTelemetryEnabled = isDebug || searchHasString('surf_telemetry=true');
|
|
63
|
+
const logger = isDebug ? InitLogger(true) : undefined;
|
|
64
|
+
try {
|
|
65
|
+
logger?.info('Loading digital SDK');
|
|
66
|
+
appendEdge();
|
|
67
|
+
}
|
|
68
|
+
catch (e) {
|
|
69
|
+
logger?.error('Failed to initialize digital SDK! Got', e);
|
|
70
|
+
}
|
|
71
|
+
const mockConfiguration = GetValue(await MockGetConfiguration(logger));
|
|
72
|
+
try {
|
|
73
|
+
logger?.info('Starting up Surfside Ads');
|
|
74
|
+
LoadSurfAds({
|
|
75
|
+
logger,
|
|
76
|
+
telemetry: isTelemetryEnabled,
|
|
77
|
+
overrides: {
|
|
78
|
+
dependencies: {
|
|
79
|
+
geo: MOCK_GEO,
|
|
80
|
+
configuration: mockConfiguration
|
|
81
|
+
},
|
|
82
|
+
services: {
|
|
83
|
+
requestBids: (config) => Ok(WrapBidRequestDebouncerIfEnabled(logger, config.configuration, config.windowInfo, (bidRequest) => {
|
|
84
|
+
config.logger?.error('RUNNING MOCK BID REQUEST!!!');
|
|
85
|
+
globalThis.requestCounter ??= 0;
|
|
86
|
+
globalThis.requestCounter++;
|
|
87
|
+
return MockRequestBids(config.logger, config.windowInfo, 0, 0, [], bidRequest);
|
|
88
|
+
})),
|
|
89
|
+
getAllSponsoredBrandProducts: () => Ok(async () => Ok(FallbackSponsoredProducts
|
|
90
|
+
.map((p) => ({
|
|
91
|
+
...p,
|
|
92
|
+
image: `http://creative.surfside.io/mock/flower${Math.floor(Math.random() * 10) + 1}.jpg`,
|
|
93
|
+
details: p.description
|
|
94
|
+
})))),
|
|
95
|
+
getAllSponsoredProducts: () => Ok(async () => Ok(FallbackSponsoredProducts
|
|
96
|
+
.map((p) => ({
|
|
97
|
+
...p,
|
|
98
|
+
image: `http://creative.surfside.io/mock/flower${Math.floor(Math.random() * 10) + 1}.jpg`,
|
|
99
|
+
details: p.description
|
|
100
|
+
})))),
|
|
101
|
+
generateTopProducts: () => Ok(async function* () {
|
|
102
|
+
yield* FallbackSponsoredProducts
|
|
103
|
+
.map((p) => ({
|
|
104
|
+
...p,
|
|
105
|
+
image: `http://creative.surfside.io/mock/flower${Math.floor(Math.random() * 10) + 1}.jpg`,
|
|
106
|
+
details: p.description
|
|
107
|
+
}));
|
|
108
|
+
}),
|
|
109
|
+
generateForYou: () => Ok(async function* () {
|
|
110
|
+
yield* FallbackSponsoredProducts
|
|
111
|
+
.map((p) => ({
|
|
112
|
+
...p,
|
|
113
|
+
image: `http://creative.surfside.io/mock/flower${Math.floor(Math.random() * 10) + 1}.jpg`,
|
|
114
|
+
details: p.description
|
|
115
|
+
}));
|
|
116
|
+
}),
|
|
117
|
+
generatePreviousPurchases: () => Ok(async function* () {
|
|
118
|
+
yield* FallbackSponsoredProducts
|
|
119
|
+
.map((p) => ({
|
|
120
|
+
...p,
|
|
121
|
+
image: `http://creative.surfside.io/mock/flower${Math.floor(Math.random() * 10) + 1}.jpg`,
|
|
122
|
+
details: p.description
|
|
123
|
+
}));
|
|
124
|
+
}),
|
|
125
|
+
getRecommendedProduct: () => Ok(async () => Ok(FallbackSponsoredProducts
|
|
126
|
+
.map((p) => ({
|
|
127
|
+
...p,
|
|
128
|
+
image: `http://creative.surfside.io/mock/flower${Math.floor(Math.random() * 10) + 1}.jpg`,
|
|
129
|
+
details: p.description,
|
|
130
|
+
brand_name: p.brand,
|
|
131
|
+
brandName: p.brand
|
|
132
|
+
}))[Math.floor(Math.random() * FallbackSponsoredProducts.length)])),
|
|
133
|
+
createTelemetryCollector: (config) => {
|
|
134
|
+
return Ok(new class extends ITelemetryCollector {
|
|
135
|
+
constructor() {
|
|
136
|
+
super(config.accountId, config.siteId, config.channelId, config.locationId, DeviceToTelemetryDevice(config.device));
|
|
137
|
+
}
|
|
138
|
+
record(entry) {
|
|
139
|
+
logger?.info(`o(*^▽^*)┛ ${entry.name} | ${entry.durationMs}ms`);
|
|
140
|
+
}
|
|
141
|
+
});
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
});
|
|
146
|
+
}
|
|
147
|
+
catch (e) {
|
|
148
|
+
logger?.error('Failed to initialize Surfside Ads! Got ', e);
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
;
|
|
152
|
+
//# sourceMappingURL=index.script.mock.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.script.mock.js","sourceRoot":"../@surfside-ads/","sources":["index.script.mock.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Init.js","sourceRoot":"../@surfside-ads/","sources":["service/Init.ts"],"names":[],"mappings":""}
|