Fix eslint issues for DataTableOperationManager and CustomTimestampHelper

This commit is contained in:
vaidankarswapnil 2021-10-13 12:49:59 +05:30
parent 271256bffb
commit 25c46ad504
3 changed files with 79 additions and 79 deletions

View File

@ -80,10 +80,10 @@ src/Explorer/Tables/DataTable/CacheBase.ts
src/Explorer/Tables/DataTable/DataTableBindingManager.ts src/Explorer/Tables/DataTable/DataTableBindingManager.ts
src/Explorer/Tables/DataTable/DataTableBuilder.ts src/Explorer/Tables/DataTable/DataTableBuilder.ts
src/Explorer/Tables/DataTable/DataTableContextMenu.ts src/Explorer/Tables/DataTable/DataTableContextMenu.ts
src/Explorer/Tables/DataTable/DataTableOperationManager.ts # src/Explorer/Tables/DataTable/DataTableOperationManager.ts
src/Explorer/Tables/DataTable/DataTableViewModel.ts src/Explorer/Tables/DataTable/DataTableViewModel.ts
src/Explorer/Tables/DataTable/TableEntityListViewModel.ts src/Explorer/Tables/DataTable/TableEntityListViewModel.ts
src/Explorer/Tables/QueryBuilder/CustomTimestampHelper.ts # src/Explorer/Tables/QueryBuilder/CustomTimestampHelper.ts
src/Explorer/Tables/TableDataClient.ts src/Explorer/Tables/TableDataClient.ts
src/Explorer/Tables/TableEntityProcessor.ts src/Explorer/Tables/TableEntityProcessor.ts
src/Explorer/Tables/Utilities.ts src/Explorer/Tables/Utilities.ts

View File

