shinyMobile 2.0.0
shinyMobile 2.0.0
Major change
- Update Framework7 from 5.7.14 to 8.3.3
- New experimental router layout
f7MultiLayout()
: supported by{brochure}
, this allows to have beautiful transitions between pages to provide a more native like experience. - New
f7Form()
: gather inputs in the same form to get a nested list containing all input values. This allows to reduce the number of inputs on the server side.
updateF7Form()
makes it possible to update input in batch or only selected ones. - Whenever you have multiple inputs, we now recommend to wrap all of them within
f7List()
which allows you to benefit from new styling options such as outline, inset, strong, ... Internally, we use a function able to detect whether the input is inside af7List()
: if yes, you can style this list by passing parameters likef7List(outline = TRUE, inset = TRUE, ...)
; if not, the input is internally wrapped in a list to have correct rendering (but no styling is possible). Besides, some input likef7Text()
can have custom styling (add an icon, clear button, outline style), which is independent from the external list wrapper style. Hence, we don't recommend doingf7List(outline = TRUE, f7Text(outline = TRUE))
since it won't render very well (only usef7List(outline = TRUE, f7Text())
). Please have a look at the corresponding examples in the documentation. - New component
f7Treeview()
: display items in a treeview. Used in combination withf7TreeviewItem()
andf7TreeviewGroup()
.
Breaking changes
- The aurora theme has been removed. Supported themes are now: ios, md and auto. In case of auto it will use iOS theme for iOS devices and MD theme for all other devices.
f7AddMessages()
is definitely removed. Deprecated from previous releases.f7Appbar()
has been removed in Framework7. We have no alternative to replace it.f7ShowNavbar()
andf7HideNavbar()
are removed, as long time deprecated.f7checkBox()
andf7checkBoxGroup()
are removed, as long time deprecated.- Remove
f7InsertTab()
,f7RemoveTab()
as long time deprecated. - Remove
f7ValidateInput()
as long time deprecated. - Remove
f7Popover()
andf7PopoverTarget()
as long time deprecated. - Remove
f7ShowPreloader()
andf7HidePreloader()
as long time deprecated. f7Menu()
,f7MenuItem()
,f7MenuDropdown()
,f7MenuDropdownDivider()
andupdateF7MenuDropdown()
are totally removed from Framework7. We have no alternative to replace it.f7Icon()
: remove deprecated parameterold
.f7SmartSelect()
:maxlength
becomesmaxLength
. Typo from Framework7.- Remove
value
fromf7Password()
(accidental copy and paste fromf7Text()
). - Possible breaking change:
f7Toolbar()
default position is nowbottom
. - Possible breaking change: remove
httr
dependency fromapp_container()
. - Possible breaking change in
f7PhotoBrowser()
:id
param reintroduce (but not mandatory, defaultNULL
) as needed byupdateF7Entity()
to update the widget on the server side. - Possible breaking change in
f7ListItem
: now, we don't allowfooter
andheader
whenever the parent list container has modemedia
(avoids cluttered layout). Whensubtitle
is provided without the parent list being of modemedia
, an error is also raised (subtitle
is specific to the media list layout).right
can't be passed whentitle
is NULL.
Soft deprecation
f7Accordion()
:multiCollapse
has been removed in Framework7.
f7Block()
:hairlines
is deprecated since removed from Framework7.
f7Segment()
:container
is deprecated, removed from Framework7.
f7Navbar()
:shadow
andsubtitle
have been removed in Framework7.
f7SocialCard()
is deprecated as the same result can be achieved withf7Card()
.f7AutoComplete()
:expandInput
is deprecated, removed from Framework7.f7Row()
,f7Col()
andf7Flex()
are deprecated in favor off7Grid()
, as specified by Framework7 8.3.3f7Fabs()
:morph
is deprecated. OnlymorphTarget
is used.f7Toolbar()
:hairline
andshadow
are deprecated, removed from Framework7.
f7Shadow()
removed from Framework7. No replacement. Will be removed in a future release.f7Swipeout
: deprecateside
parameter and...
. Now use eitherleft
/right
or both.f7AutoComplete
:value
now defaults toNULL
(instead of the first choice).updateF7Login()
:id
is deprecated.
Minor change
f7Messages()
: the corresponding input is now a list of lists, each item being a singlef7Message()
. The previous setting was not optimal R,the JS binding was returning a array of objects, which can't be easily translated to R. We now return an object of objects which becomes a list of lists.f7Block()
gains anoutline
parameter (add grey border).f7Button()
get a newtonal
style. It is also possible to passicon
as parameter and update the icon withupdateF7Button
.f7Card()
get a newraised
anddivider
parameters.f7CheckboxGroup()
has a newposition
parameter to control
the check icon position. Default to left.f7CheckboxChoice()
: new function to pass insidechoices
in a
f7CheckboxGroup()
. Improved choice with title, subtitle, ...f7List()
has newoutline
,dividers
andstrong
styles.mode
gains 2 new values:simple
andlinks
.f7ListItem()
has newroutable
parameter which allows navigation between pages in the newf7MultiLayout()
.f7ListItem()
andf7VirtualListItem()
have new optional argumentid
, which allows for easy targeting.f7ListIndex()
now gets applied to an specific element, instead of the whole page. This makes it possible to add multiple lists with list indexes to the same app.- Added
id
argument tof7List()
, which makes it possible to use an id as target inf7ListIndex
. f7Panel()
has new "floating"/"push" effects as well as a newoptions
parameter
to pass in extra configuration. See https://framework7.io/docs/panel#panel-parameters.f7VirtualList()
has newoutline
,dividers
andstrong
styles. Additionally,mode
was added with the following possible values:simple
,links
,media
orcontacts
.f7Popup()
has a newpush
effect (pushing the main view behind on opening). There's also a new argument calledpage
that can control whether or not the popup behaves as a page and can scroll- handy for popups with more content.f7Radio()
has a newposition
parameter to control
the check icon position. Default to left (likef7CheckboxGroup()
).
Also,f7Radio()
inherits fromf7List()
styling parameters such asinset
,outline
,dividers
,strong
for more styling option.f7RadioChoice()
: new function to pass insidechoices
in a
f7Radio()
. Improved choice with title, subtitle, ...f7Sheet()
gains newoptions
parameter to allow passing more configuration. See https://framework7.io/docs/sheet-modal#sheet-parameters.f7Picker()
has new...
parameter to pass custom options. Alsof7Picker()
now can have NULL asvalue
, allowing you to display a placeholder.f7DatePicker()
has new...
parameter to pass custom options.f7DatePicker()
now also supports usage of thetimePicker
, and returns a posixct object when this is enabled. See https://framework7.io/docs/calendar#examples.- Added
tapHoldPreventClicks
,touchClicksDistanceThreshold
,mdTouchRipple
tof7Page()
touch options. - The
dark
option inf7Page()
now also supports"auto"
besidesTRUE
andFALSE
. If set to auto (the new default) it automatically enables dark theme based on user system color scheme preference. showF7Preloader()
has newtype
parameter and a new modal dialog support (iftype
is passed). Newid
parameter that has to be set whentype
is not NULL.hideF7Preloader()
has a newid
parameter. This is to hide modals or progress from the server.- New
updateF7Preloader()
to be able to update a progress preloader from the server. f7PhotoBrowser()
fixed thepageBackLinkText
toback
when type was set topage
, but this has been removed. The Framework7 default is now used, or thepageBackLinkText
can be set manually (iOS only).f7ColorPicker()
has new...
parameter to pass custom options and now returns a list of values with hex, rgb, hsl, hsb, alpha, hue, rgba, and hsla values.f7Slider()
has new...
parameter to pass extra options. New
showLabel
parameter: fix an unfortunate naming conflict between the input label (name) and the name Framework7 has given to the bubble component (label).f7AutoComplete()
andupdateF7AutoComplete()
have new...
parameter to pass extra options as well as a newstyle
parameter to customize the input look and feel.f7AutoComplete()
has newstyle
parameter to allow for custom styling only whenopenIn
isdropdown
.f7SplitLayout()
has a new look and at a minimal app width (1024 px) the sidebar becomes always visible. The sidebar will be collapsed on smaller screens.f7Text()
,f7TextArea()
andf7Password()
have new parameters:description
,media
,floating
,outline
andcleareable
for more styling options.label
can also be NULL.f7Select()
has newdescription
,media
andoutline
parameters.f7Link()
has newroutable
parameter which allows to use the new experimental router layout inf7MultiLayout()
.f7Navbar()
: bothleftPanel
andrightPanel
now accept shiny tags such as an icon or link. This is useful to support
the new router layout. Items must be wrapped in ashiny::tagList()
.- New
f7DefaultOptions()
: can be used inf7Page()
to pass app options. f7Picker
,f7DatePicker
andf7ColorPicker
now have an additionalstyle
parameter to set the input style and inherit fromf7List
options such as outline, inset, strong and dividers.f7Toggle()
andf7Stepper()
automatically detect when they are called inside af7List
and adjust accordingly to the list style.f7TabLink()
:href
can now be different of#
if passed in...
(Default is still#
when no customhref
is detected). This allows to use tab links as routable links but with a better rendering in the toolbar/tabbar than classicf7Link()
.updateF7App
can now also handle changes in app theme (ios or md), dark mode, and color.f7Fabs()
has a new argumentglobal
that can be used to make FABs persistent across different tabs inf7TabLayout()
.f7ExpandableCard()
has a new argumentbuttonColor
that can be used to control the color of the close button.f7Login()
has a new argumentcancellable
that can, optionally, show a cancel button to close the login window.f7LoginServer()
also return the cancel state so it can be used to trigger actions on the server side, like changing tab.updateF7Login()
: newcancel
parameter to close the login window.- Fix various issues in documentation.
- Include new vignettes.
Thanks
An enormous thank to @hypebright and Michael Czahor.