Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 | 102x 102x 102x 102x 2x 2x 102x 147x 93x 54x 47x 7x 4x 3x 5x 3x 3x 4x 3x 3x 3x 3x 2x 2x 1x 3x 102x 102x | import { FileSelectionState, FileState } from "../../../model/files/files" import { createSelectorFactory, defaultMemoize } from "@ngrx/store" import { filesSelector } from "../../store/files/files.selector" import { getVisibleFileStates, isDeltaState } from "../../../model/files/files.helper" function removeMatch(array: string[], target: string): string[] { const matchIndex = array.indexOf(target) return [...array.slice(0, matchIndex), ...array.slice(matchIndex + 1)] } export function onlyVisibleFilesMatterComparer(fileStates1: FileState[], fileStates2: FileState[]): boolean { if (fileStates1 === fileStates2) { return true } if (fileStates1.length === 0 && fileStates2.length === 0) { return true } if (isDeltaState(fileStates1) !== isDeltaState(fileStates2)) { return false } const visibleFileStates1 = fileStates1 .filter(file => file.selectedAs !== FileSelectionState.None) .map(file => file.file.fileMeta.fileName) let visibleFileStates2 = fileStates2 .filter(file => file.selectedAs !== FileSelectionState.None) .map(file => file.file.fileMeta.fileName) Iif (visibleFileStates1.length !== visibleFileStates2.length) { return false } function reduceToDetermineIfArraysContainSameContents(previousCallResult: boolean, arrayMember: any): boolean { Iif (previousCallResult === false) { return false } if (visibleFileStates2.includes(arrayMember)) { visibleFileStates2 = removeMatch(visibleFileStates2, arrayMember) return true } return false } return visibleFileStates1.reduce(reduceToDetermineIfArraysContainSameContents, true) } export const visibleFileStatesSelector = createSelectorFactory(projection => defaultMemoize(projection, onlyVisibleFilesMatterComparer, onlyVisibleFilesMatterComparer) )(filesSelector, getVisibleFileStates) |