prop-types
Advanced tools
Comparing version 0.2.0 to 15.5.0-alpha.0
{ | ||
"name": "prop-types", | ||
"version": "0.2.0", | ||
"description": "PropType validation extracted from React", | ||
"main": "lib/index.js", | ||
"version": "15.5.0-alpha.0", | ||
"description": "Runtime type checking for React props and similar objects.", | ||
"main": "index.js", | ||
"license": "BSD-3-Clause", | ||
"files": [ | ||
"LICENSE", | ||
"PATENTS", | ||
"factory.js", | ||
"index.js", | ||
"checkPropTypes.js", | ||
"lib" | ||
], | ||
"repository": "facebook/react", | ||
"keywords": [ | ||
"react" | ||
], | ||
"bugs": { | ||
"url": "https://github.com/facebook/react/issues" | ||
}, | ||
"homepage": "https://facebook.github.io/react/", | ||
"dependencies": { | ||
"fbjs": "^0.8.9" | ||
}, | ||
"scripts": { | ||
"test": "karma start karma.conf.js", | ||
"prepublish": "webpack" | ||
"test": "jest" | ||
}, | ||
"author": "Aaron Ackerman <theron17@gmail.com>", | ||
"license": "BSD", | ||
"devDependencies": { | ||
"babel-core": "^4.0.1", | ||
"babel-loader": "^4.0.0", | ||
"eslint": "^0.14.1", | ||
"jasmine-core": "^2.1.3", | ||
"karma": "^0.12.30", | ||
"karma-chrome-launcher": "^0.1.7", | ||
"karma-cli": "0.0.4", | ||
"karma-jasmine": "^0.3.3", | ||
"karma-phantomjs2-launcher": "^0.1.4", | ||
"karma-webpack": "^1.3.1", | ||
"webpack": "^1.4.15", | ||
"webpack-dev-server": "^1.7.0" | ||
}, | ||
"directories": { | ||
"test": "test" | ||
}, | ||
"repository": { | ||
"type": "git", | ||
"url": "https://github.com/aackerman/PropTypes.git" | ||
}, | ||
"bugs": { | ||
"url": "https://github.com/aackerman/PropTypes/issues" | ||
}, | ||
"homepage": "https://github.com/aackerman/PropTypes", | ||
"dependencies": { | ||
"invariant": "^2.2.0" | ||
"jest": "^19.0.2", | ||
"react": "^15.4.2", | ||
"react-dom": "^15.4.2" | ||
} | ||
} |
@@ -1,91 +0,5 @@ | ||
## PropTypes | ||
# prop-types | ||
Extracted from [`React.PropTypes`](http://facebook.github.io/react/docs/reusable-components.html#prop-validation). To use without a dependency on `React`. | ||
Runtime type checking for React props and similar objects. | ||
### Install | ||
``` | ||
npm install --save prop-types | ||
``` | ||
### API: `PropTypes.validate` | ||
#### Example | ||
Pass a PropType schema, a props object, and a descriptive name for warnings. In React the descriptive name would be the `displayName` of a component. | ||
```js | ||
import PropTypes from 'prop-types'; | ||
var schema = { | ||
ham: PropTypes.string.isRequired | ||
}; | ||
PropTypes.validate(schema, {ham: 'delicious'}, 'Ham'); | ||
``` | ||
### API: `PropTypes.validateWithErrors` | ||
Similar to `PropTypes.validate` but will throw errors instead of logging warnings to the console. | ||
### API: `PropTypes` | ||
```js | ||
{ | ||
// You can declare that a prop is a specific JS primitive. By default, these | ||
// are all optional. | ||
optionalArray: PropTypes.array, | ||
optionalBool: PropTypes.bool, | ||
optionalFunc: PropTypes.func, | ||
optionalNumber: PropTypes.number, | ||
optionalObject: PropTypes.object, | ||
optionalString: PropTypes.string, | ||
// You can also declare that a prop is an instance of a class. This uses | ||
// JS's instanceof operator. | ||
optionalMessage: PropTypes.instanceOf(Message), | ||
// You can ensure that your prop is limited to specific values by treating | ||
// it as an enum. | ||
optionalEnum: PropTypes.oneOf(['News', 'Photos']), | ||
// An object that could be one of many types | ||
optionalUnion: PropTypes.oneOfType([ | ||
PropTypes.string, | ||
PropTypes.number, | ||
PropTypes.instanceOf(Message) | ||
]), | ||
// An array of a certain type | ||
optionalArrayOf: PropTypes.arrayOf(PropTypes.number), | ||
// An object with property values of a certain type | ||
optionalObjectOf: PropTypes.objectOf(PropTypes.number), | ||
// An object taking on a particular shape | ||
optionalObjectWithShape: PropTypes.shape({ | ||
color: PropTypes.string, | ||
fontSize: PropTypes.number | ||
}), | ||
// You can chain any of the above with `isRequired` to make sure a warning | ||
// is shown if the prop isn't provided. | ||
requiredFunc: PropTypes.func.isRequired, | ||
// A value of any data type | ||
requiredAny: PropTypes.any.isRequired, | ||
// You can also specify a custom validator. It should return an Error | ||
// object if the validation fails. Don't `console.warn` or throw, as this | ||
// won't work inside `oneOfType`. | ||
customProp: function(props, propName, descriptiveName) { | ||
if (!/matchme/.test(props[propName])) { | ||
return new Error('Validation failed!'); | ||
} | ||
} | ||
} | ||
``` | ||
### Caveat | ||
This is not an **exact** drop-in, validations related to React have been stripped out. `PropTypes.element` and `PropTypes.node` are not included. | ||
Refer to the [React documentation](https://facebook.github.io/react/docs/typechecking-with-proptypes.html) for more information. |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
New author
Supply chain riskA new npm collaborator published a version of the package for the first time. New collaborators are usually benign additions to a project, but do indicate a change to the security surface area of a package.
Found 1 instance in 1 package
Environment variable access
Supply chain riskPackage accesses environment variables, which may be a sign of credential stuffing or data theft.
Found 1 instance in 1 package
No contributors or author data
MaintenancePackage does not specify a list of contributors or an author in package.json.
Found 1 instance in 1 package
No repository
Supply chain riskPackage does not have a linked source code repository. Without this field, a package will have no reference to the location of the source code use to generate the package.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Misc. License Issues
License(Experimental) A package's licensing information has fine-grained problems.
Found 1 instance in 1 package
3
0
518
22599
6
1
6
10
2
+ Addedfbjs@^0.8.9
+ Addedasap@2.0.6(transitive)
+ Addedcore-js@1.2.7(transitive)
+ Addedencoding@0.1.13(transitive)
+ Addedfbjs@0.8.18(transitive)
+ Addediconv-lite@0.6.3(transitive)
+ Addedis-stream@1.1.0(transitive)
+ Addedisomorphic-fetch@2.2.1(transitive)
+ Addednode-fetch@1.7.3(transitive)
+ Addedobject-assign@4.1.1(transitive)
+ Addedpromise@7.3.1(transitive)
+ Addedsafer-buffer@2.1.2(transitive)
+ Addedsetimmediate@1.0.5(transitive)
+ Addedua-parser-js@0.7.39(transitive)
+ Addedwhatwg-fetch@3.6.20(transitive)
- Removedinvariant@^2.2.0
- Removedinvariant@2.2.4(transitive)