fix: adjust model to remove references from things without references

Fixes #69
This commit is contained in:
Karl-Philipp Wulfert
2019-05-14 17:57:10 +02:00
parent da0507ee34
commit ca72c20bd0
36 changed files with 585 additions and 400 deletions

View File

@@ -12,14 +12,19 @@
* You should have received a copy of the GNU General Public License along with
* this program. If not, see <https://www.gnu.org/licenses/>.
*/
import {SCAcademicTermWithoutReferences, SCAcademicTermWithoutReferencesMeta} from '../base/AcademicTerm';
import {
SCAcademicTerm,
SCAcademicTermWithoutReferences,
SCAcademicTermWithoutReferencesMeta,
} from '../base/AcademicTerm';
import {SCThingMeta, SCThingType} from '../Thing';
import {SCMetaTranslations} from '../types/i18n';
/**
* A semester without references
*/
export interface SCSemesterWithoutReferences extends SCAcademicTermWithoutReferences {
export interface SCSemesterWithoutReferences
extends SCAcademicTermWithoutReferences {
/**
* The short name of the semester, using the given pattern.
*
@@ -38,7 +43,8 @@ export interface SCSemesterWithoutReferences extends SCAcademicTermWithoutRefere
*
* @validatable
*/
export interface SCSemester extends SCSemesterWithoutReferences {
export interface SCSemester
extends SCSemesterWithoutReferences, SCAcademicTerm {
/**
* Type of the semester
*/
@@ -48,13 +54,15 @@ export interface SCSemester extends SCSemesterWithoutReferences {
/**
* Meta information about a semester
*/
export class SCSemesterMeta extends SCThingMeta implements SCMetaTranslations<SCSemester> {
export class SCSemesterMeta
extends SCThingMeta
implements SCMetaTranslations<SCSemester> {
/**
* Translations of fields
*/
fieldTranslations = {
de: {
... SCAcademicTermWithoutReferencesMeta.getInstance().fieldTranslations.de,
...SCAcademicTermWithoutReferencesMeta.getInstance().fieldTranslations.de,
acronym: 'Abkürzung',
endDate: 'Ende',
eventsEndDate: 'Vorlesungsschluss',
@@ -62,20 +70,20 @@ export class SCSemesterMeta extends SCThingMeta implements SCMetaTranslations<SC
startDate: 'Beginn',
},
en: {
... SCAcademicTermWithoutReferencesMeta.getInstance().fieldTranslations.en,
...SCAcademicTermWithoutReferencesMeta.getInstance().fieldTranslations.en,
},
};
/**
* Translations of values of fields
*/
fieldValueTranslations = {
fieldValueTranslations = {
de: {
... SCAcademicTermWithoutReferencesMeta.getInstance().fieldValueTranslations.de,
...SCAcademicTermWithoutReferencesMeta.getInstance().fieldValueTranslations.de,
type: 'Semester',
},
en: {
... SCAcademicTermWithoutReferencesMeta.getInstance().fieldValueTranslations.en,
...SCAcademicTermWithoutReferencesMeta.getInstance().fieldValueTranslations.en,
type: SCThingType.Semester,
},
};