Commit a5e4dffa authored by MAGHOUZ's avatar MAGHOUZ
Browse files

Merge branch 'develop/mvp_cops' into 'master'

Develop/mvp cops

See merge request !1
parents 1791bfed 8b693b40
.git
.firebase
.editorconfig
/node_modules
/e2e
/docs
.gitignore
*.zip
*.md
......@@ -40,3 +40,4 @@ testem.log
# System Files
.DS_Store
Thumbs.db
/.github
# ---------------------------------------------------------------
# Global
# ---------------------------------------------------------------
# to build docker in docker
services:
- docker:dind
variables:
DOCKER_DRIVER: overlay2
# stages (main steps of pipeline)
stages:
- Deploy
# ---------------------------------------------------------------
# Produce docker image
# ---------------------------------------------------------------
build_and_push_docker:
# pipeline stage
stage: Deploy
# gitlab runner
tags: [cops-runner]
# docker image used to run build_and_push_docker
image: docker:latest
# commands to execute
script:
- test -n "${CI_BUILD_TOKEN}" && docker login -u gitlab-ci-token -p ${CI_BUILD_TOKEN} ${CI_REGISTRY} || true
- docker build -t ${CI_REGISTRY}/${CI_PROJECT_PATH}/${CI_PROJECT_NAME}:${CI_COMMIT_TAG} .
- docker push ${REGISTRY_PATH} ${CI_REGISTRY}/${CI_PROJECT_PATH}/${CI_PROJECT_NAME}:${CI_COMMIT_TAG}
when: manual
\ No newline at end of file
## [2.5.0] - 2020-10-07
### Updates
- update to Angular 10
- update all dependencies to match Angular 10 version
## [2.4.0] - 2020-03-05
### Updates
- update to Angular 9
- update all dependencies to match Angular 9 version
## [2.3.0] - 2019-06-11
### Updates
- update to Angular 8
- update all dependencies to match Angular 8 version
```
@agm/core 1.0.0-beta.5 → 1.0.0-beta.6
@angular/animations 7.0.2 → 8.0.0
@angular/cdk 7.0.2 → 8.0.1
@angular/common 7.0.2 → 8.0.0
@angular/compiler 7.0.2 → 8.0.0
@angular/core 7.0.2 → 8.0.0
@angular/forms 7.0.2 → 8.0.0
@angular/http 7.0.2 → 7.2.15
@angular/material 7.0.2 → 8.0.1
@angular/platform-browser 7.0.2 → 8.0.0
@angular/platform-browser-dynamic 7.0.2 → 8.0.0
@angular/platform-server 7.0.2 → 8.0.0
@angular/router 7.0.2 → 8.0.0
ajv 6.4.0 → 6.10.0
bootstrap 4.1.0 → 4.3.1
bootstrap-material-design 4.1.1 → 4.1.2
chartist 0.11.0 → 0.11.2
core-js 2.4.1 → 3.1.3
express 4.16.3 → 4.17.1
googleapis 28.1.0 → 40.0.0
jquery 3.2.1 → 3.4.1
moment 2.22.1 → 2.24.0
perfect-scrollbar 1.1.0 → 1.4.0
popper.js 1.14.3 → 1.15.0
rxjs 6.3.3 → 6.5.2
rxjs-compat 6.3.3 → 6.5.2
zone.js 0.8.26 → 0.9.1
@angular-devkit/build-angular 0.6.3 → 0.800.2
@angular/cli 7.0.2 → 8.0.2
@angular/compiler-cli 7.0.2 → 8.0.0
@angular/language-service 7.0.2 → 8.0.0
@types/bootstrap 3.3.32 → 4.3.0
@types/chartist 0.9.34 → 0.9.46
@types/googlemaps 3.30.8 → 3.36.4
@types/jasmine 2.5.38 → 3.3.13
@types/jquery 1.10.31 → 3.3.29
@types/node 6.0.73 → 12.0.7
codelyzer 4.2.1 → 5.1.0
jasmine-core 3.3.0 → 3.4.0
karma 2.0.0 → 4.1.0
karma-cli 1.0.1 → 2.0.0
karma-coverage-istanbul-reporter 1.4.2 → 2.0.5
karma-jasmine 1.1.1 → 2.0.1
karma-jasmine-html-reporter 1.4.0 → 1.4.2
protractor 5.3.1 → 5.4.2
ts-node 5.0.1 → 8.2.0
tslint 5.9.1 → 5.17.0
typescript 3.1.6 → 3.4.5
```
### Bug fixing
- browser console error
```
href="#pablo" -> href="javascript:void(0)"
href="#" -> href="javascript:void(0)"
```
- form-validation error from the `_forms.scss` file
```
@include form-validation-state("valid", $label-color); -> @include form-validation-state("valid", $label-color, $form-feedback-icon-valid);
```
- added hash for google url validation
## [2.2.0] - 2018-11-14
### Changes
- update to Angular 7
- update all dependencies to match Angular 7 version
## [2.1.1] - 2018-05-23
### Fixes
- changed some links
## [2.1.0] - 2018-04-27
### Fixes
- changed file structure
- moved documentation online
## [2.0.0] - 2018-04-20
### Fixes
- added bootstrap 4
- added angular 5
## [1.4.2] - 2017-10-01
### Fixes
- added Perfect Scrollbar
- added scrollTop on route change
- added closeSidebar on mobile
- autocompile scss files
- fixes for IE
- update package dependencies to 4.4.4
## [1.4.1] - 2017-09-19
### Material
- added material.init()
- fixed input float problem
- fixed checkboxes in tabs
## [1.4.0] - 2017-08-23
### Changes for Angular 4
- added angular-cli
- update to Angular 4
## [v1.3.0] 2017-08-23
### skipped for sync with Angular 4 version convention
## [1.2.0] - 2017-04-05
### Added
- added Upgrade to PRO page
- update package
- made sidebar dynamic
## [1.1.1] - 2017-03-21
### Added
- added "@types/core-js": "0.9.35" in package
## [1.1.0] - 2017-03-20
### small fix
## [1.0.0] - 2017-01-30
### initial Release
### STAGE 1: Build ###
FROM node:12.7-alpine AS build
WORKDIR /usr/src/app
COPY package.json package-lock.json ./
RUN npm install
COPY . .
RUN npm run build:prod
RUN rm -R /usr/src/app/node_modules
### STAGE 2: Run ###
FROM nginx:1.17.1-alpine
RUN mkdir /usr/share/nginx/html/cops-ui
COPY --from=build /usr/src/app/dist/* /usr/share/nginx/html/cops-ui/
<!--
IMPORTANT: Please use the following link to create a new issue:
https://www.creative-tim.com/new-issue/material-dashboard-angular2
**If your issue was not created using the app above, it will be closed immediately.**
-->
<!--
Love Creative Tim? Do you need Angular, React, Vuejs or HTML? You can visit:
👉 https://www.creative-tim.com/bundles
👉 https://www.creative-tim.com
-->
MIT License
Copyright (c) 2017 Creative Tim (www.creative-tim.com)
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
#COps UI
IHM Console Operator
## Development
### Install NodeJS with npm
https://nodejs.org/fr/
https://www.npmjs.com/get-npm
### Install the Angular CLI
https://angular.io/guide/setup-local#install-the-angular-cli
### Retrieve and install project
```bash
git clone https://gitlab.ifremer.fr/cops/cops-ui.git
npm install
```
### Run the project
```bash
ng serve
```
Vous pouvez ensuite accéder à l'application :
- <http://127.0.0.1:4200/>
### Run the project with its backend
configure web service api url in `app.module.ts`
\ No newline at end of file
{
"$schema": "./node_modules/@angular/cli/lib/config/schema.json",
"version": 1,
"newProjectRoot": "projects",
"projects": {
"material-dashboard-angular": {
"root": "",
"sourceRoot": "src",
"projectType": "application",
"architect": {
"build": {
"builder": "@angular-devkit/build-angular:browser",
"options": {
"outputPath": "dist",
"index": "src/index.html",
"main": "src/main.ts",
"tsConfig": "src/tsconfig.app.json",
"polyfills": "src/polyfills.ts",
"assets": [
"src/assets",
"src/favicon.ico"
],
"styles": [
"node_modules/perfect-scrollbar/css/perfect-scrollbar.css",
"src/assets/scss/material-dashboard.scss",
"src/assets/css/demo.css"
],
"scripts": [
"node_modules/jquery/dist/jquery.js",
"node_modules/popper.js/dist/umd/popper.js",
"node_modules/bootstrap-material-design/dist/js/bootstrap-material-design.min.js",
"node_modules/arrive/src/arrive.js",
"node_modules/moment/moment.js",
"node_modules/perfect-scrollbar/dist/perfect-scrollbar.min.js",
"node_modules/bootstrap-notify/bootstrap-notify.js",
"node_modules/chartist/dist/chartist.js"
],
"allowedCommonJsDependencies" : [
"rxjs/add/operator/filter",
"jquery",
"chartist"
]
},
"configurations": {
"production": {
"optimization": true,
"outputHashing": "all",
"sourceMap": false,
"extractCss": true,
"namedChunks": false,
"aot": true,
"extractLicenses": true,
"vendorChunk": false,
"buildOptimizer": true,
"fileReplacements": [
{
"replace": "src/environments/environment.ts",
"with": "src/environments/environment.prod.ts"
}
]
}
}
},
"serve": {
"builder": "@angular-devkit/build-angular:dev-server",
"options": {
"browserTarget": "material-dashboard-angular:build"
},
"configurations": {
"production": {
"browserTarget": "material-dashboard-angular:build:production"
}
}
},
"extract-i18n": {
"builder": "@angular-devkit/build-angular:extract-i18n",
"options": {
"browserTarget": "material-dashboard-angular:build"
}
},
"test": {
"builder": "@angular-devkit/build-angular:karma",
"options": {
"main": "src/test.ts",
"karmaConfig": "./karma.conf.js",
"polyfills": "src/polyfills.ts",
"tsConfig": "src/tsconfig.spec.json",
"scripts": [
"node_modules/jquery/dist/jquery.js",
"node_modules/popper.js/dist/umd/popper.js",
"node_modules/bootstrap-material-design/dist/js/bootstrap-material-design.min.js",
"node_modules/arrive/src/arrive.js",
"node_modules/moment/moment.js",
"node_modules/perfect-scrollbar/dist/perfect-scrollbar.min.js",
"node_modules/bootstrap-notify/bootstrap-notify.js",
"node_modules/chartist/dist/chartist.js"
],
"styles": [
"node_modules/perfect-scrollbar/css/perfect-scrollbar.css",
"src/assets/scss/material-dashboard.scss",
"src/assets/css/demo.css"
],
"assets": [
"src/assets",
"src/favicon.ico"
]
}
},
"lint": {
"builder": "@angular-devkit/build-angular:tslint",
"options": {
"tsConfig": [
"src/tsconfig.app.json",
"src/tsconfig.spec.json"
],
"exclude": []
}
}
}
},
"material-dashboard-angular-e2e": {
"root": "",
"sourceRoot": "",
"projectType": "application",
"architect": {
"e2e": {
"builder": "@angular-devkit/build-angular:protractor",
"options": {
"protractorConfig": "./protractor.conf.js",
"devServerTarget": "material-dashboard-angular:serve"
}
},
"lint": {
"builder": "@angular-devkit/build-angular:tslint",
"options": {
"tsConfig": [
"e2e/tsconfig.e2e.json"
],
"exclude": []
}
}
}
}
},
"defaultProject": "material-dashboard-angular",
"schematics": {
"@schematics/angular:component": {
"prefix": "app",
"styleext": "scss"
},
"@schematics/angular:directive": {
"prefix": "app"
}
},
"cli": {
"analytics": false
}
}
This diff is collapsed.
body{
background-color: #E5E5E5;
color: #3C4858;
}
/* PRESENTION PAGE */
/* Section Components */
.presentation-page{
overflow-x: hidden;
}
.section-components .title{
margin-top: 60px;
margin-bottom: 5px;
}
.section-components .description{
margin-top: 35px;
}
.section-components .image-container{
height: 560px;
position: relative;
}
.section-components .components-macbook{
width: auto;
left: -100px;
top: 0;
height: 100%;
position: absolute;
}
.section-components .table-img,
.section-components .share-btn-img,
.section-components .coloured-card-btn-img,
.section-components .coloured-card-img,
.section-components .social-img,
.section-components .pin-btn-img{
position: absolute;
box-shadow: 0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12), 0 5px 5px -3px rgba(0, 0, 0, 0.2);
}
.section-components .coloured-card-img{
left: 90%;
top: 11%;
height: 90px;
border-radius: 2px;
}
.section-components .social-img{
left: 70%;
top: 67%;
height: 40px;
}
.section-components .coloured-card-btn-img{
left: 35%;
top: 2%;
height: 125px;
border-radius: 6px;
}
.section-components .table-img{
left: -13%;
top: 27%;
height: 175px;
border-radius: 2px;
}
.section-components .pin-btn-img{
left: 0%;
top: 68%;
height: 25px;
border-radius: 3px;
}
.section-components .share-btn-img{
left: 3%;
top: -3%;
height: 25px;
}
/* Section Content */
.section-content .section-description{
margin-top: 100px;
}
.section-content .title{
margin-bottom: 5px;
}
.section-content .section-description .title + .description{
margin-top: 0;
}
.section-content .description{
margin-top: 35px;
}
.section-content .image-container{
max-width: 900px;
position: relative;
}
.section-content .image-container .ipad-img{
width: 100%;
transition: transform .6s .9s;
z-index: 2;
}
.section-content .image-container .area-img,
.section-content .image-container .info-img{
position: absolute;
box-shadow: 0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12), 0 5px 5px -3px rgba(0, 0, 0, 0.2);
opacity: 0;
transform: translate3D(0px, 100px, 0px);
-webkit-transform: translate3D(0px, 100px, 0px);
}
.section-content .image-container .area-img{
top: 10%;
left: 60%;
height: 300px;
width: 250px;
z-index: 2;
-webkit-transition: all 1s ease-out 0s;
-moz-transition: all 1s ease-out 0s;
-o-transition: all 1s ease-out 0s;
-ms-transition: all 1s ease-out 0s;
transition: all 1s ease-out 0s;
}
.section-content .image-container .info-img{
top: 50%;
left: 0%;
height: 200px;
width: 300px;
-webkit-transition: all 1s ease-out 0s;
-moz-transition: all 1s ease-out 0s;
-o-transition: all 1s ease-out 0s;
-ms-transition: all 1s ease-out 0s;
transition: all 1s ease-out 0s;
}
.animated{
transform: translate3D(0px, 0px, 0px) !important;
-webkit-transform: translate3D(0px, 0px, 0px) !important;
opacity: 1 !important;
}
/* animated images */
@-webkit-keyframes Floatingy{
from {-webkit-transform:translate(0, 0px);}
65% {-webkit-transform:translate(50px, 0);}
to {-webkit-transform: translate(0, -0px);}
}
@-moz-keyframes Floatingy{
from {-moz-transform:translate(0, 0px);}
65% {-moz-transform:translate(50px, 0);}
to {-moz-transform: translate(0, -0px);}
}
@-webkit-keyframes Floatingx{
from {-webkit-transform:translate(50px, 0px);}
65% {-webkit-transform:translate(0, 0);}
to {-webkit-transform: translate(50px, -0px);}
}
@-moz-keyframes Floatingx{
from {-moz-transform:translate(50px, 0px);}
65% {-moz-transform:translate(0, 0);}
to {-moz-transform: translate(50px, -0px);}
}
.table-img, .coloured-card-img, .coloured-card-btn-img, .pin-btn-img, .share-btn-img, .social-img{
-webkit-animation-iteration-count: infinite;
-webkit-animation-timing-function: ease-in-out;
-moz-animation-iteration-count: infinite;
-moz-animation-timing-function: ease-in-out;
-webkit-animation-name: Floatingy;
-moz-animation-name: Floatingy;
float: left;
}
.table-img{
-webkit-animation-duration: 14s;
-moz-animation-duration: 14s;
-webkit-animation-name: Floatingx;
-moz-animation-name: Floatingx;
}
.coloured-card-img{
-webkit-animation-duration: 10s;
-moz-animation-duration: 10s;
-webkit-animation-name: Floatingx;
-moz-animation-name: Floatingx;
}
.coloured-card-btn-img{
-webkit-animation-duration: 18s;
-moz-animation-duration: 18s;
}