Skip to content

Commit b895b1c

Browse files
committed
Move preview URL implementation to mock-transport.js
1 parent 22b4123 commit b895b1c

File tree

4 files changed

+16
-33
lines changed

4 files changed

+16
-33
lines changed

special-pages/pages/onboarding/app/components/v3/data.js

Lines changed: 0 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -239,19 +239,3 @@ export const stepDefinitions = {
239239
rows: ['bookmarks', 'session-restore', 'home-shortcut'],
240240
},
241241
};
242-
243-
export const stepDefinitionsAdBlocking = {
244-
systemSettings: {
245-
id: 'systemSettings',
246-
kind: 'settings',
247-
rows: ['dock', 'ad-blocking', 'import'],
248-
},
249-
};
250-
251-
export const stepDefinitionsYouTubeAdBlocking = {
252-
systemSettings: {
253-
id: 'systemSettings',
254-
kind: 'settings',
255-
rows: ['dock', 'youtube-ad-blocking', 'import'],
256-
},
257-
};

special-pages/pages/onboarding/app/index.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ import { callWithRetry } from '../../../shared/call-with-retry';
1313
import { TranslationProvider } from '../../../shared/components/TranslationsProvider';
1414
import { SettingsProvider } from './components/SettingsProvider';
1515
import enStrings from '../public/locales/en/onboarding.json';
16+
import { stepDefinitions as stepDefinitionsV3 } from './components/v3/data';
1617
import { mockTransport } from '../src/mock-transport.js';
1718

1819
const baseEnvironment = new Environment().withInjectName(document.documentElement.dataset.platform).withEnv(import.meta.env);
@@ -64,9 +65,8 @@ async function init() {
6465
.withPlatformName(baseEnvironment.injectName)
6566
.withPlatformName(init.platform?.name)
6667
.withPlatformName(baseEnvironment.urlParams.get('platform'))
67-
.withNamedStepDefinitions(init.order)
68+
.withStepDefinitions(init.order === 'v3' ? stepDefinitionsV3 : null)
6869
.withStepDefinitions(init.stepDefinitions)
69-
.withNamedStepDefinitions(environment.urlParams.get('steps'))
7070
.withNamedOrder(init.order)
7171
.withNamedOrder(environment.urlParams.get('order'))
7272
.withExcludedScreens(init.exclude)

special-pages/pages/onboarding/app/settings.js

Lines changed: 0 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
import { ALT_ORDER, DEFAULT_ORDER, EVERY_PAGE_ID, ORDER_V3 } from './types';
22
import { stepDefinitions as defaultStepDefinitions } from './data';
3-
import { stepDefinitions as stepDefinitionsV3, stepDefinitionsAdBlocking, stepDefinitionsYouTubeAdBlocking } from './components/v3/data';
43

54
/**
65
* Settings that affect the Application, such as running order
@@ -149,17 +148,4 @@ export class Settings {
149148
stepDefinitions: nextSteps,
150149
});
151150
}
152-
153-
/**
154-
* @param {string|null|undefined} named
155-
* @returns {Settings}
156-
*/
157-
withNamedStepDefinitions(named) {
158-
if (!named) return this;
159-
if (named === 'v3') return this.withStepDefinitions(stepDefinitionsV3);
160-
if (named === 'adBlocking') return this.withStepDefinitions(stepDefinitionsAdBlocking);
161-
if (named === 'youTubeAdBlocking') return this.withStepDefinitions(stepDefinitionsYouTubeAdBlocking);
162-
console.warn('ignoring named step definitions:', named);
163-
return this;
164-
}
165151
}

special-pages/pages/onboarding/src/mock-transport.js

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@ import { TestTransportConfig } from '@duckduckgo/messaging';
44
* @typedef {import('../../release-notes/types/release-notes.ts').UpdateMessage} UpdateMessage
55
*/
66

7+
const url = new URL(window.location.href);
8+
79
export function mockTransport() {
810
return new TestTransportConfig({
911
notify(_msg) {
@@ -20,8 +22,19 @@ export function mockTransport() {
2022
const msg = /** @type {any} */ (_msg);
2123
switch (msg.method) {
2224
case 'init': {
25+
const stepDefinitions = {};
26+
27+
const adBlocking = url.searchParams.get('adBlocking');
28+
if (adBlocking) {
29+
stepDefinitions.systemSettings = {
30+
id: 'systemSettings',
31+
kind: 'settings',
32+
rows: ['dock', adBlocking === 'youtube' ? 'youtube-ad-blocking' : 'ad-blocking', 'import'],
33+
};
34+
}
35+
2336
return Promise.resolve({
24-
stepDefinitions: {},
37+
stepDefinitions,
2538
exclude: [],
2639
order: 'v3',
2740
locale: 'en',

0 commit comments

Comments
 (0)