* Restructure feature code recovery logic
* Refactor feature code recovery logic
Generically recover feature code with incorrect entries
(patterns/numbers).
We delete malformed feature codes to mitigate the use case of feature
codes wrongly configured with entries matching another feature code,
making it impossible to patch (duplicate entries error).
* Refactor createCallflow to handle errors
* MSPB-60: Disable skip_instructions if announce_only is checked
* Do not change the value of 'skip_instructions' on the voicemail object if announce_only is checked
* Update German translation
* Refactor key actions generation
* Refactor key entries structure
While key entries is provided as an object where the key corresponds to
the entrie's number, this complexity does not have to make it to the
template.
We already fill up empty entries by generating an array of key entries
length, hence no need to switch back to an object structure.
* Render combo keys count by section title
* Add save and apply button in edit device form
* Use single button with dropup in edit device actions
* Do not show dropup when the device edited is not privisionable
* Show droup button just if the edited device is register
* Fix group sorting by name
* Pass down ring groups to be selected in next action feature
* Expose ring group selection in template
* Set selected entity with helper rather than manually
* Extract template data formatting into own function
* Clean up next action feature data formatter
- generate categories in logic rather than template
- sort categories/entities alphabetically
- don't render empty categories
* Refactor device listing formatter with declarative style
* Refactor device edition formatter with declarative style
* Consolidate device edition data fetcher
* Consolidate device edition data formatter
* Generate addable device types from static list
* Allow for device types without edition template to be deleted
* Support application device type in pie chart breakdown
* List device types up to total colors available
When the list of device types is greater than the list of colors
available, overflowing types gets agglutinated into a static "Others"
type.
* Keep device types chart colors order
* Enforce linting rules
* Refactor usersData generation with declarative style
* Refactor totalChannels generation with declarative style
* Refactor assignedNumbers generation with declarative style
The numberTypesData related entities were removed as this
functionnatility is taken care of by classifiedNumbers.
* Create function to resolve chart color by an index
* Refactor unregisteredDevices generation with declarative style
* Refactor devicesData generation with declarative style
* Refactor classifiedNumbers generation with declarative style
* Refactor smart callflows generation with declartive style
* Refactor topMessage generation with declarative style
* Refactor directoryLink generation with declarative style