- Description:
A type of dialogue used as for choosing options.
- Source:
- Copyright:
- 2019 Mihail Geshoski
- 2019 Mihail Geshoski
- License:
- http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
A type of dialogue used as for choosing options.
Methods
(inner) clickErrorHandler(item, fallback) → {HTMLElement}
- Description:
Small error handling function to make sure the navigated to object exists
- Source:
Parameters:
Name | Type | Description |
---|---|---|
item |
HTMLElement | What we want to check exists |
fallback |
HTMLElement | If we dont match anything fallback the focus |
Returns:
- Type
- HTMLElement
(inner) disableFocusAllChooserOptions(sectionChooserOptions)
- Description:
Disable the focus of all chooser options in a specific container (section).
- Source:
Parameters:
Name | Type | Description |
---|---|---|
sectionChooserOptions |
HTMLElement | The section that contains the chooser items |
(inner) displayChooser(modalPromise, sectionModules, partialFavourite, footerData)
- Description:
Display the module chooser.
- Source:
Parameters:
Name | Type | Description |
---|---|---|
modalPromise |
Promise | Our created modal for the section |
sectionModules |
Array | An array of all of the built module information |
partialFavourite |
function | Partially applied function we need to manage favourite status |
footerData |
Object | Our base footer object. |
(inner) focusChooserOption(currentChooserOption, previousChooserOption)
- Description:
Focus on a chooser option element and remove the previous chooser element from the focus order
- Source:
Parameters:
Name | Type | Description |
---|---|---|
currentChooserOption |
HTMLElement | The current chooser option element that we want to focus |
previousChooserOption |
HTMLElement | null | The previous focused option element |
(inner) initChooserOptionsKeyboardNavigation(body, mappedModules, chooserOptionsContainer, modal)
- Description:
Initialise the keyboard navigation controls for the chooser options.
- Source:
Parameters:
Name | Type | Description |
---|---|---|
body |
HTMLElement | Our modal that we are working with |
mappedModules |
Map | A map of all of the modules we are working with with K: mod_name V: {Object} |
chooserOptionsContainer |
HTMLElement | The section that contains the chooser items |
modal |
Object | Our created modal for the section |
(inner) manageFavouriteState(modalBody, caller, partialFavourite)
- Description:
Given a user wants to change the favourite state of a module we either add or remove the status. We also propergate this change across our map of modals.
- Source:
Parameters:
Name | Type | Description |
---|---|---|
modalBody |
HTMLElement | The DOM node of the modal to manipulate |
caller |
HTMLElement | |
partialFavourite |
function | Partially applied function we need to manage favourite status |
(inner) registerListenerEvents(modal, mappedModules, partialFavourite, footerData)
- Description:
Register chooser related event listeners.
- Source:
Parameters:
Name | Type | Description |
---|---|---|
modal |
Promise | Our modal that we are working with |
mappedModules |
Map | A map of all of the modules we are working with with K: mod_name V: {Object} |
partialFavourite |
function | Partially applied function we need to manage favourite status |
footerData |
Object | Our base footer object. |
(inner) renderSearchResults(searchResultsContainer, searchResultsData)
- Description:
Render the search results in a defined container
- Source:
Parameters:
Name | Type | Description |
---|---|---|
searchResultsContainer |
HTMLElement | The container where the data should be rendered |
searchResultsData |
Object | Data containing the module items that satisfy the search criteria |
(inner) searchModules(modules, searchTerm) → {Array}
- Description:
Return the list of modules which have a name or description that matches the given search term.
- Source:
Parameters:
Name | Type | Description |
---|---|---|
modules |
Array | List of available modules |
searchTerm |
String | The search term to match |
Returns:
- Type
- Array
(inner) setupKeyboardAccessibility(modal, mappedModules)
- Description:
Set up our tabindex information across the chooser.
- Source:
Parameters:
Name | Type | Description |
---|---|---|
modal |
Promise | Our created modal for the section |
mappedModules |
Map | A map of all of the built module information |
(inner) showModuleHelp(carousel, moduleData, modal)
- Description:
Given an event from the main module 'page' navigate to it's help section via a carousel.
- Source:
Parameters:
Name | Type | Description |
---|---|---|
carousel |
jQuery | Our initialized carousel to manipulate |
moduleData |
Object | Data of the module to carousel to |
modal |
jQuery | We need to figure out if the current modal has a footer. |
(inner) toggleFocusableChooserOption(chooserOption, isFocusable)
- Description:
Add or remove a chooser option from the focus order.
- Source:
Parameters:
Name | Type | Description |
---|---|---|
chooserOption |
HTMLElement | The chooser option element which should be added or removed from the focus order |
isFocusable |
Boolean | Whether the chooser element is focusable or not |
(inner) toggleSearchResultsView(modal, mappedModules, searchQuery)
- Description:
Toggle (display/hide) the search results depending on the value of the search query
- Source:
Parameters:
Name | Type | Description |
---|---|---|
modal |
Object | Our created modal for the section |
mappedModules |
Map | A map of all of the modules we are working with with K: mod_name V: {Object} |
searchQuery |
String | The search query |