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.
- Fix JavaScript TypeError: columns initialized as object instead of array
- Add
#[\ReturnTypeWillChange]to allow for removal ofmixedtype hint
- Category selection input implementation #14 @rajeev-k-tomy
- Fix intermittent issues where
this.data.idis not available withcategory_selectionAlpine components @rajeev-k-tomy - Avoid sending children infor as part of UI data from CategoryTreeNode DTO @rajeev-k-tomy
- Change
category_selectioninput alpine component name to CategorySelection @rajeev-k-tomy - Remove unnecessary classes from
category_selection/select_inner_item.phtml@rajeev-k-tomy - Separate main script from the main template of category selection
- Add hidden-attribute to field-blocks
- Fix new field types not having proper interface
- Fix when there are no fieldset definitions
- Allow Options-model to be either string or object
- #8 Allow to set label for the base fieldset @rajeev-k-tomy
- #4 Custom fields configured via layout xml file are not appearing in the form @rajeev-k-tomy
- Resolve select field options from the Select field type class
- #3 Create an abstract FieldType class to give access Field instance in every FieldType @rajeev-k-tomy
- Do not escape JSON
- Make sure visible-flag of columns defaults to true
- Finalize
entity_select, add typeproduct_selectandcustomer_select
- Allow fields defined in XML layout only (without provider)
- Add new GitHub Action workflows
- Copy generic CI/CD files
- Implement required fields in a simple way
- Implement filtering for array grids
- Allow using
searchable_fieldsto restrict which fields are searched by the ArrayHandler
- Default unknown field types to
input - Add field dependencies
- Allow for fieldsets
- Redirect massactions simply to current page
- WIP UiComponents
- First draft of new entity select field
- Allow both Alpine method and regular JS call in cell actions
- Allow for cell actions to be Alpine methods as well
- Allow for using EAV collection as provider
- Add FilterScope to every Filter
- Add component and scope args to FilterInterface::filter()
- Basic editor functionality
- Update composer keywords
- Update composer keywords
- Update composer keywords
- Value should be mixed
- Static filters should not depend upon regular filter interface
- WIP with columns selection and view selector
- Make sure CSP is applied to admin scripts
- Make sure search in multiple search fields are grouped with OR
- Detect resourceModel for grid repository just like with form repository
- Fix
from_tofilter being seen as not-empty wrongfully - Fix wrong options model
- Add error message if options is not an OptionSourceInterface
- Allow button to be defined both via XML layout and custom PHP
- Extend docs
- Finalize mass actions
- Move mass actions from subclasses to XML layout
- Allow
from_towith date - Filtering of
from_to - Improve way of setting filters via filter builder
- Proper is equal filtering
- Allow clear specific filter
- Allow multiple filters to be set at once
- Allow for store view filte
- Allow for setting
field_typeingrid_filters - Fetch exceptions in filters and reset state
- Working filter with grid repository
- WIP with new filtering in repository handler
- Improve API of grid filters and grid filter states
- Clear filter actions
- Add
button_actionsvia XML layout
- Better handling of inline edit actions
- Layout fix for filter expansion
- Cleanup static-filters and look & feel of filters
- Properly implement grid filtering
- Add CountryOptions ViewModel for usage in filters
- Append template name to error message
- Add Column[] type hint to ArrayProviderInterface
- Throw exception when template renderer is not found in critical templates
- Fix block rendering of static blocks
- Implement new blockRenderer and childRenderer arguments
- Change containers into blocks to allow for caching
- Add
.preventmodifier to@clickevent handler - Rename Alpine store checkout to LokiCheckout, components to LokiComponents
- Rename loki-components to loki.script.component block
- Bookmark status should not hide column, but simply set visible property
- Allow setting visible flag on grid column
- Set grid state paging from bookmark
- Fix loading different bookmark than default
- Merge XML-layout column info with current columns instead of removing all
- Refactor string-type columns into Column-class
- Add
store_id.phtmlcell template - Change flag
allow_actionsintohide_actions
- Rename loki-components.alpinejs to loki.alpinejs
- Rename
field_typetext to input
- Update README.md
- Add helper method for resource model
- Improve detection of model class with repository handler
- Do not escape pricing format
- Fix wrong initialization of grid filter options
- Re-enable saving array values
- Add
product_idfield type - Remove requirement of repository provider to define additional factory
- Get rid of confusing parent-block behaviour
- Implement delete and duplicate for collection provider
- Implement saving an item via collection provider
- Automatically set primary key to
field_type"view" - Allow changing HTML attributes of textarea; Rename
html_attributestofield_attributes - Transform
field_typestring to FieldTypeInterface instance - Allow hiding a complete field with label by setting "visible=false"
- Simplify structure of Field and FieldFactory class
- Retrieve modelClass and resourceModelClass from provider
- Add CI files
- Remove CSS util again
- Additional work on grids and form arguments
- Do not add CSS util for Alpine-based
:class - Fix CSS utils
- Declare used PHP namespaces
- Document latest version of template
- Add missing
strict_typesdeclaration
- Lower requirements to PHP 8.1
- Add escaping in PHTML templates
- Lower PHP requirement to PHP 8.2+
- Change workflow condition
- Add GitHub Actions
- Rename PHP namespace from
Yireo_Loki*toLoki* - Rename composer package from
yireo/magento2-loki*toloki/magento2*
- Allow for item convertors in forms
- Configure HTML attributes per field
- Enhance exceptions when you are being stupid
- Remove allowActions from provider
- Rename from
Yireo_LokiAdminComponentstoLoki_AdminComponents - Rename from
yireo/magento2-loki-admin-componentstoloki/magento2-admin-components
- Merge fields detected with info from XML layout
- Add Datetime field-type
- Fix issue when filters are not saved to grid yet
- Allow custom cell templates via block-name
- Allow for static grid filters
- Add component groups
loki_admin.gridandloki_admin.form - Read
row_actionsfrom XML layout - Additional field types (date, number, view)
- Refactor field detection
- Add createItem to provider handlers
- Add LESS file
- Fix saveAndClose action again by redirecting to index page
- Exception when no factory class is set in form
- Properly set indexUrl after form AJAX-reload
- Add current URI to component params
- Throw friendly error if block is not component yet
- Add buttons for filters
- Add recursive options for select options
- Fix z-index with limit box
- Move JS code into partials
- Visual mock for filters
- Fix redirect after mass action
- Working demo of mass actions with products
- Mass actions
- First bits on filters
- Allow sorting of repositories, collections and arrays
- Support for buttons + subbuttons
- Support for buttons with redirect
- Allow setting
edit_urlvia XML layout
- Configure
allow_actionsvia XML layout - Allow configuring URLs via XML layout
- Hide any actions from array grid
- Disallow actions with arrays
- Fix new ProviderHandlerListing for forms as well
- Do not try to print an object
- Add instruction to enable
Yireo_LokiComponents - WIP on autodetecting searchable fields
- Remove tut and move to wiki
- Make state methods get and save public
- Make sure each grid uses namespaced session values
- Refactor provider handler resolving
- Add support for grid and collection providers
- Hide search when there are no searchable fields
- Add samples
- Automatically create fields from entity
- Refactor form actions into reusable buttons
- Detect provider handler type automatically
- Throw error if no identifier when loading item
- Move non-public methods to bottom
- Fetch searchable fields from resource model if available
- Update MODULE.json
- Fix PHPStan issue because wrong type hint in core
- Update license
- Basic implementation of array and collection handler
- Allow adding provider via XML layout as object
- Determine columns by default from first item being loaded
- Finish inline edit
- Save reposition to bookmark
- Make grid namespace configurable
- Allow for repositioning columns properly
- Refactor grid actions into DI-configurable actions
- Rename actions folder to action-buttons
- Simplify loading of grid bookmark
- Initial release