Add prettier for codestyle and re-format everything (#1294)

This commit is contained in:
Erik Michelson 2021-06-06 23:14:00 +02:00 committed by GitHub
parent 8b78154075
commit 0aae1f70d2
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
319 changed files with 4809 additions and 3936 deletions

View file

@ -10,40 +10,48 @@ import useResizeObserver from 'use-resize-observer'
import { LineMarkerPosition } from '../types'
import { LineMarkers } from '../replace-components/linemarker/line-number-marker'
export const calculateLineMarkerPositions = (documentElement: HTMLDivElement, currentLineMarkers: LineMarkers[], offset?: number): LineMarkerPosition[] => {
export const calculateLineMarkerPositions = (
documentElement: HTMLDivElement,
currentLineMarkers: LineMarkers[],
offset?: number
): LineMarkerPosition[] => {
const lineMarkers = currentLineMarkers
const children: HTMLCollection = documentElement.children
const lineMarkerPositions: LineMarkerPosition[] = []
Array.from(children)
.forEach((child, childIndex) => {
const htmlChild = (child as HTMLElement)
if (htmlChild.offsetTop === undefined) {
return
}
const currentLineMarker = lineMarkers[childIndex]
if (currentLineMarker === undefined) {
return
}
Array.from(children).forEach((child, childIndex) => {
const htmlChild = child as HTMLElement
if (htmlChild.offsetTop === undefined) {
return
}
const currentLineMarker = lineMarkers[childIndex]
if (currentLineMarker === undefined) {
return
}
const lastPosition = lineMarkerPositions[lineMarkerPositions.length - 1]
if (!lastPosition || lastPosition.line !== currentLineMarker.startLine) {
lineMarkerPositions.push({
line: currentLineMarker.startLine,
position: htmlChild.offsetTop + (offset ?? 0)
})
}
const lastPosition = lineMarkerPositions[lineMarkerPositions.length - 1]
if (!lastPosition || lastPosition.line !== currentLineMarker.startLine) {
lineMarkerPositions.push({
line: currentLineMarker.startLine,
position: htmlChild.offsetTop + (offset ?? 0)
})
}
lineMarkerPositions.push({
line: currentLineMarker.endLine,
position: htmlChild.offsetTop + htmlChild.offsetHeight + (offset ?? 0)
})
})
lineMarkerPositions.push({
line: currentLineMarker.endLine,
position: htmlChild.offsetTop + htmlChild.offsetHeight + (offset ?? 0)
})
})
return lineMarkerPositions
}
export const useCalculateLineMarkerPosition = (documentElement: RefObject<HTMLDivElement>, lineMarkers?: LineMarkers[], onLineMarkerPositionChanged?: (lineMarkerPosition: LineMarkerPosition[]) => void, offset?: number): void => {
export const useCalculateLineMarkerPosition = (
documentElement: RefObject<HTMLDivElement>,
lineMarkers?: LineMarkers[],
onLineMarkerPositionChanged?: (lineMarkerPosition: LineMarkerPosition[]) => void,
offset?: number
): void => {
const lastLineMarkerPositions = useRef<LineMarkerPosition[]>()
const calculateNewLineMarkerPositions = useCallback(() => {

View file

@ -11,7 +11,7 @@ import { ComponentReplacer, NativeRenderer, SubNodeTransform } from '../replace-
import { LineKeys } from '../types'
export interface TextDifferenceResult {
lines: LineKeys[],
lines: LineKeys[]
lastUsedLineId: number
}
@ -44,10 +44,15 @@ export const calculateKeyFromLineMarker = (node: DomElement, lineKeys?: LineKeys
return
}
return `${ startLine.id }_${ endLine.id }`
return `${startLine.id}_${endLine.id}`
}
export const findNodeReplacement = (node: DomElement, allReplacers: ComponentReplacer[], subNodeTransform: SubNodeTransform, nativeRenderer: NativeRenderer): ReactElement | null | undefined => {
export const findNodeReplacement = (
node: DomElement,
allReplacers: ComponentReplacer[],
subNodeTransform: SubNodeTransform,
nativeRenderer: NativeRenderer
): ReactElement | null | undefined => {
return allReplacers
.map((componentReplacer) => componentReplacer.getReplacement(node, subNodeTransform, nativeRenderer))
.find((replacement) => replacement !== undefined)
@ -62,7 +67,7 @@ export const renderNativeNode = (node: DomElement, key: string, transform: Trans
return convertNodeToElement(node, key as unknown as number, transform)
}
export const buildTransformer = (lineKeys: (LineKeys[] | undefined), allReplacers: ComponentReplacer[]): Transform => {
export const buildTransformer = (lineKeys: LineKeys[] | undefined, allReplacers: ComponentReplacer[]): Transform => {
const transform: Transform = (node, index) => {
const nativeRenderer: NativeRenderer = () => renderNativeNode(node, key, transform)
const subNodeTransform: SubNodeTransform = (subNode, subIndex) => transform(subNode, subIndex, transform)
@ -74,9 +79,11 @@ export const buildTransformer = (lineKeys: (LineKeys[] | undefined), allReplacer
} else if (tryReplacement === undefined) {
return nativeRenderer()
} else {
return <Suspense key={ key } fallback={ <span>Loading...</span> }>
{ tryReplacement }
</Suspense>
return (
<Suspense key={key} fallback={<span>Loading...</span>}>
{tryReplacement}
</Suspense>
)
}
}
return transform

View file

@ -8,7 +8,11 @@ import { diffArrays } from 'diff'
import { TextDifferenceResult } from './html-react-transformer'
import { LineKeys } from '../types'
export const calculateNewLineNumberMapping = (newMarkdownLines: string[], oldLineKeys: LineKeys[], lastUsedLineId: number): TextDifferenceResult => {
export const calculateNewLineNumberMapping = (
newMarkdownLines: string[],
oldLineKeys: LineKeys[],
lastUsedLineId: number
): TextDifferenceResult => {
const lineDifferences = diffArrays<string, LineKeys>(newMarkdownLines, oldLineKeys, {
comparator: (left: string | LineKeys, right: string | LineKeys) => {
const leftLine = (left as LineKeys).line ?? (left as string)
@ -23,14 +27,12 @@ export const calculateNewLineNumberMapping = (newMarkdownLines: string[], oldLin
.filter((change) => change.added === undefined || !change.added)
.forEach((value) => {
if (value.removed) {
(value.value as string[])
.forEach(line => {
lastUsedLineId += 1
newLines.push({ line: line, id: lastUsedLineId })
})
;(value.value as string[]).forEach((line) => {
lastUsedLineId += 1
newLines.push({ line: line, id: lastUsedLineId })
})
} else {
(value.value as LineKeys[])
.forEach((line) => newLines.push(line))
;(value.value as LineKeys[]).forEach((line) => newLines.push(line))
}
})