@rsc-labs/medusa-store-analytics-v2
Version:
Get analytics data about your store
85 lines • 8.85 kB
JavaScript
;
/*
* Copyright 2024 RSC-Labs, https://rsoftcon.com/
*
* MIT License
*
* 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.
*/
Object.defineProperty(exports, "__esModule", { value: true });
exports.getLegendName = exports.getChartTooltipDate = exports.getChartDateName = exports.compareDatesBasedOnResolutionType = exports.ChartResolutionType = void 0;
exports.calculateResolution = calculateResolution;
var ChartResolutionType;
(function (ChartResolutionType) {
ChartResolutionType[ChartResolutionType["DayMonth"] = 0] = "DayMonth";
ChartResolutionType[ChartResolutionType["Month"] = 1] = "Month";
})(ChartResolutionType || (exports.ChartResolutionType = ChartResolutionType = {}));
function calculateResolution(fromDate, toDate) {
if (!fromDate)
return ChartResolutionType.Month;
const calculateToDate = toDate ? new Date(toDate) : new Date(Date.now());
const diffTime = calculateToDate.getTime() - fromDate.getTime();
const weekTime = 604800000;
const monthTime = weekTime * 4;
const twoMonthsTime = monthTime * 2;
if (diffTime <= twoMonthsTime) {
return ChartResolutionType.DayMonth;
}
const yearTime = monthTime * 12;
if (diffTime < yearTime) {
return ChartResolutionType.Month;
}
return ChartResolutionType.Month;
}
const compareDatesBasedOnResolutionType = (date1, date2, resolutionType) => {
switch (resolutionType) {
case ChartResolutionType.DayMonth:
return new Date(new Date(date1).setHours(0, 0, 0, 0)).getTime() == new Date(new Date(date2).setHours(0, 0, 0, 0)).getTime();
case ChartResolutionType.Month:
return new Date(new Date(new Date(date1).setDate(0)).setHours(0, 0, 0, 0)).getTime() == new Date(new Date(new Date(date2).setDate(0)).setHours(0, 0, 0, 0)).getTime();
default:
return new Date(new Date(date1).setHours(0, 0, 0, 0)).getTime() == new Date(new Date(date2).setHours(0, 0, 0, 0)).getTime();
}
};
exports.compareDatesBasedOnResolutionType = compareDatesBasedOnResolutionType;
const getChartDateName = (date, resolutionType, startDate, endDate) => {
switch (resolutionType) {
case ChartResolutionType.DayMonth:
if ((0, exports.compareDatesBasedOnResolutionType)(date, startDate, resolutionType) || (0, exports.compareDatesBasedOnResolutionType)(date, endDate, resolutionType)) {
return `${date.getDate().toString()} ${getShortMonthName(date)}`;
}
return date.getDate().toString();
case ChartResolutionType.Month:
if ((0, exports.compareDatesBasedOnResolutionType)(date, startDate, resolutionType) || (0, exports.compareDatesBasedOnResolutionType)(date, endDate, resolutionType)) {
return `${getShortMonthName(date)} ${date.getFullYear().toString()}`;
}
return getShortMonthName(date);
default:
return date.getFullYear().toString();
}
};
exports.getChartDateName = getChartDateName;
const getChartTooltipDate = (date, resolutionType) => {
switch (resolutionType) {
case ChartResolutionType.DayMonth:
return `${date.getDate().toString()}-${getShortMonthName(date)}`;
case ChartResolutionType.Month:
return `${getShortMonthName(date)}-${date.getFullYear()}`;
default:
return date.getFullYear().toString();
}
};
exports.getChartTooltipDate = getChartTooltipDate;
const getLegendName = (current) => {
return current ? `Current` : `Preceding`;
};
exports.getLegendName = getLegendName;
const getShortMonthName = (date) => {
let days = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];
return days[date.getMonth()];
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnRVdGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy91aS1jb21wb25lbnRzL2NvbW1vbi91dGlscy9jaGFydFV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7Ozs7OztHQVVHOzs7QUFPSCxrREFrQkM7QUF2QkQsSUFBWSxtQkFHWDtBQUhELFdBQVksbUJBQW1CO0lBQzdCLHFFQUFRLENBQUE7SUFDUiwrREFBSyxDQUFBO0FBQ1AsQ0FBQyxFQUhXLG1CQUFtQixtQ0FBbkIsbUJBQW1CLFFBRzlCO0FBRUQsU0FBZ0IsbUJBQW1CLENBQUMsUUFBZSxFQUFFLE1BQWE7SUFDaEUsSUFBSSxDQUFDLFFBQVE7UUFBRSxPQUFPLG1CQUFtQixDQUFDLEtBQUssQ0FBQztJQUVoRCxNQUFNLGVBQWUsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQztJQUN6RSxNQUFNLFFBQVEsR0FBRyxlQUFlLENBQUMsT0FBTyxFQUFFLEdBQUcsUUFBUSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBRWhFLE1BQU0sUUFBUSxHQUFHLFNBQVMsQ0FBQztJQUMzQixNQUFNLFNBQVMsR0FBRyxRQUFRLEdBQUcsQ0FBQyxDQUFDO0lBQy9CLE1BQU0sYUFBYSxHQUFHLFNBQVMsR0FBRyxDQUFDLENBQUM7SUFDcEMsSUFBSSxRQUFRLElBQUksYUFBYSxFQUFFLENBQUM7UUFDOUIsT0FBTyxtQkFBbUIsQ0FBQyxRQUFRLENBQUM7SUFDdEMsQ0FBQztJQUVELE1BQU0sUUFBUSxHQUFHLFNBQVMsR0FBRyxFQUFFLENBQUM7SUFDaEMsSUFBSSxRQUFRLEdBQUcsUUFBUSxFQUFFLENBQUM7UUFDeEIsT0FBTyxtQkFBbUIsQ0FBQyxLQUFLLENBQUM7SUFDbkMsQ0FBQztJQUNE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