1 <app-header></app-header>
3 <div class="new-wrapper">
4 <div class="container-fluid main-container">
5 <header class="page-title" style="padding: 18px 30px 10px;">
8 <ul class="breadcrumb-header">
9 <li><a routerLink="/packages">CBA Packages</a></li>
10 <i class="fa fa-angle-right ml-2 mr-2"></i>
11 <li>{{viewedPackage.artifactName}}</li>
14 <div class="col profile-help">
15 <nav class="navbar navbar-expand-lg navbar-light">
16 <ul class="navbar-nav ml-auto">
17 <li class="nav-item help-btn">
18 <a class="nav-link mr-2" href="https://wiki.onap.org/display/DW/CDS+Designer+Guide" target="_blank" [delay]="300"
19 tooltip="Help" placement="bottom"><i class="icon-info" aria-hidden="true"></i></a>
21 <div class="nav-item dropdown">
22 <input class="dropdown-toggle" type="text">
23 <div class="dropdown-text"><img src="../assets/img/img-user.jpeg" align="right"></div>
24 <ul class="dropdown-content">
26 <a href="#">Username</a>
29 <a href="#">Settings</a>
32 <a href="#">Projects</a>
35 <a href="#">Log out</a>
39 <!-- <li class="nav-item dropdown">
40 <a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
43 <div class="dropdown-menu" aria-labelledby="navbarDropdown">
44 <a class="dropdown-item" href="#">Action</a>
45 <a class="dropdown-item" href="#">Another action</a>
46 <div class="dropdown-divider"></div>
47 <a class="dropdown-item" href="#">Something else here</a>
52 <!-- <ul class="menu-dropdown userProfile">
53 <li><button type="button" class="btn package-info-btn" data-toggle="modal"
54 data-target="#exampleModalLong">
55 <i class="icon-info" aria-hidden="true"></i>
58 <div class="dropdown">
59 <input class="dropdown-toggle" type="text">
60 <div class="dropdown-text">User name</div>
61 <ul class="dropdown-content">
63 <a href="#">Settings</a>
66 <a href="#">Projects</a>
69 <a href="#">Log out</a>
80 <div class="container-fluid body-container">
82 <div class="container">
83 <div class="creat-action-container">
85 <button class="action-button save" (click)="editBluePrint()" [disabled]="!isSaveEnabled">
86 <i class="icon-save-sm" aria-hidden="true"></i>
89 <button data-target="#discardChangesModal" data-toggle="modal" class="action-button"
90 [disabled]="!isSaveEnabled">
91 <i class="icon-discard-sm" aria-hidden="true"></i>
92 <span>Discard Changes</span>
96 <button class="action-button">
97 <i class="icon-clone-sm" aria-hidden="true"></i>
101 <a href="#" class="action-button">
102 <i class="icon-archive-sm" aria-hidden="true"></i>
106 <a class="action-button"
107 (click)="downloadPackage(viewedPackage.artifactName,viewedPackage.artifactVersion)">
108 <i class="icon-download" aria-hidden="true"></i>
109 <span>Download</span>
112 <a data-target="#removePackageModal" data-toggle="modal" class="action-button">
113 <i class="icon-delete-sm" aria-hidden="true"></i>
118 <div class="card creat-card view-package-container">
120 <div class="col-1 text-center"><i class="package-type-icon icon-topologyView-active"></i></div>
122 <div class="row mb-4">
123 <div class="col-12 package-name deployed">
124 {{viewedPackage.artifactName}}
125 <img src="/assets/img/icon-deploy-inactive.svg" class="deply-status-icon">
126 <span class="package-version">v{{viewedPackage.artifactVersion}}</span>
128 <div class="col-12 package-description">
129 Last modified {{ viewedPackage.createdDate | date:'short' }} By
130 {{viewedPackage.updatedBy ? viewedPackage.updatedBy.split('<')[0] : ""}}
133 <div class="row package-auth-info">
135 <p><b>Author Name</b></p>
136 <span> {{viewedPackage.updatedBy ? viewedPackage.updatedBy.split('<')[0] : ""}}</span>
138 <!--<div class="col-4">
139 <p><b>Author Email</b></p>
140 <span>shaaban.eltanany.ext@orange.com</span>
143 <p><b>Contributions</b></p>
144 <ul class="package-contributers">
146 <button type="button" class="border-fade" data-toggle="tooltip"
147 data-placement="bottom" title="User name">
148 <img src="/assets/img/img-user1.jpeg">
152 <button type="button" data-toggle="tooltip" data-placement="bottom"
154 <img src="/assets/img/img-user2.jpg">
158 <button type="button" data-toggle="tooltip" data-placement="bottom"
160 <img src="/assets/img/img-user3.jpg">
164 <a href="">5 contributors</a>
170 <div class="col-2 package-view-button">
171 <!-- <button class="btn btn-sm btn-primary mb-2" (click)="goToDesignerMode()">Designer
174 <!-- Button trigger modal - 1st Action -->
176 <button type="button" class="btn btn-sm btn-primary mb-2" data-toggle="modal"
177 data-target="#exampleModalLong">
178 <i class="icon-topologyView-active"></i> Designer Mode
180 <!-- Designer Modal -->
181 <div class="modal fade createActionModal" id="exampleModalLong" tabindex="-1" role="dialog"
182 aria-labelledby="exampleModalLongTitle" aria-hidden="true">
183 <div class="modal-dialog" role="document">
184 <div class="modal-content">
185 <div class="modal-header">
186 <h5 class="modal-title" id="exampleModalLongTitle"></h5>
187 <button type="button" class="close" data-dismiss="modal" aria-label="Close"
189 <i class="icon-action-close"></i>
192 <div class="modal-body">
193 <div id="carouselExampleIndicators" class="carousel slide"
194 data-ride="carousel" data-interval="false">
195 <div class="carousel-inner">
197 <div class="carousel-item active">
198 <h3 class="mainHead">Create an action</h3>
199 <h1>How would you like to get started?</h1>
202 <div class="col-3 d-flex">
204 data-target="#carouselExampleIndicators"
206 <div class="card actionType custom">
207 <div class="card-body">
209 <p>Start with your own settings</p>
211 data-target="#carouselExampleIndicators"
212 data-slide-to="1" class="btn">
219 <!--Default Action-->
220 <div class="col-3 d-flex">
222 data-target="#carouselExampleIndicators"
224 <div class="card actionType default">
225 <div class="card-body">
227 <p>Explore preset actions from CDS
230 data-target="#carouselExampleIndicators"
231 data-slide-to="2" class="btn">
239 <div class="col-3 d-flex">
241 data-target="#carouselExampleIndicators"
243 <div class="card actionType recent">
244 <div class="card-body">
246 <p>Re-use recent actions of your
250 data-target="#carouselExampleIndicators"
251 data-slide-to="3" class="btn">
259 <div class="col-3 d-flex">
261 data-target="#carouselExampleIndicators"
263 <div class="card actionType import">
264 <div class="card-body">
266 <p>Import your own action files</p>
268 data-target="#carouselExampleIndicators"
269 data-slide-to="4" class="btn">
278 <div class="col text-center">
279 <button class="btn skip-btn"
280 (click)="goToDesignerMode(viewedPackage.id)">
287 <!--Custom Action Form-->
288 <div class="carousel-item">
289 <button data-target="#carouselExampleIndicators"
290 data-slide-to="0" title="Back" class="btn back"><i
291 class="icon-action-back"></i></button>
292 <h1>Create Custom Action</h1>
293 <div class="form-group text-center">
294 <input type="text" [(ngModel)]="customActionName"
295 class="form-control customAction"
296 placeholder="Type Action Name" autofocus>
297 <button type="button"
298 (click)="goToDesignerMode(viewedPackage.id)"
299 class="btn submit">Start
304 <!--Default Actions Form-->
305 <div class="carousel-item">
306 <button data-target="#carouselExampleIndicators"
307 data-slide-to="0" title="Back" class="btn back"><i
308 class="icon-action-back"></i></button>
309 <h1>Choose Action(s) from CDS Default Package </h1>
310 <div class="actionFormWrapper">
311 <div class="row mb-3">
312 <div class="col sort-packages">
313 <label class="actionlabel">Version</label>
314 <div class="dropdown" style="width: 90px">
315 <input class="dropdown-toggle" type="text">
316 <div class="dropdown-text">1.6.2</div>
317 <ul class="dropdown-content">
328 <input type="text" class="form-control searchInput"
329 placeholder="Search">
332 <div class="row actionsListScroll">
334 <div class="actionName">
335 <div class="custom-control custom-checkbox">
336 <input type="checkbox"
337 class="custom-control-input"
338 id="customControlValidation1"
340 <label class="custom-control-label"
341 for="customControlValidation1">config-assign</label>
346 <div class="actionName">
347 <div class="custom-control custom-checkbox">
348 <input type="checkbox"
349 class="custom-control-input"
350 id="customControlValidation2"
352 <label class="custom-control-label"
353 for="customControlValidation2">config-assign-test</label>
358 <div class="actionName">
359 <div class="custom-control custom-checkbox">
360 <input type="checkbox"
361 class="custom-control-input"
362 id="customControlValidation3"
364 <label class="custom-control-label"
365 for="customControlValidation3">config-deploy</label>
370 <div class="actionName">
371 <div class="custom-control custom-checkbox">
372 <input type="checkbox"
373 class="custom-control-input"
374 id="customControlValidation4"
376 <label class="custom-control-label"
377 for="customControlValidation4">config-modify</label>
382 <div class="actionName">
383 <div class="custom-control custom-checkbox">
384 <input type="checkbox"
385 class="custom-control-input"
386 id="customControlValidation5"
388 <label class="custom-control-label"
389 for="customControlValidation5">config-assign1</label>
394 <div class="actionName">
395 <div class="custom-control custom-checkbox">
396 <input type="checkbox"
397 class="custom-control-input"
398 id="customControlValidation5"
400 <label class="custom-control-label"
401 for="customControlValidation5">config-assign1</label>
406 <div class="actionName">
407 <div class="custom-control custom-checkbox">
408 <input type="checkbox"
409 class="custom-control-input"
410 id="customControlValidation5"
412 <label class="custom-control-label"
413 for="customControlValidation5">config-assign1</label>
418 <div class="actionName">
419 <div class="custom-control custom-checkbox">
420 <input type="checkbox"
421 class="custom-control-input"
422 id="customControlValidation5"
424 <label class="custom-control-label"
425 for="customControlValidation5">config-assign1</label>
430 <div class="actionName">
431 <div class="custom-control custom-checkbox">
432 <input type="checkbox"
433 class="custom-control-input"
434 id="customControlValidation5"
436 <label class="custom-control-label"
437 for="customControlValidation5">config-assign1</label>
442 <div class="actionName">
443 <div class="custom-control custom-checkbox">
444 <input type="checkbox"
445 class="custom-control-input"
446 id="customControlValidation5"
448 <label class="custom-control-label"
449 for="customControlValidation5">config-assign1</label>
454 <div class="actionName">
455 <div class="custom-control custom-checkbox">
456 <input type="checkbox"
457 class="custom-control-input"
458 id="customControlValidation5"
460 <label class="custom-control-label"
461 for="customControlValidation5">config-assign1</label>
467 <div class="col text-center">
468 <p class="selectedActions">0 selected</p>
469 <button type="button"
470 (click)="goToDesignerMode(viewedPackage.id)"
471 class="btn submit">Start
477 <!--Recent Actions Form-->
478 <div class="carousel-item">
479 <button data-target="#carouselExampleIndicators"
480 data-slide-to="0" title="Back" class="btn back"><i
481 class="icon-action-back"></i></button>
482 <h1>Choose Action(s) from Recent Packages</h1>
483 <div class="actionFormWrapper">
484 <div class="row mb-3">
485 <div class="col sort-packages">
486 <label class="actionlabel">Package
488 <div class="dropdown">
489 <input class="dropdown-toggle" type="text">
490 <div class="dropdown-text">CDS (v 1.0.0)
492 <ul class="dropdown-content">
494 <a>Test Package (v 1.1.8)</a>
497 <a>Test Package (v 1.1.8)</a>
500 <a>Test Package (v 1.1.8)</a>
503 <a>Test Package (v 1.1.8)</a>
509 <input type="text" class="form-control searchInput"
510 placeholder="Search">
513 <div class="row actionsListScroll">
515 <div class="actionName">
516 <div class="custom-control custom-checkbox">
517 <input type="checkbox"
518 class="custom-control-input"
519 id="customControlValidation1"
521 <label class="custom-control-label"
522 for="customControlValidation1">config-assign</label>
527 <div class="actionName">
528 <div class="custom-control custom-checkbox">
529 <input type="checkbox"
530 class="custom-control-input"
531 id="customControlValidation2"
533 <label class="custom-control-label"
534 for="customControlValidation2">config-assign-test</label>
539 <div class="actionName">
540 <div class="custom-control custom-checkbox">
541 <input type="checkbox"
542 class="custom-control-input"
543 id="customControlValidation3"
545 <label class="custom-control-label"
546 for="customControlValidation3">config-deploy</label>
551 <div class="actionName">
552 <div class="custom-control custom-checkbox">
553 <input type="checkbox"
554 class="custom-control-input"
555 id="customControlValidation4"
557 <label class="custom-control-label"
558 for="customControlValidation4">config-modify</label>
563 <div class="actionName">
564 <div class="custom-control custom-checkbox">
565 <input type="checkbox"
566 class="custom-control-input"
567 id="customControlValidation5"
569 <label class="custom-control-label"
570 for="customControlValidation5">config-assign1</label>
575 <div class="actionName">
576 <div class="custom-control custom-checkbox">
577 <input type="checkbox"
578 class="custom-control-input"
579 id="customControlValidation5"
581 <label class="custom-control-label"
582 for="customControlValidation5">config-assign1</label>
587 <div class="actionName">
588 <div class="custom-control custom-checkbox">
589 <input type="checkbox"
590 class="custom-control-input"
591 id="customControlValidation5"
593 <label class="custom-control-label"
594 for="customControlValidation5">config-assign1</label>
599 <div class="actionName">
600 <div class="custom-control custom-checkbox">
601 <input type="checkbox"
602 class="custom-control-input"
603 id="customControlValidation5"
605 <label class="custom-control-label"
606 for="customControlValidation5">config-assign1</label>
611 <div class="actionName">
612 <div class="custom-control custom-checkbox">
613 <input type="checkbox"
614 class="custom-control-input"
615 id="customControlValidation5"
617 <label class="custom-control-label"
618 for="customControlValidation5">config-assign1</label>
623 <div class="actionName">
624 <div class="custom-control custom-checkbox">
625 <input type="checkbox"
626 class="custom-control-input"
627 id="customControlValidation5"
629 <label class="custom-control-label"
630 for="customControlValidation5">config-assign1</label>
635 <div class="actionName">
636 <div class="custom-control custom-checkbox">
637 <input type="checkbox"
638 class="custom-control-input"
639 id="customControlValidation5"
641 <label class="custom-control-label"
642 for="customControlValidation5">config-assign1</label>
648 <div class="col text-center">
649 <p class="selectedActions">0 selected</p>
650 <button type="button"
651 class="btn submit">Start
657 <!--Import Actions Form-->
658 <div class="carousel-item">
659 <button data-target="#carouselExampleIndicators"
660 data-slide-to="0" title="Back" class="btn back"><i
661 class="icon-action-back"></i></button>
662 <h1>Import Action(s)</h1>
663 <div class="actionFormWrapper">
666 <ngx-file-drop accept=".json"
667 dropZoneLabel="Drop files here"
668 (onFileDrop)="dropped($event)"
669 (onFileOver)="fileOver($event)"
670 (onFileLeave)="fileLeave($event)">
671 <ng-template ngx-file-drop-content-tmp
672 let-openFileSelector="openFileSelector">
673 <div class="folder-upload">
675 src="assets/img/folder-upload.svg"/>
677 <div class="folder-upload-text">
680 <div class="folder-upload-text">or
681 <button type="button"
682 class="btn btn-sm btn-primary"
683 (click)="openFileSelector()">
688 <div class="folder-upload-type">
694 <div class="upload-table">
695 <table class="table">
698 *ngFor="let item of uploadedFiles; let i=index">
700 src="assets/img/icon-file-code.svg"/>
702 <th>{{ item.name }}</th>
703 <th width="40" class="text-right">
705 src="assets/img/icon-remove-file.svg"/>
714 <div class="col text-center">
715 <button type="button"
716 class="btn submit mt-4">Import
728 <button type="button" class="btn btn-sm mb-2 btn-enrich" data-toggle="modal"
729 data-target="#enrichModal">
730 <i class="icon-enrich" aria-hidden="true"></i> Manual Enrich
734 <button class="btn btn-sm btn-deploy" (click)="deployCurrentPackage()"><i
735 class="fa fa-play-circle"></i> Deploy
745 <div class="nav nav-tabs " id="nav-tab" role="tablist">
746 <a [classList]="metadataClasses" id="nav-metadata-tab" data-toggle="tab"
747 href="#nav-metadata" role="tab" aria-controls="nav-metadata" aria-selected="true"
748 autofocus #nameit (focusout)="saveMetaData()">METADATA</a>
749 <a class="nav-item nav-link" id="nav-template-tab" data-toggle="tab" href="#nav-template"
750 role="tab" aria-controls="nav-template" aria-selected="false">TEMPLATE & MAPPING</a>
751 <a class="nav-item nav-link" id="nav-scripts-tab" data-toggle="tab" href="#nav-scripts"
752 role="tab" aria-controls="nav-scripts" aria-selected="false">SCRIPTS</a>
753 <a class="nav-item nav-link" id="nav-imports-tab" data-toggle="tab" href="#nav-imports"
754 role="tab" aria-controls="nav-imports" aria-selected="false">DEFINITIONS</a>
755 <a class="nav-item nav-link" id="nav-authentication-tab" data-toggle="tab"
756 href="#nav-authentication" role="tab" aria-controls="nav-authentication"
757 aria-selected="false">EXTERNAL SYSTEM AUTHENTICATION PROPERTIES</a>
762 <div class="row mt-4">
764 <div class="tab-content" id="nav-tabContent">
765 <div class="tab-pane fade show active" id="nav-metadata" role="tabpanel"
766 aria-labelledby="nav-metadata-tab" (click)="clickEvent()">
767 <app-metadata-tab></app-metadata-tab>
769 <div class="tab-pane fade" id="nav-template" role="tabpanel"
770 aria-labelledby="nav-template-tab">
771 <app-template-mapping></app-template-mapping>
773 <div class="tab-pane fade" id="nav-scripts" role="tabpanel"
774 aria-labelledby="nav-scripts-tab">
775 <app-scripts-tab></app-scripts-tab>
777 <div class="tab-pane fade" id="nav-imports" role="tabpanel"
778 aria-labelledby="nav-imports-tab">
779 <app-imports-tab></app-imports-tab>
782 <div class="tab-pane fade" id="nav-authentication" role="tabpanel"
783 aria-labelledby="nav-authentication-tab">
784 <div class="card creat-card">
785 <div class="editor-container">
786 <app-dsl-definitions-tab></app-dsl-definitions-tab>
798 <!-- Enrich Modal -->
799 <div class="modal fade enrichModal" id="enrichModal" tabindex="-1" role="dialog" aria-labelledby="enrichModalLabel"
801 <div class="modal-dialog" role="document">
802 <div class="modal-content">
803 <div class="modal-header">
804 <h5 class="modal-title" id="enrichModalLabel">Manual Enrich</h5>
805 <button type="button" class="close" data-dismiss="modal" aria-label="Close">
806 <img src="assets/img/icon-close.svg"/>
809 <div class="modal-body">
810 <ul class="defintionsNote">
811 <li><b>To do manual enrichment: </b></li>
812 <li>1. Copy and paste "workflows" and "node_templates"</li>
813 <li>2. Press <b>Enrich</b> button</li>
815 <ace-editor [(text)]="vlbDefinition.topology_template.content" [mode]="'javascript'"
816 [autoUpdateContent]="true"
817 [durationBeforeCallback]="1000" (textChanged)="textChanged($event)" [theme]="'eclipse'"
819 style="height:300px;">
822 <div class="modal-footer">
823 <button type="button" class="btn btn-secondary" data-dismiss="modal">Cancel</button>
824 <button type="button" data-dismiss="modal" class="btn btn-primary btn-enrich"
825 (click)="enrichBluePrint()">Enrich
831 <!-- Delete Modal -->
832 <div class="modal fade" id="removePackageModal" tabindex="-1" role="dialog" aria-labelledby="removePackageModalLabel"
834 <div class="modal-dialog" role="document">
835 <div class="modal-content">
836 <div class="modal-header">
837 <h5 class="modal-title" id="removePackageModalLabel">Delete Script</h5>
838 <button type="button" class="close" data-dismiss="modal" aria-label="Close">
839 <i class="icon-action-close"></i>
842 <div class="modal-body">
843 <p>Are you sure you want to delete this package?</p>
845 <div class="modal-footer">
846 <button type="button" class="btn btn-secondary" data-dismiss="modal">Cancel</button>
847 <button type="button" (click)="deletePackage()" data-dismiss="modal"
848 class="btn btn-primary">Delete
855 <div class="modal fade" id="discardChangesModal" tabindex="-1" role="dialog" aria-labelledby="discardChangesModalLabel"
857 <div class="modal-dialog" role="document">
858 <div class="modal-content">
859 <div class="modal-header">
860 <h5 class="modal-title" id="discardChangesModalLabel">Discard Changes</h5>
861 <button type="button" class="close" data-dismiss="modal" aria-label="Close">
862 <i class="icon-action-close"></i>
865 <div class="modal-body">
866 <p>Are you sure you want to discard the changes?</p>
868 <div class="modal-footer">
869 <button type="button" class="btn btn-secondary" data-dismiss="modal">Cancel</button>
870 <button type="button" (click)="discardChanges()" data-dismiss="modal"
871 class="btn btn-primary">Discard Changes