Catalog alignment
[sdc.git] / catalog-ui / src / app / view-models / workspace / tabs / properties / properties-view.html
1 <!--
2   ~ Copyright (C) 2018 AT&T Intellectual Property. All rights reserved.
3   ~
4   ~ Licensed under the Apache License, Version 2.0 (the "License");
5   ~ you may not use this file except in compliance with the License.
6   ~ You may obtain a copy of the License at
7   ~
8   ~      http://www.apache.org/licenses/LICENSE-2.0
9   ~
10   ~ Unless required by applicable law or agreed to in writing, software
11   ~ distributed under the License is distributed on an "AS IS" BASIS,
12   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13   ~ See the License for the specific language governing permissions and
14   ~ limitations under the License.
15 -->
16 <div class="workspace-properties">
17     <div id="left-top-bar">
18         <span id="properties-count">Total Properties: {{component.properties.length}}</span>
19         <input id="search-by-name" type="search" placeholder="Search"  data-ng-model-options="{debounce: 200}" data-ng-model="filterTerms"/>
20         <span class="sprite magnification-glass search-button"></span>
21     </div>
22     <div class="add-btn" data-tests-id="addGrey" ng-if="!isViewMode()"
23          data-ng-class="{'disabled': isDisableMode()}" data-ng-click="addOrUpdateProperty()">Add Property</div>
24     <div class="table-container-flex">
25         <div class="table" data-ng-class="{'view-mode': isViewMode()}">
26             <div class="head flex-container">
27                 <div class="table-header head-row hand flex-item" data-ng-repeat="header in tableHeadersList track by $index" data-ng-click="sort(header.property)">{{header.title}}
28                     <span data-ng-if="sortBy === header.property" class="table-header-sort-arrow" data-ng-class="{'down': reverse, 'up':!reverse}"> </span>
29                 </div>
30                 <div class="table-no-text-header head-row flex-item" ng-if="!isViewMode()"><span class="delete-col-header"></span></div>
31                 <!--div class="table-no-text-header head-row flex-item"></div-->
32             </div>
33
34             <div class="body">
35                 <perfect-scrollbar scroll-y-margin-offset="0" include-padding="true" class="scrollbar-container">
36                     <div data-ng-if="component.properties.length === 0" class="no-row-text"  data-ng-class="{'disabled': isDisableMode()}">
37                         There are no properties to display <br>
38                         <span ng-if="!isViewMode()"> click <a data-ng-click="addOrUpdateProperty()">here</a> to add one </span>
39
40                     </div>
41                     <div data-ng-repeat="property in filteredProperties=(component.properties | orderBy:sortBy:reverse | filter: {filterTerm:filterTerms}) track by $index"
42                          data-tests-id="propertyRow" data-ng-class="{'selected': property.selected}"
43                          class="flex-container data-row">
44
45                         <div class="table-col-general flex-item text" tooltips tooltip-content="{{property.name}}">
46                             <a data-tests-id="propertyName_{{property.name}}"
47                                    data-ng-click="addOrUpdateProperty(property); $event.stopPropagation();"
48                                    data-ng-class="{'disabled': isViewMode()}">{{property.name}}</a>
49
50                         </div>
51
52                         <div class="table-col-general flex-item text"
53                              tooltips tooltip-content="{{property.type}}">
54                             <span data-tests-id="propertyType_{{property.name}}"> {{property.type.replace("org.openecomp.datatypes.heat.","")}}</span>
55                         </div>
56                         <div class="table-col-general flex-item text"
57                              tooltips tooltip-content="{{property.schema.property.type}}">
58                             <span data-tests-id="propertySchema_{{property.name}}"> {{property.schema.property.type.replace("org.openecomp.datatypes.heat.","")}}</span>
59                         </div>
60                         <div class="table-col-general flex-item text" tooltips tooltip-content="{{property.description}}">
61                             <span data-tests-id="propertyDescription_{{property.name}}" data-ng-bind="property.description"></span>
62                         </div>
63                         <div class="table-btn-col flex-item" ng-if="!isViewMode()">
64                             <button class="table-delete-btn" data-tests-id="delete_{{property.name}}"  data-ng-if="!property.ownerId || property.ownerId==component.uniqueId"
65                                     data-ng-click="delete(property); $event.stopPropagation();"  data-ng-class="{'disabled': isViewMode()}"></button>
66                         </div>
67                     </div>
68                 </perfect-scrollbar>
69             </div>
70
71         </div>
72     </div>
73
74 </div>