Browse Source

Fallback for reference fields.

pull/390/head
Sebastian Stehle 6 years ago
parent
commit
d2ac88df4f
  1. 2
      src/Squidex.Domain.Apps.Entities/Assets/IAssetQueryService.cs
  2. 1
      src/Squidex/app/framework/declarations.ts
  3. 3
      src/Squidex/app/framework/module.ts
  4. 22
      src/Squidex/app/shared/services/schemas.service.ts

2
src/Squidex.Domain.Apps.Entities/Assets/IAssetQueryService.cs

@ -18,7 +18,7 @@ namespace Squidex.Domain.Apps.Entities.Assets
Task<IReadOnlyList<IEnrichedAssetEntity>> QueryByHashAsync(Guid appId, string hash); Task<IReadOnlyList<IEnrichedAssetEntity>> QueryByHashAsync(Guid appId, string hash);
Task<IResultList<IEnrichedAssetEntity>> QueryAsync(Context contex, Q query); Task<IResultList<IEnrichedAssetEntity>> QueryAsync(Context context, Q query);
Task<IEnrichedAssetEntity> FindAssetAsync(Guid id); Task<IEnrichedAssetEntity> FindAssetAsync(Guid id);
} }

1
src/Squidex/app/framework/declarations.ts

@ -67,7 +67,6 @@ export * from './angular/scroll-active.directive';
export * from './angular/shortcut.component'; export * from './angular/shortcut.component';
export * from './angular/sorted.directive'; export * from './angular/sorted.directive';
export * from './angular/stop-click.directive'; export * from './angular/stop-click.directive';
export * from './angular/sync-scrolling.directive';
export * from './angular/template-wrapper.directive'; export * from './angular/template-wrapper.directive';
export * from './angular/title.component'; export * from './angular/title.component';

3
src/Squidex/app/framework/module.ts

@ -82,7 +82,6 @@ import {
SortedDirective, SortedDirective,
StarsComponent, StarsComponent,
StopClickDirective, StopClickDirective,
SyncScollingDirective,
TagEditorComponent, TagEditorComponent,
TemplateWrapperDirective, TemplateWrapperDirective,
TitleComponent, TitleComponent,
@ -158,7 +157,6 @@ import {
SortedDirective, SortedDirective,
StarsComponent, StarsComponent,
StopClickDirective, StopClickDirective,
SyncScollingDirective,
TagEditorComponent, TagEditorComponent,
TemplateWrapperDirective, TemplateWrapperDirective,
TitleComponent, TitleComponent,
@ -228,7 +226,6 @@ import {
SortedDirective, SortedDirective,
StarsComponent, StarsComponent,
StopClickDirective, StopClickDirective,
SyncScollingDirective,
TagEditorComponent, TagEditorComponent,
TemplateWrapperDirective, TemplateWrapperDirective,
TitleComponent, TitleComponent,

22
src/Squidex/app/shared/services/schemas.service.ts

@ -100,24 +100,24 @@ export class SchemaDetailsDto extends SchemaDto {
super(links, id, name, category, properties, isSingleton, isPublished, created, createdBy, lastModified, lastModifiedBy, version); super(links, id, name, category, properties, isSingleton, isPublished, created, createdBy, lastModified, lastModifiedBy, version);
if (fields) { if (fields) {
this.listFields = this.getField(x => x.properties.isListField); this.listFields = this.fields.filter(x => x.properties.isListField && x.properties.isContentField);
this.listFieldsEditable = this.listFields.filter(x => x.isInlineEditable);
this.referenceFields = this.getField(x => x.properties.isReferenceField); if (this.listFields.length === 0 && this.fields.length > 0) {
this.listFields = [this.fields[0]];
} }
if (this.listFields.length === 0) {
this.listFields = NONE_FIELDS;
} }
private getField(predicate: (field: RootFieldDto) => boolean) { this.listFieldsEditable = this.listFields.filter(x => x.isInlineEditable);
let fields = this.fields.filter(x => predicate(x) && x.properties.isContentField);
if (fields.length === 0 && this.fields.length > 0) { this.referenceFields = this.fields.filter(x => x.properties.isReferenceField && x.properties.isContentField);
fields = [this.fields[0]];
if (this.referenceFields.length === 0) {
this.referenceFields = this.listFields;
} }
if (fields.length === 0) {
fields = NONE_FIELDS;
} }
return fields;
} }
public export(): any { public export(): any {

Loading…
Cancel
Save