- Add select record button
-- Add button styling
-- Display button next to chip component
- Open record list modal on button click
-- Open xlarge and scrollable modal
-- Add styling to correctly display scroll
- Add jasmine / karma tests
- Use base modal layout
- Use scrm-table
- Add table adapter to handle table configuration
-- Add public method to get record list module
- Add message when not properly configured
- Display loading spinner when loading metadata
- Make record list modal available in app
- Add Karma / Jasmine tests
- Use base record list store
- Get metadata for the initialized module
-- Add metadataLoading Observable
- Load data after metadata is returned
- Add store factory
- Split record list meta from listview meta
-- Use record list meta definition
- Make getMetatada method public
- Allow retrieving metadata for modules other that the current
-- Containers will need to display views of different modules
- Use the scrm-label component in template
- Add module to table config to allow using modStrings
- Remove language related observable streams from vm$
- Remove translatedLabel calculation in table adapters
- Remove translatedLabel property from model
- Update unit test bootstrap pathing
- Move new theme images to new legacy path
- Fix AccountsNewByMonthMock unit test warning
- Change startLegacyApp to follow the correct method signature
Signed-off-by: Dillon-Brown <dillon.brown@salesagility.com>
- Check if the record is dirty when cancel is clicked
-- Use the formGroup dirty flag
- Launch message modal if dirty
- Only execute cancel if ok button is clicked
- Otherwise stay on page
- Adjust unit / karma tests
- Mark all fields that call formControl setValue as dirty
-- set value does not mark the field as dirty
- The isDirty flag is used to calculate if the record was changed
- Add re-usable message modal component
-- Allow for passing a message labelKey
-- Allow for configuring an array of buttons
- Declare component as an entry component
- Add karma/jasmine tests
Component is meant to by used by the modals that have buttons
Allows to implement a dynamic way to declare modal buttons.
Each button onClick call back receives the activeModal.
Allowing to close or dismiss the modal on the onClick callback
- Re-use scrm-button-group
- Extend button group and button interfaces
-- Override the onClick handler to receiving the active modal
-- Inject the active modal to the button callbacks
- Allow for a configurable breakpoint using the config:
-- ui.modal_buttons_collapse_breakpoint
- Add karma/jasmine tests
- Refactor exiting modal component
- Add component with base modal layout
-- Support adding modal body and footer using content projection
-- Supports declaring close button
- Add karma/jasmine tests
- Move button interface to app-common module
- Add support for defining a labelKey
-- Translate the label using scrm-label
- Add support for defining a titleKey
- Declare type for onClick callback function
- Add ButtonUtils service
- Add structure to allow grouping modal components
- Move modal component to subfolder
-- Modal is now going to serve as the base generic modal
-- Concept similar to the panel component
- Move view, as it is used by the router as a view
- Move classic-view specific services
- Remove api.classic-view.get.ts and classic-view.facade.ts
-- Deprecated
-- The approach of getting the html from the api wasn't followed
- Login component is used by the router like other views
-- Though not a view according to the SuiteCRM concept of a view
- Fix eslint inspection errors
- Add relate edit component
-- Add standard relate handling to BaseRelateComponent
- Re-structure relate fields handling
-- Store the object instead of just the name
-- Map valueObject to the proper attributes when saving
- Allow setting a class in scrm-panel
- Adjust height in filter panel do display the same as other inputs
- Adjust input width to avoid breaking to new line
- Remove paddings from tag
- Refactor LegacyFilterMapper to allow adding mappers per type
- Add date and date time mappers to convert to proper format
-- Api should receive fields in internal format
-- Legacy search expects user format
-- Convert to user format when calling legacy search
- Add multienum to correctly process criteria
-- Api search criteria receive an array of values
-- For other fields legacy expects just one value not an array
-- For multienum legacy expects an array of values
-- Add mapper to send array of values to legacy for multienums
- Add missing view-container class to filter-panel container to:
-- Match left and right padding of other elements
-- Match text size of other elements
- Remove unneeded bottom margin from view-container
- Use FieldManager
- Change ValidationManager to support save and filter validation
- Use reactive forms formControl in varchar filter
- Add null checks to datetime formatter
- Add field type to criteria
- Set form control value on field init
- display messages for edit or filter modes
- Validate filter input
- Display warning messages when not valid
- Adjust karma / jasmine tests
- Use user format when building field formControl
- Fix phone formatter regex
- Add edit mode option to currency user formatting
- Cleanup date and datetime formatters
- Fix toInternalFormat processing
- Move FieldManager to a service
- Add formControl to Field interface
- Initialize FormControl in FieldManagerBuild
- Setup field validations when building field
-- Add StandardValidatorFn, StandardValidationErrors interfaces
-- Add Validation Manager
--- Look at fieldDefinitions
--- Look at type definitions
-- Add required validation
- Replace 2way databinding usages with formControl in fields
- Convert input value to internal format, on change
-- Add DataTypeFormatter to BaseField
-- Add and implement toInternalFormat on all formatters
-- Add phone and date formatters
- Display error messages in generic field component
- Call validate up save
-- Only allow saving when all fields are valid