Creates filter panel module from teal_data object and returns teal_data. It is build in a way
that filter panel changes and anything what happens before (e.g. module_init_data) is triggering
further reactive events only if something has changed and if the module is visible. Thanks to
this special implementation all modules' data are recalculated only for those modules which are
currently displayed.
Usage
ui_filter_data(id)
srv_filter_data(id, datasets, active_datanames, data, is_active)
.make_filtered_teal_data(modules, data, datasets = NULL, datanames)
.observe_active_filter_changed(datasets, is_active, active_datanames, data)
.get_filter_expr(datasets, datanames)Arguments
- id
(
character(1))shinymodule instance id.- datasets
(
reactivereturningFilteredDataorNULL) Whendatasetsis passed from the parent module (srv_teal) thendatasetis a singleton which implies the filter-panel to be "global". WhenNULLthen filter-panel is "module-specific".- active_datanames
(
reactivereturningcharacter) this module's data names- data
(
reactivereturningteal_data)- modules
(
teal_modules)teal_modulesobject. These are the specific output modules which will be displayed in thetealapplication. Seemodules()andmodule()for more details.