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_rv, is_active)
.make_filtered_teal_data(modules, data, datasets = NULL, datanames)
.observe_active_filter_changed(datasets, is_active, active_datanames, data_rv)
.get_filter_expr(datasets, datanames)
Arguments
- id
(
character
) Optionally, a string specifying theshiny
module id in cases it is used as ashiny
module rather than a standaloneshiny
app. This is a legacy feature.- datasets
(
reactive
returningFilteredData
orNULL
) Whendatasets
is passed from the parent module (srv_teal
) thendataset
is a singleton which implies in filter-panel to be "global". WhenNULL
then filter-panel is "module-specific".- active_datanames
(
reactive
returningcharacter
) this module's data names- data_rv
(
reactive
returningteal_data
)- modules
(
list
orteal_modules
orteal_module
) Nested list ofteal_modules
orteal_module
objects or a singleteal_modules
orteal_module
object. These are the specific output modules which will be displayed in theteal
application. Seemodules()
andmodule()
for more details.