Skip to content

Commit 98cc9db

Browse files
authored
chore: simplify doclint (#3162)
This renames CRBrowserContext events into ChromiumBrowserContext and simplifies some doclint/coverage logic.
1 parent fd2e65b commit 98cc9db

File tree

6 files changed

+13
-29
lines changed

6 files changed

+13
-29
lines changed

src/chromium/crBrowser.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -145,7 +145,7 @@ export class CRBrowser extends BrowserBase {
145145
const backgroundPage = new CRPage(session, targetInfo.targetId, context, null, false);
146146
this._backgroundPages.set(targetInfo.targetId, backgroundPage);
147147
backgroundPage.pageOrError().then(() => {
148-
context!.emit(Events.CRBrowserContext.BackgroundPage, backgroundPage._page);
148+
context!.emit(Events.ChromiumBrowserContext.BackgroundPage, backgroundPage._page);
149149
});
150150
return;
151151
}
@@ -172,7 +172,7 @@ export class CRBrowser extends BrowserBase {
172172
if (targetInfo.type === 'service_worker') {
173173
const serviceWorker = new CRServiceWorker(context, session, targetInfo.url);
174174
this._serviceWorkers.set(targetInfo.targetId, serviceWorker);
175-
context.emit(Events.CRBrowserContext.ServiceWorker, serviceWorker);
175+
context.emit(Events.ChromiumBrowserContext.ServiceWorker, serviceWorker);
176176
return;
177177
}
178178

src/chromium/events.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
*/
1717

1818
export const Events = {
19-
CRBrowserContext: {
19+
ChromiumBrowserContext: {
2020
BackgroundPage: 'backgroundpage',
2121
ServiceWorker: 'serviceworker',
2222
}

src/rpc/client/chromiumBrowserContext.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,13 +32,13 @@ export class ChromiumBrowserContext extends BrowserContext {
3232
this._channel.on('crBackgroundPage', ({ page }) => {
3333
const backgroundPage = Page.from(page);
3434
this._backgroundPages.add(backgroundPage);
35-
this.emit(ChromiumEvents.CRBrowserContext.BackgroundPage, backgroundPage);
35+
this.emit(ChromiumEvents.ChromiumBrowserContext.BackgroundPage, backgroundPage);
3636
});
3737
this._channel.on('crServiceWorker', ({worker}) => {
3838
const serviceWorker = Worker.from(worker);
3939
serviceWorker._context = this;
4040
this._serviceWorkers.add(serviceWorker);
41-
this.emit(ChromiumEvents.CRBrowserContext.ServiceWorker, serviceWorker);
41+
this.emit(ChromiumEvents.ChromiumBrowserContext.ServiceWorker, serviceWorker);
4242
});
4343
}
4444

src/rpc/server/browserContextDispatcher.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,10 +44,10 @@ export class BrowserContextDispatcher extends Dispatcher<BrowserContext, Browser
4444
if (context._browserBase._options.name === 'chromium') {
4545
for (const page of (context as CRBrowserContext).backgroundPages())
4646
this._dispatchEvent('crBackgroundPage', { page: new PageDispatcher(this._scope, page) });
47-
context.on(ChromiumEvents.CRBrowserContext.BackgroundPage, page => this._dispatchEvent('crBackgroundPage', { page: new PageDispatcher(this._scope, page) }));
47+
context.on(ChromiumEvents.ChromiumBrowserContext.BackgroundPage, page => this._dispatchEvent('crBackgroundPage', { page: new PageDispatcher(this._scope, page) }));
4848
for (const serviceWorker of (context as CRBrowserContext).serviceWorkers())
4949
this._dispatchEvent('crServiceWorker', new WorkerDispatcher(this._scope, serviceWorker));
50-
context.on(ChromiumEvents.CRBrowserContext.ServiceWorker, serviceWorker => this._dispatchEvent('crServiceWorker', { worker: new WorkerDispatcher(this._scope, serviceWorker) }));
50+
context.on(ChromiumEvents.ChromiumBrowserContext.ServiceWorker, serviceWorker => this._dispatchEvent('crServiceWorker', { worker: new WorkerDispatcher(this._scope, serviceWorker) }));
5151
}
5252
}
5353

test/jest/coverage.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ function apiForBrowser(browserName) {
7373
name: 'Chromium',
7474
events: {
7575
...require('../../lib/events').Events,
76-
ChromiumBrowserContext: require('../../lib/chromium/events').Events.CRBrowserContext,
76+
...require('../../lib/chromium/events').Events,
7777
}
7878
},
7979
];

utils/doclint/check_public_api/JSBuilder.js

Lines changed: 5 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,7 @@ function checkSources(sources) {
8080
visit(classesByName.get(parent));
8181
};
8282
visit(cls);
83-
return new Documentation.Class(expandPrefix(cls.name), Array.from(membersMap.values()), undefined, cls.comment, cls.templates);
83+
return new Documentation.Class(cls.name, Array.from(membersMap.values()), undefined, cls.comment, cls.templates);
8484
});
8585
}
8686

@@ -100,9 +100,10 @@ function checkSources(sources) {
100100
className = path.basename(parent.fileName, '.js');
101101
}
102102
if (className && !excludeClasses.has(className)) {
103-
classes.push(serializeClass(className, symbol, node));
104-
inheritance.set(className, parentClasses(node));
105103
excludeClasses.add(className);
104+
const renamed = expandPrefix(className);
105+
classes.push(serializeClass(renamed, symbol, node));
106+
inheritance.set(renamed, parentClasses(node).map(expandPrefix));
106107
}
107108
}
108109
if (fileName.endsWith('/api.ts') && ts.isExportSpecifier(node))
@@ -184,18 +185,9 @@ function checkSources(sources) {
184185
*/
185186
function serializeType(type, circular = []) {
186187
let typeName = checker.typeToString(type).replace(/SmartHandle/g, 'Handle');
187-
if (typeName === 'any')
188+
if (typeName === 'any')
188189
typeName = 'Object';
189190
const nextCircular = [typeName].concat(circular);
190-
191-
if (typeName === 'Selector') {
192-
if (!excludeClasses.has(typeName)) {
193-
const properties = type.getProperties().map(property => serializeSymbol(property, nextCircular));
194-
classes.push(new Documentation.Class(typeName, properties));
195-
excludeClasses.add(typeName);
196-
}
197-
return new Documentation.Type(typeName, []);
198-
}
199191
const stringIndexType = type.getStringIndexType();
200192
if (stringIndexType) {
201193
return new Documentation.Type(`Object<string, ${serializeType(stringIndexType, circular).name}>`);
@@ -245,14 +237,6 @@ function checkSources(sources) {
245237
continue;
246238
if (EventEmitter.prototype.hasOwnProperty(name))
247239
continue;
248-
if (className === 'CDPSession' && name === 'send') {
249-
// special case CDPSession.send, which has a stricter private API than the public API
250-
members.push(Documentation.Member.createMethod('send', [
251-
Documentation.Member.createProperty('method', new Documentation.Type('string')),
252-
Documentation.Member.createProperty('params', new Documentation.Type('Object')),
253-
], new Documentation.Type('Promise<Object>')));
254-
continue;
255-
}
256240
const memberType = checker.getTypeOfSymbolAtLocation(member, member.valueDeclaration);
257241
const signature = signatureForType(memberType);
258242
if (member.flags & ts.SymbolFlags.TypeParameter)

0 commit comments

Comments
 (0)