Merge pull request #3548 from microsoft/hediet/managerial-flyingfish

Removes unneeded dependencies.
This commit is contained in:
Henning Dieterichs 2023-02-15 15:41:25 +01:00 committed by GitHub
commit af2f1c6510
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 34 additions and 209 deletions

View file

@ -4,8 +4,6 @@ import "./bootstrap.scss";
import "./style.scss";
import { App } from "./pages/App";
// new MobxConsoleLogger(mobx);
const elem = document.createElement("div");
elem.className = "root";
document.body.append(elem);

View file

@ -3,7 +3,6 @@
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import { Disposable } from "@hediet/std/disposable";
import {
action,
autorun,
@ -12,20 +11,25 @@ import {
ObservableMap,
reaction,
runInAction,
trace,
} from "mobx";
import {
getLoadedMonaco,
IMonacoSetup,
loadMonaco,
} from "../../../monaco-loader";
import { IMonacoSetup, loadMonaco } from "../../../monaco-loader";
import { IPlaygroundProject, IPreviewState } from "../../../shared";
import { getPlaygroundExamples, PlaygroundExample } from "./playgroundExamples";
import { monacoEditorVersion } from "../../monacoEditorVersion";
import { Debouncer } from "../../utils/Debouncer";
import { LzmaCompressor } from "../../utils/lzmaCompressor";
import {
HistoryController,
IHistoryModel,
ILocation,
} from "../../utils/ObservableHistory";
import { ObservablePromise } from "../../utils/ObservablePromise";
import { debouncedComputed, Disposable } from "../../utils/utils";
import {
getNpmVersions,
getNpmVersionsSync,
getVsCodeCommitId,
} from "./getNpmVersionsSync";
import { getPlaygroundExamples, PlaygroundExample } from "./playgroundExamples";
import {
getDefaultSettings,
JsonString,
@ -33,17 +37,6 @@ import {
SettingsModel,
toLoaderConfig,
} from "./SettingsModel";
import { Debouncer } from "../../utils/Debouncer";
import { LzmaCompressor } from "../../utils/lzmaCompressor";
import { ObservablePromise } from "../../utils/ObservablePromise";
import { transaction } from "mobx";
import { debouncedComputed } from "../../utils/utils";
import {
getNpmVersions,
getNpmVersionsSync,
getVsCodeCommitId,
} from "./getNpmVersionsSync";
import { monacoEditorVersion } from "../../monacoEditorVersion";
export class PlaygroundModel {
public readonly dispose = Disposable.fn();

View file

@ -3,8 +3,8 @@
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import { Disposable } from "@hediet/std/disposable";
import { autorun, observable, runInAction } from "mobx";
import { autorun } from "mobx";
import { Disposable } from "./utils";
export interface ILocation {
hashValue: string | undefined;

View file

@ -3,7 +3,7 @@
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import { observable, autorun, trace } from "mobx";
import { autorun, observable } from "mobx";
import { Debouncer } from "./Debouncer";
export function debouncedComputed<T, TDerived>(
@ -38,3 +38,21 @@ export class DebouncedComputed<T> {
private readonly getDebouncedData: (data: unknown) => T
) {}
}
export interface Disposable {
dispose(): void;
}
export namespace Disposable {
export function fn(): (() => void) & { track(d: Disposable): void } {
const disposables: Disposable[] = [];
const fn = () => {
disposables.forEach((d) => d.dispose());
disposables.length = 0;
};
fn.track = (d: Disposable) => {
disposables.push(d);
};
return fn;
}
}