Plugin.ConsoleFilters Class
Provides Plugin.ConsoleFilters plugin class.
This plugin adds the ability to control which Console entries display by filtering on category and source. Two groups of checkboxes are added to the Console footer, one for categories and the other for sources. Only those messages that match a checked category or source are displayed.
Item Index
Methods
- _afterCacheLimitChange
- _afterCategoryChange
- _afterClearConsole
- _afterSourceChange
- _createCheckbox
- _filterBuffer
- _onCategoryCheckboxClick
- _onEntry
- _onSourceCheckboxClick
- _setCacheLimit
- _uiSetCheckbox
- _validateCategory
- _validateSource
- bindUI
- destructor
- hideCategory
- hideSource
- initializer
- refreshConsole
- renderUI
- showCategory
- showSource
- syncUI
Properties
- _cacheLimit
- _categories
- _entries
- _sources
- CATEGORIES_TEMPLATE static
- CHROME_CLASSES static
- FILTER_TEMPLATE static
- NAME static
- NS static
- SOURCES_TEMPLATE static
Attributes
Methods
_afterCacheLimitChange
    
        - 
                    
                        e
Trims the cache of entries to the appropriate new length.
Parameters:
- 
                    
                        eEventthe attribute change event object 
_afterCategoryChange
    
        - 
                    
                        e
Triggers the Console to update if a known category filter changes value (e.g. visible => hidden). Updates the appropriate checkbox's checked state if necessary.
Parameters:
- 
                    
                        eEventthe attribute change event object 
_afterClearConsole
    
        ()
    
    
    
    
        protected
    
    
    
    
    
    Flushes the cached entries after a call to the Console's clearConsole().
_afterSourceChange
    
        - 
                    
                        e
Triggers the Console to update if a known source filter changes value (e.g. visible => hidden). Updates the appropriate checkbox's checked state if necessary.
Parameters:
- 
                    
                        eEventthe attribute change event object 
_createCheckbox
    
        - 
                    
                        container
- 
                    
                        name
Creates a checkbox and label from the ConsoleFilters.FILTER_TEMPLATE for the provided type and name. The checkbox and label are appended to the container node passes as the first arg.
_filterBuffer
    
        ()
    
    
    
    
        protected
    
    
    
    
    
    Flushes the Console's print buffer of any entries that have a category or source that is currently being excluded.
_onCategoryCheckboxClick
    
        - 
                    
                        e
Passes checkbox clicks on to the category attribute.
Parameters:
- 
                    
                        eEventthe DOM event 
_onEntry
    
        - 
                    
                        e
Ensures a filter is set up for any new categories or sources and collects the messages in _entries. If the message is stamped with a category or source that is currently being filtered out, the message will not pass to the Console's print buffer.
Parameters:
- 
                    
                        eEventthe custom event object 
_onSourceCheckboxClick
    
        - 
                    
                        e
Passes checkbox clicks on to the source attribute.
Parameters:
- 
                    
                        eEventthe DOM event 
_setCacheLimit
    
        - 
                    
                        v
Setter method for cacheLimit attribute. Basically a validator to ensure numeric input.
Parameters:
- 
                    
                        vNumberMaximum number of entries 
Returns:
_uiSetCheckbox
    
        - 
                    
                        type
- 
                    
                        item
- 
                    
                        checked
Updates the checked property of a filter checkbox of the specified type. If no checkbox is found for the input params, one is created.
_validateCategory
    
        - 
                    
                        cat
- 
                    
                        v
Validates category updates are objects and the subattribute is not too deep.
Returns:
_validateSource
    
        - 
                    
                        cat
- 
                    
                        v
Validates source updates are objects and the subattribute is not too deep.
Returns:
bindUI
    
        ()
    
    
    
    
        protected
    
    
    
    
    
    Binds to checkbox click events and internal attribute change events to maintain the UI state.
destructor
    
        ()
    
    
    
    
        protected
    
    
    
    
    
    Removes the plugin UI and unwires events.
hideCategory
    
        - 
                    
                        cat
Hides any number of categories from the UI. Convenience method for myConsole.filter.set('category.foo', false); set('category.bar', false); and so on.
Parameters:
- 
                    
                        catString multiple1..n categories to filter out of the UI 
hideSource
    
        - 
                    
                        src
Hides any number of sources from the UI. Convenience method for myConsole.filter.set('source.foo', false); set('source.bar', false); and so on.
Parameters:
- 
                    
                        srcString multiple1..n sources to filter out of the UI 
