{"version":3,"sources":["../src/apis/wsdot-border-crossings/apiMeta.ts","../src/apis/wsdot-border-crossings/borderCrossingData/shared/borderCrossingData.endpoints.ts","../src/apis/wsdot-border-crossings/borderCrossingData/borderCrossings.ts"],"names":["wsdotBorderCrossingsApiMeta","init_apiMeta","__esmMin","borderCrossingData_endpoints_exports","__export","borderCrossingDataGroup","init_borderCrossingData_endpoints","init_borderCrossings","borderCrossingsMeta","fetch","useHook","fetchBorderCrossings","useBorderCrossings","init_factories","init_borderCrossingData_input","init_borderCrossingData_output","borderCrossingsInputSchema","borderCrossingSchema","createFetchAndHook","g"],"mappings":"qKAAA,IAKaA,CAAAA,CALbC,EAAAC,GAAAA,CAAA,IAAA,CAKaF,EAAuC,CAClD,IAAA,CAAM,wBAAA,CACN,OAAA,CACE,0EACJ,EAAA,CAAA,ECTA,IAAAG,CAAAA,CAAA,EAAA,CAAAC,EAAAD,CAAAA,CAAA,CAAA,uBAAA,CAAA,IAAAE,IAAA,IAMaA,CAAAA,CANbC,CAAAA,CAAAJ,GAAAA,CAAA,IAAA,CACAK,CAAAA,EAAAA,CAKaF,EAA6C,CACxD,IAAA,CAAM,uBACN,aAAA,CAAe,UAAA,CACf,cAAe,CACb,OAAA,CACE,2FAAA,CACF,WAAA,CACE,gHAAA,CACF,QAAA,CAAU,CACR,4DAAA,CACA,qDAAA,CACA,uEACF,CAAA,CACA,eAAA,CAAiB,IACnB,CAAA,CACA,SAAA,CAAW,CAACG,CAAmB,CACjC,EAAA,CAAA,MCHaA,CAAAA,CAULC,CAAAA,CAAOC,EAeFC,CAAAA,CAQAC,CAAAA,CApDbL,EAAAL,GAAAA,CAAA,IAAA,CACAW,CAAAA,EAAAA,CAKAZ,CAAAA,EAAAA,CACAa,GAAAA,EAAAA,CAIAC,GAAAA,EAAAA,CAQaP,EAAsB,CACjC,YAAA,CAAc,uBACd,QAAA,CAAU,2BAAA,CACV,YAAaQ,GAAAA,CACb,YAAA,CAAcC,CAAAA,CAAqB,KAAA,EAAM,CACzC,YAAA,CAAc,EAAC,CACf,mBAAA,CACE,0EACJ,CAAA,CAEM,CAAE,MAAAR,CAAAA,CAAO,OAAA,CAAAC,CAAAA,CAAAA,CAAYQ,GAAAA,CAGzB,CACA,GAAA,CAAKlB,EACL,QAAA,CAAUQ,CAAAA,CACV,gBAAA,CAAkB,IAEhB,CAAA,CAAA,EAAA,CAAAW,GAAA,CAAA,CAAA,CAAA,EAAiD,uBAAA,CAC9C,aACP,CAAC,CAAA,CAKYR,CAAAA,CAGTF,CAAAA,CAKSG,CAAAA,CAGTF,EAAAA,CAAAA","file":"chunk-XV3YC5RR.mjs","sourcesContent":["import type { ApiMeta } from \"@/apis/types\";\n\n/**\n * API metadata for WSDOT Border Crossings API\n */\nexport const wsdotBorderCrossingsApiMeta: ApiMeta = {\n  name: \"wsdot-border-crossings\",\n  baseUrl:\n    \"https://wsdot.wa.gov/Traffic/api/BorderCrossings/BorderCrossingsREST.svc\",\n};\n","import type { EndpointGroupMeta } from \"@/apis/types\";\nimport { borderCrossingsMeta } from \"../borderCrossings\";\n\n/**\n * Endpoint group metadata for border crossing data endpoints\n */\nexport const borderCrossingDataGroup: EndpointGroupMeta = {\n  name: \"border-crossing-data\",\n  cacheStrategy: \"FREQUENT\",\n  documentation: {\n    summary:\n      \"Current wait times for Washington border crossings into Canada by crossing and lane type.\",\n    description:\n      \"Snapshot wait-time data for I-5, SR-543, SR-539, and SR-9 crossings, covering general, Nexus, and truck lanes.\",\n    useCases: [\n      \"Plan trips into Canada based on current border wait times.\",\n      \"Compare wait times across crossings and lane types.\",\n      \"Show live wait-time information in traveler or operations dashboards.\",\n    ],\n    updateFrequency: \"1m\",\n  },\n  endpoints: [borderCrossingsMeta],\n};\n","import type { EndpointMeta } from \"@/apis/types\";\nimport {\n  createFetchAndHook,\n  type FetchFactory,\n  type HookFactory,\n} from \"@/shared/factories\";\nimport { wsdotBorderCrossingsApiMeta } from \"../apiMeta\";\nimport {\n  type BorderCrossingsInput,\n  borderCrossingsInputSchema,\n} from \"./shared/borderCrossingData.input\";\nimport {\n  type BorderCrossing,\n  borderCrossingSchema,\n} from \"./shared/borderCrossingData.output\";\n\n/**\n * Metadata for the fetchBorderCrossings endpoint\n */\nexport const borderCrossingsMeta = {\n  functionName: \"fetchBorderCrossings\",\n  endpoint: \"/GetBorderCrossingsAsJson\",\n  inputSchema: borderCrossingsInputSchema,\n  outputSchema: borderCrossingSchema.array(),\n  sampleParams: {},\n  endpointDescription:\n    \"List current wait times for all Washington border crossings into Canada.\",\n} satisfies EndpointMeta<BorderCrossingsInput, BorderCrossing[]>;\n\nconst { fetch, useHook } = createFetchAndHook<\n  BorderCrossingsInput,\n  BorderCrossing[]\n>({\n  api: wsdotBorderCrossingsApiMeta,\n  endpoint: borderCrossingsMeta,\n  getCacheStrategy: () =>\n    // eslint-disable-next-line @typescript-eslint/no-var-requires\n    require(\"./shared/borderCrossingData.endpoints\").borderCrossingDataGroup\n      .cacheStrategy,\n});\n\n/**\n * Fetch function for retrieving current wait times for all Washington border crossings into Canada\n */\nexport const fetchBorderCrossings: FetchFactory<\n  BorderCrossingsInput,\n  BorderCrossing[]\n> = fetch;\n\n/**\n * React Query hook for retrieving current wait times for all Washington border crossings into Canada\n */\nexport const useBorderCrossings: HookFactory<\n  BorderCrossingsInput,\n  BorderCrossing[]\n> = useHook;\n"]}