public async Task <ShapeBinding> GetDescriptorBindingAsync(string shapeType) { if (AdminAttribute.IsApplied(_httpContextAccessor.HttpContext)) { return(null); } var localTemplates = _previewTemplatesProvider.GetTemplates(); if (localTemplates != null) { if (localTemplates.Templates.TryGetValue(shapeType, out var localTemplate)) { return(BuildShapeBinding(shapeType, localTemplate)); } } if (_templatesDocument == null) { _templatesDocument = await _templatesManager.GetTemplatesDocumentAsync(); } if (_templatesDocument.Templates.TryGetValue(shapeType, out var template)) { return(BuildShapeBinding(shapeType, template)); } else { return(null); } }
public TemplatesShapeBindingResolver( TemplatesManager templatesManager, ILiquidTemplateManager liquidTemplateManager, PreviewTemplatesProvider previewTemplatesProvider, IHttpContextAccessor httpContextAccessor) { _templatesDocument = templatesManager.GetTemplatesDocumentAsync().GetAwaiter().GetResult(); _liquidTemplateManager = liquidTemplateManager; _previewTemplatesProvider = previewTemplatesProvider; _httpContextAccessor = httpContextAccessor; }