// loaders.gl // SPDX-License-Identifier: MIT // Copyright (c) vis.gl contributors import type {WorkerObject} from '../../types'; import {assert} from '../env-utils/assert'; import {VERSION} from '../env-utils/version'; /** * Check if worker is compatible with this library version * @param worker * @param libVersion * @returns `true` if the two versions are compatible */ export function validateWorkerVersion( worker: WorkerObject, coreVersion: string = VERSION ): boolean { assert(worker, 'no worker provided'); const workerVersion = worker.version; if (!coreVersion || !workerVersion) { return false; } // TODO enable when fix the __version__ injection // const coreVersions = parseVersion(coreVersion); // const workerVersions = parseVersion(workerVersion); // assert( // coreVersion.major === workerVersion.major && coreVersion.minor <= workerVersion.minor, // `worker: ${worker.name} is not compatible. ${coreVersion.major}.${ // coreVersion.minor // }+ is required.` // ); return true; } // @ts-ignore // eslint-disable-next-line @typescript-eslint/no-unused-vars function parseVersion(version) { const parts = version.split('.').map(Number); return {major: parts[0], minor: parts[1]}; }