Class: SemanticFilterView

SemanticFilterView()

Render a specialized view of a single Filter model using the BioontologySelectView. Essentially acts as a connector between the Filter model and the Bioontology model. Uses logic from both the FilterView and the BioontologySelectView.

Screenshot

Constructor

new SemanticFilterView()

Since:
  • 2.22.0
Source:

Extends

Members

className

Source:

collapseToggleClass :string

The class used for the button that toggles the collapsed state of the filter.
Type:
  • string
Since:
  • 2.25.0
Inherited From:
Default Value:
  • "collapse-toggle"
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:
  • boolean
Since:
  • 2.25.0
Inherited From:
Default Value:
  • true
Source:

collapsedClass :string

The class to add to the filter when it is collapsed.
Type:
  • string
Since:
  • 2.25.0
Inherited From:
Default Value:
  • "collapsed"
Source:

collapsible :boolean

Whether the filter is collapsible. If true, the filter will have a button that toggles the collapsed state.
Type:
  • boolean
Since:
  • 2.25.0
Inherited From:
Source:

labelTemplate :Underscore.Template

The template that renders the icon and label of a filter
Type:
  • Underscore.Template
Since:
  • 2.17.0
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:
  • string
Since:
  • 2.17.0
Inherited From:
Source:

model :Filter

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:
  • Backbone.Model
Since:
  • 2.17.0
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:
  • 2.31.0
Source:

uiBuilderClass :string

The class to add to the filter when it is in "uiBuilder" mode
Type:
  • string
Since:
  • 2.17.0
Inherited From:
Source:

uiInputClass :string

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:
  • string
Since:
  • 2.17.0
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:

hideInputError(input, messageContainer)

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:
  • 2.31.0
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:
  • 2.31.0
Source:

render() → {SemanticFilterView}

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:
  • 2.22.0
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:
  • 2.22.0
Source:

showInputError(input, messageContainer, message)

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:
  • 2.25.0
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:
  • 2.17.0
Inherited From:
Source: