[SDC-29] rebase continue work to align source
[sdc.git] / catalog-ui / src / app / view-models / modals / onboarding-modal / onboarding-modal-view.html
1 <sdc-modal modal="modalOnboarding" class="w-sdc-modal-onboarding w-sdc-classic-top-line-modal" buttons="footerButtons" header="Import VF" show-close-button="true">
2     <info-tooltip class="general-info-button" info-message-translate="ON_BOARDING_GENERAL_INFO "></info-tooltip>
3     <div class="title-wrapper">
4         <div>
5             <p class="sub-title">Select one of the software product component below:</p>
6         </div>
7
8         <div class="top-search">
9             <input type="text"
10                    class="search-text"
11                    placeholder="Search"
12                    data-ng-model="search.filterTerm"
13                    data-tests-id="onboarding-search"
14                    ng-model-options="{ debounce: 300 }" />
15             <span class="w-sdc-search-icon magnification"></span>
16         </div>
17     </div>
18
19     <div class="table-container-flex">
20         <div class="table" data-ng-class="{'view-mode': isViewMode()}">
21
22             <!-- Table headers -->
23             <div class="head flex-container">
24                 <div class="table-header head-row hand flex-item" ng-repeat="header in tableHeadersList track by $index" data-ng-click="sort(header.property)" data-tests-id="{{header.title}}">{{header.title}}
25                     <span data-ng-show="sortBy === header.property" class="table-header-sort-arrow" data-ng-class="{'down': reverse, 'up':!reverse}"> </span>
26                 </div>
27             </div>
28
29             <!-- Table body -->
30             <div class="body">
31                 <perfect-scrollbar suppress-scroll-x="true" scroll-y-margin-offset="0" include-padding="true" class="scrollbar-container" id="onboarding-modal-scrollbar-container">
32
33                     <!-- In case the component list is empty -->
34                     <div data-ng-if="!componentsList || componentsList.length===0" class="no-row-text">
35                         There are no software product component to display
36                     </div>
37
38                     <div infinite-scroll-disabled='allItemsDisplayed'  infinite-scroll="increaseNumItemsToDisplay()" infinite-scroll-container="'#onboarding-modal-scrollbar-container'">
39
40                     <!-- Loop on components list -->
41                     <div data-ng-repeat-start="component in componentsList | filter: search | orderBy:sortBy:reverse | limitTo:numberOfItemsToDisplay track by $index"
42                          class="flex-container data-row"
43                          data-ng-class="{'selected': component.packageId === selectedComponent.packageId}"
44                          data-ng-click="doSelectComponent(component);"
45                          data-tests-id="csar-row"
46                          >
47
48                         <!-- Name -->
49                         <div class="table-col-general flex-item"  sdc-smart-tooltip>
50                             <span class="sprite table-arrow" data-ng-class="{'opened': component.packageId === selectedComponent.packageId}" data-tests-id="{{component.name}}"></span>
51                             {{component.name}}
52                         </div>
53
54                         <!-- Vendor -->
55                         <div class="table-col-general flex-item" data-tests-id="{{component.vendorName}}" sdc-smart-tooltip>
56                             {{component.vendorName}}
57                         </div>
58
59                         <!-- Category -->
60                         <div class="table-col-general flex-item"  sdc-smart-tooltip>
61                             {{component.categories[0].name}}&nbsp;{{component.categories[0].subcategories[0].name}}
62                         </div>
63
64                         <!-- Version -->
65                         <div class="table-col-general flex-item"  sdc-smart-tooltip>
66                             {{component.csarVersion}}
67                         </div>
68
69                         <!-- Import And Update -->
70                         <div class="table-col-general flex-item"  sdc-smart-tooltip></div>
71
72                     </div>
73
74                     <div data-ng-repeat-end="" data-ng-if="component.packageId === selectedComponent.packageId" class="item-opened">
75
76                         <div class="item-opened-description">
77                             <div class="item-opened-description-title">VSP Description:</div>
78                             {{component.description}}
79                         </div>
80
81                         <div class="item-opened-metadata1">
82                             <div data-ng-if="isCsarComponentExists===true">
83                                 <div class="item-opened-metadata-title">VF'S Meta Data:</div>
84                                 <div><span class="th">Name:</span> {{componentFromServer.name}}</div>
85                                 <div><span class="th">Lifecycle:</span> {{componentFromServer.lifecycleState}}</div>
86                                 <div><span class="th">Creator:</span> {{componentFromServer.creatorFullName}}</div>
87                             </div>
88                         </div>
89
90                         <div class="item-opened-metadata2">
91                             <div data-ng-if="isCsarComponentExists===true">
92                                 <div class="item-opened-metadata-title">&nbsp;</div>
93                                 <div><span class="th">UUID:</span> {{componentFromServer.uuid}}</div>
94                                 <div><span class="th">Version:</span> {{componentFromServer.version}}</div>
95                                 <div><span class="th">Modifier:</span> {{componentFromServer.lastUpdaterFullName}}</div>
96                                 <div data-ng-if="componentFromServer.lifecycleState==='NOT_CERTIFIED_CHECKOUT' && componentFromServer.lastUpdaterUserId !== user.userId">
97                                     <span class="note">Designers cannot update a VSP if the VF is checked out by another user.</span>
98                                 </div>
99                                 <div data-ng-if="componentFromServer.lifecycleState==='READY_FOR_CERTIFICATION'">
100                                     <span class="note">Designers cannot update a VSP if the VF is in Ready for testing state.</span>
101                                 </div>
102                             </div>
103                         </div>
104
105                         <div class="item-opened-metadata3">
106                             <info-tooltip class="info-button" info-message-translate="{{isCsarComponentExists?'ON_BOARDING_UPDATE_INFO':'ON_BOARDING_IMPORT_INFO'}}" direction="left"></info-tooltip>
107                         </div>
108
109                         <div class="item-opened-icon">
110                             <span data-ng-if="isCsarComponentExists!==true"
111                                  class="sprite-new import-file-btn"
112                                  data-ng-click="doImportCsar()"
113                                  uib-tooltip="Import VSP"
114                                  tooltip-class="uib-custom-tooltip"
115                                  tooltip-placement="bottom"
116                                  data-tests-id="import-csar"></span>
117
118                             <span data-ng-if="isCsarComponentExists===true"
119                                  class="sprite-new refresh-file-btn"
120                                  uib-tooltip="Update VSP"
121                                  tooltip-class="uib-custom-tooltip"
122                                  tooltip-placement="bottom"
123                                  data-ng-class="{'disabled': (componentFromServer.lifecycleState==='NOT_CERTIFIED_CHECKOUT' && componentFromServer.lastUpdaterUserId!==user.userId) || componentFromServer.lifecycleState==='READY_FOR_CERTIFICATION'}"
124                                  data-ng-click="doUpdateCsar()"
125                                  data-tests-id="update-csar"></span>
126
127                             <span data-ng-click="downloadCsar(component.packageId)"
128                                  class="sprite-new download-file-btn hand"
129                                  uib-tooltip="Download VSP"
130                                  tooltip-class="uib-custom-tooltip"
131                                  tooltip-placement="bottom"
132                                  data-tests-id="download-csar"></span>
133                         </div>
134                         <loader data-display="isLoading" relative="true" size="small"></loader>
135                     </div>
136                     </div>
137
138                 </perfect-scrollbar>
139             </div><!-- End table body -->
140         </div><!-- End table -->
141     </div><!-- End table-container-flex -->
142     <div class="w-sdc-modal-footer classic"></div>
143
144 </sdc-modal>