Skip to content

Commit edea4cf

Browse files
committed
Update templates for one-time binding
2 parents 109c5dd + f7d207d commit edea4cf

22 files changed

+116
-86
lines changed

dist/angular-schema-form-bootstrap.js

Lines changed: 24 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -61,9 +61,9 @@ return /******/ (function(modules) { // webpackBootstrap
6161
/* 0 */
6262
/***/ function(module, exports, __webpack_require__) {
6363

64+
'use strict';
65+
6466
__webpack_require__(1);
65-
//require('./angular-schema-form-bootstrap-templates.js');
66-
//require('./type-parser.js');
6767
__webpack_require__(2);
6868

6969
/***/ },
@@ -3666,23 +3666,25 @@ return /******/ (function(modules) { // webpackBootstrap
36663666
/* 2 */
36673667
/***/ function(module, exports, __webpack_require__) {
36683668

3669+
'use strict';
3670+
36693671
// angular-templatecache-loader
3670-
let textareaTemplate = __webpack_require__(18);
3671-
let fieldsetTemplate = __webpack_require__(8);
3672-
let arrayTemplate = __webpack_require__(4);
3673-
let tabarrayTemplate = __webpack_require__(16);
3674-
let tabsTemplate = __webpack_require__(17);
3675-
let sectionTemplate = __webpack_require__(13);
3676-
let actionsTemplate = __webpack_require__(3);
3677-
let selectTemplate = __webpack_require__(14);
3678-
let checkboxTemplate = __webpack_require__(5);
3679-
let checkboxesTemplate = __webpack_require__(6);
3680-
let submitTemplate = __webpack_require__(15);
3681-
let radiosTemplate = __webpack_require__(12);
3682-
let radiosInlineTemplate = __webpack_require__(11);
3683-
let radiobuttonsTemplate = __webpack_require__(10);
3684-
let helpTemplate = __webpack_require__(9);
3685-
let defaultTemplate = __webpack_require__(7);
3672+
var textareaTemplate = __webpack_require__(18);
3673+
var fieldsetTemplate = __webpack_require__(8);
3674+
var arrayTemplate = __webpack_require__(4);
3675+
var tabarrayTemplate = __webpack_require__(16);
3676+
var tabsTemplate = __webpack_require__(17);
3677+
var sectionTemplate = __webpack_require__(13);
3678+
var actionsTemplate = __webpack_require__(3);
3679+
var selectTemplate = __webpack_require__(14);
3680+
var checkboxTemplate = __webpack_require__(5);
3681+
var checkboxesTemplate = __webpack_require__(6);
3682+
var submitTemplate = __webpack_require__(15);
3683+
var radiosTemplate = __webpack_require__(12);
3684+
var radiosInlineTemplate = __webpack_require__(11);
3685+
var radiobuttonsTemplate = __webpack_require__(10);
3686+
var helpTemplate = __webpack_require__(9);
3687+
var defaultTemplate = __webpack_require__(7);
36863688

36873689
angular.module('schemaForm').config(bootstrapDecoratorConfig).filter('sfCamelKey', sfCamelKeyFilter);
36883690

@@ -3700,7 +3702,7 @@ return /******/ (function(modules) { // webpackBootstrap
37003702
var numeric = sfBuilderProvider.builders.numeric;
37013703

37023704
// Tabs is so bootstrap specific that it stays here.
3703-
var tabs = function (args) {
3705+
var tabs = function tabs(args) {
37043706
if (args.form.tabs && args.form.tabs.length > 0) {
37053707
var tabContent = args.fieldFrag.querySelector('.tab-content');
37063708

@@ -3722,7 +3724,7 @@ return /******/ (function(modules) { // webpackBootstrap
37223724
}
37233725
};
37243726

3725-
var selectPlaceholder = function (args) {
3727+
var selectPlaceholder = function selectPlaceholder(args) {
37263728
if (args.form.placeholder) {
37273729
var selectBox = args.fieldFrag.querySelector('select');
37283730
var option = document.createElement('option');
@@ -3917,7 +3919,7 @@ return /******/ (function(modules) { // webpackBootstrap
39173919
/***/ function(module, exports) {
39183920

39193921
var path = 'bootstrap/tabarray.html';
3920-
var html = "\r\n<div ng-init=\"selected = { tab: 0 }\"\r\n ng-model=\"modelArray\" schema-validate=\"form\"\r\n sf-field-model=\"sf-new-array\"\r\n sf-new-array\r\n class=\"clearfix schema-form-tabarray schema-form-tabarray-{{form.tabType || 'left'}} {{form.htmlClass}}\">\r\n <div ng-if=\"!form.tabType || form.tabType !== 'right'\"\r\n ng-class=\"{'col-xs-3': !form.tabType || form.tabType === 'left'}\">\r\n <ol class=\"nav nav-tabs\"\r\n ng-class=\"{ 'tabs-left': !form.tabType || form.tabType === 'left'}\"\r\n sf-field-model ui-sortable=\"form.sortOptions\">\r\n <li sf-field-model=\"ng-repeat\"\r\n ng-repeat=\"item in $$value$$ track by $index\"\r\n ng-click=\"$event.preventDefault() || (selected.tab = $index)\"\r\n ng-class=\"{active: selected.tab === $index}\">\r\n <a href=\"#\">{{interp(form.title,{'$index':$index, value: item}) || $index}}</a>\r\n </li>\r\n <li ng-hide=\"form.readonly || form.add === null\"\r\n ng-disabled=\"form.schema.maxItems <= modelArray.length\"\r\n ng-click=\"$event.preventDefault() || (selected.tab = appendToArray().length - 1)\">\r\n <a href=\"#\">\r\n <i class=\"glyphicon glyphicon-plus\"></i>\r\n {{ form.add || 'Add'}}\r\n </a>\r\n </li>\r\n </ol>\r\n </div>\r\n\r\n <div ng-class=\"{'col-xs-9': !form.tabType || form.tabType === 'left' || form.tabType === 'right'}\">\r\n <div class=\"tab-content {{form.fieldHtmlClass}}\">\r\n <div class=\"tab-pane clearfix tab{{selected.tab}} index{{$index}}\"\r\n sf-field-model=\"ng-repeat\"\r\n ng-repeat=\"item in $$value$$ track by $index\"\r\n ng-show=\"selected.tab === $index\"\r\n ng-class=\"{active: selected.tab === $index}\">\r\n\r\n <div schema-form-array-items></div>\r\n\r\n <button ng-hide=\"form.readonly || form.remove === null\"\r\n ng-click=\"selected.tab = deleteFromArray($index).length - 1\"\r\n ng-disabled=\"form.schema.minItems >= modelArray.length\"\r\n type=\"button\"\r\n class=\"btn {{ form.style.remove || 'btn-default' }} pull-right\">\r\n <i class=\"glyphicon glyphicon-trash\"></i>\r\n {{ form.remove || 'Remove'}}\r\n </button>\r\n </div>\r\n <div class=\"help-block\"\r\n ng-show=\"(hasError() && errorMessage(schemaError())) || form.description\"\r\n ng-bind-html=\"(hasError() && errorMessage(schemaError())) || form.description\"></div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div ng-if=\"form.tabType === 'right'\" class=\"col-xs-3\">\r\n <ul class=\"nav nav-tabs tabs-right\">\r\n <li sf-field-model=\"ng-repeat\"\r\n ng-repeat=\"item in $$value$$ track by $index\"\r\n ng-click=\"$event.preventDefault() || (selected.tab = $index)\"\r\n ng-class=\"{active: selected.tab === $index}\">\r\n <a href=\"#\">{{interp(form.title,{'$index':$index, value: item}) || $index}}</a>\r\n </li>\r\n <li ng-hide=\"form.readonly || form.add === null\"\r\n ng-disabled=\"form.schema.maxItems <= modelArray.length\"\r\n ng-click=\"$event.preventDefault() || (selected.tab = appendToArray().length - 1)\">\r\n <a href=\"#\">\r\n <i class=\"glyphicon glyphicon-plus\"></i>\r\n {{ form.add || 'Add'}}\r\n </a>\r\n </li>\r\n </ul>\r\n </div>\r\n\r\n</div>\r\n";
3922+
var html = "<div ng-init=\"selected = { tab: 0 }\"\r\n ng-model=\"modelArray\" schema-validate=\"form\"\r\n sf-field-model=\"sf-new-array\"\r\n sf-new-array\r\n class=\"clearfix schema-form-tabarray schema-form-tabarray-{{form.tabType || 'left'}} {{form.htmlClass}}\">\r\n <div ng-if=\"!form.tabType || form.tabType !== 'right'\"\r\n ng-class=\"{'col-xs-3': !form.tabType || form.tabType === 'left'}\">\r\n <ol class=\"nav nav-tabs\"\r\n ng-class=\"{ 'tabs-left': !form.tabType || form.tabType === 'left'}\"\r\n sf-field-model ui-sortable=\"form.sortOptions\">\r\n <li sf-field-model=\"ng-repeat\"\r\n ng-repeat=\"item in $$value$$ track by $index\"\r\n ng-click=\"$event.preventDefault() || (selected.tab = $index)\"\r\n ng-class=\"{active: selected.tab === $index}\">\r\n <a href=\"#\">{{interp(form.title,{'$index':$index, value: item}) || $index}}</a>\r\n </li>\r\n <li ng-hide=\"form.readonly || form.add === null\"\r\n ng-disabled=\"form.schema.maxItems <= modelArray.length\"\r\n ng-click=\"$event.preventDefault() || (selected.tab = appendToArray().length - 1)\">\r\n <a href=\"#\">\r\n <i class=\"glyphicon glyphicon-plus\"></i>\r\n {{ form.add || 'Add'}}\r\n </a>\r\n </li>\r\n </ol>\r\n </div>\r\n\r\n <div ng-class=\"{'col-xs-9': !form.tabType || form.tabType === 'left' || form.tabType === 'right'}\">\r\n <div class=\"tab-content {{form.fieldHtmlClass}}\">\r\n <div class=\"tab-pane clearfix tab{{selected.tab}} index{{$index}}\"\r\n sf-field-model=\"ng-repeat\"\r\n ng-repeat=\"item in $$value$$ track by $index\"\r\n ng-show=\"selected.tab === $index\"\r\n ng-class=\"{active: selected.tab === $index}\">\r\n\r\n <div schema-form-array-items></div>\r\n\r\n <button ng-hide=\"form.readonly || form.remove === null\"\r\n ng-click=\"selected.tab = deleteFromArray($index).length - 1\"\r\n ng-disabled=\"form.schema.minItems >= modelArray.length\"\r\n type=\"button\"\r\n class=\"btn {{ form.style.remove || 'btn-default' }} pull-right\">\r\n <i class=\"glyphicon glyphicon-trash\"></i>\r\n {{ form.remove || 'Remove'}}\r\n </button>\r\n </div>\r\n <div class=\"help-block\"\r\n ng-show=\"(hasError() && errorMessage(schemaError())) || form.description\"\r\n ng-bind-html=\"(hasError() && errorMessage(schemaError())) || form.description\"></div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div ng-if=\"form.tabType === 'right'\" class=\"col-xs-3\">\r\n <ul class=\"nav nav-tabs tabs-right\">\r\n <li sf-field-model=\"ng-repeat\"\r\n ng-repeat=\"item in $$value$$ track by $index\"\r\n ng-click=\"$event.preventDefault() || (selected.tab = $index)\"\r\n ng-class=\"{active: selected.tab === $index}\">\r\n <a href=\"#\">{{interp(form.title,{'$index':$index, value: item}) || $index}}</a>\r\n </li>\r\n <li ng-hide=\"form.readonly || form.add === null\"\r\n ng-disabled=\"form.schema.maxItems <= modelArray.length\"\r\n ng-click=\"$event.preventDefault() || (selected.tab = appendToArray().length - 1)\">\r\n <a href=\"#\">\r\n <i class=\"glyphicon glyphicon-plus\"></i>\r\n {{ form.add || 'Add'}}\r\n </a>\r\n </li>\r\n </ul>\r\n </div>\r\n\r\n</div>\r\n";
39213923
window.angular.module('ng').run(['$templateCache', function(c) { c.put(path, html) }]);
39223924
module.exports = path;
39233925

@@ -3926,7 +3928,7 @@ return /******/ (function(modules) { // webpackBootstrap
39263928
/***/ function(module, exports) {
39273929

39283930
var path = 'bootstrap/tabs.html';
3929-
var html = "<div ng-init=\"selected = { tab: 0 }\" class=\"schema-form-tabs {{form.htmlClass}}\">\r\n <ul class=\"nav nav-tabs\">\r\n <li ng-repeat=\"tab in form.tabs\"\r\n ng-disabled=\"form.readonly\"\r\n ng-click=\"$event.preventDefault() || (selected.tab = $index)\"\r\n ng-class=\"{active: selected.tab === $index}\"\r\n ng-if=\"(!tab.condition || evalExpr(tab.condition, { model: model, arrayIndex: $index}))\">\r\n <a href=\"#\">{{ tab.title }}</a>\r\n </li>\r\n </ul>\r\n\r\n <div class=\"tab-content {{form.fieldHtmlClass}}\">\r\n </div>\r\n</div>\r\n";
3931+
var html = "<div ng-init=\"selected = { tab: 0 }\" class=\"schema-form-tabs {{form.htmlClass}}\">\r\n <ul class=\"nav nav-tabs\">\r\n <li ng-repeat=\"tab in form.tabs\"\r\n ng-disabled=\"form.readonly\"\r\n ng-click=\"$event.preventDefault() || (selected.tab = $index)\"\r\n ng-class=\"{active: selected.tab === $index}\">\r\n <a href=\"#\">{{ tab.title }}</a>\r\n </li>\r\n </ul>\r\n\r\n <div class=\"tab-content {{form.fieldHtmlClass}}\">\r\n </div>\r\n</div>\r\n";
39303932
window.angular.module('ng').run(['$templateCache', function(c) { c.put(path, html) }]);
39313933
module.exports = path;
39323934

dist/angular-schema-form-bootstrap.min.js

Lines changed: 24 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,11 @@
2121
],
2222
"license": "MIT",
2323
"dependencies": {
24-
"angular-schema-form": "git://github.com/json-schema-form/angular-schema-form.git#feature/webpack-babel"
24+
"angular": ">= 1.2",
25+
"angular-messages": "^1.5.0",
26+
"angular-sanitize": ">= 1.2",
27+
"angular-schema-form": "git://github.com/json-schema-form/angular-schema-form.git#feature/webpack-babel",
28+
"tv4": "~1.0.15"
2529
},
2630
"devDependencies": {
2731
"babel-core": "^6.10.4",

src/bootstrap-decorator.js

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -90,26 +90,26 @@ function bootstrapDecoratorConfig(
9090

9191
var defaults = [sfField, ngModel, ngModelOptions, condition];
9292
decoratorsProvider.defineDecorator('bootstrapDecorator', {
93-
textarea: {template: textareaTemplate, builder: defaults},
94-
fieldset: {template: fieldsetTemplate, builder: [sfField, simpleTransclusion, condition]},
95-
array: {template: arrayTemplate, builder: [sfField, ngModelOptions, ngModel, array, condition]},
96-
tabarray: {template: tabarrayTemplate, builder: [sfField, ngModelOptions, ngModel, array, condition]},
97-
tabs: {template: tabsTemplate, builder: [sfField, ngModelOptions, tabs, condition]},
98-
section: {template: sectionTemplate, builder: [sfField, simpleTransclusion, condition]},
99-
conditional: {template: sectionTemplate, builder: [sfField, simpleTransclusion, condition]},
10093
actions: {template: actionsTemplate, builder: defaults},
101-
select: {template: selectTemplate, builder: defaults.concat(selectPlaceholder)},
94+
array: {template: arrayTemplate, builder: [sfField, ngModelOptions, ngModel, array, condition]},
95+
button: {template: submitTemplate, builder: defaults},
10296
checkbox: {template: checkboxTemplate, builder: defaults},
10397
checkboxes: {template: checkboxesTemplate, builder: [sfField, ngModelOptions, ngModel, array, condition]},
98+
conditional: {template: sectionTemplate, builder: [sfField, simpleTransclusion, condition]},
99+
'default': {template: defaultTemplate, builder: defaults}
100+
fieldset: {template: fieldsetTemplate, builder: [sfField, simpleTransclusion, condition]},
101+
help: {template: helpTemplate, builder: defaults},
104102
number: {template: defaultTemplate, builder: defaults.concat(numeric)},
105103
password: {template: defaultTemplate, builder: defaults},
106-
submit: {template: submitTemplate, builder: defaults},
107-
button: {template: submitTemplate, builder: defaults},
108104
radios: {template: radiosTemplate, builder: defaults},
109105
'radios-inline': {template: radiosInlineTemplate, builder: defaults},
110106
radiobuttons: {template: radiobuttonsTemplate, builder: defaults},
111-
help: {template: helpTemplate, builder: defaults},
112-
'default': {template: defaultTemplate, builder: defaults}
107+
section: {template: sectionTemplate, builder: [sfField, simpleTransclusion, condition]},
108+
select: {template: selectTemplate, builder: defaults.concat(selectPlaceholder)},
109+
submit: {template: submitTemplate, builder: defaults},
110+
tabarray: {template: tabarrayTemplate, builder: [sfField, ngModelOptions, ngModel, array, condition]},
111+
tabs: {template: tabsTemplate, builder: [sfField, ngModelOptions, tabs, condition]},
112+
textarea: {template: textareaTemplate, builder: defaults},
113113
}, []);
114114
};
115115

src/bootstrap/actions-trcl.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
<div class="btn-group schema-form-actions {{form.htmlClass}}" ng-transclude></div>
1+
<div class="btn-group schema-form-actions {{::form.htmlClass}}" ng-transclude></div>

src/bootstrap/actions.html

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
1-
<div class="btn-group schema-form-actions {{form.htmlClass}}">
1+
<div class="btn-group schema-form-actions {{::form.htmlClass}}">
22
<input ng-repeat-start="item in form.items"
33
type="submit"
4-
class="btn {{ item.style || 'btn-default' }} {{form.fieldHtmlClass}}"
4+
class="btn {{ item.style || 'btn-default' }} {{::form.fieldHtmlClass}}"
55
value="{{item.title}}"
66
ng-if="item.type === 'submit'">
77
<button ng-repeat-end
8-
class="btn {{ item.style || 'btn-default' }} {{form.fieldHtmlClass}}"
8+
class="btn {{ item.style || 'btn-default' }} {{::form.fieldHtmlClass}}"
99
type="button"
1010
ng-disabled="form.readonly"
1111
ng-if="item.type !== 'submit'"

src/bootstrap/array.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
<div class="schema-form-array {{form.htmlClass}}"
1+
<div class="schema-form-array {{::form.htmlClass}}"
22
sf-field-model="sf-new-array"
33
sf-new-array>
44
<label class="control-label" ng-show="showTitle()">{{ form.title }}</label>
55
<ol class="list-group" sf-field-model ui-sortable="form.sortOptions">
6-
<li class="list-group-item {{form.fieldHtmlClass}}"
6+
<li class="list-group-item {{::form.fieldHtmlClass}}"
77
sf-field-model="ng-repeat"
88
ng-repeat="item in $$value$$ track by $index">
99
<button ng-hide="form.readonly || form.remove === null"

src/bootstrap/checkbox.html

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
<div class="checkbox schema-form-checkbox {{form.htmlClass}}"
1+
<div class="checkbox schema-form-checkbox {{::form.htmlClass}}"
22
ng-class="{'has-error': form.disableErrorState !== true && hasError(), 'has-success': form.disableSuccessState !== true && hasSuccess()}">
3-
<label class="{{form.labelHtmlClass}}">
3+
<label class="{{::form.labelHtmlClass}}">
44
<input type="checkbox"
55
sf-changed="form"
66
ng-disabled="form.readonly"
77
sf-field-model
88
schema-validate="form"
9-
class="{{form.fieldHtmlClass}}"
9+
class="{{::form.fieldHtmlClass}}"
1010
name="{{form.key.slice(-1)[0]}}">
1111
<span ng-bind-html="form.title"></span>
1212
</label>

src/bootstrap/checkboxes.html

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
<div sf-field-model="sf-new-array"
22
sf-new-array
3-
class="form-group schema-form-checkboxes {{form.htmlClass}}"
3+
class="form-group schema-form-checkboxes {{::form.htmlClass}}"
44
ng-class="{'has-error': form.disableErrorState !== true && hasError(), 'has-success': form.disableSuccessState !== true && hasSuccess()}">
5-
<label class="control-label {{form.labelHtmlClass}}"
5+
<label class="control-label {{::form.labelHtmlClass}}"
66
sf-field-model
77
schema-validate="form"
88
ng-show="showTitle()">{{form.title}}</label>
@@ -12,7 +12,7 @@
1212
<input type="checkbox"
1313
ng-disabled="form.readonly"
1414
sf-changed="form"
15-
class="{{form.fieldHtmlClass}}"
15+
class="{{::form.fieldHtmlClass}}"
1616
ng-model="titleMapValues[$index]"
1717
name="{{form.key.slice(-1)[0]}}">
1818
<span ng-bind-html="form.titleMap[$index].name"></span>

src/bootstrap/default.html

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
1-
<div class="form-group {{form.htmlClass}}"
1+
<div class="form-group {{::form.htmlClass}}"
22
ng-class="{ '{{'schema-form-' + form.type}}': true, 'has-error': form.disableErrorState !== true && hasError(), 'has-success': form.disableSuccessState !== true && hasSuccess(), 'has-feedback': form.feedback !== false }">
3-
<label class="control-label {{form.labelHtmlClass}}" ng-class="{'sr-only': !showTitle()}" for="{{form.key.slice(-1)[0]}}">{{form.title}}</label>
3+
<label class="control-label {{::form.labelHtmlClass}}" ng-class="{'sr-only': !showTitle()}" for="{{form.key.slice(-1)[0]}}">{{form.title}}</label>
44

55
<input ng-if="!form.fieldAddonLeft && !form.fieldAddonRight"
6-
ng-show="form.key"
7-
type="{{form.type}}"
6+
ng-show="::form.key"
7+
type="{{::form.type}}"
88
step="any"
99
sf-changed="form"
10-
placeholder="{{form.placeholder}}"
11-
class="form-control {{form.fieldHtmlClass}}"
10+
placeholder="{{::form.placeholder}}"
11+
class="form-control {{::form.fieldHtmlClass}}"
1212
id="{{form.key.slice(-1)[0]}}"
1313
sf-field-model
1414
ng-disabled="form.readonly"
@@ -21,12 +21,12 @@
2121
<span ng-if="form.fieldAddonLeft"
2222
class="input-group-addon"
2323
ng-bind-html="form.fieldAddonLeft"></span>
24-
<input ng-show="form.key"
25-
type="{{form.type}}"
24+
<input ng-show="::form.key"
25+
type="{{::form.type}}"
2626
step="any"
2727
sf-changed="form"
28-
placeholder="{{form.placeholder}}"
29-
class="form-control {{form.fieldHtmlClass}}"
28+
placeholder="{{::form.placeholder}}"
29+
class="form-control {{::form.fieldHtmlClass}}"
3030
id="{{form.key.slice(-1)[0]}}"
3131
sf-field-model
3232
ng-disabled="form.readonly"

src/bootstrap/fieldset.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
<fieldset ng-disabled="form.readonly" class="schema-form-fieldset {{form.htmlClass}}">
1+
<fieldset ng-disabled="form.readonly" class="schema-form-fieldset {{::form.htmlClass}}">
22
<legend ng-class="{'sr-only': !showTitle() }">{{ form.title }}</legend>
33
<div class="help-block" ng-show="form.description" ng-bind-html="form.description"></div>
44
</fieldset>

0 commit comments

Comments
 (0)