{"version":3,"file":"index.mjs","names":["createInternalFetchHttpClient"],"sources":["../src/client/fetch-http-client.ts"],"sourcesContent":["import { createFetchHttpClient as createInternalFetchHttpClient } from \"../internal/http/fetch-client.ts\";\nimport type { HttpClient } from \"./types.ts\";\n\n/**\n * Creates the fetch-backed HTTP transport Ocale uses by default.\n *\n * Wrap the returned transport to add tracing, metrics, recording, or other\n * request-level behavior while retaining Ocale's authentication, timeout,\n * upload, response-parsing, and error-classification semantics.\n *\n * @returns Ocale's default fetch-backed HTTP transport.\n * @since 0.3.1\n *\n * @example\n *\n * ```ts\n * import {\n *   createFetchHttpClient,\n *   type HttpClient,\n *   type HttpRequest,\n * } from \"@bedrock-rbx/ocale\";\n * import {\n *   type DeleteExperienceIconParameters,\n *   UniversesClient,\n * } from \"@bedrock-rbx/ocale/universes\";\n *\n * const defaultHttpClient = createFetchHttpClient();\n * let observedRequests: ReadonlyArray<HttpRequest> = [];\n * const tracedHttpClient: HttpClient = {\n *   async request(request, config) {\n *     observedRequests = [...observedRequests, request];\n *     return defaultHttpClient.request(request, config);\n *   },\n * };\n * // A data URL keeps this executable example offline. Production clients\n * // normally omit baseUrl and use Ocale's Roblox Open Cloud default.\n * const commonOptions = { apiKey: \"your-key\", baseUrl: \"data:,#\" };\n * const client = new UniversesClient({\n *   ...commonOptions,\n *   httpClient: tracedHttpClient,\n * });\n * const undecoratedClient = new UniversesClient({\n *   ...commonOptions,\n *   httpClient: defaultHttpClient,\n * });\n * const parameters: DeleteExperienceIconParameters = {\n *   languageCode: \"en\",\n *   universeId: \"42\",\n * };\n * expect(client).toBeInstanceOf(UniversesClient);\n * return Promise.all([\n *   client.icon.delete(parameters),\n *   undecoratedClient.icon.delete(parameters),\n * ]).then(([result, undecoratedResult]) => {\n *   expect(observedRequests).toStrictEqual([{\n *     method: \"DELETE\",\n *     url: \"/legacy-game-internationalization/v1/game-icon/games/42/language-codes/en\",\n *   }]);\n *   expect(result).toStrictEqual({ data: undefined, success: true });\n *   expect(result).toStrictEqual(undecoratedResult);\n * });\n * ```\n */\nexport const createFetchHttpClient: () => HttpClient = createInternalFetchHttpClient;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA+DA,MAAa,wBAA0CA"}