Revert "Upgrade linter and formatter to Ultracite" (#1226)
This commit is contained in:
parent
0e320b391d
commit
1aff7d9868
177 changed files with 8334 additions and 6943 deletions
|
|
@ -1,24 +1,25 @@
|
|||
import type { Node } from "prosemirror-model";
|
||||
import { Plugin, PluginKey } from "prosemirror-state";
|
||||
import type { Node } from 'prosemirror-model';
|
||||
import { Plugin, PluginKey } from 'prosemirror-state';
|
||||
import {
|
||||
type Decoration,
|
||||
DecorationSet,
|
||||
type EditorView,
|
||||
} from "prosemirror-view";
|
||||
import { createRoot } from "react-dom/client";
|
||||
import type { ArtifactKind } from "@/components/artifact";
|
||||
import { Suggestion as PreviewSuggestion } from "@/components/suggestion";
|
||||
import type { Suggestion } from "@/lib/db/schema";
|
||||
} from 'prosemirror-view';
|
||||
import { createRoot } from 'react-dom/client';
|
||||
|
||||
import { Suggestion as PreviewSuggestion } from '@/components/suggestion';
|
||||
import type { Suggestion } from '@/lib/db/schema';
|
||||
import type { ArtifactKind } from '@/components/artifact';
|
||||
|
||||
export interface UISuggestion extends Suggestion {
|
||||
selectionStart: number;
|
||||
selectionEnd: number;
|
||||
}
|
||||
|
||||
type Position = {
|
||||
interface Position {
|
||||
start: number;
|
||||
end: number;
|
||||
};
|
||||
}
|
||||
|
||||
function findPositionsInDoc(doc: Node, searchText: string): Position | null {
|
||||
let positions: { start: number; end: number } | null = null;
|
||||
|
|
@ -45,8 +46,8 @@ function findPositionsInDoc(doc: Node, searchText: string): Position | null {
|
|||
|
||||
export function projectWithPositions(
|
||||
doc: Node,
|
||||
suggestions: Suggestion[]
|
||||
): UISuggestion[] {
|
||||
suggestions: Array<Suggestion>,
|
||||
): Array<UISuggestion> {
|
||||
return suggestions.map((suggestion) => {
|
||||
const positions = findPositionsInDoc(doc, suggestion.originalText);
|
||||
|
||||
|
|
@ -69,12 +70,12 @@ export function projectWithPositions(
|
|||
export function createSuggestionWidget(
|
||||
suggestion: UISuggestion,
|
||||
view: EditorView,
|
||||
artifactKind: ArtifactKind = "text"
|
||||
artifactKind: ArtifactKind = 'text',
|
||||
): { dom: HTMLElement; destroy: () => void } {
|
||||
const dom = document.createElement("span");
|
||||
const dom = document.createElement('span');
|
||||
const root = createRoot(dom);
|
||||
|
||||
dom.addEventListener("mousedown", (event) => {
|
||||
dom.addEventListener('mousedown', (event) => {
|
||||
event.preventDefault();
|
||||
view.dom.blur();
|
||||
});
|
||||
|
|
@ -91,7 +92,7 @@ export function createSuggestionWidget(
|
|||
state.doc,
|
||||
currentDecorations.find().filter((decoration: Decoration) => {
|
||||
return decoration.spec.suggestionId !== suggestion.id;
|
||||
})
|
||||
}),
|
||||
);
|
||||
|
||||
decorationTransaction.setMeta(suggestionsPluginKey, {
|
||||
|
|
@ -104,20 +105,20 @@ export function createSuggestionWidget(
|
|||
const textTransaction = view.state.tr.replaceWith(
|
||||
suggestion.selectionStart,
|
||||
suggestion.selectionEnd,
|
||||
state.schema.text(suggestion.suggestedText)
|
||||
state.schema.text(suggestion.suggestedText),
|
||||
);
|
||||
|
||||
textTransaction.setMeta("no-debounce", true);
|
||||
textTransaction.setMeta('no-debounce', true);
|
||||
|
||||
dispatch(textTransaction);
|
||||
};
|
||||
|
||||
root.render(
|
||||
<PreviewSuggestion
|
||||
artifactKind={artifactKind}
|
||||
onApply={onApply}
|
||||
suggestion={suggestion}
|
||||
/>
|
||||
onApply={onApply}
|
||||
artifactKind={artifactKind}
|
||||
/>,
|
||||
);
|
||||
|
||||
return {
|
||||
|
|
@ -131,7 +132,7 @@ export function createSuggestionWidget(
|
|||
};
|
||||
}
|
||||
|
||||
export const suggestionsPluginKey = new PluginKey("suggestions");
|
||||
export const suggestionsPluginKey = new PluginKey('suggestions');
|
||||
export const suggestionsPlugin = new Plugin({
|
||||
key: suggestionsPluginKey,
|
||||
state: {
|
||||
|
|
@ -140,9 +141,7 @@ export const suggestionsPlugin = new Plugin({
|
|||
},
|
||||
apply(tr, state) {
|
||||
const newDecorations = tr.getMeta(suggestionsPluginKey);
|
||||
if (newDecorations) {
|
||||
return newDecorations;
|
||||
}
|
||||
if (newDecorations) return newDecorations;
|
||||
|
||||
return {
|
||||
decorations: state.decorations.map(tr.mapping, tr.doc),
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue