text: /*
   * Copyright Camunda Services GmbH and/or licensed to Camunda Services GmbH
   * under one or more contributor license agreements. See the NOTICE file
   * distributed with this work for additional information regarding copyright
   * ownership. Camunda licenses this file to you under the Apache License,
   * Version 2.0; you may not use this file except in compliance with the License.
   * You may obtain a copy of the License at
   *
   *     http://www.apache.org/licenses/LICENSE-2.0
   *
   * Unless required by applicable law or agreed to in writing, software
   * distributed under the License is distributed on an "AS IS" BASIS,
   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   * See the License for the specific language governing permissions and
   * limitations under the License.
   */
  
  'use strict';
  
  module.exports = [
    function() {
      var ViewPillsController = [
        '$scope',
        'Views',
        '$location',
        'routeUtil',
        function($scope, Views, $location, routeUtil) {
          var providers = Views.getProviders({component: $scope.id});
          $scope.providers = providers;
  
          var isActive = ($scope.isActive = function(provider) {
            return $location.path().indexOf('/' + provider.id) != -1;
          });
  
          $scope.getUrl = function(provider) {
            var replacement = provider.id,
              currentPath = $location.path(),
              currentSearch = $location.search(),
              keepSearchParams = !isActive(provider)
                ? provider.keepSearchParams
                : true;
  
            return (
              '#' +
              routeUtil.replaceLastPathFragment(
                replacement,
                currentPath,
                currentSearch,
                keepSearchParams
              )
            );
          };
        }
      ];
  
      return {
        restrict: 'EAC',
        scope: {
          id: '@'
        },
        template:
          '<ul class="nav nav-pills">' +
          '  <li ng-repeat="provider in providers" ng-class="{ active: isActive(provider) }" class="{{ provider.id }}">' +
          '    <a ng-href="{{ getUrl(provider) }}">{{ provider.label }}</a>' +
          '  </li>' +
          '</ul>',
        replace: true,
        controller: ViewPillsController
      };
    }
  ];
  