@ -1,11 +1,10 @@
import ko from "knockout"; import ko from "knockout";
import * as DataTableOperations from "./DataTableOperations";
import * as Constants from "../Constants"; import * as Constants from "../Constants";
import * as Entities from "../Entities";
import * as Utilities from "../Utilities";
import * as DataTableOperations from "./DataTableOperations";
import TableCommands from "./TableCommands"; import TableCommands from "./TableCommands";
import TableEntityListViewModel from "./TableEntityListViewModel"; import TableEntityListViewModel from "./TableEntityListViewModel";
import * as Utilities from "../Utilities";
import * as Entities from "../Entities";
/* /*
* Base class for data table row selection. * Base class for data table row selection.
@ -25,7 +24,7 @@ export default class DataTableOperationManager {
} }
private click = (event: JQueryEventObject) => { private click = (event: JQueryEventObject) => {
var elem: JQuery = $(event.currentTarget); const elem: JQuery = $(event.currentTarget);
this.updateLastSelectedItem(elem, event.shiftKey); this.updateLastSelectedItem(elem, event.shiftKey);
if (Utilities.isEnvironmentCtrlPressed(event)) { if (Utilities.isEnvironmentCtrlPressed(event)) {
@ -37,30 +36,30 @@ export default class DataTableOperationManager {
} }
}; };
private doubleClick = (event: JQueryEventObject) => { private doubleClick = () => {
this.tryOpenEditor(); this.tryOpenEditor();
}; };
private keyDown = (event: JQueryEventObject): boolean => { private keyDown = (event: JQueryEventObject): boolean => {
var isUpArrowKey: boolean = event.keyCode === Constants.keyCodes.UpArrow, const isUpArrowKey: boolean = event.keyCode === Constants.keyCodes.UpArrow,
isDownArrowKey: boolean = event.keyCode === Constants.keyCodes.DownArrow, isDownArrowKey: boolean = event.keyCode === Constants.keyCodes.DownArrow;
handled: boolean = false; let handled = false;
if (isUpArrowKey || isDownArrowKey) { if (isUpArrowKey || isDownArrowKey) {
var lastSelectedItem: Entities.ITableEntity = this._tableEntityListViewModel.lastSelectedItem; const lastSelectedItem: Entities.ITableEntity = this._tableEntityListViewModel.lastSelectedItem;
var dataTableRows: JQuery = $(Constants.htmlSelectors.dataTableAllRowsSelector); const dataTableRows: JQuery = $(Constants.htmlSelectors.dataTableAllRowsSelector);
var maximumIndex = dataTableRows.length - 1; const maximumIndex = dataTableRows.length - 1;
// If can't find an index for lastSelectedItem, then either no item is previously selected or it goes across page. // If can't find an index for lastSelectedItem, then either no item is previously selected or it goes across page.
// Simply select the first item in this case. // Simply select the first item in this case.
var lastSelectedItemIndex = lastSelectedItem const lastSelectedItemIndex = lastSelectedItem
? this._tableEntityListViewModel.getItemIndexFromCurrentPage( ? this._tableEntityListViewModel.getItemIndexFromCurrentPage(
this._tableEntityListViewModel.getTableEntityKeys(lastSelectedItem.RowKey._) this._tableEntityListViewModel.getTableEntityKeys(lastSelectedItem.RowKey._)
) )
: -1; : -1;
var nextIndex: number = isUpArrowKey ? lastSelectedItemIndex - 1 : lastSelectedItemIndex + 1; const nextIndex: number = isUpArrowKey ? lastSelectedItemIndex - 1 : lastSelectedItemIndex + 1;
var safeIndex: number = Utilities.ensureBetweenBounds(nextIndex, 0, maximumIndex); const safeIndex: number = Utilities.ensureBetweenBounds(nextIndex, 0, maximumIndex);
var selectedRowElement: JQuery = dataTableRows.eq(safeIndex); const selectedRowElement: JQuery = dataTableRows.eq(safeIndex);
if (selectedRowElement) { if (selectedRowElement) {
if (event.shiftKey) { if (event.shiftKey) {
@ -90,7 +89,7 @@ export default class DataTableOperationManager {
// in contrast, there may be more than one key down and key // in contrast, there may be more than one key down and key
// pressed events. // pressed events.
private keyUp = (event: JQueryEventObject): boolean => { private keyUp = (event: JQueryEventObject): boolean => {
var handled: boolean = false; let handled = false;
switch (event.keyCode) { switch (event.keyCode) {
case Constants.keyCodes.Enter: case Constants.keyCodes.Enter:
@ -105,8 +104,9 @@ export default class DataTableOperationManager {
}; };
private itemDropped = (event: JQueryEventObject): boolean => { private itemDropped = (event: JQueryEventObject): boolean => {
var handled: boolean = false; const handled = false;
var items = (<any>event.originalEvent).dataTransfer.items; //eslint-disable-next-line
const items = (<any>event.originalEvent).dataTransfer.items;
if (!items) { if (!items) {
// On browsers outside of Chromium // On browsers outside of Chromium
@ -115,9 +115,9 @@ export default class DataTableOperationManager {
return null; return null;
} }
for (var i = 0; i < items.length; i++) { for (let i = 0; i < items.length; i++) {
var item = items[i]; const item = items[i];
var entry = item.webkitGetAsEntry(); const entry = item.webkitGetAsEntry();
if (entry.isFile) { if (entry.isFile) {
// TODO: parse the file and insert content as entities // TODO: parse the file and insert content as entities
@ -132,8 +132,8 @@ export default class DataTableOperationManager {
} }
private tryHandleDeleteSelected(): boolean { private tryHandleDeleteSelected(): boolean {
var selectedEntities: Entities.ITableEntity[] = this._tableEntityListViewModel.selected(); const selectedEntities: Entities.ITableEntity[] = this._tableEntityListViewModel.selected();
var handled: boolean = false; let handled = false;
if (selectedEntities && selectedEntities.length) { if (selectedEntities && selectedEntities.length) {
this._tableCommands.deleteEntitiesCommand(this._tableEntityListViewModel); this._tableCommands.deleteEntitiesCommand(this._tableEntityListViewModel);
@ -150,8 +150,8 @@ export default class DataTableOperationManager {
} }
private updateLastSelectedItem($elem: JQuery, isShiftSelect: boolean) { private updateLastSelectedItem($elem: JQuery, isShiftSelect: boolean) {
var entityIdentity: Entities.ITableEntityIdentity = this.getEntityIdentity($elem); const entityIdentity: Entities.ITableEntityIdentity = this.getEntityIdentity($elem);
var entity = this._tableEntityListViewModel.getItemFromCurrentPage( const entity = this._tableEntityListViewModel.getItemFromCurrentPage(
this._tableEntityListViewModel.getTableEntityKeys(entityIdentity.RowKey) this._tableEntityListViewModel.getTableEntityKeys(entityIdentity.RowKey)
); );
@ -164,7 +164,7 @@ export default class DataTableOperationManager {
private applySingleSelection($elem: JQuery) { private applySingleSelection($elem: JQuery) {
if ($elem) { if ($elem) {
var entityIdentity: Entities.ITableEntityIdentity = this.getEntityIdentity($elem); const entityIdentity: Entities.ITableEntityIdentity = this.getEntityIdentity($elem);
this._tableEntityListViewModel.clearSelection(); this._tableEntityListViewModel.clearSelection();
this.addToSelection(entityIdentity.RowKey); this.addToSelection(entityIdentity.RowKey);
@ -180,12 +180,12 @@ export default class DataTableOperationManager {
} }
private applyCtrlSelection($elem: JQuery): void { private applyCtrlSelection($elem: JQuery): void {
var koSelected: ko.ObservableArray<Entities.ITableEntity> = this._tableEntityListViewModel const koSelected: ko.ObservableArray<Entities.ITableEntity> = this._tableEntityListViewModel
? this._tableEntityListViewModel.selected ? this._tableEntityListViewModel.selected
: null; : null;
if (koSelected) { if (koSelected) {
var entityIdentity: Entities.ITableEntityIdentity = this.getEntityIdentity($elem); const entityIdentity: Entities.ITableEntityIdentity = this.getEntityIdentity($elem);
if ( if (
!this._tableEntityListViewModel.isItemSelected( !this._tableEntityListViewModel.isItemSelected(
@ -201,7 +201,7 @@ export default class DataTableOperationManager {
} }
private applyShiftSelection($elem: JQuery): void { private applyShiftSelection($elem: JQuery): void {
var anchorItem = this._tableEntityListViewModel.lastSelectedAnchorItem; let anchorItem = this._tableEntityListViewModel.lastSelectedAnchorItem;
// If anchor item doesn't exist, use the first available item of current page instead // If anchor item doesn't exist, use the first available item of current page instead
if (!anchorItem && this._tableEntityListViewModel.items().length > 0) { if (!anchorItem && this._tableEntityListViewModel.items().length > 0) {
@ -209,16 +209,16 @@ export default class DataTableOperationManager {
} }
if (anchorItem) { if (anchorItem) {
var entityIdentity: Entities.ITableEntityIdentity = this.getEntityIdentity($elem); const entityIdentity: Entities.ITableEntityIdentity = this.getEntityIdentity($elem);
var elementIndex = this._tableEntityListViewModel.getItemIndexFromAllPages( const elementIndex = this._tableEntityListViewModel.getItemIndexFromAllPages(
this._tableEntityListViewModel.getTableEntityKeys(entityIdentity.RowKey) this._tableEntityListViewModel.getTableEntityKeys(entityIdentity.RowKey)
); );
var anchorIndex = this._tableEntityListViewModel.getItemIndexFromAllPages( const anchorIndex = this._tableEntityListViewModel.getItemIndexFromAllPages(
this._tableEntityListViewModel.getTableEntityKeys(anchorItem.RowKey._) this._tableEntityListViewModel.getTableEntityKeys(anchorItem.RowKey._)
); );
var startIndex = Math.min(elementIndex, anchorIndex); const startIndex = Math.min(elementIndex, anchorIndex);
var endIndex = Math.max(elementIndex, anchorIndex); const endIndex = Math.max(elementIndex, anchorIndex);
this._tableEntityListViewModel.clearSelection(); this._tableEntityListViewModel.clearSelection();
ko.utils.arrayPushAll<Entities.ITableEntity>( ko.utils.arrayPushAll<Entities.ITableEntity>(
@ -229,7 +229,7 @@ export default class DataTableOperationManager {
} }
private applyContextMenuSelection($elem: JQuery) { private applyContextMenuSelection($elem: JQuery) {
var entityIdentity: Entities.ITableEntityIdentity = this.getEntityIdentity($elem); const entityIdentity: Entities.ITableEntityIdentity = this.getEntityIdentity($elem);
if ( if (
!this._tableEntityListViewModel.isItemSelected( !this._tableEntityListViewModel.isItemSelected(
@ -244,26 +244,26 @@ export default class DataTableOperationManager {
} }
private addToSelection(rowKey: string) { private addToSelection(rowKey: string) {
var selectedEntity: Entities.ITableEntity = this._tableEntityListViewModel.getItemFromCurrentPage( const selectedEntity: Entities.ITableEntity = this._tableEntityListViewModel.getItemFromCurrentPage(
this._tableEntityListViewModel.getTableEntityKeys(rowKey) this._tableEntityListViewModel.getTableEntityKeys(rowKey)
); );
if (selectedEntity != null) { if (selectedEntity !== null) {
this._tableEntityListViewModel.selected.push(selectedEntity); this._tableEntityListViewModel.selected.push(selectedEntity);
} }
} }
// Selecting first row if the selection is empty. // Selecting first row if the selection is empty.
public selectFirstIfNeeded(): void { public selectFirstIfNeeded(): void {
var koSelected: ko.ObservableArray<Entities.ITableEntity> = this._tableEntityListViewModel const koSelected: ko.ObservableArray<Entities.ITableEntity> = this._tableEntityListViewModel
? this._tableEntityListViewModel.selected ? this._tableEntityListViewModel.selected
: null; : null;
var koEntities: ko.ObservableArray<Entities.ITableEntity> = this._tableEntityListViewModel const koEntities: ko.ObservableArray<Entities.ITableEntity> = this._tableEntityListViewModel
? this._tableEntityListViewModel.items ? this._tableEntityListViewModel.items
: null; : null;
if (!koSelected().length && koEntities().length) { if (!koSelected().length && koEntities().length) {
var firstEntity: Entities.ITableEntity = koEntities()[0]; const firstEntity: Entities.ITableEntity = koEntities()[0];
// Clear last selection: lastSelectedItem and lastSelectedAnchorItem // Clear last selection: lastSelectedItem and lastSelectedAnchorItem
this._tableEntityListViewModel.clearLastSelected(); this._tableEntityListViewModel.clearLastSelected();
@ -278,7 +278,7 @@ export default class DataTableOperationManager {
} }
} }
public bind() { public bind(): void {
this.dataTable.on("click", "tr", this.click); this.dataTable.on("click", "tr", this.click);
this.dataTable.on("dblclick", "tr", this.doubleClick); this.dataTable.on("dblclick", "tr", this.doubleClick);
this.dataTable.on("keydown", "td", this.keyDown); this.dataTable.on("keydown", "td", this.keyDown);

View File

@ -1,12 +1,12 @@
import * as DateTimeUtilities from "./DateTimeUtilities";
import QueryBuilderViewModel from "./QueryBuilderViewModel"; import QueryBuilderViewModel from "./QueryBuilderViewModel";
import QueryClauseViewModel from "./QueryClauseViewModel"; import QueryClauseViewModel from "./QueryClauseViewModel";
import * as DateTimeUtilities from "./DateTimeUtilities";
/** /**
* Constants * Constants
*/ */
export var utc = "utc"; export const utc = "utc";
export var local = "local"; export const local = "local";
export interface ITimestampQuery { export interface ITimestampQuery {
queryType: string; // valid values are "last" and "range" queryType: string; // valid values are "last" and "range"
@ -41,11 +41,11 @@ export function addRangeTimestamp(
queryBuilderViewModel.addCustomRange(timestamp, queryClauseViewModel); queryBuilderViewModel.addCustomRange(timestamp, queryClauseViewModel);
} }
export function getDefaultStart(localTime: boolean, durationHours: number = 24): string { export function getDefaultStart(localTime: boolean, durationHours = 24): string {
var startTimestamp: string; let startTimestamp: string;
var utcNowString: string = new Date().toISOString(); const utcNowString: string = new Date().toISOString();
var yesterday: Date = new Date(utcNowString); const yesterday: Date = new Date(utcNowString);
yesterday.setHours(yesterday.getHours() - durationHours); yesterday.setHours(yesterday.getHours() - durationHours);
startTimestamp = yesterday.toISOString(); startTimestamp = yesterday.toISOString();
@ -58,9 +58,9 @@ export function getDefaultStart(localTime: boolean, durationHours: number = 24):
} }
export function getDefaultEnd(localTime: boolean): string { export function getDefaultEnd(localTime: boolean): string {
var endTimestamp: string; let endTimestamp: string;
var utcNowString: string = new Date().toISOString(); const utcNowString: string = new Date().toISOString();
endTimestamp = utcNowString; endTimestamp = utcNowString;
@ -73,14 +73,14 @@ export function getDefaultEnd(localTime: boolean): string {
export function parseDate(dateString: string, isUTC: boolean): Date { export function parseDate(dateString: string, isUTC: boolean): Date {
// TODO validate dateString // TODO validate dateString
var date: Date = null; let date: Date = null;
if (dateString) { if (dateString) {
try { try {
// Date string is assumed to be UTC in Storage Explorer Standalone. // Date string is assumed to be UTC in Storage Explorer Standalone.
// Behavior may vary in other browsers. // Behavior may vary in other browsers.
// Here's an example of how the string looks like "2015-10-24T21:44:12" // Here's an example of how the string looks like "2015-10-24T21:44:12"
var millisecondTime = Date.parse(dateString), const millisecondTime = Date.parse(dateString),
parsed: Date = new Date(millisecondTime); parsed: Date = new Date(millisecondTime);
if (isUTC) { if (isUTC) {
@ -89,7 +89,7 @@ export function parseDate(dateString: string, isUTC: boolean): Date {
// Since we parsed in UTC, accessors are flipped - we get local time from the getUTC* group // Since we parsed in UTC, accessors are flipped - we get local time from the getUTC* group
// Reinstating, the date is parsed above as UTC, and here we are creating a new date object // Reinstating, the date is parsed above as UTC, and here we are creating a new date object
// in local time. // in local time.
var year = parsed.getUTCFullYear(), const year = parsed.getUTCFullYear(),
month = parsed.getUTCMonth(), month = parsed.getUTCMonth(),
day = parsed.getUTCDate(), day = parsed.getUTCDate(),
hours = parsed.getUTCHours(), hours = parsed.getUTCHours(),
@ -109,8 +109,8 @@ export function parseDate(dateString: string, isUTC: boolean): Date {
export function utcFromLocalDateString(localDateString: string): string { export function utcFromLocalDateString(localDateString: string): string {
// TODO validate localDateString // TODO validate localDateString
var localDate = parseDate(localDateString, false), const localDate = parseDate(localDateString, false);
utcDateString: string = null; let utcDateString: string = null;
if (localDate) { if (localDate) {
utcDateString = localDate.toISOString(); utcDateString = localDate.toISOString();
@ -120,7 +120,7 @@ export function utcFromLocalDateString(localDateString: string): string {
} }
function padIfNeeded(value: number): string { function padIfNeeded(value: number): string {
var padded: string = String(value); let padded = String(value);
if (0 <= value && value < 10) { if (0 <= value && value < 10) {
padded = "0" + padded; padded = "0" + padded;
@ -130,7 +130,7 @@ function padIfNeeded(value: number): string {
} }
function toLocalDateString(date: Date): string { function toLocalDateString(date: Date): string {
var localDateString: string = null; let localDateString: string = null;
if (date) { if (date) {
localDateString = localDateString =
@ -152,8 +152,8 @@ function toLocalDateString(date: Date): string {
export function localFromUtcDateString(utcDateString: string): string { export function localFromUtcDateString(utcDateString: string): string {
// TODO validate utcDateString // TODO validate utcDateString
var utcDate: Date = parseDate(utcDateString, true), const utcDate: Date = parseDate(utcDateString, true);
localDateString: string = null; let localDateString: string = null;
if (utcDate) { if (utcDate) {
localDateString = toLocalDateString(utcDate); localDateString = toLocalDateString(utcDate);
@ -164,8 +164,8 @@ export function localFromUtcDateString(utcDateString: string): string {
export function tryChangeTimestampTimeZone(koTimestamp: ko.Observable<string>, toUTC: boolean): void { export function tryChangeTimestampTimeZone(koTimestamp: ko.Observable<string>, toUTC: boolean): void {
if (koTimestamp) { if (koTimestamp) {
var currentDateString: string = koTimestamp(), const currentDateString: string = koTimestamp();
newDateString: string; let newDateString: string;
if (currentDateString) { if (currentDateString) {
if (toUTC) { if (toUTC) {
@ -189,16 +189,16 @@ export function tryChangeTimestampTimeZone(koTimestamp: ko.Observable<string>, t
* Input validation helpers * Input validation helpers
*/ */
export var noTooltip = "", export const noTooltip = "",
invalidStartTimeTooltip = "Please provide a valid start time.", // localize invalidStartTimeTooltip = "Please provide a valid start time.", // localize
invalidExpiryTimeRequiredTooltip = "Required field. Please provide a valid expiry time.", // localize invalidExpiryTimeRequiredTooltip = "Required field. Please provide a valid expiry time.", // localize
invalidExpiryTimeGreaterThanStartTimeTooltip = "The expiry time must be greater than the start time."; // localize invalidExpiryTimeGreaterThanStartTimeTooltip = "The expiry time must be greater than the start time."; // localize
export function isDateString(dateString: string): boolean { export function isDateString(dateString: string): boolean {
var success: boolean = false; let success = false;
if (dateString) { if (dateString) {
var date: number = Date.parse(dateString); const date = Date.parse(dateString);
success = $.isNumeric(date); success = $.isNumeric(date);
} }
@ -308,10 +308,10 @@ function _getLocalIsoDateStringFromParts(
} }
function _addDaysHours(time: Date, days: number, hours: number): Date { function _addDaysHours(time: Date, days: number, hours: number): Date {
var msPerHour = 1000 * 60 * 60; const msPerHour = 1000 * 60 * 60;
var daysMs = days * msPerHour * 24; const daysMs = days * msPerHour * 24;
var hoursMs = hours * msPerHour; const hoursMs = hours * msPerHour;
var newTimeMs = time.getTime() + daysMs + hoursMs; const newTimeMs = time.getTime() + daysMs + hoursMs;
return new Date(newTimeMs); return new Date(newTimeMs);
} }
@ -321,7 +321,7 @@ function _daysHoursBeforeNow(days: number, hours: number): Date {
export function _queryLastDaysHours(days: number, hours: number): string { export function _queryLastDaysHours(days: number, hours: number): string {
/* tslint:disable: no-unused-variable */ /* tslint:disable: no-unused-variable */
var daysHoursAgo = _getLocalIsoDateTimeString(_daysHoursBeforeNow(days, hours)); let daysHoursAgo = _getLocalIsoDateTimeString(_daysHoursBeforeNow(days, hours));
daysHoursAgo = DateTimeUtilities.getUTCDateTime(daysHoursAgo); daysHoursAgo = DateTimeUtilities.getUTCDateTime(daysHoursAgo);
return daysHoursAgo; return daysHoursAgo;
@ -329,21 +329,21 @@ export function _queryLastDaysHours(days: number, hours: number): string {
} }
export function _queryCurrentMonthLocal(): string { export function _queryCurrentMonthLocal(): string {
var now = new Date(); const now = new Date();
var start = _getLocalIsoDateStringFromParts(now.getFullYear(), now.getMonth(), 1); let start = _getLocalIsoDateStringFromParts(now.getFullYear(), now.getMonth(), 1);
start = DateTimeUtilities.getUTCDateTime(start); start = DateTimeUtilities.getUTCDateTime(start);
return start; return start;
} }
export function _queryCurrentYearLocal(): string { export function _queryCurrentYearLocal(): string {
var now = new Date(); const now = new Date();
var start = _getLocalIsoDateStringFromParts(now.getFullYear(), 0, 1); // Month is 0..11, date is 1..31 let start = _getLocalIsoDateStringFromParts(now.getFullYear(), 0, 1); // Month is 0..11, date is 1..31
start = DateTimeUtilities.getUTCDateTime(start); start = DateTimeUtilities.getUTCDateTime(start);
return start; return start;
} }
function _addTime(time: Date, lastNumber: number, timeUnit: string): Date { function _addTime(time: Date, lastNumber: number, timeUnit: string): Date {
var timeMS: number; let timeMS: number;
switch (TimeUnit[Number(timeUnit)]) { switch (TimeUnit[Number(timeUnit)]) {
case TimeUnit.Days.toString(): case TimeUnit.Days.toString():
timeMS = lastNumber * 1000 * 60 * 60 * 24; timeMS = lastNumber * 1000 * 60 * 60 * 24;
@ -360,7 +360,7 @@ function _addTime(time: Date, lastNumber: number, timeUnit: string): Date {
default: default:
//throw new Errors.ArgumentOutOfRangeError(timeUnit); //throw new Errors.ArgumentOutOfRangeError(timeUnit);
} }
var newTimeMS = time.getTime() + timeMS; const newTimeMS = time.getTime() + timeMS;
return new Date(newTimeMS); return new Date(newTimeMS);
} }
@ -370,7 +370,7 @@ function _timeBeforeNow(lastNumber: number, timeUnit: string): Date {
export function _queryLastTime(lastNumber: number, timeUnit: string): string { export function _queryLastTime(lastNumber: number, timeUnit: string): string {
/* tslint:disable: no-unused-variable */ /* tslint:disable: no-unused-variable */
var daysHoursAgo = _getLocalIsoDateTimeString(_timeBeforeNow(lastNumber, timeUnit)); let daysHoursAgo = _getLocalIsoDateTimeString(_timeBeforeNow(lastNumber, timeUnit));
daysHoursAgo = DateTimeUtilities.getUTCDateTime(daysHoursAgo); daysHoursAgo = DateTimeUtilities.getUTCDateTime(daysHoursAgo);
return daysHoursAgo; return daysHoursAgo;
/* tslint:enable: no-unused-variable */ /* tslint:enable: no-unused-variable */