@shopify/shopify-api
Version:
Shopify API Library for Node - accelerate development with support for authentication, graphql proxy, webhooks
29 lines (26 loc) • 880 B
text/typescript
import {ConfigInterface} from '../base-types';
import {ApiVersion} from '../types';
export function versionCompatible(config: ConfigInterface) {
return (
referenceVersion: ApiVersion,
currentVersion: ApiVersion = config.apiVersion,
): boolean => {
// Return true if not using a dated version
if (currentVersion === ApiVersion.Unstable) {
return true;
}
const numericVersion = (version: string) =>
parseInt(version.replace('-', ''), 10);
const current = numericVersion(currentVersion);
const reference = numericVersion(referenceVersion);
return current >= reference;
};
}
export function versionPriorTo(config: ConfigInterface) {
return (
referenceVersion: ApiVersion,
currentVersion: ApiVersion = config.apiVersion,
): boolean => {
return !versionCompatible(config)(referenceVersion, currentVersion);
};
}