@gpa-gemstone/common-pages
Version:
Common UI pages for GPA products
303 lines (302 loc) • 12.8 kB
JavaScript
;
//******************************************************************************************************
// QuickSelects.tsx - Gbtc
//
// Copyright © 2020, Grid Protection Alliance. All Rights Reserved.
//
// Licensed to the Grid Protection Alliance (GPA) under one or more contributor license agreements. See
// the NOTICE file distributed with this work for additional information regarding copyright ownership.
// The GPA licenses this file to you under the MIT License (MIT), the "License"; you may not use this
// file except in compliance with the License. You may obtain a copy of the License at:
//
// http://opensource.org/licenses/MIT
//
// Unless agreed to in writing, the subject software distributed under the License is distributed on an
// "AS-IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. Refer to the
// License for the specific language governing permissions and limitations.
//
// Code Modification History:
// ----------------------------------------------------------------------------------------------------
// 09/16/2021 - Christoph Lackner
// Generated original version of source code.
// 06/20/2024 - Ali Karrar
// Moved QuickSelects from TimeFilter to new file
//******************************************************************************************************
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.AvailableQuickSelects = void 0;
exports.getFormat = getFormat;
var moment_1 = __importDefault(require("moment"));
var moment_timezone_1 = __importDefault(require("moment-timezone"));
function getFormat(format) {
if (format == 'date')
return 'YYYY-MM-DD';
else if (format == "time")
return 'HH:mm:ss.SSS';
else
return 'MM/DD/YYYY HH:mm:ss.SSS';
}
//update all quick selects to use new timefilters
exports.AvailableQuickSelects = [
{
label: 'This Hour', createFilter: function (tz, format) {
var offset = moment_timezone_1.default.tz(moment_1.default.utc().startOf('hour').format('YYYY-MM-DDTHH:mm:ss.SSSSS'), tz).utcOffset();
var t = moment_1.default.utc().add(offset, 'minutes').startOf('hour');
return {
start: t.format(getFormat(format)),
end: t.add(60, 'm').format(getFormat(format)),
};
},
hideQuickPick: function (f) {
return f == 'date';
}
},
{
label: 'Last Hour', createFilter: function (tz, format) {
var offset = moment_timezone_1.default.tz(moment_1.default.utc().startOf('hour').subtract(1, 'hour').format('YYYY-MM-DDTHH:mm:ss.SSSSS'), tz).utcOffset();
var t = moment_1.default.utc().add(offset, 'minutes').startOf('hour');
return {
end: t.format(getFormat(format)),
unit: 'm',
duration: 60,
};
},
hideQuickPick: function (f) {
return f == 'date';
}
},
{
label: 'Last 60 Minutes', createFilter: function (tz, format) {
var offset = moment_timezone_1.default.tz(moment_1.default.utc().startOf('minute').subtract(1, 'hour').format('YYYY-MM-DDTHH:mm:ss.SSSSS'), tz).utcOffset();
var t = moment_1.default.utc().add(offset, 'minutes').startOf('minute');
return {
end: t.format(getFormat(format)),
unit: 'm',
duration: 60,
};
},
hideQuickPick: function (f) {
return f == 'date';
}
},
{
label: 'Today', createFilter: function (tz, format) {
var offset = moment_timezone_1.default.tz(moment_1.default.utc().startOf('day').format('YYYY-MM-DDTHH:mm:ss.SSSSS'), tz).utcOffset();
var t = moment_1.default.utc().add(offset, 'minutes').startOf('day');
return {
start: t.format(getFormat(format)),
unit: 'h',
duration: 24,
};
},
hideQuickPick: function (f) {
return f == 'time';
}
},
{
label: 'Yesterday', createFilter: function (tz, format) {
var offset = moment_timezone_1.default.tz(moment_1.default.utc().startOf('day').subtract(1, 'days').format('YYYY-MM-DDTHH:mm:ss.SSSSS'), tz).utcOffset();
var t = moment_1.default.utc().add(offset, 'minutes').startOf('day');
return {
end: t.format(getFormat(format)),
unit: 'h',
duration: 24,
};
},
hideQuickPick: function (f) {
return f == 'time';
}
},
{
label: 'Last 24 Hours', createFilter: function (tz, format) {
var offset = moment_timezone_1.default.tz(moment_1.default.utc().startOf('hour').subtract(24, 'hours').format('YYYY-MM-DDTHH:mm:ss.SSSSS'), tz).utcOffset();
var t = moment_1.default.utc().add(offset, 'minutes');
return {
end: t.format(getFormat(format)),
unit: 'h',
duration: 24,
};
},
hideQuickPick: function (f) {
return f == 'date' || f == 'time';
}
},
{
label: 'This Week', createFilter: function (tz, format) {
var offset = moment_timezone_1.default.tz(moment_1.default.utc().startOf('week').format('YYYY-MM-DDTHH:mm:ss.SSSSS'), tz).utcOffset();
var t = moment_1.default.utc().add(offset, 'minutes').startOf('week');
return {
start: t.format(getFormat(format)),
unit: 'd',
duration: 7
};
},
hideQuickPick: function (f) {
return f == 'time';
}
},
{
label: 'Last Week', createFilter: function (tz, format) {
var offset = moment_timezone_1.default.tz(moment_1.default.utc().startOf('week').format('YYYY-MM-DDTHH:mm:ss.SSSSS'), tz).utcOffset();
var t = moment_1.default.utc().add(offset, 'minutes').startOf('week');
return {
end: t.format(getFormat(format)),
unit: 'd',
duration: 7
};
},
hideQuickPick: function (f) {
return f == 'time';
}
},
{
label: 'Last 7 Days', createFilter: function (tz, format) {
var offset = moment_timezone_1.default.tz(moment_1.default.utc().startOf('day').format('YYYY-MM-DDTHH:mm:ss.SSSSS'), tz).utcOffset();
var t = moment_1.default.utc().add(offset, 'minutes').startOf('day');
return {
end: t.format(getFormat(format)),
unit: 'd',
duration: 7
};
},
hideQuickPick: function (f) {
return f == 'time';
}
},
{
label: 'This Month', createFilter: function (tz, format) {
var offset = moment_timezone_1.default.tz(moment_1.default.utc().startOf('month').format('YYYY-MM-DDTHH:mm:ss.SSSSS'), tz).utcOffset();
var t = moment_1.default.utc().add(offset, 'minutes').startOf('month');
return {
start: t.format(getFormat(format)),
unit: 'd',
duration: t.daysInMonth()
};
},
hideQuickPick: function (f) {
return f == 'time';
}
},
{
label: 'Last Month', createFilter: function (tz, format) {
var offset = moment_timezone_1.default.tz(moment_1.default.utc().startOf('month').subtract(1, 'month').format('YYYY-MM-DDTHH:mm:ss.SSSSS'), tz).utcOffset();
var t = moment_1.default.utc().add(offset, 'minutes').startOf('month').subtract(1, 'month');
return {
start: t.format(getFormat(format)),
unit: 'd',
duration: t.daysInMonth()
};
},
hideQuickPick: function (f) {
return f == 'time';
}
},
{
label: 'Last 30 Days', createFilter: function (tz, format) {
var offset = moment_timezone_1.default.tz(moment_1.default.utc().startOf('day').format('YYYY-MM-DDTHH:mm:ss.SSSSS'), tz).utcOffset();
var t = moment_1.default.utc().add(offset, 'minutes').startOf('day');
return {
end: t.format(getFormat(format)),
unit: 'd',
duration: 30,
};
},
hideQuickPick: function (f) {
return f == 'time';
}
},
{
label: 'This Quarter', createFilter: function (tz, format) {
var offset = moment_timezone_1.default.tz(moment_1.default.utc().startOf('quarter').add(1, 'quarter').format('YYYY-MM-DDTHH:mm:ss.SSSSS'), tz).utcOffset();
var offset_tend = moment_timezone_1.default.tz(moment_1.default.utc().startOf('quarter').format('YYYY-MM-DDTHH:mm:ss.SSSSS'), tz).utcOffset();
var t = moment_1.default.utc().add(offset, 'minutes').startOf('quarter');
var tend = moment_1.default.utc().add(offset_tend, 'minutes').startOf('quarter');
tend.add(1, 'quarter');
var h = moment_1.default.duration(tend.diff(t)).asDays();
return {
start: t.format(getFormat(format)),
unit: 'd',
duration: h,
};
},
hideQuickPick: function (f) {
return f == 'time';
}
},
{
label: 'Last Quarter', createFilter: function (tz, format) {
var offset = moment_timezone_1.default.tz(moment_1.default.utc().startOf('quarter').subtract(1, 'quarter').format('YYYY-MM-DDTHH:mm:ss.SSSSS'), tz).utcOffset();
var offset_tend = moment_timezone_1.default.tz(moment_1.default.utc().startOf('quarter').format('YYYY-MM-DDTHH:mm:ss.SSSSS'), tz).utcOffset();
var t = moment_1.default.utc().add(offset, 'minutes').startOf('quarter');
var tend = moment_1.default.utc().add(offset_tend, 'minutes').startOf('quarter');
t.subtract(1, 'quarter');
var h = moment_1.default.duration(tend.diff(t)).asDays();
return {
start: t.format(getFormat(format)),
unit: 'd',
duration: h,
};
},
hideQuickPick: function (f) {
return f == 'time';
}
},
{
label: 'Last 90 Days', createFilter: function (tz, format) {
var offset = moment_timezone_1.default.tz(moment_1.default.utc().startOf('day').subtract(45, 'days').format('YYYY-MM-DDTHH:mm:ss.SSSSS'), tz).utcOffset();
var t = moment_1.default.utc().add(offset, 'minutes').startOf('day');
return {
end: t.format(getFormat(format)),
unit: 'd',
duration: 90,
};
},
hideQuickPick: function (f) {
return f == 'time';
}
},
{
label: 'This Year', createFilter: function (tz, format) {
var offset = moment_timezone_1.default.tz(moment_1.default.utc().startOf('year').format('YYYY-MM-DDTHH:mm:ss.SSSSS'), tz).utcOffset();
var t = moment_1.default.utc().add(offset, 'minutes').startOf('year');
return {
start: t.format(getFormat(format)),
unit: 'M',
duration: 12
};
},
hideQuickPick: function (f) {
return f == 'time';
}
},
{
label: 'Last Year', createFilter: function (tz, format) {
var offset = moment_timezone_1.default.tz(moment_1.default.utc().startOf('year').format('YYYY-MM-DDTHH:mm:ss.SSSSS'), tz).utcOffset();
var t = moment_1.default.utc().add(offset, 'minutes').startOf('year');
return {
end: t.format(getFormat(format)),
unit: 'M',
duration: 12
};
},
hideQuickPick: function (f) {
return f == 'time';
}
},
{
label: 'Last 365 Days', createFilter: function (tz, format) {
var offset = moment_timezone_1.default.tz(moment_1.default.utc().startOf('day').subtract(182.5, 'days').format('YYYY-MM-DDTHH:mm:ss.SSSSS'), tz).utcOffset();
var t = moment_1.default.utc().add(offset, 'minute').startOf('day');
return {
end: t.format(getFormat(format)),
unit: 'd',
duration: 365,
};
},
hideQuickPick: function (f) {
return f == 'time';
}
}
];