Project

General

Profile

« Previous | Next » 

Revision 61424

Merging angular-upgrade branch

View differences:

modules/uoa-repository-dashboard-gui/trunk/src/browserslist
1
# This file is currently used by autoprefixer to adjust CSS to support the below specified browsers
2
# For additional information regarding the format and rule options, please see:
3
# https://github.com/browserslist/browserslist#queries
4
# For IE 9-11 support, please uncomment the last line of the file and adjust as needed
5
> 0.5%
6
last 2 versions
7
Firefox ESR
8
not dead
9
# IE 9-11
10 0

  
modules/uoa-repository-dashboard-gui/trunk/angular.json
33 33
              "src/assets/js/altair_admin_common.min.js",
34 34
              "src/assets/js/common.min.js",
35 35
              "src/assets/js/pages/forms_wizard.js"
36
            ]
36
            ],
37
            "vendorChunk": true,
38
            "extractLicenses": false,
39
            "buildOptimizer": false,
40
            "sourceMap": true,
41
            "optimization": false,
42
            "namedChunks": true
37 43
          },
38 44
          "configurations": {
39 45
            "production": {
46
              "budgets": [
47
                {
48
                  "type": "anyComponentStyle",
49
                  "maximumWarning": "6kb"
50
                }
51
              ],
40 52
              "fileReplacements": [
41 53
                {
42 54
                  "replace": "src/environments/environment.ts",
......
46 58
              "optimization": true,
47 59
              "outputHashing": "all",
48 60
              "sourceMap": false,
49
              "extractCss": true,
50 61
              "namedChunks": false,
51
              "aot": true,
52 62
              "extractLicenses": true,
53 63
              "vendorChunk": false,
54 64
              "buildOptimizer": true
55 65
            },
56 66
            "beta": {
67
              "budgets": [
68
                {
69
                  "type": "anyComponentStyle",
70
                  "maximumWarning": "6kb"
71
                }
72
              ],
57 73
              "fileReplacements": [
58 74
                {
59 75
                  "replace": "src/environments/environment.ts",
......
63 79
              "optimization": true,
64 80
              "outputHashing": "all",
65 81
              "sourceMap": false,
66
              "extractCss": true,
67 82
              "namedChunks": false,
68
              "aot": true,
69 83
              "extractLicenses": true,
70 84
              "vendorChunk": false,
71 85
              "buildOptimizer": true
72 86
            }
73
          }
87
          },
88
          "defaultConfiguration": ""
74 89
        },
75 90
        "serve": {
76 91
          "builder": "@angular-devkit/build-angular:dev-server",
modules/uoa-repository-dashboard-gui/trunk/src/polyfills.ts
11 11
 * automatically update themselves. This includes Safari >= 10, Chrome >= 55 (including Opera),
12 12
 * Edge >= 13 on the desktop, and iOS 10 and Chrome on mobile.
13 13
 *
14
 * Learn more in https://angular.io/docs/ts/latest/guide/browser-support.html
14
 * Learn more in https://angular.io/guide/browser-support
15 15
 */
16 16

  
17 17
/***************************************************************************************************
18 18
 * BROWSER POLYFILLS
19 19
 */
20 20

  
21
/** IE9, IE10 and IE11 requires all of the following polyfills. **/
22
import 'core-js/es6/symbol';
23
import 'core-js/es6/object';
24
import 'core-js/es6/function';
25
import 'core-js/es6/parse-int';
26
import 'core-js/es6/parse-float';
27
import 'core-js/es6/number';
28
import 'core-js/es6/math';
29
import 'core-js/es6/string';
30
import 'core-js/es6/date';
31
import 'core-js/es6/array';
32
import 'core-js/es6/regexp';
33
import 'core-js/es6/map';
34
import 'core-js/es6/weak-map';
35
import 'core-js/es6/set';
36

  
37 21
/** IE10 and IE11 requires the following for NgClass support on SVG elements */
38 22
// import 'classlist.js';  // Run `npm install --save classlist.js`.
39 23

  
40
/** IE10 and IE11 requires the following for the Reflect API. */
41
import 'core-js/es6/reflect';
42

  
43

  
44
/** Evergreen browsers require these. **/
45
// Used for reflect-metadata in JIT. If you use AOT (and only Angular decorators), you can remove.
46
import 'core-js/es7/reflect';
47

  
48

  
49 24
/**
50 25
 * Web Animations `@angular/platform-browser/animations`
51 26
 * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari.
52 27
 * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0).
53
 **/
28
 */
54 29
// import 'web-animations-js';  // Run `npm install --save web-animations-js`.
55 30

  
56 31
/**
57 32
 * By default, zone.js will patch all possible macroTask and DomEvents
58 33
 * user can disable parts of macroTask/DomEvents patch by setting following flags
34
 * because those flags need to be set before `zone.js` being loaded, and webpack
35
 * will put import in the top of bundle, so user need to create a separate file
36
 * in this directory (for example: zone-flags.ts), and put the following flags
37
 * into that file, and then add the following code before importing zone.js.
38
 * import './zone-flags.ts';
39
 *
40
 * The flags allowed in zone-flags.ts are listed here.
41
 *
42
 * The following flags will work for all browsers.
43
 *
44
 * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame
45
 * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick
46
 * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames
47
 *
48
 *  in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js
49
 *  with the following flag, it will bypass `zone.js` patch for IE/Edge
50
 *
51
 *  (window as any).__Zone_enable_cross_context_check = true;
52
 *
59 53
 */
60 54

  
61
 // (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame
62
 // (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick
63
 // (window as any).__zone_symbol__BLACK_LISTED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames
64

  
65
 /*
66
 * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js
67
 * with the following flag, it will bypass `zone.js` patch for IE/Edge
68
 */
69
// (window as any).__Zone_enable_cross_context_check = true;
70

  
71 55
/***************************************************************************************************
72 56
 * Zone JS is required by default for Angular itself.
73 57
 */
74
import 'zone.js/dist/zone';  // Included with Angular CLI.
58
import 'zone.js';  // Included with Angular CLI.
75 59

  
76 60

  
77

  
78 61
/***************************************************************************************************
79 62
 * APPLICATION IMPORTS
80 63
 */
modules/uoa-repository-dashboard-gui/trunk/src/test.ts
1 1
// This file is required by karma.conf.js and loads recursively all the .spec and framework files
2 2

  
3
import 'zone.js/dist/zone-testing';
3
import 'zone.js/testing';
4 4
import { getTestBed } from '@angular/core/testing';
5 5
import {
6 6
  BrowserDynamicTestingModule,
modules/uoa-repository-dashboard-gui/trunk/package.json
3 3
  "version": "0.0.0",
4 4
  "scripts": {
5 5
    "ng": "ng",
6
    "start": "ng serve",
6
    "start": "ng serve --proxy-config proxy.conf.json",
7 7
    "start:proxy": "ng serve --proxy-config proxy.conf.json",
8
    "build": "rm -rf dist; ng build --prod",
8
    "build": "rm -rf dist; ng build --configuration production",
9 9
    "test": "ng test",
10 10
    "lint": "ng lint",
11 11
    "e2e": "ng e2e"
12 12
  },
13 13
  "private": true,
14 14
  "dependencies": {
15
    "@angular/animations": "^6.0.3",
16
    "@angular/common": "^6.0.3",
17
    "@angular/compiler": "^6.0.3",
18
    "@angular/core": "^6.0.3",
19
    "@angular/forms": "^6.0.3",
20
    "@angular/http": "^6.0.3",
21
    "@angular/platform-browser": "^6.0.3",
22
    "@angular/platform-browser-dynamic": "^6.0.3",
23
    "@angular/router": "^6.0.3",
15
    "@angular/animations": "12.1.2",
16
    "@angular/common": "12.1.2",
17
    "@angular/compiler": "12.1.2",
18
    "@angular/core": "12.1.2",
19
    "@angular/forms": "12.1.2",
20
    "@angular/platform-browser": "12.1.2",
21
    "@angular/platform-browser-dynamic": "^12.1.2",
22
    "@angular/router": "12.1.2",
24 23
    "altair": "^1.0.0",
25
    "angular2-cookie-law": "^6.0.4",
26 24
    "bootstrap": "^4.1.3",
27 25
    "core-js": "^2.5.4",
28
    "highcharts": "^7.2.1",
29
    "highcharts-angular": "^2.4.0",
26
    "highcharts": "^9.1.2",
27
    "highcharts-angular": "^2.10.0",
30 28
    "jquery": "^3.4.1",
31 29
    "jquery-bez": "^1.0.11",
32
    "ngx-bootstrap": "^3.0.1",
33
    "ngx-matomo": "^0.1.2",
34
    "rxjs": "6.3.3",
30
    "ngx-bootstrap": "^4.3.0",
31
    "ngx-matomo": "1.0.0-rc.0",
32
    "rxjs": "6.6.7",
33
    "tslib": "^2.0.0",
35 34
    "uikit": "^3.0.0-rc.19",
36
    "zone.js": "^0.8.26"
35
    "zone.js": "~0.11.4"
37 36
  },
38 37
  "devDependencies": {
39
    "@angular-devkit/build-angular": "~0.6.8",
40
    "@angular/cli": "~6.0.8",
41
    "@angular/compiler-cli": "^6.0.3",
42
    "@angular/language-service": "^6.0.3",
43
    "@types/jasmine": "~2.8.6",
38
    "@angular-devkit/build-angular": "~12.1.2",
39
    "@angular/cli": "~12.1.2",
40
    "@angular/compiler-cli": "^12.1.2",
41
    "@angular/language-service": "^12.1.2",
42
    "@types/jasmine": "~3.6.0",
44 43
    "@types/jasminewd2": "~2.0.3",
45
    "@types/node": "~8.9.4",
46
    "node-sass": "^4.0.0",
47
    "codelyzer": "~4.2.1",
48
    "jasmine-core": "~2.99.1",
49
    "jasmine-spec-reporter": "~4.2.1",
50
    "karma": "~4.0.0",
51
    "karma-chrome-launcher": "~2.2.0",
52
    "karma-coverage-istanbul-reporter": "~2.0.0",
53
    "karma-jasmine": "~1.1.1",
54
    "karma-jasmine-html-reporter": "^0.2.2",
55
    "protractor": "^5.4.1",
44
    "@types/node": "^12.11.1",
45
    "codelyzer": "^6.0.0",
46
    "jasmine-core": "~3.6.0",
47
    "jasmine-spec-reporter": "~5.0.0",
48
    "karma": "~6.3.4",
49
    "karma-chrome-launcher": "~3.1.0",
50
    "karma-coverage-istanbul-reporter": "~3.0.2",
51
    "karma-jasmine": "~4.0.0",
52
    "karma-jasmine-html-reporter": "^1.5.0",
53
    "protractor": "~7.0.0",
56 54
    "ts-node": "~5.0.1",
57
    "tslint": "~5.9.1",
58
    "typescript": "~2.7.2"
55
    "tslint": "~6.1.0",
56
    "typescript": "~4.3.5"
59 57
  }
60 58
}
modules/uoa-repository-dashboard-gui/trunk/tsconfig.json
2 2
  "compileOnSave": false,
3 3
  "compilerOptions": {
4 4
    "baseUrl": "./",
5
    "downlevelIteration": true,
6
    "module": "es2020",
5 7
    "outDir": "./dist/out-tsc",
6 8
    "sourceMap": true,
7 9
    "declaration": false,
8 10
    "moduleResolution": "node",
9
    "emitDecoratorMetadata": true,
10 11
    "experimentalDecorators": true,
11
    "target": "es5",
12
    "target": "es2015",
12 13
    "typeRoots": [
13 14
      "node_modules/@types"
14 15
    ],
modules/uoa-repository-dashboard-gui/trunk/tslint.json
72 72
    "no-trailing-whitespace": true,
73 73
    "no-unnecessary-initializer": true,
74 74
    "no-unused-expression": true,
75
    "no-use-before-declare": true,
76 75
    "no-var-keyword": true,
77 76
    "object-literal-sort-keys": false,
78 77
    "one-line": [
......
117 116
      "check-type"
118 117
    ],
119 118
    "no-output-on-prefix": true,
120
    "use-input-property-decorator": true,
121
    "use-output-property-decorator": true,
122
    "use-host-property-decorator": true,
119
    "no-inputs-metadata-property": true,
120
    "no-outputs-metadata-property": true,
121
    "no-host-metadata-property": true,
123 122
    "no-input-rename": true,
124 123
    "no-output-rename": true,
125
    "use-life-cycle-interface": true,
124
    "use-lifecycle-interface": true,
126 125
    "use-pipe-transform-interface": true,
127 126
    "component-class-suffix": true,
128 127
    "directive-class-suffix": true
modules/uoa-repository-dashboard-gui/trunk/.browserslistrc
1
# This file is currently used by autoprefixer to adjust CSS to support the below specified browsers
2
# For additional information regarding the format and rule options, please see:
3
# https://github.com/browserslist/browserslist#queries
4
# For IE 9-11 support, please uncomment the last line of the file and adjust as needed
5
> 0.5%
6
last 2 versions
7
Firefox ESR
8
not dead
9
# IE 9-11
0 10

  
modules/uoa-repository-dashboard-gui/trunk/src/environments/environment.beta.ts
1 1
export const environment = {
2 2
  production: true,
3
  MATOMO_URL: 'https://analytics.openaire.eu/',
4
  MATOMO_SITE: 92,
3 5
  API_ENDPOINT: '/api',
4 6
  FAQ_ENDPOINT: 'https://provide.openaire.eu/uoa-admin-tools/api',
5 7
  FAQ_HOMEPAGE: 'https://provide.openaire.eu/uoa-admin-tools/dashboard'
modules/uoa-repository-dashboard-gui/trunk/src/environments/environment.prod.ts
1 1
export const environment = {
2 2
  production: true,
3
  MATOMO_URL: 'https://analytics.openaire.eu/',
4
  MATOMO_SITE: 111,
3 5
  API_ENDPOINT: '/api',
4 6
  FAQ_ENDPOINT: '/uoa-admin-tools/api',
5 7
  FAQ_HOMEPAGE: '/uoa-admin-tools/dashboard'
modules/uoa-repository-dashboard-gui/trunk/src/app/app.component.spec.ts
1
import { TestBed, async } from '@angular/core/testing';
1
import { TestBed, waitForAsync } from '@angular/core/testing';
2 2
import { AppComponent } from './app.component';
3 3
describe('AppComponent', () => {
4
  beforeEach(async(() => {
4
  beforeEach(waitForAsync(() => {
5 5
    TestBed.configureTestingModule({
6 6
      declarations: [
7 7
        AppComponent
8 8
      ],
9 9
    }).compileComponents();
10 10
  }));
11
  it('should create the app', async(() => {
11
  it('should create the app', waitForAsync(() => {
12 12
    const fixture = TestBed.createComponent(AppComponent);
13 13
    const app = fixture.debugElement.componentInstance;
14 14
    expect(app).toBeTruthy();
15 15
  }));
16
  it(`should have as title 'app'`, async(() => {
16
  it(`should have as title 'app'`, waitForAsync(() => {
17 17
    const fixture = TestBed.createComponent(AppComponent);
18 18
    const app = fixture.debugElement.componentInstance;
19 19
    expect(app.title).toEqual('app');
20 20
  }));
21
  it('should render title in a h1 tag', async(() => {
21
  it('should render title in a h1 tag', waitForAsync(() => {
22 22
    const fixture = TestBed.createComponent(AppComponent);
23 23
    fixture.detectChanges();
24 24
    const compiled = fixture.debugElement.nativeElement;
modules/uoa-repository-dashboard-gui/trunk/src/app/pages/adminPg/adminPg-metrics.component.ts
15 15
import {ActivatedRoute, Router} from '@angular/router';
16 16
import {PiwikInfoPage} from '../../domain/page-content';
17 17
import {environment} from '../../../environments/environment';
18
import {st} from '@angular/core/src/render3';
19 18

  
20 19
@Component ({
21 20
  selector: 'app-admin-metrics',
......
44 43

  
45 44
  dataForm: FormGroup;
46 45

  
47
  @ViewChild('confirmApprovalModal')
46
  @ViewChild('confirmApprovalModal', { static: true })
48 47
  public confirmApprovalModal: ConfirmationDialogComponent;
49 48
  private pageTotal: number;
50 49
  private piwiksTotal: number;
modules/uoa-repository-dashboard-gui/trunk/src/app/pages/repository/update/update-repo-admins.component.html
75 75

  
76 76

  
77 77
<confirmation-dialog #addRepositoryAdminModal [title]="'Add new datasource admin'" [isModalShown]="isAddModalShown"
78
                     [confirmButNotCloseButton]="'Submit'" (emitObject)="addRepositoryAdmin($event)">
78
                     [confirmButNotCloseButton]="'Submit'" (emitObject)="addRepositoryAdmin()">
79 79

  
80 80
  <div *ngIf="modalErrorMessage" class="uk-alert uk-alert-danger">{{modalErrorMessage}}</div>
81 81

  
modules/uoa-repository-dashboard-gui/trunk/src/app/pages/repository/update/update-repo-admins.component.ts
24 24
  selectedAdminForDelete: User;
25 25

  
26 26
  isDeleteModalShown: boolean;
27
  @ViewChild('deleteRepositoryAdminModal')
27
  @ViewChild('deleteRepositoryAdminModal', { static: true })
28 28
  public deleteRepositoryAdminModal: ConfirmationDialogComponent;
29 29

  
30 30
  isAddModalShown: boolean;
31
  @ViewChild('addRepositoryAdminModal')
31
  @ViewChild('addRepositoryAdminModal', { static: true })
32 32
  public addRepositoryAdminModal: ConfirmationDialogComponent;
33 33

  
34 34
  modalErrorMessage: string;
modules/uoa-repository-dashboard-gui/trunk/src/app/pages/repository/update/sources-update-repo.component.ts
1
import { Component, OnInit, QueryList, ViewChild, ViewChildren } from '@angular/core';
2
import { FormBuilder, FormGroup } from '@angular/forms';
3
import { Repository, RepositoryInterface } from '../../../domain/typeScriptClasses';
4
import { RepositoryService } from '../../../services/repository.service';
5
import { ActivatedRoute, Router } from '@angular/router';
6
import { formInfoLoading, loadingRepoError } from '../../../domain/shared-messages';
7
import { DatasourceUpdateFormComponent } from '../../../shared/reusablecomponents/sources-forms/datasource-update-form.component';
8
import { ConfirmationDialogComponent } from '../../../shared/reusablecomponents/confirmation-dialog.component';
9
import { AuthenticationService } from '../../../services/authentication.service';
10
import { DatasourceNewInterfaceFormComponent } from '../../../shared/reusablecomponents/sources-forms/datasource-new-interface-form.component';
11
import { SharedService } from '../../../services/shared.service';
1
import {Component, OnInit, QueryList, ViewChild, ViewChildren} from '@angular/core';
2
import {FormBuilder, FormGroup} from '@angular/forms';
3
import {Repository, RepositoryInterface} from '../../../domain/typeScriptClasses';
4
import {RepositoryService} from '../../../services/repository.service';
5
import {ActivatedRoute, Router} from '@angular/router';
6
import {loadingRepoError} from '../../../domain/shared-messages';
7
import {DatasourceUpdateFormComponent} from '../../../shared/reusablecomponents/sources-forms/datasource-update-form.component';
8
import {ConfirmationDialogComponent} from '../../../shared/reusablecomponents/confirmation-dialog.component';
9
import {AuthenticationService} from '../../../services/authentication.service';
10
import {DatasourceNewInterfaceFormComponent} from '../../../shared/reusablecomponents/sources-forms/datasource-new-interface-form.component';
11
import {SharedService} from '../../../services/shared.service';
12 12

  
13
@Component ({
13
@Component({
14 14
  selector: 'sources-update-repo',
15 15
  templateUrl: 'sources-update-repo.component.html',
16 16
})
......
32 32
  dataForInterfaceComp: any[] = [];
33 33

  
34 34
  isModalShown: boolean;
35
  @ViewChild('updateLogoUrlModal')
35
  @ViewChild('updateLogoUrlModal', {static: true})
36 36
  public updateLogoUrlModal: ConfirmationDialogComponent;
37 37

  
38
  constructor ( private fb: FormBuilder,
39
                private repoService: RepositoryService,
40
                private authService: AuthenticationService,
41
                private route: ActivatedRoute,
42
                private sharedService: SharedService,
43
                private router: Router) { }
38
  constructor(private fb: FormBuilder,
39
              private repoService: RepositoryService,
40
              private authService: AuthenticationService,
41
              private route: ActivatedRoute,
42
              private sharedService: SharedService,
43
              private router: Router) {
44
  }
44 45

  
45
  @ViewChild('updateTermsForm')
46
  @ViewChild('updateTermsForm') updateTermsForm: DatasourceUpdateFormComponent;
46 47

  
47 48
  ngOnInit() {
48 49

  
49
    if(this.sharedService.getRepository()) {
50
    if (this.sharedService.getRepository()) {
50 51
      this.repo = this.sharedService.getRepository();
51 52
      this.logoURL = this.repo.logoUrl;
52 53
      this.getRepoInterfaces();
......
63 64
    );
64 65

  
65 66
    // this.readRepoId();
66
    let body = document.getElementsByTagName('body')[0];
67
    body.classList.remove("top_bar_active");   //remove the class
68
    body.classList.remove("page_heading_active");
69
    body.classList.remove("landing");
70
    body.classList.add("dashboard");
67
    const body = document.getElementsByTagName('body')[0];
68
    body.classList.remove('top_bar_active');   // remove the class
69
    body.classList.remove('page_heading_active');
70
    body.classList.remove('landing');
71
    body.classList.add('dashboard');
71 72
  }
72 73

  
73 74
  // readRepoId() {
......
100 101
    this.group = this.fb.group({});
101 102
    this.repoService.getRepositoryInterface(this.repo.id).subscribe(
102 103
      interfaces => {
103
        this.repoInterfaces = interfaces.sort( function(a, b) {
104
        this.repoInterfaces = interfaces.sort(function (a, b) {
104 105
          if (a.id < b.id) {
105 106
            return -1;
106 107
          } else if (a.id > b.id) {
......
130 131
      for (let i = 0; i < this.repoInterfaces.length; i++) {
131 132
        this.dataForInterfaceComp.push([
132 133
          false, i,
133
          { id: this.repo.id,
134
          {
135
            id: this.repo.id,
134 136
            datasourceType: this.repo.datasourceType,
135 137
            datasourceClass: this.repo.datasourceClass,
136 138
            registeredBy: this.repo.registeredBy
......
141 143
    } else {
142 144
      this.dataForInterfaceComp.push([
143 145
        false, 0,
144
        { id: this.repo.id,
146
        {
147
          id: this.repo.id,
145 148
          datasourceType: this.repo.datasourceType,
146 149
          datasourceClass: this.repo.datasourceClass,
147 150
          registeredBy: this.repo.registeredBy
......
152 155

  
153 156
  addInterfaceToList(intrf?: RepositoryInterface) {
154 157
    const curIndex = this.dataForInterfaceComp.length;
155
    const curRepoInfo = { id: this.repo.id, datasourceType: this.repo.datasourceType,
156
      datasourceClass: this.repo.datasourceClass, registeredBy: this.repo.registeredBy };
158
    const curRepoInfo = {
159
      id: this.repo.id, datasourceType: this.repo.datasourceType,
160
      datasourceClass: this.repo.datasourceClass, registeredBy: this.repo.registeredBy
161
    };
157 162
    if (intrf) {
158 163
      this.dataForInterfaceComp.push([false, curIndex, curRepoInfo, intrf]);
159 164
    } else {
......
193 198

  
194 199
  }
195 200

  
196
  getNewLogoUrl( event: any ) {
201
  getNewLogoUrl(event: any) {
197 202
    this.logoURL = event.target.value;
198 203

  
199 204
  }
modules/uoa-repository-dashboard-gui/trunk/src/app/pages/repository/events/content-events-of-repo-eventslist.component.ts
57 57
  modalErrorMessage: string;
58 58

  
59 59
  isModalShown: boolean;
60
  @ViewChild('subscribeToEventsModal')
60
  @ViewChild('subscribeToEventsModal', { static: true })
61 61
  public subscribeToEventsModal: ConfirmationDialogComponent;
62 62

  
63 63
  constructor (private route: ActivatedRoute,
modules/uoa-repository-dashboard-gui/trunk/src/app/pages/repository/metrics/metrics-enable.component.ts
29 29
  modalButton = 'Yes, enable it';
30 30
  isModalShown: boolean;
31 31

  
32
  @ViewChild('confirmEnablingModal')
32
  @ViewChild('confirmEnablingModal', { static: true })
33 33
  public confirmEnablingModal: ConfirmationDialogComponent;
34 34

  
35 35

  
modules/uoa-repository-dashboard-gui/trunk/src/app/pages/repository/repository-routing.module.ts
25 25
          },
26 26
          {
27 27
            path: 'getImpact',
28
            loadChildren: './metrics/metrics.module#MetricsModule',
28
            loadChildren: () => import('./metrics/metrics.module').then(m => m.MetricsModule),
29 29
            canActivate: [AuthGuardService]
30 30
          },
31 31
          {
32 32
            path: 'aggregationHistory',
33
            loadChildren: './aggregationhistory/compatibility-monitor.module#AggregationHistoryModule',
33
            loadChildren: () => import('./aggregationhistory/compatibility-monitor.module').then(m => m.AggregationHistoryModule),
34 34
            canActivate: [AuthGuardService]
35 35
          },
36 36
          {
37 37
            path: 'events',
38
            loadChildren: './events/events.module#EventsModule',
38
            loadChildren: () => import('./events/events.module').then(m => m.EventsModule),
39 39
            canActivate: [AuthGuardService]
40 40
          },
41 41
          {
modules/uoa-repository-dashboard-gui/trunk/src/app/pages/sources/sources-register/register-new-datasource.component.ts
30 30
   * currentStep represents the number of the current step
31 31
   */
32 32
  currentStep: number;
33
  @ViewChild('topHelperContent')
33
  @ViewChild('topHelperContent', { static: true })
34 34
  public topHelperContent: HelpContentComponent;
35
  @ViewChild('leftHelperContent')
35
  @ViewChild('leftHelperContent', { static: true })
36 36
  public leftHelperContent: AsideHelpContentComponent;
37
  @ViewChild('rightHelperContent')
37
  @ViewChild('rightHelperContent', { static: true })
38 38
  public rightHelperContent: AsideHelpContentComponent;
39
  @ViewChild('bottomHelperContent')
39
  @ViewChild('bottomHelperContent', { static: true })
40 40
  public bottomHelperContent: HelpContentComponent;
41 41

  
42
  @ViewChild ('registerDatasource')
42
  @ViewChild('registerDatasource')
43 43
  registerDatasource: DatasourceCreateFormComponent;
44 44

  
45
  @ViewChild ('interfaceComments')
45
  @ViewChild('interfaceComments')
46 46
  interfaceComments: DatasourceNewInterfaceFormComponent;
47 47

  
48 48
  @ViewChildren('interfacesArray') interfacesArray: QueryList<DatasourceNewInterfaceFormComponent>;
modules/uoa-repository-dashboard-gui/trunk/src/app/pages/sources/sources-register/register-existing-datasource.component.ts
42 42
   * currentStep represents the number of the current step
43 43
   */
44 44
  currentStep: number;
45
  @ViewChild('topHelperContent')
45
  @ViewChild('topHelperContent', { static: true })
46 46
  public topHelperContent: HelpContentComponent;
47
  @ViewChild('leftHelperContent')
47
  @ViewChild('leftHelperContent', { static: true })
48 48
  public leftHelperContent: AsideHelpContentComponent;
49
  @ViewChild('rightHelperContent')
49
  @ViewChild('rightHelperContent', { static: true })
50 50
  public rightHelperContent: AsideHelpContentComponent;
51
  @ViewChild('bottomHelperContent')
51
  @ViewChild('bottomHelperContent', { static: true })
52 52
  public bottomHelperContent: HelpContentComponent;
53 53

  
54 54
  @ViewChild('datasourcesByCountry')
55 55
  public datasourcesByCountry: RegisterDatasourceSelectExistingComponent;
56 56

  
57
  @ViewChild ('registerDatasource')
57
  @ViewChild('registerDatasource')
58 58
  registerDatasource: DatasourceUpdateFormComponent;
59 59

  
60
  @ViewChild ('interfaceComments')
60
  @ViewChild('interfaceComments')
61 61
  interfaceComments: DatasourceNewInterfaceFormComponent;
62 62

  
63 63
  @ViewChildren('interfacesArray') interfacesArray: QueryList<DatasourceNewInterfaceFormComponent>;
modules/uoa-repository-dashboard-gui/trunk/src/app/pages/compatibility/compatibility-validate-type.component.ts
27 27
   * the param that is used is 'step' and the values are: 'baseUrl','guidelines','crisEntities'/'parameters','finish'
28 28
   */
29 29
  currentStep: number;
30
  @ViewChild('topHelperContent')
30
  @ViewChild('topHelperContent', { static: true })
31 31
  public topHelperContent: HelpContentComponent;
32
  @ViewChild('leftHelperContent')
32
  @ViewChild('leftHelperContent', { static: true })
33 33
  public leftHelperContent: AsideHelpContentComponent;
34
  @ViewChild('rightHelperContent')
34
  @ViewChild('rightHelperContent', { static: true })
35 35
  public rightHelperContent: AsideHelpContentComponent;
36
  @ViewChild('bottomHelperContent')
36
  @ViewChild('bottomHelperContent', { static: true })
37 37
  public bottomHelperContent: HelpContentComponent;
38 38

  
39 39
  baseUrlList: string[] = [];
modules/uoa-repository-dashboard-gui/trunk/src/app/pages/compatibility/compatibility-validation-results.component.ts
7 7
import { ConfirmationDialogComponent } from '../../shared/reusablecomponents/confirmation-dialog.component';
8 8
import { AuthenticationService } from '../../services/authentication.service';
9 9
import * as Highcharts from 'highcharts';
10
import {text} from '@angular/core/src/render3/instructions';
11 10

  
12 11
@Component({
13 12
  selector: 'app-compatibility-validation-results',
......
41 40
  chartOptionsForContent: Highcharts.Options;
42 41
  chartOptionsForUsage: Highcharts.Options;
43 42

  
44
  @ViewChild('checkErrors')
43
  @ViewChild('checkErrors', { static: true })
45 44
  public checkErrors: ConfirmationDialogComponent;
46 45

  
47 46
  constructor (private route: ActivatedRoute,
modules/uoa-repository-dashboard-gui/trunk/src/app/services/shared.service.ts
1
import { Injectable } from "@angular/core";
2
import { Repository, RepositorySnippet } from "../domain/typeScriptClasses";
3
import { Subject } from "rxjs/internal/Subject";
1
import {Injectable} from '@angular/core';
2
import {Repository, RepositorySnippet} from '../domain/typeScriptClasses';
3
import {Subject} from 'rxjs/internal/Subject';
4 4

  
5 5
@Injectable()
6 6
export class SharedService {
......
12 12
  private repositoriesOfUser: Subject<RepositorySnippet[]> = new Subject<RepositorySnippet[]>();
13 13

  
14 14

  
15

  
16 15
  get repository$() {
17 16
    return this.repository.asObservable();
18 17
  }
......
21 20
    return this.repositoryCopy;
22 21
  }
23 22

  
24
  setRepository(data:Repository) {
23
  setRepository(data: Repository) {
25 24
    this.repository.next(data);
26 25
    this.repositoryCopy = data;
27 26
  }
modules/uoa-repository-dashboard-gui/trunk/src/app/app.component.ts
2 2
import { NavigationEnd, Router, RoutesRecognized } from '@angular/router';
3 3
import { AuthenticationService } from './services/authentication.service';
4 4
import { environment } from '../environments/environment';
5
import { MatomoInjector, MatomoTracker } from 'ngx-matomo';
5
import { MatomoTracker } from 'ngx-matomo';
6 6
import { ConfirmationDialogComponent } from './shared/reusablecomponents/confirmation-dialog.component';
7 7
import { RepositoryService } from './services/repository.service';
8 8
import { RepositorySnippet } from './domain/typeScriptClasses';
......
34 34

  
35 35
  constructor(private router: Router,
36 36
              private authService: AuthenticationService,
37
              private matomoInjector: MatomoInjector,
38 37
              private matomoTracker: MatomoTracker,
39 38
              private repositoryService: RepositoryService,
40 39
              private fb: FormBuilder) {
41 40

  
42 41
    console.log('21-06-2019. Fixed matomo to log userIds?');
43 42

  
44
    let piwikUrl;
45
    if (window.location.origin.includes('beta')) {
46
      // piwikUrl = 'https://analytics.openaire.eu/piwik.php?idsite=92&rec=1';
47
      piwikUrl = '92';
48
    } else if (window.location.origin.includes('localhost:4200') ||
49
               window.location.origin.includes('athenarc')) {
50
      // piwikUrl = 'https://analytics.openaire.eu/piwik.php?idsite=92&rec=1';
51
      piwikUrl = '9222222';
52
    } else {
53
      // piwikUrl = 'https://analytics.openaire.eu/piwik.php?idsite=111&rec=1';
54
      piwikUrl = '111';
55
    }
56
    this.matomoInjector.init('https://analytics.openaire.eu/', piwikUrl);
57

  
58 43
    /*disabling console.log in production*/
59 44
    if ( environment.production === true ) {
60 45
      console.log = function () {};
modules/uoa-repository-dashboard-gui/trunk/src/app/shared/reusablecomponents/read-more.component.ts
22 22
    //@Input() text: string;
23 23
    //maximum height of the container
24 24
    @Input("maxHeight") maxHeight: number = 100;
25
    @ViewChild("readMoreDiv")
25
    @ViewChild("readMoreDiv", { static: true })
26 26
    readMoreDiv: ElementRef;
27 27
    //set these to false to get the height of the expended container
28 28
    public isCollapsed: boolean = false;
modules/uoa-repository-dashboard-gui/trunk/src/app/shared/reusablecomponents/forms/my-array.interface.ts
44 44

  
45 45
  @Input() public initEmpty: boolean = false;
46 46

  
47
  @ViewChild(MyFormDirective) protected formComponents: MyFormDirective;
47
  @ViewChild(MyFormDirective, { static: true }) protected formComponents: MyFormDirective;
48 48

  
49 49
  protected _cfr: ComponentFactoryResolver;
50 50

  
modules/uoa-repository-dashboard-gui/trunk/src/app/shared/reusablecomponents/forms/my-wrapper.interface.ts
1 1
/**
2 2
 * Created by stefanos on 19/5/2017.
3 3
 */
4
import { EventEmitter, Input, OnInit, Output, ViewChild, ViewRef } from '@angular/core';
4
import { EventEmitter, Input, OnInit, Output, ViewChild, ViewRef, Directive } from '@angular/core';
5 5
import { Description } from '../../../domain/oa-description';
6 6
import { MyFormDirective } from './my-form.directive';
7 7
import { throwError } from 'rxjs';
8 8

  
9 9

  
10
@Directive()
10 11
export abstract class MyWrapper implements OnInit{
11 12

  
12 13
  @Input() public component: ViewRef;
......
17 18

  
18 19
  @Output() deleteNotifier: EventEmitter<ViewRef> = new EventEmitter();
19 20

  
20
  @ViewChild(MyFormDirective) private formComponents: MyFormDirective;
21
  @ViewChild(MyFormDirective, { static: true }) private formComponents: MyFormDirective;
21 22

  
22 23
  public first = true;
23 24

  
modules/uoa-repository-dashboard-gui/trunk/src/app/app.module.ts
1
import { AppComponent } from './app.component';
2
import { NgModule } from '@angular/core';
3
import { BrowserModule } from '@angular/platform-browser';
4
import { NoopAnimationsModule } from '@angular/platform-browser/animations';
5
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
6
import { HTTP_INTERCEPTORS, HttpClientModule } from '@angular/common/http';
7
import { ReusableComponentsModule } from './shared/reusablecomponents/reusable-components.module';
8
import { CookieLawModule } from './shared/reusablecomponents/cookie-law/cookie-law.module';
9
import { AppRoutingModule } from './app-routing.module';
10
import { AuthenticationInterceptor } from './services/authentication-interceptor';
11
import { BrokerService } from './services/broker.service';
12
import { MonitorService } from './services/monitor.service';
13
import { PiwikService } from './services/piwik.service';
14
import { RepositoryService } from './services/repository.service';
15
import { ValidatorService } from './services/validator.service';
16
import { UsagestatsService } from './services/usagestats.service';
17
import { StatisticsService } from './services/statistics.service';
18
import { AuthGuardService } from './services/auth-guard.service';
19
import { AuthenticationService } from './services/authentication.service';
20
import { HomeComponent } from './pages/landing/home/home.component';
21
import { MatomoModule } from 'ngx-matomo';
22
import { DashboardService } from "./services/dashboard.service";
23
import { EmptyPageComponent } from "./pages/emptypage/empty-page.component";
24
import { SharedService } from "./services/shared.service";
25
import { JoinComponent } from "./pages/join/join.component";
26
import { AboutComponent } from "./pages/landing/about/about.component";
1
import {AppComponent} from './app.component';
2
import {NgModule} from '@angular/core';
3
import {BrowserModule} from '@angular/platform-browser';
4
import {NoopAnimationsModule} from '@angular/platform-browser/animations';
5
import {FormsModule, ReactiveFormsModule} from '@angular/forms';
6
import {HTTP_INTERCEPTORS, HttpClientModule} from '@angular/common/http';
7
import {ReusableComponentsModule} from './shared/reusablecomponents/reusable-components.module';
8
import {CookieLawModule} from './shared/reusablecomponents/cookie-law/cookie-law.module';
9
import {AppRoutingModule} from './app-routing.module';
10
import {AuthenticationInterceptor} from './services/authentication-interceptor';
11
import {BrokerService} from './services/broker.service';
12
import {MonitorService} from './services/monitor.service';
13
import {PiwikService} from './services/piwik.service';
14
import {RepositoryService} from './services/repository.service';
15
import {ValidatorService} from './services/validator.service';
16
import {UsagestatsService} from './services/usagestats.service';
17
import {StatisticsService} from './services/statistics.service';
18
import {AuthGuardService} from './services/auth-guard.service';
19
import {AuthenticationService} from './services/authentication.service';
20
import {HomeComponent} from './pages/landing/home/home.component';
21
import {MatomoModule} from 'ngx-matomo';
22
import {DashboardService} from './services/dashboard.service';
23
import {EmptyPageComponent} from './pages/emptypage/empty-page.component';
24
import {SharedService} from './services/shared.service';
25
import {JoinComponent} from './pages/join/join.component';
26
import {AboutComponent} from './pages/landing/about/about.component';
27
import {environment} from '../environments/environment';
27 28

  
28 29

  
29 30
@NgModule({
......
42 43
    HttpClientModule,
43 44
    ReusableComponentsModule,
44 45
    CookieLawModule,
45
    MatomoModule,
46
    MatomoModule.forRoot({
47
      scriptUrl: environment.MATOMO_URL + 'matomo.js',
48
      trackers: [
49
        {
50
          trackerUrl: environment.MATOMO_URL + 'matomo.php',
51
          siteId: environment.MATOMO_SITE
52
        }
53
      ],
54
      routeTracking: {
55
        enable: true
56
      }
57
    }),
46 58
    AppRoutingModule
47 59
  ],
48 60
  providers: [
......
65 77
  ],
66 78
  bootstrap: [AppComponent]
67 79
})
68
export class AppModule { }
80
export class AppModule {
81
}
modules/uoa-repository-dashboard-gui/trunk/src/app/app-routing.module.ts
33 33
  },
34 34
  {
35 35
    path: 'repository',
36
    loadChildren: './pages/repository/repository.module#RepositoryModule',
36
    loadChildren: () => import('./pages/repository/repository.module').then(m => m.RepositoryModule),
37 37
    // loadChildren: () => import('./pages/repository/repository.module').then(m => m.RepositoryModule),
38 38
    canActivate: [AuthGuardService]
39 39
  },
40 40
  {
41 41
    path: 'repositoryAdmin',
42
    loadChildren: './pages/repository/repository.module#RepositoryModule',
42
    loadChildren: () => import('./pages/repository/repository.module').then(m => m.RepositoryModule),
43 43
    // loadChildren: () => import('./pages/repository/repository.module').then(m => m.RepositoryModule),
44 44
    canActivate: [AuthGuardService]
45 45
  },
......
52 52
  // },
53 53
  {
54 54
    path: 'sources',
55
    loadChildren: './pages/sources/sources.module#SourcesModule',
55
    loadChildren: () => import('./pages/sources/sources.module').then(m => m.SourcesModule),
56 56
    canActivate: [AuthGuardService]
57 57
  },
58 58
  {
59 59
    path: 'compatibility',
60
    loadChildren: './pages/compatibility/compatibility.module#CompatibilityModule'
60
    loadChildren: () => import('./pages/compatibility/compatibility.module').then(m => m.CompatibilityModule)
61 61
  },
62 62
  {
63 63
    path: 'content',
64
    loadChildren: './pages/content/content.module#ContentModule',
64
    loadChildren: () => import('./pages/content/content.module').then(m => m.ContentModule),
65 65
    canActivate: [AuthGuardService]
66 66
  },
67 67
  // {
......
71 71
  // },
72 72
  {
73 73
    path: 'admin',
74
    loadChildren: './pages/adminPg/adminPg.module#AdminPgModule',
74
    loadChildren: () => import('./pages/adminPg/adminPg.module').then(m => m.AdminPgModule),
75 75
  },
76 76
  {
77 77
    path: '403-forbidden',
......
92 92

  
93 93

  
94 94
@NgModule ({
95
  imports: [RouterModule.forRoot(appRoutes)],
95
  imports: [RouterModule.forRoot(appRoutes, { relativeLinkResolution: 'legacy' })],
96 96
  exports: [RouterModule]
97 97
})
98 98

  
modules/uoa-repository-dashboard-gui/trunk/src/assets/css/landingpage/custom.css
14 14
@import url('https://fonts.googleapis.com/css?family=Sura:400,700');
15 15

  
16 16
body.landing {
17
  padding-top: 0px;
17
  padding-top: 0;
18 18
}
19 19

  
20 20
/* yard */
21 21
.tm-page {
22
 border-width:0px!important;
23
 border:0px!important;
22
 border-width:0!important;
23
 border:0!important;
24 24
}
25 25
body { font-family: 'Open Sans', sans-serif !important;}
26 26
/*
......
71 71

  
72 72
}
73 73
.news .wk-panel-box, .news .wk-panel-header {
74
padding :20px 0px 30px 0px;
74
padding :20px 0 30px 0;
75 75
margin-bottom:40px;
76 76
}
77 77
/*
......
94 94
.wk-twitter-firstpage .wk-article-meta{
95 95
	font-size:12px!important;
96 96
	line-height:16px;
97
	margin:0px;
97
	margin:0;
98 98

  
99 99
}
100 100
.wk-twitter-firstpage .wk-margin {
......
164 164
.service-button > .wk-subnav>li>a,
165 165
.boxedpills > .uk-subnav>li>a {
166 166
	border: 1px solid #9c9c9c!important;
167
	border-radius: 0px!important;
167
	border-radius: 0!important;
168 168
	color: #9c9c9c!important;
169 169

  
170 170
}
......
204 204
   background: #fff;
205 205
    /* border: 1px solid #e5e5e5; */
206 206
    border: none!important;
207
    border-radius: 0px;
207
    border-radius: 0;
208 208
    background: #fff;
209 209
    color: #767779;
210 210
    color: rgb(108, 109, 116);
211
    box-shadow: rgba(0, 0, 0, 0.08) 0px 5px 15px;
211
    box-shadow: rgba(0, 0, 0, 0.08) 0 5px 15px;
212 212
    background: rgb(255, 255, 255)!important;
213 213
}
214 214

  
......
325 325
.tm-toolbar {
326 326
position:relative;
327 327
color: #fff;
328
padding-top: 0px;
329
padding-bottom:0px;
328
padding-top: 0;
329
padding-bottom:0;
330 330
background:rgba(255,255,255, 0.0);
331 331
z-index:10000;
332 332
/*background: linear-gradient(rgba(255,255,255,0), rgba(255,255,255,0)), url(/images/toolbar_bg.png);*/
......
345 345
}
346 346
.uk-logo > img {max-height:80px;}
347 347
.inner {
348
 left:0px;
348
 left:0;
349 349
  margin-top:-5px;
350 350
  background-color: #222080;
351 351
}
352 352
.tm-toolbar .uk-container {
353
padding-right:0px;
353
padding-right:0;
354 354
}
355 355

  
356 356
.tm-toolbar ul.uk-subnav.uk-subnav-line,
357 357
.tm-toolbar ul.uk-subnav{
358 358
 margin-top:-10px;
359 359
 margin-top: -5px; /* no border on top */
360
 padding:10px 10px  0px 0px;
360
 padding:10px 10px  0 0;
361 361
  -ms-transform: skew(25deg);
362 362
  -webkit-transform: skew(25deg);
363 363
  transform: skew(25deg);
......
390 390
.uk-subnav-line > :nth-child(n + 2):before,
391 391
.tm-toolbar .uk-subnav > :nth-child(n + 2):before {
392 392
    margin-right: 10px;
393
    border-left: 0px ;
393
    border-left: 0 ;
394 394
}
395 395

  
396 396
.tm-toolbar .uk-subnav-line li  a,
......
432 432
}
433 433

  
434 434
.tm-toolbar .uk-dotnav, .tm-toolbar .uk-subnav {
435
  margin-bottom:0px!important;
435
  margin-bottom:0!important;
436 436
}
437 437

  
438 438
.tm-toolbar .uk-subnav-line li a:hover,
......
461 461
  white-space: nowrap;
462 462
  /*white-space:pre-wrap;*/
463 463
  text-align:center;
464
  -moz-border-radius: 0px;
465
  -webkit-border-radius: 0px;
466
  border-radius: 0px;
464
  -moz-border-radius: 0;
465
  -webkit-border-radius: 0;
466
  border-radius: 0;
467 467
  background:  #fff;
468
  -moz-box-shadow: 0px 0px 1px #666;
469
  -webkit-box-shadow: 0px 0px 1px #666;
470
  box-shadow: 0px 0px 1px #666;
468
  -moz-box-shadow: 0 0 1px #666;
469
  -webkit-box-shadow: 0 0 1px #666;
470
  box-shadow: 0 0 1px #666;
471 471
}
472 472

  
473 473
.tm-toolbar .uk-subnav a[title]:hover:before{
......
747 747
.uk-section-secondary:not(.uk-preserve-color) .uk-navbar-nav > li > a:focus,
748 748
.uk-section-secondary:not(.uk-preserve-color) .uk-navbar-nav > li > a.uk-open,
749 749
.uk-card-primary.uk-card-body .uk-navbar-nav > li:hover > a, .uk-card-primary.uk-card-body .uk-navbar-nav > li > a:focus,
750
.uk-card-primary.uk-card-body .uk-navbar-nav > li > a.uk-open, .uk-card-primary > :not([class * ='uk-card-media']) .uk-navbar-nav > li:hover > a,
751
.uk-card-primary > :not([class * ='uk-card-media']) .uk-navbar-nav > li > a:focus,
752
.uk-card-primary > :not([class * ='uk-card-media']) .uk-navbar-nav > li > a.uk-open,
750
.uk-card-primary.uk-card-body .uk-navbar-nav > li > a.uk-open, .uk-card-primary > :not([class *='uk-card-media']) .uk-navbar-nav > li:hover > a,
751
.uk-card-primary > :not([class *='uk-card-media']) .uk-navbar-nav > li > a:focus,
752
.uk-card-primary > :not([class *='uk-card-media']) .uk-navbar-nav > li > a.uk-open,
753 753
.uk-card-secondary.uk-card-body .uk-navbar-nav > li:hover > a, .uk-card-secondary.uk-card-body .uk-navbar-nav > li > a:focus,
754
.uk-card-secondary.uk-card-body .uk-navbar-nav > li > a.uk-open, .uk-card-secondary > :not([class * ='uk-card-media']) .uk-navbar-nav > li:hover > a,
755
.uk-card-secondary > :not([class * ='uk-card-media']) .uk-navbar-nav > li > a:focus,
756
.uk-card-secondary > :not([class * ='uk-card-media']) .uk-navbar-nav > li > a.uk-open,
754
.uk-card-secondary.uk-card-body .uk-navbar-nav > li > a.uk-open, .uk-card-secondary > :not([class *='uk-card-media']) .uk-navbar-nav > li:hover > a,
755
.uk-card-secondary > :not([class *='uk-card-media']) .uk-navbar-nav > li > a:focus,
756
.uk-card-secondary > :not([class *='uk-card-media']) .uk-navbar-nav > li > a.uk-open,
757 757
.uk-overlay-primary .uk-navbar-nav > li:hover > a, .uk-overlay-primary .uk-navbar-nav > li > a:focus,
758 758
.uk-overlay-primary .uk-navbar-nav > li > a.uk-open, .uk-navbar-container:not(.uk-navbar-transparent) .uk-navbar-nav > li:hover > a,
759 759
.uk-navbar-container:not(.uk-navbar-transparent) .uk-navbar-nav > li > a:focus,
......
805 805
 color: #63BDE9!important;
806 806
}
807 807
*/
808
*/
808

  
809 809
/*
810 810
.uk-tile-primary {background-color: #17106E;}
811 811
*/
......
913 913
  color:#fff;
914 914
}
915 915
.first_page_panel {
916
  border: 0px solid #e5e5e7!important;
916
  border: 0 solid #e5e5e7!important;
917 917
 padding:20px 20px!important;
918 918
/*width:100%!important;*/
919 919
  font-size:24pt!important;
......
997 997
	border-bottom: 1px solid #c5c5c5;
998 998
}
999 999
.mod_events_latest_table td p{
1000
	margin-bottom:0px;
1001
	margin-top:0px;
1000
	margin-bottom:0;
1001
	margin-top:0;
1002 1002
}
1003 1003

  
1004 1004
.mod_events_latest_date {
......
1013 1013
	margin-right:8px;
1014 1014
	margin-top:5px;
1015 1015
	text-align:center;
1016
	padding:10px 0px;
1016
	padding:10px 0;
1017 1017
	line-height:20px;
1018 1018
	*/
1019 1019
	color: #4687E6;
......
1031 1031
	line-height:14px;
1032 1032
	font-weight:400;
1033 1033
	font-size:12px;
1034
	padding: 5px 0px;
1034
	padding: 5px 0;
1035 1035
	margin-bottom: 8px;
1036 1036
	text-transform:none;
1037 1037
	*/
......
1094 1094
	font-size:13px!important;
1095 1095
	line-height: 18px;
1096 1096
	font-weight:normal!important;
1097
	margin-top: 0px;
1097
	margin-top: 0;
1098 1098
	margin-bottom: 8px;
1099 1099
}
1100 1100
.nspArt  { border-bottom: 1px solid #c5c5c5;}
......
1112 1112
.nspLinks ul li p {
1113 1113
	text-transform:none;
1114 1114
	font-size: 14px;
1115
	margin:0px;
1115
	margin:0;
1116 1116
}
1117 1117
.readon-button{
1118 1118
background:0!important;
......
1203 1203
#btl .btl-panel > span .btl-dropdown { border:3!important;}
1204 1204

  
1205 1205
#btl .btl-panel > span{
1206
	border: 0px!important;
1206
	border: 0!important;
1207 1207
	background-color: transparent!important;
1208 1208
	color:#444!important;
1209 1209
	padding-right:30px;
1210 1210
	padding-left:6px;
1211
	height:0px!important;
1211
	height:0!important;
1212 1212
	line-height:20px!important;
1213
	margin:0px !important;
1214
	box-shadow: 0px 0px 0px;
1215
	border-radius:0px!important;
1213
	margin:0 !important;
1214
	box-shadow: 0 0 0;
1215
	border-radius:0!important;
1216 1216
	display: inline-table!important;
1217 1217
	text-transform:none!important;
1218 1218
	font-size: 14px;
......
1250 1250
border-bottom-right-radius: 2px;
1251 1251
border-top-left-radius: 2px;
1252 1252
border-top-right-radius: 2px;
1253
box-shadow: rgba(41, 44, 61, 0.0980392) 2px 15px 50px 0px;
1253
box-shadow: rgba(41, 44, 61, 0.0980392) 2px 15px 50px 0;
1254 1254
box-sizing: border-box;
1255 1255
color: rgb(79, 82, 96);
1256 1256
display: none;
1257 1257
height: auto;
1258
margin-top: 0px;
1258
margin-top: 0;
1259 1259
padding-bottom: 25px;
1260 1260
padding-left: 25px;
1261 1261
padding-right: 25px;
......
1285 1285
list-style-position: outside;
1286 1286
list-style-type: none;
1287 1287
padding-bottom: 6px;
1288
padding-left: 0px;
1289
padding-right: 0px;
1288
padding-left: 0;
1289
padding-right: 0;
1290 1290
padding-top: 6px;
1291 1291
text-align: left;
1292 1292
text-decoration: none;
......
1433 1433
box-shadow:none;
1434 1434
	border: 1px solid #eee;
1435 1435

  
1436
	padding:0px 30px 15px 30px;
1436
	padding:0 30px 15px 30px;
1437 1437

  
1438 1438
	background: #fff;
1439 1439
color: #767779;
......
1442 1442
}
1443 1443

  
1444 1444
.ifaq-tpl-clean_blue_arrow .ifaq-collapsible > a {
1445
display: block; padding: 1px 0 1px 0px;
1445
display: block; padding: 1px 0 1px 0;
1446 1446
background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2213%22%20height%3D%2213%22%20viewBox%3D%220%200%2013%2013%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Crect%20fill%3D%22%236C6D74%22%20width%3D%2213%22%20height%3D%221%22%20x%3D%220%22%20y%3D%226%22%3E%3C%2Frect%3E%0A%20%20%20%20%3Crect%20fill%3D%22%236C6D74%22%20width%3D%221%22%20height%3D%2213%22%20x%3D%226%22%20y%3D%220%22%3E%3C%2Frect%3E%0A%3C%2Fsvg%3E");
1447 1447
background-repeat: no-repeat;
1448 1448
background-position: 98% 50%;
modules/uoa-repository-dashboard-gui/trunk/src/tsconfig.app.json
2 2
  "extends": "../tsconfig.json",
3 3
  "compilerOptions": {
4 4
    "outDir": "../out-tsc/app",
5
//    "module": "es2015",
6
    "module": "esnext",
7 5
    "types": []
8 6
  },
9
  "exclude": [
10
    "src/test.ts",
11
    "**/*.spec.ts"
7
  "files": [
8
    "main.ts",
9
    "polyfills.ts"
10
  ],
11
  "include": [
12
    "src/**/*.d.ts"
12 13
  ]
13 14
}
modules/uoa-repository-dashboard-gui/trunk/src/.browserslistrc
1
# This file is currently used by autoprefixer to adjust CSS to support the below specified browsers
2
# For additional information regarding the format and rule options, please see:
3
# https://github.com/browserslist/browserslist#queries
4
# For IE 9-11 support, please uncomment the last line of the file and adjust as needed
5
> 0.5%
6
last 2 versions
7
Firefox ESR
8
not dead
9
# IE 9-11
0 10

  
modules/uoa-repository-dashboard-gui/trunk/src/environments/environment.ts
5 5
export const environment = {
6 6
  production: false,
7 7
  API_ENDPOINT: '/uoa-repository-manager-service',
8
  MATOMO_URL: 'https://analytics.openaire.eu/',
9
  MATOMO_SITE: 9222222,
8 10
  // FAQ_ENDPOINT: 'http://88.197.53.69:5555/api',
9 11
  // FAQ_HOMEPAGE: 'http://88.197.53.69:5555'
10 12
  FAQ_ENDPOINT: 'https://provide.openaire.eu/uoa-admin-tools/api',
......
17 19
 * import the following file, but please comment it out in production mode
18 20
 * because it will have performance impact when throw error
19 21
 */
20
// import 'zone.js/dist/zone-error';  // Included with Angular CLI.
22
// import 'zone.js/plugins/zone-error';  // Included with Angular CLI.
modules/uoa-repository-dashboard-gui/trunk/src/tsconfig.spec.json
2 2
  "extends": "../tsconfig.json",
3 3
  "compilerOptions": {
4 4
    "outDir": "../out-tsc/spec",
5
    "module": "commonjs",
6 5
    "types": [
7 6
      "jasmine",
8 7
      "node"
modules/uoa-repository-dashboard-gui/trunk/package-lock.json
1 1
{
2 2
  "name": "uoa-repository-manager-ui",
3 3
  "version": "0.0.0",
4
  "lockfileVersion": 2,
4
  "lockfileVersion": 1,
5 5
  "requires": true,
6
  "packages": {
7
    "": {
8
      "name": "uoa-repository-manager-ui",
9
      "version": "0.0.0",
10
      "dependencies": {
11
        "@angular/animations": "^6.0.3",
12
        "@angular/common": "^6.0.3",
13
        "@angular/compiler": "^6.0.3",
14
        "@angular/core": "^6.0.3",
15
        "@angular/forms": "^6.0.3",
16
        "@angular/http": "^6.0.3",
17
        "@angular/platform-browser": "^6.0.3",
18
        "@angular/platform-browser-dynamic": "^6.0.3",
19
        "@angular/router": "^6.0.3",
20
        "altair": "^1.0.0",
21
        "angular2-cookie-law": "^6.0.4",
22
        "bootstrap": "^4.1.3",
23
        "core-js": "^2.5.4",
24
        "highcharts": "^7.2.1",
25
        "highcharts-angular": "^2.4.0",
26
        "jquery": "^3.4.1",
27
        "jquery-bez": "^1.0.11",
28
        "ngx-bootstrap": "^3.0.1",
29
        "ngx-matomo": "^0.1.2",
30
        "rxjs": "6.3.3",
31
        "uikit": "^3.0.0-rc.19",
32
        "zone.js": "^0.8.26"
33
      },
34
      "devDependencies": {
35
        "@angular-devkit/build-angular": "~0.6.8",
36
        "@angular/cli": "~6.0.8",
37
        "@angular/compiler-cli": "^6.0.3",
38
        "@angular/language-service": "^6.0.3",
39
        "@types/jasmine": "~2.8.6",
40
        "@types/jasminewd2": "~2.0.3",
41
        "@types/node": "~8.9.4",
42
        "codelyzer": "~4.2.1",
43
        "jasmine-core": "~2.99.1",
44
        "jasmine-spec-reporter": "~4.2.1",
45
        "karma": "~4.0.0",
46
        "karma-chrome-launcher": "~2.2.0",
47
        "karma-coverage-istanbul-reporter": "~2.0.0",
48
        "karma-jasmine": "~1.1.1",
49
        "karma-jasmine-html-reporter": "^0.2.2",
50
        "node-sass": "^4.0.0",
51
        "protractor": "^5.4.1",
52
        "ts-node": "~5.0.1",
53
        "tslint": "~5.9.1",
54
        "typescript": "~2.7.2"
55
      }
56
    },
57
    "node_modules/@angular-devkit/architect": {
58
      "version": "0.6.8",
59
      "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.6.8.tgz",
60
      "integrity": "sha512-ZKTm/zC61iY9IBHOEAKoMSzZpvhkmv+1O/HHzpHEuR551jCzu6vSyCmMY9Z7GBcccscCV+hjeSMwgFrFRcqlkw==",
6
  "dependencies": {
7
    "@angular-devkit/architect": {
8
      "version": "0.1201.2",
9
      "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1201.2.tgz",
10
      "integrity": "sha512-hR5kI03WoeEY9dkAsQNLlhL1iEFC2L77ansaKquN+HCAeOGHby4w95suSlZUAg0r6ZhPhPH0tkIRZXU9NMa09g==",
61 11
      "dev": true,
62
      "dependencies": {
63
        "@angular-devkit/core": "0.6.8",
64
        "rxjs": "^6.0.0"
65
      },
66
      "engines": {
67
        "node": ">= 8.9.0",
68
        "npm": ">= 5.5.1"
12
      "requires": {
13
        "@angular-devkit/core": "12.1.2",
14
        "rxjs": "6.6.7"
69 15
      }
70 16
    },
71
    "node_modules/@angular-devkit/build-angular": {
72
      "version": "0.6.8",
73
      "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-0.6.8.tgz",
74
      "integrity": "sha512-VGqYAk8jpISraz2UHfsDre270NOUmV0CTSZw2p9sm5g/XIr5m+IHetFZz3gpoAr9+If2aFTs8Rt3sGdCRzwBqA==",
17
    "@angular-devkit/build-angular": {
18
      "version": "12.1.2",
19
      "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-12.1.2.tgz",
20
      "integrity": "sha512-tclYPz2fT422D7dCwAY0+NzGlWGaDbOzba4SJs4klbluzfl0vLyBq+mbKGc5HtDj8NMwvd/1yIcBiCJYEYXwiA==",
75 21
      "dev": true,
76
      "dependencies": {
77
        "@angular-devkit/architect": "0.6.8",
78
        "@angular-devkit/build-optimizer": "0.6.8",
79
        "@angular-devkit/core": "0.6.8",
... This diff was truncated because it exceeds the maximum size that can be displayed.

Also available in: Unified diff