Constructor
new SemanticFilterView()
- Since:
- Source:
Extends
Members
className
- Source:
collapseToggleClass :string
The class used for the button that toggles the collapsed state of the filter.
Type:
- Since:
- Inherited From:
- Default Value:
- Source:
collapsed :boolean
The current state of the filter, if it is
FilterView#collapsible.
Whatever this value is set to at initialization, will be how the filter is
initially rendered.
Type:
- Since:
- Inherited From:
- Default Value:
- Source:
collapsedClass :string
The class to add to the filter when it is collapsed.
Type:
- Since:
- Inherited From:
- Default Value:
- Source:
collapsible :boolean
Whether the filter is collapsible. If true, the filter will have a button that
toggles the collapsed state.
Type:
- Since:
- Inherited From:
- Source:
labelTemplate :Underscore.Template
The template that renders the icon and label of a filter
Type:
- Since:
- Inherited From:
- Source:
mode :string
One of "normal", "edit", or "uiBuilder". "normal" renders a regular filter used to
update a search model in a DataCatalogViewWithFilters. "edit" creates a filter that
cannot update a search model, but which has an "EDIT" button that opens a modal
with an interface for editing the filter model's properties (e.g. fields, model
type, etc.). "uiBuilder" is the view of the filter within this editing modal; it
has inputs that are overlaid above the filter elements where a user can edit the
placeholder text, label, etc. in a WYSIWYG fashion.
Type:
- Since:
- Inherited From:
- Source:
A Filter model to be rendered in this view
Type:
- Inherited From:
- Source:
modelClass :Backbone.Model
The Filter model that this View renders. This is used to create a new
instance of the model if one is not provided to the view.
Type:
- Since:
- Inherited From:
- Source:
ontologies :Array.<{label: string, ontology: string, subTree: string}>
The ontologies to search for terms in.
Type:
-
Array.<{label: string, ontology: string, subTree: string}>
- Since:
- Source:
uiBuilderClass :string
The class to add to the filter when it is in "uiBuilder" mode
Type:
- Since:
- Inherited From:
- Source:
The class used for input elements where the user can change UI attributes when this
view is in "uiBuilder" mode. For example, the input for the placeholder text should
have this class. Elements with this class also need to have a data-category
attribute with the name of the model attribute they correspond to.
Type:
- Since:
- Inherited From:
- Source:
Methods
events() → {Object}
A function that creates and returns the Backbone events object.
- Inherited From:
- Source:
Returns:
Returns a Backbone events object
-
Type
-
Object
handleChange()
Updates the view when the filter input is updated
Parameters:
Type |
Description |
Event
|
The DOM Event that occurred on the filter view input element |
- Inherited From:
- Source:
handleTyping()
When the user presses Enter in the input element, update the view and model
Parameters:
Type |
Description |
Event
|
The DOM Event that occurred on the filter view input element |
- Inherited From:
- Source:
This function hides the error message and error class added to inputs with the
FilterView#showInputError function.
Parameters:
Name |
Type |
Description |
input |
HTMLElement
|
The input that had an error associated with its value |
messageContainer |
HTMLElement
|
The element in which the error message was
inserted |
- Inherited From:
- Source:
initialize(optionsopt)
Initialize the SemanticFilterView
Parameters:
Name |
Type |
Attributes |
Description |
options |
object
|
<optional>
|
The options to initialize the view with
Properties
Name |
Type |
Attributes |
Description |
ontologies |
Array.<{label: string, ontology: string, subTree: string}>
|
<optional>
|
- The ontologies to search for terms in |
|
- Since:
- Overrides:
- Source:
onSubViewSelection()
Update the filter model when a class is selected in the
BioontologySelectView. Clear the selection/search input from the
SelectView and collapse the menu.
- Since:
- Source:
Render an instance of a Semantic Filter View. Note that this View
doesn't have a template and instead delegates to the
BioontologySelectView which renders a SearchSelectView which renders
the BioontologySelectView.
- Since:
- Overrides:
- Source:
Returns:
This instance
-
Type
-
SemanticFilterView
setLabelMapping(term, label)
Set the human-readable label for a term URI.
For most uses of the Filter model, the value(s) set on the model can
be shown directly in the UI. But for Semantic searches, we need to
be able to display a human-readable label for the value because the
value is likely an opaque URI.
Rather than fetch and/or store all the possible labels for all
possible URIs, we store a label for whichever terms the user chooses
and keep that around until we need it in the UI.
Parameters:
Name |
Type |
Description |
term |
string
|
The term URI to set a label for |
label |
string
|
The label to set |
- Since:
- Source:
This function indicates that there is an error with an input in this filter. It
displays an error message and adds the error CSS class to the problematic input.
Parameters:
Name |
Type |
Description |
input |
HTMLElement
|
The input that has an error associated with its value |
messageContainer |
HTMLElement
|
The element in which to insert the error
message |
message |
string
|
The error message to show |
- Inherited From:
- Source:
showValidationErrors(errors)
Show validation errors. This is used for filters that are in "UIBuilder" mode.
Parameters:
Name |
Type |
Description |
errors |
Object
|
The error messages associated with each attribute that has
an error, passed from the Filter model validation function. |
- Inherited From:
- Source:
template()
override the template function and use subView instead
- Overrides:
- Source:
toggleCollapse(collapseopt)
Toggle the collapsed state of the filter. If collapse is a boolean, then set the
collapsed state to that value. Otherwise, set it to the opposite of whichever
state is currently set.
Parameters:
Name |
Type |
Attributes |
Description |
collapse |
boolean
|
<optional>
|
Whether to collapse the filter. If not provided, the
filter will be collapsed if it is currently expanded, and vice versa. |
- Since:
- Inherited From:
- Source:
updateModel()
Updates the value set on the Filter Model associated with this view.
The filter value is grabbed from the input element in this view.
- Inherited From:
- Source:
updateUIAttribute(e)
Updates the corresponding model attribute when an input for one of the UI options
changes (in "uiBuilder" mode).
Parameters:
Name |
Type |
Description |
e |
Object
|
The change event |
- Since:
- Inherited From:
- Source: