data source changes
This commit is contained in:
parent
bf08782a62
commit
9ec3000b85
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@poweredsoft/data",
|
||||
"version": "0.0.18",
|
||||
"version": "0.0.20",
|
||||
"peerDependencies": {
|
||||
"rxjs": "^6.5.3"
|
||||
}
|
||||
|
@ -51,6 +51,7 @@ export class DataSource<TModel> implements IDataSource<TModel>
|
||||
this._criteria.filters = copy.filters || this._criteria.filters;
|
||||
this._criteria.groups = copy.groups || this._criteria.groups;
|
||||
this._criteria.aggregates = copy.aggregates || this._criteria.aggregates;
|
||||
this._criteria.sorts = copy.sorts || this._criteria.sorts;
|
||||
}
|
||||
|
||||
protected _initSubjectObservables() {
|
||||
@ -78,10 +79,10 @@ export class DataSource<TModel> implements IDataSource<TModel>
|
||||
return this.options.transport.commands[name].adapter.handle(command);
|
||||
}
|
||||
|
||||
query<TQuery extends IQueryCriteria>(query: TQuery) : Observable<IQueryExecutionResult<TModel> & IQueryExecutionGroupResult<TModel>> {
|
||||
private _query() : Observable<IQueryExecutionResult<TModel> & IQueryExecutionGroupResult<TModel>> {
|
||||
return Observable.create((o: Observer<IQueryExecutionResult<TModel> & IQueryExecutionGroupResult<TModel>>) => {
|
||||
this._loadingSubject.next(true);
|
||||
this.options.transport.query.adapter.handle(query)
|
||||
this.options.transport.query.adapter.handle(this._criteria)
|
||||
.pipe(
|
||||
finalize(() => {
|
||||
o.complete();
|
||||
@ -99,8 +100,18 @@ export class DataSource<TModel> implements IDataSource<TModel>
|
||||
});
|
||||
}
|
||||
|
||||
query<TQuery extends IQueryCriteria>(query: TQuery) {
|
||||
this._criteria.page = query.page || this._criteria.page;
|
||||
this._criteria.pageSize = query.pageSize || this._criteria.pageSize;
|
||||
this._criteria.filters = query.filters || this._criteria.filters;
|
||||
this._criteria.groups = query.groups || this._criteria.groups;
|
||||
this._criteria.aggregates = query.aggregates || this._criteria.aggregates;
|
||||
this._criteria.sorts = query.sorts || this._criteria.sorts;
|
||||
return this.refresh();
|
||||
}
|
||||
|
||||
refresh() {
|
||||
return this.query(this._criteria).subscribe(
|
||||
return this._query().subscribe(
|
||||
res => {},
|
||||
err => {}
|
||||
);
|
||||
|
@ -6,7 +6,8 @@ export interface IDataSource<TModel>
|
||||
{
|
||||
resolveCommandModelByName<T extends any>(event: IResolveCommandModelEvent<TModel>) : Observable<T>;
|
||||
executeCommandByName<TCommand, TResult>(name: string, command: TCommand) : Observable<TResult>;
|
||||
query<TQuery extends IQueryCriteria>(query: TQuery) : Observable<IQueryExecutionResult<TModel> & IQueryExecutionGroupResult<TModel>>;
|
||||
query<TQuery extends IQueryCriteria>(query: TQuery);
|
||||
refresh();
|
||||
|
||||
data$: Observable<IQueryExecutionResult<TModel> & IQueryExecutionGroupResult<TModel>>;
|
||||
loading$: Observable<boolean>;
|
||||
|
Loading…
Reference in New Issue
Block a user