initializer
    
        ()
    
    
    
    
        protected
    
    
    
    
    
    Initialize entries collection and attach listeners to host events and methods.
refreshConsole
    
        ()
    
    
    
    
    
    
    
    
    Repopulates the Console with entries appropriate to the current filter settings.
renderUI
    
        ()
    
    
    
    
        protected
    
    
    
    
    
    Adds the category and source filter sections to the Console footer.
showCategory
    
        - 
                    
                        cat
Shows any number of categories in the UI. Convenience method for myConsole.filter.set('category.foo', true); set('category.bar', true); and so on.
Parameters:
- 
                    
                        catString multiple1..n categories to allow to display in the UI 
showSource
    
        - 
                    
                        src
Shows any number of sources in the UI. Convenience method for myConsole.filter.set('source.foo', true); set('source.bar', true); and so on.
Parameters:
- 
                    
                        srcString multiple1..n sources to allow to display in the UI 
syncUI
    
        ()
    
    
    
    
    
    
    
    
    Updates the UI to be in accordance with the current state of the plugin.
Properties
_cacheLimit
    Number
    
    
        protected
    
    
    
    
    Maximum number of entries to store in the message cache.
Default: Infinity
_entries
    Array
    
    
        protected
    
    
    
    
    Collection of all log messages passed through since the plugin's instantiation. This holds all messages regardless of filter status. Used as a single source of truth for repopulating the Console body when filters are changed.
CATEGORIES_TEMPLATE
    String
    
    
    
    
        static
    
    
    Markup template used to create the container for the category filters.
FILTER_TEMPLATE
    String
    
    
    
    
        static
    
    
    Markup template used to create the category and source filter checkboxes.
NS
    String
    
    
    
    
        static
    
    
    The namespace hung off the host object that this plugin will inhabit.
Default: 'filter'
Attributes
cacheLimit
    Number
    
    
    
    
    
    Maximum number of entries to store in the message cache. Use this to limit the memory footprint in environments with heavy log usage. By default, there is no limit (Number.POSITIVE_INFINITY).
Default: Number.POSITIVE_INFINITY
Fires event cacheLimitChange
            
            Fires when the value for the configuration attribute cacheLimit is
            changed. You can listen for the event using the on method if you
            wish to be notified before the attribute's value has changed, or
            using the after method if you wish to be notified after the
            attribute's value has changed.
            
Parameters:
- 
                        eEventFacadeAn Event Facade object with the following attribute-specific properties added:
category
    Object
    
    
    
    
    
    Map of entry categories to their visibility status. Update a particular category's visibility by setting the subattribute to true (visible) or false (hidden).
For example, yconsole.filter.set('category.info', false) to hide log entries with the category/logLevel of 'info'.
Similarly, yconsole.filter.get('category.warn') will return a boolean indicating whether that category is currently being included in the UI.
Unlike the YUI instance configuration's logInclude and logExclude properties, filtered entries are only hidden from the UI, but can be made visible again.
Fires event categoryChange
            
            Fires when the value for the configuration attribute category is
            changed. You can listen for the event using the on method if you
            wish to be notified before the attribute's value has changed, or
            using the after method if you wish to be notified after the
            attribute's value has changed.
            
Parameters:
- 
                        eEventFacadeAn Event Facade object with the following attribute-specific properties added:
defaultVisibility
    Boolean
    
    
    
    
    
    Default visibility applied to new categories and sources.
Default: true
Fires event defaultVisibilityChange
            
            Fires when the value for the configuration attribute defaultVisibility is
            changed. You can listen for the event using the on method if you
            wish to be notified before the attribute's value has changed, or
            using the after method if you wish to be notified after the
            attribute's value has changed.
            
Parameters:
- 
                        eEventFacadeAn Event Facade object with the following attribute-specific properties added:
source
    Object
    
    
    
    
    
    Map of entry sources to their visibility status. Update a particular sources's visibility by setting the subattribute to true (visible) or false (hidden).
For example, yconsole.filter.set('sources.slider', false) to hide log entries originating from Y.Slider.
Fires event sourceChange
            
            Fires when the value for the configuration attribute source is
            changed. You can listen for the event using the on method if you
            wish to be notified before the attribute's value has changed, or
            using the after method if you wish to be notified after the
            attribute's value has changed.
            
Parameters:
- 
                        eEventFacadeAn Event Facade object with the following attribute-specific properties added:
