コード例 #1
0
 public Task <IEnumerable <IDataView> > GetDataViewsAsync(ICollectionSetup collection)
 {
     if (collection.DataViewBuilder == null)
     {
         return(Task.FromResult(collection.DataViews ?? Enumerable.Empty <IDataView>()));
     }
     else
     {
         var builder = _serviceProvider.GetService <IDataViewBuilder>(collection.DataViewBuilder);
         return(builder.GetDataViewsAsync());
     }
 }
コード例 #2
0
        public async Task ApplyDataViewToQueryAsync(Query query, ICollectionSetup collection)
        {
            if (collection.DataViewBuilder != null || collection.DataViews?.Count > 0)
            {
                var dataViews = await GetDataViewsAsync(collection);

                var dataView = dataViews.FirstOrDefault(x => x.Id == query.ActiveTab)
                               ?? dataViews.FirstOrDefault();

                if (dataView != null)
                {
                    query.SetDataView(dataView);
                }
            }
        }
コード例 #3
0
        public ListUIResolver(
            ListSetup list,
            ICollectionSetup collection,
            IDataProviderResolver dataProviderService,
            IDataViewResolver dataViewResolver,
            IButtonActionHandlerResolver buttonActionHandlerResolver,
            IAuthService authService,
            IHttpContextAccessor httpContextAccessor) : base(dataProviderService, buttonActionHandlerResolver, authService, httpContextAccessor)
        {
            _list             = list;
            _collection       = collection;
            _dataViewResolver = dataViewResolver;

            _list.Panes?.ForEach(pane =>
            {
                if (!_fieldsPerType.ContainsKey(pane.VariantType) && pane.Fields != null)
                {
                    _fieldsPerType.Add(pane.VariantType, pane.Fields.Select(x => GetField(x, default)));
                }
            });
        }
コード例 #4
0
 IRepository IRepositoryResolver.GetRepository(ICollectionSetup collection)
 => (this as IRepositoryResolver).GetRepository(collection.RepositoryAlias);
コード例 #5
0
 private static bool ShouldFallbackToNavigatingToNodeEditor(ICollectionSetup collection, PageStateModel?currentState)
 {
     return(currentState?.UsageType == (UsageType.Node | UsageType.Edit) && collection.ListEditor == null && collection.NodeEditor != null);
 }
コード例 #6
0
ファイル: RepositoryResolver.cs プロジェクト: mg02l/RapidCMS
 IRepository IRepositoryResolver.GetRepository(ICollectionSetup collection)
 {
     return((IRepository)_serviceProvider.GetRequiredService(collection.RepositoryType));
 }
コード例 #7
0
 private static bool ShouldFallbackToNavigatingToNodeEditor(ICollectionSetup collection, PageStateModel?currentState)
 {
     return(collection.NodeEditor != null);
 }