Skip to content

Commit 82e5971

Browse files
committed
feat: add skeleton for consolidator and linker application
* add skeleton for consolidator and linker application
1 parent 96371ee commit 82e5971

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

65 files changed

+2653
-7
lines changed

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,3 +49,5 @@ apps/user-profile/src/assets/config/instanceFavicon.ico
4949
apps/publications/src/assets/config/instanceConfig.json
5050
apps/password-reset/src/assets/config/instanceConfig.json
5151
apps/password-reset/src/assets/config/instanceFavicon.ico
52+
53+
.angular

angular.json

Lines changed: 232 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -220,6 +220,122 @@
220220
},
221221
"tags": []
222222
},
223+
"consolidator": {
224+
"projectType": "application",
225+
"root": "apps/consolidator",
226+
"sourceRoot": "apps/consolidator/src",
227+
"prefix": "perun-web-apps",
228+
"architect": {
229+
"build": {
230+
"builder": "@angular-devkit/build-angular:browser",
231+
"outputs": ["{options.outputPath}"],
232+
"options": {
233+
"outputPath": "dist/apps/consolidator",
234+
"index": "apps/consolidator/src/index.html",
235+
"main": "apps/consolidator/src/main.ts",
236+
"polyfills": "apps/consolidator/src/polyfills.ts",
237+
"tsConfig": "apps/consolidator/tsconfig.app.json",
238+
"inlineStyleLanguage": "scss",
239+
"assets": ["apps/consolidator/src/favicon.ico", "apps/consolidator/src/assets"],
240+
"styles": ["apps/consolidator/src/styles.scss"],
241+
"scripts": []
242+
},
243+
"configurations": {
244+
"production": {
245+
"budgets": [
246+
{
247+
"type": "initial",
248+
"maximumWarning": "500kb",
249+
"maximumError": "1mb"
250+
},
251+
{
252+
"type": "anyComponentStyle",
253+
"maximumWarning": "2kb",
254+
"maximumError": "4kb"
255+
}
256+
],
257+
"fileReplacements": [
258+
{
259+
"replace": "apps/consolidator/src/environments/environment.ts",
260+
"with": "apps/consolidator/src/environments/environment.prod.ts"
261+
}
262+
],
263+
"outputHashing": "all"
264+
},
265+
"development": {
266+
"buildOptimizer": false,
267+
"optimization": false,
268+
"vendorChunk": true,
269+
"extractLicenses": false,
270+
"sourceMap": true,
271+
"namedChunks": true
272+
}
273+
},
274+
"defaultConfiguration": "production"
275+
},
276+
"serve": {
277+
"builder": "@angular-devkit/build-angular:dev-server",
278+
"configurations": {
279+
"production": {
280+
"browserTarget": "consolidator:build:production"
281+
},
282+
"development": {
283+
"browserTarget": "consolidator:build:development"
284+
}
285+
},
286+
"defaultConfiguration": "development"
287+
},
288+
"extract-i18n": {
289+
"builder": "@angular-devkit/build-angular:extract-i18n",
290+
"options": {
291+
"browserTarget": "consolidator:build"
292+
}
293+
},
294+
"lint": {
295+
"builder": "@nrwl/linter:eslint",
296+
"options": {
297+
"lintFilePatterns": ["apps/consolidator/src/**/*.ts", "apps/consolidator/src/**/*.html"]
298+
}
299+
},
300+
"test": {
301+
"builder": "@nrwl/jest:jest",
302+
"outputs": ["coverage/apps/consolidator"],
303+
"options": {
304+
"jestConfig": "apps/consolidator/jest.config.js",
305+
"passWithNoTests": true
306+
}
307+
}
308+
},
309+
"tags": []
310+
},
311+
"consolidator-e2e": {
312+
"root": "apps/consolidator-e2e",
313+
"sourceRoot": "apps/consolidator-e2e/src",
314+
"projectType": "application",
315+
"architect": {
316+
"e2e": {
317+
"builder": "@nrwl/cypress:cypress",
318+
"options": {
319+
"cypressConfig": "apps/consolidator-e2e/cypress.json",
320+
"devServerTarget": "consolidator:serve:development"
321+
},
322+
"configurations": {
323+
"production": {
324+
"devServerTarget": "consolidator:serve:production"
325+
}
326+
}
327+
},
328+
"lint": {
329+
"builder": "@nrwl/linter:eslint",
330+
"outputs": ["{options.outputFile}"],
331+
"options": {
332+
"lintFilePatterns": ["apps/consolidator-e2e/**/*.{js,ts}"]
333+
}
334+
}
335+
},
336+
"tags": [],
337+
"implicitDependencies": ["consolidator"]
338+
},
223339
"general": {
224340
"projectType": "library",
225341
"root": "libs/general",
@@ -249,6 +365,122 @@
249365
},
250366
"tags": []
251367
},
368+
"linker": {
369+
"projectType": "application",
370+
"root": "apps/linker",
371+
"sourceRoot": "apps/linker/src",
372+
"prefix": "perun-web-apps",
373+
"architect": {
374+
"build": {
375+
"builder": "@angular-devkit/build-angular:browser",
376+
"outputs": ["{options.outputPath}"],
377+
"options": {
378+
"outputPath": "dist/apps/linker",
379+
"index": "apps/linker/src/index.html",
380+
"main": "apps/linker/src/main.ts",
381+
"polyfills": "apps/linker/src/polyfills.ts",
382+
"tsConfig": "apps/linker/tsconfig.app.json",
383+
"inlineStyleLanguage": "scss",
384+
"assets": ["apps/linker/src/favicon.ico", "apps/linker/src/assets"],
385+
"styles": ["apps/linker/src/styles.scss"],
386+
"scripts": []
387+
},
388+
"configurations": {
389+
"production": {
390+
"budgets": [
391+
{
392+
"type": "initial",
393+
"maximumWarning": "500kb",
394+
"maximumError": "1mb"
395+
},
396+
{
397+
"type": "anyComponentStyle",
398+
"maximumWarning": "2kb",
399+
"maximumError": "4kb"
400+
}
401+
],
402+
"fileReplacements": [
403+
{
404+
"replace": "apps/linker/src/environments/environment.ts",
405+
"with": "apps/linker/src/environments/environment.prod.ts"
406+
}
407+
],
408+
"outputHashing": "all"
409+
},
410+
"development": {
411+
"buildOptimizer": false,
412+
"optimization": false,
413+
"vendorChunk": true,
414+
"extractLicenses": false,
415+
"sourceMap": true,
416+
"namedChunks": true
417+
}
418+
},
419+
"defaultConfiguration": "production"
420+
},
421+
"serve": {
422+
"builder": "@angular-devkit/build-angular:dev-server",
423+
"configurations": {
424+
"production": {
425+
"browserTarget": "linker:build:production"
426+
},
427+
"development": {
428+
"browserTarget": "linker:build:development"
429+
}
430+
},
431+
"defaultConfiguration": "development"
432+
},
433+
"extract-i18n": {
434+
"builder": "@angular-devkit/build-angular:extract-i18n",
435+
"options": {
436+
"browserTarget": "linker:build"
437+
}
438+
},
439+
"lint": {
440+
"builder": "@nrwl/linter:eslint",
441+
"options": {
442+
"lintFilePatterns": ["apps/linker/src/**/*.ts", "apps/linker/src/**/*.html"]
443+
}
444+
},
445+
"test": {
446+
"builder": "@nrwl/jest:jest",
447+
"outputs": ["coverage/apps/linker"],
448+
"options": {
449+
"jestConfig": "apps/linker/jest.config.js",
450+
"passWithNoTests": true
451+
}
452+
}
453+
},
454+
"tags": []
455+
},
456+
"linker-e2e": {
457+
"root": "apps/linker-e2e",
458+
"sourceRoot": "apps/linker-e2e/src",
459+
"projectType": "application",
460+
"architect": {
461+
"e2e": {
462+
"builder": "@nrwl/cypress:cypress",
463+
"options": {
464+
"cypressConfig": "apps/linker-e2e/cypress.json",
465+
"devServerTarget": "linker:serve:development"
466+
},
467+
"configurations": {
468+
"production": {
469+
"devServerTarget": "linker:serve:production"
470+
}
471+
}
472+
},
473+
"lint": {
474+
"builder": "@nrwl/linter:eslint",
475+
"outputs": ["{options.outputFile}"],
476+
"options": {
477+
"lintFilePatterns": ["apps/linker-e2e/**/*.{js,ts}"]
478+
}
479+
}
480+
},
481+
"tags": [],
482+
"implicitDependencies": ["linker"]
483+
},
252484
"password-reset": {
253485
"projectType": "application",
254486
"schematics": {

apps/consolidator-e2e/.eslintrc.json

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
{
2+
"extends": ["plugin:cypress/recommended", "../../.eslintrc.json"],
3+
"ignorePatterns": ["!**/*"],
4+
"overrides": [
5+
{
6+
"files": ["*.ts", "*.tsx", "*.js", "*.jsx"],
7+
"rules": {}
8+
}
9+
]
10+
}

apps/consolidator-e2e/cypress.json

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
{
2+
"fileServerFolder": ".",
3+
"fixturesFolder": "./src/fixtures",
4+
"integrationFolder": "./src/integration",
5+
"modifyObstructiveCode": false,
6+
"supportFile": "./src/support/index.ts",
7+
"pluginsFile": false,
8+
"video": true,
9+
"videosFolder": "../../dist/cypress/apps/consolidator-e2e/videos",
10+
"screenshotsFolder": "../../dist/cypress/apps/consolidator-e2e/screenshots",
11+
"chromeWebSecurity": false
12+
}
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
{
2+
"name": "Using fixtures to represent data",
3+
"email": "[email protected]"
4+
}
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
import { getGreeting } from '../support/app.po';
2+
3+
describe('consolidator', () => {
4+
beforeEach(() => cy.visit('/'));
5+
6+
it('should display welcome message', () => {
7+
// Custom command example, see `../support/commands.ts` file
8+
cy.login('[email protected]', 'myPassword');
9+
10+
// Function helper example, see `../support/app.po.ts` file
11+
getGreeting().contains('Welcome consolidator');
12+
});
13+
});
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
export const getGreeting = () => cy.get('h1');
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
// ***********************************************
2+
// This example commands.js shows you how to
3+
// create various custom commands and overwrite
4+
// existing commands.
5+
//
6+
// For more comprehensive examples of custom
7+
// commands please read more here:
8+
// https://on.cypress.io/custom-commands
9+
// ***********************************************
10+
11+
// eslint-disable-next-line @typescript-eslint/no-namespace
12+
declare namespace Cypress {
13+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
14+
interface Chainable<Subject> {
15+
login(email: string, password: string): void;
16+
}
17+
}
18+
//
19+
// -- This is a parent command --
20+
Cypress.Commands.add('login', (email, password) => {
21+
console.log('Custom command example: Login', email, password);
22+
});
23+
//
24+
// -- This is a child command --
25+
// Cypress.Commands.add("drag", { prevSubject: 'element'}, (subject, options) => { ... })
26+
//
27+
//
28+
// -- This is a dual command --
29+
// Cypress.Commands.add("dismiss", { prevSubject: 'optional'}, (subject, options) => { ... })
30+
//
31+
//
32+
// -- This will overwrite an existing command --
33+
// Cypress.Commands.overwrite("visit", (originalFn, url, options) => { ... })
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
// ***********************************************************
2+
// This example support/index.js is processed and
3+
// loaded automatically before your test files.
4+
//
5+
// This is a great place to put global configuration and
6+
// behavior that modifies Cypress.
7+
//
8+
// You can change the location of this file or turn off
9+
// automatically serving support files with the
10+
// 'supportFile' configuration option.
11+
//
12+
// You can read more here:
13+
// https://on.cypress.io/configuration
14+
// ***********************************************************
15+
16+
// Import commands.js using ES2015 syntax:
17+
import './commands';

apps/consolidator-e2e/tsconfig.json

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
{
2+
"extends": "../../tsconfig.base.json",
3+
"compilerOptions": {
4+
"sourceMap": false,
5+
"outDir": "../../dist/out-tsc",
6+
"allowJs": true,
7+
"types": ["cypress", "node"],
8+
"forceConsistentCasingInFileNames": true,
9+
"strict": true,
10+
"noImplicitOverride": true,
11+
"noPropertyAccessFromIndexSignature": true,
12+
"noImplicitReturns": true,
13+
"noFallthroughCasesInSwitch": true
14+
},
15+
"include": ["src/**/*.ts", "src/**/*.js"],
16+
"angularCompilerOptions": {
17+
"strictInjectionParameters": true,
18+
"strictInputAccessModifiers": true,
19+
"strictTemplates": true
20+
}
21+
}

apps/consolidator/.browserslistrc

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
# This file is used by the build system to adjust CSS and JS output to support the specified browsers below.
2+
# For additional information regarding the format and rule options, please see:
3+
# https://github.com/browserslist/browserslist#queries
4+
5+
# For the full list of supported browsers by the Angular framework, please see:
6+
# https://angular.io/guide/browser-support
7+
8+
# You can see what browsers were selected by your queries by running:
9+
# npx browserslist
10+
11+
last 1 Chrome version
12+
last 1 Firefox version
13+
last 2 Edge major versions
14+
last 2 Safari major versions
15+
last 2 iOS major versions
16+
Firefox ESR

0 commit comments

Comments
 (0)