UNPKG

ws-dottie

Version:

Your friendly TypeScript companion for Washington State transportation APIs - WSDOT and WSF data with smart caching and React Query integration

1 lines 12.9 kB
{"version":3,"sources":["../src/apis/wsdot-weather-information/apiMeta.ts","../src/apis/wsdot-weather-information/weatherInfo/searchWeatherInformation.ts","../src/apis/wsdot-weather-information/weatherInfo/weatherInformation.ts","../src/apis/wsdot-weather-information/weatherInfo/weatherInformationByStationId.ts","../src/apis/wsdot-weather-information/weatherInfo/shared/weatherInfo.endpoints.ts","../src/apis/wsdot-weather-information/weatherInfo/currentWeatherForStations.ts"],"names":["wsdotWeatherInformationApiMeta","init_apiMeta","__esmMin","searchWeatherInformationMeta","searchWeatherInformationFactory","searchWeatherInformation","useSearchWeatherInformation","init_searchWeatherInformation","init_factories","init_utils","init_weatherInfo_input","init_weatherInfo_output","searchWeatherInformationInputSchema","weatherInfoSchema","datesHelper","createFetchAndHook","p","weatherInformationMeta","weatherInformationFactory","fetchWeatherInformation","useWeatherInformation","init_weatherInformation","weatherInformationInputSchema","weatherInformationByStationIdMeta","weatherInformationByStationIdFactory","fetchWeatherInformationByStationId","useWeatherInformationByStationId","init_weatherInformationByStationId","weatherInformationByStationIdInputSchema","weatherInfo_endpoints_exports","__export","weatherInfoGroup","init_weatherInfo_endpoints","init_currentWeatherForStations","currentWeatherForStationsMeta","currentWeatherForStationsFactory","fetchCurrentWeatherForStations","useCurrentWeatherForStations","currentWeatherForStationsInputSchema"],"mappings":"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","file":"chunk-WAEYM2FS.mjs","sourcesContent":["import type { ApiMeta } from \"@/apis/types\";\n\n/**\n * API metadata for WSDOT Weather Information API\n */\nexport const wsdotWeatherInformationApiMeta: ApiMeta = {\n name: \"wsdot-weather-information\",\n baseUrl:\n \"https://wsdot.wa.gov/traffic/api/WeatherInformation/WeatherInformationREST.svc\",\n};\n","import type { EndpointMeta } from \"@/apis/types\";\nimport { createFetchAndHook } from \"@/shared/factories\";\nimport { datesHelper } from \"@/shared/utils\";\nimport { wsdotWeatherInformationApiMeta } from \"../apiMeta\";\nimport {\n type SearchWeatherInformationInput,\n searchWeatherInformationInputSchema,\n} from \"./shared/weatherInfo.input\";\nimport {\n type WeatherInfo,\n weatherInfoSchema,\n} from \"./shared/weatherInfo.output\";\n\n/**\n * Metadata for the searchWeatherInformation endpoint\n */\nexport const searchWeatherInformationMeta = {\n functionName: \"searchWeatherInformation\",\n endpoint:\n \"/SearchWeatherInformationAsJson?StationID={StationID}&SearchStartTime={SearchStartTime}&SearchEndTime={SearchEndTime}\",\n inputSchema: searchWeatherInformationInputSchema,\n outputSchema: weatherInfoSchema.array(),\n sampleParams: {\n StationID: 1980,\n SearchStartTime: new Date(\n `${datesHelper.yesterday()}T00:00:00Z`\n ).toISOString(),\n SearchEndTime: new Date(`${datesHelper.today()}T23:59:59Z`).toISOString(),\n },\n endpointDescription:\n \"Search historical weather information for a station within a time range.\",\n} satisfies EndpointMeta<SearchWeatherInformationInput, WeatherInfo[]>;\n\n/**\n * Factory result for search weather information\n */\nconst searchWeatherInformationFactory = createFetchAndHook<\n SearchWeatherInformationInput,\n WeatherInfo[]\n>({\n api: wsdotWeatherInformationApiMeta,\n endpoint: searchWeatherInformationMeta,\n getEndpointGroup: () =>\n require(\"./shared/weatherInfo.endpoints\").weatherInfoGroup,\n});\n\n/**\n * Fetch function and React Query hook for retrieving historical weather information for a station within a time range\n */\nexport const {\n fetch: searchWeatherInformation,\n hook: useSearchWeatherInformation,\n} = searchWeatherInformationFactory;\n","import type { EndpointMeta } from \"@/apis/types\";\nimport { createFetchAndHook } from \"@/shared/factories\";\nimport { wsdotWeatherInformationApiMeta } from \"../apiMeta\";\nimport {\n type WeatherInformationInput,\n weatherInformationInputSchema,\n} from \"./shared/weatherInfo.input\";\nimport {\n type WeatherInfo,\n weatherInfoSchema,\n} from \"./shared/weatherInfo.output\";\n\n/**\n * Metadata for the fetchWeatherInformation endpoint\n */\nexport const weatherInformationMeta = {\n functionName: \"fetchWeatherInformation\",\n endpoint: \"/GetCurrentWeatherInformationAsJson\",\n inputSchema: weatherInformationInputSchema,\n outputSchema: weatherInfoSchema.array(),\n sampleParams: {},\n endpointDescription: \"List current weather information for all stations.\",\n} satisfies EndpointMeta<WeatherInformationInput, WeatherInfo[]>;\n\n/**\n * Factory result for weather information\n */\nconst weatherInformationFactory = createFetchAndHook<\n WeatherInformationInput,\n WeatherInfo[]\n>({\n api: wsdotWeatherInformationApiMeta,\n endpoint: weatherInformationMeta,\n getEndpointGroup: () =>\n require(\"./shared/weatherInfo.endpoints\").weatherInfoGroup,\n});\n\n/**\n * Fetch function and React Query hook for retrieving current weather information for all stations\n */\nexport const { fetch: fetchWeatherInformation, hook: useWeatherInformation } =\n weatherInformationFactory;\n","import type { EndpointMeta } from \"@/apis/types\";\nimport { createFetchAndHook } from \"@/shared/factories\";\nimport { wsdotWeatherInformationApiMeta } from \"../apiMeta\";\nimport {\n type WeatherInformationByStationIdInput,\n weatherInformationByStationIdInputSchema,\n} from \"./shared/weatherInfo.input\";\nimport {\n type WeatherInfo,\n weatherInfoSchema,\n} from \"./shared/weatherInfo.output\";\n\n/**\n * Metadata for the fetchWeatherInformationByStationId endpoint\n */\nexport const weatherInformationByStationIdMeta = {\n functionName: \"fetchWeatherInformationByStationId\",\n endpoint:\n \"/GetCurrentWeatherInformationByStationIDAsJson?StationID={StationID}\",\n inputSchema: weatherInformationByStationIdInputSchema,\n outputSchema: weatherInfoSchema,\n sampleParams: { StationID: 1909 },\n endpointDescription:\n \"Get current weather information for a specific station by ID.\",\n} satisfies EndpointMeta<WeatherInformationByStationIdInput, WeatherInfo>;\n\n/**\n * Factory result for weather information by station ID\n */\nconst weatherInformationByStationIdFactory = createFetchAndHook<\n WeatherInformationByStationIdInput,\n WeatherInfo\n>({\n api: wsdotWeatherInformationApiMeta,\n endpoint: weatherInformationByStationIdMeta,\n getEndpointGroup: () =>\n require(\"./shared/weatherInfo.endpoints\").weatherInfoGroup,\n});\n\n/**\n * Fetch function and React Query hook for retrieving current weather information for a specific station by ID\n */\nexport const {\n fetch: fetchWeatherInformationByStationId,\n hook: useWeatherInformationByStationId,\n} = weatherInformationByStationIdFactory;\n","import type { EndpointGroupMeta } from \"@/apis/types\";\nimport { currentWeatherForStationsMeta } from \"../currentWeatherForStations\";\nimport { searchWeatherInformationMeta } from \"../searchWeatherInformation\";\nimport { weatherInformationMeta } from \"../weatherInformation\";\nimport { weatherInformationByStationIdMeta } from \"../weatherInformationByStationId\";\n\n/**\n * Endpoint group metadata for weather information endpoints\n */\nexport const weatherInfoGroup: EndpointGroupMeta = {\n name: \"weather-info\",\n cacheStrategy: \"FREQUENT\",\n documentation: {\n summary:\n \"Current atmospheric conditions from WSDOT Road Weather Information System stations.\",\n description:\n \"Real-time temperature, humidity, wind conditions, visibility, barometric pressure, and precipitation data for transportation operations.\",\n useCases: [\n \"Assess road weather conditions for transportation management.\",\n \"Monitor atmospheric data for traveler safety decisions.\",\n \"Display current weather conditions at specific stations.\",\n \"Query historical weather data by station and time range.\",\n ],\n updateFrequency: \"5m\",\n },\n endpoints: [\n weatherInformationMeta,\n weatherInformationByStationIdMeta,\n currentWeatherForStationsMeta,\n searchWeatherInformationMeta,\n ],\n};\n","import type { EndpointMeta } from \"@/apis/types\";\nimport { createFetchAndHook } from \"@/shared/factories\";\nimport { wsdotWeatherInformationApiMeta } from \"../apiMeta\";\nimport {\n type CurrentWeatherForStationsInput,\n currentWeatherForStationsInputSchema,\n} from \"./shared/weatherInfo.input\";\nimport {\n type WeatherInfo,\n weatherInfoSchema,\n} from \"./shared/weatherInfo.output\";\n\n/**\n * Metadata for the fetchCurrentWeatherForStations endpoint\n */\nexport const currentWeatherForStationsMeta = {\n functionName: \"fetchCurrentWeatherForStations\",\n endpoint: \"/GetCurrentWeatherForStationsAsJson?StationList={StationList}\",\n inputSchema: currentWeatherForStationsInputSchema,\n outputSchema: weatherInfoSchema.array(),\n sampleParams: { StationList: \"1909,1966,1970\" },\n endpointDescription:\n \"Get current weather information for multiple specified stations.\",\n} satisfies EndpointMeta<CurrentWeatherForStationsInput, WeatherInfo[]>;\n\n/**\n * Factory result for current weather for stations\n */\nconst currentWeatherForStationsFactory = createFetchAndHook<\n CurrentWeatherForStationsInput,\n WeatherInfo[]\n>({\n api: wsdotWeatherInformationApiMeta,\n endpoint: currentWeatherForStationsMeta,\n getEndpointGroup: () =>\n require(\"./shared/weatherInfo.endpoints\").weatherInfoGroup,\n});\n\n/**\n * Fetch function and React Query hook for retrieving current weather information for multiple specified stations\n */\nexport const {\n fetch: fetchCurrentWeatherForStations,\n hook: useCurrentWeatherForStations,\n} = currentWeatherForStationsFactory;\n"]}