Files
cloudbeaver/webapp/packages/plugin-codemirror6/src/useCodemirrorExtensions.ts
T
Alexey 6ad148850d refactor: migrate to pure esm CB-5684 (#2929)
* refactor: migrate to pure esm

* chore: revert `useDefineForClassFields` tsconf

* chore: remove patch.js
2024-09-21 07:06:37 +03:00

17 lines
632 B
TypeScript

/*
* CloudBeaver - Cloud Database Manager
* Copyright (C) 2020-2024 DBeaver Corp and others
*
* Licensed under the Apache License, Version 2.0.
* you may not use this file except in compliance with the License.
*/
import { Compartment, type Extension } from '@codemirror/state';
import { useState } from 'react';
export function useCodemirrorExtensions(extensions?: Map<Compartment, Extension>, staticExtensions?: Extension): Map<Compartment, Extension> {
const [compartment] = useState(() => new Compartment());
const map = new Map(extensions?.entries());
map.set(compartment, staticExtensions || []);
return map;
}