@rero/ng-core
Version:
RERO angular core library.
72 lines (71 loc) • 3.25 kB
TypeScript
import { OnChanges, OnDestroy, OnInit, SimpleChanges } from '@angular/core';
import { AggregationsFilter, RecordSearchService } from '../../record-search.service';
import * as i0 from "@angular/core";
export declare class BucketsComponent implements OnInit, OnDestroy, OnChanges {
protected recordSearchService: RecordSearchService;
/** Buckets list for aggregation */
buckets: import("@angular/core").InputSignal<any[]>;
/** Aggregation key */
aggregationKey: import("@angular/core").InputSignal<string>;
/** Bucket size, if not null, reduce displayed items to this size. */
size: import("@angular/core").InputSignal<number>;
/** More and less on aggregation content (facet) */
moreMode: boolean;
/** Current selected values for the aggregations */
aggregationsFilters: Array<AggregationsFilter>;
/** Children of current bucket */
bucketChildren: any;
/** Subscription to aggregationsFilters observable */
private aggregationsFiltersSubscription;
/** Returns selected filters for the aggregation key. */
get aggregationFilters(): Array<string>;
/** Get bucket size. */
get bucketSize(): number;
/** Get the number of bucket items with non-zero doc_count. */
get bucketsLength(): number;
/** Should display more or less link for a bucket ? */
get displayMoreAndLessLink(): boolean;
/**
* OnInit hook
* Subscribe to aggregations filters observable for getting the aggregations filters each time
* they will change.
*/
ngOnInit(): void;
/**
* OnChanges hook
* Called each time an input property is modified.
* If buckets are changed, refresh children buckets.
* @param changes - bucket changes
*/
ngOnChanges(changes: SimpleChanges): void;
/**
* OnDestroy hook
* Unsubscribes from the observable of aggregations filters.
*/
ngOnDestroy(): void;
/**
* Check if a value is present in selected filters.
* @param value: filter value (could be string, number, ...)
* @return `true` if value is present in the aggregation filters, `null` otherwise.
*/
isSelected(value: any): boolean | null;
/**
* Do we need to display the children?
* @return `true` if we want to display the children, `false` otherwise.
*/
displayChildren(bucket: any): boolean;
/**
* Update selected filters by adding or removing the given value and push
* values to service.
* @param bucket - string: the selected bucket value (checked OR unchecked)
*/
updateFilter(bucket: any): void;
/**
* Get children buckets
* @param bucket: parent bucket
* @return Bucket children list of given bucket
*/
getBucketChildren(bucket: any): Array<any>;
static ɵfac: i0.ɵɵFactoryDeclaration<BucketsComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<BucketsComponent, "ng-core-record-search-aggregation-buckets", never, { "buckets": { "alias": "buckets"; "required": true; "isSignal": true; }; "aggregationKey": { "alias": "aggregationKey"; "required": true; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; }, {}, never, never, false, never>;
}