UNPKG

devextreme

Version:

HTML5 JavaScript Component Suite for Responsive Web Development

79 lines (76 loc) 2.51 kB
/** * DevExtreme (esm/__internal/utils/version.js) * Version: 25.2.3 * Build date: Fri Dec 12 2025 * * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/ */ import config from "../../core/config"; import errors from "../../core/errors"; const MAX_MINOR_VERSION = 2; const MIN_MINOR_VERSION = 1; const VERSION_SPLITTER = "."; export function stringifyVersion(version) { const { major: major, minor: minor, patch: patch } = version; return [major, minor, patch].join(".") } export function parseVersion(version) { const [major, minor, patch] = version.split(".").map(Number); return { major: major, minor: minor, patch: patch } } export function getAssertedVersions() { var _config; return (null === (_config = config()) || void 0 === _config ? void 0 : _config.versionAssertions) ?? [] } export function assertDevExtremeVersion(packageName, version) { config({ versionAssertions: [...getAssertedVersions(), { packageName: packageName, version: version }] }) } export function clearAssertedVersions() {} function stringifyVersionList(assertedVersionList) { return assertedVersionList.map((assertedVersion => `${assertedVersion.packageName}: ${assertedVersion.version}`)).join("\n") } function versionsEqual(versionA, versionB) { return versionA.major === versionB.major && versionA.minor === versionB.minor && versionA.patch === versionB.patch } export function getPreviousMajorVersion(_ref) { let { major: major, minor: minor, patch: patch } = _ref; const previousMajorVersion = 1 === minor ? { major: major - 1, minor: 2, patch: patch } : { major: major, minor: minor - 1, patch: patch }; return previousMajorVersion } export function assertedVersionsCompatible(currentVersion) { const mismatchingVersions = getAssertedVersions().filter((assertedVersion => !versionsEqual(parseVersion(assertedVersion.version), currentVersion))); if (mismatchingVersions.length) { errors.log("W0023", stringifyVersionList([{ packageName: "devextreme", version: stringifyVersion(currentVersion) }, ...mismatchingVersions])); return false } return true }