nl_tokens: / *
pl_tokens: function SidenavController ( $scope , $attrs , $mdComponentRegistry , $q , $interpolate ) { var self = this ; // Use Default internal method until overridden by directive postLink // Synchronous getters self . isOpen = function ( ) { return ! ! $scope . isOpen ; } ; self . isLockedOpen = function ( ) { return ! ! $scope . isLockedOpen ; } ; // Synchronous setters self . onClose = function ( callback ) { self . onCloseCb = callback ; return self ; } ; // Async actions self . open = function ( ) { return self . $toggleOpen ( true ) ; } ; self . close = function ( ) { return self . $toggleOpen ( false ) ; } ; self . toggle = function ( ) { return self . $toggleOpen ( ! $scope . isOpen ) ; } ; self . $toggleOpen = function ( value ) { return $q . when ( $scope . isOpen = value ) ; } ; // Evaluate the component id. var rawId = $attrs . mdComponentId ; var hasDataBinding = rawId && rawId . indexOf ( $interpolate . startSymbol ( ) ) > - 1 ; var componentId = hasDataBinding ? $interpolate ( rawId ) ( $scope . $parent ) : rawId ; // Register the component. self . destroy = $mdComponentRegistry . register ( self , componentId ) ; // Watch and update the component, if the id has changed. if ( hasDataBinding ) { $attrs . $observe ( 'mdComponentId' , function ( id ) { if ( <mask> && id !== self . $$mdHandle ) { self . destroy ( ) ; // `destroy` only deregisters the old component id so we can add the new one. self . destroy = $mdComponentRegistry . register ( self , id ) ; } } ) ; } }