42 lines
837 B
JavaScript
42 lines
837 B
JavaScript
|
import ngModule from '../../module';
|
||
|
import Component from '../../lib/component';
|
||
|
import './style.scss';
|
||
|
|
||
|
export default class Controller extends Component {
|
||
|
constructor($element, $scope, $attrs) {
|
||
|
super($element, $scope);
|
||
|
this.hasInfo = Boolean($attrs.info);
|
||
|
this.info = $attrs.info || null;
|
||
|
}
|
||
|
|
||
|
get model() {
|
||
|
return this._model;
|
||
|
}
|
||
|
|
||
|
set model(value) {
|
||
|
this._model = value;
|
||
|
}
|
||
|
|
||
|
get field() {
|
||
|
return this._model;
|
||
|
}
|
||
|
|
||
|
set field(value) {
|
||
|
this._model = value;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
Controller.$inject = ['$element', '$scope', '$attrs'];
|
||
|
|
||
|
ngModule.component('vnRadioGroup', {
|
||
|
template: require('./radio-group.html'),
|
||
|
controller: Controller,
|
||
|
|
||
|
bindings: {
|
||
|
field: '=?',
|
||
|
options: '<?',
|
||
|
disabled: '<?',
|
||
|
checked: '<?'
|
||
|
}
|
||
|
});
|