Skip to content

Commit c944c70

Browse files
PoC messaging adsjs
1 parent 445ca1b commit c944c70

File tree

4 files changed

+373
-3
lines changed

4 files changed

+373
-3
lines changed
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
/**
2+
* @module Android AdsJS integration
3+
*/
4+
import { load, init } from '../src/content-scope-features.js';
5+
import { processConfig } from './../src/utils';
6+
import { AndroidAdsjsMessagingConfig } from '../../messaging/index.js';
7+
8+
function initCode() {
9+
// @ts-expect-error https://app.asana.com/0/1201614831475344/1203979574128023/f
10+
const config = $CONTENT_SCOPE$;
11+
// @ts-expect-error https://app.asana.com/0/1201614831475344/1203979574128023/f
12+
const userUnprotectedDomains = $USER_UNPROTECTED_DOMAINS$;
13+
// @ts-expect-error https://app.asana.com/0/1201614831475344/1203979574128023/f
14+
const userPreferences = $USER_PREFERENCES$;
15+
16+
const processedConfig = processConfig(config, userUnprotectedDomains, userPreferences);
17+
18+
const configConstruct = processedConfig;
19+
const objectName = configConstruct.objectName || 'contentScopeAdsjs';
20+
21+
processedConfig.messagingConfig = new AndroidAdsjsMessagingConfig({
22+
objectName,
23+
target: globalThis,
24+
debug: processedConfig.debug,
25+
});
26+
27+
load({
28+
platform: processedConfig.platform,
29+
site: processedConfig.site,
30+
bundledConfig: processedConfig.bundledConfig,
31+
messagingConfig: processedConfig.messagingConfig,
32+
messageSecret: processedConfig.messageSecret,
33+
});
34+
35+
init(processedConfig);
36+
}
37+
38+
initCode();

injected/scripts/entry-points.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ const builds = {
3636
output: ['../build/android/autofillPasswordImport.js'],
3737
},
3838
'android-adsjs': {
39-
input: 'entry-points/android.js',
39+
input: 'entry-points/android-adsjs.js',
4040
output: ['../build/android/adsjsContentScope.js'],
4141
},
4242
windows: {

messaging/index.js

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ import {
3030
import { WebkitMessagingConfig, WebkitMessagingTransport } from './lib/webkit.js';
3131
import { NotificationMessage, RequestMessage, Subscription, MessageResponse, MessageError, SubscriptionEvent } from './schema.js';
3232
import { AndroidMessagingConfig, AndroidMessagingTransport } from './lib/android.js';
33+
import { AndroidAdsjsMessagingConfig, AndroidAdsjsMessagingTransport } from './lib/android-adsjs.js';
3334
import { createTypedMessages } from './lib/typed-messages.js';
3435

3536
/**
@@ -51,7 +52,7 @@ export class MessagingContext {
5152
}
5253

5354
/**
54-
* @typedef {WebkitMessagingConfig | WindowsMessagingConfig | AndroidMessagingConfig | TestTransportConfig} MessagingConfig
55+
* @typedef {WebkitMessagingConfig | WindowsMessagingConfig | AndroidMessagingConfig | AndroidAdsjsMessagingConfig | TestTransportConfig} MessagingConfig
5556
*/
5657

5758
/**
@@ -215,7 +216,7 @@ export class TestTransport {
215216
}
216217

217218
/**
218-
* @param {WebkitMessagingConfig | WindowsMessagingConfig | AndroidMessagingConfig | TestTransportConfig} config
219+
* @param {WebkitMessagingConfig | WindowsMessagingConfig | AndroidMessagingConfig | AndroidAdsjsMessagingConfig | TestTransportConfig} config
219220
* @param {MessagingContext} messagingContext
220221
* @returns {MessagingTransport}
221222
*/
@@ -229,6 +230,9 @@ function getTransport(config, messagingContext) {
229230
if (config instanceof AndroidMessagingConfig) {
230231
return new AndroidMessagingTransport(config, messagingContext);
231232
}
233+
if (config instanceof AndroidAdsjsMessagingConfig) {
234+
return new AndroidAdsjsMessagingTransport(config, messagingContext);
235+
}
232236
if (config instanceof TestTransportConfig) {
233237
return new TestTransport(config, messagingContext);
234238
}
@@ -268,5 +272,7 @@ export {
268272
WindowsRequestMessage,
269273
AndroidMessagingConfig,
270274
AndroidMessagingTransport,
275+
AndroidAdsjsMessagingConfig,
276+
AndroidAdsjsMessagingTransport,
271277
createTypedMessages,
272278
};

0 commit comments

Comments
 (0)