microsoft/vscode-react-native
Publicmirrored from https://github.com/microsoft/vscode-react-nativeAvailable
lib/codepush-node-sdk/src/utils/validation-utils.ts
17lines · modecode
| 1 | import * as path from 'path'; |
| 2 | import * as semver from 'semver'; |
| 3 | |
| 4 | // Check if the given string is a semver-compliant version number (e.g. '1.2.3') |
| 5 | // (missing minor/patch values will be added on server side to pass semver.satisfies check) |
| 6 | export function isValidVersion(version: string): boolean { |
| 7 | return !!semver.valid(version) || /^\d+\.\d+$/.test(version) || /^\d+$/.test(version); |
| 8 | } |
| 9 | |
| 10 | // Allow plain integer versions (as well as '1.0' values) for now, e.g. '1' is valid here and we assume that it is equal to '1.0.0'. |
| 11 | export function isValidRange(semverRange: string): boolean { |
| 12 | return !!semver.validRange(semverRange); |
| 13 | } |
| 14 | |
| 15 | export function isValidRollout(rollout: number): boolean { |
| 16 | return (rollout && rollout > 0 && rollout <= 100); |
| 17 | } |
| 18 | |