- Add CsvExportBulkAction process handler to provide the download information
- Extract legacy filter handling code to the LegacyFilterMapper.php service
- Add ExportBulkAction angular service to download the file using the info provided
- Add base frontend bulk action handling
-- Add max min validations
-- Add generic backend bulk action process call
- Add front end redirect handler
-- Can be re-used by several bulk actions if needed
- Add MergeRecordsBulkAction.php backend handler
-- Handle the the bulk action process request
-- Tells front end if extra handling is needed
- Fix bug list view metadata sent to the front end
- Add BulkActionDefinitionProvider
-- Add module.listview.bulk_action symfony parameter config
--- Add base config to bulk_actions.yaml
-- Add AclHandler legacy handler
- Add bulk actions list to the list view definitions api
- Retrieve bulk actions in metadata store
- Add bulkactions to list view store
- Display bulk actions list in bulk-action-menu.component
- Change dropdown-button to render dropdown items as <a> tags
- Add/update codeception unit tests
- Add/update karma/jasmine unit tests
- Add sorting to listview api
- Set the fields sortable default value as true, like legacy
- Add sorting button component
- Conditionally display sort button according to field definition
- Add logic to update table when sort button is clicked
- Store used sort in local storage
- Update sort svgs
- Fix listview labels display
-- fallback to check modstring and fallback to appstrings
- Fix name field display in ListView
-- fallback to varchar field when no mapping set
- Add / update karma tests
- Clean CSRF token when session has expired
-- On the root path
-- On the session-check entrypoint
--- Needed since this invalidates the session
- Add new session token after expiring old session
-- On the session-check entrypoint
--- Needed as the following login requests will require a token
- Configure CSRF token generation on the session-status api
-- The session status can invalidate the session
-- It also cleans the tokens
-- We need to generate a new token afterwards
- Add legacy filtering to ListView handler
- Map new filter format to legacy format
-- Add filter_operator_map.yaml to configure mappings
- Add criteria to field interface to support filter fields
- Add varchar filter mode component
-- Uses criteria instead of value for displaying and data binding
- Add search and clear buttons to list filter panel
-- Use internal criteria to keep current criteria status
--- Updated using filter field 2 way data binding
-- Update ListView store criteria on search or clear
- Update ListView store fetch method to use criteria
- ListView store: store criteria on local storage
-- Add current list criteria to local storage upon search
-- Load criteria when list view data is loaded
- Clear selection when filter is applied
- Update karma/jasmine tests
- Add the module name to the navbar action
-- if labels not found on the main module, load from this module
- Add extra fallback too check languages in the admin module
- Load SecurityGroups languages to the front end
- Update unit tests
- Issue caused by modStrings that require auth
-- Though they were still cached as a loaded language
- Fix properly clear the auth based language cache
- Add support for auth based and non auth based cache within store
- Sort navbar items alphabetically when userpreference is enabled
- Add sorting to tabs, grouped tabs items and more items
- add rule to keep, home module on top for grouped tabs
- Add configuration file for module actions that should reset cache
- Expose cache reset actions in the system config api
- Add route event listener to reset cache when navigating a way from defined cache reset actions
- Update unit tests
- Add varchar field edit mode component
- Refactor field interface to use a field object instead of separate inputs for value, type, etc
-- this allows for having two-way data binding as js objects are passed by reference
- Update karma/jasmine tests
- Refactor listview store into metadata store to keep all defs
-- Update the cache to be able to store metadata per module
-- Update the cache to be able to sync requested metadata with existing one
-- Update fetch methods to be able to fetch only requested definitions
- Add search defs to the metadata store
- Update karma/jasmine tests
- Retrieve searchdefs in legacy handler
- Change ViewDefinitions Api to retrieve all viewdefs instead of just the listview defs
- Add varchar info to searchdefs
- Update codeception unit tests
- Add custom getListView graphql resolver to be able to pass pagination input
-- Add api.list.get.ts to call new custom query/resolver
- Expose list_max_entries_per_page (page size) to front end
- Update pagination component
-- Display page count information
-- Update page on pagination button click
-- Add PaginationDataSource
- Update list view store
-- Update stored pagination information
-- Implement PaginationDataSource, to grab update changes callbacks
-- Retrieve list data on page change and update records state
--- which will update the list view contents
- Add / Update karma/jasmine tests
- Update ListView store
-- Add ListView Selection data structure
-- Add selection update / sync logic
- Update bulk action menu selection
-- Link up to ListView selection
- Update ListView component
-- Link up to ListView selection
- Add / Update jasmine unit tests
- Add Component for detail mode
- Add currencyFormatPipe that extends currency pipe
- Register components in dynamic components manifest
- Expose currency user preference
-- Add mapper to retrieve the need currency info
- Expose currency system config
-- Add mapper to retrieve the needed currency info
- Add sample usage to list view
- Add karma/jasmine tests
- Add codeception unit tests
- Add base date time component with common methods
- Add Components
- Register components in dynamic components manifest
- Add sample usage to list view
- Add karma/jasmine tests
- Update SystemConfigHander
-- Add ability to map config name
-- Add ability to map config value
-- Add SystemConfigMappers.php to store config mappers
- Update UserPreferenceHandler
-- Add ability to map preference name
-- Add ability to map preference value
-- Add UserPreferencesMappers to store preferences mappers
- Configure config mappers for date format
- Configure preference mappers for time format
- Update unit tests
- Add UnitTester to hook into codeception login when executing tests.
- Create _beforeSuite and _before methods to reduce code duplication and improve performance.
- Add static closures where possible for better scoping and performance.
- Fix missing typehints/PHPDocs.
Signed-off-by: Dillon-Brown <dillon.brown@salesagility.com>