<!-- Please follow this checklist and put an x in each of the boxes, like this: [x]. It will ensure that our team takes your pull request seriously. --> - [x] I have read [freeCodeCamp's contribution guidelines](https://github.com/freeCodeCamp/freeCodeCamp/blob/master/CONTRIBUTING.md). - [x] My pull request has a descriptive title (not a vague title like `Update index.md`) - [x] My pull request targets the `master` branch of freeCodeCamp.
		
			
				
	
	
		
			22 lines
		
	
	
		
			633 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			22 lines
		
	
	
		
			633 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| exports.onCreateNode = function remarkNodeIdentityOnCreateNode(
 | |
|   { node, reporter, actions },
 | |
|   { predicate, identity }
 | |
| ) {
 | |
|   if (typeof predicate !== 'function') {
 | |
|     reporter.panic(
 | |
|       'Please supply a predicate function to `gatsby-plugin-identity`'
 | |
|     );
 | |
|   }
 | |
|   if (typeof identity !== 'string' || identity.lenght === 0) {
 | |
|     reporter.panic(
 | |
|       '`gatsby-plugin-identity` requires an identify string to add to nodes ' +
 | |
|         'that match the predicate'
 | |
|     );
 | |
|   }
 | |
|   const { createNodeField } = actions;
 | |
|   if (predicate(node)) {
 | |
|     createNodeField({ node, name: 'nodeIdentity', value: identity });
 | |
|   }
 | |
|   return node;
 | |
| };
 |