feat: implement template component
This commit is contained in:
		
							
								
								
									
										27
									
								
								plopfile.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										27
									
								
								plopfile.js
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,27 @@ | ||||
| module.exports = ( | ||||
|   /** @type {import('plop').NodePlopAPI} */ | ||||
|   plop | ||||
| ) => { | ||||
|   plop.setGenerator('component', { | ||||
|     description: 'Generate a component', | ||||
|     prompts: [ | ||||
|       { | ||||
|         type: 'input', | ||||
|         name: 'name', | ||||
|         message: 'Component name' | ||||
|       } | ||||
|     ], | ||||
|     actions: [ | ||||
|       { | ||||
|         type: 'add', | ||||
|         path: 'components/{{properCase name}}/{{properCase name}}.tsx', | ||||
|         templateFile: 'templates/Component/Component.tsx.hbs' | ||||
|       }, | ||||
|       { | ||||
|         type: 'add', | ||||
|         path: 'components/{{properCase name}}/{{properCase name}}.module.scss', | ||||
|         templateFile: 'templates/Component/component.module.scss.hbs' | ||||
|       } | ||||
|     ] | ||||
|   }) | ||||
| } | ||||
							
								
								
									
										13
									
								
								templates/Component/Component.tsx.hbs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										13
									
								
								templates/Component/Component.tsx.hbs
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,13 @@ | ||||
| import classNames from 'classNames' | ||||
|  | ||||
| import styles from './walidoux.module.scss' | ||||
|  | ||||
| interface WalidouxProps { | ||||
|   className?: string | ||||
| } | ||||
|  | ||||
| export const Walidoux: React.FC<WalidouxProps> = (props) => { | ||||
|   const { className } = props | ||||
|  | ||||
|   return <div className={classNames(className, styles.container)}></div> | ||||
| } | ||||
							
								
								
									
										9
									
								
								templates/Component/component.module.scss.hbs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								templates/Component/component.module.scss.hbs
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,9 @@ | ||||
| @import 'mixins'; | ||||
| @import 'helpers'; | ||||
|  | ||||
| .container { | ||||
|   @include display-flex(center, center, row); | ||||
|   @extend %container; | ||||
|  | ||||
|   position: relative; | ||||
| } | ||||
		Reference in New Issue
	
	Block a user