CHANGELOG
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.
[1.3.6] - 2023-03-09
Added
urlMask
properties ofbk-button
andbk-url-paramters
allow separate masks forpathname
andsearch
fields of current URL- actions of type
http
support methodsPATCH
andPUT
Fixed
headers
property is forwarded frombk-layout-container
into its contentbk-layout
adds injected headers in http-calls- locales are correctly loaded on first plugin render
- actions of type
file-upload
correctly calls error event if http-call fails - actions of type
href
correctly resolve dynamic configurations - using
bk-layout-container
does not trigger extra http calls - fields are correctly put on focus on
bk-form-modal
wizard mode - form components do not discard "__STATE__" field on data creation
bk-search-bar
keeps state on layout change
[1.3.5] - 2023-02-23
Added
- new component
bk-dropdown
is available bk-form-modal
withextraEndpoint
property injects atriggeredBy
key equal tobk-form-modal-extra-endpoint
intosuccess
/error
eventsbk-simple-list
supportsheight
property, setting max-height of the list body- new Handlebars helper
nFormat
allows to format fields of typenumber
and formatcurrency
, specifying number of decimal places, decimal separator, group separator - new component
bk-notification-center
is available bk-filters-manager
component allows persistent filters
Fixed
bk-expanded-filters
supports internationalized labels- output of fields with format
editor
do not use customquill
classes in form components. Refer to this issue for further details
[1.3.4] - 2023-02-09
Added
- fields in form can have a description in a tooltip
- new web component for auto refresh:
bk-auto-refresh
bk-url-parameters
support wildcards inurlMask
, which can be ignored with propertyexcludeWildcards
- new component
bk-atlas-dashboard
is available bk-card
component supports dynamic footer and buttons usingtemplate
-configMap
pairbk-card
usesvisualizationOptions
in dataschemabk-button
supportsAction
-sdk thorugh propertyaction
.clickConfig
is now deprecated and will be removed in future releases, please refer to documentation for migration instructions
Fixed
bk-form-card
resolves lookups in initial values- lookups are correctly resolved
bk-filter-drawer
initial values - Form components correctly support
editorHeight
property in readonly mode - Tables inside form components render date fields correctly accordingly to
dateOptions.displayFormat
in nested data-schema bk-gallery
component does not render menu icon if emptybk-simple-list
header style is aligned withbk-card
andbk-form-card
[1.3.3] - 2023-01-26
Fixed
bk-export
component emits success / error eventsdate
/date-time
/time
fields are formatted in filter names accordingly todateOptions.displayFormat
in data-schema- table column minWidth is more fitted to the column title
- fields of format "editor" can be edited
- lookups are correctly resolved in filter names
[1.3.2] - 2023-01-18
Added
bk-filter-manager
has a new filter operator for dates:notBetween
- components support array of dates
- filters on fields having
filtersOptions.hidden
set to true can be edited through events -bk-calendar
works after settingfiltersOptions.hidden
to true forstartDate
,endDate
fields
Fixed
$today
keyword in filters works correctly with every operator- hour in date filters works correctly
- improved style of
bk-gallery
component
[1.3.1] - 2023-01-10
Added
bk-simple-list
resolves lookupsbk-form-card
can have a custom card header
[1.3.0] - 2022-23-12
Added
- new component
bk-gallery
is available
[1.2.3] - 2022-22-12
Added
bk-crud-client
can be configured to stay on current page after successful CRUD operationbk-calendar
allows to specify the name of default date filters
Fixed
- Form components support internationalized strings for file picker fields
[1.2.2] - 2022-21-12
Fixed
- Form and Calendar components support internationalized labels
[1.2.1] - 2022-16-12
Added
- new component
bk-layout
is available, allowing plugins layout customization
Fixed
bk-tabs
supportbetween
operator with complex date filters- lookups in forms are correctly resolved with long running queries
- default values integrate with initial values in
add-new
payload - buttons in
bk-confirmation-modal
do not hold state from previous re-renders
[1.2.0] - 2022-11-17
Added
- file download with POST requests
- configurable height of object/array editor in
bk-filter-drawer
,bk-form-drawer
,bk-form-modal
andbk-form-card
bk-table
custom actions can be configured on a per-nested-level basisbk-file-client
forwardsuseOriginalName
query parameter tofiles-service
(needsfiles-service
2.6.4+)- number fields support
date-time
,date
,time
formats sortOption
is supported inlookupOptions
, controlling_s
parameter when fetching lookups
Fixed
bk-card
with default role doesn't show border- nested objects are shown in
bk-table
component without need to includebk-pagination
in page - when the same date is used in a
between
filter inbk-expanded-filters
component, the correct filter is created - fixed infinite loading caused by non-existing file in download-file event
bk-table
correctly performspushState
andreplaceState
whenbrowseOnRowSelect
property hasnavigationType
set to "push" or "replace"
[1.1.2] - 2022-11-02
Fixed
bk-table
correctly indexes rows ifprimaryKey
property is not defined (fixes rendering errors with nested objects)- drawers follow Ant standard styling
Added
bk-button
enables bulk actions- new component
bk-expanded-filter
bk-table
accepts nested object path as data source
[1.1.1] - 2022-10-19
Fixed
bk-form-drawer
andbk-form-modal
showreadOnly
dates with correct format, specified indateOptions
- components keep loading until lookups aren't solved
- skip parameter (
_sk
) is reset when fetching data (unless query was triggered by pagination update) bk-filter-drawer
filters of typedate
work correctlybk-layout-container
supports disabling its render root as shadow dom. Useful to embedbk-calendar
.
Added
- enable
urlMask
inbk-table
customActions
.
[1.1.0] - 2022-10-05
Fixed
bk-form-drawer
sends events created bydataCustomActions
with the correct payload- regex operators are escaped in search queries
bk-form-drawer
fields don't enable save button whenlookupDeps
prop is used- file fields are correctly updated inside nested fields
bk-form-modal
with setextraEndpoint
correctly opens wizard mode- search queries are correctly performed for number fields
- fixed filter drawer bugs: exists operator, monaco editor
Added
- added the possibility to block a column in
bk-form-table
ignoreCase
field is available infiltersOptions
, controlling whether equality filters should be evaluated ignoring case- custom button icon in nested tables
- complex date manipulation on
bk-tabs
filters
BREAKING CHANGES
docker image serving back-kit components moved to:
nexus.mia-platform.eu/back-kit/bk-web-components:{{BACK-KIT-VERSION}}
. How to fix:- retrieve back-kit component from
nexus.mia-platform.eu/back-kit/bk-web-components:1.1.0
- retrieve back-kit component from
component
bk-calendar
usesaddFilter
event to handle data filtering. How to fix:- make sure
bk-filters-manager
is included in the page:
...
{
"type": "element",
"tag": "bk-filters-manager"
}
...- make sure
bk-modal
is nowbk-old-modal
. How to fix:- replace
bk-modal
withbk-old-modal
in configurations
- replace
bk-drawer
is nowbk-old-drawer
. How to fix:- replace
bk-drawer
withbk-old-drawer
in configurations
- replace
[1.0.11] - 2022-10-05
Fixed
bk-form-drawer
sends events created bydataCustomActions
with the correct payloadbk-form-modal
with setextraEndpoint
correctly opens wizard mode
Added
ignoreCase
field is available infiltersOptions
, controlling whether equality filters should be evaluated ignoring case
[1.0.10] - 2022-09-21
Fixed
- fixed bug format currency
- readonly object and array fields are correctly displayed in forms
[1.0.9] - 2022-09-14
Fixed
- fixed export-modal bug on columns selection
- fixed ampersand visualization bug on table cells
- equal and not equal filters of properties with format "date" will not take in consideration the whole day
Added
- new React component
BulkActions
- new components
bk-bulk-delete
andbk-bulk-actions
- added support to
exists
operator in filters
[1.0.8] - 2022-09-07
Fixed
bk-pdf-viewer
opens underbk-form-modal
- when a time/date/date-time field is marked as readOnly, it doesn't display the correct date format in the form
bk-button
does not emit events after plugin is changed
Added
- confirmation dialog on form submit:
bk-form-drawer
,bk-form-modal
- property
showArrayPopover
inbk-table
allows displaying a popover on hovering array cells containing the elements of the array
[1.0.7] - 2022-08-03
Fixed
bk-filters-manager
does not display filters with properties havingfiltersOptions.hidden
equals to true- Fixed trailing comma bug in
bk-crud-client
while adding MongoDB query filters in "$and" clauses
Added
- danger colors can be controlled by global CSS variables
bk-table
allows resizable columns using propertyresizableColumns
- title and content of confirmation modals of
bk-table
row actions can now use the content of the row via Handlebars bk-file-picker
can be used to update fields of typearray
and formatfile
- new components
bk-export-client
andbk-export-modal
- Added
Export Service
frontend client to perform collection exports - fields with type
number
supportcurrency
format
[1.0.6] - 2022-07-20
Fixed
- fixed border-radius issue on select component in multiselect mode
- fixed support to filters added at bootstrap time
Added
- box-shadow color can be controlled by global CSS variables
- new React component
MultipleFileCell
bk-table
has custom visualization for array of filesbk-table
allows to specifydownload
orview
mode in propnavigationRowActions
- added
appendTrailingSlash
property onbk-crud-client
- Update Files Service interface on
bk-file-client
allowing for download with actual filename in Content-Disposition header field bk-form
andbk-file-manager
support file array
[1.0.5] - 2022-07-06
Fixed
bk-table
does not render empty action columnbk-form-modal
correctly solves lookups in wizard mode
Added
bk-card
display main content in a css grid structurebk-modal
reduced top css rule to center the container- actions are evenly spaced in actions column in
bk-table
- http client supports PUT method
bk-filter-drawer
andbk-filters-manager
migrated to lit components.bk-crud-lookup-client
solves nested lookupsbk-pagination
resets pageNumber when count and current page are inconsistentbk-crud-client
patch response can also be a 204 no-contentbk-filters-manager
supports hidden static filters
[1.0.4] - 2022-06-23
Fixed
bk-crud-client
fixed support to projections in GET / and GET /count methods
Added
- new react hook
useDynamicElement
for creating components dynamically - new react components
Stepper
andAccordion
- react components
Form
supportsaccordion
visualization bk-table
supportsdanger
inrowActions
andnavigationRowActions
bk-button
/bk-generic-button
supports http delete asclickConfig
bk-notifications
api fixbk-crud-lookup-client
supports recursive lookup resolution when properly hinted by theDataSchema
bk-form-modal
supports wizard visualization
[1.0.3] - 2022-06-08
Added
bk-card
supports date with configurable formattingbk-form
supports map visualization for object/array fields having format "geopoint"bk-file-client
is implemented in litbk-file-manager
is implemented in litbk-file-picker-drawer
is implemented in litbk-form-card
is implemented in litbk-button
bk-generic-button
supportfile-download
typebk-card
supportsEventBus
in sub-components props +bk-button
style fixes ontype
link
bk-button
supportsdanger
prop
[1.0.2] - 2022-05-25
Added
navigationType
can be specified inbk-table
in propbrowseOnRowSelect
, specifying the desired navigation method.bk-form-modal
andbk-form-drawer
are implemented in litbk-card
footer accepts dynamic configurations with handlebars notationit is allowed to search numbers
nested objects visualization supports file upload/download
bk-table
has custom visualization for array of filesbk-table
allows to specifydownload
orview
mode in propnavigationRowActions
[1.0.1] - 2022-05-12
Added
Table
accepts (template, configMap) pairs in custom components properties.Table
acceptsonCellClickBuilder
, buildingonClick
callback for cells.- property
customActions
inbk-table
accepts (template
,configMap
) pairs for values depending on table row. bk-table
acceptsopenFileInViewerRegex
, determining which file cells are clickable, opening the file inside the native viewer of the browser.- support to subsets of operators in
bk-filter-drawer
+ support tostring
enum fields. - new
bk-layout-container
component allows to render multiple configurations within the same plugin. bk-tabs
migrated to lit components.bk-tabs
can pipe custom events to theEventBus
.- date filters now support key
$today
as value, indicating the current date
[1.0.0] - 2022-04-22
Added
- added new component
Chip
- building custom component inside
Table
handles undefined context in handlebars Pagination
supportsbuttonsOnly
modality, only displaying previous button, next button and page size menu- property
allowNavigation
inbk-form-card
,bk-form-drawer
andbk-form-modal
accepts values true, false, 'show-editor' bk-button
accepts propertynavigationStrategy
which allows to disable/hide the button in navigation- key
showInViewer
informOptions
inside the data-schema and keyshowInViewer
indownloadFile
's meta allow to display supported files (PDFs) inside the browser, while propertyshowPdfInBrowser
inbk-file-client
is no longer needed - added new component
bk-chip
bk-crud-client
can retrievehttp
responses and append the content to thesuccess
event payloadbk-state-adapter
allows carrying some state to another plugin + new documentation onplugin navigation
- if a negative page total count is received,
bk-pagination
only displays previous button, next button and page-size menu, omitting current page, page total and skip all buttons
[0.10.7] - 2022-04-08
BREAKING CHANGES
lookupQueries
require a new keypropertyType
that specifies the type of theproperty
field that is queried if this is notstring
. How to fix: add a new keypropertyType
in each filter insidelookupQueries
, with the type of the queried property.
Added
- added new property
computeOptionKey
toForm
andTable
that allows to compute the key to use when retrieving options forlookup
s andmultilookup
s Table
supports custom components in the actions columnlookup
s andmulti-lookup
s fields are resolved when navigating nested objects/arrays inbk-table
,bk-form-drawer
andbk-form-modal
bk-table
supports custom components in the actions column via the propcustomActions
lookupQueries
now support queries based on fields that are not included as properties in thedata-schema
. KeypropertyType
added tolookupQueries
, indicating the type of the property being filteredbk-tabs
supports handlebars in filters with array valuebk-crud-lookup-client
supportsextraLookupKeys
, which specifies extra fields to retrieve data from CRUD collectionsbk-pagination
is now a lit component
[0.10.6] - 2022-04-01
BREAKING CHANGES
crud-client
interacts withwindow.history
usingreplaceState
instead ofpushState
allowing plugin navigation. (very low impact)
Added
- It is now possible to specify the hiddenLabel visualization option in dataschema properties to hide the table column name.
- It is now possible to specify the sortable visualization option in dataschema properties to enable/disable the table column sort.
- Moved search-bar logic to web components
object
visualization templatebk-crud-lookup-client
now supports searchLookups event, searching lookups against a text valuebk-crud-client
now supports search queries on lookups- removed
bk-search-bar
component bk-file-client
can be configured to request in-browser PDF visualization instead of requesting downloadbk-pdf-viewer
component allows to visualize PDF files in-browser- added new
bk-search-bar
component that allows text search - Add new web component
bk-dynamic-title
- Add new web component
bk-list
- Add new web component
bk-url-parameters
[0.10.5] - 2022-03-17
Added
- Added new component
Generic Button
- Added
between
filter - Dynamic href are resolved for link add-ons.
- Added new components
NavigationBackArrow
andBreadcrumbs
- It is now possible to specify dynamic links for href in link addons.
- It is now possible to navigate and edit nested objects.
dataSchema
supports typeobject
formatlocalized-text
and renders the object according with the browser language- It is now possible to specify a
between
operator for date fields in filters. - Form card component
bk-form-card
- Subtitle for
form-modal
andform-drawer
nativeDownload
onbk-export
enables native browser file download aliasing the export service- Add new web component
bk-generic-button
- it handles configurable onCLick action. bk-dynamic-title
component- Add new web component
bk-navigation-nack-arrow
andbk-breadcrumbs
to handle nested objects navigation.
[0.10.4] - 2022-02-21
Fixed
- Avoid FontAwesome's CSS collision
Added
- fetchOptions for dependent fields is run on on-blur event
[0.10.3] - 2022-01-28
Fixed
- when
null
object reaches a table it is correctly printed as an italic placeholder string
Added
Table
andForm
now receive already resolved lookup dataForm
receives options and fetchOptions properties for dependent lookup and multilookup fields- Options for lookup fields are now fetched live as the user is typing, instead of being retrieved all at once
- If key is turned on --> duplicate keeps the state. If state is passed as not undefined, creating drags it along as well
- Unresolved lookups can be set to display a custom error message on
bk-table
,bk-form-drawer
andbk-form-modal
- It is now possible to specify dependencies between lookup and multilookup fields specifying
lookupDeps
insidelookupOptions
in the dataSchema. - It is now possible to specify
lookupAddTrailingSlash
inlookupOptions
which controls whether or not a trailing/
is added to the url when the lookup data is queried. Defaults totrue
.
[0.10.2] - 2022-01-14
Fixed
- It is now possible to paste content in
Editor
without scrolling back to the top
Added
Form
allows to visualizeobject
s andarray
s either as table or MonacoEditor, when attached to modal viewerallowObjectAsTable
property/attribute added tobk-form-modal
bk-add-new-button
now accepts an initialValues prop that gets forwarded to theadd-new
event.
[0.10.1] - 2021-12-17
Fixed
- Issue-38 definitive delete sends
__STATE__
to CRUD jointly with delete by id request
[0.10.0] - 2021-12-10
Fixed
filterForm
now correctly supports live search in lookup fields- readonly form drawer doesn't overwrite configurations/data-schema
- Query builder now starts off from a fresh query every time and creates it with the current query object, any other query parameter will be removed
bk-tabs
now expects every tab to have also akey
property in tab objects, objects with nokey
property are deprecated, this is to keep consistency with links exchanged between users with different ACL rulesbk-form-drawer
now correctly passes language to its inner componentsbk-filter-form
now correctly supports live search in lookup fields
BREAKING CHANGES
- Tabs props now expect
defaultActiveKey
asstring
instead ofdefaultActiveIndex
,tabs
has to be provided as aRecord<string, Tab>
instead of an array of tabs using-drawer
event is nowusing-form-container
Added
- Created new Editor component
- Created new format
editor
for the form - Created modal as form container
- save is enabled on form drawer if entries are not touched and relative config is enabled
readOnly
anddisabled
properties can be configured separately onform-drawer
insert
orupdate
opening mode- Created bk-form-modal component
[0.9.0] - 2021-11-08
Changed
form
now correctly validatesfileInput
required
prop- date, lookup, file, and form addon properties are now automatically excluded from queries generated by free-text search
- drawer confirmation modal before close is configurable from prop
requireConfirm
- drawer actions is configurable for each action from prop
closeOnClick
BREAKING CHANGES
- Table maxLines has no default value
Added
- Table fill parent size if no maxLines has been specified
[0.8.1] - 2021-10-26
Fixed
bk-file-manager
now correctly sendscreate-data
event after uploading following acreate-data-with-file
Added
table
now supportsdefaultSortedProp
anddefaultSortOrder
props to mark a column as already sorted when generating headersbk-table
now supportsinitialSortProperty
andinitialSortDirection
props to provide a bootstrap sorting order to table
[0.8.0] - 2021-10-22
Fixed
bk-form-drawer
should not overwrite default locales when merging user config
Changed
- Data are now refreshed after an HTTP POST triggered by a table row action
Added
- Form now supports file input fields
bk-form-drawer
can now accept areadonlyOnView
prop, when true, will use a readonly form to represent the selected databk-form-drawer
now communicates with file manager to handle multiple file upload linked to a record while creating/updating a record
[0.7.0] - 2021-10-07
BREAKING CHANGES
bk-file-picker-drawer
,bk-form-drawer
, andbk-filter-drawer
locale labels are now lowercase
Added
- When creating a new event,
bk-calendar
can now pass a configurable payload alongside withstartDate
andendDate
- When creating a new event,
bk-calendar
can now pass a configurable payload alongside withstartDate
andendDate
[0.6.0] - 2021-09-29
Changed
- Changed calendar component props interfaces
Added
- Components use
headers
custom prop to inject headers on http clients
[0.5.0] - 2021-09-23
Fixed
- Lookup queries must involve only fields declared within the
dataSchama
- Href links are limited to current page domain. no external ref allowed
email
text field validation did occur twice
Added
- Drawer component now can render custom data actions in the header
- Confirmation ConfirmationModal component
bk-form-drawer
awaits a success/error on their transaction before to close. On error it stays open- Custom actions are available on
bk-form-drawer
component - Added
bk-confirm-modal
Confirmation ConfirmationModal component - Custom actions now can trigger the
bk-confirm-modal
by specifyingrequireConfirm
and customize the messages in the modal if provided in the object bk-form-drawer
usesbk-confirm-modal
to ask confirmation before closing if fields are touched
[0.4.0] - 2021-09-16
Fixed
- Filters on array properties that are not multilookup are now supported
bk-filter-drawer
will now wait for lookup data if there is at least one lookup property in the data schema
BREAKING CHANGES
bk-notification
component props were modified. Three props are now available:successEventMap
,errorEventMap
andcustomEventMap
event mapscrud-client
andcrud-lookup-client
changed prop name fromschema
todataSchema
- Naming convention moved to
bk-
component-name even forclients
andfile-picker-drawer
Added
- Documentation automation
- Filters marked as hidden are not written in the URL
[0.3.0] - 2021-09-09
BREAKING CHANGES
- Form links now have to be declared in the
properties
property of the data schema. PropertyformLinks
is no longer supported. - Form titles and subtitles now have to be declared in the
properties
property of the data schema. Propertiestitle
,subtitle
andsubtitlePosition
ofdata-schema
'sFormOptions
are no longer supported.
Added
- Properties can be hidden from FiltersForm with property
filtersOptions.hidden
in data schema. - Table
rowActions
supportdownload-file
event when a file is available in row - Table
browseOnSelectRow
supports browsing away by clicking the row - Add-new-button
browseOnButtonClick
supports browsing away by clicking the button - Form web-components now support custom localized labels
[0.2.0] - 2021-09-03
[0.2.0-alpha.6] - 2021-09-02
Fixed
- Tabs now support values with
|
in them - Patch now works on $set $unset
[0.2.0-alpha.5] - 2021-09-02
Fixed
__STATE__
property has been removed from query parameters_q
and moved to_st
. Conflicting__STATE__
changes are defaulted in favour of the selected tab__STATE__
filter- Fixed filters on lookup-client
Added
- Tabs support
currentUser
on queries
[0.2.0-alpha.4] - 2021-08-30
Fixed
- Table lookup and multilookup resolve
- Monaco now correctly load in prod build
- Required complex objects now properly validate
Changed
- The only supported format both in input and output is now only ISO8601 in every component using dates
- Only changed values are sent to patch
- Edited form output formatting for Dates
Added
- File picker now handle the download of a previously uploaded file
- On update data,
null
fields are used for the$unset
- From file drawer is now possible to download the previously uploaded file
- From file drawer is now possible to delete the previously uploaded file
[0.2.0-alpha.3] - 2021-08-23
Fixed
- Fixed date input formatting when format was date-time, time
- Live search in form lookup and multilookup field is now applied to label instead of value
- Fixed multiple lookup on same datasource
- Fixed scroll on top of the drawer when is visible
- Fixed filter duplication reload when there was a filter configured in DataSchema
- Fixed date input formatting when format was date-time, time
- Fixed multiple lookup on same datasource
- Standardized locale for drawer web components
- Aligned test general behavior for eventBus and subscription
Changed
- Dependencies upgrade
- Removed matchMedia mock
- Jest default testEnvironment = 'jsdom'
- Font awesome icons as peer dependency
- Removed peerDependencies from devDependencies
- Reordered scripts
- Now form accept a React.Ref object
- Dependencies upgrade
- Removed testSetup
- At boot, the table loading spinner is activated
BREAKING CHANGES
- The entry point for bk-web-components is now exposed under
/{DOCKER_IMAGE_VERSION}/bk-web-components.esm.js
path
Added
- React Table component supports cell visualization on type:
object
and format:file
- Added filter support to array types
- Added support to includeSome/includeAll/includeExactly operators in array filters
- Form localization
- Form links target property is now configurable
- Support for readonly properties in form
- File picker component
- Inserted
lookupQueries
inlookupOptions
- More efficient components behavior thanks to
useMemo
anduseCallback
- CrudQueryConverter now supports includeSome/includeAll/includeExactly array operators in filter queries
- Added delete support on file-client
- Added
file-manger
web-component - it handles transactions betweenfile-client
andcrud-client
on collections having a property with formatfile
- Support for multiple queries in
and
in Tabs component. - File picker with drawer component
- Inserted
filters
prop incrud-lookup-client
- The sort property in the url are managed by the table
[0.2.0-alpha.2] - 2021-08-05
Fixed
- Fix read only in date inputs.
- Aligned CRUD client format (string) with Calendar events format (date).
Added
- Support to string formats
date-time
andtime
in form.