mirror of https://github.com/portainer/portainer
				
				
				
			feat(ui): renovate the edge groups list page EE-3529 (#7186)
							parent
							
								
									c0569a0752
								
							
						
					
					
						commit
						104c82c54e
					
				| 
						 | 
				
			
			@ -1,61 +1,69 @@
 | 
			
		|||
<div class="datatable">
 | 
			
		||||
  <rd-widget>
 | 
			
		||||
    <rd-widget-header icon="{{ $ctrl.titleIcon }}" title-text="Edge Groups"> </rd-widget-header>
 | 
			
		||||
    <rd-widget-body classes="no-padding">
 | 
			
		||||
      <div class="actionBar">
 | 
			
		||||
        <button
 | 
			
		||||
          type="button"
 | 
			
		||||
          class="btn btn-sm btn-danger"
 | 
			
		||||
          ng-disabled="$ctrl.state.selectedItemCount === 0"
 | 
			
		||||
          ng-click="$ctrl.removeAction($ctrl.state.selectedItems)"
 | 
			
		||||
          data-cy="edgeGroup-removeEdgeGroupButton"
 | 
			
		||||
        >
 | 
			
		||||
          <i class="fa fa-trash-alt space-right" aria-hidden="true"></i>Remove
 | 
			
		||||
        </button>
 | 
			
		||||
        <button type="button" class="btn btn-sm btn-primary" ui-sref="edge.groups.new" data-cy="edgeGroup-addEdgeGroupButton">
 | 
			
		||||
          <i class="fa fa-plus space-right" aria-hidden="true"></i>Add Edge group
 | 
			
		||||
        </button>
 | 
			
		||||
      </div>
 | 
			
		||||
      <div class="searchBar">
 | 
			
		||||
        <i class="fa fa-search searchIcon" aria-hidden="true"></i>
 | 
			
		||||
        <input
 | 
			
		||||
          type="text"
 | 
			
		||||
          class="searchInput"
 | 
			
		||||
          ng-model="$ctrl.state.textFilter"
 | 
			
		||||
          ng-change="$ctrl.onTextFilterChange()"
 | 
			
		||||
          placeholder="Search..."
 | 
			
		||||
          ng-model-options="{ debounce: 300 }"
 | 
			
		||||
          data-cy="edgeGroup-searchInput"
 | 
			
		||||
        />
 | 
			
		||||
      <div class="toolBar">
 | 
			
		||||
        <div class="toolBarTitle vertical-center"> <pr-icon icon="'grid'" feather="true"></pr-icon> Edge Groups </div>
 | 
			
		||||
        <div class="searchBar vertical-center leading-none">
 | 
			
		||||
          <pr-icon icon="'search'" feather="true" class-name="'searchIcon'"></pr-icon>
 | 
			
		||||
          <input
 | 
			
		||||
            type="text"
 | 
			
		||||
            class="searchInput"
 | 
			
		||||
            ng-model="$ctrl.state.textFilter"
 | 
			
		||||
            ng-change="$ctrl.onTextFilterChange()"
 | 
			
		||||
            placeholder="Search..."
 | 
			
		||||
            ng-model-options="{ debounce: 300 }"
 | 
			
		||||
            data-cy="edgeGroup-searchInput"
 | 
			
		||||
          />
 | 
			
		||||
        </div>
 | 
			
		||||
        <div class="actionBar">
 | 
			
		||||
          <button
 | 
			
		||||
            type="button"
 | 
			
		||||
            class="btn btn-sm btn-danger"
 | 
			
		||||
            ng-disabled="$ctrl.state.selectedItemCount === 0"
 | 
			
		||||
            ng-click="$ctrl.removeAction($ctrl.state.selectedItems)"
 | 
			
		||||
            data-cy="edgeGroup-removeEdgeGroupButton"
 | 
			
		||||
          >
 | 
			
		||||
            <pr-icon icon="'trash-2'" feather="true"></pr-icon> Remove
 | 
			
		||||
          </button>
 | 
			
		||||
          <button type="button" class="btn btn-sm btn-primary" ui-sref="edge.groups.new" data-cy="edgeGroup-addEdgeGroupButton">
 | 
			
		||||
            <pr-icon icon="'plus'" feather="true"></pr-icon> Add Edge group
 | 
			
		||||
          </button>
 | 
			
		||||
        </div>
 | 
			
		||||
      </div>
 | 
			
		||||
      <div class="table-responsive">
 | 
			
		||||
        <table class="table table-hover nowrap-cells" data-cy="edgeGroup-edgeGroupTable">
 | 
			
		||||
          <thead>
 | 
			
		||||
            <tr>
 | 
			
		||||
              <th>
 | 
			
		||||
              <th class="flex">
 | 
			
		||||
                <span class="md-checkbox">
 | 
			
		||||
                  <input id="select_all" type="checkbox" ng-model="$ctrl.state.selectAll" ng-change="$ctrl.selectAll()" data-cy="edgeGroup-selectAllCheckbox" />
 | 
			
		||||
                  <label for="select_all"></label>
 | 
			
		||||
                </span>
 | 
			
		||||
                <a ng-click="$ctrl.changeOrderBy('Name')">
 | 
			
		||||
                  Name
 | 
			
		||||
                  <i class="fa fa-sort-alpha-down" aria-hidden="true" ng-if="$ctrl.state.orderBy === 'Name' && !$ctrl.state.reverseOrder"></i>
 | 
			
		||||
                  <i class="fa fa-sort-alpha-up" aria-hidden="true" ng-if="$ctrl.state.orderBy === 'Name' && $ctrl.state.reverseOrder"></i>
 | 
			
		||||
                </a>
 | 
			
		||||
                <table-column-header
 | 
			
		||||
                  col-title="'Name'"
 | 
			
		||||
                  can-sort="true"
 | 
			
		||||
                  is-sorted="$ctrl.state.orderBy === 'Name'"
 | 
			
		||||
                  is-sorted-desc="$ctrl.state.orderBy === 'Name' && $ctrl.state.reverseOrder"
 | 
			
		||||
                  ng-click="$ctrl.changeOrderBy('Name')"
 | 
			
		||||
                ></table-column-header>
 | 
			
		||||
              </th>
 | 
			
		||||
              <th>
 | 
			
		||||
                <a ng-click="$ctrl.changeOrderBy('Endpoints.length')">
 | 
			
		||||
                  Environments Count
 | 
			
		||||
                  <i class="fa fa-sort-alpha-down" aria-hidden="true" ng-if="$ctrl.state.orderBy === 'Endpoints.length' && !$ctrl.state.reverseOrder"></i>
 | 
			
		||||
                  <i class="fa fa-sort-alpha-up" aria-hidden="true" ng-if="$ctrl.state.orderBy === 'Endpoints.length' && $ctrl.state.reverseOrder"></i>
 | 
			
		||||
                </a>
 | 
			
		||||
                <table-column-header
 | 
			
		||||
                  col-title="'Environments Count'"
 | 
			
		||||
                  can-sort="true"
 | 
			
		||||
                  is-sorted="$ctrl.state.orderBy === 'Endpoints.length'"
 | 
			
		||||
                  is-sorted-desc="$ctrl.state.orderBy === 'Endpoints.length' && $ctrl.state.reverseOrder"
 | 
			
		||||
                  ng-click="$ctrl.changeOrderBy('Endpoints.length')"
 | 
			
		||||
                ></table-column-header>
 | 
			
		||||
              </th>
 | 
			
		||||
              <th>
 | 
			
		||||
                <a ng-click="$ctrl.changeOrderBy('Dynamic')">
 | 
			
		||||
                  Group Type
 | 
			
		||||
                  <i class="fa fa-sort-alpha-down" aria-hidden="true" ng-if="$ctrl.state.orderBy === 'Dynamic' && !$ctrl.state.reverseOrder"></i>
 | 
			
		||||
                  <i class="fa fa-sort-alpha-up" aria-hidden="true" ng-if="$ctrl.state.orderBy === 'Dynamic' && $ctrl.state.reverseOrder"></i>
 | 
			
		||||
                </a>
 | 
			
		||||
                <table-column-header
 | 
			
		||||
                  col-title="'Group Type'"
 | 
			
		||||
                  can-sort="true"
 | 
			
		||||
                  is-sorted="$ctrl.state.orderBy === 'Dynamic'"
 | 
			
		||||
                  is-sorted-desc="$ctrl.state.orderBy === 'Dynamic' && $ctrl.state.reverseOrder"
 | 
			
		||||
                  ng-click="$ctrl.changeOrderBy('Dynamic')"
 | 
			
		||||
                ></table-column-header>
 | 
			
		||||
              </th>
 | 
			
		||||
            </tr>
 | 
			
		||||
          </thead>
 | 
			
		||||
| 
						 | 
				
			
			@ -89,7 +97,7 @@
 | 
			
		|||
        <div class="paginationControls">
 | 
			
		||||
          <form class="form-inline">
 | 
			
		||||
            <span class="limitSelector">
 | 
			
		||||
              <span style="margin-right: 5px"> Items per page </span>
 | 
			
		||||
              <span class="mr-1"> Items per page </span>
 | 
			
		||||
              <select class="form-control" ng-model="$ctrl.state.paginatedItemLimit" ng-change="$ctrl.changePaginationLimit()" data-cy="component-paginationSelect">
 | 
			
		||||
                <option value="0">All</option>
 | 
			
		||||
                <option value="10">10</option>
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue