blob: 29271018e62b5a08b5a92e36809ebf2aa183ac17 [file] [log] [blame]
/**
* @license
* Copyright (C) 2016 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import {
GrDiffLine as GrDiffLineApi,
GrDiffLineType,
LineNumber,
} from '../../../api/diff';
export {GrDiffLineType, LineNumber};
export const FILE = 'FILE';
export class GrDiffLine implements GrDiffLineApi {
constructor(
readonly type: GrDiffLineType,
public beforeNumber: LineNumber = 0,
public afterNumber: LineNumber = 0
) {}
hasIntralineInfo = false;
highlights: Highlights[] = [];
text = '';
// TODO(TS): remove this properties
static readonly Type = GrDiffLineType;
static readonly File = FILE;
}
/**
* A line highlight object consists of three fields:
* - contentIndex: The index of the chunk `content` field (the line
* being referred to).
* - startIndex: Index of the character where the highlight should begin.
* - endIndex: (optional) Index of the character where the highlight should
* end. If omitted, the highlight is meant to be a continuation onto the
* next line.
*/
export interface Highlights {
contentIndex: number;
startIndex: number;
endIndex?: number;
}
export const BLANK_LINE = new GrDiffLine(GrDiffLineType.BLANK);