From 4dc24d9961a9c2cce65f9603c5448c39e1b49a05 Mon Sep 17 00:00:00 2001 From: Ryan D McGuire Date: Wed, 27 Nov 2024 16:06:30 -0500 Subject: [PATCH] Add pretty printing, complete Makefile --- Makefile | 23 +- api/eiaapi.gen.go | 219 ++++++++++---------- cmd/eia-client/cmd/get/get_route.go | 8 +- cmd/eia-client/internal/util/util_pretty.go | 75 +++++++ go.mod | 4 +- go.sum | 6 + pkg/eia/eia_reflection.go | 1 + schema/eia-api-swagger.yaml | 108 +++++----- 8 files changed, 271 insertions(+), 173 deletions(-) create mode 100644 cmd/eia-client/internal/util/util_pretty.go diff --git a/Makefile b/Makefile index e99a8ec..762753a 100644 --- a/Makefile +++ b/Makefile @@ -1,14 +1,31 @@ # Variables +SCHEMA_DIR := ./schema +SCHEMA_ZIP := eia-api-swagger.zip +SCHEMA_YML := eia-api-swagger.yaml CLIENT_PKG := ./cmd/eia-client CLIENT_GEN_FILE := ./api/eiaapi.gen.go MAPPER_GEN_FILE := ./api/eiaapi_funcmap.gen.go GO_FORMATTER := gofumpt -IS_GNU_SED := $(shell sed --version >/dev/null 2>&1 && echo true || echo false) -.PHONY: all generate build install clean +IS_GNU_SED := $(shell sed --version >/dev/null 2>&1 && echo true || echo false) +SED_INLINE := $(if $(IS_GNU_SED),-i '',-i) + +.PHONY: all schema generate build install clean # Default target -all: generate build +all: schema generate build + +# Retrieve and prepare schema +schema: + curl https://www.eia.gov/opendata/$(SCHEMA_ZIP) -o $(SCHEMA_DIR)/$(SCHEMA_ZIP) + unzip -o $(SCHEMA_DIR)/$(SCHEMA_ZIP) -d $(SCHEMA_DIR) + sed -E $(SED_INLINE) 's/responses\/data/schemas\/DataResponseContainer/g' $(SCHEMA_DIR)/$(SCHEMA_YML) + sed -E $(SED_INLINE) 's/responses\/route/schemas\/RouteResponseContainer/g' $(SCHEMA_DIR)/$(SCHEMA_YML) + sed -E $(SED_INLINE) 's/responses\/facets/schemas\/FacetOptionListContainer/g' $(SCHEMA_DIR)/$(SCHEMA_YML) + sed -E $(SED_INLINE) 's/responses\/facet/schemas\/FacetDetailsContainer/g' $(SCHEMA_DIR)/$(SCHEMA_YML) + sed -E $(SED_INLINE) 's/responses\/final-route/schemas\/FinalRouteResponse/g' $(SCHEMA_DIR)/$(SCHEMA_YML) + sed -E $(SED_INLINE) 's/[[:space:]]+Frequency:/ Frequency:\n x-go-name: FrequencyObject/g' $(SCHEMA_DIR)/$(SCHEMA_YML) + # Generate code generate: diff --git a/api/eiaapi.gen.go b/api/eiaapi.gen.go index ba389b8..45501e7 100644 --- a/api/eiaapi.gen.go +++ b/api/eiaapi.gen.go @@ -107,13 +107,6 @@ type FinalRouteResponse struct { Response *FinalRoute `json:"response,omitempty"` } -// FinalRouteResponseContainer defines model for FinalRouteResponseContainer. -type FinalRouteResponseContainer struct { - ApiVersion *string `json:"apiVersion,omitempty"` - Request *RouteRequest `json:"request,omitempty"` - Response *FinalRouteResponse `json:"response,omitempty"` -} - // FrequencyObject defines model for Frequency. type FrequencyObject struct { Description *string `json:"description,omitempty"` @@ -22759,7 +22752,7 @@ func (r GetV2AeoResponse) StatusCode() int { type GetV2AeoRoute1Response struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -22891,7 +22884,7 @@ func (r GetV2Co2EmissionsResponse) StatusCode() int { type GetV2Co2EmissionsCo2EmissionsAggregatesResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -23001,7 +22994,7 @@ func (r GetV2Co2EmissionsCo2EmissionsAggregatesFacetFacetIdResponse) StatusCode( type GetV2Co2EmissionsCo2EmissionsAndCarbonCoefficientsResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -23133,7 +23126,7 @@ func (r GetV2CoalResponse) StatusCode() int { type GetV2CoalAggregateProductionResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -23243,7 +23236,7 @@ func (r GetV2CoalAggregateProductionFacetFacetIdResponse) StatusCode() int { type GetV2CoalConsumptionAndQualityResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -23353,7 +23346,7 @@ func (r GetV2CoalConsumptionAndQualityFacetFacetIdResponse) StatusCode() int { type GetV2CoalExportsImportsQuantityPriceResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -23463,7 +23456,7 @@ func (r GetV2CoalExportsImportsQuantityPriceFacetFacetIdResponse) StatusCode() i type GetV2CoalMarketSalesPriceResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -23573,7 +23566,7 @@ func (r GetV2CoalMarketSalesPriceFacetFacetIdResponse) StatusCode() int { type GetV2CoalMineProductionResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -23683,7 +23676,7 @@ func (r GetV2CoalMineProductionFacetFacetIdResponse) StatusCode() int { type GetV2CoalPriceByRankResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -23793,7 +23786,7 @@ func (r GetV2CoalPriceByRankFacetFacetIdResponse) StatusCode() int { type GetV2CoalReservesCapacityResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -23925,7 +23918,7 @@ func (r GetV2CoalShipmentsResponse) StatusCode() int { type GetV2CoalShipmentsByMineByPlantResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -24035,7 +24028,7 @@ func (r GetV2CoalShipmentsByMineByPlantFacetFacetIdResponse) StatusCode() int { type GetV2CoalShipmentsMineAggregatesResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -24145,7 +24138,7 @@ func (r GetV2CoalShipmentsMineAggregatesFacetFacetIdResponse) StatusCode() int { type GetV2CoalShipmentsMineStateAggregatesResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -24255,7 +24248,7 @@ func (r GetV2CoalShipmentsMineStateAggregatesFacetFacetIdResponse) StatusCode() type GetV2CoalShipmentsPlantAggregatesResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -24365,7 +24358,7 @@ func (r GetV2CoalShipmentsPlantAggregatesFacetFacetIdResponse) StatusCode() int type GetV2CoalShipmentsPlantStateAggregatesResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -24475,7 +24468,7 @@ func (r GetV2CoalShipmentsPlantStateAggregatesFacetFacetIdResponse) StatusCode() type GetV2CoalShipmentsReceiptsResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -24585,7 +24578,7 @@ func (r GetV2CoalShipmentsReceiptsFacetFacetIdResponse) StatusCode() int { type GetV2CrudeOilImportsResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -24717,7 +24710,7 @@ func (r GetV2DensifiedBiomassResponse) StatusCode() int { type GetV2DensifiedBiomassCapacityByRegionResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -24827,7 +24820,7 @@ func (r GetV2DensifiedBiomassCapacityByRegionFacetFacetIdResponse) StatusCode() type GetV2DensifiedBiomassCharacteristicsByRegionResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -24937,7 +24930,7 @@ func (r GetV2DensifiedBiomassCharacteristicsByRegionFacetFacetIdResponse) Status type GetV2DensifiedBiomassExportSalesAndPriceResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -25047,7 +25040,7 @@ func (r GetV2DensifiedBiomassExportSalesAndPriceFacetFacetIdResponse) StatusCode type GetV2DensifiedBiomassFeedstocksAndCostResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -25157,7 +25150,7 @@ func (r GetV2DensifiedBiomassFeedstocksAndCostFacetFacetIdResponse) StatusCode() type GetV2DensifiedBiomassInventoriesByRegionResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -25267,7 +25260,7 @@ func (r GetV2DensifiedBiomassInventoriesByRegionFacetFacetIdResponse) StatusCode type GetV2DensifiedBiomassProductionByRegionResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -25377,7 +25370,7 @@ func (r GetV2DensifiedBiomassProductionByRegionFacetFacetIdResponse) StatusCode( type GetV2DensifiedBiomassSalesAndPriceByRegionResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -25487,7 +25480,7 @@ func (r GetV2DensifiedBiomassSalesAndPriceByRegionFacetFacetIdResponse) StatusCo type GetV2DensifiedBiomassWoodPelletPlantsResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -25619,7 +25612,7 @@ func (r GetV2ElectricityResponse) StatusCode() int { type GetV2ElectricityElectricPowerOperationalDataResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -25729,7 +25722,7 @@ func (r GetV2ElectricityElectricPowerOperationalDataFacetFacetIdResponse) Status type GetV2ElectricityFacilityFuelResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -25839,7 +25832,7 @@ func (r GetV2ElectricityFacilityFuelFacetFacetIdResponse) StatusCode() int { type GetV2ElectricityOperatingGeneratorCapacityResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -25949,7 +25942,7 @@ func (r GetV2ElectricityOperatingGeneratorCapacityFacetFacetIdResponse) StatusCo type GetV2ElectricityRetailSalesResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -26081,7 +26074,7 @@ func (r GetV2ElectricityRtoResponse) StatusCode() int { type GetV2ElectricityRtoDailyFuelTypeDataResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -26191,7 +26184,7 @@ func (r GetV2ElectricityRtoDailyFuelTypeDataFacetFacetIdResponse) StatusCode() i type GetV2ElectricityRtoDailyInterchangeDataResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -26301,7 +26294,7 @@ func (r GetV2ElectricityRtoDailyInterchangeDataFacetFacetIdResponse) StatusCode( type GetV2ElectricityRtoDailyRegionDataResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -26411,7 +26404,7 @@ func (r GetV2ElectricityRtoDailyRegionDataFacetFacetIdResponse) StatusCode() int type GetV2ElectricityRtoDailyRegionSubBaDataResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -26521,7 +26514,7 @@ func (r GetV2ElectricityRtoDailyRegionSubBaDataFacetFacetIdResponse) StatusCode( type GetV2ElectricityRtoFuelTypeDataResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -26631,7 +26624,7 @@ func (r GetV2ElectricityRtoFuelTypeDataFacetFacetIdResponse) StatusCode() int { type GetV2ElectricityRtoInterchangeDataResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -26741,7 +26734,7 @@ func (r GetV2ElectricityRtoInterchangeDataFacetFacetIdResponse) StatusCode() int type GetV2ElectricityRtoRegionDataResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -26851,7 +26844,7 @@ func (r GetV2ElectricityRtoRegionDataFacetFacetIdResponse) StatusCode() int { type GetV2ElectricityRtoRegionSubBaDataResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -26983,7 +26976,7 @@ func (r GetV2ElectricitySepResponse) StatusCode() int { type GetV2ElectricityStateElectricityProfilesCapabilityResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -27093,7 +27086,7 @@ func (r GetV2ElectricityStateElectricityProfilesCapabilityFacetFacetIdResponse) type GetV2ElectricityStateElectricityProfilesEmissionsByStateByFuelResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -27203,7 +27196,7 @@ func (r GetV2ElectricityStateElectricityProfilesEmissionsByStateByFuelFacetFacet type GetV2ElectricityStateElectricityProfilesEnergyEfficiencyResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -27313,7 +27306,7 @@ func (r GetV2ElectricityStateElectricityProfilesEnergyEfficiencyFacetFacetIdResp type GetV2ElectricityStateElectricityProfilesMetersResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -27423,7 +27416,7 @@ func (r GetV2ElectricityStateElectricityProfilesMetersFacetFacetIdResponse) Stat type GetV2ElectricityStateElectricityProfilesNetMeteringResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -27533,7 +27526,7 @@ func (r GetV2ElectricityStateElectricityProfilesNetMeteringFacetFacetIdResponse) type GetV2ElectricityStateElectricityProfilesSourceDispositionResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -27643,7 +27636,7 @@ func (r GetV2ElectricityStateElectricityProfilesSourceDispositionFacetFacetIdRes type GetV2ElectricityStateElectricityProfilesSummaryResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -27775,7 +27768,7 @@ func (r EIAAPIControllersDatasetAeoIeoIeoControllerIeoResponse) StatusCode() int type EIAAPIControllersDatasetAeoIeoIeoControllerConstructResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -27885,7 +27878,7 @@ func (r EIAAPIControllersDatasetAeoIeoIeoControllerRouteFacetIdResponse) StatusC type GetV2InternationalResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -28039,7 +28032,7 @@ func (r GetV2NaturalGasRoute1Response) StatusCode() int { type GetV2NaturalGasRoute1Route2Response struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -28171,7 +28164,7 @@ func (r GetV2NuclearOutagesResponse) StatusCode() int { type GetV2NuclearOutagesFacilityNuclearOutagesResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -28281,7 +28274,7 @@ func (r GetV2NuclearOutagesFacilityNuclearOutagesFacetFacetIdResponse) StatusCod type GetV2NuclearOutagesGeneratorNuclearOutagesResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -28391,7 +28384,7 @@ func (r GetV2NuclearOutagesGeneratorNuclearOutagesFacetFacetIdResponse) StatusCo type GetV2NuclearOutagesUsNuclearOutagesResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -28501,7 +28494,7 @@ func (r GetV2NuclearOutagesUsNuclearOutagesFacetFacetIdResponse) StatusCode() in type GetV2SedsResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -28611,7 +28604,7 @@ func (r GetV2SedsFacetFacetIdResponse) StatusCode() int { type GetV2SteoResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -28721,7 +28714,7 @@ func (r GetV2SteoFacetFacetIdResponse) StatusCode() int { type GetV2TotalEnergyResponse struct { Body []byte HTTPResponse *http.Response - JSON200 *FinalRouteResponseContainer + JSON200 *FinalRouteResponse } // Status returns HTTPResponse.Status @@ -31819,7 +31812,7 @@ func ParseGetV2AeoRoute1Response(rsp *http.Response) (*GetV2AeoRoute1Response, e switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -31969,7 +31962,7 @@ func ParseGetV2Co2EmissionsCo2EmissionsAggregatesResponse(rsp *http.Response) (* switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -32094,7 +32087,7 @@ func ParseGetV2Co2EmissionsCo2EmissionsAndCarbonCoefficientsResponse(rsp *http.R switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -32244,7 +32237,7 @@ func ParseGetV2CoalAggregateProductionResponse(rsp *http.Response) (*GetV2CoalAg switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -32369,7 +32362,7 @@ func ParseGetV2CoalConsumptionAndQualityResponse(rsp *http.Response) (*GetV2Coal switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -32494,7 +32487,7 @@ func ParseGetV2CoalExportsImportsQuantityPriceResponse(rsp *http.Response) (*Get switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -32619,7 +32612,7 @@ func ParseGetV2CoalMarketSalesPriceResponse(rsp *http.Response) (*GetV2CoalMarke switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -32744,7 +32737,7 @@ func ParseGetV2CoalMineProductionResponse(rsp *http.Response) (*GetV2CoalMinePro switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -32869,7 +32862,7 @@ func ParseGetV2CoalPriceByRankResponse(rsp *http.Response) (*GetV2CoalPriceByRan switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -32994,7 +32987,7 @@ func ParseGetV2CoalReservesCapacityResponse(rsp *http.Response) (*GetV2CoalReser switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -33144,7 +33137,7 @@ func ParseGetV2CoalShipmentsByMineByPlantResponse(rsp *http.Response) (*GetV2Coa switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -33269,7 +33262,7 @@ func ParseGetV2CoalShipmentsMineAggregatesResponse(rsp *http.Response) (*GetV2Co switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -33394,7 +33387,7 @@ func ParseGetV2CoalShipmentsMineStateAggregatesResponse(rsp *http.Response) (*Ge switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -33519,7 +33512,7 @@ func ParseGetV2CoalShipmentsPlantAggregatesResponse(rsp *http.Response) (*GetV2C switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -33644,7 +33637,7 @@ func ParseGetV2CoalShipmentsPlantStateAggregatesResponse(rsp *http.Response) (*G switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -33769,7 +33762,7 @@ func ParseGetV2CoalShipmentsReceiptsResponse(rsp *http.Response) (*GetV2CoalShip switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -33894,7 +33887,7 @@ func ParseGetV2CrudeOilImportsResponse(rsp *http.Response) (*GetV2CrudeOilImport switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -34044,7 +34037,7 @@ func ParseGetV2DensifiedBiomassCapacityByRegionResponse(rsp *http.Response) (*Ge switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -34169,7 +34162,7 @@ func ParseGetV2DensifiedBiomassCharacteristicsByRegionResponse(rsp *http.Respons switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -34294,7 +34287,7 @@ func ParseGetV2DensifiedBiomassExportSalesAndPriceResponse(rsp *http.Response) ( switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -34419,7 +34412,7 @@ func ParseGetV2DensifiedBiomassFeedstocksAndCostResponse(rsp *http.Response) (*G switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -34544,7 +34537,7 @@ func ParseGetV2DensifiedBiomassInventoriesByRegionResponse(rsp *http.Response) ( switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -34669,7 +34662,7 @@ func ParseGetV2DensifiedBiomassProductionByRegionResponse(rsp *http.Response) (* switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -34794,7 +34787,7 @@ func ParseGetV2DensifiedBiomassSalesAndPriceByRegionResponse(rsp *http.Response) switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -34919,7 +34912,7 @@ func ParseGetV2DensifiedBiomassWoodPelletPlantsResponse(rsp *http.Response) (*Ge switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -35069,7 +35062,7 @@ func ParseGetV2ElectricityElectricPowerOperationalDataResponse(rsp *http.Respons switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -35194,7 +35187,7 @@ func ParseGetV2ElectricityFacilityFuelResponse(rsp *http.Response) (*GetV2Electr switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -35319,7 +35312,7 @@ func ParseGetV2ElectricityOperatingGeneratorCapacityResponse(rsp *http.Response) switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -35444,7 +35437,7 @@ func ParseGetV2ElectricityRetailSalesResponse(rsp *http.Response) (*GetV2Electri switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -35594,7 +35587,7 @@ func ParseGetV2ElectricityRtoDailyFuelTypeDataResponse(rsp *http.Response) (*Get switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -35719,7 +35712,7 @@ func ParseGetV2ElectricityRtoDailyInterchangeDataResponse(rsp *http.Response) (* switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -35844,7 +35837,7 @@ func ParseGetV2ElectricityRtoDailyRegionDataResponse(rsp *http.Response) (*GetV2 switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -35969,7 +35962,7 @@ func ParseGetV2ElectricityRtoDailyRegionSubBaDataResponse(rsp *http.Response) (* switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -36094,7 +36087,7 @@ func ParseGetV2ElectricityRtoFuelTypeDataResponse(rsp *http.Response) (*GetV2Ele switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -36219,7 +36212,7 @@ func ParseGetV2ElectricityRtoInterchangeDataResponse(rsp *http.Response) (*GetV2 switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -36344,7 +36337,7 @@ func ParseGetV2ElectricityRtoRegionDataResponse(rsp *http.Response) (*GetV2Elect switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -36469,7 +36462,7 @@ func ParseGetV2ElectricityRtoRegionSubBaDataResponse(rsp *http.Response) (*GetV2 switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -36619,7 +36612,7 @@ func ParseGetV2ElectricityStateElectricityProfilesCapabilityResponse(rsp *http.R switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -36744,7 +36737,7 @@ func ParseGetV2ElectricityStateElectricityProfilesEmissionsByStateByFuelResponse switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -36869,7 +36862,7 @@ func ParseGetV2ElectricityStateElectricityProfilesEnergyEfficiencyResponse(rsp * switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -36994,7 +36987,7 @@ func ParseGetV2ElectricityStateElectricityProfilesMetersResponse(rsp *http.Respo switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -37119,7 +37112,7 @@ func ParseGetV2ElectricityStateElectricityProfilesNetMeteringResponse(rsp *http. switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -37244,7 +37237,7 @@ func ParseGetV2ElectricityStateElectricityProfilesSourceDispositionResponse(rsp switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -37369,7 +37362,7 @@ func ParseGetV2ElectricityStateElectricityProfilesSummaryResponse(rsp *http.Resp switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -37519,7 +37512,7 @@ func ParseEIAAPIControllersDatasetAeoIeoIeoControllerConstructResponse(rsp *http switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -37644,7 +37637,7 @@ func ParseGetV2InternationalResponse(rsp *http.Response) (*GetV2InternationalRes switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -37819,7 +37812,7 @@ func ParseGetV2NaturalGasRoute1Route2Response(rsp *http.Response) (*GetV2Natural switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -37969,7 +37962,7 @@ func ParseGetV2NuclearOutagesFacilityNuclearOutagesResponse(rsp *http.Response) switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -38094,7 +38087,7 @@ func ParseGetV2NuclearOutagesGeneratorNuclearOutagesResponse(rsp *http.Response) switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -38219,7 +38212,7 @@ func ParseGetV2NuclearOutagesUsNuclearOutagesResponse(rsp *http.Response) (*GetV switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -38344,7 +38337,7 @@ func ParseGetV2SedsResponse(rsp *http.Response) (*GetV2SedsResponse, error) { switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -38469,7 +38462,7 @@ func ParseGetV2SteoResponse(rsp *http.Response) (*GetV2SteoResponse, error) { switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } @@ -38594,7 +38587,7 @@ func ParseGetV2TotalEnergyResponse(rsp *http.Response) (*GetV2TotalEnergyRespons switch { case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: - var dest FinalRouteResponseContainer + var dest FinalRouteResponse if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } diff --git a/cmd/eia-client/cmd/get/get_route.go b/cmd/eia-client/cmd/get/get_route.go index 40e7e9e..74ec535 100644 --- a/cmd/eia-client/cmd/get/get_route.go +++ b/cmd/eia-client/cmd/get/get_route.go @@ -1,10 +1,11 @@ package get import ( + "fmt" "slices" "strings" - "github.com/k0kubun/pp/v3" + "github.com/goccy/go-yaml" "github.com/spf13/cobra" "gitea.libretechconsulting.com/50W/eia-api-go/cmd/eia-client/internal/util" @@ -40,7 +41,10 @@ func RunGetRouteCmd(cmd *cobra.Command, args []string) { logger.Fatal().Err(err).Send() } - pp.Println(route) + bytes, _ := yaml.Marshal(route) + fmt.Println(string(util.PrettyBytes(&util.PrettyOpts{ + Bytes: append([]byte(fmt.Sprintf("name: %s\n", args[0])), bytes...), + }))) } func completeRouteRoutes(cmd *cobra.Command, args []string, toComplete string) ( diff --git a/cmd/eia-client/internal/util/util_pretty.go b/cmd/eia-client/internal/util/util_pretty.go new file mode 100644 index 0000000..5b22c7c --- /dev/null +++ b/cmd/eia-client/internal/util/util_pretty.go @@ -0,0 +1,75 @@ +package util + +import ( + "fmt" + + "github.com/fatih/color" + "github.com/goccy/go-yaml/lexer" + "github.com/goccy/go-yaml/printer" +) + +const escape = "\x1b" + +type PrettyOpts struct { + Bytes []byte + LineNumbers bool +} + +func PrettyBytes(opts *PrettyOpts) []byte { + tokens := lexer.Tokenize(string(opts.Bytes)) + var p printer.Printer + p.LineNumber = opts.LineNumbers + p.LineNumberFormat = func(num int) string { + fn := color.New(color.Bold, color.FgHiWhite).SprintFunc() + return fn(fmt.Sprintf("%2d | ", num)) + } + + p.Bool = func() *printer.Property { + return &printer.Property{ + Prefix: format(color.FgHiMagenta), + Suffix: format(color.Reset), + } + } + p.Number = func() *printer.Property { + return &printer.Property{ + Prefix: format(color.FgHiMagenta), + Suffix: format(color.Reset), + } + } + p.MapKey = func() *printer.Property { + return &printer.Property{ + Prefix: format(color.FgHiCyan), + Suffix: format(color.Reset), + } + } + p.Anchor = func() *printer.Property { + return &printer.Property{ + Prefix: format(color.FgHiYellow), + Suffix: format(color.Reset), + } + } + p.Alias = func() *printer.Property { + return &printer.Property{ + Prefix: format(color.FgHiYellow), + Suffix: format(color.Reset), + } + } + p.String = func() *printer.Property { + return &printer.Property{ + Prefix: format(color.FgHiGreen), + Suffix: format(color.Reset), + } + } + p.Comment = func() *printer.Property { + return &printer.Property{ + Prefix: format(color.FgHiBlack), + Suffix: format(color.Reset), + } + } + + return []byte(p.PrintTokens(tokens)) +} + +func format(attr color.Attribute) string { + return fmt.Sprintf("%s[%dm", escape, attr) +} diff --git a/go.mod b/go.mod index 5ae8e19..06425d9 100644 --- a/go.mod +++ b/go.mod @@ -4,7 +4,9 @@ go 1.23.3 require ( github.com/deepmap/oapi-codegen v1.16.3 - github.com/k0kubun/pp/v3 v3.3.0 + github.com/fatih/color v1.18.0 + github.com/goccy/go-yaml v1.15.1 + github.com/k0kubun/pp/v3 v3.4.1 github.com/oapi-codegen/oapi-codegen/v2 v2.4.1 github.com/oapi-codegen/runtime v1.1.1 github.com/rs/zerolog v1.33.0 diff --git a/go.sum b/go.sum index aecf47c..d06eda4 100644 --- a/go.sum +++ b/go.sum @@ -15,6 +15,8 @@ github.com/deepmap/oapi-codegen v1.16.3/go.mod h1:JD6ErqeX0nYnhdciLc61Konj3NBASR github.com/dprotaso/go-yit v0.0.0-20191028211022-135eb7262960/go.mod h1:9HQzr9D/0PGwMEbC3d5AB7oi67+h4TsQqItC1GVYG58= github.com/dprotaso/go-yit v0.0.0-20240618133044-5a0af90af097 h1:f5nA5Ys8RXqFXtKc0XofVRiuwNTuJzPIwTmbjLz9vj8= github.com/dprotaso/go-yit v0.0.0-20240618133044-5a0af90af097/go.mod h1:FTAVyH6t+SlS97rv6EXRVuBDLkQqcIe/xQw9f4IFUI4= +github.com/fatih/color v1.18.0 h1:S8gINlzdQ840/4pfAwic/ZE0djQEH3wM94VfqLTZcOM= +github.com/fatih/color v1.18.0/go.mod h1:4FelSpRwEGDpQ12mAdzqdOukCy4u8WUtOY6lkT/6HfU= github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo= github.com/fsnotify/fsnotify v1.4.9 h1:hsms1Qyu0jgnwNXIxa+/V/PDsU6CfLf6CNO8H7IWoS4= github.com/fsnotify/fsnotify v1.4.9/go.mod h1:znqG4EE+3YCdAaPaxE2ZRY/06pZUdp0tY4IgpuI1SZQ= @@ -27,6 +29,8 @@ github.com/go-openapi/swag v0.23.0/go.mod h1:esZ8ITTYEsH1V2trKHjAN8Ai7xHb8RV+YSZ github.com/go-task/slim-sprig v0.0.0-20210107165309-348f09dbbbc0/go.mod h1:fyg7847qk6SyHyPtNmDHnmrv/HOrqktSC+C9fM+CJOE= github.com/go-test/deep v1.0.8 h1:TDsG77qcSprGbC6vTN8OuXp5g+J+b5Pcguhf7Zt61VM= github.com/go-test/deep v1.0.8/go.mod h1:5C2ZWiW0ErCdrYzpqxLbTX7MG14M9iiw8DgHncVwcsE= +github.com/goccy/go-yaml v1.15.1 h1:1vwC1ZjDzXyiMUKf7kKPazc6WUm4xnHGxNlzj4BIVu0= +github.com/goccy/go-yaml v1.15.1/go.mod h1:XBurs7gK8ATbW4ZPGKgcbrY1Br56PdM69F7LkFRi1kA= github.com/godbus/dbus/v5 v5.0.4/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA= github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/golang/protobuf v1.4.0-rc.1/go.mod h1:ceaxUfeHdC40wWswd/P6IGgMaK3YpKi5j83Wpe3EHw8= @@ -57,6 +61,8 @@ github.com/josharian/intern v1.0.0/go.mod h1:5DoeVV0s6jJacbCEi61lwdGj/aVlrQvzHFF github.com/juju/gnuflag v0.0.0-20171113085948-2ce1bb71843d/go.mod h1:2PavIy+JPciBPrBUjwbNvtwB6RQlve+hkpll6QSNmOE= github.com/k0kubun/pp/v3 v3.3.0 h1:/Unrck5tDGUSjsUJsmx9GUL64pNKOY5UEdoP1F7FBq8= github.com/k0kubun/pp/v3 v3.3.0/go.mod h1:wJadGBvcY6JKaiUkB89VzUACKDmTX1r4aQTPERpZc6w= +github.com/k0kubun/pp/v3 v3.4.1 h1:1WdFZDRRqe8UsR61N/2RoOZ3ziTEqgTPVqKrHeb779Y= +github.com/k0kubun/pp/v3 v3.4.1/go.mod h1:+SiNiqKnBfw1Nkj82Lh5bIeKQOAkPy6Xw9CAZUZ8npI= github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE= github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk= diff --git a/pkg/eia/eia_reflection.go b/pkg/eia/eia_reflection.go index a76837c..1da22a0 100644 --- a/pkg/eia/eia_reflection.go +++ b/pkg/eia/eia_reflection.go @@ -42,6 +42,7 @@ var defaultMethodSubs = MethodSubs{ }, } +// Retrieve information for a named Route (e.g. GetAeoV2Route1) func (client *Client) GetRoute(ctx context.Context, route string, subs *MethodSubs) ( *eiaapi.FinalRoute, error, ) { diff --git a/schema/eia-api-swagger.yaml b/schema/eia-api-swagger.yaml index 90be538..6db02e4 100644 --- a/schema/eia-api-swagger.yaml +++ b/schema/eia-api-swagger.yaml @@ -25,7 +25,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' parameters: - $ref: '#/components/parameters/route1' @@ -131,7 +131,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' parameters: - $ref: '#/components/parameters/route1' @@ -992,7 +992,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' parameters: - $ref: '#/components/parameters/route1' @@ -1127,7 +1127,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/seds/facet: get: tags: @@ -1221,7 +1221,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/steo/facet: get: tags: @@ -1336,7 +1336,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/co2-emissions/co2-emissions-aggregates/facet: get: tags: @@ -1407,7 +1407,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/co2-emissions/co2-emissions-and-carbon-coefficients/facet: get: tags: @@ -1491,7 +1491,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/coal/aggregate-production/facet: get: tags: @@ -1575,7 +1575,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/coal/consumption-and-quality/facet: get: tags: @@ -1645,7 +1645,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/coal/exports-imports-quantity-price/facet: get: tags: @@ -1716,7 +1716,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/coal/market-sales-price/facet: get: tags: @@ -1787,7 +1787,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/coal/mine-production/facet: get: tags: @@ -1858,7 +1858,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/coal/price-by-rank/facet: get: tags: @@ -1929,7 +1929,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/coal/reserves-capacity/facet: get: tags: @@ -2000,7 +2000,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/coal/shipments/by-mine-by-plant/facet: get: tags: @@ -2070,7 +2070,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/coal/shipments/mine-aggregates/facet: get: tags: @@ -2140,7 +2140,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/coal/shipments/mine-state-aggregates/facet: get: tags: @@ -2210,7 +2210,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/coal/shipments/plant-aggregates/facet: get: tags: @@ -2281,7 +2281,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/coal/shipments/plant-state-aggregates/facet: get: tags: @@ -2352,7 +2352,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/coal/shipments/receipts/facet: get: tags: @@ -2436,7 +2436,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/crude-oil-imports/facet: get: tags: @@ -2507,7 +2507,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/densified-biomass/capacity-by-region/facet: get: tags: @@ -2578,7 +2578,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/densified-biomass/characteristics-by-region/facet: get: tags: @@ -2662,7 +2662,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/densified-biomass/export-sales-and-price/facet: get: tags: @@ -2733,7 +2733,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/densified-biomass/feedstocks-and-cost/facet: get: tags: @@ -2804,7 +2804,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/densified-biomass/inventories-by-region/facet: get: tags: @@ -2875,7 +2875,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/densified-biomass/production-by-region/facet: get: tags: @@ -2946,7 +2946,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/densified-biomass/sales-and-price-by-region/facet: get: tags: @@ -3017,7 +3017,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/densified-biomass/wood-pellet-plants/facet: get: tags: @@ -3101,7 +3101,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/electricity/facility-fuel/facet: get: tags: @@ -3172,7 +3172,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/electricity/electric-power-operational-data/facet: get: tags: @@ -3243,7 +3243,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/electricity/operating-generator-capacity/facet: get: tags: @@ -3314,7 +3314,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/electricity/retail-sales/facet: get: tags: @@ -3385,7 +3385,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/electricity/state-electricity-profiles/capability/facet: get: tags: @@ -3456,7 +3456,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/electricity/state-electricity-profiles/emissions-by-state-by-fuel/facet: get: tags: @@ -3527,7 +3527,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/electricity/state-electricity-profiles/energy-efficiency/facet: get: tags: @@ -3598,7 +3598,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/electricity/state-electricity-profiles/meters/facet: get: tags: @@ -3669,7 +3669,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/electricity/state-electricity-profiles/net-metering/facet: get: tags: @@ -3753,7 +3753,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/electricity/state-electricity-profiles/source-disposition/facet: get: tags: @@ -3824,7 +3824,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/electricity/state-electricity-profiles/summary/facet: get: tags: @@ -3895,7 +3895,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/electricity/rto/daily-interchange-data/facet: get: tags: @@ -3966,7 +3966,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/electricity/rto/daily-fuel-type-data/facet: get: tags: @@ -4037,7 +4037,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/electricity/rto/daily-region-sub-ba-data/facet: get: tags: @@ -4108,7 +4108,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/electricity/rto/daily-region-data/facet: get: tags: @@ -4179,7 +4179,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/electricity/rto/interchange-data/facet: get: tags: @@ -4263,7 +4263,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/electricity/rto/fuel-type-data/facet: get: tags: @@ -4334,7 +4334,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/electricity/rto/region-sub-ba-data/facet: get: tags: @@ -4405,7 +4405,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/electricity/rto/region-data/facet: get: tags: @@ -4476,7 +4476,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/international/facet: get: tags: @@ -4547,7 +4547,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/nuclear-outages/facility-nuclear-outages/facet: get: tags: @@ -4618,7 +4618,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/nuclear-outages/generator-nuclear-outages/facet: get: tags: @@ -4702,7 +4702,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/nuclear-outages/us-nuclear-outages/facet: get: tags: @@ -4784,7 +4784,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FinalRouteResponseContainer' + $ref: '#/components/schemas/FinalRouteResponse' /v2/total-energy/facet: get: tags: @@ -4879,7 +4879,7 @@ components: type: string params: { } type: object - Frequency: + Frequency: x-go-name: FrequencyObject properties: id: