- 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>
- Add base field class
- Add base number class
- Add int field detail mode component
- Add float field detail mode component
-- Format using user preferences or system config
-- Add NumberFormatPipe to format using preferences
- Add fields to manifest
- Add sample to list view
- Add jasmine tests
- Update button component
-- Update model to support passing a click handler
-- Update html
-- Add unit tests
- Add ModuleNavigation Service
-- Groups module and module action navigation actions
-- Change Navbar and other components to use this service
- Update action menu
-- Retrieve menu action information
-- Retrieve labels
-- Render buttons
- Change List and ListHeader components to grab data and pass it down
- Update ModuleTitle component to title as input and display it
- Update and add jasmine test for these components
- Import language languageFacade into logout component
- Add logout-link-model.ts
- Add logout-model.ts
- Update the logout component HTML to use an async pipe
Signed-off-by: Dillon-Brown <dillon.brown@salesagility.com>
- Add configurable exclusions by module / action on the backend
-- Add ClassicViewRoutingExclusionsHandler to grab these from legacy
-- Expose these as system configs to the frontend
- Update redirect check to classic view
-- Do not re-direct when same route (example, for listview filtering)
-- Do not re-direct when route is excluded
-- Do not re-direct when not able to convert route
- Update unit tests
- Replace hardcoded labels with translations
- Replace hardcoded html with dynamic list
- Add router links to related create views.
- Fix wrong usage of div instead of ul
- Add current module and action to AppState
- Calculate current module and action in BaseModuleResolver
-- Add logic to show current module as active on
--- import and find duplicates
- Update legacy handler method to retrieve available modules
-- Also send invisible modules, to
--- Allow to display invisible modules as the selected module
-- Update module name mape
- Retrieve number of navbar items from backed
- Fix grouped tab links
- Simplify navbar abstract by simplifying parameters
-- passing language map instead of individual language
-- passing navigation object instead of individual parts
- Create smaller components for repeated parts of navbar
-- grouped-menu-item
-- menu-item
-- menu-item-link
-- menu-item-list
-- home-menu-item
-- home-menu-recently-viewed
- Removing "jsdoc/no-types" from eslint
-- To avoid conflicts with jsdoc/require-param-type
- Implement UserChecker to check user deletion status on pre/post auth.
- Modify LoginFormAuthenticator to use Symfony/Security to fetch user data.
- Add Security Exceptions: UserDeletedException, UserNotFoundException.
- Set the security firewall to run the UserChecker.
- Update User Entity with deleted getter.
Signed-off-by: Dillon-Brown <dillon.brown@salesagility.com>
- Add login auth guard
-- Check if session is active on front end, if so go to home page
-- Check if session is active on backed, if so go to home page
-- Otherwise stay on login
- Add loaded flag to AppStateFacade to:
-- Know if the page has already been loaded
-- Avoid doing an extra request to the backed if we logged out on the frontend
- Enable angular router onSameUrlNavigation to:
-- Allow refreshing pages
-- Properly updating url when trying to go from home to login, which goes back to home
- Check session when moving between classic views
-- Update backend session-status entry point to also check legacy session
- Check if classic view iframe was re-directed to login page
- Logout user in the above
- Add conditional redirect to auth service logout
- Add key based loading to fix issues with loading on logout.
- Update jasmine tests
- Add button-loading directive to update button according to loading state
-- Add ability to listen to AppStateFacade loading state
-- Add ability to listen to loading input from parent component
- Add jasmine unit tests
- Fix action-name-mapper jasmine unit tests
- Add legacy handler to access RouteConverter
- Add legacy handler to access ModuleNameMapper
- Add legacy handler to access ActionNameMapper
- Remove action and module name maps from Suite8 side
- Update frontend route converter to check for suite 8 routes
-- When link is a suite 8 route does not convert
- Add LegacyScopeState to allow for nested legacy handler calls
-- Add abstract getHandlerKey to base LegacyHandler
-- Implement getHandlerKey on all legacy handlers
- Update legacy handler init and close methods to use scope state
-- Check if withing an already open legacy handler scope
- Move RouteConverter to legacy
- Move ModuleNameMapper to legacy
- Move ActionNameMapper to legacy
- Add smarty function to convert links
- Convert legacy links into Suite 8 links
-- Change mvc_utils::ajaxLink for most common links
-- Change ListViewGeneric links for list view links
-- Change DashletGenericDisplay for common dashlet links
- Listen to legacy non-view calls on the LegacyRedirectListener
- Add LegacyNonViewActionRedirectHandler to re-direct to legacy
-- Using 307 re-direction response to support post re-direction
- Add unit test for LegacyNonViewActionRedirectHandler
- Listen to legacy api calls on the LegacyRedirectListener
- Add LegacyApiRedirectHandler to re-direct to legacy endpoint
-- Using 307 re-direction response to support post re-direction
-- Using api_paths.yaml with the configuration with paths to check
- Setup API tests using codeception
-- Add helper methods to login in v4 and v8 API
- Add Api test to create account using v4 api
- Add Api test to create account using v8 api
- Add unit test for LegacyApiRedirectHandler