UNPKG

vormjs

Version:

Write your forms in JSON and HTML, use the same API.

42 lines (30 loc) 1.02 kB
/*global angular*/ (function ( ) { angular.module('vorm') .directive('vormLabel', [ function ( ) { return { require: [ 'vormLabel', '^vormFieldConfig', '^vormFocusableList' ], template: '<label class="vorm-field-label">{{vormLabel.getLabel()}}</label>', replace: true, controller: [ '$scope', '$element', function ( $scope, $element ) { let ctrl = this, vormFieldConfig, vormFocusableList; ctrl.link = function ( controllers ) { vormFieldConfig = controllers[0]; vormFocusableList = controllers[1]; $scope.$watch(vormFocusableList.getId, function ( inputId ) { $element.attr('for', inputId); }); }; ctrl.getLabel = function ( ) { return vormFieldConfig.invoke(vormFieldConfig.getConfig().label); }; }], controllerAs: 'vormLabel', link: function ( scope, element, attrs, controllers ) { controllers[0].link(controllers.slice(1)); } }; }]); })();