42 lines
1.0 KiB
JavaScript
42 lines
1.0 KiB
JavaScript
import ngModule from '../../module';
|
|
import ButtonMenu from '../button-menu/button-menu';
|
|
import './style.scss';
|
|
|
|
export default class IconMenu extends ButtonMenu {
|
|
constructor($element, $scope, $transclude) {
|
|
super($element, $scope);
|
|
this.$transclude = $transclude;
|
|
this.input = this.element.querySelector('.button');
|
|
}
|
|
}
|
|
IconMenu.$inject = ['$element', '$scope', '$transclude'];
|
|
|
|
ngModule.component('vnIconMenu', {
|
|
template: require('./icon-menu.html'),
|
|
bindings: {
|
|
label: '@',
|
|
showField: '@?',
|
|
selection: '<?',
|
|
valueField: '@?',
|
|
selectFields: '<?',
|
|
disabled: '<?',
|
|
initialData: '<?',
|
|
showFilter: '<?',
|
|
field: '=?',
|
|
url: '@?',
|
|
data: '<?',
|
|
where: '@?',
|
|
order: '@?',
|
|
limit: '<?',
|
|
multiple: '<?',
|
|
onChange: '&?',
|
|
icon: '@?',
|
|
translateFields: '<?',
|
|
onOpen: '&?'
|
|
},
|
|
transclude: {
|
|
tplItem: '?tplItem'
|
|
},
|
|
controller: IconMenu
|
|
});
|