Yaml builder helper

by Tommy

HTML

<script src="https://cdnjs.cloudflare.com/ajax/libs/angular-sanitize/1.4.8/angular-sanitize.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/3.10.0/lodash.js"></script>
<div ng-app="app" ng-controller="ctrl">
  <small>Each line becomes its own item in the result</small>
  <br/>
  <textarea ng-model="values" rows="3" cols="50" placeholder="Values"></textarea>
  <br/>
  <textarea ng-model="selectors" rows="3" cols="50" placeholder="Selectors"></textarea>
  <br/>
  <textarea ng-model="commands" rows="3" cols="50" placeholder="Commands"></textarea>
  <pre>
    - javascript:
        - name: hello
          values: {{toList(values) | jsonless}}
          selectors: {{toList(selectors) | jsonless}}
          commands: {{toList(commands) | jsonless}}
          
  </pre>
</div>

JavaScript

angular.module('app',[])
	.filter('jsonless', function(){
  	return function(input){
    	return JSON.stringify(input);
    }
  })
	.controller('ctrl',[
  '$scope',
  function($scope){
  	$scope.selectors = '';
    $scope.values = '';
    $scope.commands  = '';
    
    $scope.toList = function(str){
    	if(str){
      	return str.split('\n');
      }
      return [];
    };
  }]);