Tons of Solutions Engineering work done today for the rest of the CS team! Headway, Howard Hanna, Engels, Brighton, etc. Also completed Datasnippers auth flow and worked on Anthology's script. Cloned Anthology's courses (900..) and will clone Full Story on Monday.
This commit is contained in:
13
Scripts/node_modules/lines-and-columns/build/index.d.ts
generated
vendored
Normal file
13
Scripts/node_modules/lines-and-columns/build/index.d.ts
generated
vendored
Normal file
@ -0,0 +1,13 @@
|
||||
export declare type SourceLocation = {
|
||||
line: number;
|
||||
column: number;
|
||||
};
|
||||
export declare class LinesAndColumns {
|
||||
private string;
|
||||
private offsets;
|
||||
constructor(string: string);
|
||||
locationForIndex(index: number): SourceLocation | null;
|
||||
indexForLocation(location: SourceLocation): number | null;
|
||||
private lengthOfLine;
|
||||
}
|
||||
export default LinesAndColumns;
|
||||
62
Scripts/node_modules/lines-and-columns/build/index.js
generated
vendored
Normal file
62
Scripts/node_modules/lines-and-columns/build/index.js
generated
vendored
Normal file
@ -0,0 +1,62 @@
|
||||
"use strict";
|
||||
exports.__esModule = true;
|
||||
exports.LinesAndColumns = void 0;
|
||||
var LF = '\n';
|
||||
var CR = '\r';
|
||||
var LinesAndColumns = /** @class */ (function () {
|
||||
function LinesAndColumns(string) {
|
||||
this.string = string;
|
||||
var offsets = [0];
|
||||
for (var offset = 0; offset < string.length;) {
|
||||
switch (string[offset]) {
|
||||
case LF:
|
||||
offset += LF.length;
|
||||
offsets.push(offset);
|
||||
break;
|
||||
case CR:
|
||||
offset += CR.length;
|
||||
if (string[offset] === LF) {
|
||||
offset += LF.length;
|
||||
}
|
||||
offsets.push(offset);
|
||||
break;
|
||||
default:
|
||||
offset++;
|
||||
break;
|
||||
}
|
||||
}
|
||||
this.offsets = offsets;
|
||||
}
|
||||
LinesAndColumns.prototype.locationForIndex = function (index) {
|
||||
if (index < 0 || index > this.string.length) {
|
||||
return null;
|
||||
}
|
||||
var line = 0;
|
||||
var offsets = this.offsets;
|
||||
while (offsets[line + 1] <= index) {
|
||||
line++;
|
||||
}
|
||||
var column = index - offsets[line];
|
||||
return { line: line, column: column };
|
||||
};
|
||||
LinesAndColumns.prototype.indexForLocation = function (location) {
|
||||
var line = location.line, column = location.column;
|
||||
if (line < 0 || line >= this.offsets.length) {
|
||||
return null;
|
||||
}
|
||||
if (column < 0 || column > this.lengthOfLine(line)) {
|
||||
return null;
|
||||
}
|
||||
return this.offsets[line] + column;
|
||||
};
|
||||
LinesAndColumns.prototype.lengthOfLine = function (line) {
|
||||
var offset = this.offsets[line];
|
||||
var nextOffset = line === this.offsets.length - 1
|
||||
? this.string.length
|
||||
: this.offsets[line + 1];
|
||||
return nextOffset - offset;
|
||||
};
|
||||
return LinesAndColumns;
|
||||
}());
|
||||
exports.LinesAndColumns = LinesAndColumns;
|
||||
exports["default"] = LinesAndColumns;
|
||||
Reference in New Issue
Block a user