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 • 7.1 kB
Source Map (JSON)
{"version":3,"sources":["../src/apis/wsdot-travel-times/apiMeta.ts","../src/apis/wsdot-travel-times/travelTimeRoutes/travelTimes.ts","../src/apis/wsdot-travel-times/travelTimeRoutes/shared/travelTimeRoutes.endpoints.ts","../src/apis/wsdot-travel-times/travelTimeRoutes/travelTimeById.ts"],"names":["wsdotTravelTimesApiMeta","init_apiMeta","__esmMin","travelTimesMeta","fetch","useHook","fetchTravelTimes","useTravelTimes","init_travelTimes","init_factories","init_travelTimeRoutes_input","init_travelTimeRoutes_output","travelTimesInputSchema","travelTimeRouteSchema","createFetchAndHook","travelTimeRoutes_endpoints_exports","__export","travelTimeRoutesGroup","init_travelTimeRoutes_endpoints","init_travelTimeById","travelTimeByIdMeta","fetchTravelTimeById","useTravelTimeById","travelTimeByIdInputSchema","n"],"mappings":"gKAAA,IAKaA,EALbC,CAAAA,CAAAC,CAAAA,CAAA,IAAA,CAKaF,CAAAA,CAAmC,CAC9C,IAAA,CAAM,oBAAA,CACN,OAAA,CACE,sEACJ,KCTA,IAmBaG,CAAAA,CASLC,CAAAA,CAAOC,CAAAA,CAeFC,EAQAC,CAAAA,CAnDbC,CAAAA,CAAAN,CAAAA,CAAA,IAAA,CACAO,IAKAR,CAAAA,EAAAA,CACAS,CAAAA,EAAAA,CAIAC,CAAAA,EAAAA,CAQaR,CAAAA,CAAkB,CAC7B,YAAA,CAAc,kBAAA,CACd,QAAA,CAAU,uBAAA,CACV,YAAaS,CAAAA,CACb,YAAA,CAAcC,GAAAA,CAAsB,KAAA,GACpC,YAAA,CAAc,EAAC,CACf,mBAAA,CAAqB,iDACvB,CAAA,CAEM,CAAE,KAAA,CAAAT,CAAAA,CAAO,QAAAC,CAAAA,CAAAA,CAAYS,GAAAA,CAGzB,CACA,GAAA,CAAKd,EACL,QAAA,CAAUG,CAAAA,CACV,gBAAA,CAAkB,IAEhB,aAA+C,qBAAA,CAC5C,aACP,CAAC,CAAA,CAKYG,EAGTF,CAAAA,CAKSG,CAAAA,CACXF,EAAAA,CAAAA,ECpDF,IAAAU,EAAA,EAAA,CAAAC,GAAAA,CAAAD,CAAAA,CAAA,CAAA,qBAAA,CAAA,IAAAE,IAAA,IAOaA,CAAAA,CAPbC,CAAAA,CAAAhB,CAAAA,CAAA,KACAiB,CAAAA,EAAAA,CACAX,CAAAA,EAAAA,CAKaS,CAAAA,CAA2C,CACtD,KAAM,oBAAA,CACN,aAAA,CAAe,QAAA,CACf,aAAA,CAAe,CACb,OAAA,CACE,6EAAA,CACF,WAAA,CACE,+JAAA,CACF,SAAU,CACR,gDAAA,CACA,4EAAA,CACA,iEACF,EACA,eAAA,CAAiB,IACnB,CAAA,CACA,SAAA,CAAW,CAACd,CAAAA,CAAiBiB,CAAkB,CACjD,EAAA,CAAA,MCJaA,CAAAA,CAYLhB,CAAAA,CAAOC,CAAAA,CAeFgB,CAAAA,CAQAC,EAtDbH,CAAAA,CAAAjB,CAAAA,CAAA,IAAA,CACAO,CAAAA,EAAAA,CAKAR,IACAS,CAAAA,EAAAA,CAIAC,CAAAA,EAAAA,CAQaS,CAAAA,CAAqB,CAChC,aAAc,qBAAA,CACd,QAAA,CAAU,kDAAA,CACV,WAAA,CAAaG,IACb,YAAA,CAAcV,GAAAA,CACd,YAAA,CAAc,CAAE,aAAc,CAAE,CAAA,CAChC,mBAAA,CAAqB,kDACvB,EAKM,CAAE,KAAA,CAAAT,CAAAA,CAAO,OAAA,CAAAC,GAAYS,GAAAA,CAGzB,CACA,GAAA,CAAKd,CAAAA,CACL,SAAUoB,CAAAA,CACV,gBAAA,CAAkB,IAEhB,CAAA,CAAA,EAAA,CAAAI,GAAA,CAAA,CAAA,CAAA,EAA+C,sBAC5C,aACP,CAAC,CAAA,CAKYH,CAAAA,CAGTjB,EAKSkB,CAAAA,CAGTjB,EAAAA,CAAAA","file":"chunk-KAOGFTIB.mjs","sourcesContent":["import type { ApiMeta } from \"@/apis/types\";\n\n/**\n * API metadata for WSDOT Travel Times API\n */\nexport const wsdotTravelTimesApiMeta: ApiMeta = {\n name: \"wsdot-travel-times\",\n baseUrl:\n \"https://www.wsdot.wa.gov/traffic/api/traveltimes/traveltimesrest.svc\",\n};\n","import type { EndpointMeta } from \"@/apis/types\";\nimport {\n createFetchAndHook,\n type FetchFactory,\n type HookFactory,\n} from \"@/shared/factories\";\nimport { wsdotTravelTimesApiMeta } from \"../apiMeta\";\nimport {\n type TravelTimesInput,\n travelTimesInputSchema,\n} from \"./shared/travelTimeRoutes.input\";\nimport {\n type TravelTimeRoute,\n travelTimeRouteSchema,\n} from \"./shared/travelTimeRoutes.output\";\n\n/**\n * Metadata for the fetchTravelTimes endpoint\n */\nexport const travelTimesMeta = {\n functionName: \"fetchTravelTimes\",\n endpoint: \"/getTravelTimesAsJson\",\n inputSchema: travelTimesInputSchema,\n outputSchema: travelTimeRouteSchema.array(),\n sampleParams: {},\n endpointDescription: \"List travel time data for all available routes.\",\n} satisfies EndpointMeta<TravelTimesInput, TravelTimeRoute[]>;\n\nconst { fetch, useHook } = createFetchAndHook<\n TravelTimesInput,\n TravelTimeRoute[]\n>({\n api: wsdotTravelTimesApiMeta,\n endpoint: travelTimesMeta,\n getCacheStrategy: () =>\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n require(\"./shared/travelTimeRoutes.endpoints\").travelTimeRoutesGroup\n .cacheStrategy,\n});\n\n/**\n * Fetch function for retrieving travel time data for all available routes\n */\nexport const fetchTravelTimes: FetchFactory<\n TravelTimesInput,\n TravelTimeRoute[]\n> = fetch;\n\n/**\n * React Query hook for retrieving travel time data for all available routes\n */\nexport const useTravelTimes: HookFactory<TravelTimesInput, TravelTimeRoute[]> =\n useHook;\n","import type { EndpointGroupMeta } from \"@/apis/types\";\nimport { travelTimeByIdMeta } from \"../travelTimeById\";\nimport { travelTimesMeta } from \"../travelTimes\";\n\n/**\n * Endpoint group metadata for travel time routes endpoints\n */\nexport const travelTimeRoutesGroup: EndpointGroupMeta = {\n name: \"travel-time-routes\",\n cacheStrategy: \"STATIC\",\n documentation: {\n summary:\n \"Current and average travel times for major Washington State highway routes.\",\n description:\n \"Travel time data for routes in Seattle, Tacoma, and Snoqualmie Pass areas, including distance, start/end points, and comparison of current vs. average times.\",\n useCases: [\n \"Plan travel routes and estimate arrival times.\",\n \"Compare current conditions against historical averages to identify delays.\",\n \"Optimize departure times based on real-time traffic conditions.\",\n ],\n updateFrequency: \"5m\",\n },\n endpoints: [travelTimesMeta, travelTimeByIdMeta],\n};\n","import type { EndpointMeta } from \"@/apis/types\";\nimport {\n createFetchAndHook,\n type FetchFactory,\n type HookFactory,\n} from \"@/shared/factories\";\nimport { wsdotTravelTimesApiMeta } from \"../apiMeta\";\nimport {\n type TravelTimeByIdInput,\n travelTimeByIdInputSchema,\n} from \"./shared/travelTimeRoutes.input\";\nimport {\n type TravelTimeRoute,\n travelTimeRouteSchema,\n} from \"./shared/travelTimeRoutes.output\";\n\n/**\n * Metadata for the fetchTravelTimeById endpoint\n */\nexport const travelTimeByIdMeta = {\n functionName: \"fetchTravelTimeById\",\n endpoint: \"/getTravelTimeAsJson?TravelTimeID={TravelTimeID}\",\n inputSchema: travelTimeByIdInputSchema,\n outputSchema: travelTimeRouteSchema,\n sampleParams: { TravelTimeID: 1 },\n endpointDescription: \"Get travel time data for a specific route by ID.\",\n} satisfies EndpointMeta<TravelTimeByIdInput, TravelTimeRoute>;\n\n/**\n * Fetch function for retrieving travel time data for a specific route by ID\n */\nconst { fetch, useHook } = createFetchAndHook<\n TravelTimeByIdInput,\n TravelTimeRoute\n>({\n api: wsdotTravelTimesApiMeta,\n endpoint: travelTimeByIdMeta,\n getCacheStrategy: () =>\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n require(\"./shared/travelTimeRoutes.endpoints\").travelTimeRoutesGroup\n .cacheStrategy,\n});\n\n/**\n * Fetch function for retrieving travel time data for a specific route by ID\n */\nexport const fetchTravelTimeById: FetchFactory<\n TravelTimeByIdInput,\n TravelTimeRoute\n> = fetch;\n\n/**\n * React Query hook for retrieving travel time data for a specific route by ID\n */\nexport const useTravelTimeById: HookFactory<\n TravelTimeByIdInput,\n TravelTimeRoute\n> = useHook;\n"]}