Flex and OMA Map Configuration
Flex and OMA share a common map renderer and map configuration mechanism, allowing the majority of the configuration to be shared between the 2 products. It is recommended to have one being the "master" and then apply some specific overrides to the other to make any product specific configuration adjustments you might want to make, for example in OMA you may want to restrict the set of conditions shown on the map to a more restrictive set of those that would be relevant to a crew in the field. To support this both products can take two map configuration files - a base configuration file, and an overrides configuration file, which uses the Flex configuration mechanism described in the NMS Flex Operations Configuration chapter to allow the configuration in the base configuration file to be selectively overridden.
For Flex, the base configuration and overrides file should be placed at
$NMS_BASE/flex/config/map/mapConfig.jsonc
$NMS_BASE/flex/config/map/overrides.jsonc
Note that the product map configuration is split over multiple files where each file contains the configuration for a particular area of the map configuration. This is done via a "flex-include" syntax within the jsonc files, for example
"declutterRules": "flex-include: declutterRules.jsonc",
It is recommended to use the same division of files for your configuration, to make it easier to compare and apply changes from base product map configuration files in future.
It is also recommended to use the WinSCP/VSCode setup used for standard Flex development to edit the configuration files (see Recommended Tools for more information). In addition is recommended to install and setup InkScape (or your SVG editor of choice) as the external editor for .svg files, to allow SVG symbol files to be easily edited.
For OMA, the base configuration and overrides file are built in when the build is performed and exist in the base product source code at:
src/js/resources/config/mapConfig.jsonc
src/js/resources/config/mapConfigOverrides.jsonc
You edit these files directly to modify the map configuration.
Note: When developing OMA using the npm run serve command (or by directly running the Oracle JET development server, but it is recommended to use the npm run serve command), any changes made to map configuration or SVG files will automatically reload in the map, making it very quick and easy to test map configuration or SVG files using OMA.