/// import coreModule from 'app/core/core_module'; const template = `
`; export class CollapseBoxCtrl { isOpen: boolean; stateChanged: () => void; /** @ngInject **/ constructor(private $timeout) { this.isOpen = false; } toggle() { this.isOpen = !this.isOpen; this.$timeout(() => { this.stateChanged(); }); } } export function collapseBox() { return { restrict: 'E', template: template, controller: CollapseBoxCtrl, bindToController: true, controllerAs: 'ctrl', scope: { "title": "@", "isOpen": "=?", "stateChanged": "&" }, transclude: { 'actions': '?collapseBoxActions', 'body': 'collapseBoxBody', }, link: function(scope, elem, attrs) { } }; } coreModule.directive('collapseBox', collapseBox);