skeletonsOnLoad
to f7Page()
options
(not compatible) with preloader
.preloader
is moved to f7Page()
options
list.loading_duration
from f7Page()
.
Now the preloader will automatically disappear when shiny is idle like
in {bs4Dash}
.f7SplitLayout()
for consistency reasons.f7Tab()
uses validate_tabName
so that
Tab 1
is not valid anymore but Tab1
yes. Tabs
will have to be manually renamed.f7Popup()
is now generated on the server side like
f7Notif()
. Remove updateF7Popup()
,
f7TogglePopup()
.f7listIndex()
: remove
f7ListIndexItem()
. f7ListIndex()
is generated
from the server side.f7Skeleton()
: triggered from server side. See
examples.f7Swiper()
: better CSS, pagination, navigation,
scrollbar, …f7PhotoBrowser()
example: wrong default
theme …f7CheckBox()
: better layout.f7FabMorphTarget()
example.f7PhotoBrowser()
just works with two or more
pictures. Fix issue in JSON conversion.updateF7Popup()
documentation (showed as
deprecated by mistake).f7Navbar()
: hard-coded css style causing
white text on white background.f7Tab()
so as to pass any name, as oposed to
tabName.f7SmartSelect()
with openIn
param (failed when not provided).f7Tab()
can create duplicate IDs which in
turn break the page. Now we use validate_tabName
internally
to check whether the tab is valid (avoid JS issues with jQuery
selectors)…updateF7AutoComplete()
accepts
choices.f7SmartSelect()
interfering NS for
server-side module.f7DatePicker()
and DST.f7Page()
does not accept anymore color by its name.
Now, and like in earlier versions, f7Page()
accepts either
hex code or color name.f7Slider()
code updated to work with the
fix for #215 above.This release only fixes an issue with Shiny 1.7.0 with a failing unit test. Thanks @schloerke
This release also fixes an issue with R CMD check and htmltools
f7Link()
icon now expects
f7Icon()
. label is not mandatory
anymore.updateF7Radio()
. Fixes #135. Thanks @korterling.f7Dialog()
has a fixed height of 300px and vertical
overflow to avoid issues....
to f7SmartSelect()
.options
to f7SearchBar()
to provide
more configuration. Fixes #47: thanks @rodrigoheck.valueText
param for f7Gauge()
. Fixes
#84: thanks @tanho63.f7Gauge()
JS code (no user impact).f7SmartSelect()
.insertF7Tab()
are losing reactivity.f7DatePicker()
visibility issue. Thanks @styvens.f7Button()
with link not working. Thanks
@bwganblack.f7SmartSelect()
on selection. Thanks
@dewalex.This release is to addresses the following reverse dependency issue with shiny. Moreover, it also starts the road to v1.0.0 (later this year).
f7AddMessages()
will become
updateF7Messages()
in future releasef7HideNavbar()
and f7ShowNavbar()
will be
replaced by updateF7Navbar()
f7ShowPopup()
will become
updateF7Popup()
f7checkBox()
will become f7Checkbox()
f7checkBoxGroup()
will become
f7CheckboxGroup()
f7ValidateInput()
will become
validateF7Input()
f7InsertTab()
and f7RemoveTab()
will
becomes insertF7Tab()
and removeF7Tab()
,
respectivelyf7ShowPreloader()
and f7HidePreloader()
will become showF7Preloader()
and
hideF7Preloader()
, respectively.f7Popover()
and f7PopoverTarget()
replaced
by addF7Popover()
and toggleF7Popover()
create_manifest()
is going to be replaced by the
workflow described here:
https://unleash-shiny.rinterface.com/mobile-pwa.html#charpente-and-pwa-toolsupdateF7Fabs()
: inputId becomes
idf7Appbar()
: left_panel becomes
leftPanel and right_panel
rightPanelf7Init()
removed. Now pass it through the
f7Page()
optionsf7Navbar()
: left_panel becomes
leftPanel and right_panel
rightPanelf7Panel()
and updateF7Panel()
:
inputId becomes idf7InsertTab()
and f7RemoveTab()
:
inputId becomes idf7ExpandableCard()
and f7Card()
:
img becomes imagef7SocialCard()
: author_img becomes
imagef7ListItem()
: url becomes
hreff7VirtualListItem()
: url becomes
hrefupdateF7VirtualList()
: old_index and
new_index become oldIndex and
newIndex, respectivelyf7Toast()
,
updateF7Progress()
, … and has been swapped at the end of
the parameters for more conveniencef7Dialog()
: inputId becomes
idupdateF7Sheet()
: inputId becomes
idf7Link()
: external has been removed
from (much simpler), src becomes
hreff7Button()
: src becomes
hreff7Gauge()
and not mandatory. Default to
shiny::getDefaultReactiveDomain()
f7Chip()
: icon_status becomes
iconStatus, img becomes
imagef7Accordion()
and updateF7Accordion()
f7ProgressInf()
(useless)f7Swiper()
API. New options
parameterf7PhotoBrowser()
is now called from the shiny server
function. See help, id and label have
been removedf7Searchbar()
updateF7Entity()
updateF7ActionSheet()
addF7Tooltip()
and updateF7Tooltip()
to generate tooltips from the serverf7Page()
so
that we doesn’t oblige users to create a PWAf7Page()
has a new options parameter
as replacement of f7Init()
. Much simpler to handlef7Menu()
, f7MenuItem()
,
f7MenuDropdown()
, f7MenuDropdownDivider()
and
updateF7MenuDropdown()
: special buttons and dropdown
elements, behaving like action buttonsf7PhotoBrowser()
updateF7SmartSelect()
: thanks @Edireitoshiny:disconnect
occurs. Gives
ability to reload or reconnecthtmltools::attachDependencies()
in
create_app_ui
f7Searchbar()
since it messes up
with tabbar navigation. This does not have any impact on user
experience. In a future release of shinyMobile,
f7Searchbar()
will have input binding associated as well as
more parameters for configurationf7SmartSelect()
: type param becomes openIn to align
with other inputsf7Messages()
: messages are updated on the server
side with f7AddMessages()
. New f7MessageBar()
to send messages from the server side.f7ActionSheet()
: to access the currently selected
button, use input$[sheet_id]_button. This is to make action sheets
compatible with shiny modules. Moreover, the buttons provided must be
included in a list (not in a dataframe)f7Sheet()
is still inserted in the UI side but can be
triggered either on the server side in combination with
updateF7Sheet()
(see example) or on the UI side. Overall,
this improves flexibility since user may choose any trigger element. In
practice, any element having data-sheet
pointing to the
sheet id as well as the “sheet-open” css class may open it, instead of
having a default trigger contained in the sheet. A use case may be to
open a sheet in the tabbar (the trigger would be a
f7TabLink()
that is a special button styled for the
tabbar)session
is now
optional and has been moved to the last position in function callf7AutoComplete()
: type becomes openIn to align with the
framework7 documentationf7Icon()
(not used)f7Popup()
. It has now an input associated
giving the popup state (opened or closed) as well as new parameters:
backdrop, closeByBackdropClick, closeOnEscape, animate and swipeToClose.
label parameters has been removed. To create an f7Popup()
put the f7Popup()
tag in you UI. On the server side call
f7TogglePopup()
. See documentation for a detailed example.
Thanks @pasahef7NavbarHide()
renamed to f7HideNavbar()
for consistancyf7NavbarShow()
renamed to f7ShowNavbar()
for consistancyf7Gauge()
valueText was removed. It does not make
sense that the value can be accidentally different from the text
displayed. valueText is then an internal parameter.f7DatePicker()
: min becomes minDate, max becomes
maxDate and format becomes dateFormatf7Appbar()
input$shinyInfo
and
input$lastInputChanged
(see shinyMobile tools vignette for
more details)f7SmartSelect()
has input binding as well as an update
function updateF7SmartSelect()
f7VirtualList()
, f7VirtualListItem()
,
updateF7VirtualList()
: high performance list with caching
system -> faster rendering (up to 10x faster than
f7List()
). Ability to add item(s), remove item(s), move
item, filter items, …f7TabLayout()
. This allows
to use the f7Messagebar()
in a tabs layout
configuration.f7ValidateInput()
function to validate input from
the server side (similar to shinyFeedback but internal to shinyMobile
and without dependencies)f7Login()
and updateF7Login()
feature
to provide UI boilerplates for authenticationf7Tabs()
may be used as standalone components with the
style argument (segmented or strong). toolbar has the default
behavior.f7Icon()
and icons dependencies. thanks @pvictorupdateF7DatePicker()
: thanks @pvictorf7Fabs()
to get the status of the
containerupdateF7Button()
and
updateF7Fabs()
f7Init()
. Pull the
screen from top to bottom fires input$ptr
which becomes
TRUE. When the pull to refresh event is finished, input$ptr
is NULL. Useful to trigger events in an observeEventupdateF7Select()
: thanks @Seyphaton for the suggestionf7TogglePopup()
to close/open a
f7Popup()
. Thanks @pasahepreview_mobile()
: function that previews your app
in a seleted range of devices (iphone, samsung, htc, …)f7File()
for file upload. See shiny
fileInput
f7DownloadButton()
to work properly with the
shiny downloadHandler
function. Thanks @bwganblack for the
reportf7Init()
to control
the delay necessary to trigger a long press (default to 750 ms)f7ShowPreloader()
and
f7HidePreloader()
f7TextArea()
input and
updateF7TextArea()
on the server sidef7checkBoxGroup()
and
f7Radio()
f7TabLink()
(special link to insert in
f7Tabs()
that may open a f7Sheet()
)f7Button()
f7Segment()
f7Popup()
+
rewrite js binding. Thanks @pvictorf7DatePicker()
: direction,
openIn, scrollToInput, closeByOutsideClick, toolbar, toolbarCloseText,
header and headerPlaceholderupdateF7Gauge()
. Thanks @rodrigoheck for the
suggestionf7Slider()
to prevent wrong
behaviour when used in f7TabLayout()
f7Select()
does not rely anymore on the shiny
selectInput binding (does not have impact on user experience)f7Tab()
: allows to navigate
through hidden tabs without displaying them in the tab menu. Thanks
@rodrigoheckf7AutoComplete()
f7Picker()
and
updateF7Picker()
: rotateEffect, openIn, scrollToInput,
closeByOutsideClick, toolbar, toolbarCloseText and
sheetSwipeToClosef7Icon()
f7Select()
updateF7Slider()
f7Slider()
f7Slider()
labels (remove enableLabels param)updateF7Slider()
f7Slider()
updateF7Stepper()
f7Stepper()
: add 2 more parameters (decimalPoint
and buttonsEndInputMode)f7Init()
. This improves perfomances on old devicesf7SingleLayout()
example (replace sliderInput
by f7Slider)f7SplitLayout()
example (replace sliderInput by
f7Slider)f7TabLayout()
exampleupdateF7AutoComplete
: text input was not
updated. Thanks @sanchez5674 for the reportf7Page()
. Thanks @
pvictorf7Sheet()
wrong css style applied when
multiple sheets are in the same appf7Tabs()
: if one put f7Tabs()
inside a f7Tab()
in a parent f7Tabs()
, the
input binding was giving the wrong tab for the top level tabset (once we
clicked in the tab containing the sub-tabset).f7InsertTab()
and
f7RemoveTab()
when swipeable is TRUEf7Tabs()
on click. This allows
to use f7Tabs()
without swipeable and animatedf7Panel()
(need to provide the f7Panel()
inputId)f7Swipeout()
to make the current tab swipping
if in f7TabLayout()
f7Fab()
label white background color in dark
modef7Navbar()
would center
the body content on scroll, due to a css conflictf7Slider()
and
f7TabLayout()
: When setting value of a slider in a
swipeable f7TabLayout it cause the tab to be swip. This describe here :
framework7io/framework7#2603. Thanks @pvictorf7DatePicker()
format for months.
Thanks @kmaheshkulkarnif7DatePicker()
: the viewport does not
scroll to input by defaultf7AutoComplete()
examplef7Popup()
. Thanks
@pasahef7Popup()
. Now
f7Popup()
triggers shiny output rendering. Thanks @pasaheupdateF7Gauge()
-> wrong fraction for semi
circle gauges.f7Stepper()
: some options were not properly
initialized (max, min, …)f7Slider()
example 2: wrong argument in helpf7Icon()
example: wrong function namef7Row()
examplef7Sheet()
: hiddenItems is NULL by defaultf7Appbar()
NEWS.md
file to track changes to the
package.