Change log
Version 2.1.0
Released: not yet
New features
- Carousel plugin: Added
lengthproperty Frontfire.delay: Added optionalabortSignalparameter- Added
Frontfire.isFunction - Added
Frontfire.scrollbarWidthandFrontfire.scrollbarHeight - ColorPicker plugin: Added
dataColorproperty and improved dark theme support - Added
Frontfire.forwardEventandFrontfire.unforwardEvent - Added
Frontfire.dark - Added
Frontfire.effectiveBackgroundColor - DataColor: Added "b2" background colour option, making it 3 foreground and equally many background colours
- Added
DataColor.parseandDataColor.parseGetColor - Added
radio-groupCSS class - Form row column widths in XAML syntax
ArrayList.maxByandArrayList.minByArrayList.sortByUseLocaleandArrayList.sortByDescendingUseLocaleArrayList.orderByUseLocaleandArrayList.orderByDescendingUseLocale- Modal plugin: Added
defaultButtonandflexLayoutoptions,--modal-marginand--modal-paddingCSS variables, andfull-pageCSS class - Selectable plugin: Added properties to the
changeevent - Selectable plugin: Added
isDropdownOpenproperty andcloseDropdownandopenDropdownmethods - Extended
F.scrollIntoView()to support string parameters for margins to specify relative fill space - Form submit lock: added
showLoadingIndicatorparameter tolock()method
Bugfixes
- Spinner (actually RepeatButton) is more robust when disabling a button, triggered by a bug in Firefox 119 (fixed in Firefox 124)
- Carousel plugin:
activeItemproperty now really returns the element Color()did not remove its temporary element for color name parsing- Colour picker modal did not remove its modal content element after closing the modal
- Static modal content was not initialised with the
.frontfire()call - Selectable dropdown was opened when scrolling the page with touch input on the element
- Numeric spinner value was changed when scrolling the page with touch input on a button
- Repeat button with text content did not support touch input
- Tab page was changed when scrolling the page with touch input on a tab header
- Tree reordering of items was not possible with touch input, now dragging items is preferred over vertical scrolling
- Slider value was changed when scrolling the page along the other axis with touch input on the slider element
- Resolved warning from
F.isFirefox()using a now deprecated feature for browser detection - Modal plugin: Enter key with Shift key does not trigger the default action anymore to allow line breaks in
<textarea>inputs
Breaking changes
- Modal plugin: Buttons are no longer centred by default. To horizontally centre the buttons, add the
centerCSS class to the<div class="buttons">element.
Changes
- ArrayList sorting functions have a defined behaviour for null and undefined values.
- F.modal() increases the content width automatically to avoid unnecessary line wrap when a scrollbar is shown
Frontfire.clone: Handles content of template elements conveniently- Gallery plugin: Improved last row size handling
- Renamed
Frontfire.sleeptoFrontfire.delay, old name kept as alias
Version 2.0.0
Released: 2023-06-04
New features
- Added
Frontfire.isChromeOSmethod Frontfire.onindicates whether this is the immediate handler invocation by setting theisImmediateproperty.
Breaking changes
- Renamed
Frontfire.isMacmethod toisMacOS
Changes
dark-invertCSS class is now available for all elements to also support image stripesFrontfire.visibleproperty considers visible replacement elements- ColorPicker plugin: Circular hue value selection with arrow keys
- Dropdown plugin: Prevent wheel scrolling if there is nothing to scroll within the dropdown itself
- Selectable plugin: Hide invisible original
<option>elements in the UI
Bugfixes
Frontfire.moveTo(used by draggable; then carousel, sortable, timePicker) converted local to document coordinates, resulting in a wrong position- Dropdown opened at the wrong location when setting the
fixedoption - Link-styled buttons did not show the underlining as normal hyperlinks
Version 2.0.0-rc.2
Released: 2023-03-22
New features
- Selectable plugin: items and button are updated on value/text changes in option elements
- Dropdown plugin:
arrowand related options, 2 new CSS variables for background and border colours,closedevent
Version 2.0.0-rc.1
Released: 2023-03-10
New features
- Carousel plugin
- Gallery plugin
- Resizable plugin
- CSS class
expandedfor initially expanded accordion items - Added styling for the
<mark>element - ToggleSwitch can be applied to an
<input type="checkbox">element, also automatically with thetoggle-switchCSS class - Added
ArrayList.selectManyRecursivemethod - Added
Frontfire.deleteOptionsmethod - Added
deinit()methods for the ColorPicker, Progressbar, Tree and WheelScrolling plugin.
Breaking changes
- AJAX methods
F.getJSON,F.postJSONandF.postFormreturned Promise resolves to undefined (instead of null) on error to be able to indicate the JSON valuenullas response - AJAX method
F.postFormrenamed toF.postFormJSONas more AJAX methods were added - ToggleSwitch plugin method does not return a plugin instance anymore, but can convert multiple elements at once
- TreeView plugin renamed to Tree
- Layout properties
F.leftandF.topdo not set the plain CSS property of the same name anymore but the actual position of the element relative to the document. They now only accept numbers as values. The difference is when an element is in a relative-positioned parent that is not at the origin (0/0) of the document.
Breaking changes since v1
- CSS classes
gallery-centerandgallery-rightrenamed tocenterandright - CSS class
inverted-indicatorof the carousel removed, use thedarkandnot-darktheme classes instead - Off-canvas
offcanvasopening,offcanvasopen,offcanvasclosing,offcanvascloseevents renamed toopening,open,closing,close(similar to modal) - Removed undocumented styles for
nav ul.menu, modify the --menu-* CSS variables for that scope instead - The
dropdown()plugin method no longer accepts the target element as first parameter. Instead, the target property must be set in the options object. This removes the last inconsistency with Frontfire UI plugin methods that now all have a single options parameter. The target can now also be specified as CSS selector string, also from a data-opt HTML attribute. - The
remove()method of the Draggable, Resizable and Sortable plugins was renamed todeinit()and should only be called throughF.deinit().
Version 2.0.0-beta.2
Released: 2023-01-05
New features
- Accordion plugin
- ColorPicker/ColorInput plugin,
F.colorPickerModal()function - TimePicker plugin
- Allow svg icons in buttons
F.value()function for date/time input fields accepts setting a string value instead of a Date instance- More CSS style support for elements with the
not-darkclass (little tested) - CSS class
indentfor accordion contents - Extended/added
F.scrollIntoView(),F.scrollToTop()andF.scrollToBottom()
Breaking changes
- Dropdown and modal color and background properties adapt to the dark theme automatically
languageOverrideoptions renamed tolanguageeverywhere
Breaking changes since v1
- Colour input fields are used with
<input type="text" class="color-picker">instead of<input type="color"> - Accordion icons are enabled by default (can be hidden with the
no-iconsCSS class) and fixed (no different icon styles anymore, same as in Tree);
CSS classesplusminus,plusminus-right,sidearrows,sidearrows-right,updownarrowsandupdownarrows-rightremoved
Version 2.0.0-beta.1
Released: 2022-11-13
New features since v1
- ColorPicker plugin
- Notification plugin
- ToggleSwitch plugin
- Tree plugin
- OffCanvas animation events
- Several little enhancements and new methods
Missing from v1
- Accordion (planned for beta 2 – done)
- Carousel (planned for 2.0 – done)
- ColorPicker on form field (planned for beta 2 – done)
- Gallery (planned for 2.0 – done)
- Resizable (planned for 2.0 – done)
- TimePicker (planned for beta 2 – done)
Breaking changes since v1
- Internet Explorer and Classic Edge are no longer supported (haven’t been tested lately anyway)
- jQuery calls replaced by Frontfire, mostly just use
F()instead of$() - Sass variables replaced by CSS variables, no need to recompile to customise
- The
data-optattribute syntax has changed from jQuery-parsed relaxed JSON to a new CSS-like notation. Complex values may not be supported anymore or harder to write. - CSS class
page-widthis always width-limited, for full width the classfull-page-widthmust be used - Hyperlinks are underlined again (except when hovered), customise with the
--link-text-decorationand--link-hover-text-decorationCSS variables - CSS classes of messages (
critical,error,warning,information,success) must be used together withmessage - CSS class
widefor<hr>replaced withdouble-margin - CSS classes
left-alignandright-alignrenamed toleftandright - CSS classes
nowrap-require-*replaced by combination ofnowrapandrequire-* - CSS class
inverted(withloading) removed, use dark theme instead <a>within<div class="buttons">is no longer a button, add thebuttonclass explicitly- JavaScript
frontfire()method with arguments indicating autostart mode must be replaced with the separateautostart()method without arguments. - JavaScript
F.modal()returns Promise instead of accepting a resultHandler option. - Modal and off-canvas option
cancellablerenamed tocancelable(US spelling, as in DOM events API) - JavaScript
F.updateLastColumn()renamed toupdateFirstLastColumn() - The
stepordata-stepattribute of<input type="number">elements cannot contain values like "*10" anymore, the step factor must be specified in thedata-step-factorattribute. - CSS class
white-marginrenamed towhite-border - Multiple adjacent buttons in a
segmented-inputelement must be grouped in an additional<span class="group">to keep their separator lines. - CSS class
no-autostartrenamed tono-frontfire - Dropdown method
isOpenis now a property - Dropdown
dropdowncloseevent renamed toclosingin contexts where it is cancellable andclosefor the final event (the second one is always triggered) - Selectable methods
addChildandremoveChildremoved, not needed anymore - Selectable event
selectionchangerenamed tochange(as for native input fields) - Selectable option
allowEmptyrenamed torequired(similar to HTML), now negated value - Disabled dropdown menu items need the
disabledattribute on the<a>child element instead of the<li>element. - Progressbar event
valuechangerenamed tochange - Progressbar methods
value,valuePrefixandvalueSuffixare now properties - Tabs methods
activeTabandpagesare now properties - Tabs property
activeTabcan only handle page nodes, useactiveTabIndexto use page index numbers. - Sortable method
addChildremoved, not needed anymore - Slider event
valuechangerenamed tochange - CSS class
darkfor<a|div class="image-overlay-text">renamed toinvert - Off-canvas option
pushrenamed topushFactor