All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Upgrade to
rails
to7.2
- Update
gems
andimportmap
- Added
submit-actions
class name tosubmit_actions
fields helper.
- Updated
rails
to version7.1.4
- Updated gems and npm packages
- Cannot read properties of undefined (reading 'destroy') in
stimulus
controllers. - Missing target element "menu" for "navbar" controller
- Incorrect
for
attribute value in radio buttons ofradio_buttons_field_group
when value is a datetime
- import
GoogleMapsLoader
dynamically - import
tippy
dynamically - import
Sortable
dynamically - import
Chart
dynamically - import
MarkerClusterer
dynamically - import
createPopper
dynamically
- imports with relative paths were failing in
js
files.
- Button to clear polygons in coordinates polygon field
- Button to clear holes in coordinates polygon field
- Migrated from
jsbundling-rails
toimportmaps-rails
- Updated
gems
andnpm
packages
Bali::Commands::XlsxExport
class. This class allows us to use DSL in xlsx export.
- Fix InputOnChangeController#change. Updated to use the new Slim Select 2.0 API.
- Allow
DrawingMapsController
to draw and export multiple polygons classified into shells and holes. As a result, the value fromcoordinates_field
andcoordinated_field_group
has changed from[{ lat: , lng:}]
to{ shells: [{ lat: , lng:}], holes: [{ lat: , lng:}] }
. This format[{ lat: , lng:}]
is still working to initilize the polygons within the map, but changes in the map will be store using the new format.
- Slim select does not render
- Updated gems and npm packages
Bali::Commands::CsvExport
class. This class allows us to use DSL in csv export.
- Use
as
attribute ofform_for
in theid
of the radio buttons when usingradio_buttons_group
Bali::BulkActions::Component
component. This component enables you to double-click on multiple DOM elements, selecting them, and subsequently applying an action.
Cards
toLocationsMap::Component
. These cards help to display detailed information for each marker. When a marker is clicked on, all cards matching the latitude and longitude of the marker will have theis-selected
class added to them.
- Unify the data structure of the
Chart
component andChart.js
.
name
attribute of the htmllabel
element ofswitch_field_group
.
- Add
display_percent
option onChart::Component
for automatically calculating and displaying percentages on the tooltip
youtube
icontitle
tomexican flag
icontitle
tousa flag
icontitle
toshopping cart
icon
- color of the
facebook
andinstagram
icons tocurrentColor
facebook
andinstagram
icons to fill with the current color.
.is-margin-auto
CSS style.is-circle
CSS style.is-unclosable
CSS stlye to notification component. This css style hides the button to close the notificationicon_tag
helper methodBali::TenancyTestsHelper
Bali::TestsHelper
Bali::Concerns::Mailers::RecipientsSanitizer
. This concern includessend_mail
method, which removes inactive emails before sending mail.Bali::Concerns::Mailers::UtmParams
Bali::FlashNotifications::Component
- Add CSS classes for different widths for select fields
- Add ability to add custom filters on the Filters::Component
- Create
Bali::Types::DateRangeValue
to support :date_range type inattribute
method
- Custom class in the
currency_field_group
label when it renders a tooltip.
- Issue when an input field has an add-on and error
Bali::Concerns::SoftDelete
Bali::Concerns::Controllers::DeviceConcern
GeocodeAdddressController
(javascript)ios_naitve_app_user_agent
andandroid_native_app_user_agent
asBali
configuration
- Skip rendering for
ActionsDropdown::Component
when no content is present
- Add
allow_input
to datepicker to be able to manually enter a date
- Relax ruby dependency to allow greater than
3.2
- Update
library_version.thor
script to autodetect current version and increment it. - Update Library authors
- Allow to add attributs to the FilterForm where only 1 value can be selected
TableController
check for elements presence before updating.
- Add ability to add bulk actions to a
Table::Component
- Allow to persist the
FilterForm
filters across requests
- Allow
slim_select_field
to autocomplete options from the server.
- Allow to add custom data attributes to
add/subtract
buttons in the step number field.
- Pass the correct
route_path
argument instead ofroute_name
toCalendar::Header
- Allows adding
custom icons
from the host application to theBali::Icon::Component
.
Bali::Concerns::DateRangeAttribute
concern. This concern allows to define date range attributes, for example,date_range_attribute :date_range, default: Time.zone.now.all_day
max_date
option todate_field_group
anddate_field
. you to set a maximum date that can be selected
- Renamed
route_name
toroute_path
inCalendar
component.route_path
expects a string, for example,/lookbook
.
- Fix
ransack
deprecation warning by avoiding passing a nil value to thesort_link
method.
- Add prefix and suffix to axis labels (
Chart
component) - Prevent the tooltip title from being truncated (
Chart
component) - Add prefix and suffix to tooltip label (
Chart
component)
- Allow
TimeValue
to receive date string without seconds
- Add
Message::Component
- Upgrade Gems
TimeValue
now returns aTime
object when retrieved from DB to be able to format it.time_field_group
is updated to handle aTime
value instead of aString
- Added sticky headers for table component.
- Correctly scope the previous
ActionsDropddown::Component
css change.
- Added a
readonly
option for theRate::Component
for display only purposes.
- Add bottom-margin to
ActionsDropddown::Component
when placed inside a.buttons
element to align with other buttons.
- Allow to override the
submit-on-change
method
andaction
values throught the StimulusJS controller
- Ability to add multiple actions in a
List::Item::Component
- Ability to add content in the middle of a
List::Item
- Add ability to manage multiple files in a File Input
@tiptap/pm
topackage.json
asdependency
Module not found
error when compiling assets in host application.
- Added
Bali::Concerns::NumericAttributesWithCommas
. This concern complements thepercentage_field_group
andcurrency_field_group
methods by removing thecommas
before saving the value to the DB.
- Perform
Filters::Component
request with aturbo_stream
format
- Add
question-circle
icon
- Add ability to specify a
submitter
on theSubmitOnChange
controller in order to specify a different formaction and formmethod
- Dispatch the
modal:success
event when the form is successfully submitted.
- Allow to specity vertical alignment as a param for
Level::Component
- Align file field ergonomics with other form inputs
- Display all files selected in
file-input
- Fix
radio_field_group
display when it has an error.
- Add
disabled
support forLink::Component
- Add ability to display an icon in the trigger of the reveal component.
- Add ability to hide
Table::Component
th
Page Hyperlinks
toRich Text Editor
.
- Add option to pass a container class to the
Navbar::Component
additional query params
to filters component. This helps to add query parameters not related to the form.
- Add a parameter to the
datepicker controller
to decide whether or not the alt input should be rendered.
- Create
RichTextEditor::Component
wallet
,wallet-alt
,oxxo
icons.
- Add option to specify a tooltip for a form label
- Add
modal.fullwidth
class for full width modals - Allow multiple CSS classes for the modal wrapper
- Add
sparkles
icon
- Upgraded ruby and JS dependencies.
- Create
ActionsDropdown::Component
- Add
chair
,box-archive
andfile-export
icons - Add option to add
custom-color
on tags
- Add
url_field_group
form helper
- Allow
SideMenu::Item
to render custom content
- Add option to override when a
SideMenu::Item
should be active.
- Add
align
option forInfoLevel::Component
filters-alt
iconcloseOnClickOutside
as a value inpopup controller
. Default value istrue
.
- Add
mode: range
for thedate_field
helper to allow for a range selection - Create a preview for the
date_field
- Create
Hero::Component
- Create
LabelValue::Component
for displaying general values.
submit_actions
to display the cancel button in native apps when it is not being displayed inside a modal.
- Display errors for
boolean_field_group
and fix styles when there are errors.
- Add
is-danger
to datepicker input when there are errors.
TurboNativeApp::SignOut
component.
- Updated
GanttChart::Component
timeline headers calculation to fix current day flag and chart offset.
- Link component to add support for
native apps
when themodal
attribute is set totrue
. - Notification component to add
native-app
class. This class is useful for customizing the notification component when it appears in a native app.
- Added a list footer to
GanttChart::Component
.
dartsass-rails
requires replacingimage-url
withurl
to display icons/images.
- Create
Progress::Component
for displaying a progress bar with percentage.
- Create
List::Component
for displaying elements in a basic list
- Don't create a tippy instance when the contents are empty
- Include third party CSS from the following libraries:
- Trix
- SlimSelect
- Flatpickr
- Allow
datepicker-controller
to enable/disabled weekends.
- Migrate from
sassc-rails
todartsass-rails
- Create new
PropertiesTable::Component
- Add
Card::Header::Component
slot. - Add
icon
option forDeleteLink::Component
and add customize styles when it's inside a dropdown - Add back button option for
PageHeader::Component
- Update
more
icon
- Add
month_field_group
method to generate fields with labels for date/year only inputs.
- Added
badge-percent
icon.
- Updated
GanttChart::Component
css to consider 4th level tasks.
- Updated
Bali::Table::Component
. Fixes theid
assignment for the table whenid
is defined insideoptions
.
- Updated
Bali::Table::Component
. Added anid
to theno records
row when the table is empty.
- Add
infinity
icon.
Fixes issue where using the back button resulted in the URL changing but the page not being updated. This was caused by manually manipulating the history object (history.pushState), because this interferes with how Turbo manages the restoration visits.
- removed
submitForm
function. Recommended approach is to callform.requestSubmit()
Add GanttChart::TaskActions::Component
displaying a menu with options for each task:
- Opening details
- Indent
- Outdent
- Delete
Refactor HoverCard::Component
to use tippy to simplify and handle more options.
Create GanttChart::Component
for a full fledged Gantt Chart with the following functionality:
- Display a sortable and nestable list of tasks
- Fold/Unfold the nested lists
- Actions for changing the timescale between Day, Week and Month
- Button for focusing today's date and a today marker
- Draggable and Resizable tasks
- Visualize dependencies between tasks
- Display of milestones
- Resizable width of the task list
- Visualize weekends
- Fix
Navbar
transparency.
- Added
Clipboard
component. Copy text to clipboard. - Added
copy
,link-alt
icons.
- Clean up event listeners from all StimulusJS controllers
- Override
SlimSelect#destroy
function to check for the presence of slim elements before removing them.
- Convert
HelpTip
to a more generalTooltip
. To create a HelpTip out of a Tooltip simply set a<span>?</span>
as a trigger and add the classhelp-tip
to the root component.
- Update
ModalController
to check for targets (Wrapper and Background) existence before attempting action.
radio-buttons-group-controller
was created.- Update
ModalController
to look fordata-turbo
attribute in the form if it was not present in theevent.target
.
- Update
radio-toggle-controller
to accept multiple values in current value.
- Remove
stroke
attribute fromrect
and addstroke
andfill
insvg
icons.
- Add
under-modal
class to hide the hover-card when is necessary.
- Add
open_on_click
property toHoverCard::Component
to open the content on click.
- Add
show_border
toReveal::Component
to show or hide theborder-bottom
just below the trigger.
- Add
new
to CRUD actions to display an active tab when current_path is matched.
- Remove
stimulus-chartjs
dependency.
- Add
Timeago::Component
.
- Add
Heatmap::Component
.
- Add
crud
match type toSideMenu::Item
. So it only considers items as active when current_path is one of the CRUD actions (index, show, edit.)
- Add
starts_with
match type toSideMenu::Item
. So it only considers items as active when current_path starts with the item's HREF
- Only consider exact URL matches for displaying a
SideMenu::Item
as active. This fixes a problem where 2 items had a similar URL and both were considered active.
step-number-input
controller was updated to be able to set a custom step.
- Updated
PageHeader::Component
CSS to prevent overflow.
- Updated
PageHeader::Component
, title and subtitle slots now receive an optional tag param to specify the size of the heading. New default title size ish3
and subtitle ish5
.
- Create
Tags::Component
to display tags groups. - Create
Tag::Component
to display individual tags.
- Create
Rate::Component
to give feedback on something.
- Allowed
InfoLevel::Component
to receive a block on its heading and title.
- Create
Timeline::Component
to display contents in a vertical timeline
- Update README with component updates
- Add
ImageGrid::Component
tests - Add
Column::Component
previews - Standardize on expect(page) syntax instead of using subject + is_expected
- Added the
TrixAttachmentsController
for handling attachments in theTrix
editor.
- Fixed an issue when using icons in the content of
Reveal::Component
- Create
Reveal::Component
to display hidden content that can be revealed.
- Upgrade dependencies.
- Export
domHelpers
.
- Add
Avatar::Component
. With this component we'll be able to see a preview of the image we want as an avatar.
- Let
DeleteLink::Component
receive form classes for thebuttton_to
tag.
- Add
type="button"
to Carousel controls (arrows
,bullets
).
- Wrap card image slot in
slot
instead ofdiv
.
- Set SideMenu list with optional title
arrows
andbullets
slots were added toCarousel
component.
- Fix SideMenu parent item when sub item is selected
- Fix SideMenu sub items show only when active
- Set
Delete
as default name forDeleteLink::Component
- Add
Tabs::Trigger::Component
. In addition, a tab will cause the entire page to be reloaded whenhref
is present.
- Add
toInt
andtoFloat
JS formatters
- Create
Carousel::Component
.
- Create
SortableList::Component
to sort items in a list.
- Display
SideMenu::Component
child items when item is active.
- Create
Breadcrumb::Component
to improve the navigation experience
- Custom notifications have been added for
no results/no records
in the table component.
- Create
Stepper::Component
to display steps completed in a process
- Added a
FormHelper
to add thesubmit-button-controller
to theform_for
method.
- Update
hyphenize_keys
to return a hash in which the keys are symbols instead of strings.
- Create
BooleanIcon::Component
and update Component Generator templates.
- Added non-component stylesheets (
box
,code
,container
,flatpickr_customizations
,forms
,general
,panel
,slim_select_customizations
,switch
,typography
,variables
). In addition missing Hover Card styles (Frontend helpers) have been added to the Hover card.
-Reorganize specs to have all tests within a bali/ folder.
- Improve
FormBuilder
testing.
- Pass the
options
parameter to theSideMenu::Item::Component
.
- Added
FormBuilder
andFieldGroupWrapperComponent
.
- Added
SideMenu::Component
.
- Added Stimulus JS Controllers
[
auto-play-audio
,autocomplete-address
,checkbox-toggle
,elements-overlap
,focus-on-connect
,input-on-change
,print
,radio-toggle
,submit-button
].
- Added utils methods.
- Added
wide
css class toDropdown::Component
.
- Added conditional layout concern.
- Added Time Value class and its corresponding tests.
- Remove double validation in
Link::Component
.
- Fix style in
Link::Component
.
- Added FilterForm class and its corresponding tests.
- Added Notification Component.
- Completed
Loader
component.
- Completed
Tabs
component. Added loading tab content on demand.
- Completed
Link
andCalendar
components.
Navbar
component was added.