import getMarkersServiceOverride from '@codingame/monaco-vscode-markers-service-override';
import getOutputServiceOverride from '@codingame/monaco-vscode-output-service-override';
import getTimelineServiceOverride from '@codingame/monaco-vscode-timeline-service-override';
import getOutlineServiceOverride from '@codingame/monaco-vscode-outline-service-override';
import { registerServices } from '../services.js';
import { registerWorkerLoader } from '../worker.js';
import { Worker } from '../tools/crossOriginWorker.js';
import '@codingame/monaco-vscode-references-view-default-extension';

registerWorkerLoader('outputLinkComputer', () => new Worker(new URL('@codingame/monaco-vscode-output-service-override/worker', import.meta.url)));
registerServices({
    ...getTimelineServiceOverride(),
    ...getOutlineServiceOverride(),
    ...getOutputServiceOverride(),
    ...getMarkersServiceOverride()
});
