public static FieldDto FromDomain(RootField field) { var properties = FieldPropertiesDtoFactory.Create(field.RawProperties); var result = SimpleMapper.Map(field, new FieldDto { FieldId = field.Id, Properties = properties, Partitioning = field.Partitioning.Key }); if (field is IArrayField arrayField) { result.Nested = new List <NestedFieldDto>(); foreach (var nestedField in arrayField.Fields) { result.Nested.Add(FromDomain(nestedField)); } } return(result); }
public Schema ToSchema(FieldRegistry registry) { var fields = Empty; if (Fields != null) { fields = new RootField[Fields.Count]; for (var i = 0; i < fields.Length; i++) { var fieldModel = Fields[i]; var parititonKey = new Partitioning(fieldModel.Partitioning); var field = registry.CreateRootField(fieldModel.Id, fieldModel.Name, parititonKey, fieldModel.Properties); if (field is ArrayField arrayField && fieldModel.Children?.Count > 0) { foreach (var nestedFieldModel in fieldModel.Children) { var nestedField = registry.CreateNestedField(nestedFieldModel.Id, nestedFieldModel.Name, nestedFieldModel.Properties); if (nestedFieldModel.IsHidden) { nestedField = nestedField.Hide(); } if (nestedFieldModel.IsDisabled) { nestedField = nestedField.Disable(); } arrayField = arrayField.AddField(nestedField); } field = arrayField; } if (fieldModel.IsDisabled) { field = field.Disable(); } if (fieldModel.IsLocked) { field = field.Lock(); } if (fieldModel.IsHidden) { field = field.Hide(); } fields[i] = field; } } return(new Schema(Name, fields, Properties, IsPublished)); }
public static IFieldResolver Field(RootField field) { var fieldName = field.Name; return(new FuncFieldResolver <NamedContentData, IReadOnlyDictionary <string, IJsonValue>?>(c => { return c.Source?.GetOrDefault(fieldName); })); }
public static IFieldResolver Field(RootField field) { var fieldName = field.Name; return(Resolvers.Sync <ContentData, IReadOnlyDictionary <string, IJsonValue>?>(source => { return source?.GetOrDefault(fieldName); })); }
private static FuncFieldResolver <NamedContentData, IReadOnlyDictionary <string, IJsonValue> > FieldResolver(RootField field) { return(new FuncFieldResolver <NamedContentData, IReadOnlyDictionary <string, IJsonValue> >(c => { return c.Source.GetOrDefault(field.Name); })); }
private static string ComponentFieldDescription(string componentName, RootField field) { var name = field.DisplayName(); return(string.Format(CultureInfo.InvariantCulture, FieldDescriptions.ComponentField, name, componentName)); }
private static string FieldDescription(string schemaName, RootField field) { var name = field.DisplayName(); return(string.Format(CultureInfo.InvariantCulture, FieldDescriptions.ContentField, name, schemaName)); }
private static string FieldPartitionDescription(RootField field, string partition) { var name = field.DisplayName(); return(string.Format(CultureInfo.InvariantCulture, FieldDescriptions.ContentPartitionField, name, partition)); }