2 angular.module('builder.components', ['builder', 'validator.rules']).config([
3 '$builderProvider', function($builderProvider) {
4 $builderProvider.registerComponent('textInput', {
7 description: 'description',
8 placeholder: 'placeholder',
25 template: "<div class=\"form-group\">\n <label for=\"{{formName+index}}\" class=\"col-md-4 control-label\" ng-class=\"{'fb-required':required}\">{{label}}</label>\n <div class=\"col-md-8\">\n <input type=\"text\" ng-model=\"inputText\" validator-required=\"{{required}}\" validator-group=\"{{formName}}\" id=\"{{formName+index}}\" class=\"form-control\" placeholder=\"{{placeholder}}\"/>\n <p class='help-block'>{{description}}</p>\n </div>\n</div>",
26 popoverTemplate: "<form>\n <div class=\"form-group\">\n <label class='control-label'>Label</label>\n <input type='text' ng-model=\"label\" validator=\"[required]\" class='form-control'/>\n </div>\n <div class=\"form-group\">\n <label class='control-label'>Description</label>\n <input type='text' ng-model=\"description\" class='form-control'/>\n </div>\n <div class=\"form-group\">\n <label class='control-label'>Placeholder</label>\n <input type='text' ng-model=\"placeholder\" class='form-control'/>\n </div>\n <div class=\"checkbox\">\n <label>\n <input type='checkbox' ng-model=\"required\" />\n Required</label>\n </div>\n <div class=\"form-group\" ng-if=\"validationOptions.length > 0\">\n <label class='control-label'>Validation</label>\n <select ng-model=\"$parent.validation\" class='form-control' ng-options=\"option.rule as option.label for option in validationOptions\"></select>\n </div>\n\n <hr/>\n <div class='form-group'>\n <input type='submit' ng-click=\"popover.save($event)\" class='btn btn-primary' value='Save'/>\n <input type='button' ng-click=\"popover.cancel($event)\" class='btn btn-default' value='Cancel'/>\n <input type='button' ng-click=\"popover.remove($event)\" class='btn btn-danger' value='Delete'/>\n </div>\n</form>"
28 $builderProvider.registerComponent('textArea', {
31 description: 'description',
32 placeholder: 'placeholder',
34 template: "<div class=\"form-group\">\n <label for=\"{{formName+index}}\" class=\"col-md-4 control-label\" ng-class=\"{'fb-required':required}\">{{label}}</label>\n <div class=\"col-md-8\">\n <textarea type=\"text\" ng-model=\"inputText\" validator-required=\"{{required}}\" validator-group=\"{{formName}}\" id=\"{{formName+index}}\" class=\"form-control\" rows='6' placeholder=\"{{placeholder}}\"/>\n <p class='help-block'>{{description}}</p>\n </div>\n</div>",
35 popoverTemplate: "<form>\n <div class=\"form-group\">\n <label class='control-label'>Label</label>\n <input type='text' ng-model=\"label\" validator=\"[required]\" class='form-control'/>\n </div>\n <div class=\"form-group\">\n <label class='control-label'>Description</label>\n <input type='text' ng-model=\"description\" class='form-control'/>\n </div>\n <div class=\"form-group\">\n <label class='control-label'>Placeholder</label>\n <input type='text' ng-model=\"placeholder\" class='form-control'/>\n </div>\n <div class=\"checkbox\">\n <label>\n <input type='checkbox' ng-model=\"required\" />\n Required</label>\n </div>\n\n <hr/>\n <div class='form-group'>\n <input type='submit' ng-click=\"popover.save($event)\" class='btn btn-primary' value='Save'/>\n <input type='button' ng-click=\"popover.cancel($event)\" class='btn btn-default' value='Cancel'/>\n <input type='button' ng-click=\"popover.remove($event)\" class='btn btn-danger' value='Delete'/>\n </div>\n</form>"
37 $builderProvider.registerComponent('checkbox', {
40 description: 'description',
41 placeholder: 'placeholder',
43 options: ['value one', 'value two'],
45 template: "<div class=\"form-group\">\n <label for=\"{{formName+index}}\" class=\"col-md-4 control-label\" ng-class=\"{'fb-required':required}\">{{label}}</label>\n <div class=\"col-md-8\">\n <input type='hidden' ng-model=\"inputText\" validator-required=\"{{required}}\" validator-group=\"{{formName}}\"/>\n <div class='checkbox' ng-repeat=\"item in options track by $index\">\n <label><input type='checkbox' ng-model=\"$parent.inputArray[$index]\" value='item'/>\n {{item}}\n </label>\n </div>\n <p class='help-block'>{{description}}</p>\n </div>\n</div>",
46 popoverTemplate: "<form>\n <div class=\"form-group\">\n <label class='control-label'>Label</label>\n <input type='text' ng-model=\"label\" validator=\"[required]\" class='form-control'/>\n </div>\n <div class=\"form-group\">\n <label class='control-label'>Description</label>\n <input type='text' ng-model=\"description\" class='form-control'/>\n </div>\n <div class=\"form-group\">\n <label class='control-label'>Options</label>\n <textarea class=\"form-control\" rows=\"3\" ng-model=\"optionsText\"/>\n </div>\n <div class=\"checkbox\">\n <label>\n <input type='checkbox' ng-model=\"required\" />\n Required\n </label>\n </div>\n\n <hr/>\n <div class='form-group'>\n <input type='submit' ng-click=\"popover.save($event)\" class='btn btn-primary' value='Save'/>\n <input type='button' ng-click=\"popover.cancel($event)\" class='btn btn-default' value='Cancel'/>\n <input type='button' ng-click=\"popover.remove($event)\" class='btn btn-danger' value='Delete'/>\n </div>\n</form>"
48 $builderProvider.registerComponent('radio', {
51 description: 'description',
52 placeholder: 'placeholder',
54 options: ['value one', 'value two'],
55 template: "<div class=\"form-group\">\n <label for=\"{{formName+index}}\" class=\"col-md-4 control-label\" ng-class=\"{'fb-required':required}\">{{label}}</label>\n <div class=\"col-md-8\">\n <div class='radio' ng-repeat=\"item in options track by $index\">\n <label><input name='{{formName+index}}' ng-model=\"$parent.inputText\" validator-group=\"{{formName}}\" value='{{item}}' type='radio'/>\n {{item}}\n </label>\n </div>\n <p class='help-block'>{{description}}</p>\n </div>\n</div>",
56 popoverTemplate: "<form>\n <div class=\"form-group\">\n <label class='control-label'>Label</label>\n <input type='text' ng-model=\"label\" validator=\"[required]\" class='form-control'/>\n </div>\n <div class=\"form-group\">\n <label class='control-label'>Description</label>\n <input type='text' ng-model=\"description\" class='form-control'/>\n </div>\n <div class=\"form-group\">\n <label class='control-label'>Options</label>\n <textarea class=\"form-control\" rows=\"3\" ng-model=\"optionsText\"/>\n </div>\n\n <hr/>\n <div class='form-group'>\n <input type='submit' ng-click=\"popover.save($event)\" class='btn btn-primary' value='Save'/>\n <input type='button' ng-click=\"popover.cancel($event)\" class='btn btn-default' value='Cancel'/>\n <input type='button' ng-click=\"popover.remove($event)\" class='btn btn-danger' value='Delete'/>\n </div>\n</form>"
58 return $builderProvider.registerComponent('select', {
61 description: 'description',
62 placeholder: 'placeholder',
64 options: ['value one', 'value two'],
65 template: "<div class=\"form-group\">\n <label for=\"{{formName+index}}\" class=\"col-md-4 control-label\">{{label}}</label>\n <div class=\"col-md-8\">\n <select ng-options=\"value for value in options\" id=\"{{formName+index}}\" class=\"form-control\"\n ng-model=\"inputText\" ng-init=\"inputText = options[0]\"/>\n <p class='help-block'>{{description}}</p>\n </div>\n</div>",
66 popoverTemplate: "<form>\n <div class=\"form-group\">\n <label class='control-label'>Label</label>\n <input type='text' ng-model=\"label\" validator=\"[required]\" class='form-control'/>\n </div>\n <div class=\"form-group\">\n <label class='control-label'>Description</label>\n <input type='text' ng-model=\"description\" class='form-control'/>\n </div>\n <div class=\"form-group\">\n <label class='control-label'>Options</label>\n <textarea class=\"form-control\" rows=\"3\" ng-model=\"optionsText\"/>\n </div>\n\n <hr/>\n <div class='form-group'>\n <input type='submit' ng-click=\"popover.save($event)\" class='btn btn-primary' value='Save'/>\n <input type='button' ng-click=\"popover.cancel($event)\" class='btn btn-default' value='Cancel'/>\n <input type='button' ng-click=\"popover.remove($event)\" class='btn btn-danger' value='Delete'/>\n </div>\n</form>"