@@ -3942,6 +3942,95 @@ angular.module('patternfly.modals')
3942
3942
}
3943
3943
} ;
3944
3944
} ) ;
3945
+ ; /**
3946
+ * @ngdoc directive
3947
+ * @name patternfly.navigation.directive:pfApplicationLauncher
3948
+ *
3949
+ * @description
3950
+ * Directive for rendering application launcher dropdown.
3951
+ *
3952
+ * @param {string= } label Use a custom label for the launcher, default: Application Launcher
3953
+ * @param {boolean= } isDisabled Disable the application launcher button, default: false
3954
+ * @param {boolean= } isList Display items as a list instead of a grid, default: false
3955
+ * @param {boolean= } hiddenIcons Flag to not show icons on the launcher, default: false
3956
+ * @param {array } items List of navigation items
3957
+ * <ul style='list-style-type: none'>
3958
+ * <li>.title - (string) Name of item to be displayed on the menu
3959
+ * <li>.iconClass - (string) Classes for icon to be shown on the menu (ex. "fa fa-dashboard")
3960
+ * <li>.href - (string) href link to navigate to on click
3961
+ * <li>.tooltip - (string) Tooltip to display for the badge
3962
+ * </ul>
3963
+ * @example
3964
+ <example module="patternfly.navigation">
3965
+ <file name="index.html">
3966
+ <div ng-controller="applicationLauncherController" class="row">
3967
+ <div class="col-xs-12 pre-demo-text">
3968
+ <label>Click the launcher indicator to show the Application Launcher Dropdown:</label>
3969
+ </div>
3970
+ <nav class="navbar navbar-pf navbar-collapse">
3971
+ <ul class="nav navbar-left">
3972
+ <li>
3973
+ <div pf-application-launcher="" items="navigationItems" label="{{label}}" is-disabled="isDisabled" is-list="isList" hidden-icons="hiddenIcons"></div>
3974
+ </li>
3975
+ </ul>
3976
+ </nav>
3977
+ </div>
3978
+ </file>
3979
+ <file name="script.js">
3980
+ angular.module('patternfly.navigation').controller('applicationLauncherController', ['$scope',
3981
+ function ($scope) {
3982
+ $scope.navigationItems = [
3983
+ {
3984
+ title: "Recteque",
3985
+ href: "#/ipsum/intellegam/recteque",
3986
+ tooltip: "Launch the Function User Interface",
3987
+ iconClass: "pficon-storage-domain"
3988
+ },
3989
+ {
3990
+ title: "Suavitate",
3991
+ href: "#/ipsum/intellegam/suavitate",
3992
+ tooltip: "Launch the Function User Interface",
3993
+ iconClass: "pficon-build"
3994
+ },
3995
+ {
3996
+ title: "Lorem",
3997
+ href: "#/ipsum/intellegam/lorem",
3998
+ tooltip: "Launch the Function User Interface",
3999
+ iconClass: "pficon-domain"
4000
+ },
4001
+ {
4002
+ title: "Home",
4003
+ href: "#/ipsum/intellegam/home",
4004
+ tooltip: "Launch the Function User Interface",
4005
+ iconClass: "pficon-home"
4006
+ }
4007
+ ];
4008
+
4009
+ $scope.label = 'Application Launcher';
4010
+ $scope.isDisabled = false;
4011
+ $scope.isList = false;
4012
+ $scope.hiddenIcons = false;
4013
+ }]);
4014
+ </file>
4015
+ </example>
4016
+ */
4017
+ angular . module ( 'patternfly.navigation' ) . directive ( 'pfApplicationLauncher' , [
4018
+ function ( ) {
4019
+ 'use strict' ;
4020
+
4021
+ return {
4022
+ restrict : 'A' ,
4023
+ scope : {
4024
+ items : '&' ,
4025
+ label : '@?' ,
4026
+ isDisabled : '&?' ,
4027
+ isList : '&?' ,
4028
+ hiddenIcons : '&?'
4029
+ } ,
4030
+ templateUrl : 'navigation/application-launcher.html'
4031
+ } ;
4032
+ } ] ) ;
4033
+
3945
4034
; /**
3946
4035
* @ngdoc directive
3947
4036
* @name patternfly.navigation.directive:pfVerticalNavigation - Basic
@@ -10460,6 +10549,11 @@ angular.module('patternfly.wizard').directive('pfWizardSubstep', function () {
10460
10549
; angular . module ( 'patternfly.navigation' ) . run ( [ '$templateCache' , function ( $templateCache ) {
10461
10550
'use strict' ;
10462
10551
10552
+ $templateCache . put ( 'navigation/application-launcher.html' ,
10553
+ "<div><div class=\"applauncher-pf dropdown dropdown-kebab-pf\" ng-class=\"{'applauncher-pf-block-list': !isList()}\" uib-dropdown uib-keyboard-nav=true><a id=domain-switcher-{{$id}} class=\"dropdown-toggle drawer-pf-trigger-icon\" uib-dropdown-toggle ng-class=\"{'disabled': isDisabled() || !items().length}\" href><i class=\"fa fa-th applauncher-pf-icon\" aria-hidden=true></i> <span class=applauncher-pf-title>{{label || 'Application Launcher'}} <span class=caret aria-hidden=true></span></span></a><ul class=\"dropdown-menu dropdown-menu-right\" uib-dropdown-menu role=menu aria-labelledby=domain-switcher-{{$id}}><li class=applauncher-pf-item role=menuitem ng-repeat=\"item in items()\"><a class=applauncher-pf-link ng-href={{item.href}} target=\"{{item.target || '_blank'}}\" title={{item.tooltip}}><i class=\"applauncher-pf-link-icon pficon\" ng-class=item.iconClass ng-if=!hiddenIcons() aria-hidden=true></i> <span class=applauncher-pf-link-title>{{item.title}}</span></a></li></ul></div></div>"
10554
+ ) ;
10555
+
10556
+
10463
10557
$templateCache . put ( 'navigation/vertical-navigation.html' ,
10464
10558
"<div><nav class=\"navbar navbar-pf-vertical\"><div class=navbar-header><button type=button class=navbar-toggle ng-click=handleNavBarToggleClick()><span class=sr-only>Toggle navigation</span> <span class=icon-bar></span> <span class=icon-bar></span> <span class=icon-bar></span></button> <span class=navbar-brand><img class=navbar-brand-icon ng-if=brandSrc ng-src={{brandSrc}} alt=\"{{brandAlt}}\"> <span class=navbar-brand-txt ng-if=!brandSrc>{{brandAlt}}</span></span></div><nav class=\"collapse navbar-collapse\" ng-transclude></nav><div class=nav-pf-vertical ng-class=\"{'nav-pf-persistent-secondary': persistentSecondary,\n" +
10465
10559
" 'nav-pf-vertical-collapsible-menus': pinnableMenus,\n" +
0 commit comments