diff --git a/.gitignore b/.gitignore index 29a73ad..0186048 100644 --- a/.gitignore +++ b/.gitignore @@ -2,6 +2,10 @@ # Created by https://www.toptal.com/developers/gitignore/api/aspnetcore,node,visualstudio,visualstudiocode,vscode,windows,linux,angular # Edit at https://www.toptal.com/developers/gitignore?templates=aspnetcore,node,visualstudio,visualstudiocode,vscode,windows,linux,angular +#Swagger +./SessionCompanion/SessionCompanion/SessionCompanion.xml +./SessionCompanion/SessionCompanion.ViewModels/SessionCompanion.ViewModels.xml + ### Angular ### ## Angular ## # compiled output diff --git a/SessionCompanion/SessionCompanion.ViewModels/SessionCompanion.ViewModels.xml b/SessionCompanion/SessionCompanion.ViewModels/SessionCompanion.ViewModels.xml index 0069b97..e8fa42c 100644 --- a/SessionCompanion/SessionCompanion.ViewModels/SessionCompanion.ViewModels.xml +++ b/SessionCompanion/SessionCompanion.ViewModels/SessionCompanion.ViewModels.xml @@ -1,964 +1,964 @@ - - - - SessionCompanion.ViewModels - - - - - Identyfikator przynależności postaci - - - - - Kod błędu - - - - - Wiadomość błędu do pokazania - - - - - Wiadomość mówiąca o poprawnym wykonaniu zadania - - - - - Konstruktor obiektu - - Wiadomość dotycząca operacji - - - - Kod odpowiedzi, domyślnie nadawany jest 200 - - - - - Wiadomość dotycząca wykoanania operacji - - - - - Identyfikator przeszłości postaci - - - - - Identyfikator biografii postaci - - - - - Identyfikator postaci - - - - - Nazwa postaci - - - - - Identyfikator klasy postaci - - - - - Identyfikator przynależności postaci - - - - - Identyfikator przeszłości postaci - - - - - Płeć postaci - - - - - Identyfikator postaci - - - - - Nazwa postaci - - - - - Poziom postaci - - - - - Aktualna ilość życia postaci - - - - - Maksymalna ilość życia psotaci - - - - - Klasa postaci - - - - - Rasa postaci - - - - - Identyfikator postaci - - - - - Nazwa postaci - - - - - Poziom postaci - - - - - Aktualna ilość życia postaci - - - - - Klasa postaci - - - - - Id postaci - - - - - Modyfikator rzutów na charyzme - - - - - Modyfikator rzutów obronnych na charyzme - - - - - Czy postać posiada biegłość w charyźmie - - - - - Wartość oszustwa - - - - - Czy postać posiada biegłość w oszustwie - - - - - Wartość umiejętności zastraszania - - - - - Czy postać posiada biegłość w zastraszaniu - - - - - Wartość umiejętności występowania - - - - - Czy postać posiada biegłość w występowaniu - - - - - Wartość umiejętności perswazji - - - - - Czy postać posiada biegłość w perswazji - - - - - Wartośc Constitution - - - - - Modyfikator Constitution - - - - - Wartość rzutów obronnych na constitiution - - - - - Czy postać posiada biegłość w Constitution - - - - - Wartość Dexterity - - - - - Modyfiukator Dexterity - - - - - Biegłośc w Dexterity - - - - - Czy postać posiada biegłość w Dexterity - - - - - Wartość umiejętności akrobatyki - - - - - Czy postać posiada biegłość w akrobatyce - - - - - Wartość umiejętności zwinnych dłoni - - - - - Czy postać posiada biegłość w zwinnych dłoniach - - - - - Wartość umiejętności skradania się - - - - - Czy postać posiada biegłość w skradaniu się - - - - - Wartośc Intelligence - - - - - Modyfikator Intelligence - - - - - Biegłość w Intelligence - - - - - Czy posiada biegłośc w Intellgence - - - - - Wartość umiejętności wiedzy tejemnej - - - - - Czy postać posiada biegłość w wiedzy tejemnej - - - - - Wartość umiejętności historii - - - - - Czy postać posiada biegłość w historii - - - - - Wartość umiejętności śledztwa - - - - - Czy postać posiada biegłość w śledztwie - - - - - Wartość umiejętności przyrody - - - - - Czy postać posiada biegłość w przyrodzie - - - - - Wartość umiejętności religii - - - - - Czy postać posiada biegłość w religii - - - - - Wartośc siły - - - - - Modyfikator siły - - - - - Biegłość w Sile - - - - - Czy posiada biegłość w sile - - - - - Wartość umiejętności atletyki - - - - - Czy postać posiada biegłość w atletyce - - - - - Wartośc wisdom - - - - - Modyfikator wisdom - - - - - Biegłość w Wisdom - - - - - Czy postać posiada biegłość w wisdom - - - - - Wartość umiejętności opieki nad zwierzętami - - - - - Czy postać posiada biegłość w opiece nad zwierzętami - - - - - Wartość umiejętności intuicji - - - - - Czy postać posiada biegłość w intuicji - - - - - Wartość umiejętności medycyny - - - - - Czy postać posiada biegłość w medycynie - - - - - Wartość umiejętności percepcji - - - - - Czy postać posiada biegłość w percepcji - - - - - Wartość umiejętności sztuki przetrwania - - - - - Czy postać posiada biegłość w sztuce przetrwania - - - - - Identyfikator postaci - - - - - Id użytkownika do którego przypisana jest postać - - - - - Nazwa postaci - - - - - Nazwa klasy postaci - - - - - Poziom postaci - - - - - Identyfikator postaci - - - - - Id użytkownika do którego przypisana jest postać - - - - - Identyfikator charyzmy postaci - - - - - Identyfikator postaci - - - - - Wartość charyzmy - - - - - Modyfikator rzutów - - - - - Modyfikator rzutów obronnych - - - - - Czy postać posiada biegłość w charyźmie - - - - - Wartość umiejętności oszustwa - - - - - Czy postać posiada biegłość w oszustwie - - - - - Wartość umiejętności zastraszania - - - - - Czy postać posiada biegłość w zastraszaniu - - - - - Wartość umiejętności występowania - - - - - Czy postać posiada biegłość w występowaniu - - - - - Wartość umiejętności perswazji - - - - - Czy postać posiada biegłość w perswazji - - - - - Identyfikator klasy postaci - - - - - Nazwa klasy - - - - - Identyfikator kondycji postaci - - - - - Identyfikator postaci - - - - - Wartość kondycji - - - - - Modyfikator rzutów - - - - - Modyfikator rzutów obronnych - - - - - Czy postać posiada biegłość w kondycji - - - - - Identyfikator zręczności postaci - - - - - Identyfikator postaci - - - - - Wartość zręczności - - - - - Modyfikator rzutów - - - - - Modyfikator rzutów obronnych - - - - - Czy postać posiada biegłość w zręczności - - - - - Wartość umiejętności akrobatyki - - - - - Czy postać posiada biegłość w akrobatyce - - - - - Wartość umiejętności zwinnych dłoni - - - - - Czy postać posiada biegłość w zwinnych dłoniach - - - - - Wartość umiejętności skradania się - - - - - Czy postać posiada biegłość w skradaniu się - - - - - Rodzaje waluty - - - - - Bronz - - - - - Srebro - - - - - Elektrum - - - - - Złoto - - - - - Platyna - - - - - Identyfikator inteligencji postaci - - - - - Identyfikator postaci - - - - - Wartość inteligencji - - - - - Modyfikator rzutów - - - - - Modyfikator rzutów obronnych - - - - - Czy postać posiada biegłość w inteligencji - - - - - Wartość umiejętności wiedzy tejemnej - - - - - Czy postać posiada biegłość w wiedzy tejemnej - - - - - Wartość umiejętności historii - - - - - Czy postać posiada biegłość w historii - - - - - Wartość umiejętności śledztwa - - - - - Czy postać posiada biegłość w śledztwie - - - - - Wartość umiejętności przyrody - - - - - Czy postać posiada biegłość w przyrodzie - - - - - Wartość umiejętności religii - - - - - Czy postać posiada biegłość w religii - - - - - Identyfikator rasy postaci - - - - - Nazwa rasy - - - - - Identyfikator statystyk postaci - - - - - Identyfikator postaci - - - - - Ilość punktów doświadczenia - - - - - Poziom postaci - - - - - Szybkość postaci - - - - - Inicjatywa postaci - - - - - Maksymalna wartość punktów życia - - - - - Aktualna wartość punktów życia - - - - - Klasa pancerza - - - - - Premia z biegłości - - - - - Identyfikator siły postaci - - - - - Identyfikator postaci - - - - - Wartość siły - - - - - Modyfikator rzutów - - - - - Modyfikator rzutów obronnych - - - - - Czy postać posiada biegłość w sile - - - - - Wartość umiejętności atletyki - - - - - Czy postać posiada biegłość w atletyce - - - - - Nazwa użytkowika - - - - - Hasło użytkownika - - - - - Identyfikator użytkownika - - - - - Nazwa użytkowika - - - - - Hasło użytkownika - - - - - Identyfikator mądrości postaci - - - - - Identyfikator postaci - - - - - Wartość mądrości - - - - - Modyfikator rzutów - - - - - Modyfikator rzutów obronnych - - - - - Czy postać posiada biegłość w mądrości - - - - - Wartość umiejętności opieki nad zwierzętami - - - - - Czy postać posiada biegłość w opiece nad zwierzętami - - - - - Wartość umiejętności intuicji - - - - - Czy postać posiada biegłość w intuicji - - - - - Wartość umiejętności medycyny - - - - - Czy postać posiada biegłość w medycynie - - - - - Wartość umiejętności percepcji - - - - - Czy postać posiada biegłość w percepcji - - - - - Wartość umiejętności sztuki przetrwania - - - - - Czy postać posiada biegłość w sztuce przetrwania - - - - + + + + SessionCompanion.ViewModels + + + + + Identyfikator przynależności postaci + + + + + Kod błędu + + + + + Wiadomość błędu do pokazania + + + + + Wiadomość mówiąca o poprawnym wykonaniu zadania + + + + + Konstruktor obiektu + + Wiadomość dotycząca operacji + + + + Kod odpowiedzi, domyślnie nadawany jest 200 + + + + + Wiadomość dotycząca wykoanania operacji + + + + + Identyfikator przeszłości postaci + + + + + Identyfikator biografii postaci + + + + + Identyfikator postaci + + + + + Nazwa postaci + + + + + Identyfikator klasy postaci + + + + + Identyfikator przynależności postaci + + + + + Identyfikator przeszłości postaci + + + + + Płeć postaci + + + + + Identyfikator postaci + + + + + Nazwa postaci + + + + + Poziom postaci + + + + + Aktualna ilość życia postaci + + + + + Maksymalna ilość życia psotaci + + + + + Klasa postaci + + + + + Rasa postaci + + + + + Identyfikator postaci + + + + + Nazwa postaci + + + + + Poziom postaci + + + + + Aktualna ilość życia postaci + + + + + Klasa postaci + + + + + Id postaci + + + + + Modyfikator rzutów na charyzme + + + + + Modyfikator rzutów obronnych na charyzme + + + + + Czy postać posiada biegłość w charyźmie + + + + + Wartość oszustwa + + + + + Czy postać posiada biegłość w oszustwie + + + + + Wartość umiejętności zastraszania + + + + + Czy postać posiada biegłość w zastraszaniu + + + + + Wartość umiejętności występowania + + + + + Czy postać posiada biegłość w występowaniu + + + + + Wartość umiejętności perswazji + + + + + Czy postać posiada biegłość w perswazji + + + + + Wartośc Constitution + + + + + Modyfikator Constitution + + + + + Wartość rzutów obronnych na constitiution + + + + + Czy postać posiada biegłość w Constitution + + + + + Wartość Dexterity + + + + + Modyfiukator Dexterity + + + + + Biegłośc w Dexterity + + + + + Czy postać posiada biegłość w Dexterity + + + + + Wartość umiejętności akrobatyki + + + + + Czy postać posiada biegłość w akrobatyce + + + + + Wartość umiejętności zwinnych dłoni + + + + + Czy postać posiada biegłość w zwinnych dłoniach + + + + + Wartość umiejętności skradania się + + + + + Czy postać posiada biegłość w skradaniu się + + + + + Wartośc Intelligence + + + + + Modyfikator Intelligence + + + + + Biegłość w Intelligence + + + + + Czy posiada biegłośc w Intellgence + + + + + Wartość umiejętności wiedzy tejemnej + + + + + Czy postać posiada biegłość w wiedzy tejemnej + + + + + Wartość umiejętności historii + + + + + Czy postać posiada biegłość w historii + + + + + Wartość umiejętności śledztwa + + + + + Czy postać posiada biegłość w śledztwie + + + + + Wartość umiejętności przyrody + + + + + Czy postać posiada biegłość w przyrodzie + + + + + Wartość umiejętności religii + + + + + Czy postać posiada biegłość w religii + + + + + Wartośc siły + + + + + Modyfikator siły + + + + + Biegłość w Sile + + + + + Czy posiada biegłość w sile + + + + + Wartość umiejętności atletyki + + + + + Czy postać posiada biegłość w atletyce + + + + + Wartośc wisdom + + + + + Modyfikator wisdom + + + + + Biegłość w Wisdom + + + + + Czy postać posiada biegłość w wisdom + + + + + Wartość umiejętności opieki nad zwierzętami + + + + + Czy postać posiada biegłość w opiece nad zwierzętami + + + + + Wartość umiejętności intuicji + + + + + Czy postać posiada biegłość w intuicji + + + + + Wartość umiejętności medycyny + + + + + Czy postać posiada biegłość w medycynie + + + + + Wartość umiejętności percepcji + + + + + Czy postać posiada biegłość w percepcji + + + + + Wartość umiejętności sztuki przetrwania + + + + + Czy postać posiada biegłość w sztuce przetrwania + + + + + Identyfikator postaci + + + + + Id użytkownika do którego przypisana jest postać + + + + + Nazwa postaci + + + + + Nazwa klasy postaci + + + + + Poziom postaci + + + + + Identyfikator postaci + + + + + Id użytkownika do którego przypisana jest postać + + + + + Identyfikator charyzmy postaci + + + + + Identyfikator postaci + + + + + Wartość charyzmy + + + + + Modyfikator rzutów + + + + + Modyfikator rzutów obronnych + + + + + Czy postać posiada biegłość w charyźmie + + + + + Wartość umiejętności oszustwa + + + + + Czy postać posiada biegłość w oszustwie + + + + + Wartość umiejętności zastraszania + + + + + Czy postać posiada biegłość w zastraszaniu + + + + + Wartość umiejętności występowania + + + + + Czy postać posiada biegłość w występowaniu + + + + + Wartość umiejętności perswazji + + + + + Czy postać posiada biegłość w perswazji + + + + + Identyfikator klasy postaci + + + + + Nazwa klasy + + + + + Identyfikator kondycji postaci + + + + + Identyfikator postaci + + + + + Wartość kondycji + + + + + Modyfikator rzutów + + + + + Modyfikator rzutów obronnych + + + + + Czy postać posiada biegłość w kondycji + + + + + Identyfikator zręczności postaci + + + + + Identyfikator postaci + + + + + Wartość zręczności + + + + + Modyfikator rzutów + + + + + Modyfikator rzutów obronnych + + + + + Czy postać posiada biegłość w zręczności + + + + + Wartość umiejętności akrobatyki + + + + + Czy postać posiada biegłość w akrobatyce + + + + + Wartość umiejętności zwinnych dłoni + + + + + Czy postać posiada biegłość w zwinnych dłoniach + + + + + Wartość umiejętności skradania się + + + + + Czy postać posiada biegłość w skradaniu się + + + + + Rodzaje waluty + + + + + Bronz + + + + + Srebro + + + + + Elektrum + + + + + Złoto + + + + + Platyna + + + + + Identyfikator inteligencji postaci + + + + + Identyfikator postaci + + + + + Wartość inteligencji + + + + + Modyfikator rzutów + + + + + Modyfikator rzutów obronnych + + + + + Czy postać posiada biegłość w inteligencji + + + + + Wartość umiejętności wiedzy tejemnej + + + + + Czy postać posiada biegłość w wiedzy tejemnej + + + + + Wartość umiejętności historii + + + + + Czy postać posiada biegłość w historii + + + + + Wartość umiejętności śledztwa + + + + + Czy postać posiada biegłość w śledztwie + + + + + Wartość umiejętności przyrody + + + + + Czy postać posiada biegłość w przyrodzie + + + + + Wartość umiejętności religii + + + + + Czy postać posiada biegłość w religii + + + + + Identyfikator rasy postaci + + + + + Nazwa rasy + + + + + Identyfikator statystyk postaci + + + + + Identyfikator postaci + + + + + Ilość punktów doświadczenia + + + + + Poziom postaci + + + + + Szybkość postaci + + + + + Inicjatywa postaci + + + + + Maksymalna wartość punktów życia + + + + + Aktualna wartość punktów życia + + + + + Klasa pancerza + + + + + Premia z biegłości + + + + + Identyfikator siły postaci + + + + + Identyfikator postaci + + + + + Wartość siły + + + + + Modyfikator rzutów + + + + + Modyfikator rzutów obronnych + + + + + Czy postać posiada biegłość w sile + + + + + Wartość umiejętności atletyki + + + + + Czy postać posiada biegłość w atletyce + + + + + Nazwa użytkowika + + + + + Hasło użytkownika + + + + + Identyfikator użytkownika + + + + + Nazwa użytkowika + + + + + Hasło użytkownika + + + + + Identyfikator mądrości postaci + + + + + Identyfikator postaci + + + + + Wartość mądrości + + + + + Modyfikator rzutów + + + + + Modyfikator rzutów obronnych + + + + + Czy postać posiada biegłość w mądrości + + + + + Wartość umiejętności opieki nad zwierzętami + + + + + Czy postać posiada biegłość w opiece nad zwierzętami + + + + + Wartość umiejętności intuicji + + + + + Czy postać posiada biegłość w intuicji + + + + + Wartość umiejętności medycyny + + + + + Czy postać posiada biegłość w medycynie + + + + + Wartość umiejętności percepcji + + + + + Czy postać posiada biegłość w percepcji + + + + + Wartość umiejętności sztuki przetrwania + + + + + Czy postać posiada biegłość w sztuce przetrwania + + + + diff --git a/SessionCompanion/SessionCompanion/ClientApp/angular.json b/SessionCompanion/SessionCompanion/ClientApp/angular.json index 1559646..b79e913 100644 --- a/SessionCompanion/SessionCompanion/ClientApp/angular.json +++ b/SessionCompanion/SessionCompanion/ClientApp/angular.json @@ -26,6 +26,7 @@ "styles": [ "./node_modules/@angular/material/prebuilt-themes/indigo-pink.css", "node_modules/bootstrap/dist/css/bootstrap.min.css", + "node_modules/rpg-awesome/css/rpg-awesome.min.css", "src/styles.css" ], "scripts": [] @@ -148,4 +149,4 @@ } }, "defaultProject": "SessionCompanion" -} \ No newline at end of file +} diff --git a/SessionCompanion/SessionCompanion/ClientApp/package-lock.json b/SessionCompanion/SessionCompanion/ClientApp/package-lock.json index d012404..b59a411 100644 --- a/SessionCompanion/SessionCompanion/ClientApp/package-lock.json +++ b/SessionCompanion/SessionCompanion/ClientApp/package-lock.json @@ -10513,6 +10513,11 @@ "inherits": "^2.0.1" } }, + "rpg-awesome": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/rpg-awesome/-/rpg-awesome-0.2.0.tgz", + "integrity": "sha512-+jTuYWHOs8iZV5+XKvI/7Ojr0k4pLX/dRpa2LHXReGMQI6h0cGvNxIh/AQY1zhAC7LPcNXnPTliD1/ugB/DbRA==" + }, "run-async": { "version": "2.4.1", "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", @@ -12046,12 +12051,6 @@ } } }, - "tslint-config-prettier": { - "version": "1.18.0", - "resolved": "https://registry.npmjs.org/tslint-config-prettier/-/tslint-config-prettier-1.18.0.tgz", - "integrity": "sha512-xPw9PgNPLG3iKRxmK7DWr+Ea/SzrvfHtjFt5LBl61gk2UBG/DB9kCXRjv+xyIU1rUtnayLeMUVJBcMX8Z17nDg==", - "dev": true - }, "tsutils": { "version": "2.29.0", "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-2.29.0.tgz", diff --git a/SessionCompanion/SessionCompanion/ClientApp/package.json b/SessionCompanion/SessionCompanion/ClientApp/package.json index 5e89112..ca095c7 100644 --- a/SessionCompanion/SessionCompanion/ClientApp/package.json +++ b/SessionCompanion/SessionCompanion/ClientApp/package.json @@ -34,6 +34,7 @@ "jquery": "3.4.1", "oidc-client": "^1.9.1", "popper.js": "^1.16.0", + "rpg-awesome": "^0.2.0", "rxjs": "^6.5.3", "zone.js": "0.9.1" }, diff --git a/SessionCompanion/SessionCompanion/ClientApp/src/app/app.module.ts b/SessionCompanion/SessionCompanion/ClientApp/src/app/app.module.ts index d829109..ccc3c8a 100644 --- a/SessionCompanion/SessionCompanion/ClientApp/src/app/app.module.ts +++ b/SessionCompanion/SessionCompanion/ClientApp/src/app/app.module.ts @@ -8,8 +8,8 @@ import { appRoutingModule } from '../app.routing'; import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; import { SignInComponent } from './components/sign-in/sign-in.component'; import { RegistrationComponent } from './components/registration/registration.component'; -import { GameMasterDashboardComponent} from './components/game-master-dashboard/game-master-dashboard.component'; -import {PlayerDashboardComponent} from './components/player-dashboard/player-dashboard.component'; +import { GameMasterDashboardComponent } from './components/game-master-dashboard/game-master-dashboard.component'; +import { PlayerDashboardComponent } from './components/player-dashboard/player-dashboard.component'; import { SelectCharacterComponent } from './components/select-character/select-character.component'; import { MatCardModule, @@ -18,15 +18,22 @@ import { MatInputModule, MatButtonModule, MatCheckboxModule, - MatIconModule, MatSidenavModule, MatToolbarModule, MatListModule + MatIconModule, + MatSidenavModule, + MatToolbarModule, + MatListModule, + MatPaginatorModule, + MatTableModule, + MatSortModule, } from '@angular/material'; -import {UserService} from '../services/user.service'; +import { UserService } from '../services/user.service'; import { StoreModule } from '@ngrx/store'; import { StoreDevtoolsModule } from '@ngrx/store-devtools'; -import {environment} from '../environments/environment'; -import {reducers} from './store/models/app-state.model'; -import {CharacterService} from '../services/character.service'; +import { environment } from '../environments/environment'; +import { reducers } from './store/models/app-state.model'; +import { CharacterService } from '../services/character.service'; import { AbilityCardComponent } from './components/ability-card/ability-card.component'; +import { GameMasterSpellsTableComponent } from './components/game-master-spells-table/game-master-spells-table.component'; @NgModule({ declarations: [ @@ -38,9 +45,10 @@ import { AbilityCardComponent } from './components/ability-card/ability-card.com PlayerDashboardComponent, SelectCharacterComponent, AbilityCardComponent, + GameMasterSpellsTableComponent, ], imports: [ -BrowserModule.withServerTransition({ appId: 'ng-cli-universal' }), + BrowserModule.withServerTransition({ appId: 'ng-cli-universal' }), HttpClientModule, FormsModule, ReactiveFormsModule, @@ -56,15 +64,16 @@ BrowserModule.withServerTransition({ appId: 'ng-cli-universal' }), MatSidenavModule, MatToolbarModule, MatListModule, + MatPaginatorModule, StoreModule.forRoot(reducers), StoreDevtoolsModule.instrument({ - logOnly: environment.production - }) + logOnly: environment.production, + }), + MatTableModule, + MatSortModule, ], - providers: [ - UserService, - CharacterService - ], - bootstrap: [AppComponent] + providers: [UserService, CharacterService], + bootstrap: [AppComponent], + entryComponents: [GameMasterSpellsTableComponent], }) -export class AppModule { } +export class AppModule {} diff --git a/SessionCompanion/SessionCompanion/ClientApp/src/app/components/game-master-dashboard/game-master-dashboard.component.css b/SessionCompanion/SessionCompanion/ClientApp/src/app/components/game-master-dashboard/game-master-dashboard.component.css index 49d12fc..af117d2 100644 --- a/SessionCompanion/SessionCompanion/ClientApp/src/app/components/game-master-dashboard/game-master-dashboard.component.css +++ b/SessionCompanion/SessionCompanion/ClientApp/src/app/components/game-master-dashboard/game-master-dashboard.component.css @@ -10,6 +10,16 @@ right: 0; } +.no-wrap { + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; +} + +.left-nav-item *{ + padding-right: 0px !important; +} + .leftnav{ background-color: #3D4751; border-right:none; diff --git a/SessionCompanion/SessionCompanion/ClientApp/src/app/components/game-master-dashboard/game-master-dashboard.component.html b/SessionCompanion/SessionCompanion/ClientApp/src/app/components/game-master-dashboard/game-master-dashboard.component.html index 34918b5..a89fb07 100644 --- a/SessionCompanion/SessionCompanion/ClientApp/src/app/components/game-master-dashboard/game-master-dashboard.component.html +++ b/SessionCompanion/SessionCompanion/ClientApp/src/app/components/game-master-dashboard/game-master-dashboard.component.html @@ -17,36 +17,41 @@ - - folder - Link 1 - - - folder - Link 2 - - - folder - Link 3 - +
+ + + + {{item.displayName}} + + expand_more + expand_less + + + + +
+
+ + + + {{child.displayName}} + + + +
+
+
SessionCompanion +
+ + + +
{ if ( diff --git a/SessionCompanion/SessionCompanion/ClientApp/src/app/components/game-master-spells-table/game-master-spells-table.component.css b/SessionCompanion/SessionCompanion/ClientApp/src/app/components/game-master-spells-table/game-master-spells-table.component.css new file mode 100644 index 0000000..0144f37 --- /dev/null +++ b/SessionCompanion/SessionCompanion/ClientApp/src/app/components/game-master-spells-table/game-master-spells-table.component.css @@ -0,0 +1,38 @@ +table { + width: 100%; + background-color: initial; +} + +mat-paginator{ + background-color: initial; + color: white; +} + +th{ + color: whitesmoke; +} + +td{ + color: whitesmoke; +} + +::ng-deep .mat-select-arrow{ + color: whitesmoke; +} + +::ng-deep .mat-select-value { + color: white +} + +.mat-sort-header-container{ + color: whitesmoke !important; +} + +.mat-form-field { + font-size: 14px; + width: 100%; +} + +td, th { + width: 25%; +} diff --git a/SessionCompanion/SessionCompanion/ClientApp/src/app/components/game-master-spells-table/game-master-spells-table.component.html b/SessionCompanion/SessionCompanion/ClientApp/src/app/components/game-master-spells-table/game-master-spells-table.component.html new file mode 100644 index 0000000..f7f460f --- /dev/null +++ b/SessionCompanion/SessionCompanion/ClientApp/src/app/components/game-master-spells-table/game-master-spells-table.component.html @@ -0,0 +1,43 @@ + + Filter + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Name {{row.name}} Range {{row.range}}% Level {{row.level}} School {{row.school}}
No data matching the filter "{{input.value}}"
+ + +
diff --git a/SessionCompanion/SessionCompanion/ClientApp/src/app/components/game-master-spells-table/game-master-spells-table.component.ts b/SessionCompanion/SessionCompanion/ClientApp/src/app/components/game-master-spells-table/game-master-spells-table.component.ts new file mode 100644 index 0000000..8da89fa --- /dev/null +++ b/SessionCompanion/SessionCompanion/ClientApp/src/app/components/game-master-spells-table/game-master-spells-table.component.ts @@ -0,0 +1,48 @@ +import { Component, OnInit, ViewChild } from '@angular/core'; +import { MatPaginator } from '@angular/material/paginator'; +import { MatSort } from '@angular/material/sort'; +import { MatTableDataSource } from '@angular/material/table'; + +export interface SpellData { + name: string; + range: string; + level: number; + school: string; +} + +@Component({ + selector: 'app-game-master-spells-table', + templateUrl: './game-master-spells-table.component.html', + styleUrls: ['./game-master-spells-table.component.css'], +}) +export class GameMasterSpellsTableComponent implements OnInit { + displayedColumns: string[] = ['Name', 'Range', 'Level', 'School']; + dataSource: MatTableDataSource; + + @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator; + @ViewChild(MatSort, { static: true }) sort: MatSort; + + constructor() { + const users = Array.from({ length: 100 }, (_, k) => this.createSepll()); + + this.dataSource = new MatTableDataSource(users); + } + + createSepll(): SpellData { + return { name: 'test', range: 'asd', level: 2, school: 'UAM!!!!' }; + } + + ngOnInit() { + this.dataSource.paginator = this.paginator; + this.dataSource.sort = this.sort; + } + + applyFilter(event: Event) { + const filterValue = (event.target as HTMLInputElement).value; + this.dataSource.filter = filterValue.trim().toLowerCase(); + + if (this.dataSource.paginator) { + this.dataSource.paginator.firstPage(); + } + } +} diff --git a/SessionCompanion/SessionCompanion/ClientApp/src/types/LeftNavItem.ts b/SessionCompanion/SessionCompanion/ClientApp/src/types/LeftNavItem.ts new file mode 100644 index 0000000..abc8e1e --- /dev/null +++ b/SessionCompanion/SessionCompanion/ClientApp/src/types/LeftNavItem.ts @@ -0,0 +1,7 @@ +export interface LeftNavItem { + displayName: string; + iconName: string; + componentToDisplay?: string; + expanded: boolean; + children?: LeftNavItem[]; +} diff --git a/SessionCompanion/SessionCompanion/ClientApp/tsconfig.json b/SessionCompanion/SessionCompanion/ClientApp/tsconfig.json index b93cbfc..7f31595 100644 --- a/SessionCompanion/SessionCompanion/ClientApp/tsconfig.json +++ b/SessionCompanion/SessionCompanion/ClientApp/tsconfig.json @@ -1,6 +1,7 @@ { "compileOnSave": false, "compilerOptions": { + "skipLibCheck": true, "baseUrl": "./", "module": "esnext", "outDir": "./dist/out-tsc", diff --git a/SessionCompanion/SessionCompanion/Controllers/OtherEquipmentController.cs b/SessionCompanion/SessionCompanion/Controllers/OtherEquipmentController.cs new file mode 100644 index 0000000..d21d202 --- /dev/null +++ b/SessionCompanion/SessionCompanion/Controllers/OtherEquipmentController.cs @@ -0,0 +1,42 @@ +using Microsoft.AspNetCore.Mvc; +using SessionCompanion.Extensions.EitherType; +using SessionCompanion.Services.Interfaces; +using SessionCompanion.ViewModels.ApiResponses; +using SessionCompanion.ViewModels.OtherEquipmentViewModels; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; + +namespace SessionCompanion.Controllers +{ + [Route("api/otherEquipment")] + [ApiController] + public class OtherEquipmentController : Controller + { + private readonly IOtherEquipmentService _service; + public OtherEquipmentController(IOtherEquipmentService service) => _service = service; + + /// + /// Metoda zwraca wszystkie dostępne inne przedmioty + /// + /// Lista wszystkich innych przedmiotów w bazie danych + [HttpGet("getAllOtherEquipment")] + public async Task, ErrorResponse>> GetOtherEquipment() + { + try + { + var otherEq = _service.Get().ToList(); + return otherEq; + } + catch (Exception e) + { + return new ErrorResponse() + { + StatusCode = 204, + Message = e.Message + }; + } + } + } +} diff --git a/SessionCompanion/SessionCompanion/Controllers/SpellController.cs b/SessionCompanion/SessionCompanion/Controllers/SpellController.cs new file mode 100644 index 0000000..5ddc879 --- /dev/null +++ b/SessionCompanion/SessionCompanion/Controllers/SpellController.cs @@ -0,0 +1,42 @@ +using Microsoft.AspNetCore.Mvc; +using SessionCompanion.Extensions.EitherType; +using SessionCompanion.Services.Interfaces; +using SessionCompanion.ViewModels.ApiResponses; +using SessionCompanion.ViewModels.SpellViewModels; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; + +namespace SessionCompanion.Controllers +{ + [Route("api/spell")] + [ApiController] + public class SpellController : Controller + { + private readonly ISpellService _service; + public SpellController(ISpellService service) => _service = service; + + /// + /// Metoda zwraca wszystkie dostępne zaklecia + /// + /// Lista wszystkich zaklęć w bazie danych + [HttpGet("getAllSpells")] + public async Task, ErrorResponse>> GetSpells() + { + try + { + var spells = _service.Get().ToList(); + return spells; + } + catch (Exception e) + { + return new ErrorResponse() + { + StatusCode = 204, + Message = e.Message + }; + } + } + } +} diff --git a/SessionCompanion/SessionCompanion/Controllers/WeaponController.cs b/SessionCompanion/SessionCompanion/Controllers/WeaponController.cs new file mode 100644 index 0000000..1459535 --- /dev/null +++ b/SessionCompanion/SessionCompanion/Controllers/WeaponController.cs @@ -0,0 +1,43 @@ +using Microsoft.AspNetCore.Mvc; +using SessionCompanion.Extensions.EitherType; +using SessionCompanion.Services.Interfaces; +using System.Threading.Tasks; +using SessionCompanion.ViewModels.WeaponViewModels; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; +using SessionCompanion.ViewModels.ApiResponses; + +namespace SessionCompanion.Controllers +{ + [Route("api/weapon")] + [ApiController] + public class WeaponController : Controller + { + private readonly IWeaponService _service; + public WeaponController(IWeaponService service) => _service = service; + + /// + /// Metoda zwraca wszystkie dostępnasdasde bronie + /// + /// Lista wszystkich broni w bazie danych + [HttpGet("getAllWeapons")] + public async Task, ErrorResponse>> GetWeapons() + { + try + { + var weapons = _service.Get().ToList(); + return weapons; + } + catch (Exception e) + { + return new ErrorResponse() + { + StatusCode = 204, + Message = e.Message + }; + } + } + } +} diff --git a/SessionCompanion/SessionCompanion/SessionCompanion.xml b/SessionCompanion/SessionCompanion/SessionCompanion.xml index 3356692..0e731fe 100644 --- a/SessionCompanion/SessionCompanion/SessionCompanion.xml +++ b/SessionCompanion/SessionCompanion/SessionCompanion.xml @@ -37,6 +37,12 @@ Id postaci Listę wszystkich statystyk + + + Metoda zwraca wszystkie dostępne inne przedmioty + + Lista wszystkich innych przedmiotów w bazie danych + Metoda zwraca podstawowe informacje dla danej postaci