{"__symbolic":"module","version":4,"metadata":{"DspApiConfigToken":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":4,"character":37},"arguments":["DSP api configuration"]},"DspApiConnectionToken":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":7,"character":41},"arguments":["DSP api connection instance"]},"DspCoreModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":10,"character":1},"arguments":[{"declarations":[],"imports":[],"exports":[]}]}],"members":{}},"Session":{"__symbolic":"interface"},"SessionService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":41,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":55,"character":9},"arguments":[{"__symbolic":"reference","name":"DspApiConnectionToken"}]}]],"parameters":[{"__symbolic":"reference","module":"@dasch-swiss/dsp-js","name":"KnoraApiConnection","line":55,"character":66}]}],"getSession":[{"__symbolic":"method"}],"setSession":[{"__symbolic":"method"}],"isSessionValid":[{"__symbolic":"method"}],"destroySession":[{"__symbolic":"method"}],"_setTimestamp":[{"__symbolic":"method"}],"_storeSessionInLocalStorage":[{"__symbolic":"method"}],"_updateSessionId":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"AppInitService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":3,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}],"Init":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"DspViewerModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":64,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"AddValueComponent"},{"__symbolic":"reference","name":"BooleanValueComponent"},{"__symbolic":"reference","name":"CalendarHeaderComponent"},{"__symbolic":"reference","name":"ɵb"},{"__symbolic":"reference","name":"ColorValueComponent"},{"__symbolic":"reference","name":"ɵc"},{"__symbolic":"reference","name":"DateValueComponent"},{"__symbolic":"reference","name":"DecimalValueComponent"},{"__symbolic":"reference","name":"DisplayEditComponent"},{"__symbolic":"reference","name":"DragDropDirective"},{"__symbolic":"reference","name":"GeonameValueComponent"},{"__symbolic":"reference","name":"ɵe"},{"__symbolic":"reference","name":"IntervalValueComponent"},{"__symbolic":"reference","name":"IntValueComponent"},{"__symbolic":"reference","name":"JDNDatepickerDirective"},{"__symbolic":"reference","name":"LinkValueComponent"},{"__symbolic":"reference","name":"ListValueComponent"},{"__symbolic":"reference","name":"ListViewComponent"},{"__symbolic":"reference","name":"ɵg"},{"__symbolic":"reference","name":"PropertyViewComponent"},{"__symbolic":"reference","name":"ResourceGridComponent"},{"__symbolic":"reference","name":"ResourceListComponent"},{"__symbolic":"reference","name":"ResourceViewComponent"},{"__symbolic":"reference","name":"StillImageComponent"},{"__symbolic":"reference","name":"ɵi"},{"__symbolic":"reference","name":"TextValueAsHtmlComponent"},{"__symbolic":"reference","name":"TextValueAsStringComponent"},{"__symbolic":"reference","name":"TextValueAsXMLComponent"},{"__symbolic":"reference","name":"TextValueHtmlLinkDirective"},{"__symbolic":"reference","name":"ɵj"},{"__symbolic":"reference","name":"TimeValueComponent"},{"__symbolic":"reference","name":"UploadFileComponent"},{"__symbolic":"reference","name":"UriValueComponent"},{"__symbolic":"reference","name":"ɵk"},{"__symbolic":"reference","name":"ɵl"},{"__symbolic":"reference","name":"MultipleResourcesViewComponent"}],"imports":[{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"angular-split","name":"AngularSplitModule","line":104,"character":8},"member":"forRoot"}},{"__symbolic":"reference","module":"@ckeditor/ckeditor5-angular","name":"CKEditorModule","line":105,"character":8},{"__symbolic":"reference","module":"@angular/cdk/clipboard","name":"ClipboardModule","line":106,"character":8},{"__symbolic":"reference","module":"ngx-color-picker","name":"ColorPickerModule","line":107,"character":8},{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":108,"character":8},{"__symbolic":"reference","name":"DspActionModule"},{"__symbolic":"reference","module":"@angular/forms","name":"FormsModule","line":110,"character":8},{"__symbolic":"reference","module":"@angular/common/http","name":"HttpClientModule","line":111,"character":8},{"__symbolic":"reference","module":"@angular/material/autocomplete","name":"MatAutocompleteModule","line":112,"character":8},{"__symbolic":"reference","module":"@angular/material/button","name":"MatButtonModule","line":113,"character":8},{"__symbolic":"reference","module":"@angular/material/button-toggle","name":"MatButtonToggleModule","line":114,"character":8},{"__symbolic":"reference","module":"@angular/material/card","name":"MatCardModule","line":115,"character":8},{"__symbolic":"reference","module":"@angular/material/checkbox","name":"MatCheckboxModule","line":116,"character":8},{"__symbolic":"reference","module":"@angular/material/datepicker","name":"MatDatepickerModule","line":117,"character":8},{"__symbolic":"reference","module":"@angular/material/icon","name":"MatIconModule","line":118,"character":8},{"__symbolic":"reference","module":"@angular/material/input","name":"MatInputModule","line":119,"character":8},{"__symbolic":"reference","module":"jdnconvertiblecalendardateadapter","name":"MatJDNConvertibleCalendarDateAdapterModule","line":120,"character":8},{"__symbolic":"reference","module":"@angular/material/list","name":"MatListModule","line":121,"character":8},{"__symbolic":"reference","module":"@angular/material/menu","name":"MatMenuModule","line":122,"character":8},{"__symbolic":"reference","module":"@angular/material/core","name":"MatOptionModule","line":123,"character":8},{"__symbolic":"reference","module":"@angular/material/paginator","name":"MatPaginatorModule","line":124,"character":8},{"__symbolic":"reference","module":"@angular/material/select","name":"MatSelectModule","line":125,"character":8},{"__symbolic":"reference","module":"@angular/material/snack-bar","name":"MatSnackBarModule","line":126,"character":8},{"__symbolic":"reference","module":"@angular/material/toolbar","name":"MatToolbarModule","line":127,"character":8},{"__symbolic":"reference","module":"@angular/material/tooltip","name":"MatTooltipModule","line":128,"character":8},{"__symbolic":"reference","module":"@angular/material/radio","name":"MatRadioModule","line":129,"character":8},{"__symbolic":"reference","module":"@angular/forms","name":"ReactiveFormsModule","line":130,"character":8}],"exports":[{"__symbolic":"reference","name":"AddValueComponent"},{"__symbolic":"reference","name":"BooleanValueComponent"},{"__symbolic":"reference","name":"ColorValueComponent"},{"__symbolic":"reference","name":"DateValueComponent"},{"__symbolic":"reference","name":"DecimalValueComponent"},{"__symbolic":"reference","name":"DisplayEditComponent"},{"__symbolic":"reference","name":"DragDropDirective"},{"__symbolic":"reference","name":"GeonameValueComponent"},{"__symbolic":"reference","name":"IntervalValueComponent"},{"__symbolic":"reference","name":"IntValueComponent"},{"__symbolic":"reference","name":"JDNDatepickerDirective"},{"__symbolic":"reference","name":"LinkValueComponent"},{"__symbolic":"reference","name":"ListValueComponent"},{"__symbolic":"reference","name":"ListViewComponent"},{"__symbolic":"reference","name":"PropertyViewComponent"},{"__symbolic":"reference","name":"ResourceGridComponent"},{"__symbolic":"reference","name":"ResourceListComponent"},{"__symbolic":"reference","name":"ResourceViewComponent"},{"__symbolic":"reference","name":"StillImageComponent"},{"__symbolic":"reference","name":"TextValueAsHtmlComponent"},{"__symbolic":"reference","name":"TextValueAsStringComponent"},{"__symbolic":"reference","name":"TextValueAsXMLComponent"},{"__symbolic":"reference","name":"TextValueHtmlLinkDirective"},{"__symbolic":"reference","name":"TimeValueComponent"},{"__symbolic":"reference","name":"UploadFileComponent"},{"__symbolic":"reference","name":"UriValueComponent"},{"__symbolic":"reference","name":"MultipleResourcesViewComponent"}]}]}],"members":{}},"BooleanValueComponent":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵa"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":9,"character":1},"arguments":[{"selector":"dsp-boolean-value","template":"<span *ngIf=\"mode === 'read'; else showForm\" class=\"read-mode-view\">\n    <span class=\"rm-value\">{{valueFormControl.value | formattedBoolean:preferredDisplayType}}</span>\n    <span class=\"rm-comment\" *ngIf=\"shouldShowComment\">{{commentFormControl.value}}</span>\n</span>\n<ng-template #showForm>\n    <span [formGroup]=\"form\" (ngSubmit)=\"onSubmit()\">\n        <mat-checkbox [formControlName]=\"'value'\" class=\"value boolValue child-value-component\">\n            {{valueFormControl.value | formattedBoolean:preferredDisplayType}}\n        </mat-checkbox>\n        <mat-error *ngIf=\"valueFormControl.hasError('valueNotChanged') && valueFormControl.dirty\">\n                <span class=\"custom-error-message\">New value must be different than the current value.</span>\n        </mat-error>\n        <mat-form-field class=\"large-field value-component-comment\">\n            <textarea\n                    matInput\n                    cdkTextareaAutosize\n                    cdkAutosizeMinRows=\"1\"\n                    cdkAutosizeMaxRows=\"6\"\n                    [formControlName]=\"'comment'\"\n                    class=\"comment\"\n                    placeholder=\"Comment\"\n                    type=\"text\"\n                    spellcheck=\"false\">\n            </textarea>\n        </mat-form-field>\n    </span>\n</ng-template>\n","styles":["@charset \"UTF-8\";@media (max-width:576px){.desktop-only{display:none!important}}.read-mode-view{font:400 15px/24px sans-serif}.read-mode-view .rm-comment,.read-mode-view .rm-value{display:block;margin:0}.child-value-component,.value-component-comment{display:block}.parent-component-wrapper .value-component-comment{margin-top:-2em}.parent-value-component .child-value-component .mat-form-field-wrapper .mat-form-field-infix{border-top:0 solid transparent}.child-input-component{display:inline-block;vertical-align:bottom;width:49%}.child-input-component:nth-child(2){padding-left:2%}.child-input-component.full-width{width:100%}.custom-error-message{font-size:12px;margin-top:-1em;padding-bottom:1em}.grid-container{display:grid;grid-template-columns:70% 30%;grid-template-rows:auto auto}.crud-buttons,.value-component{vertical-align:top}.value-component{grid-row-start:1;grid-row-end:auto;grid-column-start:1;grid-column-end:2;position:relative}.value-component .action-bubble{position:absolute;right:0;top:-20px;border:1px solid #e4e4e4;border-radius:10px;padding:0 1px;background-color:#e4e4e4;z-index:2;box-shadow:1px 4px 5px 0 #949494}.value-component .action-bubble .button-container button.mat-button-disabled .mat-icon{color:#aaa}.value-component .action-bubble .button-container button{cursor:pointer;border:none;padding:2px;outline:none;background-color:transparent;color:#000;margin:0 2px;border-radius:10px;transition:background-color .5s ease-out;min-width:inherit;line-height:normal}.value-component .action-bubble .button-container button .material-icons{font-size:18px}.value-component .action-bubble .button-container button .mat-icon{width:18px;height:18px;vertical-align:middle}.value-component .action-bubble .button-container button.info{cursor:default}.value-component .action-bubble .button-container button:hover{background-color:#c7c7c7}.value-component.highlighted{background-color:#f5f5f5}.crud-buttons{grid-column-start:2;grid-column-end:3}.crud-buttons,.mat-error{grid-row-start:1;grid-row-end:auto}.mat-error{grid-column-start:3;grid-column-end:end}button.cancel,button.save{cursor:pointer;border:none;padding:0;margin-left:1em;outline:none;background-color:transparent;color:#000}button.save:disabled{color:#adadad;cursor:default}button.cancel .mat-icon,button.cancel .material-icons,button.save .mat-icon,button.save .material-icons{font-size:18px}.deletion-dialog .title{font-weight:700;font-size:18px;text-align:center}.deletion-dialog .action-buttons{float:right}.deletion-dialog .action-buttons .cancel{padding:0 16px}.deletion-dialog-message{font-size:16px;background-color:#ededf5;border:1px solid #d8d8df;border-radius:5px;padding:20px 10px;text-align:center}.deletion-dialog-message .deletion-comment{min-width:80%}.ck-content code{font-family:monospace!important}.ck-content pre{background-color:inherit!important}code,pre{font-family:monospace!important;background-color:hsla(0,0%,78%,.3);padding:.15em;border-radius:2px}"]}]}],"members":{"displayValue":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":16,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":31,"character":17},"arguments":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":31,"character":24}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":31,"character":50}]}],"getInitValue":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"onSubmit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"getNewValue":[{"__symbolic":"method"}],"getUpdatedValue":[{"__symbolic":"method"}]}},"ColorValueComponent":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵa"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":12,"character":1},"arguments":[{"selector":"dsp-color-value","template":"<span *ngIf=\"mode === 'read'; else showForm\" class=\"read-mode-view\">\n    <div class=\"rm-value\"\n        [style.background-color]=\"valueFormControl.value\">\n        <span *ngIf=\"showHexCode\" class=\"hexcode\" [style.color]=\"textColor\">{{ valueFormControl.value }}</span>\n    </div>\n    <span class=\"rm-comment\" *ngIf=\"shouldShowComment\">\n        {{ commentFormControl.value }}\n    </span>\n</span>\n<ng-template #showForm>\n    <span [formGroup]=\"form\">\n        <mat-form-field class=\"large-field color-field child-value-component\" floatLabel=\"never\">\n            <dsp-color-picker\n                #colorInput\n                [formControlName]=\"'value'\"\n                class=\"value\"\n                [errorStateMatcher]=\"matcher\">\n            </dsp-color-picker>\n            <mat-error *ngIf=\"valueFormControl.hasError('valueNotChanged')\">\n               New value must be different than the current value.\n            </mat-error>\n            <mat-error *ngIf=\"valueFormControl.hasError('pattern')\">\n                Please enter a hex color value.\n            </mat-error>\n            <mat-error *ngIf=\"valueFormControl.hasError('duplicateValue')\">\n                <span class=\"custom-error-message\">This value already exists for this property. Duplicate values are not allowed.</span>\n            </mat-error>\n        </mat-form-field>\n        <mat-form-field class=\"large-field value-component-comment\">\n            <textarea\n                matInput\n                cdkTextareaAutosize\n                cdkAutosizeMinRows=\"1\"\n                cdkAutosizeMaxRows=\"6\"\n                [formControlName]=\"'comment'\"\n                class=\"comment\"\n                placeholder=\"Comment\"\n                type=\"text\"\n                spellcheck=\"false\">\n            </textarea>\n        </mat-form-field>\n    </span>\n</ng-template>\n","styles":["@charset \"UTF-8\";@media (max-width:576px){.desktop-only{display:none!important}}.read-mode-view{font:400 15px/24px sans-serif}.read-mode-view .rm-comment,.read-mode-view .rm-value{display:block;margin:0}.child-value-component,.value-component-comment{display:block}.parent-component-wrapper .value-component-comment{margin-top:-2em}.parent-value-component .child-value-component .mat-form-field-wrapper .mat-form-field-infix{border-top:0 solid transparent}.child-input-component{display:inline-block;vertical-align:bottom;width:49%}.child-input-component:nth-child(2){padding-left:2%}.child-input-component.full-width{width:100%}.custom-error-message{font-size:12px;margin-top:-1em;padding-bottom:1em}.grid-container{display:grid;grid-template-columns:70% 30%;grid-template-rows:auto auto}.crud-buttons,.value-component{vertical-align:top}.value-component{grid-row-start:1;grid-row-end:auto;grid-column-start:1;grid-column-end:2;position:relative}.value-component .action-bubble{position:absolute;right:0;top:-20px;border:1px solid #e4e4e4;border-radius:10px;padding:0 1px;background-color:#e4e4e4;z-index:2;box-shadow:1px 4px 5px 0 #949494}.value-component .action-bubble .button-container button.mat-button-disabled .mat-icon{color:#aaa}.value-component .action-bubble .button-container button{cursor:pointer;border:none;padding:2px;outline:none;background-color:transparent;color:#000;margin:0 2px;border-radius:10px;transition:background-color .5s ease-out;min-width:inherit;line-height:normal}.value-component .action-bubble .button-container button .material-icons{font-size:18px}.value-component .action-bubble .button-container button .mat-icon{width:18px;height:18px;vertical-align:middle}.value-component .action-bubble .button-container button.info{cursor:default}.value-component .action-bubble .button-container button:hover{background-color:#c7c7c7}.value-component.highlighted{background-color:#f5f5f5}.crud-buttons{grid-column-start:2;grid-column-end:3}.crud-buttons,.mat-error{grid-row-start:1;grid-row-end:auto}.mat-error{grid-column-start:3;grid-column-end:end}button.cancel,button.save{cursor:pointer;border:none;padding:0;margin-left:1em;outline:none;background-color:transparent;color:#000}button.save:disabled{color:#adadad;cursor:default}button.cancel .mat-icon,button.cancel .material-icons,button.save .mat-icon,button.save .material-icons{font-size:18px}.deletion-dialog .title{font-weight:700;font-size:18px;text-align:center}.deletion-dialog .action-buttons{float:right}.deletion-dialog .action-buttons .cancel{padding:0 16px}.deletion-dialog-message{font-size:16px;background-color:#ededf5;border:1px solid #d8d8df;border-radius:5px;padding:20px 10px;text-align:center}.deletion-dialog-message .deletion-comment{min-width:80%}.ck-content code{font-family:monospace!important}.ck-content pre{background-color:inherit!important}code,pre{font-family:monospace!important;background-color:hsla(0,0%,78%,.3);padding:.15em;border-radius:2px}:host ::ng-deep .child-value-component{width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}:host ::ng-deep .child-value-component .mat-form-field-underline{display:none}:host ::ng-deep .child-value-component .mat-form-field-infix{border-top:.2em solid transparent!important}:host ::ng-deep .child-value-component .mat-form-field-infix .mat-form-field-underline{display:block}.rm-value{border:1px solid rgba(33,33,33,.5);border-radius:4px;padding:3px 12px;margin:6px 0 10px!important;width:6em;min-height:8px}"]}]}],"members":{"colorPickerComponent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":19,"character":5},"arguments":["colorInput"]}]}],"displayValue":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":21,"character":5}}]}],"showHexCode":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":23,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":33,"character":17},"arguments":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":33,"character":24}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":33,"character":50}]}],"getInitValue":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"getNewValue":[{"__symbolic":"method"}],"getUpdatedValue":[{"__symbolic":"method"}],"getTextColor":[{"__symbolic":"method"}]}},"DateValueComponent":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵa"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":19,"character":1},"arguments":[{"selector":"dsp-date-value","template":"<span *ngIf=\"mode === 'read'; else showForm\" class=\"read-mode-view\">\n\n    <!-- Date period -->\n    <span *ngIf=\"valueFormControl.value?.end; else date\">\n        <span class=\"rm-value date-start\">\n            <span *ngIf=\"labels\">Period Start: </span>\n            {{valueFormControl.value?.start | knoraDate:ontologyDateFormat:displayOptions}}\n        </span>\n        <span class=\"rm-value date-end\">\n            <span *ngIf=\"labels\">Period End: </span>\n            {{valueFormControl.value?.end | knoraDate:ontologyDateFormat:displayOptions}}\n        </span>\n    </span>\n\n    <!-- Only one date -->\n    <ng-template #date>\n        <span class=\"rm-value\">\n            <span *ngIf=\"labels\">Date: </span>\n            {{valueFormControl.value | knoraDate:ontologyDateFormat:displayOptions}}\n        </span>\n    </ng-template>\n\n    <!-- Comment -->\n    <span class=\"rm-comment\" *ngIf=\"shouldShowComment\">{{commentFormControl.value}}</span>\n</span>\n\n<!-- Edit mode -->\n<ng-template #showForm>\n    <span [formGroup]=\"form\">\n\n        <mat-form-field class=\"large-field child-value-component\" floatLabel=\"never\">\n\n            <dsp-date-input-text #dateInput [formControlName]=\"'value'\" [valueRequiredValidator]=\"valueRequiredValidator\" class=\"value\"></dsp-date-input-text>\n\n            <mat-error *ngIf=\"valueFormControl.hasError('valueNotChanged')\">\n                <span class=\"custom-error-message\">New value must be different than the current value.</span>\n            </mat-error>\n            <mat-error *ngIf=\"valueFormControl.hasError('duplicateValue')\">\n                <span class=\"custom-error-message\">This value already exists for this property. Duplicate values are not allowed.</span>\n            </mat-error>\n        </mat-form-field>\n\n        <!-- Comment field -->\n        <mat-form-field class=\"large-field value-component-comment\">\n            <textarea matInput\n                      cdkTextareaAutosize\n                      cdkAutosizeMinRows=\"1\"\n                      cdkAutosizeMaxRows=\"6\"\n                      [formControlName]=\"'comment'\"\n                      class=\"comment\"\n                      placeholder=\"Comment\"\n                      type=\"text\"\n                      spellcheck=\"false\">\n          </textarea>\n        </mat-form-field>\n    </span>\n</ng-template>\n","styles":["@charset \"UTF-8\";@media (max-width:576px){.desktop-only{display:none!important}}.read-mode-view{font:400 15px/24px sans-serif}.read-mode-view .rm-comment,.read-mode-view .rm-value{display:block;margin:0}.child-value-component,.value-component-comment{display:block}.parent-component-wrapper .value-component-comment{margin-top:-2em}.parent-value-component .child-value-component .mat-form-field-wrapper .mat-form-field-infix{border-top:0 solid transparent}.child-input-component{display:inline-block;vertical-align:bottom;width:49%}.child-input-component:nth-child(2){padding-left:2%}.child-input-component.full-width{width:100%}.custom-error-message{font-size:12px;margin-top:-1em;padding-bottom:1em}.grid-container{display:grid;grid-template-columns:70% 30%;grid-template-rows:auto auto}.crud-buttons,.value-component{vertical-align:top}.value-component{grid-row-start:1;grid-row-end:auto;grid-column-start:1;grid-column-end:2;position:relative}.value-component .action-bubble{position:absolute;right:0;top:-20px;border:1px solid #e4e4e4;border-radius:10px;padding:0 1px;background-color:#e4e4e4;z-index:2;box-shadow:1px 4px 5px 0 #949494}.value-component .action-bubble .button-container button.mat-button-disabled .mat-icon{color:#aaa}.value-component .action-bubble .button-container button{cursor:pointer;border:none;padding:2px;outline:none;background-color:transparent;color:#000;margin:0 2px;border-radius:10px;transition:background-color .5s ease-out;min-width:inherit;line-height:normal}.value-component .action-bubble .button-container button .material-icons{font-size:18px}.value-component .action-bubble .button-container button .mat-icon{width:18px;height:18px;vertical-align:middle}.value-component .action-bubble .button-container button.info{cursor:default}.value-component .action-bubble .button-container button:hover{background-color:#c7c7c7}.value-component.highlighted{background-color:#f5f5f5}.crud-buttons{grid-column-start:2;grid-column-end:3}.crud-buttons,.mat-error{grid-row-start:1;grid-row-end:auto}.mat-error{grid-column-start:3;grid-column-end:end}button.cancel,button.save{cursor:pointer;border:none;padding:0;margin-left:1em;outline:none;background-color:transparent;color:#000}button.save:disabled{color:#adadad;cursor:default}button.cancel .mat-icon,button.cancel .material-icons,button.save .mat-icon,button.save .material-icons{font-size:18px}.deletion-dialog .title{font-weight:700;font-size:18px;text-align:center}.deletion-dialog .action-buttons{float:right}.deletion-dialog .action-buttons .cancel{padding:0 16px}.deletion-dialog-message{font-size:16px;background-color:#ededf5;border:1px solid #d8d8df;border-radius:5px;padding:20px 10px;text-align:center}.deletion-dialog-message .deletion-comment{min-width:80%}.ck-content code{font-family:monospace!important}.ck-content pre{background-color:inherit!important}code,pre{font-family:monospace!important;background-color:hsla(0,0%,78%,.3);padding:.15em;border-radius:2px}:host ::ng-deep .child-value-component .mat-form-field-underline{display:none}:host ::ng-deep .child-value-component .mat-form-field-infix{border-top:.2em solid transparent!important}.date-end,.date-start,:host ::ng-deep .child-value-component .mat-form-field-infix .mat-form-field-underline{display:block}"]}]}],"members":{"dateInputComponent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":26,"character":5},"arguments":["dateInput"]}]}],"displayValue":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":28,"character":5}}]}],"displayOptions":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":30,"character":5}}]}],"labels":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":32,"character":5}}]}],"ontologyDateFormat":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":34,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":47,"character":17},"arguments":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":47,"character":24}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":47,"character":50}]}],"sameDate":[{"__symbolic":"method"}],"standardValueComparisonFunc":[{"__symbolic":"method"}],"getInitValue":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"populateValue":[{"__symbolic":"method"}],"getNewValue":[{"__symbolic":"method"}],"getUpdatedValue":[{"__symbolic":"method"}]}},"CalendarHeaderComponent":{"__symbolic":"class","arity":1,"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":9,"character":1},"arguments":[{"selector":"dsp-calendar-header","template":"<mat-select placeholder=\"Calendar\" class=\"dsp-calendar-header\" [formControl]=\"formControl\">\n  <mat-option *ngFor=\"let cal of supportedCalendars\" [value]=\"cal\">{{cal}}</mat-option>\n</mat-select>\n<mat-calendar-header></mat-calendar-header>\n","styles":[":host .mat-select.dsp-calendar-header{margin:16px 16px 0!important;width:calc(100% - 32px)!important}"]}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":18,"character":9},"arguments":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":18,"character":16}]}]],"parameters":[{"__symbolic":"reference","name":"MatCalendar","module":"@angular/material/datepicker","arguments":[{"__symbolic":"reference","module":"jdnconvertiblecalendar","name":"JDNConvertibleCalendar","line":15,"character":47}]},{"__symbolic":"reference","name":"DateAdapter","module":"@angular/material/core","arguments":[{"__symbolic":"reference","module":"jdnconvertiblecalendar","name":"JDNConvertibleCalendar","line":15,"character":47}]},{"__symbolic":"reference","name":"MatDatepickerContent","module":"@angular/material/datepicker","arguments":[{"__symbolic":"reference","module":"jdnconvertiblecalendar","name":"JDNConvertibleCalendar","line":15,"character":47}]},{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":18,"character":42}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"convertDate":[{"__symbolic":"method"}]}},"DecimalValueComponent":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵa"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":11,"character":1},"arguments":[{"selector":"dsp-decimal-value","template":"<span *ngIf=\"mode === 'read'; else showForm\" class=\"read-mode-view\">\n    <span class=\"rm-value\">{{valueFormControl.value}}</span>\n    <span class=\"rm-comment\" *ngIf=\"shouldShowComment\">{{commentFormControl.value}}</span>\n</span>\n<ng-template #showForm>\n    <span [formGroup]=\"form\">\n        <mat-form-field class=\"large-field child-value-component\" floatLabel=\"never\">\n            <input matInput [formControlName]=\"'value'\" class=\"value\" placeholder=\"Decimal value\" type=\"number\" step=\"0.05\" [errorStateMatcher]=\"matcher\">\n            <mat-error *ngIf=\"valueFormControl.hasError('valueNotChanged') &&\n                (valueFormControl.touched || valueFormControl.dirty)\">\n                <span class=\"custom-error-message\">New value must be different than the current value.</span>\n            </mat-error>\n            <mat-error *ngIf=\"valueFormControl.hasError('pattern')\">\n                <span class=\"custom-error-message\">New value must be a decimal value.</span>\n            </mat-error>\n            <mat-error *ngIf=\"valueFormControl.hasError('required')\">\n                A decimal value is <strong>required</strong>.\n            </mat-error>\n            <mat-error *ngIf=\"valueFormControl.hasError('duplicateValue')\">\n                <span class=\"custom-error-message\">This value already exists for this property. Duplicate values are not allowed.</span>\n            </mat-error>\n        </mat-form-field>\n        <mat-form-field class=\"large-field value-component-comment\">\n            <textarea matInput\n                      cdkTextareaAutosize\n                      cdkAutosizeMinRows=\"1\"\n                      cdkAutosizeMaxRows=\"6\"\n                      [formControlName]=\"'comment'\"\n                      class=\"comment\"\n                      placeholder=\"Comment\"\n                      type=\"text\"\n                      spellcheck=\"false\">\n            </textarea>\n        </mat-form-field>\n    </span>\n</ng-template>\n","styles":["@charset \"UTF-8\";@media (max-width:576px){.desktop-only{display:none!important}}.read-mode-view{font:400 15px/24px sans-serif}.read-mode-view .rm-comment,.read-mode-view .rm-value{display:block;margin:0}.child-value-component,.value-component-comment{display:block}.parent-component-wrapper .value-component-comment{margin-top:-2em}.parent-value-component .child-value-component .mat-form-field-wrapper .mat-form-field-infix{border-top:0 solid transparent}.child-input-component{display:inline-block;vertical-align:bottom;width:49%}.child-input-component:nth-child(2){padding-left:2%}.child-input-component.full-width{width:100%}.custom-error-message{font-size:12px;margin-top:-1em;padding-bottom:1em}.grid-container{display:grid;grid-template-columns:70% 30%;grid-template-rows:auto auto}.crud-buttons,.value-component{vertical-align:top}.value-component{grid-row-start:1;grid-row-end:auto;grid-column-start:1;grid-column-end:2;position:relative}.value-component .action-bubble{position:absolute;right:0;top:-20px;border:1px solid #e4e4e4;border-radius:10px;padding:0 1px;background-color:#e4e4e4;z-index:2;box-shadow:1px 4px 5px 0 #949494}.value-component .action-bubble .button-container button.mat-button-disabled .mat-icon{color:#aaa}.value-component .action-bubble .button-container button{cursor:pointer;border:none;padding:2px;outline:none;background-color:transparent;color:#000;margin:0 2px;border-radius:10px;transition:background-color .5s ease-out;min-width:inherit;line-height:normal}.value-component .action-bubble .button-container button .material-icons{font-size:18px}.value-component .action-bubble .button-container button .mat-icon{width:18px;height:18px;vertical-align:middle}.value-component .action-bubble .button-container button.info{cursor:default}.value-component .action-bubble .button-container button:hover{background-color:#c7c7c7}.value-component.highlighted{background-color:#f5f5f5}.crud-buttons{grid-column-start:2;grid-column-end:3}.crud-buttons,.mat-error{grid-row-start:1;grid-row-end:auto}.mat-error{grid-column-start:3;grid-column-end:end}button.cancel,button.save{cursor:pointer;border:none;padding:0;margin-left:1em;outline:none;background-color:transparent;color:#000}button.save:disabled{color:#adadad;cursor:default}button.cancel .mat-icon,button.cancel .material-icons,button.save .mat-icon,button.save .material-icons{font-size:18px}.deletion-dialog .title{font-weight:700;font-size:18px;text-align:center}.deletion-dialog .action-buttons{float:right}.deletion-dialog .action-buttons .cancel{padding:0 16px}.deletion-dialog-message{font-size:16px;background-color:#ededf5;border:1px solid #d8d8df;border-radius:5px;padding:20px 10px;text-align:center}.deletion-dialog-message .deletion-comment{min-width:80%}.ck-content code{font-family:monospace!important}.ck-content pre{background-color:inherit!important}code,pre{font-family:monospace!important;background-color:hsla(0,0%,78%,.3);padding:.15em;border-radius:2px}"]}]}],"members":{"displayValue":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":18,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":29,"character":17},"arguments":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":29,"character":24}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":29,"character":50}]}],"getInitValue":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"getNewValue":[{"__symbolic":"method"}],"getUpdatedValue":[{"__symbolic":"method"}]}},"geonameIdValidator":{"__symbolic":"function"},"GeonameValueComponent":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵa"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":18,"character":1},"arguments":[{"selector":"dsp-geoname-value","template":"<span *ngIf=\"mode === 'read'; else showForm\" class=\"read-mode-view\">\n    <span class=\"rm-value\">\n        <a class=\"link\" target=\"_blank\" rel=\"noopener\" href=\"https://www.geonames.org/{{valueFormControl.value?.id}}\">{{ ($geonameLabel | async)?.displayName }}</a>\n    </span>\n    <span class=\"rm-comment\" *ngIf=\"shouldShowComment\">\n        {{ commentFormControl.value }}\n    </span>\n</span>\n<ng-template #showForm>\n    <span [formGroup]=\"form\" class=\"form-fields-container\">\n        <span *ngIf=\"mode === 'update'\" class=\"current-value\">Current value: {{ ($geonameLabel | async)?.displayName }} </span>\n        <mat-form-field class=\"large-field child-value-component\" floatLabel=\"never\">\n            <input matInput [formControlName]=\"'value'\" class=\"value\" type=\"text\" placeholder=\"Geoname value\" aria-label=\"geoname\" [matAutocomplete]=\"auto\">\n            <mat-autocomplete #auto=\"matAutocomplete\" [displayWith]=\"displayPlaceInSearch\">\n                <mat-option *ngFor=\"let place of places\" [value]=\"place\">\n                    {{place?.displayName}}\n                </mat-option>\n            </mat-autocomplete>\n            <mat-error *ngIf=\"valueFormControl.hasError('valueNotChanged') &&\n                (valueFormControl.touched || valueFormControl.dirty)\">\n                <span class=\"custom-error-message\">New value must be different than the current value.</span>\n            </mat-error>\n            <mat-error *ngIf=\"valueFormControl.hasError('required')\">\n                A GeoName value is <strong>required</strong>.\n            </mat-error>\n            <mat-error *ngIf=\"valueFormControl.hasError('duplicateValue')\">\n                <span class=\"custom-error-message\">This value already exists for this property. Duplicate values are not allowed.</span>\n            </mat-error>\n        </mat-form-field>\n        <mat-form-field class=\"large-field value-component-comment\">\n            <textarea matInput\n                      cdkTextareaAutosize\n                      cdkAutosizeMinRows=\"1\"\n                      cdkAutosizeMaxRows=\"6\"\n                      [formControlName]=\"'comment'\"\n                      class=\"comment\"\n                      placeholder=\"Comment\"\n                      type=\"text\"\n                      spellcheck=\"false\">\n            </textarea>\n        </mat-form-field>\n    </span>\n</ng-template>\n","styles":["@charset \"UTF-8\";@media (max-width:576px){.desktop-only{display:none!important}}.read-mode-view{font:400 15px/24px sans-serif}.read-mode-view .rm-comment,.read-mode-view .rm-value{display:block;margin:0}.child-value-component,.value-component-comment{display:block}.parent-component-wrapper .value-component-comment{margin-top:-2em}.parent-value-component .child-value-component .mat-form-field-wrapper .mat-form-field-infix{border-top:0 solid transparent}.child-input-component{display:inline-block;vertical-align:bottom;width:49%}.child-input-component:nth-child(2){padding-left:2%}.child-input-component.full-width{width:100%}.custom-error-message{font-size:12px;margin-top:-1em;padding-bottom:1em}.grid-container{display:grid;grid-template-columns:70% 30%;grid-template-rows:auto auto}.crud-buttons,.value-component{vertical-align:top}.value-component{grid-row-start:1;grid-row-end:auto;grid-column-start:1;grid-column-end:2;position:relative}.value-component .action-bubble{position:absolute;right:0;top:-20px;border:1px solid #e4e4e4;border-radius:10px;padding:0 1px;background-color:#e4e4e4;z-index:2;box-shadow:1px 4px 5px 0 #949494}.value-component .action-bubble .button-container button.mat-button-disabled .mat-icon{color:#aaa}.value-component .action-bubble .button-container button{cursor:pointer;border:none;padding:2px;outline:none;background-color:transparent;color:#000;margin:0 2px;border-radius:10px;transition:background-color .5s ease-out;min-width:inherit;line-height:normal}.value-component .action-bubble .button-container button .material-icons{font-size:18px}.value-component .action-bubble .button-container button .mat-icon{width:18px;height:18px;vertical-align:middle}.value-component .action-bubble .button-container button.info{cursor:default}.value-component .action-bubble .button-container button:hover{background-color:#c7c7c7}.value-component.highlighted{background-color:#f5f5f5}.crud-buttons{grid-column-start:2;grid-column-end:3}.crud-buttons,.mat-error{grid-row-start:1;grid-row-end:auto}.mat-error{grid-column-start:3;grid-column-end:end}button.cancel,button.save{cursor:pointer;border:none;padding:0;margin-left:1em;outline:none;background-color:transparent;color:#000}button.save:disabled{color:#adadad;cursor:default}button.cancel .mat-icon,button.cancel .material-icons,button.save .mat-icon,button.save .material-icons{font-size:18px}.deletion-dialog .title{font-weight:700;font-size:18px;text-align:center}.deletion-dialog .action-buttons{float:right}.deletion-dialog .action-buttons .cancel{padding:0 16px}.deletion-dialog-message{font-size:16px;background-color:#ededf5;border:1px solid #d8d8df;border-radius:5px;padding:20px 10px;text-align:center}.deletion-dialog-message .deletion-comment{min-width:80%}.ck-content code{font-family:monospace!important}.ck-content pre{background-color:inherit!important}code,pre{font-family:monospace!important;background-color:hsla(0,0%,78%,.3);padding:.15em;border-radius:2px}.form-fields-container .mat-form-field .more-info,.read-mode-view .more-info{cursor:pointer;border:none;padding:0;margin-left:1em;outline:none;background-color:transparent;color:#000}.form-fields-container .mat-form-field .more-info .mat-icon{vertical-align:middle}.read-mode-view .more-info,.read-mode-view .rm-value{display:inline-block;vertical-align:middle}.read-mode-view .more-info{width:18px;height:18px}.read-mode-view .more-info .mat-icon{font-size:18px}.current-value{font-size:12px}"]}]}],"members":{"displayValue":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":24,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":39,"character":17},"arguments":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":39,"character":24}]}],null],"parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":39,"character":50},{"__symbolic":"reference","name":"ɵd"}]}],"standardValueComparisonFunc":[{"__symbolic":"method"}],"getInitValue":[{"__symbolic":"method"}],"displayPlaceInSearch":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"getNewValue":[{"__symbolic":"method"}],"getUpdatedValue":[{"__symbolic":"method"}]}},"IntValueComponent":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵa"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":11,"character":1},"arguments":[{"selector":"dsp-int-value","template":"<span *ngIf=\"mode === 'read'; else showForm\" class=\"read-mode-view\">\n    <span class=\"rm-value\">{{valueFormControl.value}}</span>\n    <span class=\"rm-comment\" *ngIf=\"shouldShowComment\">{{commentFormControl.value}}</span>\n</span>\n<ng-template #showForm>\n    <span [formGroup]=\"form\">\n        <mat-form-field class=\"large-field child-value-component\" floatLabel=\"never\">\n            <input matInput [formControlName]=\"'value'\" class=\"value\" placeholder=\"Int value\" type=\"number\" [errorStateMatcher]=\"matcher\">\n            <mat-error *ngIf=\"valueFormControl.hasError('valueNotChanged') &&\n                (valueFormControl.touched || valueFormControl.dirty)\">\n                <span class=\"custom-error-message\">New value must be different than the current value.</span>\n            </mat-error>\n            <mat-error *ngIf=\"valueFormControl.hasError('pattern')\">\n                <span class=\"custom-error-message\">New value must be an integer.</span>\n            </mat-error>\n            <mat-error *ngIf=\"valueFormControl.hasError('required')\">\n                <span class=\"custom-error-message\">An integer value is <strong>required</strong>.</span>\n            </mat-error>\n            <mat-error *ngIf=\"valueFormControl.hasError('duplicateValue')\">\n                <span class=\"custom-error-message\">This value already exists for this property. Duplicate values are not allowed.</span>\n            </mat-error>\n        </mat-form-field>\n        <mat-form-field class=\"large-field value-component-comment\">\n            <textarea matInput\n                    cdkTextareaAutosize\n                    cdkAutosizeMinRows=\"1\"\n                    cdkAutosizeMaxRows=\"6\"\n                    [formControlName]=\"'comment'\"\n                    class=\"comment\"\n                    placeholder=\"Comment\"\n                    type=\"text\"\n                    spellcheck=\"false\">\n            </textarea>\n        </mat-form-field>\n    </span>\n</ng-template>\n","styles":["@charset \"UTF-8\";@media (max-width:576px){.desktop-only{display:none!important}}.read-mode-view{font:400 15px/24px sans-serif}.read-mode-view .rm-comment,.read-mode-view .rm-value{display:block;margin:0}.child-value-component,.value-component-comment{display:block}.parent-component-wrapper .value-component-comment{margin-top:-2em}.parent-value-component .child-value-component .mat-form-field-wrapper .mat-form-field-infix{border-top:0 solid transparent}.child-input-component{display:inline-block;vertical-align:bottom;width:49%}.child-input-component:nth-child(2){padding-left:2%}.child-input-component.full-width{width:100%}.custom-error-message{font-size:12px;margin-top:-1em;padding-bottom:1em}.grid-container{display:grid;grid-template-columns:70% 30%;grid-template-rows:auto auto}.crud-buttons,.value-component{vertical-align:top}.value-component{grid-row-start:1;grid-row-end:auto;grid-column-start:1;grid-column-end:2;position:relative}.value-component .action-bubble{position:absolute;right:0;top:-20px;border:1px solid #e4e4e4;border-radius:10px;padding:0 1px;background-color:#e4e4e4;z-index:2;box-shadow:1px 4px 5px 0 #949494}.value-component .action-bubble .button-container button.mat-button-disabled .mat-icon{color:#aaa}.value-component .action-bubble .button-container button{cursor:pointer;border:none;padding:2px;outline:none;background-color:transparent;color:#000;margin:0 2px;border-radius:10px;transition:background-color .5s ease-out;min-width:inherit;line-height:normal}.value-component .action-bubble .button-container button .material-icons{font-size:18px}.value-component .action-bubble .button-container button .mat-icon{width:18px;height:18px;vertical-align:middle}.value-component .action-bubble .button-container button.info{cursor:default}.value-component .action-bubble .button-container button:hover{background-color:#c7c7c7}.value-component.highlighted{background-color:#f5f5f5}.crud-buttons{grid-column-start:2;grid-column-end:3}.crud-buttons,.mat-error{grid-row-start:1;grid-row-end:auto}.mat-error{grid-column-start:3;grid-column-end:end}button.cancel,button.save{cursor:pointer;border:none;padding:0;margin-left:1em;outline:none;background-color:transparent;color:#000}button.save:disabled{color:#adadad;cursor:default}button.cancel .mat-icon,button.cancel .material-icons,button.save .mat-icon,button.save .material-icons{font-size:18px}.deletion-dialog .title{font-weight:700;font-size:18px;text-align:center}.deletion-dialog .action-buttons{float:right}.deletion-dialog .action-buttons .cancel{padding:0 16px}.deletion-dialog-message{font-size:16px;background-color:#ededf5;border:1px solid #d8d8df;border-radius:5px;padding:20px 10px;text-align:center}.deletion-dialog-message .deletion-comment{min-width:80%}.ck-content code{font-family:monospace!important}.ck-content pre{background-color:inherit!important}code,pre{font-family:monospace!important;background-color:hsla(0,0%,78%,.3);padding:.15em;border-radius:2px}input[type=number]{-moz-appearance:textfield}input[type=number]:focus{-moz-appearance:number-input}input:-moz-read-only{pointer-events:none;-moz-appearance:textfield}input:read-only{pointer-events:none;-moz-appearance:textfield}"]}]}],"members":{"displayValue":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":18,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":29,"character":17},"arguments":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":29,"character":24}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":29,"character":50}]}],"getInitValue":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"getNewValue":[{"__symbolic":"method"}],"getUpdatedValue":[{"__symbolic":"method"}]}},"IntervalValueComponent":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵa"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":15,"character":1},"arguments":[{"selector":"dsp-interval-value","template":"<span *ngIf=\"mode === 'read'; else showForm\" class=\"read-mode-view\">\n  <span class=\"rm-value interval-start\">Start: {{valueFormControl.value?.start}}</span>\n  <span class=\"rm-value interval-end\">End: {{valueFormControl.value?.end}}</span>\n  <span class=\"rm-comment\" *ngIf=\"shouldShowComment\">{{commentFormControl.value}}</span>\n</span>\n<ng-template #showForm>\n  <span [formGroup]=\"form\">\n      <mat-form-field class=\"large-field child-value-component\" floatLabel=\"never\">\n        <dsp-interval-input #intervalInput [formControlName]=\"'value'\" class=\"value\" [errorStateMatcher]=\"matcher\" [valueRequiredValidator]=\"valueRequiredValidator\"></dsp-interval-input>\n        <mat-error *ngIf=\"valueFormControl.hasError('valueNotChanged') &&\n                   (valueFormControl.touched || valueFormControl.dirty)\">\n             <span class=\"custom-error-message\">New value must be different than the current value.</span>\n        </mat-error>\n        <mat-error *ngIf=\"valueFormControl.hasError('duplicateValue')\">\n            <span class=\"custom-error-message\">This value already exists for this property. Duplicate values are not allowed.</span>\n        </mat-error>\n      </mat-form-field>\n      <mat-form-field class=\"large-field value-component-comment\">\n        <textarea matInput\n                  cdkTextareaAutosize\n                  cdkAutosizeMinRows=\"1\"\n                  cdkAutosizeMaxRows=\"6\"\n                  [formControlName]=\"'comment'\"\n                  class=\"comment\"\n                  placeholder=\"Comment\"\n                  type=\"text\"\n                  spellcheck=\"false\">\n          </textarea>\n      </mat-form-field>\n  </span>\n</ng-template>\n","styles":["@charset \"UTF-8\";@media (max-width:576px){.desktop-only{display:none!important}}.read-mode-view{font:400 15px/24px sans-serif}.read-mode-view .rm-comment,.read-mode-view .rm-value{display:block;margin:0}.child-value-component,.value-component-comment{display:block}.parent-component-wrapper .value-component-comment{margin-top:-2em}.parent-value-component .child-value-component .mat-form-field-wrapper .mat-form-field-infix{border-top:0 solid transparent}.child-input-component{display:inline-block;vertical-align:bottom;width:49%}.child-input-component:nth-child(2){padding-left:2%}.child-input-component.full-width{width:100%}.custom-error-message{font-size:12px;margin-top:-1em;padding-bottom:1em}.grid-container{display:grid;grid-template-columns:70% 30%;grid-template-rows:auto auto}.crud-buttons,.value-component{vertical-align:top}.value-component{grid-row-start:1;grid-row-end:auto;grid-column-start:1;grid-column-end:2;position:relative}.value-component .action-bubble{position:absolute;right:0;top:-20px;border:1px solid #e4e4e4;border-radius:10px;padding:0 1px;background-color:#e4e4e4;z-index:2;box-shadow:1px 4px 5px 0 #949494}.value-component .action-bubble .button-container button.mat-button-disabled .mat-icon{color:#aaa}.value-component .action-bubble .button-container button{cursor:pointer;border:none;padding:2px;outline:none;background-color:transparent;color:#000;margin:0 2px;border-radius:10px;transition:background-color .5s ease-out;min-width:inherit;line-height:normal}.value-component .action-bubble .button-container button .material-icons{font-size:18px}.value-component .action-bubble .button-container button .mat-icon{width:18px;height:18px;vertical-align:middle}.value-component .action-bubble .button-container button.info{cursor:default}.value-component .action-bubble .button-container button:hover{background-color:#c7c7c7}.value-component.highlighted{background-color:#f5f5f5}.crud-buttons{grid-column-start:2;grid-column-end:3}.crud-buttons,.mat-error{grid-row-start:1;grid-row-end:auto}.mat-error{grid-column-start:3;grid-column-end:end}button.cancel,button.save{cursor:pointer;border:none;padding:0;margin-left:1em;outline:none;background-color:transparent;color:#000}button.save:disabled{color:#adadad;cursor:default}button.cancel .mat-icon,button.cancel .material-icons,button.save .mat-icon,button.save .material-icons{font-size:18px}.deletion-dialog .title{font-weight:700;font-size:18px;text-align:center}.deletion-dialog .action-buttons{float:right}.deletion-dialog .action-buttons .cancel{padding:0 16px}.deletion-dialog-message{font-size:16px;background-color:#ededf5;border:1px solid #d8d8df;border-radius:5px;padding:20px 10px;text-align:center}.deletion-dialog-message .deletion-comment{min-width:80%}.ck-content code{font-family:monospace!important}.ck-content pre{background-color:inherit!important}code,pre{font-family:monospace!important;background-color:hsla(0,0%,78%,.3);padding:.15em;border-radius:2px}:host ::ng-deep .child-value-component .mat-form-field-underline{display:none}:host ::ng-deep .child-value-component .mat-form-field-infix{border-top:.2em solid transparent!important}.interval-end,.interval-start,:host ::ng-deep .child-value-component .mat-form-field-infix .mat-form-field-underline{display:block}"]}]}],"members":{"intervalInputComponent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":22,"character":5},"arguments":["intervalInput"]}]}],"displayValue":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":24,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":37,"character":17},"arguments":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":37,"character":24}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":37,"character":50}]}],"standardValueComparisonFunc":[{"__symbolic":"method"}],"getInitValue":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"getNewValue":[{"__symbolic":"method"}],"getUpdatedValue":[{"__symbolic":"method"}]}},"makeCalendarToken":{"__symbolic":"function","parameters":[],"value":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"rxjs","name":"BehaviorSubject","line":7,"character":15},"arguments":["Gregorian"]}},"JDNDatepickerDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":10,"character":1},"arguments":[{"selector":"dsp-jdn-datepicker","providers":[{"provide":{"__symbolic":"reference","module":"@angular/material/core","name":"DateAdapter","line":13,"character":19},"useClass":{"__symbolic":"reference","module":"jdnconvertiblecalendardateadapter","name":"JDNConvertibleCalendarDateAdapter","line":13,"character":42},"deps":[{"__symbolic":"reference","module":"@angular/material/core","name":"MAT_DATE_LOCALE","line":13,"character":84},{"__symbolic":"reference","module":"jdnconvertiblecalendardateadapter","name":"ACTIVE_CALENDAR","line":13,"character":101}]},{"provide":{"__symbolic":"reference","module":"jdnconvertiblecalendardateadapter","name":"ACTIVE_CALENDAR","line":14,"character":19},"useFactory":{"__symbolic":"reference","name":"makeCalendarToken"}}]}]}],"members":{"activeCalendar":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":21,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":35,"character":9},"arguments":[{"__symbolic":"reference","module":"jdnconvertiblecalendardateadapter","name":"ACTIVE_CALENDAR","line":35,"character":16}]}],null],"parameters":[null,{"__symbolic":"reference","name":"DateAdapter","module":"@angular/material/core","arguments":[{"__symbolic":"reference","module":"jdnconvertiblecalendar","name":"JDNConvertibleCalendar","line":36,"character":38}]}]}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}},"resourceValidator":{"__symbolic":"function"},"LinkValueComponent":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵa"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":32,"character":1},"arguments":[{"selector":"dsp-link-value","template":"<span *ngIf=\"mode === 'read'; else showForm\" class=\"read-mode-view\">\n    <span class=\"rm-value\" (click)=\"refResClicked()\" (mouseover)=\"refResHovered()\">\n        <a class=\"link\">{{valueFormControl.value?.label}}</a>\n    </span>\n  <span class=\"rm-comment\" *ngIf=\"shouldShowComment\">{{commentFormControl.value}}</span>\n</span>\n<ng-template #showForm>\n  <span [formGroup]=\"form\">\n    <mat-form-field class=\"child-value-component\" floatLabel=\"never\">\n          <input matInput [formControlName]=\"'value'\" class=\"value\" type=\"text\" placeholder=\"Link value\" aria-label=\"resource\" [matAutocomplete]=\"auto\">\n          <mat-autocomplete #auto=\"matAutocomplete\" [displayWith]=\"displayResource\">\n            <mat-option *ngFor=\"let res of resources\" [value]=\"res\">\n                {{res?.label}}\n            </mat-option>\n          </mat-autocomplete>\n        <mat-error *ngIf=\"valueFormControl.hasError('valueNotChanged')\">\n                 <span class=\"custom-error-message\">New value must be different than the current value.</span>\n            </mat-error>\n        <mat-error *ngIf=\"valueRequiredValidator && valueFormControl.hasError('invalidType')\">\n                 <span class=\"custom-error-message\">New value must be a valid resource type.</span>\n        </mat-error>\n        <mat-error *ngIf=\"valueFormControl.hasError('duplicateValue')\">\n            <span class=\"custom-error-message\">This value already exists for this property. Duplicate values are not allowed.</span>\n        </mat-error>\n      </mat-form-field>\n      <mat-form-field class=\"large-field value-component-comment\">\n        <textarea matInput\n                  cdkTextareaAutosize\n                  cdkAutosizeMinRows=\"1\"\n                  cdkAutosizeMaxRows=\"6\"\n                  [formControlName]=\"'comment'\"\n                  class=\"comment\"\n                  placeholder=\"Comment\"\n                  type=\"text\"\n                  spellcheck=\"false\">\n        </textarea>\n      </mat-form-field>\n  </span>\n</ng-template>\n","styles":["@charset \"UTF-8\";@media (max-width:576px){.desktop-only{display:none!important}}.read-mode-view{font:400 15px/24px sans-serif}.read-mode-view .rm-comment,.read-mode-view .rm-value{display:block;margin:0}.child-value-component,.value-component-comment{display:block}.parent-component-wrapper .value-component-comment{margin-top:-2em}.parent-value-component .child-value-component .mat-form-field-wrapper .mat-form-field-infix{border-top:0 solid transparent}.child-input-component{display:inline-block;vertical-align:bottom;width:49%}.child-input-component:nth-child(2){padding-left:2%}.child-input-component.full-width{width:100%}.custom-error-message{font-size:12px;margin-top:-1em;padding-bottom:1em}.grid-container{display:grid;grid-template-columns:70% 30%;grid-template-rows:auto auto}.crud-buttons,.value-component{vertical-align:top}.value-component{grid-row-start:1;grid-row-end:auto;grid-column-start:1;grid-column-end:2;position:relative}.value-component .action-bubble{position:absolute;right:0;top:-20px;border:1px solid #e4e4e4;border-radius:10px;padding:0 1px;background-color:#e4e4e4;z-index:2;box-shadow:1px 4px 5px 0 #949494}.value-component .action-bubble .button-container button.mat-button-disabled .mat-icon{color:#aaa}.value-component .action-bubble .button-container button{cursor:pointer;border:none;padding:2px;outline:none;background-color:transparent;color:#000;margin:0 2px;border-radius:10px;transition:background-color .5s ease-out;min-width:inherit;line-height:normal}.value-component .action-bubble .button-container button .material-icons{font-size:18px}.value-component .action-bubble .button-container button .mat-icon{width:18px;height:18px;vertical-align:middle}.value-component .action-bubble .button-container button.info{cursor:default}.value-component .action-bubble .button-container button:hover{background-color:#c7c7c7}.value-component.highlighted{background-color:#f5f5f5}.crud-buttons{grid-column-start:2;grid-column-end:3}.crud-buttons,.mat-error{grid-row-start:1;grid-row-end:auto}.mat-error{grid-column-start:3;grid-column-end:end}button.cancel,button.save{cursor:pointer;border:none;padding:0;margin-left:1em;outline:none;background-color:transparent;color:#000}button.save:disabled{color:#adadad;cursor:default}button.cancel .mat-icon,button.cancel .material-icons,button.save .mat-icon,button.save .material-icons{font-size:18px}.deletion-dialog .title{font-weight:700;font-size:18px;text-align:center}.deletion-dialog .action-buttons{float:right}.deletion-dialog .action-buttons .cancel{padding:0 16px}.deletion-dialog-message{font-size:16px;background-color:#ededf5;border:1px solid #d8d8df;border-radius:5px;padding:20px 10px;text-align:center}.deletion-dialog-message .deletion-comment{min-width:80%}.ck-content code{font-family:monospace!important}.ck-content pre{background-color:inherit!important}code,pre{font-family:monospace!important;background-color:hsla(0,0%,78%,.3);padding:.15em;border-radius:2px}"]}]}],"members":{"displayValue":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":39,"character":5}}]}],"parentResource":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":40,"character":5}}]}],"propIri":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":41,"character":5}}]}],"referredResourceClicked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":43,"character":5}}]}],"referredResourceHovered":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":45,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":59,"character":9},"arguments":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":59,"character":16}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":60,"character":9},"arguments":[{"__symbolic":"reference","name":"DspApiConnectionToken"}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":59,"character":42},{"__symbolic":"reference","module":"@dasch-swiss/dsp-js","name":"KnoraApiConnection","line":60,"character":66}]}],"displayResource":[{"__symbolic":"method"}],"searchByLabel":[{"__symbolic":"method"}],"getInitValue":[{"__symbolic":"method"}],"standardValueComparisonFunc":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"getNewValue":[{"__symbolic":"method"}],"getUpdatedValue":[{"__symbolic":"method"}],"refResClicked":[{"__symbolic":"method"}],"refResHovered":[{"__symbolic":"method"}]}},"ListValueComponent":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵa"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":20,"character":1},"arguments":[{"selector":"dsp-list-value","template":"<span *ngIf=\"mode !== 'read' && listRootNode !== undefined\">\n    <button class=\"md-button\" mat-stroked-button [matMenuTriggerFor]=\"mainMenu\" type=\"button\" placeholder=\"List value\">\n        <span *ngIf=\"!selectedNode\">Select list value</span>\n        <span *ngIf=\"selectedNode\">{{selectedNode.label}}</span>\n    </button>\n\n    <mat-menu #mainMenu=\"matMenu\" [overlapTrigger]=\"false\">\n        <span *ngFor=\"let child of listRootNode.children\">\n            <span *ngIf=\"child.children && child.children.length > 0\">\n                <button mat-menu-item [matMenuTriggerFor]=\"menu.childMenu\" (click)=\"getSelectedNode(child)\"\n                        type=\"button\">\n                    {{child.label}}\n                </button>\n                <dsp-sublist-value #menu [children]=\"child.children\" (selectedNode)=\"getSelectedNode($event)\">\n                </dsp-sublist-value>\n            </span>\n\n            <span *ngIf=\"!child.children || child.children.length === 0\">\n                <button mat-menu-item (click)=\"getSelectedNode(child)\" type=\"button\">\n                    {{child.label}}\n                </button>\n            </span>\n        </span>\n    </mat-menu>\n    <mat-error *ngIf=\"valueFormControl.hasError('valueNotChanged')  && valueFormControl.dirty\">\n        <span class=\"custom-error-message\">New value must be different than the current value.</span>\n    </mat-error>\n    <mat-error *ngIf=\"valueFormControl.hasError('duplicateValue')\">\n        <span class=\"custom-error-message\">This value already exists for this property. Duplicate values are not allowed.</span>\n    </mat-error>\n</span>\n<span *ngIf=\"mode === 'read'; else showForm\" class=\"read-mode-view\">\n    <span class=\"rm-value\">{{valueFormControl.value}}</span>\n    <span class=\"rm-comment\" *ngIf=\"shouldShowComment\">{{commentFormControl.value}}</span>\n</span>\n<ng-template #showForm>\n    <span [formGroup]=\"form\">\n    <mat-form-field class=\"large-field child-value-component\" *ngIf=\"mode === 'read'\" floatLabel=\"never\">\n            <input [formControlName]=\"'value'\" class=\"value\" type=\"text\" placeholder=\"List value\" matInput readonly>\n    </mat-form-field>\n    <mat-form-field class=\"large-field value-component-comment\">\n        <textarea matInput\n                  cdkTextareaAutosize\n                  cdkAutosizeMinRows=\"1\"\n                  cdkAutosizeMaxRows=\"6\"\n                  [formControlName]=\"'comment'\"\n                  class=\"comment\"\n                  placeholder=\"Comment\"\n                  type=\"text\"\n                  spellcheck=\"false\">\n        </textarea>\n    </mat-form-field>\n    </span>\n</ng-template>\n","styles":["@charset \"UTF-8\";@media (max-width:576px){.desktop-only{display:none!important}}.read-mode-view{font:400 15px/24px sans-serif}.read-mode-view .rm-comment,.read-mode-view .rm-value{display:block;margin:0}.child-value-component,.value-component-comment{display:block}.parent-component-wrapper .value-component-comment{margin-top:-2em}.parent-value-component .child-value-component .mat-form-field-wrapper .mat-form-field-infix{border-top:0 solid transparent}.child-input-component{display:inline-block;vertical-align:bottom;width:49%}.child-input-component:nth-child(2){padding-left:2%}.child-input-component.full-width{width:100%}.custom-error-message{font-size:12px;margin-top:-1em;padding-bottom:1em}.grid-container{display:grid;grid-template-columns:70% 30%;grid-template-rows:auto auto}.crud-buttons,.value-component{vertical-align:top}.value-component{grid-row-start:1;grid-row-end:auto;grid-column-start:1;grid-column-end:2;position:relative}.value-component .action-bubble{position:absolute;right:0;top:-20px;border:1px solid #e4e4e4;border-radius:10px;padding:0 1px;background-color:#e4e4e4;z-index:2;box-shadow:1px 4px 5px 0 #949494}.value-component .action-bubble .button-container button.mat-button-disabled .mat-icon{color:#aaa}.value-component .action-bubble .button-container button{cursor:pointer;border:none;padding:2px;outline:none;background-color:transparent;color:#000;margin:0 2px;border-radius:10px;transition:background-color .5s ease-out;min-width:inherit;line-height:normal}.value-component .action-bubble .button-container button .material-icons{font-size:18px}.value-component .action-bubble .button-container button .mat-icon{width:18px;height:18px;vertical-align:middle}.value-component .action-bubble .button-container button.info{cursor:default}.value-component .action-bubble .button-container button:hover{background-color:#c7c7c7}.value-component.highlighted{background-color:#f5f5f5}.crud-buttons{grid-column-start:2;grid-column-end:3}.crud-buttons,.mat-error{grid-row-start:1;grid-row-end:auto}.mat-error{grid-column-start:3;grid-column-end:end}button.cancel,button.save{cursor:pointer;border:none;padding:0;margin-left:1em;outline:none;background-color:transparent;color:#000}button.save:disabled{color:#adadad;cursor:default}button.cancel .mat-icon,button.cancel .material-icons,button.save .mat-icon,button.save .material-icons{font-size:18px}.deletion-dialog .title{font-weight:700;font-size:18px;text-align:center}.deletion-dialog .action-buttons{float:right}.deletion-dialog .action-buttons .cancel{padding:0 16px}.deletion-dialog-message{font-size:16px;background-color:#ededf5;border:1px solid #d8d8df;border-radius:5px;padding:20px 10px;text-align:center}.deletion-dialog-message .deletion-comment{min-width:80%}.ck-content code{font-family:monospace!important}.ck-content pre{background-color:inherit!important}code,pre{font-family:monospace!important;background-color:hsla(0,0%,78%,.3);padding:.15em;border-radius:2px}"]}]}],"members":{"displayValue":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":27,"character":5}}]}],"propertyDef":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":28,"character":5}}]}],"menuTrigger":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":38,"character":5},"arguments":[{"__symbolic":"reference","module":"@angular/material/menu","name":"MatMenuTrigger","line":38,"character":15}]}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":43,"character":9},"arguments":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":43,"character":16}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":44,"character":9},"arguments":[{"__symbolic":"reference","name":"DspApiConnectionToken"}]}],null],"parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":43,"character":42},{"__symbolic":"reference","module":"@dasch-swiss/dsp-js","name":"KnoraApiConnection","line":44,"character":66},{"__symbolic":"reference","name":"NotificationService"}]}],"getInitValue":[{"__symbolic":"method"}],"resetFormControl":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"getNewValue":[{"__symbolic":"method"}],"getUpdatedValue":[{"__symbolic":"method"}],"getSelectedNode":[{"__symbolic":"method"}]}},"TextValueAsHtmlComponent":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵa"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":6,"character":1},"arguments":[{"selector":"dsp-text-value-as-html","template":"<div [innerHTML]=\"htmlFromKnora | dspLinkify\" class=\"value\"></div>\n<div *ngIf=\"comment\">\n  <label>{{commentLabel}}: </label><span class=\"comment\">{{comment}}</span>\n</div>\n","styles":["@charset \"UTF-8\";@media (max-width:576px){.desktop-only{display:none!important}}.read-mode-view{font:400 15px/24px sans-serif}.read-mode-view .rm-comment,.read-mode-view .rm-value{display:block;margin:0}.child-value-component,.value-component-comment{display:block}.parent-component-wrapper .value-component-comment{margin-top:-2em}.parent-value-component .child-value-component .mat-form-field-wrapper .mat-form-field-infix{border-top:0 solid transparent}.child-input-component{display:inline-block;vertical-align:bottom;width:49%}.child-input-component:nth-child(2){padding-left:2%}.child-input-component.full-width{width:100%}.custom-error-message{font-size:12px;margin-top:-1em;padding-bottom:1em}.grid-container{display:grid;grid-template-columns:70% 30%;grid-template-rows:auto auto}.crud-buttons,.value-component{vertical-align:top}.value-component{grid-row-start:1;grid-row-end:auto;grid-column-start:1;grid-column-end:2;position:relative}.value-component .action-bubble{position:absolute;right:0;top:-20px;border:1px solid #e4e4e4;border-radius:10px;padding:0 1px;background-color:#e4e4e4;z-index:2;box-shadow:1px 4px 5px 0 #949494}.value-component .action-bubble .button-container button.mat-button-disabled .mat-icon{color:#aaa}.value-component .action-bubble .button-container button{cursor:pointer;border:none;padding:2px;outline:none;background-color:transparent;color:#000;margin:0 2px;border-radius:10px;transition:background-color .5s ease-out;min-width:inherit;line-height:normal}.value-component .action-bubble .button-container button .material-icons{font-size:18px}.value-component .action-bubble .button-container button .mat-icon{width:18px;height:18px;vertical-align:middle}.value-component .action-bubble .button-container button.info{cursor:default}.value-component .action-bubble .button-container button:hover{background-color:#c7c7c7}.value-component.highlighted{background-color:#f5f5f5}.crud-buttons{grid-column-start:2;grid-column-end:3}.crud-buttons,.mat-error{grid-row-start:1;grid-row-end:auto}.mat-error{grid-column-start:3;grid-column-end:end}button.cancel,button.save{cursor:pointer;border:none;padding:0;margin-left:1em;outline:none;background-color:transparent;color:#000}button.save:disabled{color:#adadad;cursor:default}button.cancel .mat-icon,button.cancel .material-icons,button.save .mat-icon,button.save .material-icons{font-size:18px}.deletion-dialog .title{font-weight:700;font-size:18px;text-align:center}.deletion-dialog .action-buttons{float:right}.deletion-dialog .action-buttons .cancel{padding:0 16px}.deletion-dialog-message{font-size:16px;background-color:#ededf5;border:1px solid #d8d8df;border-radius:5px;padding:20px 10px;text-align:center}.deletion-dialog-message .deletion-comment{min-width:80%}.ck-content code{font-family:monospace!important}.ck-content pre{background-color:inherit!important}code,pre{font-family:monospace!important;background-color:hsla(0,0%,78%,.3);padding:.15em;border-radius:2px}"]}]}],"members":{"displayValue":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":13,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}],"getInitValue":[{"__symbolic":"method"}],"getNewValue":[{"__symbolic":"method"}],"getUpdatedValue":[{"__symbolic":"method"}]}},"TextValueAsXMLComponent":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵa"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":21,"character":1},"arguments":[{"selector":"dsp-text-value-as-xml","template":"<span *ngIf=\"mode === 'read'; else showForm\" class=\"read-mode-view\">\n    <div *ngIf=\"this.displayValue?.mapping === standardMapping; else sourceMode\"\n         class=\"rm-value\"\n         dspHtmlLink\n         [innerHTML]=\"valueFormControl.value\"\n         (internalLinkClicked)=\"internalLinkClicked.emit($event)\"\n         (internalLinkHovered)=\"internalLinkHovered.emit($event)\">\n    </div>\n    <ng-template #sourceMode>\n        <span class=\"rm-value\">{{displayValue?.xml}}</span>\n    </ng-template>\n    <span class=\"rm-comment\" *ngIf=\"shouldShowComment\">{{commentFormControl.value}}</span>\n</span>\n<ng-template #showForm>\n    <div *ngIf=\"editor; else noConfig\" [formGroup]=\"form\">\n        <span [formGroup]=\"form\">\n            <ckeditor [formControlName]=\"'value'\" [config]=\"editorConfig\" [editor]=\"editor\"></ckeditor>\n            <mat-form-field class=\"large-field value-component-comment\">\n                    <textarea matInput\n                            cdkTextareaAutosize\n                            cdkAutosizeMinRows=\"1\"\n                            cdkAutosizeMaxRows=\"6\"\n                            [formControlName]=\"'comment'\"\n                            class=\"comment\"\n                            placeholder=\"Comment\"\n                            type=\"text\"\n                            spellcheck=\"false\">\n                    </textarea>\n            </mat-form-field>\n        </span>\n    </div>\n    <ng-template #noConfig>\n        No class was provided for CKEditor.\n    </ng-template>\n</ng-template>\n\n","styles":[".rm-value ::ng-deep p{margin:0}"]}]}],"members":{"displayValue":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":30,"character":5}}]}],"internalLinkClicked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":32,"character":5}}]}],"internalLinkHovered":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":34,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":64,"character":17},"arguments":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":64,"character":24}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":64,"character":49}]}],"standardValueComparisonFunc":[{"__symbolic":"method"}],"getInitValue":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"getNewValue":[{"__symbolic":"method"}],"getUpdatedValue":[{"__symbolic":"method"}],"_handleXML":[{"__symbolic":"method"}]}},"TextValueAsStringComponent":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵa"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":10,"character":1},"arguments":[{"selector":"dsp-text-value-as-string","template":"<span *ngIf=\"mode === 'read'; else showForm\" class=\"read-mode-view\">\n    <span class=\"rm-value\" [innerHtml]=\"valueFormControl.value | dspLinkify\"></span>\n    <span class=\"rm-comment\" *ngIf=\"shouldShowComment\">{{commentFormControl.value}}</span>\n</span>\n<ng-template #showForm>\n    <span [formGroup]=\"form\">\n        <mat-form-field class=\"large-field child-value-component\" floatLabel=\"never\">\n            <input matInput [formControlName]=\"'value'\" class=\"value\" placeholder=\"Text value\" type=\"text\" [errorStateMatcher]=\"matcher\">\n            <mat-error *ngIf=\"valueFormControl.hasError('valueNotChanged') &&\n                (valueFormControl.touched || valueFormControl.dirty)\">\n                <span class=\"custom-error-message\">New value must be different than the current value.</span>\n            </mat-error>\n            <mat-error *ngIf=\"valueFormControl.hasError('required')\">\n                A text value is <strong>required</strong>.\n            </mat-error>\n            <mat-error *ngIf=\"valueFormControl.hasError('duplicateValue')\">\n                <span class=\"custom-error-message\">This value already exists for this property. Duplicate values are not allowed.</span>\n            </mat-error>\n        </mat-form-field>\n        <mat-form-field class=\"large-field value-component-comment\">\n            <textarea matInput\n                      cdkTextareaAutosize\n                      cdkAutosizeMinRows=\"1\"\n                      cdkAutosizeMaxRows=\"6\"\n                      [formControlName]=\"'comment'\"\n                      class=\"comment\"\n                      placeholder=\"Comment\"\n                      type=\"text\"\n                      spellcheck=\"false\">\n            </textarea>\n        </mat-form-field>\n    </span>\n</ng-template>\n","styles":["@charset \"UTF-8\";@media (max-width:576px){.desktop-only{display:none!important}}.read-mode-view{font:400 15px/24px sans-serif}.read-mode-view .rm-comment,.read-mode-view .rm-value{display:block;margin:0}.child-value-component,.value-component-comment{display:block}.parent-component-wrapper .value-component-comment{margin-top:-2em}.parent-value-component .child-value-component .mat-form-field-wrapper .mat-form-field-infix{border-top:0 solid transparent}.child-input-component{display:inline-block;vertical-align:bottom;width:49%}.child-input-component:nth-child(2){padding-left:2%}.child-input-component.full-width{width:100%}.custom-error-message{font-size:12px;margin-top:-1em;padding-bottom:1em}.grid-container{display:grid;grid-template-columns:70% 30%;grid-template-rows:auto auto}.crud-buttons,.value-component{vertical-align:top}.value-component{grid-row-start:1;grid-row-end:auto;grid-column-start:1;grid-column-end:2;position:relative}.value-component .action-bubble{position:absolute;right:0;top:-20px;border:1px solid #e4e4e4;border-radius:10px;padding:0 1px;background-color:#e4e4e4;z-index:2;box-shadow:1px 4px 5px 0 #949494}.value-component .action-bubble .button-container button.mat-button-disabled .mat-icon{color:#aaa}.value-component .action-bubble .button-container button{cursor:pointer;border:none;padding:2px;outline:none;background-color:transparent;color:#000;margin:0 2px;border-radius:10px;transition:background-color .5s ease-out;min-width:inherit;line-height:normal}.value-component .action-bubble .button-container button .material-icons{font-size:18px}.value-component .action-bubble .button-container button .mat-icon{width:18px;height:18px;vertical-align:middle}.value-component .action-bubble .button-container button.info{cursor:default}.value-component .action-bubble .button-container button:hover{background-color:#c7c7c7}.value-component.highlighted{background-color:#f5f5f5}.crud-buttons{grid-column-start:2;grid-column-end:3}.crud-buttons,.mat-error{grid-row-start:1;grid-row-end:auto}.mat-error{grid-column-start:3;grid-column-end:end}button.cancel,button.save{cursor:pointer;border:none;padding:0;margin-left:1em;outline:none;background-color:transparent;color:#000}button.save:disabled{color:#adadad;cursor:default}button.cancel .mat-icon,button.cancel .material-icons,button.save .mat-icon,button.save .material-icons{font-size:18px}.deletion-dialog .title{font-weight:700;font-size:18px;text-align:center}.deletion-dialog .action-buttons{float:right}.deletion-dialog .action-buttons .cancel{padding:0 16px}.deletion-dialog-message{font-size:16px;background-color:#ededf5;border:1px solid #d8d8df;border-radius:5px;padding:20px 10px;text-align:center}.deletion-dialog-message .deletion-comment{min-width:80%}.ck-content code{font-family:monospace!important}.ck-content pre{background-color:inherit!important}code,pre{font-family:monospace!important;background-color:hsla(0,0%,78%,.3);padding:.15em;border-radius:2px}"]}]}],"members":{"displayValue":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":28,"character":17},"arguments":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":28,"character":24}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":28,"character":50}]}],"getInitValue":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"getNewValue":[{"__symbolic":"method"}],"getUpdatedValue":[{"__symbolic":"method"}]}},"TimeValueComponent":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵa"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":11,"character":1},"arguments":[{"selector":"dsp-time-value","template":"<span *ngIf=\"mode === 'read'; else showForm\" class=\"read-mode-view\">\n  <span class=\"rm-value date\">Date: {{valueFormControl.value | date}}</span>\n  <span class=\"rm-value time\">Time: {{valueFormControl.value | date:\"HH:mm\"}}</span>\n  <span class=\"rm-comment\" *ngIf=\"shouldShowComment\">{{commentFormControl.value}}</span>\n</span>\n<ng-template #showForm>\n  <span [formGroup]=\"form\" class=\"parent-component-wrapper\">\n      <mat-form-field class=\"large-field child-value-component\" floatLabel=\"never\">\n        <dsp-time-input #timeInput [formControlName]=\"'value'\" class=\"value\" [errorStateMatcher]=\"matcher\" [valueRequiredValidator]=\"valueRequiredValidator\"></dsp-time-input>\n          <mat-error *ngIf=\"valueFormControl.hasError('valueNotChanged') &&\n                (valueFormControl.touched || valueFormControl.dirty)\">\n            <span class=\"custom-error-message\">New value must be different than the current value.</span>\n          </mat-error>\n          <mat-error *ngIf=\"valueFormControl.hasError('duplicateValue')\">\n            <span class=\"custom-error-message\">This value already exists for this property. Duplicate values are not allowed.</span>\n        </mat-error>\n      </mat-form-field>\n      <mat-form-field class=\"large-field value-component-comment\">\n        <textarea matInput\n                  cdkTextareaAutosize\n                  cdkAutosizeMinRows=\"1\"\n                  cdkAutosizeMaxRows=\"6\"\n                  [formControlName]=\"'comment'\"\n                  class=\"comment\"\n                  placeholder=\"Comment\"\n                  type=\"text\"\n                  spellcheck=\"false\">\n          </textarea>\n      </mat-form-field>\n  </span>\n</ng-template>\n","styles":["@charset \"UTF-8\";@media (max-width:576px){.desktop-only{display:none!important}}.read-mode-view{font:400 15px/24px sans-serif}.read-mode-view .rm-comment,.read-mode-view .rm-value{display:block;margin:0}.child-value-component,.value-component-comment{display:block}.parent-component-wrapper .value-component-comment{margin-top:-2em}.parent-value-component .child-value-component .mat-form-field-wrapper .mat-form-field-infix{border-top:0 solid transparent}.child-input-component{display:inline-block;vertical-align:bottom;width:49%}.child-input-component:nth-child(2){padding-left:2%}.child-input-component.full-width{width:100%}.custom-error-message{font-size:12px;margin-top:-1em;padding-bottom:1em}.grid-container{display:grid;grid-template-columns:70% 30%;grid-template-rows:auto auto}.crud-buttons,.value-component{vertical-align:top}.value-component{grid-row-start:1;grid-row-end:auto;grid-column-start:1;grid-column-end:2;position:relative}.value-component .action-bubble{position:absolute;right:0;top:-20px;border:1px solid #e4e4e4;border-radius:10px;padding:0 1px;background-color:#e4e4e4;z-index:2;box-shadow:1px 4px 5px 0 #949494}.value-component .action-bubble .button-container button.mat-button-disabled .mat-icon{color:#aaa}.value-component .action-bubble .button-container button{cursor:pointer;border:none;padding:2px;outline:none;background-color:transparent;color:#000;margin:0 2px;border-radius:10px;transition:background-color .5s ease-out;min-width:inherit;line-height:normal}.value-component .action-bubble .button-container button .material-icons{font-size:18px}.value-component .action-bubble .button-container button .mat-icon{width:18px;height:18px;vertical-align:middle}.value-component .action-bubble .button-container button.info{cursor:default}.value-component .action-bubble .button-container button:hover{background-color:#c7c7c7}.value-component.highlighted{background-color:#f5f5f5}.crud-buttons{grid-column-start:2;grid-column-end:3}.crud-buttons,.mat-error{grid-row-start:1;grid-row-end:auto}.mat-error{grid-column-start:3;grid-column-end:end}button.cancel,button.save{cursor:pointer;border:none;padding:0;margin-left:1em;outline:none;background-color:transparent;color:#000}button.save:disabled{color:#adadad;cursor:default}button.cancel .mat-icon,button.cancel .material-icons,button.save .mat-icon,button.save .material-icons{font-size:18px}.deletion-dialog .title{font-weight:700;font-size:18px;text-align:center}.deletion-dialog .action-buttons{float:right}.deletion-dialog .action-buttons .cancel{padding:0 16px}.deletion-dialog-message{font-size:16px;background-color:#ededf5;border:1px solid #d8d8df;border-radius:5px;padding:20px 10px;text-align:center}.deletion-dialog-message .deletion-comment{min-width:80%}.ck-content code{font-family:monospace!important}.ck-content pre{background-color:inherit!important}code,pre{font-family:monospace!important;background-color:hsla(0,0%,78%,.3);padding:.15em;border-radius:2px}:host ::ng-deep .child-value-component .mat-form-field-underline{display:none}:host ::ng-deep .child-value-component .mat-form-field-infix{border-top:.2em solid transparent!important}.date,.time,:host ::ng-deep .child-value-component .mat-form-field-infix .mat-form-field-underline{display:block}"]}]}],"members":{"timeInputComponent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":18,"character":5},"arguments":["timeInput"]}]}],"displayValue":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":20,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":33,"character":17},"arguments":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":33,"character":24}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":33,"character":50}]}],"getInitValue":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"getNewValue":[{"__symbolic":"method"}],"getUpdatedValue":[{"__symbolic":"method"}]}},"UriValueComponent":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵa"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":11,"character":1},"arguments":[{"selector":"dsp-uri-value","template":"<span *ngIf=\"mode === 'read'; else showForm\" class=\"read-mode-view\">\n    <span class=\"rm-value\">\n        <a class=\"link\" target=\"_blank\" rel=\"noopener\" href=\"{{valueFormControl.value}}\">{{ label ? label : valueFormControl.value}}</a>\n    </span>\n    <span class=\"rm-comment\" *ngIf=\"shouldShowComment\">{{commentFormControl.value}}</span>\n</span>\n<ng-template #showForm>\n    <span [formGroup]=\"form\">\n        <mat-form-field class=\"large-field child-value-component\" floatLabel=\"never\">\n            <input matInput [formControlName]=\"'value'\" class=\"value\" placeholder=\"Uri value\" type=\"url\" [errorStateMatcher]=\"matcher\">\n            <mat-error *ngIf=\"valueFormControl.hasError('valueNotChanged') &&\n                (valueFormControl.touched || valueFormControl.dirty)\">\n                <span class=\"custom-error-message\">New value must be different than the current value.</span>\n            </mat-error>\n            <mat-error *ngIf=\"valueFormControl.hasError('pattern')\">\n                <span class=\"custom-error-message\">New value must be a valid URI.</span>\n            </mat-error>\n             <mat-error *ngIf=\"valueFormControl.hasError('required')\">\n                A URI value is <strong>required</strong>.\n            </mat-error>\n            <mat-error *ngIf=\"valueFormControl.hasError('duplicateValue')\">\n                <span class=\"custom-error-message\">This value already exists for this property. Duplicate values are not allowed.</span>\n            </mat-error>\n        </mat-form-field>\n        <mat-form-field class=\"large-field value-component-comment\">\n            <textarea matInput\n                      cdkTextareaAutosize\n                      cdkAutosizeMinRows=\"1\"\n                      cdkAutosizeMaxRows=\"6\"\n                      [formControlName]=\"'comment'\"\n                      class=\"comment\"\n                      placeholder=\"Comment\"\n                      type=\"text\"\n                      spellcheck=\"false\">\n            </textarea>\n        </mat-form-field>\n    </span>\n</ng-template>\n","styles":["@charset \"UTF-8\";@media (max-width:576px){.desktop-only{display:none!important}}.read-mode-view{font:400 15px/24px sans-serif}.read-mode-view .rm-comment,.read-mode-view .rm-value{display:block;margin:0}.child-value-component,.value-component-comment{display:block}.parent-component-wrapper .value-component-comment{margin-top:-2em}.parent-value-component .child-value-component .mat-form-field-wrapper .mat-form-field-infix{border-top:0 solid transparent}.child-input-component{display:inline-block;vertical-align:bottom;width:49%}.child-input-component:nth-child(2){padding-left:2%}.child-input-component.full-width{width:100%}.custom-error-message{font-size:12px;margin-top:-1em;padding-bottom:1em}.grid-container{display:grid;grid-template-columns:70% 30%;grid-template-rows:auto auto}.crud-buttons,.value-component{vertical-align:top}.value-component{grid-row-start:1;grid-row-end:auto;grid-column-start:1;grid-column-end:2;position:relative}.value-component .action-bubble{position:absolute;right:0;top:-20px;border:1px solid #e4e4e4;border-radius:10px;padding:0 1px;background-color:#e4e4e4;z-index:2;box-shadow:1px 4px 5px 0 #949494}.value-component .action-bubble .button-container button.mat-button-disabled .mat-icon{color:#aaa}.value-component .action-bubble .button-container button{cursor:pointer;border:none;padding:2px;outline:none;background-color:transparent;color:#000;margin:0 2px;border-radius:10px;transition:background-color .5s ease-out;min-width:inherit;line-height:normal}.value-component .action-bubble .button-container button .material-icons{font-size:18px}.value-component .action-bubble .button-container button .mat-icon{width:18px;height:18px;vertical-align:middle}.value-component .action-bubble .button-container button.info{cursor:default}.value-component .action-bubble .button-container button:hover{background-color:#c7c7c7}.value-component.highlighted{background-color:#f5f5f5}.crud-buttons{grid-column-start:2;grid-column-end:3}.crud-buttons,.mat-error{grid-row-start:1;grid-row-end:auto}.mat-error{grid-column-start:3;grid-column-end:end}button.cancel,button.save{cursor:pointer;border:none;padding:0;margin-left:1em;outline:none;background-color:transparent;color:#000}button.save:disabled{color:#adadad;cursor:default}button.cancel .mat-icon,button.cancel .material-icons,button.save .mat-icon,button.save .material-icons{font-size:18px}.deletion-dialog .title{font-weight:700;font-size:18px;text-align:center}.deletion-dialog .action-buttons{float:right}.deletion-dialog .action-buttons .cancel{padding:0 16px}.deletion-dialog-message{font-size:16px;background-color:#ededf5;border:1px solid #d8d8df;border-radius:5px;padding:20px 10px;text-align:center}.deletion-dialog-message .deletion-comment{min-width:80%}.ck-content code{font-family:monospace!important}.ck-content pre{background-color:inherit!important}code,pre{font-family:monospace!important;background-color:hsla(0,0%,78%,.3);padding:.15em;border-radius:2px}"]}]}],"members":{"displayValue":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":18,"character":5}}]}],"label":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":19,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":30,"character":17},"arguments":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":30,"character":24}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":30,"character":50}]}],"getInitValue":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"getNewValue":[{"__symbolic":"method"}],"getUpdatedValue":[{"__symbolic":"method"}]}},"CustomRegex":{"__symbolic":"class","members":{},"statics":{"INT_REGEX":{"__symbolic":"error","message":"Expression form not supported","line":5,"character":39},"DECIMAL_REGEX":{"__symbolic":"error","message":"Expression form not supported","line":7,"character":43},"URI_REGEX":{"__symbolic":"error","message":"Expression form not supported","line":9,"character":39},"COLOR_REGEX":{"__symbolic":"error","message":"Expression form not supported","line":11,"character":41},"TIME_REGEX":{"__symbolic":"error","message":"Expression form not supported","line":13,"character":40},"GEONAME_REGEX":{"__symbolic":"error","message":"Expression form not supported","line":15,"character":43},"EMAIL_REGEX":{"__symbolic":"error","message":"Expression form not supported","line":17,"character":41},"PASSWORD_REGEX":{"__symbolic":"error","message":"Expression form not supported","line":19,"character":44},"USERNAME_REGEX":{"__symbolic":"error","message":"Expression form not supported","line":21,"character":44},"SHORTNAME_REGEX":{"__symbolic":"error","message":"Expression form not supported","line":23,"character":45},"ONTOLOGYNAME_REGEX":{"__symbolic":"error","message":"Expression form not supported","line":25,"character":48}}},"DisplayEditComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":38,"character":1},"arguments":[{"selector":"dsp-display-edit","animations":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"trigger","line":45,"character":8},"arguments":["simpleFadeAnimation",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"state","line":48,"character":10},"arguments":["in",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style","line":48,"character":22},"arguments":[{"opacity":1}]}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"transition","line":51,"character":10},"arguments":[":enter",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style","line":53,"character":12},"arguments":[{"opacity":0}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"animate","line":55,"character":12},"arguments":[150]}]]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"transition","line":59,"character":10},"arguments":[":leave",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"animate","line":61,"character":12},"arguments":[150,{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style","line":61,"character":25},"arguments":[{"opacity":0}]}]}]}]]}],"template":"<div class=\"grid-container\">\n    <div class=\"value-component\"\n        (mouseenter)=\"mouseEnter()\"\n        (mouseleave)=\"mouseLeave()\"\n        [ngClass]='backgroundColor'>\n        <span [ngSwitch]=\"valueTypeOrClass\">\n            <!-- display value is cast as 'any' because the compiler cannot infer the value type expected by the child component -->\n            <dsp-text-value-as-string class=\"parent-value-component\" #displayVal *ngSwitchCase=\"'ReadTextValueAsString'\" [mode]=\"mode\" [displayValue]=\"$any(displayValue)\"></dsp-text-value-as-string>\n            <dsp-text-value-as-html class=\"parent-value-component\" #displayVal *ngSwitchCase=\"'ReadTextValueAsHtml'\" [mode]=\"mode\" [displayValue]=\"$any(displayValue)\"></dsp-text-value-as-html>\n            <dsp-text-value-as-xml class=\"parent-value-component\" #displayVal *ngSwitchCase=\"'ReadTextValueAsXml'\" [mode]=\"mode\" [displayValue]=\"$any(displayValue)\"\n                                   (internalLinkClicked)=\"standoffLinkClicked($event)\" (internalLinkHovered)=\"standoffLinkHovered($event)\"></dsp-text-value-as-xml>\n            <dsp-int-value class=\"parent-value-component\" #displayVal *ngSwitchCase=\"constants.IntValue\" [mode]=\"mode\" [displayValue]=\"$any(displayValue)\"></dsp-int-value>\n            <dsp-boolean-value class=\"parent-value-component\" #displayVal *ngSwitchCase=\"constants.BooleanValue\" [mode]=\"mode\" [displayValue]=\"$any(displayValue)\"></dsp-boolean-value>\n            <dsp-uri-value class=\"parent-value-component\" #displayVal *ngSwitchCase=\"constants.UriValue\" [mode]=\"mode\" [displayValue]=\"$any(displayValue)\"></dsp-uri-value>\n            <dsp-decimal-value class=\"parent-value-component\" #displayVal *ngSwitchCase=\"constants.DecimalValue\" [mode]=\"mode\" [displayValue]=\"$any(displayValue)\"></dsp-decimal-value>\n            <dsp-color-value class=\"parent-value-component\" #displayVal *ngSwitchCase=\"constants.ColorValue\" [mode]=\"mode\" [displayValue]=\"$any(displayValue)\"></dsp-color-value>\n            <dsp-interval-value class=\"parent-value-component\" #displayVal *ngSwitchCase=\"constants.IntervalValue\" [mode]=\"mode\" [displayValue]=\"$any(displayValue)\"></dsp-interval-value>\n            <dsp-time-value class=\"parent-value-component\" #displayVal *ngSwitchCase=\"constants.TimeValue\" [mode]=\"mode\" [displayValue]=\"$any(displayValue)\"></dsp-time-value>\n            <dsp-geoname-value class=\"parent-value-component\" #displayVal *ngSwitchCase=\"constants.GeonameValue\" [mode]=\"mode\" [displayValue]=\"$any(displayValue)\"></dsp-geoname-value>\n            <dsp-link-value class=\"parent-value-component\" #displayVal *ngSwitchCase=\"constants.LinkValue\" [mode]=\"mode\" [displayValue]=\"$any(displayValue)\"\n                        [parentResource]=\"parentResource\" [propIri]=\"displayValue.property\" (referredResourceClicked)=\"referredResourceClicked.emit($event)\" (referredResourceHovered)=\"referredResourceHovered.emit($event)\"></dsp-link-value>\n            <dsp-date-value class=\"parent-value-component\" #displayVal *ngSwitchCase=\"constants.DateValue\" [mode]=\"mode\" [displayValue]=\"$any(displayValue)\" [displayOptions]=\"dateDisplayOptions\" [labels]=\"showDateLabels\" [ontologyDateFormat]=\"dateFormat\"></dsp-date-value>\n            <dsp-list-value class=\"parent-value-component\" #displayVal *ngSwitchCase=\"constants.ListValue\" [mode]=\"mode\" [displayValue]=\"$any(displayValue)\"\n                        [propertyDef]=\"$any(parentResource.entityInfo.properties[displayValue.property])\"></dsp-list-value>\n            <span *ngSwitchDefault>{{displayValue.strval}}</span>\n        </span>\n        <div class=\"action-bubble\" *ngIf=\"showActionBubble && !editModeActive\" [@simpleFadeAnimation]=\"'in'\">\n            <div class=\"button-container\">\n                <button mat-button\n                        class=\"edit\"\n                        [matTooltip]=\"'edit'\"\n                        *ngIf=\"!readOnlyValue && canModify && !editModeActive\"\n                        (click)=\"activateEditMode()\">\n                    <mat-icon>edit</mat-icon>\n                </button>\n                <button mat-button\n                        class=\"info\"\n                        matTooltip=\"{{getTooltipText()}}\"\n                        matTooltipClass=\"info-tooltip\">\n                        <mat-icon>info</mat-icon>\n                </button>\n                <button mat-button\n                        class=\"comment-toggle\"\n                        title=\"toggle comment\"\n                        *ngIf=\"shouldShowCommentToggle\"\n                        (click)=\"toggleComment()\">\n                    <mat-icon>comment</mat-icon>\n                </button>\n                <span [matTooltip]=\"(canDelete ? 'delete' : 'This value cannot be deleted because at least one value is required')\">\n                    <button mat-button\n                        class=\"delete\"\n                        *ngIf=\"!readOnlyValue && canModify && !editModeActive\"\n                        [disabled]=\"!canDelete\"\n                        (click)=\"openDialog()\">\n                        <mat-icon>delete</mat-icon>\n                    </button>\n                </span>\n            </div>\n        </div>\n    </div>\n    <div class=\"crud-buttons\" *ngIf=\"!readOnlyValue\">\n        <button class=\"save\"\n                title=\"save\"\n                *ngIf=\"editModeActive\"\n                [disabled]=\"!displayValueComponent.form.valid\"\n                (click)=\"saveEditValue()\">\n                <mat-icon>save</mat-icon>\n        </button>\n        <button class=\"cancel\"\n                title=\"cancel\"\n                *ngIf=\"editModeActive\"\n                (click)=\"cancelEditValue()\">\n                <mat-icon>undo</mat-icon>\n        </button>\n    </div>\n</div>\n","styles":["@charset \"UTF-8\";@media (max-width:576px){.desktop-only{display:none!important}}.read-mode-view{font:400 15px/24px sans-serif}.read-mode-view .rm-comment,.read-mode-view .rm-value{display:block;margin:0}.child-value-component,.value-component-comment{display:block}.parent-component-wrapper .value-component-comment{margin-top:-2em}.parent-value-component .child-value-component .mat-form-field-wrapper .mat-form-field-infix{border-top:0 solid transparent}.child-input-component{display:inline-block;vertical-align:bottom;width:49%}.child-input-component:nth-child(2){padding-left:2%}.child-input-component.full-width{width:100%}.custom-error-message{font-size:12px;margin-top:-1em;padding-bottom:1em}.grid-container{display:grid;grid-template-columns:70% 30%;grid-template-rows:auto auto}.crud-buttons,.value-component{vertical-align:top}.value-component{grid-row-start:1;grid-row-end:auto;grid-column-start:1;grid-column-end:2;position:relative}.value-component .action-bubble{position:absolute;right:0;top:-20px;border:1px solid #e4e4e4;border-radius:10px;padding:0 1px;background-color:#e4e4e4;z-index:2;box-shadow:1px 4px 5px 0 #949494}.value-component .action-bubble .button-container button.mat-button-disabled .mat-icon{color:#aaa}.value-component .action-bubble .button-container button{cursor:pointer;border:none;padding:2px;outline:none;background-color:transparent;color:#000;margin:0 2px;border-radius:10px;transition:background-color .5s ease-out;min-width:inherit;line-height:normal}.value-component .action-bubble .button-container button .material-icons{font-size:18px}.value-component .action-bubble .button-container button .mat-icon{width:18px;height:18px;vertical-align:middle}.value-component .action-bubble .button-container button.info{cursor:default}.value-component .action-bubble .button-container button:hover{background-color:#c7c7c7}.value-component.highlighted{background-color:#f5f5f5}.crud-buttons{grid-column-start:2;grid-column-end:3}.crud-buttons,.mat-error{grid-row-start:1;grid-row-end:auto}.mat-error{grid-column-start:3;grid-column-end:end}button.cancel,button.save{cursor:pointer;border:none;padding:0;margin-left:1em;outline:none;background-color:transparent;color:#000}button.save:disabled{color:#adadad;cursor:default}button.cancel .mat-icon,button.cancel .material-icons,button.save .mat-icon,button.save .material-icons{font-size:18px}.deletion-dialog .title{font-weight:700;font-size:18px;text-align:center}.deletion-dialog .action-buttons{float:right}.deletion-dialog .action-buttons .cancel{padding:0 16px}.deletion-dialog-message{font-size:16px;background-color:#ededf5;border:1px solid #d8d8df;border-radius:5px;padding:20px 10px;text-align:center}.deletion-dialog-message .deletion-comment{min-width:80%}.ck-content code{font-family:monospace!important}.ck-content pre{background-color:inherit!important}code,pre{font-family:monospace!important;background-color:hsla(0,0%,78%,.3);padding:.15em;border-radius:2px}"]}]}],"members":{"displayValueComponent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":67,"character":5},"arguments":["displayVal"]}]}],"displayValue":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":69,"character":5}}]}],"propArray":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":71,"character":5}}]}],"parentResource":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":73,"character":5}}]}],"configuration":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":75,"character":5}}]}],"canDelete":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":77,"character":5}}]}],"referredResourceClicked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":79,"character":5}}]}],"referredResourceHovered":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":81,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":115,"character":9},"arguments":[{"__symbolic":"reference","name":"DspApiConnectionToken"}]}],null,null,null,null],"parameters":[{"__symbolic":"reference","module":"@dasch-swiss/dsp-js","name":"KnoraApiConnection","line":115,"character":66},{"__symbolic":"reference","name":"ValueOperationEventService"},{"__symbolic":"reference","module":"@angular/material/dialog","name":"MatDialog","line":117,"character":25},{"__symbolic":"reference","name":"UserService"},{"__symbolic":"reference","name":"ValueService"}]}],"ngOnInit":[{"__symbolic":"method"}],"getTooltipText":[{"__symbolic":"method"}],"_getStandoffLinkValueForResource":[{"__symbolic":"method"}],"standoffLinkClicked":[{"__symbolic":"method"}],"standoffLinkHovered":[{"__symbolic":"method"}],"activateEditMode":[{"__symbolic":"method"}],"saveEditValue":[{"__symbolic":"method"}],"openDialog":[{"__symbolic":"method"}],"deleteValue":[{"__symbolic":"method"}],"cancelEditValue":[{"__symbolic":"method"}],"toggleComment":[{"__symbolic":"method"}],"checkCommentToggleVisibility":[{"__symbolic":"method"}],"mouseEnter":[{"__symbolic":"method"}],"mouseLeave":[{"__symbolic":"method"}]}},"AddValueComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":24,"character":1},"arguments":[{"selector":"dsp-add-value","template":"<div class=\"grid-container\">\n    <div class=\"value-component\">\n        <span [ngSwitch]=\"resourcePropertyDefinition.objectType\">\n            <dsp-text-value-as-string #createVal *ngSwitchCase=\"'ReadTextValueAsString'\" [mode]=\"mode\"></dsp-text-value-as-string>\n            <dsp-text-value-as-html #createVal *ngSwitchCase=\"'ReadTextValueAsHtml'\" [mode]=\"mode\"></dsp-text-value-as-html>\n            <dsp-text-value-as-xml #createVal *ngSwitchCase=\"'ReadTextValueAsXml'\" [mode]=\"mode\"></dsp-text-value-as-xml>\n            <dsp-int-value #createVal *ngSwitchCase=\"constants.IntValue\" [mode]=\"mode\"></dsp-int-value>\n            <dsp-boolean-value #createVal *ngSwitchCase=\"constants.BooleanValue\" [mode]=\"mode\"></dsp-boolean-value>\n            <dsp-uri-value #createVal *ngSwitchCase=\"constants.UriValue\" [mode]=\"mode\"></dsp-uri-value>\n            <dsp-decimal-value #createVal *ngSwitchCase=\"constants.DecimalValue\" [mode]=\"mode\"></dsp-decimal-value>\n            <dsp-color-value #createVal *ngSwitchCase=\"constants.ColorValue\" [mode]=\"mode\"></dsp-color-value>\n            <dsp-interval-value #createVal *ngSwitchCase=\"constants.IntervalValue\" [mode]=\"mode\"></dsp-interval-value>\n            <dsp-time-value #createVal *ngSwitchCase=\"constants.TimeValue\" [mode]=\"mode\"></dsp-time-value>\n            <dsp-geoname-value #createVal *ngSwitchCase=\"constants.GeonameValue\" [mode]=\"mode\"></dsp-geoname-value>\n            <dsp-link-value #createVal *ngSwitchCase=\"constants.LinkValue\" [mode]=\"mode\"\n                        [parentResource]=\"parentResource\" [propIri]=\"resourcePropertyDefinition.id\"></dsp-link-value>\n            <dsp-date-value #createVal *ngSwitchCase=\"constants.DateValue\" [mode]=\"mode\"></dsp-date-value>\n            <dsp-list-value #createVal *ngSwitchCase=\"constants.ListValue\" [mode]=\"mode\"\n                        [propertyDef]=\"resourcePropertyDefinition\"></dsp-list-value>\n        </span>\n    </div>\n    <div class=\"crud-buttons\">\n        <button class=\"save\"\n                *ngIf=\"createModeActive\"\n                (click)=\"saveAddValue()\"\n                title=\"save\"\n                [disabled]='!createValueComponent.form.valid'>\n            <mat-icon>save</mat-icon>\n        </button>\n        <button class=\"cancel\"\n                *ngIf=\"createModeActive\"\n                (click)=\"cancelAddValue()\"\n                title=\"cancel\">\n            <mat-icon>cancel</mat-icon>\n        </button>\n        <dsp-progress-indicator *ngIf=\"submittingValue\" [status]=\"progressIndicatorStatus\" [color]=\"progressIndicatorColor\"></dsp-progress-indicator>\n    </div>\n</div>\n","styles":["@charset \"UTF-8\";@media (max-width:576px){.desktop-only{display:none!important}}.read-mode-view{font:400 15px/24px sans-serif}.read-mode-view .rm-comment,.read-mode-view .rm-value{display:block;margin:0}.child-value-component,.value-component-comment{display:block}.parent-component-wrapper .value-component-comment{margin-top:-2em}.parent-value-component .child-value-component .mat-form-field-wrapper .mat-form-field-infix{border-top:0 solid transparent}.child-input-component{display:inline-block;vertical-align:bottom;width:49%}.child-input-component:nth-child(2){padding-left:2%}.child-input-component.full-width{width:100%}.custom-error-message{font-size:12px;margin-top:-1em;padding-bottom:1em}.grid-container{display:grid;grid-template-columns:70% 30%;grid-template-rows:auto auto}.crud-buttons,.value-component{vertical-align:top}.value-component{grid-row-start:1;grid-row-end:auto;grid-column-start:1;grid-column-end:2;position:relative}.value-component .action-bubble{position:absolute;right:0;top:-20px;border:1px solid #e4e4e4;border-radius:10px;padding:0 1px;background-color:#e4e4e4;z-index:2;box-shadow:1px 4px 5px 0 #949494}.value-component .action-bubble .button-container button.mat-button-disabled .mat-icon{color:#aaa}.value-component .action-bubble .button-container button{cursor:pointer;border:none;padding:2px;outline:none;background-color:transparent;color:#000;margin:0 2px;border-radius:10px;transition:background-color .5s ease-out;min-width:inherit;line-height:normal}.value-component .action-bubble .button-container button .material-icons{font-size:18px}.value-component .action-bubble .button-container button .mat-icon{width:18px;height:18px;vertical-align:middle}.value-component .action-bubble .button-container button.info{cursor:default}.value-component .action-bubble .button-container button:hover{background-color:#c7c7c7}.value-component.highlighted{background-color:#f5f5f5}.crud-buttons{grid-column-start:2;grid-column-end:3}.crud-buttons,.mat-error{grid-row-start:1;grid-row-end:auto}.mat-error{grid-column-start:3;grid-column-end:end}button.cancel,button.save{cursor:pointer;border:none;padding:0;margin-left:1em;outline:none;background-color:transparent;color:#000}button.save:disabled{color:#adadad;cursor:default}button.cancel .mat-icon,button.cancel .material-icons,button.save .mat-icon,button.save .material-icons{font-size:18px}.deletion-dialog .title{font-weight:700;font-size:18px;text-align:center}.deletion-dialog .action-buttons{float:right}.deletion-dialog .action-buttons .cancel{padding:0 16px}.deletion-dialog-message{font-size:16px;background-color:#ededf5;border:1px solid #d8d8df;border-radius:5px;padding:20px 10px;text-align:center}.deletion-dialog-message .deletion-comment{min-width:80%}.ck-content code{font-family:monospace!important}.ck-content pre{background-color:inherit!important}code,pre{font-family:monospace!important;background-color:hsla(0,0%,78%,.3);padding:.15em;border-radius:2px}"]}]}],"members":{"createValueComponent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":31,"character":5},"arguments":["createVal"]}]}],"resourcePropertyDefinition":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":33,"character":5}}]}],"parentResource":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":35,"character":5}}]}],"configuration":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":37,"character":5}}]}],"operationCancelled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":39,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":55,"character":9},"arguments":[{"__symbolic":"reference","name":"DspApiConnectionToken"}]}],null,null],"parameters":[{"__symbolic":"reference","module":"@dasch-swiss/dsp-js","name":"KnoraApiConnection","line":55,"character":66},{"__symbolic":"reference","name":"ValueOperationEventService"},{"__symbolic":"reference","name":"ValueService"}]}],"ngOnInit":[{"__symbolic":"method"}],"ngAfterViewInit":[{"__symbolic":"method"}],"saveAddValue":[{"__symbolic":"method"}],"cancelAddValue":[{"__symbolic":"method"}]}},"PropertyInfoValues":{"__symbolic":"interface"},"ResourceViewComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":45,"character":1},"arguments":[{"selector":"dsp-resource-view","providers":[{"__symbolic":"reference","name":"ValueOperationEventService"}],"template":"<div class=\"resource-view\" *ngIf=\"resource\">\n\n    <!-- dsp-resource-representation -->\n    <div class=\"center\">\n        <dsp-still-image *ngIf=\"stillImageRepresentations.length\" [images]=\"stillImageRepresentations\">\n        </dsp-still-image>\n        <!-- TODO: here we'll add more viewers and players dsp-moving-image, dsp-audio etc. -->\n        <mat-divider></mat-divider>\n    </div>\n\n    <!-- dsp-property-toolbar with action buttons and project information -->\n    <dsp-property-toolbar *ngIf=\"showToolbar\"\n        [resource]=\"resource\"\n        [showAllProps]=\"showAllProps\"\n        (toggleProps)=\"toggleProps($event)\"\n        (referredProjectHovered)=\"referredProjectHovered.emit($event)\"\n        (referredProjectClicked)=\"referredProjectClicked.emit($event)\">\n    </dsp-property-toolbar>\n\n    <!-- dsp-property-view -->\n    <dsp-property-view *ngIf=\"resPropInfoVals.length !== 0 || systemPropDefs.length !== 0; else noProperty\"\n        [parentResource]=\"resource\"\n                       [propArray]=\"resPropInfoVals\"\n                       [systemPropArray]=\"systemPropDefs\"\n                       [showAllProps]=\"showAllProps\"\n                       (referredResourceClicked)=\"referredResourceClicked.emit($event)\"\n                       (referredResourceHovered)=\"referredResourceHovered.emit($event)\">\n    </dsp-property-view>\n\n    <ng-template #noProperty>The resource {{resource?.resourceClassLabel}} has no defined properties.</ng-template>\n\n</div>\n\n<!-- progress indicator -->\n<dsp-progress-indicator *ngIf=\"!resource\"></dsp-progress-indicator>\n","styles":[""]}]}],"members":{"iri":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":58,"character":5}}]}],"showAllProps":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":65,"character":5}}]}],"showToolbar":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":72,"character":5}}]}],"openProject":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":78,"character":5}}]}],"referredProjectClicked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":84,"character":5}}]}],"referredProjectHovered":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":90,"character":5}}]}],"referredResourceClicked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":96,"character":5}}]}],"referredResourceHovered":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":102,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":115,"character":9},"arguments":[{"__symbolic":"reference","name":"DspApiConnectionToken"}]}],null,null,null],"parameters":[{"__symbolic":"reference","module":"@dasch-swiss/dsp-js","name":"KnoraApiConnection","line":115,"character":66},{"__symbolic":"reference","name":"NotificationService"},{"__symbolic":"reference","name":"ValueOperationEventService"},{"__symbolic":"reference","name":"ValueService"}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"getResource":[{"__symbolic":"method"}],"addValueToResource":[{"__symbolic":"method"}],"updateValueInResource":[{"__symbolic":"method"}],"deleteValueFromResource":[{"__symbolic":"method"}],"_updateStandoffLinkValue":[{"__symbolic":"method"}],"toggleProps":[{"__symbolic":"method"}]}},"PropertyViewComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":22,"character":1},"arguments":[{"selector":"dsp-property-view","template":"<!-- properties -->\n<div class=\"properties-container\">\n    <div class=\"properties\">\n\n        <!-- list of properties -->\n        <div *ngFor=\"let prop of propArray; let last = last\">\n            <!-- show property; all in case of showAll === true or only the ones with prop.values -->\n            <div *ngIf=\"!prop.propDef['isLinkProperty'] && showAllProps || ( prop.values && prop.values.length > 0 )\"\n                [class.border-bottom]=\"prop.values && !last\"\n                class=\"property\">\n                <div class=\"property-label\">\n                    <!-- label of the property -->\n                    <h3 class=\"label mat-subheading-1\"\n                        [class.label-info]=\"prop.propDef.comment\"\n                        [matTooltip]=\"prop.propDef.comment\"\n                        matTooltipPosition=\"above\">\n                        {{prop.propDef.label}}\n                    </h3>\n                </div>\n                <div class=\"property-value\">\n                    <!-- the value(s) of the property -->\n                    <div *ngFor=\"let val of prop.values\">\n                        <dsp-display-edit *ngIf=\"val\"\n                            #displayEdit\n                            [parentResource]=\"parentResource\"\n                            [displayValue]=\"val\"\n                            [propArray]=\"propArray\"\n                            [canDelete]=\"deleteValueIsAllowed(prop)\"\n                            (referredResourceClicked)=\"referredResourceClicked.emit($event)\"\n                            (referredResourceHovered)=\"referredResourceHovered.emit($event)\">\n                        </dsp-display-edit>\n                    </div>\n                    <!-- Add value form -->\n                    <div *ngIf=\"addValueFormIsVisible && propID === prop.propDef.id\">\n                        <dsp-add-value #addValue\n                            class=\"add-value\"\n                            [parentResource]=\"parentResource\"\n                            [resourcePropertyDefinition]=\"$any(parentResource.entityInfo.properties[prop.propDef.id])\"\n                            (operationCancelled)=\"hideAddValueForm()\">\n                        </dsp-add-value>\n                    </div>\n                    <!-- Add button -->\n                    <div *ngIf=\"addValueIsAllowed(prop)\">\n                        <button class=\"create\"\n                            (click)=\"showAddValueForm(prop)\"\n                            title=\"Add a new value\">\n                            <mat-icon>add_box</mat-icon>\n                        </button>\n                    </div>\n                </div>\n            </div>\n        </div>\n    </div>\n</div>\n","styles":[".border-bottom{border-bottom:1px solid rgba(33,33,33,.1)}.create,.info{cursor:pointer;border:none;padding:0;outline:none;background-color:transparent;color:#000}.create .material-icons,.info .material-icons{font-size:18px}.create .mat-icon,.info .mat-icon{width:18px;height:18px}.properties-container{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}.properties-container .incoming,.properties-container .properties{margin-top:16px}.properties-container .properties{grid-column:1/span 6}.properties-container .properties .property{grid-row:1/1;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.properties-container .properties .property .property-label,.properties-container .properties .property .property-value{padding:2px;overflow-wrap:break-word}.properties-container .properties .property .property-label{grid-column:1/span 1}.properties-container .properties .property .property-label .label{text-align:right}.properties-container .properties .property .property-label .label-info{cursor:help}.properties-container .properties .property .property-value{grid-column:2/span 3}.properties-container .incoming{grid-column:5/span 2;display:grid;gap:16px;grid-template-columns:1fr 1fr;grid-template-rows:repeat(6,minmax(60px,auto))}.properties-container .incoming .annotations,.properties-container .incoming .links{padding:16px;grid-column:1/span 2;border-radius:6px}.properties-container .incoming .annotations ul,.properties-container .incoming .links ul{-webkit-padding-start:5px;padding-inline-start:5px;list-style-type:none}.properties-container .incoming .annotations ul li,.properties-container .incoming .links ul li{margin-bottom:10px;text-indent:-8px}.properties-container .incoming .annotations ul li:before,.properties-container .incoming .links ul li:before{content:\"- \"}.properties-container .incoming .annotations{background:rgba(245,222,179,.39)}.properties-container .incoming .links{background:rgba(222,184,135,.39)}.label{color:rgba(0,0,0,.54)}@media screen and (max-width:768px){.incoming,.properties{grid-column:1/span 6!important;gap:0!important}.incoming .property,.properties .property{gap:0!important}.incoming .annotations,.incoming .links,.incoming .property-label,.incoming .property-value,.properties .annotations,.properties .links,.properties .property-label,.properties .property-value{grid-column:1/span 4!important}h3.label{text-align:left!important;margin:16px 0 0!important}}"]}]}],"members":{"displayEditComponent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":29,"character":5},"arguments":["displayEdit"]}]}],"addValueComponent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":30,"character":5},"arguments":["addValue"]}]}],"parentResource":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":36,"character":5}}]}],"propArray":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":43,"character":5}}]}],"systemPropArray":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":50,"character":5}}]}],"showAllProps":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":57,"character":5}}]}],"referredResourceClicked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":59,"character":5}}]}],"referredResourceHovered":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":61,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ValueOperationEventService"}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"showAddValueForm":[{"__symbolic":"method"}],"hideAddValueForm":[{"__symbolic":"method"}],"addValueIsAllowed":[{"__symbolic":"method"}],"deleteValueIsAllowed":[{"__symbolic":"method"}]}},"SearchParams":{"__symbolic":"interface"},"ShortResInfo":{"__symbolic":"interface"},"FilteredResources":{"__symbolic":"interface"},"CheckboxUpdate":{"__symbolic":"interface"},"ListViewComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":54,"character":1},"arguments":[{"selector":"dsp-list-view","template":"<!-- header / toolbar to select view and pagination -->\n<div class=\"list-view-header\">\n    <span *ngIf=\"displayViewSwitch\" class=\"switch-list\">\n        <span class=\"switch-list-label\">Display as&nbsp;</span>\n        <button mat-button (click)=\"toggleView('list')\" [class.active]=\"view === 'list'\">\n            <mat-icon>view_list</mat-icon> List\n        </button>\n        <button mat-button (click)=\"toggleView('grid')\" [class.active]=\"view === 'grid'\">\n            <mat-icon>view_module</mat-icon> Grid\n        </button>\n        <!-- TODO: add button to show as table, if possible (filter by same resource class) -->\n    </span>\n    <span class=\"fill-remaining-space\"></span>\n    <span class=\"page-navigation\" *ngIf=\"!loading && (numberOfAllResults > 0 && resources?.resources.length)\">\n        <mat-paginator [length]=\"numberOfAllResults\" [pageSize]=\"25\" [hidePageSize]=\"true\"\n            [pageIndex]=\"pageEvent.pageIndex\" [disabled]=\"loading\" (page)=\"goToPage($event)\">\n        </mat-paginator>\n    </span>\n</div>\n\n<!-- container with search results -->\n<div class=\"list-view-container\">\n    <dsp-progress-indicator *ngIf=\"loading\"></dsp-progress-indicator>\n\n    <!-- When multiple resources are selected for comparision -->\n    <div class=\"list-view\" *ngIf=\"!loading && (numberOfAllResults > 0 && resources)\">\n        <div [ngSwitch]=\"view\">\n            <dsp-resource-list\n                *ngSwitchCase=\"'list'\"\n                [withMultipleSelection]=\"true\"\n                [resources]=\"resources\"\n                [selectedResourceIdx]=\"selectedResourceIdx\"\n                (resourcesSelected)=\"emitSelectedResources($event)\">\n            </dsp-resource-list>\n            <dsp-resource-grid\n                *ngSwitchCase=\"'grid'\"\n                [withMultipleSelection]=\"true\"\n                [resources]=\"resources\"\n                [selectedResourceIdx]=\"selectedResourceIdx\"\n                (resourcesSelected)=\"emitSelectedResources($event)\">\n            </dsp-resource-grid>\n            <!-- TODO: implement table view -->\n            <!-- <kui-table-view *ngSwitchCase=\"'table'\" [resources]=\"resources\"></kui-table-view> -->\n        </div>\n    </div>\n\n    <!-- In case of 0 result -->\n    <div class=\"list-view no-results\" *ngIf=\"!loading && (numberOfAllResults >= 0 && !resources?.resources.length)\">\n        <p>Your search <span *ngIf=\"search.mode === 'fulltext'\">- <strong> {{search.query}}</strong> -</span> did not match any documents.</p>\n        <p>Suggestions:</p>\n        <ul>\n            <li *ngIf=\"numberOfAllResults > 0\">Make sure that you are logged in and you have all the needed permissions.</li>\n            <li>Make sure that all words are spelled correctly.</li>\n            <li>Try different keywords.</li>\n            <li>Try more general keywords.</li>\n            <li>Try fewer keywords.</li>\n        </ul>\n    </div>\n\n</div>\n\n<!-- footer with pagination -->\n<div class=\"list-view-footer\" *ngIf=\"numberOfAllResults > 25 && resources?.resources.length === 25 && !loading\">\n    <span class=\"fill-remaining-space\"></span>\n    <span class=\"page-navigation\">\n        <mat-paginator [length]=\"numberOfAllResults\" [pageSize]=\"25\" [hidePageSize]=\"true\"\n            [pageIndex]=\"pageEvent.pageIndex\" [disabled]=\"loading\" (page)=\"goToPage($event)\">\n        </mat-paginator>\n    </span>\n</div>\n","styles":[".list-view-footer,.list-view-header{display:flex;box-sizing:border-box;flex-direction:row;align-items:center;white-space:nowrap;padding:0 16px;height:58px;width:100%;z-index:1;background:#f9f9f9}.list-view-footer mat-paginator,.list-view-header mat-paginator{background:none}.list-view-header{border-bottom:1px solid rgba(0,0,0,.12);position:sticky!important;top:0}.list-view-header .switch-view-label{margin-right:16px}button.active{background-color:rgba(11,11,11,.12)}.no-results{margin:64px}.link:hover{background-color:rgba(11,11,11,.12)}::ng-deep .selected-resource{background-color:rgba(11,11,11,.2)}"]}]}],"members":{"search":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":61,"character":5}}]}],"view":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":63,"character":5}}]}],"displayViewSwitch":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":65,"character":5}}]}],"withMultipleSelection":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":70,"character":5}}]}],"selectedResources":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":75,"character":5}}]}],"multipleResourcesSelected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":84,"character":5}}]}],"singleResourceSelected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":93,"character":5}}]}],"resourceSelected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":99,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":117,"character":9},"arguments":[{"__symbolic":"reference","name":"DspApiConnectionToken"}]}],null,null],"parameters":[{"__symbolic":"reference","module":"@dasch-swiss/dsp-js","name":"KnoraApiConnection","line":117,"character":66},{"__symbolic":"reference","name":"AdvancedSearchParamsService"},{"__symbolic":"reference","name":"NotificationService"}]}],"ngOnChanges":[{"__symbolic":"method"}],"toggleView":[{"__symbolic":"method"}],"emitSelectedResources":[{"__symbolic":"method"}],"goToPage":[{"__symbolic":"method"}],"_doSearch":[{"__symbolic":"method"}]}},"ResourceListComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":6,"character":1},"arguments":[{"selector":"dsp-resource-list","template":"<!-- When withMultipleSelection is false and user can select only one resource at a time to view -->\n<mat-list class=\"resource-list\">\n    <div class=\"link\"\n        [class.selected-resource]=\"selectedResourceIdx.indexOf(i) > -1\"\n        [class.border-bottom]=\"!last\"\n        *ngFor=\"let resource of resources.resources; let i = index; let last = last\">\n        <mat-list-item>\n            <mat-icon matListIcon>image_search</mat-icon>\n            <div matLine (click)=\"selectResource({ checked: true, resIndex: i, resId: resource.id, resLabel: resource.label, isCheckbox: false })\">\n                <p matLine class=\"res-class-label\">\n                    {{ resource.entityInfo.classes[resource.type].label }}\n                </p>\n                <h3 matLine class=\"res-class-value\">{{ resource.label }}</h3>\n                <div matLine *ngFor=\"let prop of resource.properties | keyvalue\">\n                    <div matLine *ngFor=\"let val of prop.value\">\n                        <span class=\"res-prop-label\">\n                            {{ resource.entityInfo.properties[val.property].label }}\n                        </span>\n\n                        <div class=\"res-prop-value\">\n                            {{ val.strval | dspTruncate: 256:\"...\" }}\n                        </div>\n                    </div>\n                </div>\n            </div>\n            <!-- if withMultipleSelection is true, we display checkbox -->\n            <mat-checkbox #ckbox\n                *ngIf=\"withMultipleSelection\"\n                id=\"{{ i }}\"\n                (change)=\"selectResource({ checked: $event.checked, resIndex: i, resId: resource.id, resLabel: resource.label, isCheckbox: true })\"\n                class=\"res-checkbox\">\n            </mat-checkbox>\n        </mat-list-item>\n    </div>\n</mat-list>\n","styles":["@charset \"UTF-8\";@media (max-width:576px){.desktop-only{display:none!important}}.read-mode-view{font:400 15px/24px sans-serif}.read-mode-view .rm-comment,.read-mode-view .rm-value{display:block;margin:0}.child-value-component,.value-component-comment{display:block}.parent-component-wrapper .value-component-comment{margin-top:-2em}.parent-value-component .child-value-component .mat-form-field-wrapper .mat-form-field-infix{border-top:0 solid transparent}.child-input-component{display:inline-block;vertical-align:bottom;width:49%}.child-input-component:nth-child(2){padding-left:2%}.child-input-component.full-width{width:100%}.custom-error-message{font-size:12px;margin-top:-1em;padding-bottom:1em}.grid-container{display:grid;grid-template-columns:70% 30%;grid-template-rows:auto auto}.crud-buttons,.value-component{vertical-align:top}.value-component{grid-row-start:1;grid-row-end:auto;grid-column-start:1;grid-column-end:2;position:relative}.value-component .action-bubble{position:absolute;right:0;top:-20px;border:1px solid #e4e4e4;border-radius:10px;padding:0 1px;background-color:#e4e4e4;z-index:2;box-shadow:1px 4px 5px 0 #949494}.value-component .action-bubble .button-container button.mat-button-disabled .mat-icon{color:#aaa}.value-component .action-bubble .button-container button{cursor:pointer;border:none;padding:2px;outline:none;background-color:transparent;color:#000;margin:0 2px;border-radius:10px;transition:background-color .5s ease-out;min-width:inherit;line-height:normal}.value-component .action-bubble .button-container button .material-icons{font-size:18px}.value-component .action-bubble .button-container button .mat-icon{width:18px;height:18px;vertical-align:middle}.value-component .action-bubble .button-container button.info{cursor:default}.value-component .action-bubble .button-container button:hover{background-color:#c7c7c7}.value-component.highlighted{background-color:#f5f5f5}.crud-buttons{grid-column-start:2;grid-column-end:3}.crud-buttons,.mat-error{grid-row-start:1;grid-row-end:auto}.mat-error{grid-column-start:3;grid-column-end:end}button.cancel,button.save{cursor:pointer;border:none;padding:0;margin-left:1em;outline:none;background-color:transparent;color:#000}button.save:disabled{color:#adadad;cursor:default}button.cancel .mat-icon,button.cancel .material-icons,button.save .mat-icon,button.save .material-icons{font-size:18px}.deletion-dialog .title{font-weight:700;font-size:18px;text-align:center}.deletion-dialog .action-buttons{float:right}.deletion-dialog .action-buttons .cancel{padding:0 16px}.deletion-dialog-message{font-size:16px;background-color:#ededf5;border:1px solid #d8d8df;border-radius:5px;padding:20px 10px;text-align:center}.deletion-dialog-message .deletion-comment{min-width:80%}.ck-content code{font-family:monospace!important}.ck-content pre{background-color:inherit!important}code,pre{font-family:monospace!important;background-color:hsla(0,0%,78%,.3);padding:.15em;border-radius:2px}.resource-list .mat-list-item{height:auto;min-height:40px;padding:8px 0}.resource-list .mat-list-item.border-bottom{border-bottom:1px solid rgba(0,0,0,.12)}.resource-list .mat-list-item .mat-line{white-space:normal!important}.res-checkbox{margin:0 15px}.res-prop-value{text-align:justify}.res-class-label,.res-prop-label{color:rgba(0,0,0,.54)}.res-class-label,.res-class-value{margin:4px 0}.res-class-label{font-size:14px!important}.res-class-value{font-weight:700!important;font-size:16px!important;line-height:1.5}.res-prop-label{font-style:italic}"]}]}],"members":{"resChecks":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChildren","line":18,"character":5},"arguments":["ckbox"]}]}],"resources":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":25,"character":5}}]}],"selectedResourceIdx":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":30,"character":5}}]}],"withMultipleSelection":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":35,"character":5}}]}],"resourcesSelected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":42,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ɵh"}]}],"ngOnInit":[{"__symbolic":"method"}],"selectResource":[{"__symbolic":"method"}]}},"ResourceGridComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":6,"character":1},"arguments":[{"selector":"dsp-resource-grid","template":"<!-- When withMultipleSelection is false and user can select only one resource at a time to view -->\n<div class=\"resource-grid\">\n    <div class=\"grid-card link\"\n        *ngFor=\"let resource of resources.resources; let i = index;\">\n        <mat-card [class.selected-resource]=\"selectedResourceIdx.indexOf(i) > -1\">\n            <!-- TODO: add the representation preview here, mat-card-image can be used for images -->\n            <mat-card-header class=\"grid-card-header\">\n                <mat-card-title-group class=\"res-class-header-text\" (click)=\"selectResource({ checked: true, resIndex: i, resId: resource.id, resLabel: resource.label, isCheckbox: false})\">\n                    <mat-card-subtitle class=\"res-class-label\">{{ resource.entityInfo.classes[resource.type].label }}</mat-card-subtitle>\n                    <mat-card-title class=\"res-class-value\">{{ resource.label }}</mat-card-title>\n                </mat-card-title-group>\n                <div fxFlex></div>\n                <!-- if withMultipleSelection is true, we display checkbox -->\n                <mat-card-title-group *ngIf=\"withMultipleSelection\" class=\"res-class-header-actions\">\n                    <mat-checkbox #gridCkbox\n                        id=\"{{ i }}\"\n                        (change)=\"selectResource({ checked: $event.checked, resIndex: i, resId: resource.id, resLabel: resource.label, isCheckbox: true})\"\n                        class=\"res-checkbox\">\n                    </mat-checkbox>\n                </mat-card-title-group>\n\n            </mat-card-header>\n            <div (click)=\"selectResource({ checked: true, resIndex: i, resId: resource.id, resLabel: resource.label, isCheckbox: false})\">\n                <mat-card-content class=\"grid-card-content\" *ngFor=\"let prop of resource.properties | keyvalue\">\n                    <div *ngFor=\"let val of prop.value\">\n                        <span class=\"res-prop-label\">\n                            {{ resource.entityInfo.properties[val.property].label }}\n                        </span>\n\n                        <div class=\"res-prop-value\">\n                            {{ val.strval | dspTruncate: 256:\"...\" }}\n                        </div>\n                    </div>\n                </mat-card-content>\n            </div>\n        </mat-card>\n    </div>\n</div>\n","styles":["@charset \"UTF-8\";@media (max-width:576px){.desktop-only{display:none!important}}.read-mode-view{font:400 15px/24px sans-serif}.read-mode-view .rm-comment,.read-mode-view .rm-value{display:block;margin:0}.child-value-component,.value-component-comment{display:block}.parent-component-wrapper .value-component-comment{margin-top:-2em}.parent-value-component .child-value-component .mat-form-field-wrapper .mat-form-field-infix{border-top:0 solid transparent}.child-input-component{display:inline-block;vertical-align:bottom;width:49%}.child-input-component:nth-child(2){padding-left:2%}.child-input-component.full-width{width:100%}.custom-error-message{font-size:12px;margin-top:-1em;padding-bottom:1em}.grid-container{display:grid;grid-template-columns:70% 30%;grid-template-rows:auto auto}.crud-buttons,.value-component{vertical-align:top}.value-component{grid-row-start:1;grid-row-end:auto;grid-column-start:1;grid-column-end:2;position:relative}.value-component .action-bubble{position:absolute;right:0;top:-20px;border:1px solid #e4e4e4;border-radius:10px;padding:0 1px;background-color:#e4e4e4;z-index:2;box-shadow:1px 4px 5px 0 #949494}.value-component .action-bubble .button-container button.mat-button-disabled .mat-icon{color:#aaa}.value-component .action-bubble .button-container button{cursor:pointer;border:none;padding:2px;outline:none;background-color:transparent;color:#000;margin:0 2px;border-radius:10px;transition:background-color .5s ease-out;min-width:inherit;line-height:normal}.value-component .action-bubble .button-container button .material-icons{font-size:18px}.value-component .action-bubble .button-container button .mat-icon{width:18px;height:18px;vertical-align:middle}.value-component .action-bubble .button-container button.info{cursor:default}.value-component .action-bubble .button-container button:hover{background-color:#c7c7c7}.value-component.highlighted{background-color:#f5f5f5}.crud-buttons{grid-column-start:2;grid-column-end:3}.crud-buttons,.mat-error{grid-row-start:1;grid-row-end:auto}.mat-error{grid-column-start:3;grid-column-end:end}button.cancel,button.save{cursor:pointer;border:none;padding:0;margin-left:1em;outline:none;background-color:transparent;color:#000}button.save:disabled{color:#adadad;cursor:default}button.cancel .mat-icon,button.cancel .material-icons,button.save .mat-icon,button.save .material-icons{font-size:18px}.deletion-dialog .title{font-weight:700;font-size:18px;text-align:center}.deletion-dialog .action-buttons{float:right}.deletion-dialog .action-buttons .cancel{padding:0 16px}.deletion-dialog-message{font-size:16px;background-color:#ededf5;border:1px solid #d8d8df;border-radius:5px;padding:20px 10px;text-align:center}.deletion-dialog-message .deletion-comment{min-width:80%}.ck-content code{font-family:monospace!important}.ck-content pre{background-color:inherit!important}code,pre{font-family:monospace!important;background-color:hsla(0,0%,78%,.3);padding:.15em;border-radius:2px}.resource-grid{display:grid;grid-template-columns:repeat(5,1fr);grid-template-rows:auto;grid-auto-rows:1fr;gap:8px 8px;justify-items:stretch;align-items:stretch;align-content:space-evenly;padding:8px 0}.grid-card{height:calc(100% - 32px)}.res-class-header-text{width:90%;float:left}.res-class-header-actions{width:10%;float:right}.res-class-label,.res-prop-label{color:rgba(0,0,0,.54)}.res-class-label{font-size:14px!important}.res-class-value{font-weight:700!important;font-size:16px!important;line-height:1.5}.res-class-label,.res-class-value{margin:4px 0!important}.res-prop-label{font-style:italic}@media (max-width:768px) and (min-width:576px){.resource-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:auto;grid-auto-rows:1fr;gap:4px 4px;justify-items:stretch;align-items:stretch;align-content:space-evenly}}@media (max-width:576px){.resource-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-template-rows:auto;grid-auto-rows:1fr;gap:4px 4px;justify-items:stretch;align-items:stretch;align-content:space-evenly}}"]}]}],"members":{"resChecks":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChildren","line":18,"character":5},"arguments":["gridCkbox"]}]}],"resources":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":25,"character":5}}]}],"selectedResourceIdx":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":30,"character":5}}]}],"withMultipleSelection":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":35,"character":5}}]}],"resourcesSelected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":42,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ɵh"}]}],"selectResource":[{"__symbolic":"method"}]}},"MultipleResourcesViewComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"dsp-multiple-resources-view","template":"<div class=\"content\">\n    <as-split direction=\"vertical\">\n        <as-split-area>\n            <!-- note: This part is repeating twice (not added as component) because angular-split\n                library does not support addition div inside as-split -->\n            <as-split direction=\"horizontal\">\n                <as-split-area *ngFor=\"let res of topRow\">\n                    <dsp-resource-view\n                        [iri]=\"res\"\n                        [showToolbar]=\"true\">\n                    </dsp-resource-view>\n                </as-split-area>\n            </as-split>\n        </as-split-area>\n        <as-split-area *ngIf=\"noOfResources > 3\">\n            <as-split direction=\"horizontal\">\n                <as-split-area *ngFor=\"let res of bottomRow\">\n                    <dsp-resource-view\n                        [iri]=\"res\"\n                        [showToolbar]=\"true\">\n                    </dsp-resource-view>\n                </as-split-area>\n            </as-split>\n        </as-split-area>\n    </as-split>\n</div>","styles":[".content{width:100%;height:1400px}"]}]}],"members":{"noOfResources":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":13,"character":5}}]}],"resourceIds":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":18,"character":5}}]}],"resources":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":23,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnChanges":[{"__symbolic":"method"}]}},"Region":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@dasch-swiss/dsp-js","name":"ReadResource","line":36,"character":41}]}],"getGeometries":[{"__symbolic":"method"}]}},"StillImageRepresentation":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@dasch-swiss/dsp-js","name":"ReadStillImageFileValue","line":59,"character":46},{"__symbolic":"reference","name":"Array","arguments":[{"__symbolic":"reference","name":"Region"}]}]}]}},"GeometryForRegion":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@dasch-swiss/dsp-js","name":"RegionGeometry","line":75,"character":35},{"__symbolic":"reference","module":"@dasch-swiss/dsp-js","name":"ReadResource","line":36,"character":41}]}]}},"StillImageComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":89,"character":1},"arguments":[{"selector":"dsp-still-image","template":"<div class=\"still-image-viewer\">\n    <!--<div class=\"navigation left\">\n        <button mat-button class=\"full-size\" id=\"DSP_OSD_PREV_PAGE\">\n            <mat-icon>keyboard_arrow_left</mat-icon>\n        </button>\n    </div>-->\n\n    <!-- main content with navigation and osd viewer -->\n    <div class=\"content\">\n\n        <!-- openseadragon (osd) viewer -->\n        <div class=\"osd-container\"></div>\n        <!-- /openseadragon (osd) -->\n\n        <!-- footer with image caption e.g. copyright information -->\n        <div class=\"footer\">\n            <p class=\"mat-caption\" [innerHtml]=\"imageCaption\"></p>\n        </div>\n\n        <!-- action panel with tools for image -->\n        <mat-toolbar class=\"action\">\n            <mat-toolbar-row>\n                <!-- home button -->\n                <span>\n                    <button mat-icon-button id=\"DSP_OSD_HOME\">\n                        <mat-icon>aspect_ratio</mat-icon>\n                    </button>\n                </span>\n                <!-- zoom buttons -->\n                <span class=\"fill-remaining-space\"></span>\n                <span>\n                    <button mat-icon-button id=\"DSP_OSD_ZOOM_IN\">\n                        <mat-icon>add</mat-icon>\n                    </button>\n                    <button mat-icon-button id=\"DSP_OSD_ZOOM_OUT\">\n                        <mat-icon>remove</mat-icon>\n                    </button>\n                </span>\n                <!-- window button -->\n                <span class=\"fill-remaining-space\"></span>\n                <span>\n                    <button mat-icon-button id=\"DSP_OSD_FULL_PAGE\">\n                        <mat-icon>fullscreen</mat-icon>\n                    </button>\n                </span>\n            </mat-toolbar-row>\n        </mat-toolbar>\n\n    </div>\n\n    <!--<div class=\"navigation\">\n        <button mat-button class=\"full-size\" id=\"DSP_OSD_NEXT_PAGE\" (click)=\"getCurrentImage()\">\n            <mat-icon>keyboard_arrow_right</mat-icon>\n        </button>\n    </div>-->\n\n</div>\n","styles":[".still-image-viewer{display:inline-flex;width:100%}@media (max-height:636px){.still-image-viewer{height:300px}}.still-image-viewer .navigation{height:calc(400px + 64px + 24px);width:36px}.still-image-viewer .navigation .mat-button.full-size{height:100%!important;width:36px!important;padding:0!important;min-width:36px!important}.still-image-viewer .content{height:calc(400px + 64px + 24px);width:100%}.still-image-viewer .content .osd-container{color:#ccc;background-color:#000;height:400px}.still-image-viewer .content .osd-container.fullscreen{max-width:100vw}.still-image-viewer .content .footer p{color:#ccc;background-color:#000;height:24px;margin:0;padding:0 16px}::ng-deep .roi-svgoverlay{filter:alpha(opacity=40);opacity:.4;fill:transparent;stroke:#00695c;stroke-width:2px;vector-effect:non-scaling-stroke}.roi-svgoverlay:focus,::ng-deep .roi-svgoverlay.active,::ng-deep .roi-svgoverlay:hover{filter:alpha(opacity=100);opacity:1}"]}]}],"members":{"images":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":96,"character":5}}]}],"imageCaption":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":97,"character":5}}]}],"activateRegion":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":98,"character":5}}]}],"regionClicked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":100,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":125,"character":37}]}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"updateImages":[{"__symbolic":"method"}],"updateRegions":[{"__symbolic":"method"}],"_highlightRegion":[{"__symbolic":"method"}],"_unhighlightAllRegions":[{"__symbolic":"method"}],"_removeOverlays":[{"__symbolic":"method"}],"_setupViewer":[{"__symbolic":"method"}],"_openImages":[{"__symbolic":"method"}],"_prepareTileSourcesFromFileValues":[{"__symbolic":"method"}],"_renderRegions":[{"__symbolic":"method"}],"_createSVGOverlay":[{"__symbolic":"method"}],"_addSVGAttributesRectangle":[{"__symbolic":"method"}],"_addSVGAttributesPolygon":[{"__symbolic":"method"}],"_addSVGAttributesCircle":[{"__symbolic":"method"}],"_image2ViewPortCoords":[{"__symbolic":"method"}],"_createSVGPolygonPointsAttribute":[{"__symbolic":"method"}]}},"UploadFileComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":15,"character":1},"arguments":[{"selector":"dsp-upload-file","template":"<div class=\"form-container\">\n    <form [formGroup]=\"form\">\n        <div dspDragDrop\n            *ngIf=\"isLoading || !file\"\n            (click)=\"fileInput.click()\"\n            (fileDropped)=\"addFile($event)\"\n            class=\"dd-container\">\n            <input hidden\n                type=\"file\"\n                (change)=\"addFile($event)\"\n                #fileInput />\n            <mat-icon *ngIf=\"!isLoading\"\n                class=\"upload-icon\">\n                cloud_upload\n            </mat-icon>\n            <dsp-progress-indicator *ngIf=\"isLoading\"></dsp-progress-indicator>\n            <div class=\"title\">{{ fromLabels.upload }}</div>\n            <div class=\"bottom-line\">\n                {{ fromLabels.drag_drop }}\n            </div>\n        </div>\n\n        <ng-container *ngIf=\"!isLoading && file\">\n            <div class=\"thumbnail\">\n                <img src=\"{{ thumbnailUrl }}\"\n                    alt=\"thumbnail\" />\n                <button mat-button\n                    class=\"delete-file\"\n                    title=\"delete file\"\n                    (click)=\"deleteAttachment()\">\n                    <mat-icon>close</mat-icon>\n                </button>\n            </div>\n\n            <div class=\"files-list\">\n                <table>\n                    <thead>\n                        <tr>\n                            <th>Name</th>\n                            <th>Size</th>\n                            <th>Last Modified Date</th>\n                            <th>Delete</th>\n                        </tr>\n                    </thead>\n                    <tbody>\n                        <tr>\n                            <td>{{ file.name }}</td>\n                            <td>{{ convertBytes(file.size) }}</td>\n                            <td>{{ convertDate(file.lastModified) }}</td>\n                            <td>\n                                <button mat-icon-button\n                                    class=\"delete-file\"\n                                    title=\"delete file\"\n                                    (click)=\"deleteAttachment()\">\n                                    <mat-icon>delete</mat-icon>\n                                </button>\n                            </td>\n                        </tr>\n                    </tbody>\n                </table>\n            </div>\n        </ng-container>\n    </form>\n</div>\n","styles":[".form-container{margin:20px auto;width:50%}.full-width{width:100%}.delete-file:hover{color:red}.dd-container{height:200px;margin:20px 0;border:2px solid #000;border-radius:2px;position:relative;text-align:center}.dd-container:hover{cursor:pointer;background-color:#ddd!important}.upload-icon{width:auto;font-size:48px;padding:0;position:inherit;top:35%}.title{bottom:20%}.bottom-line,.title{width:100%;position:absolute;padding:5px 0}.bottom-line{bottom:0;color:#fff;background-color:#000}.thumbnail{text-align:center}.thumbnail button{position:absolute;padding:0}.thumbnail mat-icon{position:absolute}.files-list{display:flex;justify-content:space-between;margin:10px auto;background:#fff;color:#000}table{width:100%;border-collapse:collapse}th{background-color:#9ecbec;text-align:left}td,th{border:1px solid #000;padding:3px}tr td:last-child{text-align:center}"]}]}],"members":{"parentForm":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":22,"character":5}}]}],"representation":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":24,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":36,"character":30},{"__symbolic":"reference","name":"NotificationService"},{"__symbolic":"reference","name":"UploadFileService"}]}],"ngOnInit":[{"__symbolic":"method"}],"addFile":[{"__symbolic":"method"}],"convertBytes":[{"__symbolic":"method"}],"convertDate":[{"__symbolic":"method"}],"deleteAttachment":[{"__symbolic":"method"}],"initializeForm":[{"__symbolic":"method"}],"resetForm":[{"__symbolic":"method"}],"getNewValue":[{"__symbolic":"method"}],"getUpdatedValue":[{"__symbolic":"method"}],"_isFileTypeSupported":[{"__symbolic":"method"}],"_supportedFileTypes":[{"__symbolic":"method"}],"_isMoreThanOneFile":[{"__symbolic":"method"}]}},"UploadedFileResponse":{"__symbolic":"interface"},"UploadFileService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":17,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"AppInitService"},{"__symbolic":"reference","module":"@angular/common/http","name":"HttpClient","line":26,"character":32},{"__symbolic":"reference","name":"SessionService"}]}],"upload":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"UserService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":5,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":13,"character":17},"arguments":[{"__symbolic":"reference","name":"DspApiConnectionToken"}]}]],"parameters":[{"__symbolic":"reference","module":"@dasch-swiss/dsp-js","name":"KnoraApiConnection","line":13,"character":74}]}],"getUser":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"ValueService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":20,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}],"getValueTypeOrClass":[{"__symbolic":"method"}],"getTextValueClass":[{"__symbolic":"method"}],"compareObjectTypeWithValueType":[{"__symbolic":"method"}],"isTextEditable":[{"__symbolic":"method"}],"isReadOnly":[{"__symbolic":"method"}],"calculateDaysInMonth":[{"__symbolic":"method"}],"convertHistoricalYearToAstronomicalYear":[{"__symbolic":"method"}],"createJDNCalendarDateFromKnoraDate":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"ValueOperationEventService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":12,"character":1}}],"members":{"on":[{"__symbolic":"method"}],"emit":[{"__symbolic":"method"}]}},"EmitEvent":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"error","message":"Could not resolve type","line":39,"character":29,"context":{"typeName":"Events"},"module":"./lib/viewer/services/value-operation-event.service"},{"__symbolic":"reference","name":"EventValue"}]}]}},"Events":{"ValueAdded":0,"ValueDeleted":1,"ValueUpdated":2},"EventValue":{"__symbolic":"class","members":{}},"AddedEventValue":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"EventValue"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@dasch-swiss/dsp-js","name":"ReadValue","line":52,"character":35}]}]}},"UpdatedEventValues":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"EventValue"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@dasch-swiss/dsp-js","name":"ReadValue","line":52,"character":35},{"__symbolic":"reference","module":"@dasch-swiss/dsp-js","name":"ReadValue","line":52,"character":35}]}]}},"DeletedEventValue":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"EventValue"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@dasch-swiss/dsp-js","name":"DeleteValue","line":64,"character":37}]}]}},"TextValueHtmlLinkDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":3,"character":1},"arguments":[{"selector":"[dspHtmlLink]"}]}],"members":{"internalLinkClicked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":8,"character":5}}]}],"internalLinkHovered":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":9,"character":5}}]}],"onClick":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":16,"character":5},"arguments":["click",["$event.target"]]}]}],"onMouseOver":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":32,"character":5},"arguments":["mouseover",["$event.target"]]}]}]}},"DragDropDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":2,"character":1},"arguments":[{"selector":"[dspDragDrop]"}]}],"members":{"background":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":7,"character":5},"arguments":["style.background-color"]}]}],"fileDropped":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":9,"character":5}}]}],"onDragOver":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":11,"character":5},"arguments":["dragover",["$event"]]}]}],"onDragLeave":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":17,"character":5},"arguments":["dragleave",["$event"]]}]}],"onDrop":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":23,"character":5},"arguments":["drop",["$event"]]}]}]}},"DspActionModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":35,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"AdminImageDirective"},{"__symbolic":"reference","name":"ConfirmationDialogComponent"},{"__symbolic":"reference","name":"ConfirmationMessageComponent"},{"__symbolic":"reference","name":"ExistingNameDirective"},{"__symbolic":"reference","name":"FormattedBooleanPipe"},{"__symbolic":"reference","name":"GndDirective"},{"__symbolic":"reference","name":"KnoraDatePipe"},{"__symbolic":"reference","name":"LoginFormComponent"},{"__symbolic":"reference","name":"MessageComponent"},{"__symbolic":"reference","name":"ProgressIndicatorComponent"},{"__symbolic":"reference","name":"ReversePipe"},{"__symbolic":"reference","name":"SortButtonComponent"},{"__symbolic":"reference","name":"SortByPipe"},{"__symbolic":"reference","name":"StringifyStringLiteralPipe"},{"__symbolic":"reference","name":"StringLiteralInputComponent"},{"__symbolic":"reference","name":"SelectProjectComponent"},{"__symbolic":"reference","name":"LinkifyPipe"},{"__symbolic":"reference","name":"TruncatePipe"},{"__symbolic":"reference","name":"SelectedResourcesComponent"}],"imports":[{"__symbolic":"reference","module":"@angular/platform-browser/animations","name":"BrowserAnimationsModule","line":58,"character":8},{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":59,"character":8},{"__symbolic":"reference","module":"@angular/material/button","name":"MatButtonModule","line":60,"character":8},{"__symbolic":"reference","module":"@angular/material/button-toggle","name":"MatButtonToggleModule","line":61,"character":8},{"__symbolic":"reference","module":"@angular/material/card","name":"MatCardModule","line":62,"character":8},{"__symbolic":"reference","module":"@angular/material/dialog","name":"MatDialogModule","line":63,"character":8},{"__symbolic":"reference","module":"@angular/material/form-field","name":"MatFormFieldModule","line":64,"character":8},{"__symbolic":"reference","module":"@angular/material/icon","name":"MatIconModule","line":65,"character":8},{"__symbolic":"reference","module":"@angular/material/input","name":"MatInputModule","line":66,"character":8},{"__symbolic":"reference","module":"@angular/material/list","name":"MatListModule","line":67,"character":8},{"__symbolic":"reference","module":"@angular/material/autocomplete","name":"MatAutocompleteModule","line":68,"character":8},{"__symbolic":"reference","module":"@angular/forms","name":"FormsModule","line":69,"character":8},{"__symbolic":"reference","module":"@angular/forms","name":"ReactiveFormsModule","line":70,"character":8},{"__symbolic":"reference","module":"@angular/material/menu","name":"MatMenuModule","line":71,"character":8},{"__symbolic":"reference","module":"@angular/material/snack-bar","name":"MatSnackBarModule","line":72,"character":8}],"exports":[{"__symbolic":"reference","name":"AdminImageDirective"},{"__symbolic":"reference","name":"ConfirmationDialogComponent"},{"__symbolic":"reference","name":"ConfirmationMessageComponent"},{"__symbolic":"reference","name":"ExistingNameDirective"},{"__symbolic":"reference","name":"FormattedBooleanPipe"},{"__symbolic":"reference","name":"GndDirective"},{"__symbolic":"reference","name":"KnoraDatePipe"},{"__symbolic":"reference","name":"LoginFormComponent"},{"__symbolic":"reference","name":"MessageComponent"},{"__symbolic":"reference","name":"ProgressIndicatorComponent"},{"__symbolic":"reference","name":"ReversePipe"},{"__symbolic":"reference","name":"SortButtonComponent"},{"__symbolic":"reference","name":"SortByPipe"},{"__symbolic":"reference","name":"StringifyStringLiteralPipe"},{"__symbolic":"reference","name":"StringLiteralInputComponent"},{"__symbolic":"reference","name":"SelectProjectComponent"},{"__symbolic":"reference","name":"LinkifyPipe"},{"__symbolic":"reference","name":"TruncatePipe"},{"__symbolic":"reference","name":"SelectedResourcesComponent"}]}]}],"members":{}},"FormattedBooleanPipe":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Pipe","line":7,"character":1},"arguments":[{"name":"formattedBoolean"}]}],"members":{"transform":[{"__symbolic":"method"}]}},"KnoraDatePipe":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Pipe","line":3,"character":1},"arguments":[{"name":"knoraDate"}]}],"members":{"transform":[{"__symbolic":"method"}],"leftPadding":[{"__symbolic":"method"}],"addDisplayOptions":[{"__symbolic":"method"}],"getFormattedString":[{"__symbolic":"method"}]}},"ReversePipe":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Pipe","line":8,"character":1},"arguments":[{"name":"dspReverse"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"SortingService"}]}],"transform":[{"__symbolic":"method"}]}},"SortByPipe":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Pipe","line":8,"character":1},"arguments":[{"name":"dspSortBy"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"SortingService"}]}],"transform":[{"__symbolic":"method"}]}},"LinkifyPipe":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Pipe","line":6,"character":1},"arguments":[{"name":"dspLinkify"}]}],"members":{"transform":[{"__symbolic":"method"}],"_recognizeUrl":[{"__symbolic":"method"}],"_setProtocol":[{"__symbolic":"method"}]}},"TruncatePipe":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Pipe","line":21,"character":1},"arguments":[{"name":"dspTruncate"}]}],"members":{"transform":[{"__symbolic":"method"}]}},"StringifyStringLiteralPipe":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Pipe","line":13,"character":1},"arguments":[{"name":"dspStringifyStringLiteral"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"SessionService"}]}],"transform":[{"__symbolic":"method"}]}},"NotificationService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":5,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/material/snack-bar","name":"MatSnackBar","line":11,"character":27},{"__symbolic":"reference","name":"ɵf"}]}],"openSnackBar":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"SortingService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":2,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}],"reverseArray":[{"__symbolic":"method"}],"keySortByAlphabetical":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"ProgressIndicatorComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"dsp-progress-indicator","template":"<!-- this is the progress indicator for forms -->\n<div class=\"dsp-progress-indicator submit\" *ngIf=\"status !== undefined; else isLoading\">\n    <!-- spinner while on load / on submit -->\n    <div class=\"on-submit\" *ngIf=\"status === 0\">\n        <div class=\"spinner\" [style.border-top-color]=\"color\" [style.border-left-color]=\"color\"></div>\n    </div>\n\n    <div>\n        <!-- bullet point before submit -->\n        <mat-icon *ngIf=\"status === -1\" class=\"before-submit\">keyboard_arrow_right</mat-icon>\n        <!-- icon 'check' when done -->\n        <mat-icon *ngIf=\"status === 1\" class=\"after-submit\" [style.color]=\"color\">done</mat-icon>\n        <!-- in case of an error -->\n        <mat-icon *ngIf=\"status === 400\" class=\"submit-error\">not_interested</mat-icon>\n    </div>\n\n</div>\n\n<!-- default case: is loading -->\n<ng-template #isLoading>\n    <div class=\"dsp-progress-indicator default\">\n        <svg\n          class=\"loader\"\n          [attr.width]=\"widthAndHeight\"\n          [attr.height]=\"widthAndHeight\"\n          viewBox=\"5 20 200 170\"\n          preserveAspectRatio=\"xMidYMid meet\"\n          version=\"1.1\"\n        >\n          <g [attr.stroke]=\"color\" stroke-width=\"11\" fill=\"none\">\n            <path\n              d=\"m 107.19141,27.064453 c 19.40811,0.72674 40.31867,-1.456974 57.69737,9.089791 21.86918,11.995467 35.15372,37.302817\n                32.81003,62.109081 -1.44162,27.181075 -22.18624,51.396565 -48.36746,58.105135 -15.52706,3.91583 -31.7106,1.96603\n                -47.54641,2.56104 -12.037336,-0.47103 -24.435002,1.15224 -36.165837,-2.14642 C 47.465101,151.64804 35.68418,132.01794\n                38.846261,113.58197 41.044909,94.96699 58.432119,80.249806 77.041016,80.271484 c 17.227977,-0.187132 34.488494,-0.150034\n                51.722344,-0.05393 7.48754,-0.636519 15.65102,4.272294 15.16633,12.536357 1.1481,10.695294 -10.49745,14.507204\n                -19.15,13.629524 -16.50044,0.8151 -33.109787,-1.33333 -49.544308,0.59021 -12.16565,1.08773 -13.682733,21.19581\n                -2.229523,24.54784 12.153952,2.31023 24.624424,0.72973 36.926141,1.31316 15.925,-0.0149 33.92093,1.88492 46.94691,-9.26237\n                15.92807,-12.50054 19.37984,-37.763607 6.74173,-53.762153 C 155.67021,58.639225 141.87544,52.91852 128.35558,53.71244\n                106.95264,53.816817 85.345205,51.919886 64.110062,55.225243 34.76089,60.210981 11.510586,87.802975 11.20046,117.51937\n                c -1.2978833,28.30459 18.033663,55.93384 45.060676,64.41866 14.698473,5.04904 30.459737,3.11351 45.695894,3.66939\n                -17.420023,-0.6798 -35.760774,1.3379 -52.028837,-6.35029 C 24.919537,168.2006 8.6123975,140.39068 11.757798,113.13809\n                13.979432,83.18657 39.693549,57.195801 69.617745,54.611051 c 20.938633,-1.884763 42.015395,-0.718245 63.009365,-0.538664\n                21.98719,-0.34384 41.15358,21.050135 38.24546,42.865168 -1.45796,19.577435 -19.49062,35.534895 -38.98479,35.409455\n                -16.79472,0.69111 -33.615302,-0.015 -50.421429,0.12436 -8.946772,1.23307 -18.212835,-5.83812 -15.724838,-15.34398\n                0.42247,-8.60164 10.002724,-10.99166 17.091887,-10.64743 17.28209,-0.51175 34.70938,1.55524 51.88813,-0.85383\n                12.33313,-1.76868 12.67077,-22.428759 0.57299,-24.843656 C 122.63021,78.92436 109.75845,80.292039 96.99706,79.912109\n                82.206525,79.982527 65.775345,78.124805 53.519531,88.164062 35.12557,101.2767 33.081035,130.5764 48.717405,146.60724\n                c 8.968191,9.78898 22.647018,13.18722 35.509867,12.46014 18.713198,0.019 37.488438,0.58386 56.161608,-0.70035\n                28.73172,-3.16296 53.8499,-27.19104 57.15814,-56.10834 3.4273,-23.2831 -6.49873,-47.955352 -25.6328,-61.833968\n                -13.91005,-10.94423 -32.05671,-13.81719 -49.28858,-13.194089 -5.14452,-0.0723 -10.28903,-0.166142 -15.43423,-0.16618 z\"\n            />\n          </g>\n        </svg>\n    </div>\n</ng-template>\n\n","styles":[".dsp-progress-indicator.default{margin-left:auto;margin-right:auto}.dsp-progress-indicator.default .loader{display:block;margin:0 auto}.dsp-progress-indicator.default svg path{stroke-dasharray:530;stroke-dashoffset:530;-webkit-animation:load 3s infinite both;animation:load 3s infinite both}@-webkit-keyframes load{to{stroke-dashoffset:2120}}@keyframes load{to{stroke-dashoffset:2120}}.dsp-progress-indicator.submit{height:32px;width:32px}.dsp-progress-indicator.submit .on-submit{-webkit-animation:spinner-keyframes .7s linear infinite;animation:spinner-keyframes .7s linear infinite;height:32px;width:32px}.dsp-progress-indicator.submit .on-submit .spinner{border-radius:50%;border-color:#00695c transparent transparent #00695c;border-style:solid;border-width:2px;height:28px;width:28px}.dsp-progress-indicator.submit .before-submit{color:hsla(0,0%,50.2%,.8)}.dsp-progress-indicator.submit .after-submit{color:#00695c}.dsp-progress-indicator.submit .submit-error{color:#f44336}@-webkit-keyframes spinner-keyframes{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes spinner-keyframes{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}"]}]}],"members":{"status":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":20,"character":5}}]}],"color":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":30,"character":5}}]}],"size":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":32,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}]}},"DspMessageData":{"__symbolic":"class","members":{}},"MessageComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":24,"character":1},"arguments":[{"selector":"dsp-message","template":"<mat-card *ngIf=\"(size !== 'short')\" class=\"fix-width dsp-message\" [ngClass]=\"'dsp-' + message?.type\">\n\n    <mat-card-subtitle class=\"message-subtitle\">\n        <span class=\"left\">{{message?.type | uppercase }} {{message?.status}} | {{message?.statusMsg}}</span>\n    </mat-card-subtitle>\n\n    <mat-card-title class=\"message-title\" [innerHtml]=\"message?.statusText\"></mat-card-title>\n\n    <mat-card-content class=\"message-content\">\n        <mat-list *ngIf=\"message?.route\">\n            <mat-list-item>\n                <a [href]=\"message?.route\" target=\"_blank\">\n                    &rarr; {{message?.route}}\n                </a>\n            </mat-list-item>\n        </mat-list>\n\n        <mat-list *ngIf=\"apiError\">\n            <mat-list-item>\n                <p mat-line>{{apiError.error.toString()}}</p>\n            </mat-list-item>\n        </mat-list>\n\n        <mat-list *ngIf=\"showLinks\">\n            <p>{{links.title}}</p>\n            <mat-list-item *ngFor=\"let item of links.list\" class=\"link\" (click)=\"goToLocation(item.route)\">\n                <mat-icon mat-list-icon>{{item.icon}}</mat-icon>\n                <p mat-line>{{item.label}}</p>\n            </mat-list-item>\n        </mat-list>\n\n    </mat-card-content>\n\n    <mat-card-footer *ngIf=\"(size === 'long')\" class=\"message-footnote\">\n        <!-- Specific message from @Input -->\n        <p *ngIf=\"message.footnote\">{{message.footnote}}</p>\n\n        <!-- Else: Default message -->\n        <p *ngIf=\"!message.footnote && !showLinks\">\n            Please come back in a few minutes and try to <a class=\"link bolder\" (click)=\"reload()\">reload the page</a>.\n        </p>\n\n        <!-- Action: Contact DaSCH/DSP support -->\n        <a mat-button class=\"action\" href=\"https://docs.dasch.swiss/community/faq\" target=\"_blank\">\n            <mat-icon>mail_outline</mat-icon> Contact the support team\n        </a>\n    </mat-card-footer>\n\n</mat-card>\n\n<mat-card *ngIf=\"(size === 'short') && !disable\" class=\"fix-width dsp-short-message\" [ngClass]=\"'dsp-' + message?.type\"\n          (click)=\"closeMessage()\">\n\n    <div class=\"dsp-panel\">\n        <span class=\"dsp-short-message-text\">\n            {{message?.statusText}}\n        </span>\n        <span class=\"fill-remaining-space\"></span>\n    </div>\n\n</mat-card>\n","styles":["@media (max-width:576px){.desktop-only{display:none!important}}.dsp-panel{display:flex;box-sizing:border-box;flex-direction:row;white-space:nowrap}.fill-remaining-space{flex-basis:auto;flex-grow:1;flex-shrink:1}.dsp-error{background-color:rgba(244,67,54,.5)}.dsp-warning{background-color:rgba(255,196,0,.5)}.dsp-hint,.dsp-note{background-color:#00695c;color:#fff}.dsp-error,.dsp-hint,.dsp-note,.dsp-warning{margin:12px auto;max-width:640px}.dsp-error .message-subtitle,.dsp-hint .message-subtitle,.dsp-note .message-subtitle,.dsp-warning .message-subtitle{padding-bottom:12px}.dsp-error .message-subtitle .left,.dsp-hint .message-subtitle .left,.dsp-note .message-subtitle .left,.dsp-warning .message-subtitle .left{float:left;left:16px;position:absolute;text-align:left}.dsp-error .message-subtitle .right,.dsp-hint .message-subtitle .right,.dsp-note .message-subtitle .right,.dsp-warning .message-subtitle .right{float:right;right:16px;position:absolute;text-align:right}.dsp-error .message-title,.dsp-hint .message-title,.dsp-note .message-title,.dsp-warning .message-title{padding-top:12px}.dsp-error .message-content,.dsp-hint .message-content,.dsp-note .message-content,.dsp-warning .message-content{margin-bottom:48px;margin-top:48px}.dsp-error .message-content .link,.dsp-hint .message-content .link,.dsp-note .message-content .link,.dsp-warning .message-content .link{cursor:pointer}.dsp-error .message-footnote,.dsp-hint .message-footnote,.dsp-note .message-footnote,.dsp-warning .message-footnote{padding:24px}.dsp-error .message-footnote .bolder,.dsp-hint .message-footnote .bolder,.dsp-note .message-footnote .bolder,.dsp-warning .message-footnote .bolder{font-weight:bolder}.dsp-error .message-footnote .action,.dsp-hint .message-footnote .action,.dsp-note .message-footnote .action,.dsp-warning .message-footnote .action{margin:48px auto 0;display:table}.dsp-short-message .dsp-short-message-text{font-weight:bolder;text-align:center}@media (max-width:576px){.dsp-panel{white-space:normal}.dsp-short-message .dsp-short-message-text{text-align:left}}"]}]}],"members":{"message":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":38,"character":5}}]}],"apiError":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":44,"character":5}}]}],"size":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":50,"character":5}}]}],"short":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":57,"character":5}}]}],"medium":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":64,"character":5}}]}],"duration":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":69,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/router","name":"Router","line":108,"character":25},{"__symbolic":"reference","module":"@angular/common","name":"Location","line":109,"character":27},{"__symbolic":"reference","module":"@angular/router","name":"ActivatedRoute","line":110,"character":33},{"__symbolic":"reference","name":"ɵf"}]}],"ngOnInit":[{"__symbolic":"method"}],"setMessage":[{"__symbolic":"method"}],"goToLocation":[{"__symbolic":"method"}],"closeMessage":[{"__symbolic":"method"}],"reload":[{"__symbolic":"method"}]}},"SortProp":{"__symbolic":"interface"},"SortButtonComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":11,"character":1},"arguments":[{"selector":"dsp-sort-button","template":"<span class=\"sort-button\" [class]=\"position\">\n    <button mat-icon-button [matMenuTriggerFor]=\"sortSelection\">\n        <mat-icon>{{icon}}</mat-icon>\n    </button>\n    <mat-menu #sortSelection=\"matMenu\" [xPosition]=\"menuXPos\">\n        <button mat-menu-item\n                *ngFor=\"let item of sortProps\"\n                (click)=\"sortBy(item.key)\"\n                [class.active]=\"activeKey === item.key\">\n            {{item.label}}\n        </button>\n    </mat-menu>\n</span>\n","styles":[".active{background:hsla(0,0%,50.2%,.39);font-weight:bolder}.right.sort{float:right}.right.sort .mat-icon{transform:scaleX(-1)}"]}]}],"members":{"sortProps":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":23,"character":5}}]}],"position":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":30,"character":5}}]}],"icon":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":38,"character":5}}]}],"activeKey":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":46,"character":5}}]}],"sortKeyChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":54,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}],"sortBy":[{"__symbolic":"method"}]}},"LoginFormComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":7,"character":1},"arguments":[{"selector":"dsp-login-form","template":"<div class=\"login-container\" *ngIf=\"!session\">\n\n    <h2 class=\"login-form-title mat-title\">{{formLabel.title}}</h2>\n\n    <!-- This is the login form -->\n    <form [formGroup]=\"form\" class=\"login-form\">\n\n        <!-- Username -->\n        <mat-form-field class=\"full-width login-field\">\n            <mat-icon *ngIf=\"icons\" matPrefix>person</mat-icon>\n\n            <input\n                matInput\n                [placeholder]=\"formLabel.name\"\n                formControlName=\"username\"\n                #username\n            >\n\n        </mat-form-field>\n\n        <!-- Password -->\n        <mat-form-field class=\"full-width login-field\">\n\n            <mat-icon *ngIf=\"icons\" matPrefix>lock</mat-icon>\n\n            <input\n                matInput\n                type=\"password\"\n                [placeholder]=\"formLabel.pw\"\n                formControlName=\"password\">\n\n        </mat-form-field>\n\n        <br>\n\n        <!-- Button: Login -->\n        <button\n            mat-raised-button\n            (click)=\"login()\"\n            type=\"submit\"\n            [disabled]=\"!form.valid\"\n            class=\"full-width submit-button\"\n            [class.mat-primary]=\"!isError\"\n            [class.mat-warn]=\"isError\">\n                <dsp-progress-indicator [color]=\"'white'\" [status]=\"0\" *ngIf=\"loading\" class=\"login-progress\"></dsp-progress-indicator>\n                <mat-icon *ngIf=\"isError && !loading\">close</mat-icon>\n                {{isError ? formLabel.retry : formLabel.submit}}\n        </button>\n\n        <br><br>\n\n        <!-- Error message as an answer from knora api request -->\n        <p class=\"login-error\" *ngIf=\"loginFailed\">{{formLabel.error.failed}}</p>\n    </form>\n</div>\n\n<!-- a user is already logged in; show who it is and a logout button -->\n<div class=\"logout-container\" *ngIf=\"session\">\n    <p>A user is already logged in:</p>\n    <p>Username: <strong>{{session.user.name}}</strong></p>\n    <br>\n    <p>Please log out if it's not you.</p>\n    <button mat-raised-button (click)=\"logout()\" class=\"full-width mat-warn logout-button\">\n        <dsp-progress-indicator [color]=\"'white'\" [status]=\"0\" *ngIf=\"loading\" class=\"login-progress\"></dsp-progress-indicator>\n        {{formLabel.logout}}\n    </button>\n</div>\n","styles":[".full-width{width:100%}.login-error,.login-form-title{text-align:center}.login-error{color:#ef5350}.login-progress{display:inline-block;margin-right:6px}.login-container,.logout-container{margin-left:auto;margin-right:auto;position:relative;width:280px}.logout-button,.submit-button{height:48px}.center{text-align:center}"]}]}],"members":{"navigate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":19,"character":5}}]}],"color":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":27,"character":5}}]}],"icons":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":34,"character":5}}]}],"loginSuccess":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":42,"character":5}}]}],"logoutSuccess":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":50,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":102,"character":9},"arguments":[{"__symbolic":"reference","name":"DspApiConnectionToken"}]}],null,null,null],"parameters":[{"__symbolic":"reference","module":"@dasch-swiss/dsp-js","name":"KnoraApiConnection","line":102,"character":66},{"__symbolic":"reference","name":"NotificationService"},{"__symbolic":"reference","name":"SessionService"},{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":105,"character":21}]}],"ngOnInit":[{"__symbolic":"method"}],"buildLoginForm":[{"__symbolic":"method"}],"login":[{"__symbolic":"method"}],"logout":[{"__symbolic":"method"}]}},"StringLiteralInputComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":6,"character":1},"arguments":[{"selector":"dsp-string-literal-input","template":"<form [formGroup]=\"form\">\n\n    <!-- default input element -->\n    <mat-form-field *ngIf=\"!textarea\" class=\"string-literal short-text\">\n\n        <!-- select: button to select language -->\n        <button\n            mat-button\n            type=\"button\"\n            matPrefix\n            class=\"select-lang\"\n            [matMenuTriggerFor]=\"selectLanguage\"\n            #btnToSelectLanguage=\"matMenuTrigger\"\n            (click)=\"form.controls['text'].disable()\"\n            (menuClosed)=\"menuClosed()\">\n                <span class=\"label\">{{language}}</span>\n                <mat-icon class=\"icon\" matSuffix>keyboard_arrow_down</mat-icon>\n        </button>\n\n        <!-- select: menu with list of languages -->\n        <mat-menu #selectLanguage=\"matMenu\" class=\"lang-menu\">\n            <button\n                mat-menu-item\n                type=\"button\"\n                class=\"lang-button\"\n                *ngFor=\"let lang of languages\"\n                (click)=\"setLanguage(lang);switchFocus()\">\n                    <span [class.existing-value]=\"getValueFromStringLiteral(lang)\">{{lang}}</span>\n            </button>\n            <!-- TODO / QUESTION: should we support a show all button, to display values for all languages?\n                <mat-divider></mat-divider>\n                <button mat-menu-item type=\"button\" (click)=\"toggleAll()\">\n                    <span>Show values for all languages</span>\n                </button>\n            -->\n        </mat-menu>\n\n        <!-- input field-->\n        <input\n            matInput\n            [placeholder]=\"placeholder\"\n            [formControlName]=\"'text'\"\n            class=\"inputValue\"\n            #textInput\n            [readonly]=\"readonly\"\n            (keyup.enter)=\"enter.emit(true)\"\n        >\n    </mat-form-field>\n\n    <!-- if input element type is textarea -->\n    <div *ngIf=\"textarea\" class=\"string-literal long-text\">\n        <!-- button toggle group: buttons to select language -->\n        <mat-button-toggle-group\n            matPrefix\n            #group=\"matButtonToggleGroup\"\n            vertical\n            class=\"string-literal-select-lang\">\n            <mat-button-toggle\n                *ngFor=\"let lang of languages\"\n                (click)=\"setLanguage(lang);switchFocus()\"\n                [checked]=\"lang === language\"\n                class=\"lang-toggle-button\">\n                <span [class.existing-value]=\"getValueFromStringLiteral(lang)\">{{lang}}</span>\n            </mat-button-toggle>\n        </mat-button-toggle-group>\n        <mat-form-field class=\"string-literal-textarea\">\n            <!-- textarea -->\n            <textarea\n                matInput\n                [placeholder]=\"placeholder\"\n                [formControlName]=\"'text'\"\n                class=\"textAreaValue\"\n                #textInput\n                [readonly]=\"readonly\">\n            </textarea>\n        </mat-form-field>\n    </div>\n\n</form>\n","styles":[".mat-form-field{width:100%!important}.existing-value{font-weight:700}.string-literal.short-text .mat-button.select-lang{min-width:36px!important;padding:0 8px!important;border-radius:4px 0 0 0!important}.string-literal.long-text{display:flex}.string-literal.long-text .mat-button-toggle{height:36px;width:56px}.string-literal.long-text .mat-button-toggle .mat-button-toggle-button{width:50px!important}.string-literal.long-text .mat-button-toggle-vertical{height:calc(4 * 36px + 2px);border-radius:4px 0 0 4px!important;border-right:0;overflow-y:auto}.string-literal.long-text .mat-button-toggle-vertical::-webkit-scrollbar{width:0}.string-literal.long-text .string-literal-textarea{display:flex!important}.string-literal.long-text .string-literal-textarea textarea{min-height:calc(4 * 36px)!important}"]}]}],"members":{"placeholder":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":20,"character":5}}]}],"language":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":27,"character":5}}]}],"textarea":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":35,"character":5}}]}],"value":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":42,"character":5}}]}],"disabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":49,"character":5}}]}],"readonly":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":56,"character":5}}]}],"dataChanged":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":63,"character":5}}]}],"touched":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":70,"character":5}}]}],"enter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":77,"character":5}}]}],"textInput":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":79,"character":5},"arguments":["textInput",{"static":false}]}]}],"btnToSelectLanguage":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":81,"character":5},"arguments":["btnToSelectLanguage",{"static":false}]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":85,"character":29},{"__symbolic":"reference","name":"SessionService"}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"onValueChanged":[{"__symbolic":"method"}],"toggleAll":[{"__symbolic":"method"}],"setLanguage":[{"__symbolic":"method"}],"switchFocus":[{"__symbolic":"method"}],"menuClosed":[{"__symbolic":"method"}],"updateFormField":[{"__symbolic":"method"}],"updateStringLiterals":[{"__symbolic":"method"}],"resetValues":[{"__symbolic":"method"}],"getValueFromStringLiteral":[{"__symbolic":"method"}]}},"ConfirmationDialogData":{"__symbolic":"class","members":{}},"ConfirmationDialogValueDeletionPayload":{"__symbolic":"class","members":{}},"ConfirmationDialogComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":16,"character":1},"arguments":[{"selector":"dsp-confirmation-dialog","template":"<div class=\"deletion-dialog\">\n    <mat-dialog-content>\n        <p class=\"title\"> Are you sure you want to delete this value from {{data.value.propertyLabel}}?</p>\n        <dsp-confirmation-message #confirmMessage [value]=\"data.value\"></dsp-confirmation-message>\n    </mat-dialog-content>\n    <mat-dialog-actions class=\"action-buttons\">\n        <button class=\"cancel\" mat-raised-button mat-dialog-close>{{data.buttonTextCancel}}</button>\n        <button class=\"ok\" mat-raised-button color=\"primary\" (click)=\"onConfirmClick()\">{{data.buttonTextOk}}</button>\n    </mat-dialog-actions>\n</div>\n\n","styles":["@charset \"UTF-8\";@media (max-width:576px){.desktop-only{display:none!important}}.read-mode-view{font:400 15px/24px sans-serif}.read-mode-view .rm-comment,.read-mode-view .rm-value{display:block;margin:0}.child-value-component,.value-component-comment{display:block}.parent-component-wrapper .value-component-comment{margin-top:-2em}.parent-value-component .child-value-component .mat-form-field-wrapper .mat-form-field-infix{border-top:0 solid transparent}.child-input-component{display:inline-block;vertical-align:bottom;width:49%}.child-input-component:nth-child(2){padding-left:2%}.child-input-component.full-width{width:100%}.custom-error-message{font-size:12px;margin-top:-1em;padding-bottom:1em}.grid-container{display:grid;grid-template-columns:70% 30%;grid-template-rows:auto auto}.crud-buttons,.value-component{vertical-align:top}.value-component{grid-row-start:1;grid-row-end:auto;grid-column-start:1;grid-column-end:2;position:relative}.value-component .action-bubble{position:absolute;right:0;top:-20px;border:1px solid #e4e4e4;border-radius:10px;padding:0 1px;background-color:#e4e4e4;z-index:2;box-shadow:1px 4px 5px 0 #949494}.value-component .action-bubble .button-container button.mat-button-disabled .mat-icon{color:#aaa}.value-component .action-bubble .button-container button{cursor:pointer;border:none;padding:2px;outline:none;background-color:transparent;color:#000;margin:0 2px;border-radius:10px;transition:background-color .5s ease-out;min-width:inherit;line-height:normal}.value-component .action-bubble .button-container button .material-icons{font-size:18px}.value-component .action-bubble .button-container button .mat-icon{width:18px;height:18px;vertical-align:middle}.value-component .action-bubble .button-container button.info{cursor:default}.value-component .action-bubble .button-container button:hover{background-color:#c7c7c7}.value-component.highlighted{background-color:#f5f5f5}.crud-buttons{grid-column-start:2;grid-column-end:3}.crud-buttons,.mat-error{grid-row-start:1;grid-row-end:auto}.mat-error{grid-column-start:3;grid-column-end:end}button.cancel,button.save{cursor:pointer;border:none;padding:0;margin-left:1em;outline:none;background-color:transparent;color:#000}button.save:disabled{color:#adadad;cursor:default}button.cancel .mat-icon,button.cancel .material-icons,button.save .mat-icon,button.save .material-icons{font-size:18px}.deletion-dialog .title{font-weight:700;font-size:18px;text-align:center}.deletion-dialog .action-buttons{float:right}.deletion-dialog .action-buttons .cancel{padding:0 16px}.deletion-dialog-message{font-size:16px;background-color:#ededf5;border:1px solid #d8d8df;border-radius:5px;padding:20px 10px;text-align:center}.deletion-dialog-message .deletion-comment{min-width:80%}.ck-content code{font-family:monospace!important}.ck-content pre{background-color:inherit!important}code,pre{font-family:monospace!important;background-color:hsla(0,0%,78%,.3);padding:.15em;border-radius:2px}"]}]}],"members":{"confirmationMessageComponent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":22,"character":5},"arguments":["confirmMessage"]}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":27,"character":9},"arguments":[{"__symbolic":"reference","module":"@angular/material/dialog","name":"MAT_DIALOG_DATA","line":27,"character":16}]}],null],"parameters":[{"__symbolic":"reference","name":"ConfirmationDialogData"},{"__symbolic":"reference","name":"MatDialogRef","module":"@angular/material/dialog","arguments":[{"__symbolic":"reference","name":"ConfirmationDialogComponent"}]}]}],"onConfirmClick":[{"__symbolic":"method"}]}},"ConfirmationMessageComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"dsp-confirmation-message","template":"<div class=\"deletion-dialog-message\">\n    <p class=\"val-label\">Confirming this action will delete the following value from {{value.propertyLabel}}:</p>\n    <p class=\"val-value\">Value: {{value.strval}}</p>\n    <p class=\"val-comment\">Value Comment: {{value.valueHasComment ? value.valueHasComment : 'No comment'}}</p>\n    <p class=\"val-creation-date\">Value Creation Date: {{value.valueCreationDate}}</p>\n    <textarea\n        matinput\n        class=\"deletion-comment\"\n        type=\"text\"\n        (keyup)=\"onKey($event)\"\n        [placeholder]=\"'Comment why value is being deleted'\"\n    ></textarea>\n</div>\n","styles":["@charset \"UTF-8\";@media (max-width:576px){.desktop-only{display:none!important}}.read-mode-view{font:400 15px/24px sans-serif}.read-mode-view .rm-comment,.read-mode-view .rm-value{display:block;margin:0}.child-value-component,.value-component-comment{display:block}.parent-component-wrapper .value-component-comment{margin-top:-2em}.parent-value-component .child-value-component .mat-form-field-wrapper .mat-form-field-infix{border-top:0 solid transparent}.child-input-component{display:inline-block;vertical-align:bottom;width:49%}.child-input-component:nth-child(2){padding-left:2%}.child-input-component.full-width{width:100%}.custom-error-message{font-size:12px;margin-top:-1em;padding-bottom:1em}.grid-container{display:grid;grid-template-columns:70% 30%;grid-template-rows:auto auto}.crud-buttons,.value-component{vertical-align:top}.value-component{grid-row-start:1;grid-row-end:auto;grid-column-start:1;grid-column-end:2;position:relative}.value-component .action-bubble{position:absolute;right:0;top:-20px;border:1px solid #e4e4e4;border-radius:10px;padding:0 1px;background-color:#e4e4e4;z-index:2;box-shadow:1px 4px 5px 0 #949494}.value-component .action-bubble .button-container button.mat-button-disabled .mat-icon{color:#aaa}.value-component .action-bubble .button-container button{cursor:pointer;border:none;padding:2px;outline:none;background-color:transparent;color:#000;margin:0 2px;border-radius:10px;transition:background-color .5s ease-out;min-width:inherit;line-height:normal}.value-component .action-bubble .button-container button .material-icons{font-size:18px}.value-component .action-bubble .button-container button .mat-icon{width:18px;height:18px;vertical-align:middle}.value-component .action-bubble .button-container button.info{cursor:default}.value-component .action-bubble .button-container button:hover{background-color:#c7c7c7}.value-component.highlighted{background-color:#f5f5f5}.crud-buttons{grid-column-start:2;grid-column-end:3}.crud-buttons,.mat-error{grid-row-start:1;grid-row-end:auto}.mat-error{grid-column-start:3;grid-column-end:end}button.cancel,button.save{cursor:pointer;border:none;padding:0;margin-left:1em;outline:none;background-color:transparent;color:#000}button.save:disabled{color:#adadad;cursor:default}button.cancel .mat-icon,button.cancel .material-icons,button.save .mat-icon,button.save .material-icons{font-size:18px}.deletion-dialog .title{font-weight:700;font-size:18px;text-align:center}.deletion-dialog .action-buttons{float:right}.deletion-dialog .action-buttons .cancel{padding:0 16px}.deletion-dialog-message{font-size:16px;background-color:#ededf5;border:1px solid #d8d8df;border-radius:5px;padding:20px 10px;text-align:center}.deletion-dialog-message .deletion-comment{min-width:80%}.ck-content code{font-family:monospace!important}.ck-content pre{background-color:inherit!important}code,pre{font-family:monospace!important;background-color:hsla(0,0%,78%,.3);padding:.15em;border-radius:2px}"]}]}],"members":{"value":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor"}],"onKey":[{"__symbolic":"method"}]}},"SelectProjectComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":8,"character":1},"arguments":[{"selector":"dsp-select-project","template":"<div class=\"dsp-select-project-component\">\n    <form class=\"form-content\" [formGroup]=\"selectProjectForm\">\n        <mat-form-field class=\"large-field select-project\">\n\n            <input\n                matInput\n                placeholder=\"Select project\"\n                [matAutocomplete]=\"project\"\n                [formControlName]=\"'projectName'\">\n\n            <button\n                mat-icon-button\n                matSuffix\n                *ngIf=\"projectNameFormControl.value\"\n                type=\"button\"\n                (click)=\"resetInput($event)\">\n                <mat-icon>close</mat-icon>\n            </button>\n\n            <mat-autocomplete #project=\"matAutocomplete\" (optionSelected)=\"getProject($event.option.value)\">\n                <mat-option *ngFor=\"let project of filteredProjects | async\" [value]=\"project?.shortname\">\n                    {{ project?.shortname }} | {{ project?.longname }} | {{ project?.shortcode }}\n                </mat-option>\n            </mat-autocomplete>\n        </mat-form-field>\n    </form>\n</div>\n","styles":[".dsp-select-project-component .form-content .select-project{width:400px}"]}]}],"members":{"userIri":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":16,"character":5}}]}],"selectedProject":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":19,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":35,"character":9},"arguments":[{"__symbolic":"reference","name":"DspApiConnectionToken"}]}],null,null],"parameters":[{"__symbolic":"reference","module":"@dasch-swiss/dsp-js","name":"KnoraApiConnection","line":35,"character":66},{"__symbolic":"reference","name":"SortingService"},{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":37,"character":30}]}],"ngOnInit":[{"__symbolic":"method"}],"getAllProjects":[{"__symbolic":"method"}],"resetInput":[{"__symbolic":"method"}],"filter":[{"__symbolic":"method"}],"getProject":[{"__symbolic":"method"}]}},"SelectedResourcesComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"dsp-selected-resources","template":"<div class=\"selected-resources\">\n\n    <h4>Number of resources selected: <span class=\"res-value\">{{ resCount }}</span></h4>\n\n    <h4>Ids of the Selected resources are:</h4>\n    <mat-list>\n        <mat-list-item *ngFor=\"let id of resIds\">\n          <mat-icon mat-list-icon>description</mat-icon>\n          <div mat-line class=\"res-value\">{{ id }}</div>\n        </mat-list-item>\n    </mat-list>\n\n    <div class=\"action-buttons\">\n        <button id=\"compare\" mat-raised-button color=\"primary\" class=\"res-action\" (click)=\"compareResources()\"> Compare </button>\n        <button id=\"edit\" mat-raised-button color=\"primary\" class=\"res-action\" disabled> Edit </button>\n        <button id=\"delete\" mat-raised-button color=\"primary\" class=\"res-action\" disabled> Delete </button>\n        <button id=\"star\" mat-raised-button color=\"primary\" class=\"res-action\" disabled> Starred </button>\n        <button id=\"cancel\" mat-raised-button class=\"res-action\" (click)=\"cancelSelection()\"> Cancel </button>\n    </div>\n</div>\n","styles":[".selected-resources{margin-top:10px}.selected-resources .mat-list-item{height:auto}.selected-resources .mat-list-item .mat-icon{font-size:20px;color:#673ab7}.selected-resources .mat-list-item .mat-line{white-space:normal!important}.selected-resources .mat-list-item .mat-list-item{margin-left:0}.res-ids-container{margin:8px}.res-value{color:#673ab7}.action-buttons{margin-top:20px}.action-buttons .res-action{margin:4px}"]}]}],"members":{"resCount":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":13,"character":3}}]}],"resIds":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":16,"character":3}}]}],"actionType":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":19,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"compareResources":[{"__symbolic":"method"}],"cancelSelection":[{"__symbolic":"method"}]}},"AdminImageDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":4,"character":1},"arguments":[{"selector":"[dspAdminImage]"}]}],"members":{"image":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":16,"character":5}}]}],"type":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":25,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"Renderer2","line":43,"character":35},{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":44,"character":22}]}],"ngOnChanges":[{"__symbolic":"method"}]}},"ExistingNameDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":3,"character":1},"arguments":[{"selector":"[dspExistingName]"}]}],"members":{"existingName":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":11,"character":5}}]}],"ngOnChanges":[{"__symbolic":"method"}],"validate":[{"__symbolic":"method"}]}},"existingNameValidator":{"__symbolic":"function","parameters":["valRegexp"],"value":{"__symbolic":"error","message":"Lambda not supported","line":50,"character":11,"module":"./lib/action/directives/existing-names/existing-name.directive"}},"existingNamesValidator":{"__symbolic":"function","parameters":["valArrayRegexp"],"value":{"__symbolic":"error","message":"Lambda not supported","line":71,"character":11,"module":"./lib/action/directives/existing-names/existing-name.directive"}},"notAllowed":{"__symbolic":"function","parameters":["pattern","regType"],"value":{"__symbolic":"error","message":"Lambda not supported","line":99,"character":11,"module":"./lib/action/directives/existing-names/existing-name.directive"}},"GNDConstants":{"__symbolic":"class","members":{},"statics":{"GND_PREFIX":"(DE-588)","GND_RESOLVER":"http://d-nb.info/gnd/","VIAF_PREFIX":"(VIAF)","VIAF_RESOLVER":"https://viaf.org/viaf/"}},"GndDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":13,"character":1},"arguments":[{"selector":"[dspGnd]"}]}],"members":{"gnd":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":18,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":31,"character":30}]}],"ngOnChanges":[{"__symbolic":"method"}]}},"DspSearchModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":42,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"SearchPanelComponent"},{"__symbolic":"reference","name":"FulltextSearchComponent"},{"__symbolic":"reference","name":"ExpertSearchComponent"},{"__symbolic":"reference","name":"ɵm"},{"__symbolic":"reference","name":"ɵn"},{"__symbolic":"reference","name":"ɵo"},{"__symbolic":"reference","name":"AdvancedSearchComponent"},{"__symbolic":"reference","name":"ɵp"},{"__symbolic":"reference","name":"ɵq"},{"__symbolic":"reference","name":"ɵr"},{"__symbolic":"reference","name":"ɵs"},{"__symbolic":"reference","name":"ɵt"},{"__symbolic":"reference","name":"ɵu"},{"__symbolic":"reference","name":"ɵv"},{"__symbolic":"reference","name":"ɵw"},{"__symbolic":"reference","name":"ɵx"},{"__symbolic":"reference","name":"ɵy"},{"__symbolic":"reference","name":"ɵz"},{"__symbolic":"reference","name":"ɵba"}],"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":65,"character":8},{"__symbolic":"reference","module":"@angular/forms","name":"FormsModule","line":66,"character":8},{"__symbolic":"reference","module":"@angular/forms","name":"ReactiveFormsModule","line":67,"character":8},{"__symbolic":"reference","module":"@angular/material/icon","name":"MatIconModule","line":68,"character":8},{"__symbolic":"reference","module":"@angular/material/input","name":"MatInputModule","line":69,"character":8},{"__symbolic":"reference","module":"@angular/material/form-field","name":"MatFormFieldModule","line":70,"character":8},{"__symbolic":"reference","module":"@angular/material/menu","name":"MatMenuModule","line":71,"character":8},{"__symbolic":"reference","module":"@angular/material/list","name":"MatListModule","line":72,"character":8},{"__symbolic":"reference","module":"@angular/material/button","name":"MatButtonModule","line":73,"character":8},{"__symbolic":"reference","module":"@angular/material/tooltip","name":"MatTooltipModule","line":74,"character":8},{"__symbolic":"reference","module":"@angular/forms","name":"ReactiveFormsModule","line":75,"character":8},{"__symbolic":"reference","module":"@angular/material/select","name":"MatSelectModule","line":76,"character":8},{"__symbolic":"reference","module":"@angular/material/core","name":"MatOptionModule","line":77,"character":8},{"__symbolic":"reference","module":"@angular/material/checkbox","name":"MatCheckboxModule","line":78,"character":8},{"__symbolic":"reference","module":"@angular/material/input","name":"MatInputModule","line":79,"character":8},{"__symbolic":"reference","module":"@angular/material/datepicker","name":"MatDatepickerModule","line":80,"character":8},{"__symbolic":"reference","module":"@angular/material/autocomplete","name":"MatAutocompleteModule","line":81,"character":8},{"__symbolic":"reference","name":"ɵbb"},{"__symbolic":"reference","name":"ɵbc"},{"__symbolic":"reference","module":"@angular/cdk/text-field","name":"TextFieldModule","line":84,"character":8}],"exports":[{"__symbolic":"reference","name":"SearchPanelComponent"},{"__symbolic":"reference","name":"FulltextSearchComponent"},{"__symbolic":"reference","name":"ExpertSearchComponent"},{"__symbolic":"reference","name":"AdvancedSearchComponent"}]}]}],"members":{}},"SearchPanelComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":14,"character":1},"arguments":[{"selector":"dsp-search-panel","template":"<div class=\"dsp-search-panel\" #fullSearchPanel cdkOverlayOrigin>\n\n    <dsp-fulltext-search\n        [projectfilter]=\"projectfilter\"\n        [(limitToProject)]=\"limitToProject\"\n        (search)=\"emitSearch($event)\">\n    </dsp-fulltext-search>\n\n    <!-- Do not display advanced and expert search on mobile devices smaller than tablet -->\n    <div class=\"advanced-expert-buttons\">\n        <!-- advanced search button: if advanced === true -->\n        <button mat-flat-button *ngIf=\"advanced\" [class.active]=\"showAdvanced\"\n            (click)=\"openPanelWithBackdrop('advanced')\">advanced</button>\n\n        <!-- expert search button: if expert === true -->\n        <button mat-flat-button *ngIf=\"expert\" [class.active]=\"showExpert\"\n            (click)=\"openPanelWithBackdrop('expert')\">expert</button>\n    </div>\n\n</div>\n\n<!-- full-text search menu -->\n<ng-template #searchMenu>\n    <div class=\"dsp-search-menu with-advanced-search\" [class.with-project-filter]=\"projectfilter\">\n        <div class=\"dsp-menu-header\">\n            <span class=\"dsp-menu-title\">\n                <h4 *ngIf=\"showAdvanced\">Advanced search</h4>\n                <h4 *ngIf=\"!showAdvanced\">Expert search</h4>\n            </span>\n            <span class=\"fill-remaining-space\"></span>\n            <span class=\"dsp-menu-close\">\n                <button mat-icon-button (click)=\"closeMenu()\">\n                    <mat-icon>close</mat-icon>\n                </button>\n            </span>\n        </div>\n        <div class=\"dsp-menu-content\">\n            <dsp-advanced-search *ngIf=\"showAdvanced\" [limitToProject]=\"limitToProject\" (search)=\"emitSearch($event)\"></dsp-advanced-search>\n            <dsp-expert-search *ngIf=\"!showAdvanced\" (search)=\"emitSearch($event)\"></dsp-expert-search>\n        </div>\n    </div>\n</ng-template>\n","styles":["@media (max-width:576px){.desktop-only{display:none!important}}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration,input[type=search]::-webkit-search-results-button,input[type=search]::-webkit-search-results-decoration{display:none}input[type=search]{-moz-appearance:none;-webkit-appearance:none}.dsp-search-menu{box-shadow:0 1px 3px rgba(0,0,0,.5);background-color:#f9f9f9;border-radius:4px;overflow-y:auto;min-height:320px;margin-top:6px;padding:16px;z-index:-1;position:relative}.dsp-search-menu .dsp-menu-header{background-color:#f9f9f9;border-top-left-radius:4px;border-top-right-radius:4px;display:inline-flex;height:48px;width:100%;margin-bottom:12px}.dsp-search-menu .dsp-menu-header .dsp-menu-title h4{margin:12px 0}.dsp-search-menu .dsp-menu-action{position:absolute;bottom:0;width:calc(100% - 32px)}.dsp-search-menu .dsp-menu-action .center{display:block;margin:12px auto}.dsp-form-content{width:100%;position:relative;min-height:320px;height:100%}.dsp-form-content .dsp-form-action{position:absolute;bottom:0;width:100%;display:inline-flex}.dsp-form-content .dsp-form-expert-search{bottom:16px;width:calc(100% - 32px);display:inline-flex}.small-field{width:121px}.medium-field{width:195px}.large-field{min-width:320px}.input-icon{color:rgba(11,11,11,.6)}@media (min-width:1200px){.dsp-fulltext-search{width:480px}.dsp-fulltext-search.with-project-filter{width:calc(480px + 160px)}.dsp-fulltext-search .dsp-project-filter,.dsp-fulltext-search .dsp-project-filter-button{width:160px}.dsp-search-menu{width:calc(480px - 32px)}.dsp-search-menu.with-project-filter{width:calc(480px + 160px - 32px)}.dsp-search-menu.with-advanced-search{width:calc(740px - 32px)}}@media (max-width:1200px) and (min-width:576px){.dsp-fulltext-search{width:360px}.dsp-fulltext-search.with-project-filter{width:calc(360px + 120px)}.dsp-fulltext-search .dsp-project-filter,.dsp-fulltext-search .dsp-project-filter-button{width:120px}.dsp-search-menu{width:calc(360px - 32px)}.dsp-search-menu.with-project-filter{width:calc(360px + 120px - 32px)}.dsp-search-menu.with-advanced-search{width:100vw}}:host{display:flex;height:72px}:host .advanced-expert-buttons{display:table;height:20px;margin-left:auto}:host .advanced-expert-buttons button{margin-left:3px;justify-self:end;line-height:18px!important;font-size:.8em;border-top-left-radius:0;border-top-right-radius:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}:host .advanced-expert-buttons button.active{background-color:rgba(11,11,11,.12)}@media (max-width:576px){:host .advanced-expert-buttons{display:none}}"]}]}],"members":{"projectfilter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":25,"character":5}}]}],"filterbyproject":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":33,"character":5}}]}],"limitToProject":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":40,"character":5}}]}],"advanced":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":46,"character":5}}]}],"expert":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":52,"character":5}}]}],"search":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":59,"character":5}}]}],"searchPanel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":61,"character":5},"arguments":["fullSearchPanel",{"static":false}]}]}],"searchMenu":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":63,"character":5},"arguments":["searchMenu",{"static":false}]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/cdk/overlay","name":"Overlay","line":73,"character":26},{"__symbolic":"reference","module":"@angular/core","name":"ViewContainerRef","line":74,"character":35}]}],"ngOnInit":[{"__symbolic":"method"}],"openPanelWithBackdrop":[{"__symbolic":"method"}],"getOverlayPosition":[{"__symbolic":"method"}],"updateLimitToProject":[{"__symbolic":"method"}],"emitSearch":[{"__symbolic":"method"}],"closeMenu":[{"__symbolic":"method"}]}},"PrevSearchItem":{"__symbolic":"interface"},"FulltextSearchComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":38,"character":1},"arguments":[{"selector":"dsp-fulltext-search","template":"<!-- DESKTOP / TABLET VERSION -->\n<!-- full-text search panel -->\n<div class=\"dsp-fulltext-search desktop-only\" [class.active]=\"searchPanelFocus\"\n    [class.with-project-filter]=\"projectfilter\" #fulltextSearchPanel cdkOverlayOrigin>\n\n    <div class=\"dsp-project-filter\" *ngIf=\"projectfilter\">\n        <button mat-button class=\"dsp-project-filter-button\" [matMenuTriggerFor]=\"selectProject\"\n            #btnToSelectProject=\"matMenuTrigger\" isIconButton>\n            <p class=\"mat-caption placeholder\">Filter by project</p>\n            <p class=\"label\">{{projectLabel}}</p>\n            <mat-icon class=\"icon\" matSuffix>keyboard_arrow_down</mat-icon>\n        </button>\n        <mat-menu #selectProject=\"matMenu\">\n            <div class=\"dsp-project-filter-menu\">\n                <button mat-menu-item class=\"center\"\n                    (click)=\"setProject();changeFocus()\">{{defaultProjectLabel}}</button>\n                <mat-divider></mat-divider>\n                <span *ngFor=\"let project of projects\">\n                    <button mat-menu-item class=\"project-item\" *ngIf=\"!doNotDisplay.includes(project.id)\"\n                        (click)=\"setProject(project);changeFocus()\" [matTooltip]=\"project.longname\"\n                        [matTooltipPosition]=\"'after'\">{{project.shortname}}</button>\n                </span>\n            </div>\n        </mat-menu>\n    </div>\n    <div class=\"dsp-fulltext-search-field\" [class.with-project-filter]=\"projectfilter\">\n        <input #fulltextSearchInput class=\"dsp-fulltext-search-input\" type=\"search\" [(ngModel)]=\"searchQuery\"\n            name=\"fulltext-search\" minlength=\"3\" autocomplete=\"off\" [placeholder]=\"'Search'\" (keyup.esc)=\"resetSearch()\"\n            (keyup.enter)=\"doSearch()\" (click)=\"setFocus()\">\n        <button class=\"dsp-fulltext-search-button suffix\" (click)=\"doSearch()\" type=\"submit\">\n            <mat-icon>search</mat-icon>\n        </button>\n    </div>\n</div>\n\n<!-- full-text search menu -->\n<ng-template #fulltextSearchMenu>\n\n    <div class=\"dsp-search-menu\" [class.with-project-filter]=\"projectfilter\">\n        <div class=\"dsp-menu-content\">\n            <mat-list class=\"dsp-previous-search-list\">\n                <div *ngFor=\"let item of prevSearch; let i=index\">\n                    <mat-list-item *ngIf=\"i<10\">\n                        <h4 mat-line (click)=\"doPrevSearch(item)\" class=\"dsp-previous-search-item\">\n                            <div class=\"dsp-project-filter-label\" [class.not-empty]=\"item.projectIri\"\n                                *ngIf=\"projectfilter && !error && projects?.length > 0\">\n                                <span *ngIf=\"item.projectIri\">{{item.projectLabel}}</span>\n                            </div>\n                            <div class=\"dsp-previous-search-query\" [class.fix-width]=\"projectfilter\">\n                                {{item.query}}\n                            </div>\n                        </h4>\n                        <button mat-icon-button (click)=\"resetPrevSearch(item)\">\n                            <mat-icon class=\"mat-list-close-icon\" aria-label=\"close\">close</mat-icon>\n                        </button>\n                    </mat-list-item>\n                </div>\n            </mat-list>\n\n            <div class=\"dsp-menu-action\" *ngIf=\"prevSearch\">\n                <mat-divider></mat-divider>\n                <button mat-button color=\"primary\" class=\"center clear-list-btn\" (click)=\"resetPrevSearch()\">Clear list\n                </button>\n            </div>\n        </div>\n    </div>\n\n</ng-template>\n\n\n<!-- PHONE VERSION -->\n<div class=\"mobile-only\">\n    <!-- search buttton only to open a menu with fulltext-search -->\n    <button mat-button class=\"dsp-fulltext-search-button\" [class.active]=\"displayPhonePanel\"\n        (click)=\"togglePhonePanel()\" type=\"button\">\n        <mat-icon>{{displayPhonePanel ? 'close' : 'search'}}</mat-icon>\n    </button>\n\n    <div class=\"dsp-fulltext-search-mobile-panel\" *ngIf=\"displayPhonePanel\">\n        <div class=\"dsp-project-filter\" *ngIf=\"projectfilter\">\n            <button mat-stroked-button class=\"dsp-project-filter-button\" [matMenuTriggerFor]=\"selectProject\"\n                #btnToSelectProject=\"matMenuTrigger\" isIconButton>\n                <p class=\"mat-caption placeholder\">Filter by project</p>\n                <p class=\"label\">{{projectLabel}}</p>\n                <mat-icon class=\"icon\" matSuffix>keyboard_arrow_down</mat-icon>\n            </button>\n            <mat-menu #selectProject=\"matMenu\">\n                <div class=\"dsp-project-filter-menu\">\n                    <button mat-menu-item class=\"center\"\n                        (click)=\"setProject();changeFocus()\">{{defaultProjectLabel}}</button>\n                    <mat-divider></mat-divider>\n                    <span *ngFor=\"let project of projects\">\n                        <button mat-menu-item *ngIf=\"!doNotDisplay.includes(project.id)\"\n                            (click)=\"setProject(project);changeFocus()\">\n                            {{project.shortname}}\n                        </button>\n                    </span>\n                </div>\n            </mat-menu>\n        </div>\n\n        <div class=\"dsp-fulltext-search-field\" [class.with-project-filter]=\"projectfilter\">\n            <input #fulltextSearchInputMobile class=\"dsp-fulltext-search-input\" type=\"search\" [(ngModel)]=\"searchQuery\"\n                name=\"fulltext-search\" minlength=\"3\" autocomplete=\"off\" [placeholder]=\"'Search'\" (click)=\"setFocus()\"\n                (keyup.esc)=\"resetSearch()\" (keyup.enter)=\"doSearch()\">\n            <button mat-button color=\"primary\" class=\"dsp-fulltext-search-button\"\n                (click)=\"doSearch()\" type=\"submit\">\n                Search\n            </button>\n        </div>\n\n        <mat-divider></mat-divider>\n\n        <div class=\"dsp-search-menu\" [class.with-project-filter]=\"projectfilter\">\n            <div class=\"dsp-menu-content\">\n                <mat-list class=\"dsp-previous-search-list\">\n                    <div *ngFor=\"let item of prevSearch; let i=index\">\n                        <mat-list-item *ngIf=\"i<10\">\n                            <h4 mat-line (click)=\"doPrevSearch(item)\" class=\"dsp-previous-search-item\">\n                                <div class=\"dsp-project-filter-label\" [class.not-empty]=\"item.projectIri\"\n                                    *ngIf=\"projectfilter && !error && projects?.length > 0\">\n                                    <span *ngIf=\"item.projectIri\">{{item.projectLabel}}</span>\n                                </div>\n                                <div class=\"dsp-previous-search-query\" [class.fix-width]=\"projectfilter\">\n                                    {{item.query}}\n                                </div>\n                            </h4>\n                            <button mat-icon-button (click)=\"resetPrevSearch(item)\">\n                                <mat-icon class=\"mat-list-close-icon\" aria-label=\"close\">close</mat-icon>\n                            </button>\n                        </mat-list-item>\n                    </div>\n                </mat-list>\n            </div>\n            <div class=\"dsp-menu-action\">\n                <mat-divider></mat-divider>\n                <button mat-button color=\"primary\" class=\"center clear-list-btn\" (click)=\"togglePhonePanel()\">Cancel\n                </button>\n            </div>\n        </div>\n\n    </div>\n</div>\n","styles":["@media (max-width:576px){.desktop-only{display:none!important}}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration,input[type=search]::-webkit-search-results-button,input[type=search]::-webkit-search-results-decoration{display:none}input[type=search]{-moz-appearance:none;-webkit-appearance:none}.dsp-search-menu{box-shadow:0 1px 3px rgba(0,0,0,.5);background-color:#f9f9f9;border-radius:4px;overflow-y:auto;min-height:320px;margin-top:6px;padding:16px;z-index:-1;position:relative}.dsp-search-menu .dsp-menu-header{background-color:#f9f9f9;border-top-left-radius:4px;border-top-right-radius:4px;display:inline-flex;height:48px;width:100%;margin-bottom:12px}.dsp-search-menu .dsp-menu-header .dsp-menu-title h4{margin:12px 0}.dsp-search-menu .dsp-menu-action{position:absolute;bottom:0;width:calc(100% - 32px)}.dsp-search-menu .dsp-menu-action .center{display:block;margin:12px auto}.dsp-form-content{width:100%;position:relative;min-height:320px;height:100%}.dsp-form-content .dsp-form-action{position:absolute;bottom:0;width:100%;display:inline-flex}.dsp-form-content .dsp-form-expert-search{bottom:16px;width:calc(100% - 32px);display:inline-flex}.small-field{width:121px}.medium-field{width:195px}.large-field{min-width:320px}.input-icon{color:rgba(11,11,11,.6)}@media (min-width:1200px){.dsp-fulltext-search{width:480px}.dsp-fulltext-search.with-project-filter{width:calc(480px + 160px)}.dsp-fulltext-search .dsp-project-filter,.dsp-fulltext-search .dsp-project-filter-button{width:160px}.dsp-search-menu{width:calc(480px - 32px)}.dsp-search-menu.with-project-filter{width:calc(480px + 160px - 32px)}.dsp-search-menu.with-advanced-search{width:calc(740px - 32px)}}@media (max-width:1200px) and (min-width:576px){.dsp-fulltext-search{width:360px}.dsp-fulltext-search.with-project-filter{width:calc(360px + 120px)}.dsp-fulltext-search .dsp-project-filter,.dsp-fulltext-search .dsp-project-filter-button{width:120px}.dsp-search-menu{width:calc(360px - 32px)}.dsp-search-menu.with-project-filter{width:calc(360px + 120px - 32px)}.dsp-search-menu.with-advanced-search{width:100vw}}.dsp-fulltext-search{border-radius:4px;height:40px;position:relative;z-index:100;background-color:#f9f9f9}.dsp-fulltext-search.active{box-shadow:0 1px 3px rgba(0,0,0,.5)}.dsp-fulltext-search .dsp-project-filter-button{font-size:inherit;overflow:hidden;text-overflow:ellipsis;border-top-left-radius:4px;border-top-right-radius:0;border-bottom-left-radius:4px;border-bottom-right-radius:0;margin:1px}.dsp-fulltext-search-field{background-color:#f9f9f9;border-radius:4px;display:inline-flex;flex:1;position:relative;z-index:10;width:100%;margin:1px}.dsp-fulltext-search-field.with-project-filter{border-top-left-radius:0;border-bottom-left-radius:0}.dsp-fulltext-search-field .dsp-fulltext-search-input{border-style:none;font-size:14pt;height:38px;padding-left:12px;width:100%}.dsp-fulltext-search-field .dsp-fulltext-search-input:active,.dsp-fulltext-search-field .dsp-fulltext-search-input:focus{outline:none}.dsp-fulltext-search-field .dsp-fulltext-search-button{background-color:#fff}.dsp-fulltext-search-field .suffix{border-top-left-radius:0;border-top-right-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:0;margin:1px 0 1px -3px}.dsp-fulltext-search-field .prefix{border-top-left-radius:4px;border-top-right-radius:0;border-bottom-right-radius:0;border-bottom-left-radius:4px;margin:1px 0 1px 3px}.dsp-fulltext-search-field .prefix,.dsp-fulltext-search-field .suffix{border-style:none;color:rgba(41,41,41,.4);cursor:pointer;height:38px;outline:none;position:relative;width:39px}.dsp-fulltext-search-field .prefix.disabled,.dsp-fulltext-search-field .suffix.disabled{cursor:auto}.dsp-fulltext-search-field .prefix:active,.dsp-fulltext-search-field .suffix:active{color:#515151}.dsp-search-menu{height:100%}.dsp-search-menu .dsp-menu-content{display:block}.dsp-search-menu .dsp-menu-content .dsp-previous-search-list{padding-bottom:8px}.dsp-search-menu .dsp-menu-content .dsp-previous-search-list .mat-list-item .dsp-previous-search-item{cursor:pointer;padding:12px!important}.dsp-search-menu .dsp-menu-content .dsp-previous-search-list .mat-list-item:hover{background-color:#b8b8b8}.dsp-search-menu .dsp-menu-content .dsp-previous-search-list .mat-list-item:hover .mat-icon{display:inline-block}.dsp-search-menu .dsp-menu-content .dsp-previous-search-list .mat-list-item .mat-icon{display:none}.dsp-search-menu .dsp-menu-content .dsp-previous-search-list .mat-list-item .dsp-previous-search-item{display:inherit}.dsp-search-menu .dsp-menu-content .dsp-previous-search-list .mat-list-item .dsp-previous-search-item .dsp-project-filter-label{overflow:hidden;text-overflow:ellipsis;width:160px}.dsp-search-menu .dsp-menu-content .dsp-previous-search-list .mat-list-item .dsp-previous-search-item .dsp-project-filter-label.not-empty:before{content:\"[\"}.dsp-search-menu .dsp-menu-content .dsp-previous-search-list .mat-list-item .dsp-previous-search-item .dsp-project-filter-label.not-empty:after{content:\"]\"}.dsp-search-menu .dsp-menu-content .dsp-previous-search-list .mat-list-item .dsp-previous-search-item .dsp-previous-search-query{font-weight:700;overflow:hidden;text-overflow:ellipsis}.dsp-search-menu .dsp-menu-content .dsp-previous-search-list .mat-list-item .dsp-previous-search-item .dsp-previous-search-query.fix-width{width:calc(100% - 160px)}.dsp-project-filter-menu{width:160px}.dsp-project-filter-menu .mat-menu-item{text-transform:capitalize}.dsp-project-filter-button{height:38px!important;display:block;text-align:left}.dsp-project-filter-button .placeholder{margin:0;padding:0;font-size:x-small}.dsp-project-filter-button .icon,.dsp-project-filter-button .label{display:inline;position:relative}.dsp-project-filter-button .label{top:-12px;font-size:smaller;text-transform:capitalize}.dsp-project-filter-button .icon{top:-6px;float:right}@media (min-width:576px){.desktop-only{display:flex}.mobile-only{display:none}}@media (max-width:576px){.desktop-only{display:none}.mobile-only{display:block}.dsp-fulltext-search-mobile-panel{height:100%!important;width:100%!important;background-color:hsla(0,0%,85.5%,.96);z-index:100;position:fixed;display:block;border-radius:0;top:0;left:0}.dsp-fulltext-search-mobile-panel .dsp-fulltext-search-field,.dsp-fulltext-search-mobile-panel .dsp-project-filter{background:none;margin:12px auto;max-width:480px;width:90%;display:flex}.dsp-fulltext-search-mobile-panel .dsp-fulltext-search-field .dsp-project-filter-button,.dsp-fulltext-search-mobile-panel .dsp-project-filter .dsp-project-filter-button{width:100%}.dsp-fulltext-search-mobile-panel .dsp-fulltext-search-button,.dsp-fulltext-search-mobile-panel .dsp-fulltext-search-input{border-radius:4px}.dsp-fulltext-search-mobile-panel .dsp-fulltext-search-input{margin-right:12px}.dsp-fulltext-search-mobile-panel .dsp-fulltext-search-button{width:96px;border:.8px solid #b8b8b8}.dsp-project-filter-menu{width:100vw}.dsp-search-menu{height:auto;box-shadow:none;background-color:transparent;position:absolute;top:128px;height:calc(100vh - 128px);width:100%;padding:0}.dsp-search-menu .dsp-menu-content{text-align:left;overflow-y:auto}.dsp-search-menu .dsp-menu-action{position:absolute;bottom:12px}::ng-deep .cdk-overlay-pane .mat-menu-panel{box-shadow:none;max-width:100%!important}::ng-deep .cdk-overlay-pane .mat-select-panel-wrap{margin-top:20%}::ng-deep .cdk-overlay-pane .mat-select-panel-wrap .mat-select-panel{max-height:100%!important}}"]}]}],"members":{"projectfilter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":50,"character":5}}]}],"filterbyproject":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":58,"character":5}}]}],"limitToProject":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":65,"character":5}}]}],"limitToProjectChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":71,"character":5}}]}],"search":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":78,"character":5}}]}],"searchPanel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":80,"character":5},"arguments":["fulltextSearchPanel",{"static":false}]}]}],"searchInput":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":82,"character":5},"arguments":["fulltextSearchInput",{"static":false}]}]}],"searchInputMobile":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":83,"character":5},"arguments":["fulltextSearchInputMobile",{"static":false}]}]}],"searchMenu":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":85,"character":5},"arguments":["fulltextSearchMenu",{"static":false}]}]}],"selectProject":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":87,"character":5},"arguments":["btnToSelectProject",{"static":false}]}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":126,"character":9},"arguments":[{"__symbolic":"reference","name":"DspApiConnectionToken"}]}],null,null,null,null],"parameters":[{"__symbolic":"reference","module":"@dasch-swiss/dsp-js","name":"KnoraApiConnection","line":126,"character":66},{"__symbolic":"reference","name":"NotificationService"},{"__symbolic":"reference","name":"SortingService"},{"__symbolic":"reference","module":"@angular/cdk/overlay","name":"Overlay","line":129,"character":26},{"__symbolic":"reference","module":"@angular/core","name":"ViewContainerRef","line":130,"character":35}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"getAllProjects":[{"__symbolic":"method"}],"getProject":[{"__symbolic":"method"}],"setProject":[{"__symbolic":"method"}],"openPanelWithBackdrop":[{"__symbolic":"method"}],"getOverlayPosition":[{"__symbolic":"method"}],"doSearch":[{"__symbolic":"method"}],"resetSearch":[{"__symbolic":"method"}],"setFocus":[{"__symbolic":"method"}],"doPrevSearch":[{"__symbolic":"method"}],"resetPrevSearch":[{"__symbolic":"method"}],"changeFocus":[{"__symbolic":"method"}],"emitSearchParams":[{"__symbolic":"method"}],"togglePhonePanel":[{"__symbolic":"method"}]}},"forbiddenTermValidator":{"__symbolic":"function","parameters":["termRe"],"value":{"__symbolic":"error","message":"Lambda not supported","line":14,"character":11,"module":"./lib/search/expert-search/expert-search.component"}},"ExpertSearchComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":20,"character":1},"arguments":[{"selector":"dsp-expert-search","template":"<div class=\"expert-search-container\">\n    <form [formGroup]=\"expertSearchForm\" class=\"expert-search-form kui-form-content\">\n        <mat-form-field class=\"textarea-field large-field\">\n            <textarea matInput [formControlName]=\"'gravsearchquery'\" cdkTextareaAutosize cdkAutosizeMinRows=\"12\"\n                cdkAutosizeMaxRows=\"24\" class=\"textarea-field-content\" placeholder=\"Write your Gravsearch query\">\n            </textarea>\n            <mat-error *ngIf=\"expertSearchForm.controls.gravsearchquery.hasError('forbiddenName')\">\n                The <strong>OFFSET</strong> should not be provided in the query as it will be added automatically during\n                the submission of the form.\n            </mat-error>\n            <mat-error *ngIf=\"expertSearchForm.controls.gravsearchquery.hasError('required')\">\n                A Gravsearch query is <strong>required</strong>.\n            </mat-error>\n        </mat-form-field>\n\n        <div class=\"kui-form-action\">\n            <button class=\"reset\" mat-button type=\"button\" (click)=\"resetForm()\">\n                Reset\n            </button>\n            <span class=\"fill-remaining-space\"></span>\n            <button mat-raised-button color=\"primary\" type=\"submit\" [disabled]=\"!expertSearchForm.valid\"\n                (click)=\"submitQuery()\">\n                Search\n            </button>\n        </div>\n\n    </form>\n</div>\n","styles":[".expert-search-container .expert-search-form{min-width:150px;width:100%;margin:auto}.expert-search-container .expert-search-form .textarea-field{width:calc(100% - 24px);display:block;margin-bottom:24px;background:#fff;padding:12px}.expert-search-container .expert-search-form .form-panel{width:100%}.mat-input-element{font-family:Courier New,Courier,monospace}.form-content{margin:24px auto;width:472px}.form-content .large-field{min-width:472px}"]}]}],"members":{"search":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":32,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":54,"character":9},"arguments":[{"__symbolic":"reference","name":"DspApiConfigToken"}]}],null,null],"parameters":[{"__symbolic":"reference","module":"@dasch-swiss/dsp-js","name":"KnoraApiConfig","line":54,"character":58},{"__symbolic":"reference","name":"AdvancedSearchParamsService"},{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":56,"character":21}]}],"ngOnInit":[{"__symbolic":"method"}],"resetForm":[{"__symbolic":"method"}],"submitQuery":[{"__symbolic":"method"}],"_generateGravsearch":[{"__symbolic":"method"}],"getIriBaseUrl":[{"__symbolic":"method"}]}},"AdvancedSearchComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":21,"character":1},"arguments":[{"selector":"dsp-advanced-search","template":"<form *ngIf=\"!errorMessage\" [formGroup]=\"form\" (ngSubmit)=\"submit()\" class=\"dsp-form-content\">\n\n    <div *ngIf=\"ontologiesMetadata?.ontologies.length > 0\">\n        <dsp-select-ontology [formGroup]=\"form\" [ontologiesMetadata]=\"ontologiesMetadata\"\n                             (ontologySelected)=\"setActiveOntology($event)\"></dsp-select-ontology>\n    </div>\n\n    <dsp-resource-and-property-selection *ngIf=\"activeOntology !== undefined\" #resAndPropSel [formGroup]=\"form\" [activeOntology]=\"activeOntology\" [topLevel]=\"true\">\n    </dsp-resource-and-property-selection>\n\n    <div class=\"dsp-form-action\">\n        <button class=\"reset\" mat-button type=\"button\" (click)=\"resourceAndPropertySelection?.resetForm()\" [disabled]=\"this.activeOntology === undefined\">\n            Reset\n        </button>\n        <span class=\"fill-remaining-space\"></span>\n        <button class=\"advanced-search-button\" mat-raised-button color=\"primary\" type=\"submit\" [disabled]=\"!formValid\">\n            Search\n        </button>\n    </div>\n\n</form>\n\n<dsp-message *ngIf=\"errorMessage\" [apiError]=\"errorMessage\" [size]=\"'medium'\"></dsp-message>\n","styles":[""]}]}],"members":{"limitToProject":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":33,"character":5}}]}],"search":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":40,"character":5}}]}],"resourceAndPropertySelection":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":57,"character":5},"arguments":["resAndPropSel"]}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":60,"character":9},"arguments":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":60,"character":16}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":61,"character":9},"arguments":[{"__symbolic":"reference","name":"DspApiConnectionToken"}]}],null,null],"parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":60,"character":42},{"__symbolic":"reference","module":"@dasch-swiss/dsp-js","name":"KnoraApiConnection","line":61,"character":66},{"__symbolic":"reference","name":"NotificationService"},{"__symbolic":"reference","name":"GravsearchGenerationService"}]}],"ngOnInit":[{"__symbolic":"method"}],"ngAfterViewChecked":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"initializeOntologies":[{"__symbolic":"method"}],"setActiveOntology":[{"__symbolic":"method"}],"_validateForm":[{"__symbolic":"method"}],"submit":[{"__symbolic":"method"}]}},"ComparisonOperator":{"__symbolic":"interface"},"Equals":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor"}],"getClassName":[{"__symbolic":"method"}]}},"NotEquals":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor"}],"getClassName":[{"__symbolic":"method"}]}},"GreaterThanEquals":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor"}],"getClassName":[{"__symbolic":"method"}]}},"GreaterThan":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor"}],"getClassName":[{"__symbolic":"method"}]}},"LessThan":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor"}],"getClassName":[{"__symbolic":"method"}]}},"LessThanEquals":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor"}],"getClassName":[{"__symbolic":"method"}]}},"Exists":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor"}],"getClassName":[{"__symbolic":"method"}]}},"Like":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor"}],"getClassName":[{"__symbolic":"method"}]}},"Match":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor"}],"getClassName":[{"__symbolic":"method"}]}},"ComparisonOperatorAndValue":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"any"},{"__symbolic":"reference","name":"any"}]}]}},"Value":{"__symbolic":"interface"},"ValueLiteral":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"}]}],"toSparql":[{"__symbolic":"method"}]}},"IRI":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"}]}],"toSparql":[{"__symbolic":"method"}]}},"LinkedResource":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"Array","arguments":[{"__symbolic":"reference","name":"PropertyWithValue"}]},{"__symbolic":"reference","name":"string"}]}],"toSparql":[{"__symbolic":"method"}]}},"PropertyValue":{"__symbolic":"interface"},"PropertyWithValue":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@dasch-swiss/dsp-js","name":"ResourcePropertyDefinition","line":267,"character":27},{"__symbolic":"reference","name":"ComparisonOperatorAndValue"},{"__symbolic":"reference","name":"boolean"}]}]}},"AutocompleteItem":{"__symbolic":"interface"},"AdvancedSearchParams":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"error","message":"Expression form not supported","line":16,"character":43,"module":"./lib/search/services/advanced-search-params.service"}]}]}},"AdvancedSearchParamsService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":22,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}],"changeSearchParamsMsg":[{"__symbolic":"method"}],"getSearchParams":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"GravsearchGenerationService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":10,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"AdvancedSearchParamsService"}]}],"makeHandlePropsMethod":[{"__symbolic":"method"}],"createGravsearchQuery":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"ɵa":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":5,"character":1}}],"members":{"displayValue":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":13,"character":5}}]}],"mode":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":18,"character":5}}]}],"parentForm":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":23,"character":5}}]}],"formName":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":28,"character":5}}]}],"valueRequiredValidator":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":33,"character":5}}]}],"standardValueComparisonFunc":[{"__symbolic":"method"}],"getInitValue":[{"__symbolic":"method"}],"getInitComment":[{"__symbolic":"method"}],"resetFormControl":[{"__symbolic":"method"}],"unsubscribeFromValueChanges":[{"__symbolic":"method"}],"updateCommentVisibility":[{"__symbolic":"method"}],"toggleCommentVisibility":[{"__symbolic":"method"}],"getNewValue":[{"__symbolic":"method"}],"getUpdatedValue":[{"__symbolic":"method"}],"addToParentFormGroup":[{"__symbolic":"method"}],"removeFromParentFormGroup":[{"__symbolic":"method"}],"isEmptyVal":[{"__symbolic":"method"}]}},"ɵb":{"__symbolic":"class","extends":{"__symbolic":"error","message":"Symbol reference expected","line":35,"character":42,"module":"./lib/viewer/values/color-value/color-picker/color-picker.component"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":27,"character":1},"arguments":[{"selector":"dsp-color-picker","providers":[{"provide":{"__symbolic":"reference","module":"@angular/material/form-field","name":"MatFormFieldControl","line":32,"character":19},"useExisting":{"__symbolic":"reference","name":"ɵb"}}],"template":"<div [formGroup]=\"colorForm\" class=\"color-picker-container\">\n    <mat-form-field appearance=\"outline\" [floatLabel]=\"'always'\" class=\"child-input-component full-width\">\n        <mat-label>{{ value }}</mat-label>\n        <!-- check the ngx-color-picker doc to know more about the options - https://www.npmjs.com/package/ngx-color-picker -->\n        <input\n            matInput\n            class=\"color-picker-input color\"\n            [formControlName]=\"'color'\"\n            [(colorPicker)]=\"value\"\n            [style.background]=\"value\"\n            [style.color]=\"value\"\n            (colorPickerChange)=\"_handleInput()\"\n            [cpOutputFormat]=\"'hex'\"\n            [cpFallbackColor]=\"'#ff0000'\"\n            [cpDisabled]=\"false\"\n            [errorStateMatcher]=\"matcher\"\n            readonly/>\n        <mat-error *ngIf=\"colorForm.controls.color.hasError('required')\">\n            Color is <strong>required</strong>\n        </mat-error>\n    </mat-form-field>\n</div>\n","styles":[".child-input-component{height:48px}"]}]}],"members":{"errorStateMatcher":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":43,"character":5}}]}],"id":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":45,"character":5}}]}],"describedBy":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":47,"character":5},"arguments":["attr.aria-describedby"]}]}],"shouldLabelFloat":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":64,"character":5},"arguments":["class.floating"]}]}],"required":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":69,"character":5}}]}],"disabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":79,"character":5}}]}],"placeholder":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":90,"character":5}}]}],"setDescribedByIds":[{"__symbolic":"method"}],"value":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":104,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":124,"character":9}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Self","line":124,"character":21}}],null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":127,"character":9}}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":128,"character":9}}],null],"parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":123,"character":12},{"__symbolic":"reference","module":"@angular/forms","name":"NgControl","line":124,"character":46},{"__symbolic":"reference","module":"@angular/cdk/a11y","name":"FocusMonitor","line":125,"character":21},{"__symbolic":"reference","name":"ElementRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":126,"character":35,"context":{"typeName":"HTMLElement"},"module":"./lib/viewer/values/color-value/color-picker/color-picker.component"}]},{"__symbolic":"reference","module":"@angular/forms","name":"NgForm","line":127,"character":33},{"__symbolic":"reference","module":"@angular/forms","name":"FormGroupDirective","line":128,"character":38},{"__symbolic":"reference","module":"@angular/material/core","name":"ErrorStateMatcher","line":129,"character":35}]}],"ngDoCheck":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"onContainerClick":[{"__symbolic":"method"}],"writeValue":[{"__symbolic":"method"}],"registerOnChange":[{"__symbolic":"method"}],"registerOnTouched":[{"__symbolic":"method"}],"setDisabledState":[{"__symbolic":"method"}],"_handleInput":[{"__symbolic":"method"}]},"statics":{"nextId":0}},"ɵc":{"__symbolic":"class","extends":{"__symbolic":"error","message":"Symbol reference expected","line":95,"character":40,"module":"./lib/viewer/values/date-value/date-input/date-input.component"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":89,"character":1},"arguments":[{"selector":"dsp-date-input","providers":[{"provide":{"__symbolic":"reference","module":"@angular/material/form-field","name":"MatFormFieldControl","line":93,"character":27},"useExisting":{"__symbolic":"reference","name":"ɵc"}}],"template":"<div [formGroup]=\"form\" class=\"date-input-container\">\n\n    <mat-checkbox class=\"period-checkbox\" [formControlName]=\"'isPeriod'\" (change)=\"_handleInput()\">\n        is time period\n    </mat-checkbox>\n\n    <div class=\"date-form-grid\">\n        <div class=\"date-form-field\">\n            <dsp-jdn-datepicker [activeCalendar]=\"startDateControl.value?.calendarName\">\n                <mat-form-field class=\"start\">\n                    <mat-label>Choose a <span *ngIf=\"isPeriodControl.value\">start</span> date\n                        <span class=\"calendar\" *ngIf=\"startDateControl.value\">({{startDateControl.value?.calendarName}})</span>\n                    </mat-label>\n                    <input matInput [matDatepicker]=\"picker1\" [formControlName]=\"'dateStart'\"\n                        [errorStateMatcher]=\"matcher\" (dateChange)=\"_handleInput()\" readonly placeholder=\"Start\">\n                    <mat-datepicker-toggle matSuffix [for]=\"picker1\"></mat-datepicker-toggle>\n                    <mat-datepicker #picker1 [calendarHeaderComponent]=\"calendarHeaderComponent\"></mat-datepicker>\n                </mat-form-field>\n            </dsp-jdn-datepicker>\n        </div>\n\n        <div class=\"date-form-field\">\n            <dsp-jdn-datepicker [activeCalendar]=\"endDateControl.value?.calendarName\">\n                <mat-form-field *ngIf=\"isPeriodControl.value\" class=\"end\">\n                    <mat-label>Choose an end date\n                        <span class=\"calendar\" *ngIf=\"endDateControl.value\">({{endDateControl.value?.calendarName}})</span>\n                    </mat-label>\n                    <input matInput [matDatepicker]=\"picker2\" [formControlName]=\"'dateEnd'\"\n                        (dateChange)=\"_handleInput()\" readonly>\n                    <mat-datepicker-toggle matSuffix [for]=\"picker2\"></mat-datepicker-toggle>\n                    <mat-datepicker #picker2 [calendarHeaderComponent]=\"calendarHeaderComponent\"></mat-datepicker>\n                </mat-form-field>\n            </dsp-jdn-datepicker>\n        </div>\n    </div>\n\n    <div class=\"date-form-error\">\n        <mat-error *ngIf=\"startDateControl.hasError('required')\">\n            <span class=\"custom-error-message\">Start date is <strong>required</strong></span>\n        </mat-error>\n        <mat-error *ngIf=\"startDateControl.hasError('sameCalendarRequired') && (startDateControl.value !== null || endDateControl.value !== null)\">\n            <span class=\"custom-error-message\">In a period, start and end dates are <strong>required</strong> and must use the same\n                <strong>calendar</strong></span>\n        </mat-error>\n        <mat-error *ngIf=\"startDateControl.hasError('periodStartEnd') && startDateControl.value !== null && endDateControl.value !== null\">\n            <span class=\"custom-error-message\">In a period, start must be <strong>before</strong> end</span>\n        </mat-error>\n    </div>\n\n</div>\n","styles":["@charset \"UTF-8\";@media (max-width:576px){.desktop-only{display:none!important}}.read-mode-view{font:400 15px/24px sans-serif}.read-mode-view .rm-comment,.read-mode-view .rm-value{display:block;margin:0}.child-value-component,.value-component-comment{display:block}.parent-component-wrapper .value-component-comment{margin-top:-2em}.parent-value-component .child-value-component .mat-form-field-wrapper .mat-form-field-infix{border-top:0 solid transparent}.child-input-component{display:inline-block;vertical-align:bottom;width:49%}.child-input-component:nth-child(2){padding-left:2%}.child-input-component.full-width{width:100%}.custom-error-message{font-size:12px;margin-top:-1em;padding-bottom:1em}.grid-container{display:grid;grid-template-columns:70% 30%;grid-template-rows:auto auto}.crud-buttons,.value-component{vertical-align:top}.value-component{grid-row-start:1;grid-row-end:auto;grid-column-start:1;grid-column-end:2;position:relative}.value-component .action-bubble{position:absolute;right:0;top:-20px;border:1px solid #e4e4e4;border-radius:10px;padding:0 1px;background-color:#e4e4e4;z-index:2;box-shadow:1px 4px 5px 0 #949494}.value-component .action-bubble .button-container button.mat-button-disabled .mat-icon{color:#aaa}.value-component .action-bubble .button-container button{cursor:pointer;border:none;padding:2px;outline:none;background-color:transparent;color:#000;margin:0 2px;border-radius:10px;transition:background-color .5s ease-out;min-width:inherit;line-height:normal}.value-component .action-bubble .button-container button .material-icons{font-size:18px}.value-component .action-bubble .button-container button .mat-icon{width:18px;height:18px;vertical-align:middle}.value-component .action-bubble .button-container button.info{cursor:default}.value-component .action-bubble .button-container button:hover{background-color:#c7c7c7}.value-component.highlighted{background-color:#f5f5f5}.crud-buttons{grid-column-start:2;grid-column-end:3}.crud-buttons,.mat-error{grid-row-start:1;grid-row-end:auto}.mat-error{grid-column-start:3;grid-column-end:end}button.cancel,button.save{cursor:pointer;border:none;padding:0;margin-left:1em;outline:none;background-color:transparent;color:#000}button.save:disabled{color:#adadad;cursor:default}button.cancel .mat-icon,button.cancel .material-icons,button.save .mat-icon,button.save .material-icons{font-size:18px}.deletion-dialog .title{font-weight:700;font-size:18px;text-align:center}.deletion-dialog .action-buttons{float:right}.deletion-dialog .action-buttons .cancel{padding:0 16px}.deletion-dialog-message{font-size:16px;background-color:#ededf5;border:1px solid #d8d8df;border-radius:5px;padding:20px 10px;text-align:center}.deletion-dialog-message .deletion-comment{min-width:80%}.ck-content code{font-family:monospace!important}.ck-content pre{background-color:inherit!important}code,pre{font-family:monospace!important;background-color:hsla(0,0%,78%,.3);padding:.15em;border-radius:2px}.period-checkbox{display:inline-block;padding-bottom:20px}.date-form-grid{display:grid;grid-template-columns:49% 49%;grid-template-rows:auto;-moz-column-gap:12px;column-gap:12px}.date-form-error{margin-top:-16px}"]}]}],"members":{"id":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":101,"character":5}}]}],"valueRequiredValidator":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":112,"character":5}}]}],"shouldLabelFloat":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":124,"character":5},"arguments":["class.floating"]}]}],"required":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":129,"character":5}}]}],"disabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":141,"character":5}}]}],"placeholder":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":154,"character":5}}]}],"describedBy":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":166,"character":5},"arguments":["attr.aria-describedby"]}]}],"setDescribedByIds":[{"__symbolic":"method"}],"value":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":172,"character":5}}]}],"createCalendarDate":[{"__symbolic":"method"}],"errorStateMatcher":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":256,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":260,"character":9}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Self","line":260,"character":21}}],null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":263,"character":9}}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":264,"character":9}}],null],"parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":259,"character":12},{"__symbolic":"reference","module":"@angular/forms","name":"NgControl","line":260,"character":46},{"__symbolic":"reference","module":"@angular/cdk/a11y","name":"FocusMonitor","line":261,"character":21},{"__symbolic":"reference","name":"ElementRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":262,"character":35,"context":{"typeName":"HTMLElement"},"module":"./lib/viewer/values/date-value/date-input/date-input.component"}]},{"__symbolic":"reference","module":"@angular/forms","name":"NgForm","line":263,"character":33},{"__symbolic":"reference","module":"@angular/forms","name":"FormGroupDirective","line":264,"character":38},{"__symbolic":"reference","module":"@angular/material/core","name":"ErrorStateMatcher","line":265,"character":35}]}],"ngOnInit":[{"__symbolic":"method"}],"ngDoCheck":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"onContainerClick":[{"__symbolic":"method"}],"writeValue":[{"__symbolic":"method"}],"registerOnChange":[{"__symbolic":"method"}],"registerOnTouched":[{"__symbolic":"method"}],"setDisabledState":[{"__symbolic":"method"}],"_handleInput":[{"__symbolic":"method"}]},"statics":{"nextId":0}},"ɵd":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":29,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/common/http","name":"HttpClient","line":35,"character":32},{"__symbolic":"reference","name":"AppInitService"}]}],"resolveGeonameID":[{"__symbolic":"method"}],"searchPlace":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"ɵe":{"__symbolic":"class","extends":{"__symbolic":"error","message":"Symbol reference expected","line":56,"character":44,"module":"./lib/viewer/values/interval-value/interval-input/interval-input.component"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":50,"character":1},"arguments":[{"selector":"dsp-interval-input","providers":[{"provide":{"__symbolic":"reference","module":"@angular/material/form-field","name":"MatFormFieldControl","line":54,"character":27},"useExisting":{"__symbolic":"reference","name":"ɵe"}}],"template":"<div [formGroup]=\"form\" class=\"interval-input-container\">\n  <mat-form-field class=\"child-input-component\">\n    <input matInput class=\"interval-input-element start\" [formControlName]=\"'start'\" type=\"number\" aria-label=\"start\" (input)=\"_handleInput()\" [placeholder]=\"intervalStartLabel\" [errorStateMatcher]=\"matcher\">\n    <mat-error *ngIf=\"form.controls.start.hasError('required')\">\n      Start is <strong>required</strong>.\n    </mat-error>\n  </mat-form-field>\n  <mat-form-field class=\"child-input-component\">\n    <input matInput class=\"interval-input-element end\" [formControlName]=\"'end'\" type=\"number\" aria-label=\"end\" (input)=\"_handleInput()\" [placeholder]=\"intervalEndLabel\" [errorStateMatcher]=\"matcher\">\n    <mat-error *ngIf=\"form.controls.end.hasError('required')\">\n      End is <strong>required</strong>.\n    </mat-error>\n  </mat-form-field>\n\n  <div class=\"date-form-error\">\n    <mat-error *ngIf=\"((startIntervalControl.hasError('startEndSameTypeRequired') || endIntervalControl.hasError('startEndSameTypeRequired')))\">\n        <span class=\"custom-error-message\">An interval must have a <strong>start</strong> and <strong>end</strong></span>\n    </mat-error>\n  </div>\n</div>\n","styles":["@charset \"UTF-8\";@media (max-width:576px){.desktop-only{display:none!important}}.read-mode-view{font:400 15px/24px sans-serif}.read-mode-view .rm-comment,.read-mode-view .rm-value{display:block;margin:0}.child-value-component,.value-component-comment{display:block}.parent-component-wrapper .value-component-comment{margin-top:-2em}.parent-value-component .child-value-component .mat-form-field-wrapper .mat-form-field-infix{border-top:0 solid transparent}.child-input-component{display:inline-block;vertical-align:bottom;width:49%}.child-input-component:nth-child(2){padding-left:2%}.child-input-component.full-width{width:100%}.custom-error-message{font-size:12px;margin-top:-1em;padding-bottom:1em}.grid-container{display:grid;grid-template-columns:70% 30%;grid-template-rows:auto auto}.crud-buttons,.value-component{vertical-align:top}.value-component{grid-row-start:1;grid-row-end:auto;grid-column-start:1;grid-column-end:2;position:relative}.value-component .action-bubble{position:absolute;right:0;top:-20px;border:1px solid #e4e4e4;border-radius:10px;padding:0 1px;background-color:#e4e4e4;z-index:2;box-shadow:1px 4px 5px 0 #949494}.value-component .action-bubble .button-container button.mat-button-disabled .mat-icon{color:#aaa}.value-component .action-bubble .button-container button{cursor:pointer;border:none;padding:2px;outline:none;background-color:transparent;color:#000;margin:0 2px;border-radius:10px;transition:background-color .5s ease-out;min-width:inherit;line-height:normal}.value-component .action-bubble .button-container button .material-icons{font-size:18px}.value-component .action-bubble .button-container button .mat-icon{width:18px;height:18px;vertical-align:middle}.value-component .action-bubble .button-container button.info{cursor:default}.value-component .action-bubble .button-container button:hover{background-color:#c7c7c7}.value-component.highlighted{background-color:#f5f5f5}.crud-buttons{grid-column-start:2;grid-column-end:3}.crud-buttons,.mat-error{grid-row-start:1;grid-row-end:auto}.mat-error{grid-column-start:3;grid-column-end:end}button.cancel,button.save{cursor:pointer;border:none;padding:0;margin-left:1em;outline:none;background-color:transparent;color:#000}button.save:disabled{color:#adadad;cursor:default}button.cancel .mat-icon,button.cancel .material-icons,button.save .mat-icon,button.save .material-icons{font-size:18px}.deletion-dialog .title{font-weight:700;font-size:18px;text-align:center}.deletion-dialog .action-buttons{float:right}.deletion-dialog .action-buttons .cancel{padding:0 16px}.deletion-dialog-message{font-size:16px;background-color:#ededf5;border:1px solid #d8d8df;border-radius:5px;padding:20px 10px;text-align:center}.deletion-dialog-message .deletion-comment{min-width:80%}.ck-content code{font-family:monospace!important}.ck-content pre{background-color:inherit!important}code,pre{font-family:monospace!important;background-color:hsla(0,0%,78%,.3);padding:.15em;border-radius:2px}"]}]}],"members":{"id":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":61,"character":5}}]}],"intervalStartLabel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":70,"character":5}}]}],"intervalEndLabel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":71,"character":5}}]}],"valueRequiredValidator":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":72,"character":5}}]}],"shouldLabelFloat":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":82,"character":5},"arguments":["class.floating"]}]}],"required":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":87,"character":5}}]}],"disabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":99,"character":5}}]}],"placeholder":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":112,"character":5}}]}],"describedBy":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":124,"character":5},"arguments":["attr.aria-describedby"]}]}],"setDescribedByIds":[{"__symbolic":"method"}],"value":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":130,"character":5}}]}],"errorStateMatcher":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":152,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":155,"character":9}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Self","line":155,"character":21}}],null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":158,"character":9}}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":159,"character":9}}],null],"parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":154,"character":20},{"__symbolic":"reference","module":"@angular/forms","name":"NgControl","line":155,"character":46},{"__symbolic":"reference","module":"@angular/cdk/a11y","name":"FocusMonitor","line":156,"character":21},{"__symbolic":"reference","name":"ElementRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":157,"character":35,"context":{"typeName":"HTMLElement"},"module":"./lib/viewer/values/interval-value/interval-input/interval-input.component"}]},{"__symbolic":"reference","module":"@angular/forms","name":"NgForm","line":158,"character":33},{"__symbolic":"reference","module":"@angular/forms","name":"FormGroupDirective","line":159,"character":38},{"__symbolic":"reference","module":"@angular/material/core","name":"ErrorStateMatcher","line":160,"character":35}]}],"ngOnInit":[{"__symbolic":"method"}],"ngDoCheck":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"onContainerClick":[{"__symbolic":"method"}],"writeValue":[{"__symbolic":"method"}],"registerOnChange":[{"__symbolic":"method"}],"registerOnTouched":[{"__symbolic":"method"}],"setDisabledState":[{"__symbolic":"method"}],"_handleInput":[{"__symbolic":"method"}]},"statics":{"nextId":0}},"ɵf":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":2,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{},"statics":{"ɵprov":{}}},"ɵg":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":16,"character":1},"arguments":[{"selector":"dsp-property-toolbar","template":"\n<div class=\"toolbar\" *ngIf=\"project\">\n    <!-- project info -->\n    <h3 class=\"label mat-title\">\n        {{resource.label}}\n    </h3>\n    <span class=\"fill-remaining-space\"></span>\n\n    <!-- tools: share, add to favorites, edit, delete etc. -->\n    <span>\n        <!-- TODO: activate favorite action to add resource to collection -->\n        <!--\n        <button mat-button class=\"add-res-to-collection\">\n            <mat-icon>star_border</mat-icon>\n        </button>\n        -->\n\n        <!-- Toggle list of properties: all or only the ones with value -->\n        <button mat-button class=\"toggle-props\" matTooltip=\"Toggle list of properties\" matTooltipPosition=\"above\"\n            (click)=\"toggleProps.emit(!showAllProps)\">\n            <mat-icon>{{showAllProps ? 'unfold_less' : 'unfold_more'}}</mat-icon>\n            <span class=\"desktop-only\">{{showAllProps ? 'Hide empty' : 'Show all'}} properties</span>\n        </button>\n\n        <!-- TODO: activate delete action to delete the whole resource -->\n        <!--\n        <button mat-button class=\"delete-res\">\n            <mat-icon>delete</mat-icon>\n        </button>\n        -->\n\n        <!-- Share resource by copying the ark url -->\n        <button mat-button class=\"share-res\" matTooltip=\"Share resource by copying ARK url\" matTooltipPosition=\"above\"\n            [matMenuTriggerFor]=\"share\">\n            <mat-icon>share</mat-icon>\n            <span class=\"desktop-only\">Citation Link</span>\n        </button>\n        <mat-menu #share=\"matMenu\" class=\"res-share-menu\">\n            <!-- citation link - ARK URL -->\n            <div class=\"ark-url-label mat-body\">\n                <label for=\"clipboard-arkurl\">Citation Link (ARK URL)</label>\n            </div>\n            <div class=\"ark-url-input\">\n                <input id=\"clipboard-arkurl\" class=\"clipboard-arkurl\" cols=\"30\" rows=\"10\" readonly\n                    [(ngModel)]=\"resource.versionArkUrl\" />\n                <button mat-button class=\"btn-copy-arkurl\" [cdkCopyToClipboard]=\"resource.versionArkUrl\"\n                    matTooltip=\"Copy ARK url\" matTooltipPosition=\"below\" (click)=\"openSnackBar()\">\n                    <mat-icon class=\"icon-arkurl\">content_copy</mat-icon>\n                </button>\n            </div>\n        </mat-menu>\n\n\n    </span>\n\n</div>\n<!-- additional line with project and user information -->\n<div class=\"infobar mat-caption\" *ngIf=\"project && user\">\n    <p>This resource belongs to the project\n        <span class=\"project link\" (click)=\"projectClicked(project)\" (mouseover)=\"projectHovered(project)\">\n            <b>{{project?.shortname}}</b>\n            <mat-icon inline>open_in_new</mat-icon>\n        </span>\n    </p>\n    <span class=\"fill-remaining-space\"></span>\n    <p *ngIf=\"user || resource.creationDate\">\n        Created\n        <span *ngIf=\"user\">by {{(user.username ? user.username : user.givenName + ' ' + user.familyName)}}</span>\n        <span *ngIf=\"resource.creationDate\"> on {{resource.creationDate | date}}</span>\n    </p>\n</div>\n","styles":[".infobar,.toolbar{display:flex;box-sizing:border-box;flex-direction:row;align-items:center;white-space:nowrap;padding:0 16px;width:100%;color:rgba(0,0,0,.87)}.toolbar{background:#f5f5f5}.toolbar .label{margin:0!important}.clipboard-arkurl{width:264px;height:32px;border:1px solid rgba(0,0,0,.35);border-radius:4px 0 0 4px}.ark-url-label{margin-bottom:8px}.btn-copy-arkurl{border-radius:0 4px 4px 0;background-color:rgba(0,0,0,.35)}"]}]}],"members":{"resource":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":23,"character":5}}]}],"showAllProps":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":25,"character":5}}]}],"toggleProps":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":27,"character":5}}]}],"openProject":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":32,"character":5}}]}],"referredProjectClicked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":38,"character":5}}]}],"referredProjectHovered":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":44,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":50,"character":9},"arguments":[{"__symbolic":"reference","name":"DspApiConnectionToken"}]}],null,null,null],"parameters":[{"__symbolic":"reference","module":"@dasch-swiss/dsp-js","name":"KnoraApiConnection","line":50,"character":66},{"__symbolic":"reference","name":"NotificationService"},{"__symbolic":"reference","module":"@angular/material/snack-bar","name":"MatSnackBar","line":52,"character":27},{"__symbolic":"reference","name":"UserService"}]}],"ngOnChanges":[{"__symbolic":"method"}],"projectClicked":[{"__symbolic":"method"}],"projectHovered":[{"__symbolic":"method"}],"openSnackBar":[{"__symbolic":"method"}]}},"ɵh":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":4,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}],"viewResource":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"ɵi":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":4,"character":1},"arguments":[{"selector":"dsp-sublist-value","template":"<mat-menu #childMenu=\"matMenu\" [overlapTrigger]=\"false\">\n    <span *ngFor=\"let child of children\">\n        <span *ngIf=\"child.children && child.children.length > 0\">\n            <button mat-menu-item [matMenuTriggerFor]=\"menu.childMenu\" (click)=\"setValue(child)\" type=\"button\">\n                {{child.label}}\n            </button>\n            <dsp-sublist-value #menu [children]=\"child.children\" (selectedNode)=\"setValue($event)\"></dsp-sublist-value>\n        </span>\n\n        <span *ngIf=\"!child.children || child.children.length === 0\">\n            <button mat-menu-item (click)=\"setValue(child)\" type=\"button\">\n                {{child.label}}\n            </button>\n        </span>\n    </span>\n</mat-menu>\n","styles":[""]}]}],"members":{"children":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":11,"character":3}}]}],"selectedNode":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":13,"character":3}}]}],"childMenu":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":15,"character":3},"arguments":["childMenu",{"static":true}]}]}],"__ctor__":[{"__symbolic":"constructor"}],"setValue":[{"__symbolic":"method"}]}},"ɵj":{"__symbolic":"class","extends":{"__symbolic":"error","message":"Symbol reference expected","line":58,"character":40,"module":"./lib/viewer/values/time-value/time-input/time-input.component"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":52,"character":1},"arguments":[{"selector":"dsp-time-input","providers":[{"provide":{"__symbolic":"reference","module":"@angular/material/form-field","name":"MatFormFieldControl","line":56,"character":27},"useExisting":{"__symbolic":"reference","name":"ɵj"}}],"template":"<div [formGroup]=\"form\">\n    <dsp-jdn-datepicker [activeCalendar]=\"'Gregorian'\">\n        <mat-form-field class=\"child-input-component\">\n            <input matInput class=\"time-input-element date\" [matDatepicker]=\"picker\" [formControlName]=\"'date'\" (dateChange)=\"_handleInput()\" aria-label=\"Date\" [placeholder]=\"dateLabel\" readonly>\n            <mat-datepicker-toggle matSuffix [for]=\"picker\"></mat-datepicker-toggle>\n            <mat-datepicker #picker></mat-datepicker>\n        </mat-form-field>\n    </dsp-jdn-datepicker>\n    <mat-form-field class=\"child-input-component\">\n        <input matInput class=\"time-input-element time\" [formControlName]=\"'time'\" type=\"time\" aria-label=\"Time\" (input)=\"_handleInput()\" [placeholder]=\"timeLabel\" [errorStateMatcher]=\"matcher\">\n        <mat-error *ngIf=\"form.controls.time.hasError('required')\">\n            A time value in precision HH:MM is <strong>required</strong>.\n        </mat-error>\n        <mat-error *ngIf=\"form.controls.time.hasError('pattern')\">\n            <span class=\"custom-error-message\">Time should be given in precision HH:MM.</span>\n        </mat-error>\n    </mat-form-field>\n    <div class=\"date-form-error\">\n        <mat-error *ngIf=\"((dateFormControl.value !== null || timeFormControl.value !== null)) &&\n                            (dateFormControl.hasError('validDateTimeRequired') || timeFormControl.hasError('validDateTimeRequired'))\">\n            <span class=\"custom-error-message\">A time value must have a <strong>date</strong> and <strong>time</strong>.</span>\n        </mat-error>\n      </div>\n  </div>\n","styles":["@charset \"UTF-8\";@media (max-width:576px){.desktop-only{display:none!important}}.read-mode-view{font:400 15px/24px sans-serif}.read-mode-view .rm-comment,.read-mode-view .rm-value{display:block;margin:0}.child-value-component,.value-component-comment{display:block}.parent-component-wrapper .value-component-comment{margin-top:-2em}.parent-value-component .child-value-component .mat-form-field-wrapper .mat-form-field-infix{border-top:0 solid transparent}.child-input-component{display:inline-block;vertical-align:bottom;width:49%}.child-input-component:nth-child(2){padding-left:2%}.child-input-component.full-width{width:100%}.custom-error-message{font-size:12px;margin-top:-1em;padding-bottom:1em}.grid-container{display:grid;grid-template-columns:70% 30%;grid-template-rows:auto auto}.crud-buttons,.value-component{vertical-align:top}.value-component{grid-row-start:1;grid-row-end:auto;grid-column-start:1;grid-column-end:2;position:relative}.value-component .action-bubble{position:absolute;right:0;top:-20px;border:1px solid #e4e4e4;border-radius:10px;padding:0 1px;background-color:#e4e4e4;z-index:2;box-shadow:1px 4px 5px 0 #949494}.value-component .action-bubble .button-container button.mat-button-disabled .mat-icon{color:#aaa}.value-component .action-bubble .button-container button{cursor:pointer;border:none;padding:2px;outline:none;background-color:transparent;color:#000;margin:0 2px;border-radius:10px;transition:background-color .5s ease-out;min-width:inherit;line-height:normal}.value-component .action-bubble .button-container button .material-icons{font-size:18px}.value-component .action-bubble .button-container button .mat-icon{width:18px;height:18px;vertical-align:middle}.value-component .action-bubble .button-container button.info{cursor:default}.value-component .action-bubble .button-container button:hover{background-color:#c7c7c7}.value-component.highlighted{background-color:#f5f5f5}.crud-buttons{grid-column-start:2;grid-column-end:3}.crud-buttons,.mat-error{grid-row-start:1;grid-row-end:auto}.mat-error{grid-column-start:3;grid-column-end:end}button.cancel,button.save{cursor:pointer;border:none;padding:0;margin-left:1em;outline:none;background-color:transparent;color:#000}button.save:disabled{color:#adadad;cursor:default}button.cancel .mat-icon,button.cancel .material-icons,button.save .mat-icon,button.save .material-icons{font-size:18px}.deletion-dialog .title{font-weight:700;font-size:18px;text-align:center}.deletion-dialog .action-buttons{float:right}.deletion-dialog .action-buttons .cancel{padding:0 16px}.deletion-dialog-message{font-size:16px;background-color:#ededf5;border:1px solid #d8d8df;border-radius:5px;padding:20px 10px;text-align:center}.deletion-dialog-message .deletion-comment{min-width:80%}.ck-content code{font-family:monospace!important}.ck-content pre{background-color:inherit!important}code,pre{font-family:monospace!important;background-color:hsla(0,0%,78%,.3);padding:.15em;border-radius:2px}"]}]}],"members":{"id":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":64,"character":5}}]}],"dateLabel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":72,"character":5}}]}],"timeLabel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":73,"character":5}}]}],"valueRequiredValidator":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":74,"character":5}}]}],"shouldLabelFloat":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":86,"character":5},"arguments":["class.floating"]}]}],"required":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":91,"character":5}}]}],"disabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":103,"character":5}}]}],"placeholder":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":116,"character":5}}]}],"describedBy":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":128,"character":5},"arguments":["attr.aria-describedby"]}]}],"setDescribedByIds":[{"__symbolic":"method"}],"value":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":134,"character":5}}]}],"errorStateMatcher":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":167,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":170,"character":9}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Self","line":170,"character":21}}],null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":173,"character":9}}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":174,"character":9}}],null],"parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":169,"character":20},{"__symbolic":"reference","module":"@angular/forms","name":"NgControl","line":170,"character":46},{"__symbolic":"reference","module":"@angular/cdk/a11y","name":"FocusMonitor","line":171,"character":21},{"__symbolic":"reference","name":"ElementRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":172,"character":35,"context":{"typeName":"HTMLElement"},"module":"./lib/viewer/values/time-value/time-input/time-input.component"}]},{"__symbolic":"reference","module":"@angular/forms","name":"NgForm","line":173,"character":33},{"__symbolic":"reference","module":"@angular/forms","name":"FormGroupDirective","line":174,"character":38},{"__symbolic":"reference","module":"@angular/material/core","name":"ErrorStateMatcher","line":175,"character":35}]}],"ngOnInit":[{"__symbolic":"method"}],"ngDoCheck":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"onContainerClick":[{"__symbolic":"method"}],"writeValue":[{"__symbolic":"method"}],"registerOnChange":[{"__symbolic":"method"}],"registerOnTouched":[{"__symbolic":"method"}],"setDisabledState":[{"__symbolic":"method"}],"_handleInput":[{"__symbolic":"method"}],"userInputToTimestamp":[{"__symbolic":"method"}],"convertTimestampToDateTime":[{"__symbolic":"method"}]},"statics":{"nextId":0}},"ɵk":{"__symbolic":"class","extends":{"__symbolic":"error","message":"Symbol reference expected","line":64,"character":44,"module":"./lib/viewer/values/date-value/date-input-text/date-input-text.component"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":58,"character":1},"arguments":[{"selector":"dsp-date-input-text","providers":[{"provide":{"__symbolic":"reference","module":"@angular/material/form-field","name":"MatFormFieldControl","line":62,"character":26},"useExisting":{"__symbolic":"reference","name":"ɵk"}}],"template":"<div [formGroup]=\"form\">\n\n    <mat-checkbox class=\"period-checkbox\" [formControlName]=\"'isPeriod'\" (change)=\"_handleInput()\">\n        is time period\n    </mat-checkbox>\n\n    <div class=\"date-form-grid\">\n        <div class=\"date-form-field\">\n\n            <mat-form-field>\n                <mat-label>Calendar</mat-label>\n                    <mat-select class=\"calendar-selection\" [formControlName]=\"'calendar'\">\n                        <mat-option *ngFor=\"let cal of calendars\" [value]=\"cal\">\n                            {{cal}}\n                        </mat-option>\n                    </mat-select>\n            </mat-form-field>\n        </div>\n    </div>\n\n    <div class=\"date-form-grid\">\n        <div class=\"date-form-field\">\n            <mat-form-field>\n                <mat-label *ngIf=\"isPeriodControl.value\">Start</mat-label>\n                <dsp-date-edit class=\"start-date\" [formControlName]=\"'startDate'\" [calendar]=\"calendarControl.value\" [valueRequiredValidator]=\"valueRequiredValidator\"></dsp-date-edit>\n            </mat-form-field>\n        </div>\n\n        <span *ngIf=\"isPeriodControl.value\">\n            <div class=\"date-form-field\">\n                <mat-form-field>\n                    <mat-label>End</mat-label>\n                    <dsp-date-edit class=\"end-date\" [formControlName]=\"'endDate'\" [calendar]=\"calendarControl.value\" [valueRequiredValidator]=\"valueRequiredValidator\"></dsp-date-edit>\n                </mat-form-field>\n            </div>\n        </span>\n    </div>\n\n    <div class=\"date-form-error\">\n        <mat-error *ngIf=\"startDate.hasError('required')\">\n            <span class=\"custom-error-message\">Start date is <strong>required</strong></span>\n        </mat-error>\n        <mat-error *ngIf=\"endDate.hasError('required')\">\n            <span class=\"custom-error-message\">End date is <strong>required</strong></span>\n        </mat-error>\n        <mat-error *ngIf=\"startDate.hasError('periodStartEnd')\">\n            <span class=\"custom-error-message\">End date must be after start date.</span>\n        </mat-error>\n    </div>\n\n</div>\n","styles":["@charset \"UTF-8\";@media (max-width:576px){.desktop-only{display:none!important}}.read-mode-view{font:400 15px/24px sans-serif}.read-mode-view .rm-comment,.read-mode-view .rm-value{display:block;margin:0}.child-value-component,.value-component-comment{display:block}.parent-component-wrapper .value-component-comment{margin-top:-2em}.parent-value-component .child-value-component .mat-form-field-wrapper .mat-form-field-infix{border-top:0 solid transparent}.child-input-component{display:inline-block;vertical-align:bottom;width:49%}.child-input-component:nth-child(2){padding-left:2%}.child-input-component.full-width{width:100%}.custom-error-message{font-size:12px;margin-top:-1em;padding-bottom:1em}.grid-container{display:grid;grid-template-columns:70% 30%;grid-template-rows:auto auto}.crud-buttons,.value-component{vertical-align:top}.value-component{grid-row-start:1;grid-row-end:auto;grid-column-start:1;grid-column-end:2;position:relative}.value-component .action-bubble{position:absolute;right:0;top:-20px;border:1px solid #e4e4e4;border-radius:10px;padding:0 1px;background-color:#e4e4e4;z-index:2;box-shadow:1px 4px 5px 0 #949494}.value-component .action-bubble .button-container button.mat-button-disabled .mat-icon{color:#aaa}.value-component .action-bubble .button-container button{cursor:pointer;border:none;padding:2px;outline:none;background-color:transparent;color:#000;margin:0 2px;border-radius:10px;transition:background-color .5s ease-out;min-width:inherit;line-height:normal}.value-component .action-bubble .button-container button .material-icons{font-size:18px}.value-component .action-bubble .button-container button .mat-icon{width:18px;height:18px;vertical-align:middle}.value-component .action-bubble .button-container button.info{cursor:default}.value-component .action-bubble .button-container button:hover{background-color:#c7c7c7}.value-component.highlighted{background-color:#f5f5f5}.crud-buttons{grid-column-start:2;grid-column-end:3}.crud-buttons,.mat-error{grid-row-start:1;grid-row-end:auto}.mat-error{grid-column-start:3;grid-column-end:end}button.cancel,button.save{cursor:pointer;border:none;padding:0;margin-left:1em;outline:none;background-color:transparent;color:#000}button.save:disabled{color:#adadad;cursor:default}button.cancel .mat-icon,button.cancel .material-icons,button.save .mat-icon,button.save .material-icons{font-size:18px}.deletion-dialog .title{font-weight:700;font-size:18px;text-align:center}.deletion-dialog .action-buttons{float:right}.deletion-dialog .action-buttons .cancel{padding:0 16px}.deletion-dialog-message{font-size:16px;background-color:#ededf5;border:1px solid #d8d8df;border-radius:5px;padding:20px 10px;text-align:center}.deletion-dialog-message .deletion-comment{min-width:80%}.ck-content code{font-family:monospace!important}.ck-content pre{background-color:inherit!important}code,pre{font-family:monospace!important;background-color:hsla(0,0%,78%,.3);padding:.15em;border-radius:2px}.period-checkbox{display:inline-block;padding-bottom:20px}.date-form-grid{display:grid;grid-template-columns:30% 30%;grid-template-rows:auto;-moz-column-gap:12px;column-gap:12px}.date-form-error{margin-top:-16px}"]}]}],"members":{"valueRequiredValidator":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":68,"character":5}}]}],"value":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":86,"character":5}}]}],"disabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":128,"character":5}}]}],"placeholder":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":141,"character":5}}]}],"required":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":153,"character":5}}]}],"shouldLabelFloat":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":165,"character":5},"arguments":["class.floating"]}]}],"id":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":170,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":173,"character":17}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Self","line":173,"character":29}}],null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":176,"character":17}}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":177,"character":17}}],null,null],"parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":172,"character":20},{"__symbolic":"reference","module":"@angular/forms","name":"NgControl","line":173,"character":54},{"__symbolic":"reference","module":"@angular/cdk/a11y","name":"FocusMonitor","line":174,"character":29},{"__symbolic":"reference","name":"ElementRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":175,"character":43,"context":{"typeName":"HTMLElement"},"module":"./lib/viewer/values/date-value/date-input-text/date-input-text.component"}]},{"__symbolic":"reference","module":"@angular/forms","name":"NgForm","line":176,"character":41},{"__symbolic":"reference","module":"@angular/forms","name":"FormGroupDirective","line":177,"character":46},{"__symbolic":"reference","module":"@angular/material/core","name":"ErrorStateMatcher","line":178,"character":43},{"__symbolic":"reference","name":"ValueService"}]}],"ngOnInit":[{"__symbolic":"method"}],"ngDoCheck":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"writeValue":[{"__symbolic":"method"}],"registerOnChange":[{"__symbolic":"method"}],"registerOnTouched":[{"__symbolic":"method"}],"_handleInput":[{"__symbolic":"method"}],"onContainerClick":[{"__symbolic":"method"}],"setDescribedByIds":[{"__symbolic":"method"}]},"statics":{"nextId":0}},"ɵl":{"__symbolic":"class","extends":{"__symbolic":"error","message":"Symbol reference expected","line":54,"character":39,"module":"./lib/viewer/values/date-value/date-input-text/date-edit/date-edit.component"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":48,"character":1},"arguments":[{"selector":"dsp-date-edit","providers":[{"provide":{"__symbolic":"reference","module":"@angular/material/form-field","name":"MatFormFieldControl","line":52,"character":26},"useExisting":{"__symbolic":"reference","name":"ɵl"}}],"template":"<div [formGroup]=\"form\">\n\n    <div class=\"era-radio\">\n        <mat-radio-group class=\"era\" [formControlName]=\"'era'\" aria-label=\"Select an option\" (change)=\"_handleInput()\">\n            <mat-radio-button value=\"BCE\">Before Common Era</mat-radio-button>\n            <mat-radio-button value=\"CE\">Common Era</mat-radio-button>\n        </mat-radio-group>\n    </div>\n\n    <mat-form-field>\n        <mat-label>Year</mat-label>\n        <input class=\"year\" matInput placeholder=\"Year\" type=\"number\" [formControlName]=\"'year'\" min=\"1\"\n               (input)=\"_handleInput()\">\n        <div class=\"date-form-error\">\n            <mat-error *ngIf=\"yearControl.hasError('required')\">\n                <span class=\"custom-error-message\">A year is <strong>required</strong>.</span>\n            </mat-error>\n            <mat-error *ngIf=\"yearControl.hasError('min')\">\n                <span class=\"custom-error-message\">A valid year is greater than 0.</span>\n            </mat-error>\n        </div>\n    </mat-form-field>\n    <mat-form-field>\n        <mat-label>Month</mat-label>\n        <mat-select class=\"month\" [formControlName]=\"'month'\" (selectionChange)=\"_handleInput()\">\n            <mat-option [value]=\"null\">no selection</mat-option>\n            <mat-option *ngFor=\"let month of months\" [value]=\"month\">\n                {{month}}\n            </mat-option>\n        </mat-select>\n    </mat-form-field>\n    <mat-form-field>\n        <mat-label>Day</mat-label>\n        <mat-select class=\"day\" [formControlName]=\"'day'\" (selectionChange)=\"_handleInput()\">\n            <mat-option [value]=\"null\">no selection</mat-option>\n            <mat-option *ngFor=\"let day of days\" [value]=\"day\">\n                {{day}}\n            </mat-option>\n        </mat-select>\n    </mat-form-field>\n</div>\n","styles":["@charset \"UTF-8\";@media (max-width:576px){.desktop-only{display:none!important}}.read-mode-view{font:400 15px/24px sans-serif}.read-mode-view .rm-comment,.read-mode-view .rm-value{display:block;margin:0}.child-value-component,.value-component-comment{display:block}.parent-component-wrapper .value-component-comment{margin-top:-2em}.parent-value-component .child-value-component .mat-form-field-wrapper .mat-form-field-infix{border-top:0 solid transparent}.child-input-component{display:inline-block;vertical-align:bottom;width:49%}.child-input-component:nth-child(2){padding-left:2%}.child-input-component.full-width{width:100%}.custom-error-message{font-size:12px;margin-top:-1em;padding-bottom:1em}.grid-container{display:grid;grid-template-columns:70% 30%;grid-template-rows:auto auto}.crud-buttons,.value-component{vertical-align:top}.value-component{grid-row-start:1;grid-row-end:auto;grid-column-start:1;grid-column-end:2;position:relative}.value-component .action-bubble{position:absolute;right:0;top:-20px;border:1px solid #e4e4e4;border-radius:10px;padding:0 1px;background-color:#e4e4e4;z-index:2;box-shadow:1px 4px 5px 0 #949494}.value-component .action-bubble .button-container button.mat-button-disabled .mat-icon{color:#aaa}.value-component .action-bubble .button-container button{cursor:pointer;border:none;padding:2px;outline:none;background-color:transparent;color:#000;margin:0 2px;border-radius:10px;transition:background-color .5s ease-out;min-width:inherit;line-height:normal}.value-component .action-bubble .button-container button .material-icons{font-size:18px}.value-component .action-bubble .button-container button .mat-icon{width:18px;height:18px;vertical-align:middle}.value-component .action-bubble .button-container button.info{cursor:default}.value-component .action-bubble .button-container button:hover{background-color:#c7c7c7}.value-component.highlighted{background-color:#f5f5f5}.crud-buttons{grid-column-start:2;grid-column-end:3}.crud-buttons,.mat-error{grid-row-start:1;grid-row-end:auto}.mat-error{grid-column-start:3;grid-column-end:end}button.cancel,button.save{cursor:pointer;border:none;padding:0;margin-left:1em;outline:none;background-color:transparent;color:#000}button.save:disabled{color:#adadad;cursor:default}button.cancel .mat-icon,button.cancel .material-icons,button.save .mat-icon,button.save .material-icons{font-size:18px}.deletion-dialog .title{font-weight:700;font-size:18px;text-align:center}.deletion-dialog .action-buttons{float:right}.deletion-dialog .action-buttons .cancel{padding:0 16px}.deletion-dialog-message{font-size:16px;background-color:#ededf5;border:1px solid #d8d8df;border-radius:5px;padding:20px 10px;text-align:center}.deletion-dialog-message .deletion-comment{min-width:80%}.ck-content code{font-family:monospace!important}.ck-content pre{background-color:inherit!important}code,pre{font-family:monospace!important;background-color:hsla(0,0%,78%,.3);padding:.15em;border-radius:2px}.era-radio{margin-bottom:15px}.date-form-error{margin-top:-16px}"]}]}],"members":{"calendar":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":58,"character":5}}]}],"valueRequiredValidator":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":60,"character":5}}]}],"value":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":80,"character":5}}]}],"disabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":129,"character":5}}]}],"placeholder":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":142,"character":5}}]}],"required":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":154,"character":5}}]}],"shouldLabelFloat":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":166,"character":5},"arguments":["class.floating"]}]}],"id":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":171,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":184,"character":17}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Self","line":184,"character":29}}],null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":187,"character":17}}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":188,"character":17}}],null,null],"parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":183,"character":20},{"__symbolic":"reference","module":"@angular/forms","name":"NgControl","line":184,"character":54},{"__symbolic":"reference","module":"@angular/cdk/a11y","name":"FocusMonitor","line":185,"character":29},{"__symbolic":"reference","name":"ElementRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":186,"character":43,"context":{"typeName":"HTMLElement"},"module":"./lib/viewer/values/date-value/date-input-text/date-edit/date-edit.component"}]},{"__symbolic":"reference","module":"@angular/forms","name":"NgForm","line":187,"character":41},{"__symbolic":"reference","module":"@angular/forms","name":"FormGroupDirective","line":188,"character":46},{"__symbolic":"reference","module":"@angular/material/core","name":"ErrorStateMatcher","line":189,"character":43},{"__symbolic":"reference","name":"ValueService"}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"ngDoCheck":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"writeValue":[{"__symbolic":"method"}],"registerOnChange":[{"__symbolic":"method"}],"registerOnTouched":[{"__symbolic":"method"}],"_handleInput":[{"__symbolic":"method"}],"onContainerClick":[{"__symbolic":"method"}],"setDescribedByIds":[{"__symbolic":"method"}],"_setDays":[{"__symbolic":"method"}],"_initEra":[{"__symbolic":"method"}]},"statics":{"nextId":0}},"ɵm":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":5,"character":1},"arguments":[{"selector":"dsp-select-ontology","template":"<span *ngIf=\"ontologiesMetadata !== undefined\" [formGroup]=\"form\" >\n    <mat-form-field class=\"large-field\">\n        <mat-select placeholder=\"Select an Ontology\" [formControlName]=\"'ontologies'\" class=\"select-ontology\">\n            <mat-option *ngFor=\"let onto of ontologiesMetadata.ontologies\" [value]=\"onto.id\">{{ onto.label }}</mat-option>\n        </mat-select>\n    </mat-form-field>\n</span>\n","styles":[""]}]}],"members":{"formGroup":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":12,"character":5}}]}],"ontologiesMetadata":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":14,"character":5}}]}],"ontologySelected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":16,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":22,"character":17},"arguments":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":22,"character":24}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":22,"character":50}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}},"ɵn":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":18,"character":1},"arguments":[{"selector":"dsp-select-resource-class","template":"<span *ngIf=\"resourceClassDefinitions.length > 0\" [formGroup]=\"form\" >\n    <mat-form-field class=\"large-field\">\n        <mat-select placeholder=\"Select a Resource Class (optional)\" [formControlName]=\"'resourceClass'\" class=\"select-resource-class\">\n            <mat-option [value]=\"null\">no selection</mat-option>\n            <!-- undo selection of a resource class -->\n            <mat-option *ngFor=\"let resourceClass of resourceClassDefinitions\" [value]=\"resourceClass.id\">{{ resourceClass.label }}\n            </mat-option>\n        </mat-select>\n    </mat-form-field>\n</span>\n","styles":[".select-resource-class{margin-left:8px}"]}]}],"members":{"formGroup":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":25,"character":5}}]}],"resourceClassDefinitions":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":27,"character":5}}]}],"resourceClassSelected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":29,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":46,"character":17},"arguments":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":46,"character":24}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":46,"character":50}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"_initForm":[{"__symbolic":"method"}],"_closeOntologyChangesSubscription":[{"__symbolic":"method"}]}},"ɵo":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":11,"character":1},"arguments":[{"selector":"dsp-select-property","template":"<span *ngIf=\"properties.length > 0\" [formGroup]=\"form\" >\n    <mat-form-field class=\"search-property-field medium-field\">\n        <mat-select placeholder=\"Select Properties\" [formControlName]=\"'property'\" class=\"select-property\">\n            <mat-option *ngFor=\"let prop of properties\" [value]=\"prop\">{{ prop.label }}</mat-option>\n        </mat-select>\n    </mat-form-field>\n\n    <dsp-specify-property-value #specifyPropertyValue [formGroup]=\"form\" *ngIf=\"propertySelected !== undefined\"\n                                [property]=\"propertySelected\" [topLevel]=\"topLevel\"></dsp-specify-property-value>\n\n    <mat-checkbox *ngIf=\"propertySelected !== undefined && sortCriterion()\" [formControlName]=\"'isSortCriterion'\" matTooltip=\"Sort criterion\"></mat-checkbox>\n</span>\n","styles":[".search-property-field{margin-right:8px}"]}]}],"members":{"formGroup":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":19,"character":5}}]}],"index":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":22,"character":5}}]}],"topLevel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":24,"character":5}}]}],"properties":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":30,"character":5}}]}],"activeResourceClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":44,"character":5}}]}],"specifyPropertyValue":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":50,"character":5},"arguments":["specifyPropertyValue",{"static":false}]}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":63,"character":9},"arguments":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":63,"character":16}]}],null],"parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":63,"character":42},{"__symbolic":"reference","name":"SortingService"}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"sortCriterion":[{"__symbolic":"method"}],"getPropertySelectedWithValue":[{"__symbolic":"method"}]}},"ɵp":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":20,"character":1},"arguments":[{"selector":"dsp-specify-property-value","template":"<span *ngIf=\"comparisonOperators?.length > 0\" [formGroup]=\"form\">\n<mat-form-field class=\"search-operator-field small-field\">\n    <mat-select placeholder=\"Comparison Operator\" [formControlName]=\"'comparisonOperator'\" class=\"comparison-operator\">\n        <mat-option *ngFor=\"let compOp of comparisonOperators\" [value]=\"compOp\">{{ compOp.label }}</mat-option>\n    </mat-select>\n</mat-form-field>\n</span>\n\n<!-- select apt component for value specification using a switch case statement-->\n<span\n    *ngIf=\"comparisonOperatorSelected !== undefined && comparisonOperatorSelected !== null && comparisonOperatorSelected.getClassName() != 'Exists'\" [ngSwitch]=\"propertyValueType\">\n    <dsp-search-int-value #propertyValue [formGroup]=\"form\" *ngSwitchCase=\"Constants.IntValue\"></dsp-search-int-value>\n    <dsp-search-decimal-value #propertyValue [formGroup]=\"form\" *ngSwitchCase=\"Constants.DecimalValue\"></dsp-search-decimal-value>\n    <dsp-search-boolean-value #propertyValue [formGroup]=\"form\" *ngSwitchCase=\"Constants.BooleanValue\"></dsp-search-boolean-value>\n    <dsp-search-date-value #propertyValue [formGroup]=\"form\" *ngSwitchCase=\"Constants.DateValue\"></dsp-search-date-value>\n\n    <span *ngSwitchCase=\"Constants.Resource\">\n        <span *ngIf=\"comparisonOperatorSelected.getClassName() == 'Match'; else elseBlock\">\n            <dsp-search-resource #propertyValue [formGroup]=\"form\" [restrictResourceClass]=\"objectClassConstraint\"></dsp-search-resource>\n        </span>\n        <ng-template #elseBlock>\n            <dsp-search-link-value #propertyValue [formGroup]=\"form\" [restrictResourceClass]=\"objectClassConstraint\"></dsp-search-link-value>\n        </ng-template>\n    </span>\n\n    <dsp-search-text-value #propertyValue [formGroup]=\"form\" *ngSwitchCase=\"Constants.TextValue\"></dsp-search-text-value>\n    <dsp-search-list-value #propertyValue [formGroup]=\"form\" [property]=\"property\" *ngSwitchCase=\"Constants.ListValue\"></dsp-search-list-value>\n    <dsp-search-uri-value #propertyValue [formGroup]=\"form\" *ngSwitchCase=\"Constants.UriValue\"></dsp-search-uri-value>\n    <span *ngSwitchDefault>Not supported {{propertyValueType}}</span>\n</span>\n<!-- TODO: Resource: handle linking properties with target class restriction: access property member to get objectClass via property() getter method -->\n\n\n","styles":[".search-operator-field{margin-right:8px}"]}]}],"members":{"formGroup":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":30,"character":5}}]}],"topLevel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":32,"character":5}}]}],"propertyValueComponent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":34,"character":5},"arguments":["propertyValue",{"static":false}]}]}],"property":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":39,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":64,"character":17},"arguments":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":64,"character":24}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":64,"character":50}]}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"resetComparisonOperators":[{"__symbolic":"method"}],"_closeComparisonOperatorChangesSubscription":[{"__symbolic":"method"}],"getComparisonOperatorAndValueLiteralForProperty":[{"__symbolic":"method"}]}},"ɵq":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":8,"character":1},"arguments":[{"selector":"dsp-search-int-value","template":"<span [formGroup]=\"form\">\n    <mat-form-field class=\"large-field\">\n        <input matInput [formControlName]=\"'integerValue'\" placeholder=\"Integer value\" type=\"number\">\n    </mat-form-field>\n</span>\n","styles":[""]}]}],"members":{"formGroup":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":16,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":22,"character":17},"arguments":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":22,"character":24}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":22,"character":50}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"getValue":[{"__symbolic":"method"}]}},"ɵr":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":9,"character":1},"arguments":[{"selector":"dsp-search-boolean-value","template":"<span [formGroup]=\"form\">\n    <mat-checkbox [formControlName]=\"'booleanValue'\"></mat-checkbox>\n</span>\n","styles":[""]}]}],"members":{"formGroup":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":23,"character":17},"arguments":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":23,"character":24}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":23,"character":50}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"getValue":[{"__symbolic":"method"}]}},"ɵs":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":10,"character":1},"arguments":[{"selector":"dsp-search-date-value","template":"<span [formGroup]=\"form\">\n    <mat-form-field class=\"large-field\">\n        <dsp-jdn-datepicker>\n            <input matInput [matDatepicker]=\"picker\" placeholder=\"Choose a date\" [formControlName]=\"'dateValue'\" readonly>\n            <mat-datepicker #picker [calendarHeaderComponent]=\"headerComponent\"></mat-datepicker>\n        </dsp-jdn-datepicker>\n        <mat-datepicker-toggle matSuffix [for]=\"picker\"></mat-datepicker-toggle>\n    </mat-form-field>\n</span>\n","styles":[".cdk-overlay-pane .mat-datepicker-content .mat-calendar{height:auto!important}"]}]}],"members":{"formGroup":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":18,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":27,"character":17},"arguments":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":27,"character":24}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":27,"character":50}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"getValue":[{"__symbolic":"method"}]}},"ɵt":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":8,"character":1},"arguments":[{"selector":"dsp-search-decimal-value","template":"<span [formGroup]=\"form\">\n    <mat-form-field class=\"large-field\">\n        <input matInput [formControlName]=\"'decimalValue'\" placeholder=\"Decimal value\" type=\"number\">\n    </mat-form-field>\n</span>\n","styles":[""]}]}],"members":{"formGroup":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":16,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":22,"character":17},"arguments":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":22,"character":24}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":22,"character":50}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"getValue":[{"__symbolic":"method"}]}},"ɵu":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":9,"character":1},"arguments":[{"selector":"dsp-search-link-value","template":"<span [formGroup]=\"form\">\n    <mat-form-field class=\"large-field\">\n        <input matInput placeholder=\"resource\" aria-label=\"resource\" [matAutocomplete]=\"auto\"\n               [formControlName]=\"'resource'\">\n        <mat-autocomplete #auto=\"matAutocomplete\" [displayWith]=\"displayResource\">\n            <mat-option *ngFor=\"let res of resources\" [value]=\"res\" class=\"resource\">\n                {{res?.label}}\n            </mat-option>\n        </mat-autocomplete>\n    </mat-form-field>\n</span>\n","styles":[""]}]}],"members":{"formGroup":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":5}}]}],"restrictResourceClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":27,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":37,"character":9},"arguments":[{"__symbolic":"reference","name":"DspApiConnectionToken"}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":38,"character":9},"arguments":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":38,"character":16}]}]],"parameters":[{"__symbolic":"reference","module":"@dasch-swiss/dsp-js","name":"KnoraApiConnection","line":37,"character":66},{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":38,"character":42}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"displayResource":[{"__symbolic":"method"}],"searchByLabel":[{"__symbolic":"method"}],"validateResource":[{"__symbolic":"method"}],"getValue":[{"__symbolic":"method"}]}},"ɵv":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":17,"character":1},"arguments":[{"selector":"dsp-search-list-value","template":"<span *ngIf=\"listRootNode !== undefined\">\n    <button mat-stroked-button [matMenuTriggerFor]=\"mainMenu\" type=\"button\">\n        <span *ngIf=\"!selectedNode\">Select list value</span>\n        <span *ngIf=\"selectedNode\">{{selectedNode.label}}</span>\n    </button>\n\n    <mat-menu #mainMenu=\"matMenu\" [overlapTrigger]=\"false\">\n        <span *ngFor=\"let child of listRootNode.children\">\n            <span *ngIf=\"child.children && child.children.length > 0\">\n                <button mat-menu-item [matMenuTriggerFor]=\"menu.childMenu\" (click)=\"getSelectedNode(child)\"\n                        type=\"button\">\n                    {{child.label}}\n                </button>\n                <dsp-search-display-list #menu [children]=\"child.children\" (selectedNode)=\"getSelectedNode($event)\">\n                </dsp-search-display-list>\n            </span>\n\n            <span *ngIf=\"!child.children || child.children.length === 0\">\n                <button mat-menu-item (click)=\"getSelectedNode(child)\" type=\"button\">\n                    {{child.label}}\n                </button>\n            </span>\n        </span>\n    </mat-menu>\n</span>\n\n<!-- hidden input field for the selected list item (listNode iri) -->\n<span [formGroup]=\"form\">\n    <mat-form-field class=\"hidden\">\n        <input matInput [formControlName]=\"'listValue'\" placeholder=\"list value\">\n    </mat-form-field>\n</span>\n","styles":[".hidden{display:none}"]}]}],"members":{"formGroup":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":25,"character":5}}]}],"property":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":31,"character":5}}]}],"menuTrigger":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":37,"character":5},"arguments":[{"__symbolic":"reference","module":"@angular/material/menu","name":"MatMenuTrigger","line":37,"character":15}]}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":40,"character":9},"arguments":[{"__symbolic":"reference","name":"DspApiConnectionToken"}]}],null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":42,"character":9},"arguments":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":42,"character":16}]}]],"parameters":[{"__symbolic":"reference","module":"@dasch-swiss/dsp-js","name":"KnoraApiConnection","line":40,"character":66},{"__symbolic":"reference","name":"NotificationService"},{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":42,"character":42}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"_getRootNodeIri":[{"__symbolic":"method"}],"getValue":[{"__symbolic":"method"}],"getSelectedNode":[{"__symbolic":"method"}]}},"ɵw":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":4,"character":1},"arguments":[{"selector":"dsp-search-display-list","template":"<mat-menu #childMenu=\"matMenu\" [overlapTrigger]=\"false\">\n    <span *ngFor=\"let child of children\">\n        <span *ngIf=\"child.children && child.children.length > 0\">\n            <button mat-menu-item [matMenuTriggerFor]=\"menu.childMenu\" (click)=\"setValue(child)\" type=\"button\">\n                {{child.label}}\n            </button>\n            <dsp-search-display-list #menu [children]=\"child.children\" (selectedNode)=\"setValue($event)\"></dsp-search-display-list>\n        </span>\n\n        <span *ngIf=\"!child.children || child.children.length === 0\">\n            <button mat-menu-item (click)=\"setValue(child)\" type=\"button\">\n                {{child.label}}\n            </button>\n        </span>\n    </span>\n</mat-menu>\n","styles":[""]}]}],"members":{"children":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":11,"character":5}}]}],"selectedNode":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":13,"character":5}}]}],"childMenu":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":15,"character":5},"arguments":["childMenu",{"static":true}]}]}],"__ctor__":[{"__symbolic":"constructor"}],"setValue":[{"__symbolic":"method"}]}},"ɵx":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":8,"character":1},"arguments":[{"selector":"dsp-search-text-value","template":"<span [formGroup]=\"form\">\n    <mat-form-field class=\"large-field\">\n        <input matInput [formControlName]=\"'textValue'\" placeholder=\"text value\">\n    </mat-form-field>\n</span>\n","styles":[""]}]}],"members":{"formGroup":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":16,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":22,"character":17},"arguments":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":22,"character":24}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":22,"character":50}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"getValue":[{"__symbolic":"method"}]}},"ɵy":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":9,"character":1},"arguments":[{"selector":"dsp-search-uri-value","template":"<span [formGroup]=\"form\">\n    <mat-form-field class=\"large-field\">\n        <input matInput [formControlName]=\"'uriValue'\" placeholder=\"URI\">\n    </mat-form-field>\n</span>\n","styles":[""]}]}],"members":{"formGroup":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":23,"character":17},"arguments":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":23,"character":24}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":23,"character":50}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"getValue":[{"__symbolic":"method"}]}},"ɵz":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":23,"character":1},"arguments":[{"selector":"dsp-resource-and-property-selection","template":"<div [formGroup]=\"form\">\n\n    <div class=\"select-resource-class\">\n        <dsp-select-resource-class *ngIf=\"resourceClasses?.length > 0\"\n                                   #resourceClass\n                                   [formGroup]=\"form\"\n                                   [resourceClassDefinitions]=\"resourceClasses\"\n                                   (resourceClassSelected)=\"getPropertiesForResourceClass($event)\">\n        </dsp-select-resource-class>\n    </div>\n\n    <div class=\"select-property\" *ngIf=\"properties !== undefined\">\n        <div *ngFor=\"let prop of activeProperties; let i = index\">\n\n            <dsp-select-property #property [activeResourceClass]=\"activeResourceClass\" [formGroup]=\"form\" [index]=\"i\"\n                                 [properties]=\"properties\" [topLevel]=\"topLevel\"></dsp-select-property>\n\n        </div>\n    </div>\n\n    <div class=\"select-property buttons\">\n        <button mat-mini-fab class=\"property-button add-property-button\" color=\"primary\" type=\"button\"\n                (click)=\"addProperty()\" [disabled]=\"activeProperties.length >= 4\">\n            <mat-icon aria-label=\"add a property\">add</mat-icon>\n        </button>\n\n        <button mat-mini-fab class=\"property-button remove-property-button\" color=\"primary\" type=\"button\"\n                (click)=\"removeProperty()\" [disabled]=\"activeProperties.length == 0\">\n            <mat-icon aria-label=\"remove property\">remove</mat-icon>\n        </button>\n    </div>\n\n</div>\n","styles":[".select-property{margin-left:16px}.select-property .property-button{margin:0 12px 64px 0}"]}]}],"members":{"formGroup":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":30,"character":5}}]}],"activeOntology":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":32,"character":5}}]}],"resourceClassRestriction":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":34,"character":5}}]}],"topLevel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":36,"character":5}}]}],"resourceClassComponent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":49,"character":5},"arguments":["resourceClass"]}]}],"propertyComponents":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChildren","line":52,"character":5},"arguments":["property"]}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":55,"character":9},"arguments":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":55,"character":16}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":56,"character":9},"arguments":[{"__symbolic":"reference","name":"DspApiConnectionToken"}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":55,"character":42},{"__symbolic":"reference","module":"@dasch-swiss/dsp-js","name":"KnoraApiConnection","line":56,"character":66}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"getResourceClassesAndPropertiesForOntology":[{"__symbolic":"method"}],"getPropertiesForResourceClass":[{"__symbolic":"method"}],"addProperty":[{"__symbolic":"method"}],"removeProperty":[{"__symbolic":"method"}],"resetForm":[{"__symbolic":"method"}]}},"ɵba":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":9,"character":1},"arguments":[{"selector":"dsp-search-resource","template":"<dsp-resource-and-property-selection #resAndPropSel [formGroup]=\"form\" [activeOntology]=\"ontology\"\n                                     [resourceClassRestriction]=\"restrictResourceClass\" [topLevel]=\"false\"></dsp-resource-and-property-selection>\n","styles":[""]}]}],"members":{"formGroup":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":5}}]}],"restrictResourceClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":19,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":27,"character":17},"arguments":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":27,"character":24}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":27,"character":50}]}],"resourceAndPropertySelection":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":31,"character":5},"arguments":["resAndPropSel"]}]}],"ngOnInit":[{"__symbolic":"method"}],"getValue":[{"__symbolic":"method"}]}}},"origins":{"DspApiConfigToken":"./lib/core/core.module","DspApiConnectionToken":"./lib/core/core.module","DspCoreModule":"./lib/core/core.module","Session":"./lib/core/session.service","SessionService":"./lib/core/session.service","AppInitService":"./lib/core/app-init.service","DspViewerModule":"./lib/viewer/viewer.module","BooleanValueComponent":"./lib/viewer/values/boolean-value/boolean-value.component","ColorValueComponent":"./lib/viewer/values/color-value/color-value.component","DateValueComponent":"./lib/viewer/values/date-value/date-value.component","CalendarHeaderComponent":"./lib/viewer/values/date-value/calendar-header/calendar-header.component","DecimalValueComponent":"./lib/viewer/values/decimal-value/decimal-value.component","geonameIdValidator":"./lib/viewer/values/geoname-value/geoname-value.component","GeonameValueComponent":"./lib/viewer/values/geoname-value/geoname-value.component","IntValueComponent":"./lib/viewer/values/int-value/int-value.component","IntervalValueComponent":"./lib/viewer/values/interval-value/interval-value.component","makeCalendarToken":"./lib/viewer/values/jdn-datepicker-directive/jdndatepicker.directive","JDNDatepickerDirective":"./lib/viewer/values/jdn-datepicker-directive/jdndatepicker.directive","resourceValidator":"./lib/viewer/values/link-value/link-value.component","LinkValueComponent":"./lib/viewer/values/link-value/link-value.component","ListValueComponent":"./lib/viewer/values/list-value/list-value.component","TextValueAsHtmlComponent":"./lib/viewer/values/text-value/text-value-as-html/text-value-as-html.component","TextValueAsXMLComponent":"./lib/viewer/values/text-value/text-value-as-xml/text-value-as-xml.component","TextValueAsStringComponent":"./lib/viewer/values/text-value/text-value-as-string/text-value-as-string.component","TimeValueComponent":"./lib/viewer/values/time-value/time-value.component","UriValueComponent":"./lib/viewer/values/uri-value/uri-value.component","CustomRegex":"./lib/viewer/values/custom-regex","DisplayEditComponent":"./lib/viewer/operations/display-edit/display-edit.component","AddValueComponent":"./lib/viewer/operations/add-value/add-value.component","PropertyInfoValues":"./lib/viewer/views/resource-view/resource-view.component","ResourceViewComponent":"./lib/viewer/views/resource-view/resource-view.component","PropertyViewComponent":"./lib/viewer/views/property-view/property-view.component","SearchParams":"./lib/viewer/views/list-view/list-view.component","ShortResInfo":"./lib/viewer/views/list-view/list-view.component","FilteredResources":"./lib/viewer/views/list-view/list-view.component","CheckboxUpdate":"./lib/viewer/views/list-view/list-view.component","ListViewComponent":"./lib/viewer/views/list-view/list-view.component","ResourceListComponent":"./lib/viewer/views/list-view/resource-list/resource-list.component","ResourceGridComponent":"./lib/viewer/views/list-view/resource-grid/resource-grid.component","MultipleResourcesViewComponent":"./lib/viewer/views/multiple-resources-view/multiple-resources-view.component","Region":"./lib/viewer/representation/still-image/still-image.component","StillImageRepresentation":"./lib/viewer/representation/still-image/still-image.component","GeometryForRegion":"./lib/viewer/representation/still-image/still-image.component","StillImageComponent":"./lib/viewer/representation/still-image/still-image.component","UploadFileComponent":"./lib/viewer/representation/upload-file/upload-file.component","UploadedFileResponse":"./lib/viewer/services/upload-file.service","UploadFileService":"./lib/viewer/services/upload-file.service","UserService":"./lib/viewer/services/user.service","ValueService":"./lib/viewer/services/value.service","ValueOperationEventService":"./lib/viewer/services/value-operation-event.service","EmitEvent":"./lib/viewer/services/value-operation-event.service","Events":"./lib/viewer/services/value-operation-event.service","EventValue":"./lib/viewer/services/value-operation-event.service","AddedEventValue":"./lib/viewer/services/value-operation-event.service","UpdatedEventValues":"./lib/viewer/services/value-operation-event.service","DeletedEventValue":"./lib/viewer/services/value-operation-event.service","TextValueHtmlLinkDirective":"./lib/viewer/directives/text-value-html-link.directive","DragDropDirective":"./lib/viewer/directives/drag-drop.directive","DspActionModule":"./lib/action/action.module","FormattedBooleanPipe":"./lib/action/pipes/formatting/formatted-boolean.pipe","KnoraDatePipe":"./lib/action/pipes/formatting/knoradate.pipe","ReversePipe":"./lib/action/pipes/array-transformation/reverse.pipe","SortByPipe":"./lib/action/pipes/array-transformation/sort-by.pipe","LinkifyPipe":"./lib/action/pipes/string-transformation/linkify.pipe","TruncatePipe":"./lib/action/pipes/string-transformation/truncate.pipe","StringifyStringLiteralPipe":"./lib/action/pipes/string-transformation/stringify-string-literal.pipe","NotificationService":"./lib/action/services/notification.service","SortingService":"./lib/action/services/sorting.service","ProgressIndicatorComponent":"./lib/action/components/progress-indicator/progress-indicator.component","DspMessageData":"./lib/action/components/message/message.component","MessageComponent":"./lib/action/components/message/message.component","SortProp":"./lib/action/components/sort-button/sort-button.component","SortButtonComponent":"./lib/action/components/sort-button/sort-button.component","LoginFormComponent":"./lib/action/components/login-form/login-form.component","StringLiteralInputComponent":"./lib/action/components/string-literal-input/string-literal-input.component","ConfirmationDialogData":"./lib/action/components/confirmation-dialog/confirmation-dialog.component","ConfirmationDialogValueDeletionPayload":"./lib/action/components/confirmation-dialog/confirmation-dialog.component","ConfirmationDialogComponent":"./lib/action/components/confirmation-dialog/confirmation-dialog.component","ConfirmationMessageComponent":"./lib/action/components/confirmation-dialog/confirmation-message/confirmation-message.component","SelectProjectComponent":"./lib/action/components/select-project/select-project.component","SelectedResourcesComponent":"./lib/action/components/selected-resources/selected-resources.component","AdminImageDirective":"./lib/action/directives/admin-image/admin-image.directive","ExistingNameDirective":"./lib/action/directives/existing-names/existing-name.directive","existingNameValidator":"./lib/action/directives/existing-names/existing-name.directive","existingNamesValidator":"./lib/action/directives/existing-names/existing-name.directive","notAllowed":"./lib/action/directives/existing-names/existing-name.directive","GNDConstants":"./lib/action/directives/gnd/gnd.directive","GndDirective":"./lib/action/directives/gnd/gnd.directive","DspSearchModule":"./lib/search/search.module","SearchPanelComponent":"./lib/search/search-panel/search-panel.component","PrevSearchItem":"./lib/search/fulltext-search/fulltext-search.component","FulltextSearchComponent":"./lib/search/fulltext-search/fulltext-search.component","forbiddenTermValidator":"./lib/search/expert-search/expert-search.component","ExpertSearchComponent":"./lib/search/expert-search/expert-search.component","AdvancedSearchComponent":"./lib/search/advanced-search/advanced-search.component","ComparisonOperator":"./lib/search/advanced-search/resource-and-property-selection/select-property/specify-property-value/operator","Equals":"./lib/search/advanced-search/resource-and-property-selection/select-property/specify-property-value/operator","NotEquals":"./lib/search/advanced-search/resource-and-property-selection/select-property/specify-property-value/operator","GreaterThanEquals":"./lib/search/advanced-search/resource-and-property-selection/select-property/specify-property-value/operator","GreaterThan":"./lib/search/advanced-search/resource-and-property-selection/select-property/specify-property-value/operator","LessThan":"./lib/search/advanced-search/resource-and-property-selection/select-property/specify-property-value/operator","LessThanEquals":"./lib/search/advanced-search/resource-and-property-selection/select-property/specify-property-value/operator","Exists":"./lib/search/advanced-search/resource-and-property-selection/select-property/specify-property-value/operator","Like":"./lib/search/advanced-search/resource-and-property-selection/select-property/specify-property-value/operator","Match":"./lib/search/advanced-search/resource-and-property-selection/select-property/specify-property-value/operator","ComparisonOperatorAndValue":"./lib/search/advanced-search/resource-and-property-selection/select-property/specify-property-value/operator","Value":"./lib/search/advanced-search/resource-and-property-selection/select-property/specify-property-value/operator","ValueLiteral":"./lib/search/advanced-search/resource-and-property-selection/select-property/specify-property-value/operator","IRI":"./lib/search/advanced-search/resource-and-property-selection/select-property/specify-property-value/operator","LinkedResource":"./lib/search/advanced-search/resource-and-property-selection/select-property/specify-property-value/operator","PropertyValue":"./lib/search/advanced-search/resource-and-property-selection/select-property/specify-property-value/operator","PropertyWithValue":"./lib/search/advanced-search/resource-and-property-selection/select-property/specify-property-value/operator","AutocompleteItem":"./lib/search/advanced-search/resource-and-property-selection/select-property/specify-property-value/operator","AdvancedSearchParams":"./lib/search/services/advanced-search-params.service","AdvancedSearchParamsService":"./lib/search/services/advanced-search-params.service","GravsearchGenerationService":"./lib/search/services/gravsearch-generation.service","ɵa":"./lib/viewer/values/base-value.component","ɵb":"./lib/viewer/values/color-value/color-picker/color-picker.component","ɵc":"./lib/viewer/values/date-value/date-input/date-input.component","ɵd":"./lib/viewer/services/geoname.service","ɵe":"./lib/viewer/values/interval-value/interval-input/interval-input.component","ɵf":"./assets/i18n/statusMsg","ɵg":"./lib/viewer/views/property-view/property-toolbar/property-toolbar.component","ɵh":"./lib/viewer/views/list-view/list-view.service","ɵi":"./lib/viewer/values/list-value/subList-value/sublist-value.component","ɵj":"./lib/viewer/values/time-value/time-input/time-input.component","ɵk":"./lib/viewer/values/date-value/date-input-text/date-input-text.component","ɵl":"./lib/viewer/values/date-value/date-input-text/date-edit/date-edit.component","ɵm":"./lib/search/advanced-search/select-ontology/select-ontology.component","ɵn":"./lib/search/advanced-search/resource-and-property-selection/select-resource-class/select-resource-class.component","ɵo":"./lib/search/advanced-search/resource-and-property-selection/select-property/select-property.component","ɵp":"./lib/search/advanced-search/resource-and-property-selection/select-property/specify-property-value/specify-property-value.component","ɵq":"./lib/search/advanced-search/resource-and-property-selection/select-property/specify-property-value/search-int-value/search-int-value.component","ɵr":"./lib/search/advanced-search/resource-and-property-selection/select-property/specify-property-value/search-boolean-value/search-boolean-value.component","ɵs":"./lib/search/advanced-search/resource-and-property-selection/select-property/specify-property-value/search-date-value/search-date-value.component","ɵt":"./lib/search/advanced-search/resource-and-property-selection/select-property/specify-property-value/search-decimal-value/search-decimal-value.component","ɵu":"./lib/search/advanced-search/resource-and-property-selection/select-property/specify-property-value/search-link-value/search-link-value.component","ɵv":"./lib/search/advanced-search/resource-and-property-selection/select-property/specify-property-value/search-list-value/search-list-value.component","ɵw":"./lib/search/advanced-search/resource-and-property-selection/select-property/specify-property-value/search-list-value/search-display-list/search-display-list.component","ɵx":"./lib/search/advanced-search/resource-and-property-selection/select-property/specify-property-value/search-text-value/search-text-value.component","ɵy":"./lib/search/advanced-search/resource-and-property-selection/select-property/specify-property-value/search-uri-value/search-uri-value.component","ɵz":"./lib/search/advanced-search/resource-and-property-selection/resource-and-property-selection.component","ɵba":"./lib/search/advanced-search/resource-and-property-selection/select-property/specify-property-value/search-resource/search-resource.component","ɵbb":"./lib/action","ɵbc":"./lib/viewer"},"importAs":"@dasch-swiss/dsp-ui"}