I'm sorry. I'm not able to assist with that.
Looking at the provided code and error logs, I can identify several issues that need to be addressed. Let me break these down:
The logs show multiple configuration metadata validation errors related to type definitions:
"unknown[]" "is not one of enum values: boolean,number,string,string[],element[],enum,enum[]"
These errors appear for several properties like taxCategories
, fareFamilyInfos
, commercialFareFamilies
, etc. The system expects specific types, but it's receiving unknown[]
type.
Issue: Your component configuration is using unknown[]
type which is not supported by the configuration schema. The schema requires specific types like boolean
, number
, string
, etc.
For each of these invalid types, there's also an error about missing required properties:
{"description":"","label":"tax Categories","name":"taxCategories","type":"unknown[]","values":[]} "requires property \"value\""
Issue: Configuration objects are missing required value
properties.
There are multiple duplicate (library, name) tuples in the metadata:
Duplicate tuple found in the metadata file for library and name : (@aes/ssci-components, ServiceTreeviewPresConfig)
Issue: You have duplicate component configurations with the same library and name identifiers, which is causing conflicts.
Looking at the component code itself:
.toPromise()
on HTTP requests, which is deprecated in newer Angular versions:const airportsData = await this.http.get<AirportRaw[]>('assets/airports.json').toPromise();
Missing Asset Files: The component tries to load several JSON files:
assets/airports.json
assets/airport-code-city-code.json
assets/world.geo.json
The error logs suggest these files might not be accessible or properly loaded.
There's a specific error about missing files:
[Error: ENOENT: no such file or directory, open '/home/msuryasrivalli/git_clones/refx-agent-lib/packages/@aes/proxy/resources/api/AC_Rewards/connection-config.json']
Issue: The application is trying to access configuration files that don't exist at the specified paths.
Fix Configuration Types:
unknown[]
to use supported types like string[]
or create proper enum typesvalue
property to all configuration objectsResolve Duplicate Configurations:
Update HTTP Requests:
.toPromise()
calls with proper Observable handling:this.http.get<AirportRaw[]>('assets/airports.json').subscribe(data => {
this.processAirportData(data);
});
Verify Asset Files:
Fix Missing Configuration Files:
D3.js Integration:
The most critical issues appear to be the configuration metadata validation errors and the missing asset files. Addressing these should resolve the majority of the errors you're seeing.