Security News
The Risks of Misguided Research in Supply Chain Security
Snyk's use of malicious npm packages for research raises ethical concerns, highlighting risks in public deployment, data exfiltration, and unauthorized testing.
yaml-validator-typescript
Advanced tools
yaml-validator-typescript is a way to validate your Yaml file by using a defined model
$npm install yaml-validator-typescript
or
$yarn add yaml-validator-typescript
You can set you model as you want. You just need to have properties initialized
If you don't want some property to be tested, you can implement Yaml
class TestOnlyKeys implements Yaml {
keysToTest: (keyof TestOnlyKeys)[] = ['key1', 'key2'];
key1: string = '';
key2: number = 0;
keyNotToTest: boolean = false;
}
Here only
key1
andkey2
are tested You can also set some properties optionals:
class Optional implements Yaml {
keysToTest: string[] = ['valueToHave', 'valueOptional', 'arrayOptional'];
optionals: Set<string> = new Set(['valueOptional', 'arrayOptional']);
valueToHave: string = '';
valueOptional: string = '';
arrayOptional: {valueYouNeed1: string, valueYouNeed2: boolean}[] = [
{valueYouNeed1: '', valueYouNeed2: true},
];
}
Here
valueOptional
andarrayOptional
are optionals But ifarrayOptional
is defined, he has to be right
Set a config file at the root of the project:
import MyClass from './somewhere';
module.exports = {
structure: new MyClass(),
files: ['file1.yaml', 'file2.yaml'],
};
Then run the command
{
"scripts": {
"valid-yaml": "validate-yaml"
}
}
If you have not set the files, you can put them in the command
{
"scripts": {
"valid-yaml": "validate-yaml file1.yaml file2.yaml"
}
}
import MyClass from './somewhere';
const validator = new Validator(new MyClass());
validator.validate('path_of_my_file.yaml').then((errors) => {
if (errors.length > 0) {
console.log('I have some issues I need to fix 🙀');
errors.forEach((error) => {
console.log(`- ${result}`);
});
} else {
console.log('No Error in this code 💪');
}
});
You can validate multiple file at the same time with the same validator
import MyClass from './somewhere';
const validator = new Validator(new MyClass());
validator
.validateMany('path_of_my_file.yaml', 'another_path_of_my_file.yaml')
.then((results) => {
files.forEach((file) => {
console.log(`${file.name}:`);
if (file.results.length > 0) {
console.log('I have some issues I need to fix 🙀');
file.results.forEach((error) => {
console.log(`- ${result}`);
});
} else {
console.log('No Error in this code 💪');
}
});
});
FAQs
Yaml validator to test your yaml with a defined model
The npm package yaml-validator-typescript receives a total of 468 weekly downloads. As such, yaml-validator-typescript popularity was classified as not popular.
We found that yaml-validator-typescript demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Snyk's use of malicious npm packages for research raises ethical concerns, highlighting risks in public deployment, data exfiltration, and unauthorized testing.
Research
Security News
Socket researchers found several malicious npm packages typosquatting Chalk and Chokidar, targeting Node.js developers with kill switches and data theft.
Security News
pnpm 10 blocks lifecycle scripts by default to improve security, addressing supply chain attack risks but sparking debate over compatibility and workflow changes.