AI scaffolded NodeJS version of the App.
This commit is contained in:
22
app-new/backend/src/version.ts
Normal file
22
app-new/backend/src/version.ts
Normal file
@@ -0,0 +1,22 @@
|
||||
const SEMVER_PATTERN = /^[0-9]+\.[0-9]+\.[0-9]+$/;
|
||||
|
||||
const semverSortKey = (value: string): number[] => value.split(".").map((part) => Number.parseInt(part, 10));
|
||||
|
||||
export const sortImageVersionsIfSemantic = (versions: string[]): string[] => {
|
||||
if (!versions.every((value) => SEMVER_PATTERN.test(value))) {
|
||||
return versions;
|
||||
}
|
||||
|
||||
return [...versions].sort((a, b) => {
|
||||
const aParts = semverSortKey(a);
|
||||
const bParts = semverSortKey(b);
|
||||
|
||||
for (let i = 0; i < aParts.length; i += 1) {
|
||||
if (aParts[i] !== bParts[i]) {
|
||||
return aParts[i] - bParts[i];
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
});
|
||||
};
|
||||
Reference in New Issue
Block a user