Create local build profile for designer-client

update loader logo

Issue-ID: CCSDK-3072, CCSDK-2433

Signed-off-by: Ahmedeldeeb50 <ahmed.eldeeb.ext@orange.com>
Change-Id: I47bdc099727342ca449a14085f648ae9aa07cf69
diff --git a/cds-ui/designer-client/pom.xml b/cds-ui/designer-client/pom.xml
index 6ed71b2..7d735e4 100644
--- a/cds-ui/designer-client/pom.xml
+++ b/cds-ui/designer-client/pom.xml
@@ -73,6 +73,18 @@
                         <phase>generate-resources</phase>
                         <configuration>
                             <arguments>run build</arguments>
+                            <skip>${npm.skipBuild}</skip>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>npm build local</id>
+                        <goals>
+                            <goal>npm</goal>
+                        </goals>
+                        <phase>generate-resources</phase>
+                        <configuration>
+                            <arguments>run build:local</arguments>
+                            <skip>${npm.skipBuildLocal}</skip>
                         </configuration>
                     </execution>
                 </executions>
diff --git a/cds-ui/designer-client/src/app/modules/feature-modules/packages/configuration-dashboard/configuration-dashboard.component.ts b/cds-ui/designer-client/src/app/modules/feature-modules/packages/configuration-dashboard/configuration-dashboard.component.ts
index c69bf1b..7ab8ad7 100644
--- a/cds-ui/designer-client/src/app/modules/feature-modules/packages/configuration-dashboard/configuration-dashboard.component.ts
+++ b/cds-ui/designer-client/src/app/modules/feature-modules/packages/configuration-dashboard/configuration-dashboard.component.ts
@@ -120,7 +120,10 @@
                     this.downloadCBAPackage(bluePrintDetailModels);
                     this.packageCreationStore.clear();
                 }
-            }, err => { },
+                this.ngxService.stop();
+            }, err => {
+                this.ngxService.stop();
+            },
             () => {
                 //  this.ngxService.stop();
             });
@@ -132,7 +135,10 @@
                 const blob = new Blob([response], { type: 'application/octet-stream' });
                 this.currentBlob = blob;
                 this.packageCreationExtractionService.extractBlobToStore(blob);
-            }, err => { },
+            }, err => {
+                console.log(err);
+                this.ngxService.stop();
+            },
                 () => {
                     this.ngxService.stop();
                 });
diff --git a/cds-ui/designer-client/src/app/modules/feature-modules/packages/packages.module.ts b/cds-ui/designer-client/src/app/modules/feature-modules/packages/packages.module.ts
index e231ebe..0a43364 100644
--- a/cds-ui/designer-client/src/app/modules/feature-modules/packages/packages.module.ts
+++ b/cds-ui/designer-client/src/app/modules/feature-modules/packages/packages.module.ts
@@ -37,7 +37,7 @@
 import { ActionAttributesComponent } from './designer/action-attributes/action-attributes.component';
 import { MatInputModule, MatPaginatorModule, MatProgressSpinnerModule, MatSortModule, MatTableModule } from '@angular/material';
 import { TopologyTemplateComponent } from './package-creation/topology-template/topology-template.component';
-import {CollapseModule} from 'ngx-bootstrap/collapse';
+import { CollapseModule } from 'ngx-bootstrap/collapse';
 
 @NgModule({
     declarations: [PackagesDashboardComponent,
@@ -77,7 +77,35 @@
         AceEditorModule,
         DataTablesModule,
         // Import NgxUiLoaderModule
-        NgxUiLoaderModule,
+        NgxUiLoaderModule.forRoot({
+            bgsColor: 'red',
+            bgsOpacity: 0.5,
+            bgsPosition: 'bottom-right',
+            bgsSize: 60,
+            bgsType: 'ball-spin-clockwise',
+            blur: 5,
+            delay: 0,
+            fgsColor: '#63bdba',
+            fgsPosition: 'center-center',
+            fgsSize: 60,
+            fgsType: 'rectangle-bounce',
+            gap: 24,
+            logoPosition: 'center-center',
+            logoSize: 120,
+            logoUrl: 'assets/img/logo-icon.svg',
+            masterLoaderId: 'master',
+            overlayBorderRadius: '0',
+            overlayColor: 'rgba(40, 40, 40, 0.8)',
+            pbColor: 'red',
+            pbDirection: 'ltr',
+            pbThickness: 3,
+            hasProgressBar: true,
+            text: '',
+            textColor: '#FFFFFF',
+            textPosition: 'center-center',
+            maxTime: -1,
+            minTime: 300
+        }),
         TourMatMenuModule.forRoot(),
         MatInputModule,
         MatTableModule,
diff --git a/cds-ui/pom.xml b/cds-ui/pom.xml
index 3e7d534..5b12779 100644
--- a/cds-ui/pom.xml
+++ b/cds-ui/pom.xml
@@ -44,5 +44,24 @@
 
     <properties>
         <npm.executable>npm</npm.executable>
+        <!-- Properties for CDS-GUI to npm run build:local -->
+        <npm.skipBuild>false</npm.skipBuild>
+        <npm.skipBuildLocal>true</npm.skipBuildLocal>
     </properties>
+
+    <profiles>
+        <!-- Profile to either run npm build or npm build:local -->
+        <profile>
+            <id>npmLocal</id>
+            <activation>
+                <property>
+                    <name>npmLocal</name>
+                </property>
+            </activation>
+            <properties>
+                <npm.skipBuild>true</npm.skipBuild>
+                <npm.skipBuildLocal>false</npm.skipBuildLocal>
+            </properties>
+        </profile>
+    </profiles>
 </project>