chrome-devtools-frontend
Version:
Chrome DevTools UI
39 lines (32 loc) • 1.1 kB
text/typescript
// Copyright 2023 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
import type * as Trace from '../../models/trace/trace.js';
let instance: ActiveFilters|null = null;
/** Singleton class that contains the set of active filters for the given trace
* file.
*/
export class ActiveFilters {
static instance(opts: {
forceNew: boolean|null,
} = {forceNew: null}): ActiveFilters {
const forceNew = Boolean(opts.forceNew);
if (!instance || forceNew) {
instance = new ActiveFilters();
}
return instance;
}
static removeInstance(): void {
instance = null;
}
activeFilters(): readonly Trace.Extras.TraceFilter.TraceFilter[] {
return this.
}
setFilters(newFilters: Trace.Extras.TraceFilter.TraceFilter[]): void {
this.
}
isVisible(event: Trace.Types.Events.Event): boolean {
return this.
}
}