projects/netgrif-components-core/src/lib/search/models/predicate/editable-clause-predicate-with-generators.ts
Properties |
|
Methods |
|
constructor(operator: BooleanOperator, parentNotifier?: Subject
|
|||||||||||||||
Parameters :
|
Protected _predicates |
Type : Map<number | PredicateWithGenerator>
|
Inherited from
EditableClausePredicate
|
Defined in
EditableClausePredicate:11
|
Protected _childCounter |
Type : IncrementingCounter
|
Inherited from
EditableClausePredicate
|
Defined in
EditableClausePredicate:18
|
Protected _childUpdated$ |
Type : Subject<void>
|
Inherited from
EditableClausePredicate
|
Defined in
EditableClausePredicate:17
|
Protected _query |
Type : Query
|
Inherited from
EditableClausePredicate
|
Defined in
EditableClausePredicate:19
|
Protected _parentNotifier |
Type : Subject<void>
|
Inherited from
EditablePredicate
|
Defined in
EditablePredicate:9
|
Protected _filterTextSegmentsGenerator |
Type : function
|
Inherited from
Predicate
|
Defined in
Predicate:16
|
Protected _metadataGenerator |
Type : function
|
Inherited from
Predicate
|
Defined in
Predicate:15
|
Protected _visible |
Type : boolean
|
Inherited from
Predicate
|
Defined in
Predicate:14
|
addNewClausePredicate | ||||||||||||
addNewClausePredicate(operator: BooleanOperator, initiallyVisible)
|
||||||||||||
Inherited from
EditableClausePredicate
|
||||||||||||
Defined in
EditableClausePredicate:27
|
||||||||||||
Parameters :
Returns :
number
|
addNewPredicateFromGenerator | ||||||||||||
addNewPredicateFromGenerator(generator: Category<any>, initiallyVisible)
|
||||||||||||
Creates a new editable predicate from the provided generator Category instance, connects it to the update notifications stream and adds it to the predicate subtree.
Parameters :
Returns :
number
|
addPredicate | ||||||||||||
addPredicate(predicate: Predicate, initiallyVisible)
|
||||||||||||
Inherited from
EditableClausePredicate
|
||||||||||||
Defined in
EditableClausePredicate:31
|
||||||||||||
Parameters :
Returns :
number
|
destroy |
destroy()
|
Inherited from
EditablePredicate
|
Defined in
EditablePredicate:54
|
Cleans-up the inner state of this object
Returns :
void
|
getPredicateMap |
getPredicateMap()
|
Inherited from
EditableClausePredicate
|
Defined in
EditableClausePredicate:47
|
Returns :
Map<number, PredicateWithGenerator>
|
addNewElementaryPredicate | ||||||||
addNewElementaryPredicate(initiallyVisible)
|
||||||||
Inherited from
EditableClausePredicate
|
||||||||
Defined in
EditableClausePredicate:67
|
||||||||
Adds new child predicate of type EditableElementaryPredicate
Parameters :
Returns :
number
|
removePredicate | ||||||
removePredicate(id: number)
|
||||||
Inherited from
EditableClausePredicate
|
||||||
Defined in
EditableClausePredicate:93
|
||||||
Parameters :
Returns :
boolean
|
Public show |
show()
|
Inherited from
Predicate
|
Defined in
Predicate:46
|
Returns :
void
|
Protected showAll |
showAll()
|
Inherited from
EditableClausePredicate
|
Defined in
EditableClausePredicate:130
|
Sets this predicate and all its sub-predicates to visible.
Returns :
void
|
Public showPredicates | ||||||||
showPredicates(predicateIds: Array
|
||||||||
Inherited from
EditableClausePredicate
|
||||||||
Defined in
EditableClausePredicate:55
|
||||||||
Shows the predicates with the given ids. Skips ids that don't exist.
Parameters :
Returns :
void
|
Protected updateQuery |
updateQuery()
|
Inherited from
EditableClausePredicate
|
Defined in
EditableClausePredicate:116
|
Updates the value of the _query attribute. See combineQueries() for more information.
Returns :
void
|
Protected updateQueryAndNotify |
updateQueryAndNotify()
|
Inherited from
EditableClausePredicate
|
Defined in
EditableClausePredicate:106
|
Updates the
Returns :
void
|
Protected notifyParentPredicate |
notifyParentPredicate()
|
Inherited from
EditablePredicate
|
Defined in
EditablePredicate:19
|
Notify the parent
Returns :
void
|
Static combineTextSegmentsWithBooleanOperator | ||||||||||||||||||||
combineTextSegmentsWithBooleanOperator(predicates: IterableIterator<Predicate> | Array<Predicate>, operator: BooleanOperator, wrapWithBrackets)
|
||||||||||||||||||||
Inherited from
Predicate
|
||||||||||||||||||||
Defined in
Predicate:51
|
||||||||||||||||||||
Combines the text segments of the predicates with the given operator and wraps the individual predicates in brackets optionaly (if only one predicate is provided it is never wrapped)
Parameters :
Returns :
Array<FilterTextSegment>
|
Public createFilterTextSegments |
createFilterTextSegments()
|
Inherited from
Predicate
|
Defined in
Predicate:110
|
The default implementation returns an empty array.
Returns :
Array<FilterTextSegment>
an Array containing text segments representing the content of this predicate. The default implementation returns an empty array. |
Public createGeneratorMetadata |
createGeneratorMetadata()
|
Inherited from
Predicate
|
Defined in
Predicate:98
|
Returns
Returns :
GeneratorMetadata | undefined
an object containing the necessary information for the reconstruction of the entire predicate tree in serializable form.
Returns |
Public setFilterTextSegmentsGenerator | ||||||
setFilterTextSegmentsGenerator(filterTextSegmentsGenerator: () => void)
|
||||||
Inherited from
Predicate
|
||||||
Defined in
Predicate:102
|
||||||
Parameters :
Returns :
void
|
Public setMetadataGenerator | ||||||
setMetadataGenerator(metadataGenerator: () => void)
|
||||||
Inherited from
Predicate
|
||||||
Defined in
Predicate:90
|
||||||
Parameters :
Returns :
void
|
import {EditableClausePredicate} from './editable-clause-predicate';
import {BooleanOperator} from '../boolean-operator';
import {Subject} from 'rxjs';
import {PredicateWithGenerator} from './predicate-with-generator';
import {Predicate} from './predicate';
import {Category} from '../category/category';
import {EditablePredicateWithGenerator} from './editable-predicate-with-generator';
export class EditableClausePredicateWithGenerators extends EditableClausePredicate {
protected _predicates: Map<number, PredicateWithGenerator>;
constructor(operator: BooleanOperator, parentNotifier?: Subject<void>, initiallyVisible = true, bracketSubPredicateText = false) {
super(operator, parentNotifier, initiallyVisible, bracketSubPredicateText);
this._metadataGenerator = () => {
const result = [];
for (const predicate of this._predicates.values()) {
const metadata = predicate.createGeneratorMetadata();
if (metadata !== undefined) {
result.push(metadata);
}
}
return result.length > 0 ? result : undefined;
};
}
addNewClausePredicate(operator: BooleanOperator, initiallyVisible = true): number {
return this.addPredicate(new EditableClausePredicateWithGenerators(operator, this._childUpdated$, initiallyVisible));
}
addPredicate(predicate: Predicate, initiallyVisible = true): number {
return super.addPredicate(new PredicateWithGenerator(predicate, undefined, initiallyVisible));
}
/**
* Creates a new editable predicate from the provided generator {@link Category} instance,
* connects it to the update notifications stream and adds it to the predicate subtree.
* @param generator
* @param initiallyVisible
*/
addNewPredicateFromGenerator(generator: Category<any>, initiallyVisible = true): number {
const predicate = new EditablePredicateWithGenerator(generator, initiallyVisible);
predicate.parentNotifier = this._childUpdated$;
return super.addPredicate(predicate);
}
getPredicateMap(): Map<number, PredicateWithGenerator> {
return this._predicates;
}
/**
* Cleans-up the inner state of this object
*/
destroy(): void {
super.destroy();
for (const predicate of this._predicates.values()) {
predicate.destroy();
}
}
}