- Add dynamic sidebar widget component
- Move history-timeline to sidebar widget component
- Add chart sidenar widget componet
- Add charts-data store
- Add multiseries-statistics store
- Add support for recordView defs sidebarWidget configuration
- Apply formatting to yAxis ticks
- re-factor currency and number formatting to be re-usable
-- Add NumberFormatting and CurrencyFormatting services
-- Change corresponding pipes to use services
- Move utils to app-common
- Re-factor charts component
-- to be able to receive data an configs from backend
- Re-factor widget into widget-panel
- Move front-end data lisview charts to list-chart component
- Add support for fetching several rows in SubpanelDataQueryHandler
- Adjust and standardize Statistic API structure
-- Add SeriesResponse Model
-- Add multi-series response building helper methods
- Adjust tests
- Refactor codeception test namespaces
- Remove local config files in favor of dist
- Update test environment with doctrine and nelmio configurations
Signed-off-by: Dillon-Brown <dillon.brown@salesagility.com>
- Add OpportunitySalesStageTimeSpan statistic provider
- Add AuditQueryingTrait to have it re-usable
- Add common methods to StatisticsHandlingTrait
- Add support to send labelKey in the statistic response
- Add top widget reloading on save
-- Add refreshOnRecordUpdate flag to allow configuration
- Only do top widget and subpanel calls after record data returns
- De-couple table from listviewStore and MetadataStorea
-- Add TableConfig to get things through input
- Move list data handling from listViewStore to recordListStore
-- use recordListStore within listViewStore
- Add subpanel store
- Initialize list of subpanelStores within RecordViewStore
-- Create a subpanel store for each configured subpanel
- Change subpanel container and subpanel components
-- Use store instead of directly using the metadata
- Remove ui from some of the component names
- Move common interfaces to app-common to avoid dependencies
- Update karma/jasmine tests
- Update codeception tests
- Add RecordView metadata to view definitions api
- Re-structure record store / fix issues
- Small structure change to the record container adapter
- Add Record Content component
- Add Record Content Adapter to bridge to the record store
- Add minimize option to panel component
- Add minimize button
- Add codeception unit tests
- Add jasmine / karma tests
- Update ListViewHandler to use new method to retrieve data
- Update View definitions api to send fieldDefinitions as sub-object
- Update table and list view components to use new data format
- Move common front end interfaces to a common module
- UnEscape and sanitize html characters in varchar field
-- Add htmlSanitize pipe
- Update unit tests
- Updated .gitignore placeholders to .gitkeep and removed the ones that are no longer needed.
- Updated root .gitignore with further project specific ignores.
- Removed all non-project ignores (IDE, filetypes, etc) from the root .gitignore
Signed-off-by: Dillon-Brown <dillon.brown@salesagility.com>
- Add button group component
- Add dropdown submenu component
- Apply button group to listview actions menu
- Apply button group to listview settings menu
- Add actions and settings menu limit size based configuration
- Re-factor columnchooser component to be able to call dynamically
- Fix console error on app component
- Add unit tests
- Check if if fields are defined on the vardefs and omit any that aren't
-- Log any found
- Clean moduleMatcher list view enable module list
- Add missing modules to use new list view
- Check for simplified configuration and expand to standard configuration
- Change the way vardefs defaults are applied to view configurations
- Add unit tests
- Add actionLabelKeys to the navbar api
- Use actionLabelKeys in action-menu
- Filter out the List / View action in te action-menu
- Change module-navigation getActionLabel to support declaring the labelKey to use
- Fix unit test
- 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 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
- 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
- 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 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
- 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 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
- 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
- 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
- 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
- Change Classic view component to use Iframe to render legacy view for specified url
- Add Iframe page change observer to detect page changes and route to appropriate view
-- Move legacy to suite8 route conversion to the front end
- Add Iframe resize observer to re-adjust the iframe size according to its contents
- Expose module and action name maps to the frontend within thee system configs
- Add unit and karma tests and ajdust existing ones
- Add floating to messages alert
- Make classic view resolver extend the base metadata resolver
- Move all front end calls to the default_module config to a single place
- Map default module name to frontend name in the legacy handler
- Add ability to fully start legacy app on legacy handlers
- Update Navbar and UserPreferences handler to start the legacy app after init
- Update Navbar and UserPreferences handler to implement the corresponding interfaces
-- Update corresponding Data providers to use the new interfaces
- Change Navbar legacy handler to take into account the tab configured preferences
-- based on the implementation used in Legacy SugarView
- Update UserPreferences to use the currently logged in user
-- remove hard coded user
-- get UserPreferences from the legacy User object instead of grabbing it directly from the db
- Add All entry to grouped tabs
- Adjust unit tests
- Check Suite7 session on authenticated endpoints
-- Decorate Security Stage for Graphql
-- Decorate DenyAccessListener for REST
-- Add legacy handler method to check the suite 7 session
- Add Unit tests
- Add LegacySessionLogoutHandler
-- Logout Legacy Suite session when Suite 8 is logged out
-- Configure handler to decorate SessionLogoutHandler
- Add logout to Authentication legacy handler
- Add AspectMock lib
- Add unit tests for LegacySessionLogoutHandler
- Rename unit test folders to be consistent with src.
-- Use the same pattern used in Suite 7
- Add ThemeImages Entity
- Add ThemeImages DataProvider
- Add ThemeImage Service
-- Retrieves the list of images for a given theme
- Add ThemeImagesFinder
-- looks up for images inside a given path
-- Add configuration to specify theme image paths
-- Add configuration to specify supported image types
- Add unit tests
- Add theme-images angular facade
- Update base metadata resolver to load theme images
-- Move UserPreferences loading ot base metadata resolver
-- Loaded theme images after user preference and config loading
--- uses default_theme, if user preferences weren't loaded
-- Add jasmine tests
- Add scrm-image component
-- Add jasmine tests
- Replace usages of svg-icon with image component
-- Fix jasmine tests
- Adjust UserPreference interface to match the current data
- Make language facade loading dynamic to load given types of strings
-- Add cache per type of language strings
-- Add configuration per type of language strings
-- Enable fetching modStrings, appStrings, appListStrings
- Expose a stream for each type of strings
- Make BaseMetadataResolver language loading dynamic based on router configuration
-- Add navigation loading
-- add string loading, depending on configuration
-- Add default configuration: Loads SystemConfigs, Navigation and all Languages
-- Add ability to override default configuration on router
- Configure BaseMetadata resolver in router
- Only use default language if it there is no active language
- Update login component to cope with changes to language facade
- Refactor: move existing facades to the facades folder
- Re-write navigation facade to use reactive facades approach
- Update navbar api to cope with with api contract
-- Add modules entry
-- Move moduleSubmenus to modules entry
-- Disable collection query on graphql
-- Update frontend to cope with these changes
- Update navbar component
-- Cleanup component
-- Fetch navigation and languages reactively
-- Update navbar menu item creation with new navigation structure
-- Fix html for loading icons
-- Fix html for regular module tab menu
- Translate navbar items
-- Add translations on navbar menu items creation
- Add karma tests
- Adjust navbar to properly render links
-- Add extra query params to submenu in API
-- Adjust LegacyHandler to retrieve the extra query params
-- Adjust angular component
- Add handler to check and build re-direction path
- Re-direct legacy assets on LegacyRedirectListener
- Add configuration with list of legacy asset paths
- Add dummy image call to the ClassicViewItemDataProvider