@opencode-ai/cli-darwin-arm64 0.0.0-beta-202606050000

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (137) hide show
  1. package/bin/chunk-01tb5qes.js.map +131 -0
  2. package/bin/chunk-06d8aa69.js.map +10 -0
  3. package/bin/chunk-07w2xsfy.js.map +50 -0
  4. package/bin/chunk-0azwkk9z.js.map +12 -0
  5. package/bin/chunk-0d9ja06r.js.map +9 -0
  6. package/bin/chunk-0qebdpsf.js.map +167 -0
  7. package/bin/chunk-17j53wgt.js.map +11 -0
  8. package/bin/chunk-1jb1dn9p.js.map +10 -0
  9. package/bin/chunk-1paeax4j.js.map +56 -0
  10. package/bin/chunk-1wb39pye.js.map +9 -0
  11. package/bin/chunk-2wqpg9fb.js.map +10 -0
  12. package/bin/chunk-32ewzcjk.js.map +10 -0
  13. package/bin/chunk-3jqjf0hd.js.map +10 -0
  14. package/bin/chunk-3n6vddyq.js.map +73 -0
  15. package/bin/chunk-3r74gwy2.js.map +13 -0
  16. package/bin/chunk-3zmvhepw.js.map +10 -0
  17. package/bin/chunk-4980h0t7.js.map +37 -0
  18. package/bin/chunk-4de8gawx.js.map +10 -0
  19. package/bin/chunk-4q5k6a0e.js.map +10 -0
  20. package/bin/chunk-6ttpn29p.js.map +10 -0
  21. package/bin/chunk-7fvpf4bs.js.map +10 -0
  22. package/bin/chunk-7vb6kdat.js.map +10 -0
  23. package/bin/chunk-84amh6xf.js.map +11 -0
  24. package/bin/chunk-8akfq1ty.js.map +19 -0
  25. package/bin/chunk-8dnkfkds.js.map +10 -0
  26. package/bin/chunk-8rd9r1gb.js.map +11 -0
  27. package/bin/chunk-8x80qvzn.js.map +10 -0
  28. package/bin/chunk-943th5qs.js.map +10 -0
  29. package/bin/chunk-94yf089p.js.map +10 -0
  30. package/bin/chunk-98cxndhz.js.map +9 -0
  31. package/bin/chunk-9f8tmby0.js.map +9 -0
  32. package/bin/chunk-9fbstsnw.js.map +9 -0
  33. package/bin/chunk-9hq8aywf.js.map +10 -0
  34. package/bin/chunk-9vf55fj3.js.map +10 -0
  35. package/bin/chunk-9w9rk9en.js.map +20 -0
  36. package/bin/chunk-9y4hgfns.js.map +10 -0
  37. package/bin/chunk-aag5p1fp.js.map +10 -0
  38. package/bin/chunk-bt0r89ee.js.map +9 -0
  39. package/bin/chunk-c2gsyspz.js.map +10 -0
  40. package/bin/chunk-c8hr0q5n.js.map +10 -0
  41. package/bin/chunk-cab6ccj0.js.map +10 -0
  42. package/bin/chunk-ck4nkjtx.js.map +193 -0
  43. package/bin/chunk-cvm4kr56.js.map +23 -0
  44. package/bin/chunk-cyb9bpgm.js.map +10 -0
  45. package/bin/chunk-d1p8awq6.js.map +10 -0
  46. package/bin/chunk-d6nz1m6v.js.map +10 -0
  47. package/bin/chunk-d7v38w4j.js.map +27 -0
  48. package/bin/chunk-d9g5798m.js.map +81 -0
  49. package/bin/chunk-dcn0azxw.js.map +10 -0
  50. package/bin/chunk-dk4qekzk.js.map +10 -0
  51. package/bin/chunk-dk9tgwkh.js.map +9 -0
  52. package/bin/chunk-dzzhxh1c.js.map +10 -0
  53. package/bin/chunk-efsmps94.js.map +9 -0
  54. package/bin/chunk-fdw7znt6.js.map +11 -0
  55. package/bin/chunk-fs6t8jdg.js.map +10 -0
  56. package/bin/chunk-fzcqzwx5.js.map +10 -0
  57. package/bin/chunk-g4fcmhkj.js.map +11 -0
  58. package/bin/chunk-g4ff66n8.js.map +10 -0
  59. package/bin/chunk-g8mpn6ke.js.map +11 -0
  60. package/bin/chunk-gahs293a.js.map +10 -0
  61. package/bin/chunk-gh9dcqbv.js.map +10 -0
  62. package/bin/chunk-gv6nagng.js.map +10 -0
  63. package/bin/chunk-gyavdmtb.js.map +10 -0
  64. package/bin/chunk-h413ry19.js.map +10 -0
  65. package/bin/chunk-hav16yge.js.map +10 -0
  66. package/bin/chunk-hp5nnq6f.js.map +11 -0
  67. package/bin/chunk-hrcbafh3.js.map +9 -0
  68. package/bin/chunk-hxfsfpek.js.map +10 -0
  69. package/bin/chunk-jcqp2wmf.js.map +10 -0
  70. package/bin/chunk-jt9t8203.js.map +9 -0
  71. package/bin/chunk-k0980eb5.js.map +10 -0
  72. package/bin/chunk-kghptcgb.js.map +9 -0
  73. package/bin/chunk-kjyd3xxc.js.map +113 -0
  74. package/bin/chunk-kkcy6sfm.js.map +577 -0
  75. package/bin/chunk-kkvk5eez.js.map +10 -0
  76. package/bin/chunk-kv0b3sh5.js.map +10 -0
  77. package/bin/chunk-m9md5mth.js.map +10 -0
  78. package/bin/chunk-mf0qqhvb.js.map +10 -0
  79. package/bin/chunk-mfr0xsxw.js.map +9 -0
  80. package/bin/chunk-mkze6twx.js.map +10 -0
  81. package/bin/chunk-mzjs3qj3.js.map +10 -0
  82. package/bin/chunk-n10mj2m3.js.map +17 -0
  83. package/bin/chunk-n2fbt143.js.map +9 -0
  84. package/bin/chunk-n6a0rctn.js.map +9 -0
  85. package/bin/chunk-njn9a3jp.js.map +13 -0
  86. package/bin/chunk-nkhzpsnk.js.map +13 -0
  87. package/bin/chunk-ny5cyeha.js.map +10 -0
  88. package/bin/chunk-p3nkd9t2.js.map +10 -0
  89. package/bin/chunk-p3pr1t3k.js.map +10 -0
  90. package/bin/chunk-p7j7e7hb.js.map +10 -0
  91. package/bin/chunk-p89bk96c.js.map +10 -0
  92. package/bin/chunk-pjbsd0sw.js.map +10 -0
  93. package/bin/chunk-pnkd37ss.js.map +20 -0
  94. package/bin/chunk-q6nf6fka.js.map +10 -0
  95. package/bin/chunk-qbpebjh2.js.map +10 -0
  96. package/bin/chunk-qgpzv4wt.js.map +15 -0
  97. package/bin/chunk-qq4f9z8v.js.map +10 -0
  98. package/bin/chunk-r55kafff.js.map +9 -0
  99. package/bin/chunk-rrwp4x01.js.map +10 -0
  100. package/bin/chunk-rt02k446.js.map +11 -0
  101. package/bin/chunk-s39nwv01.js.map +9 -0
  102. package/bin/chunk-s983v0dp.js.map +10 -0
  103. package/bin/chunk-san15sca.js.map +10 -0
  104. package/bin/chunk-sfk73pp2.js.map +10 -0
  105. package/bin/chunk-sjd3wbjd.js.map +10 -0
  106. package/bin/chunk-sv47gsr1.js.map +388 -0
  107. package/bin/chunk-swbdmja3.js.map +10 -0
  108. package/bin/chunk-tc8tvjey.js.map +33 -0
  109. package/bin/chunk-tcqtz83b.js.map +10 -0
  110. package/bin/chunk-tgxxchfy.js.map +28 -0
  111. package/bin/chunk-tvxakxv2.js.map +10 -0
  112. package/bin/chunk-va2h4xya.js.map +37 -0
  113. package/bin/chunk-vezq3hc4.js.map +9 -0
  114. package/bin/chunk-vmbpvmpg.js.map +10 -0
  115. package/bin/chunk-vs30er58.js.map +10 -0
  116. package/bin/chunk-w7p62pb6.js.map +17 -0
  117. package/bin/chunk-wr4x72qd.js.map +13 -0
  118. package/bin/chunk-x3ywttp7.js.map +10 -0
  119. package/bin/chunk-x988wmrk.js.map +10 -0
  120. package/bin/chunk-x9zjg1f7.js.map +20 -0
  121. package/bin/chunk-xaqrhtz6.js.map +10 -0
  122. package/bin/chunk-xd2mrkwy.js.map +10 -0
  123. package/bin/chunk-xfh2377b.js.map +10 -0
  124. package/bin/chunk-xs0ras4j.js.map +51 -0
  125. package/bin/chunk-xt7ap9fb.js.map +10 -0
  126. package/bin/chunk-xvkccqdg.js.map +13 -0
  127. package/bin/chunk-xya5qk3h.js.map +16 -0
  128. package/bin/chunk-yg7w4jgd.js.map +10 -0
  129. package/bin/chunk-yhpv46tb.js.map +20 -0
  130. package/bin/chunk-ymy66kr8.js.map +15 -0
  131. package/bin/chunk-yx4z6xsb.js.map +11 -0
  132. package/bin/chunk-yymwxqpy.js.map +10 -0
  133. package/bin/chunk-z70c75xe.js.map +11 -0
  134. package/bin/chunk-zkqyr3hc.js.map +10 -0
  135. package/bin/index.js.map +12 -0
  136. package/bin/lildax +0 -0
  137. package/package.json +15 -0
@@ -0,0 +1,13 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../node_modules/.bun/@vercel+oidc@3.2.0/node_modules/@vercel/oidc/dist/get-context.js", "../../node_modules/.bun/@vercel+oidc@3.2.0/node_modules/@vercel/oidc/dist/get-vercel-oidc-token.js", "../../node_modules/.bun/@vercel+oidc@3.2.0/node_modules/@vercel/oidc/dist/index.js", "../../node_modules/.bun/@ai-sdk+gateway@3.0.104+d6123d32214422cb/node_modules/@ai-sdk/gateway/dist/index.mjs"],
4
+ "sourcesContent": [
5
+ "\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar get_context_exports = {};\n__export(get_context_exports, {\n SYMBOL_FOR_REQ_CONTEXT: () => SYMBOL_FOR_REQ_CONTEXT,\n getContext: () => getContext\n});\nmodule.exports = __toCommonJS(get_context_exports);\nconst SYMBOL_FOR_REQ_CONTEXT = Symbol.for(\"@vercel/request-context\");\nfunction getContext() {\n const fromSymbol = globalThis;\n return fromSymbol[SYMBOL_FOR_REQ_CONTEXT]?.get?.() ?? {};\n}\n// Annotate the CommonJS export names for ESM import in node:\n0 && (module.exports = {\n SYMBOL_FOR_REQ_CONTEXT,\n getContext\n});\n",
6
+ "\"use strict\";\nvar __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n // If the importer is in node compatibility mode or this is not an ESM\n // file that has been converted to a CommonJS file using a Babel-\n // compatible transform (i.e. \"__esModule\" has not been set), then set\n // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", { value: mod, enumerable: true }) : target,\n mod\n));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar get_vercel_oidc_token_exports = {};\n__export(get_vercel_oidc_token_exports, {\n getVercelOidcToken: () => getVercelOidcToken,\n getVercelOidcTokenSync: () => getVercelOidcTokenSync\n});\nmodule.exports = __toCommonJS(get_vercel_oidc_token_exports);\nvar import_get_context = require(\"./get-context\");\nvar import_token_error = require(\"./token-error\");\nasync function getVercelOidcToken(options) {\n let token = \"\";\n let err;\n try {\n token = getVercelOidcTokenSync();\n } catch (error) {\n err = error;\n }\n try {\n const [{ getTokenPayload, isExpired }, { refreshToken }] = await Promise.all([\n await import(\"./token-util.js\"),\n await import(\"./token.js\")\n ]);\n if (!token || isExpired(getTokenPayload(token), options?.expirationBufferMs)) {\n await refreshToken(options);\n token = getVercelOidcTokenSync();\n }\n } catch (error) {\n let message = err instanceof Error ? err.message : \"\";\n if (error instanceof Error) {\n message = `${message}\n${error.message}`;\n }\n if (message) {\n throw new import_token_error.VercelOidcTokenError(message);\n }\n throw error;\n }\n return token;\n}\nfunction getVercelOidcTokenSync() {\n const token = (0, import_get_context.getContext)().headers?.[\"x-vercel-oidc-token\"] ?? process.env.VERCEL_OIDC_TOKEN;\n if (!token) {\n throw new Error(\n `The 'x-vercel-oidc-token' header is missing from the request. Do you have the OIDC option enabled in the Vercel project settings?`\n );\n }\n return token;\n}\n// Annotate the CommonJS export names for ESM import in node:\n0 && (module.exports = {\n getVercelOidcToken,\n getVercelOidcTokenSync\n});\n",
7
+ "\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar src_exports = {};\n__export(src_exports, {\n AccessTokenMissingError: () => import_auth_errors.AccessTokenMissingError,\n RefreshAccessTokenFailedError: () => import_auth_errors.RefreshAccessTokenFailedError,\n getContext: () => import_get_context.getContext,\n getVercelOidcToken: () => import_get_vercel_oidc_token.getVercelOidcToken,\n getVercelOidcTokenSync: () => import_get_vercel_oidc_token.getVercelOidcTokenSync,\n getVercelToken: () => import_token_util.getVercelToken\n});\nmodule.exports = __toCommonJS(src_exports);\nvar import_get_vercel_oidc_token = require(\"./get-vercel-oidc-token\");\nvar import_get_context = require(\"./get-context\");\nvar import_auth_errors = require(\"./auth-errors\");\nvar import_token_util = require(\"./token-util\");\n// Annotate the CommonJS export names for ESM import in node:\n0 && (module.exports = {\n AccessTokenMissingError,\n RefreshAccessTokenFailedError,\n getContext,\n getVercelOidcToken,\n getVercelOidcTokenSync,\n getVercelToken\n});\n",
8
+ "// src/gateway-provider.ts\nimport {\n loadOptionalSetting,\n withoutTrailingSlash\n} from \"@ai-sdk/provider-utils\";\n\n// src/errors/as-gateway-error.ts\nimport { APICallError } from \"@ai-sdk/provider\";\n\n// src/errors/create-gateway-error.ts\nimport { z as z2 } from \"zod/v4\";\n\n// src/errors/gateway-error.ts\nvar marker = \"vercel.ai.gateway.error\";\nvar symbol = Symbol.for(marker);\nvar _a, _b;\nvar GatewayError = class _GatewayError extends (_b = Error, _a = symbol, _b) {\n constructor({\n message,\n statusCode = 500,\n cause,\n generationId\n }) {\n super(generationId ? `${message} [${generationId}]` : message);\n this[_a] = true;\n this.statusCode = statusCode;\n this.cause = cause;\n this.generationId = generationId;\n }\n /**\n * Checks if the given error is a Gateway Error.\n * @param {unknown} error - The error to check.\n * @returns {boolean} True if the error is a Gateway Error, false otherwise.\n */\n static isInstance(error) {\n return _GatewayError.hasMarker(error);\n }\n static hasMarker(error) {\n return typeof error === \"object\" && error !== null && symbol in error && error[symbol] === true;\n }\n};\n\n// src/errors/gateway-authentication-error.ts\nvar name = \"GatewayAuthenticationError\";\nvar marker2 = `vercel.ai.gateway.error.${name}`;\nvar symbol2 = Symbol.for(marker2);\nvar _a2, _b2;\nvar GatewayAuthenticationError = class _GatewayAuthenticationError extends (_b2 = GatewayError, _a2 = symbol2, _b2) {\n constructor({\n message = \"Authentication failed\",\n statusCode = 401,\n cause,\n generationId\n } = {}) {\n super({ message, statusCode, cause, generationId });\n this[_a2] = true;\n // used in isInstance\n this.name = name;\n this.type = \"authentication_error\";\n }\n static isInstance(error) {\n return GatewayError.hasMarker(error) && symbol2 in error;\n }\n /**\n * Creates a contextual error message when authentication fails\n */\n static createContextualError({\n apiKeyProvided,\n oidcTokenProvided,\n message = \"Authentication failed\",\n statusCode = 401,\n cause,\n generationId\n }) {\n let contextualMessage;\n if (apiKeyProvided) {\n contextualMessage = `AI Gateway authentication failed: Invalid API key.\n\nCreate a new API key: https://vercel.com/d?to=%2F%5Bteam%5D%2F%7E%2Fai%2Fapi-keys\n\nProvide via 'apiKey' option or 'AI_GATEWAY_API_KEY' environment variable.`;\n } else if (oidcTokenProvided) {\n contextualMessage = `AI Gateway authentication failed: Invalid OIDC token.\n\nRun 'npx vercel link' to link your project, then 'vc env pull' to fetch the token.\n\nAlternatively, use an API key: https://vercel.com/d?to=%2F%5Bteam%5D%2F%7E%2Fai%2Fapi-keys`;\n } else {\n contextualMessage = `AI Gateway authentication failed: No authentication provided.\n\nOption 1 - API key:\nCreate an API key: https://vercel.com/d?to=%2F%5Bteam%5D%2F%7E%2Fai%2Fapi-keys\nProvide via 'apiKey' option or 'AI_GATEWAY_API_KEY' environment variable.\n\nOption 2 - OIDC token:\nRun 'npx vercel link' to link your project, then 'vc env pull' to fetch the token.`;\n }\n return new _GatewayAuthenticationError({\n message: contextualMessage,\n statusCode,\n cause,\n generationId\n });\n }\n};\n\n// src/errors/gateway-invalid-request-error.ts\nvar name2 = \"GatewayInvalidRequestError\";\nvar marker3 = `vercel.ai.gateway.error.${name2}`;\nvar symbol3 = Symbol.for(marker3);\nvar _a3, _b3;\nvar GatewayInvalidRequestError = class extends (_b3 = GatewayError, _a3 = symbol3, _b3) {\n constructor({\n message = \"Invalid request\",\n statusCode = 400,\n cause,\n generationId\n } = {}) {\n super({ message, statusCode, cause, generationId });\n this[_a3] = true;\n // used in isInstance\n this.name = name2;\n this.type = \"invalid_request_error\";\n }\n static isInstance(error) {\n return GatewayError.hasMarker(error) && symbol3 in error;\n }\n};\n\n// src/errors/gateway-rate-limit-error.ts\nvar name3 = \"GatewayRateLimitError\";\nvar marker4 = `vercel.ai.gateway.error.${name3}`;\nvar symbol4 = Symbol.for(marker4);\nvar _a4, _b4;\nvar GatewayRateLimitError = class extends (_b4 = GatewayError, _a4 = symbol4, _b4) {\n constructor({\n message = \"Rate limit exceeded\",\n statusCode = 429,\n cause,\n generationId\n } = {}) {\n super({ message, statusCode, cause, generationId });\n this[_a4] = true;\n // used in isInstance\n this.name = name3;\n this.type = \"rate_limit_exceeded\";\n }\n static isInstance(error) {\n return GatewayError.hasMarker(error) && symbol4 in error;\n }\n};\n\n// src/errors/gateway-model-not-found-error.ts\nimport { z } from \"zod/v4\";\nimport { lazySchema, zodSchema } from \"@ai-sdk/provider-utils\";\nvar name4 = \"GatewayModelNotFoundError\";\nvar marker5 = `vercel.ai.gateway.error.${name4}`;\nvar symbol5 = Symbol.for(marker5);\nvar modelNotFoundParamSchema = lazySchema(\n () => zodSchema(\n z.object({\n modelId: z.string()\n })\n )\n);\nvar _a5, _b5;\nvar GatewayModelNotFoundError = class extends (_b5 = GatewayError, _a5 = symbol5, _b5) {\n constructor({\n message = \"Model not found\",\n statusCode = 404,\n modelId,\n cause,\n generationId\n } = {}) {\n super({ message, statusCode, cause, generationId });\n this[_a5] = true;\n // used in isInstance\n this.name = name4;\n this.type = \"model_not_found\";\n this.modelId = modelId;\n }\n static isInstance(error) {\n return GatewayError.hasMarker(error) && symbol5 in error;\n }\n};\n\n// src/errors/gateway-internal-server-error.ts\nvar name5 = \"GatewayInternalServerError\";\nvar marker6 = `vercel.ai.gateway.error.${name5}`;\nvar symbol6 = Symbol.for(marker6);\nvar _a6, _b6;\nvar GatewayInternalServerError = class extends (_b6 = GatewayError, _a6 = symbol6, _b6) {\n constructor({\n message = \"Internal server error\",\n statusCode = 500,\n cause,\n generationId\n } = {}) {\n super({ message, statusCode, cause, generationId });\n this[_a6] = true;\n // used in isInstance\n this.name = name5;\n this.type = \"internal_server_error\";\n }\n static isInstance(error) {\n return GatewayError.hasMarker(error) && symbol6 in error;\n }\n};\n\n// src/errors/gateway-response-error.ts\nvar name6 = \"GatewayResponseError\";\nvar marker7 = `vercel.ai.gateway.error.${name6}`;\nvar symbol7 = Symbol.for(marker7);\nvar _a7, _b7;\nvar GatewayResponseError = class extends (_b7 = GatewayError, _a7 = symbol7, _b7) {\n constructor({\n message = \"Invalid response from Gateway\",\n statusCode = 502,\n response,\n validationError,\n cause,\n generationId\n } = {}) {\n super({ message, statusCode, cause, generationId });\n this[_a7] = true;\n // used in isInstance\n this.name = name6;\n this.type = \"response_error\";\n this.response = response;\n this.validationError = validationError;\n }\n static isInstance(error) {\n return GatewayError.hasMarker(error) && symbol7 in error;\n }\n};\n\n// src/errors/create-gateway-error.ts\nimport {\n lazySchema as lazySchema2,\n safeValidateTypes,\n zodSchema as zodSchema2\n} from \"@ai-sdk/provider-utils\";\nasync function createGatewayErrorFromResponse({\n response,\n statusCode,\n defaultMessage = \"Gateway request failed\",\n cause,\n authMethod\n}) {\n var _a9;\n const parseResult = await safeValidateTypes({\n value: response,\n schema: gatewayErrorResponseSchema\n });\n if (!parseResult.success) {\n const rawGenerationId = typeof response === \"object\" && response !== null && \"generationId\" in response ? response.generationId : void 0;\n return new GatewayResponseError({\n message: `Invalid error response format: ${defaultMessage}`,\n statusCode,\n response,\n validationError: parseResult.error,\n cause,\n generationId: rawGenerationId\n });\n }\n const validatedResponse = parseResult.value;\n const errorType = validatedResponse.error.type;\n const message = validatedResponse.error.message;\n const generationId = (_a9 = validatedResponse.generationId) != null ? _a9 : void 0;\n switch (errorType) {\n case \"authentication_error\":\n return GatewayAuthenticationError.createContextualError({\n apiKeyProvided: authMethod === \"api-key\",\n oidcTokenProvided: authMethod === \"oidc\",\n statusCode,\n cause,\n generationId\n });\n case \"invalid_request_error\":\n return new GatewayInvalidRequestError({\n message,\n statusCode,\n cause,\n generationId\n });\n case \"rate_limit_exceeded\":\n return new GatewayRateLimitError({\n message,\n statusCode,\n cause,\n generationId\n });\n case \"model_not_found\": {\n const modelResult = await safeValidateTypes({\n value: validatedResponse.error.param,\n schema: modelNotFoundParamSchema\n });\n return new GatewayModelNotFoundError({\n message,\n statusCode,\n modelId: modelResult.success ? modelResult.value.modelId : void 0,\n cause,\n generationId\n });\n }\n case \"internal_server_error\":\n return new GatewayInternalServerError({\n message,\n statusCode,\n cause,\n generationId\n });\n default:\n return new GatewayInternalServerError({\n message,\n statusCode,\n cause,\n generationId\n });\n }\n}\nvar gatewayErrorResponseSchema = lazySchema2(\n () => zodSchema2(\n z2.object({\n error: z2.object({\n message: z2.string(),\n type: z2.string().nullish(),\n param: z2.unknown().nullish(),\n code: z2.union([z2.string(), z2.number()]).nullish()\n }),\n generationId: z2.string().nullish()\n })\n )\n);\n\n// src/errors/gateway-timeout-error.ts\nvar name7 = \"GatewayTimeoutError\";\nvar marker8 = `vercel.ai.gateway.error.${name7}`;\nvar symbol8 = Symbol.for(marker8);\nvar _a8, _b8;\nvar GatewayTimeoutError = class _GatewayTimeoutError extends (_b8 = GatewayError, _a8 = symbol8, _b8) {\n constructor({\n message = \"Request timed out\",\n statusCode = 408,\n cause,\n generationId\n } = {}) {\n super({ message, statusCode, cause, generationId });\n this[_a8] = true;\n // used in isInstance\n this.name = name7;\n this.type = \"timeout_error\";\n }\n static isInstance(error) {\n return GatewayError.hasMarker(error) && symbol8 in error;\n }\n /**\n * Creates a helpful timeout error message with troubleshooting guidance\n */\n static createTimeoutError({\n originalMessage,\n statusCode = 408,\n cause,\n generationId\n }) {\n const message = `Gateway request timed out: ${originalMessage}\n\n This is a client-side timeout. To resolve this, increase your timeout configuration: https://vercel.com/docs/ai-gateway/capabilities/video-generation#extending-timeouts-for-node.js`;\n return new _GatewayTimeoutError({\n message,\n statusCode,\n cause,\n generationId\n });\n }\n};\n\n// src/errors/as-gateway-error.ts\nfunction isTimeoutError(error) {\n if (!(error instanceof Error)) {\n return false;\n }\n const errorCode = error.code;\n if (typeof errorCode === \"string\") {\n const undiciTimeoutCodes = [\n \"UND_ERR_HEADERS_TIMEOUT\",\n \"UND_ERR_BODY_TIMEOUT\",\n \"UND_ERR_CONNECT_TIMEOUT\"\n ];\n return undiciTimeoutCodes.includes(errorCode);\n }\n return false;\n}\nasync function asGatewayError(error, authMethod) {\n var _a9;\n if (GatewayError.isInstance(error)) {\n return error;\n }\n if (isTimeoutError(error)) {\n return GatewayTimeoutError.createTimeoutError({\n originalMessage: error instanceof Error ? error.message : \"Unknown error\",\n cause: error\n });\n }\n if (APICallError.isInstance(error)) {\n if (error.cause && isTimeoutError(error.cause)) {\n return GatewayTimeoutError.createTimeoutError({\n originalMessage: error.message,\n cause: error\n });\n }\n return await createGatewayErrorFromResponse({\n response: extractApiCallResponse(error),\n statusCode: (_a9 = error.statusCode) != null ? _a9 : 500,\n defaultMessage: \"Gateway request failed\",\n cause: error,\n authMethod\n });\n }\n return await createGatewayErrorFromResponse({\n response: {},\n statusCode: 500,\n defaultMessage: error instanceof Error ? `Gateway request failed: ${error.message}` : \"Unknown Gateway error\",\n cause: error,\n authMethod\n });\n}\n\n// src/errors/extract-api-call-response.ts\nfunction extractApiCallResponse(error) {\n if (error.data !== void 0) {\n return error.data;\n }\n if (error.responseBody != null) {\n try {\n return JSON.parse(error.responseBody);\n } catch (e) {\n return error.responseBody;\n }\n }\n return {};\n}\n\n// src/errors/parse-auth-method.ts\nimport { z as z3 } from \"zod/v4\";\nimport {\n lazySchema as lazySchema3,\n safeValidateTypes as safeValidateTypes2,\n zodSchema as zodSchema3\n} from \"@ai-sdk/provider-utils\";\nvar GATEWAY_AUTH_METHOD_HEADER = \"ai-gateway-auth-method\";\nasync function parseAuthMethod(headers) {\n const result = await safeValidateTypes2({\n value: headers[GATEWAY_AUTH_METHOD_HEADER],\n schema: gatewayAuthMethodSchema\n });\n return result.success ? result.value : void 0;\n}\nvar gatewayAuthMethodSchema = lazySchema3(\n () => zodSchema3(z3.union([z3.literal(\"api-key\"), z3.literal(\"oidc\")]))\n);\n\n// src/gateway-fetch-metadata.ts\nimport {\n createJsonErrorResponseHandler,\n createJsonResponseHandler,\n getFromApi,\n lazySchema as lazySchema4,\n resolve,\n zodSchema as zodSchema4\n} from \"@ai-sdk/provider-utils\";\nimport { z as z4 } from \"zod/v4\";\n\n// src/gateway-model-entry.ts\nvar KNOWN_MODEL_TYPES = [\n \"embedding\",\n \"image\",\n \"language\",\n \"reranking\",\n \"video\"\n];\n\n// src/gateway-fetch-metadata.ts\nvar GatewayFetchMetadata = class {\n constructor(config) {\n this.config = config;\n }\n async getAvailableModels() {\n try {\n const { value } = await getFromApi({\n url: `${this.config.baseURL}/config`,\n headers: await resolve(this.config.headers()),\n successfulResponseHandler: createJsonResponseHandler(\n gatewayAvailableModelsResponseSchema\n ),\n failedResponseHandler: createJsonErrorResponseHandler({\n errorSchema: z4.any(),\n errorToMessage: (data) => data\n }),\n fetch: this.config.fetch\n });\n return value;\n } catch (error) {\n throw await asGatewayError(error);\n }\n }\n async getCredits() {\n try {\n const baseUrl = new URL(this.config.baseURL);\n const { value } = await getFromApi({\n url: `${baseUrl.origin}/v1/credits`,\n headers: await resolve(this.config.headers()),\n successfulResponseHandler: createJsonResponseHandler(\n gatewayCreditsResponseSchema\n ),\n failedResponseHandler: createJsonErrorResponseHandler({\n errorSchema: z4.any(),\n errorToMessage: (data) => data\n }),\n fetch: this.config.fetch\n });\n return value;\n } catch (error) {\n throw await asGatewayError(error);\n }\n }\n};\nvar gatewayAvailableModelsResponseSchema = lazySchema4(\n () => zodSchema4(\n z4.object({\n models: z4.array(\n z4.object({\n id: z4.string(),\n name: z4.string(),\n description: z4.string().nullish(),\n pricing: z4.object({\n input: z4.string(),\n output: z4.string(),\n input_cache_read: z4.string().nullish(),\n input_cache_write: z4.string().nullish()\n }).transform(\n ({ input, output, input_cache_read, input_cache_write }) => ({\n input,\n output,\n ...input_cache_read ? { cachedInputTokens: input_cache_read } : {},\n ...input_cache_write ? { cacheCreationInputTokens: input_cache_write } : {}\n })\n ).nullish(),\n specification: z4.object({\n specificationVersion: z4.literal(\"v3\"),\n provider: z4.string(),\n modelId: z4.string()\n }),\n modelType: z4.string().nullish()\n })\n ).transform(\n (models) => models.filter(\n (m) => m.modelType == null || KNOWN_MODEL_TYPES.includes(m.modelType)\n )\n )\n })\n )\n);\nvar gatewayCreditsResponseSchema = lazySchema4(\n () => zodSchema4(\n z4.object({\n balance: z4.string(),\n total_used: z4.string()\n }).transform(({ balance, total_used }) => ({\n balance,\n totalUsed: total_used\n }))\n )\n);\n\n// src/gateway-spend-report.ts\nimport {\n createJsonErrorResponseHandler as createJsonErrorResponseHandler2,\n createJsonResponseHandler as createJsonResponseHandler2,\n getFromApi as getFromApi2,\n lazySchema as lazySchema5,\n resolve as resolve2,\n zodSchema as zodSchema5\n} from \"@ai-sdk/provider-utils\";\nimport { z as z5 } from \"zod/v4\";\nvar GatewaySpendReport = class {\n constructor(config) {\n this.config = config;\n }\n async getSpendReport(params) {\n try {\n const baseUrl = new URL(this.config.baseURL);\n const searchParams = new URLSearchParams();\n searchParams.set(\"start_date\", params.startDate);\n searchParams.set(\"end_date\", params.endDate);\n if (params.groupBy) {\n searchParams.set(\"group_by\", params.groupBy);\n }\n if (params.datePart) {\n searchParams.set(\"date_part\", params.datePart);\n }\n if (params.userId) {\n searchParams.set(\"user_id\", params.userId);\n }\n if (params.model) {\n searchParams.set(\"model\", params.model);\n }\n if (params.provider) {\n searchParams.set(\"provider\", params.provider);\n }\n if (params.credentialType) {\n searchParams.set(\"credential_type\", params.credentialType);\n }\n if (params.tags && params.tags.length > 0) {\n searchParams.set(\"tags\", params.tags.join(\",\"));\n }\n const { value } = await getFromApi2({\n url: `${baseUrl.origin}/v1/report?${searchParams.toString()}`,\n headers: await resolve2(this.config.headers()),\n successfulResponseHandler: createJsonResponseHandler2(\n gatewaySpendReportResponseSchema\n ),\n failedResponseHandler: createJsonErrorResponseHandler2({\n errorSchema: z5.any(),\n errorToMessage: (data) => data\n }),\n fetch: this.config.fetch\n });\n return value;\n } catch (error) {\n throw await asGatewayError(error);\n }\n }\n};\nvar gatewaySpendReportResponseSchema = lazySchema5(\n () => zodSchema5(\n z5.object({\n results: z5.array(\n z5.object({\n day: z5.string().optional(),\n hour: z5.string().optional(),\n user: z5.string().optional(),\n model: z5.string().optional(),\n tag: z5.string().optional(),\n provider: z5.string().optional(),\n credential_type: z5.enum([\"byok\", \"system\"]).optional(),\n total_cost: z5.number(),\n market_cost: z5.number().optional(),\n input_tokens: z5.number().optional(),\n output_tokens: z5.number().optional(),\n cached_input_tokens: z5.number().optional(),\n cache_creation_input_tokens: z5.number().optional(),\n reasoning_tokens: z5.number().optional(),\n request_count: z5.number().optional()\n }).transform(\n ({\n credential_type,\n total_cost,\n market_cost,\n input_tokens,\n output_tokens,\n cached_input_tokens,\n cache_creation_input_tokens,\n reasoning_tokens,\n request_count,\n ...rest\n }) => ({\n ...rest,\n ...credential_type !== void 0 ? { credentialType: credential_type } : {},\n totalCost: total_cost,\n ...market_cost !== void 0 ? { marketCost: market_cost } : {},\n ...input_tokens !== void 0 ? { inputTokens: input_tokens } : {},\n ...output_tokens !== void 0 ? { outputTokens: output_tokens } : {},\n ...cached_input_tokens !== void 0 ? { cachedInputTokens: cached_input_tokens } : {},\n ...cache_creation_input_tokens !== void 0 ? { cacheCreationInputTokens: cache_creation_input_tokens } : {},\n ...reasoning_tokens !== void 0 ? { reasoningTokens: reasoning_tokens } : {},\n ...request_count !== void 0 ? { requestCount: request_count } : {}\n })\n )\n )\n })\n )\n);\n\n// src/gateway-generation-info.ts\nimport {\n createJsonErrorResponseHandler as createJsonErrorResponseHandler3,\n createJsonResponseHandler as createJsonResponseHandler3,\n getFromApi as getFromApi3,\n lazySchema as lazySchema6,\n resolve as resolve3,\n zodSchema as zodSchema6\n} from \"@ai-sdk/provider-utils\";\nimport { z as z6 } from \"zod/v4\";\nvar GatewayGenerationInfoFetcher = class {\n constructor(config) {\n this.config = config;\n }\n async getGenerationInfo(params) {\n try {\n const baseUrl = new URL(this.config.baseURL);\n const { value } = await getFromApi3({\n url: `${baseUrl.origin}/v1/generation?id=${encodeURIComponent(params.id)}`,\n headers: await resolve3(this.config.headers()),\n successfulResponseHandler: createJsonResponseHandler3(\n gatewayGenerationInfoResponseSchema\n ),\n failedResponseHandler: createJsonErrorResponseHandler3({\n errorSchema: z6.any(),\n errorToMessage: (data) => data\n }),\n fetch: this.config.fetch\n });\n return value;\n } catch (error) {\n throw await asGatewayError(error);\n }\n }\n};\nvar gatewayGenerationInfoResponseSchema = lazySchema6(\n () => zodSchema6(\n z6.object({\n data: z6.object({\n id: z6.string(),\n total_cost: z6.number(),\n upstream_inference_cost: z6.number(),\n usage: z6.number(),\n created_at: z6.string(),\n model: z6.string(),\n is_byok: z6.boolean(),\n provider_name: z6.string(),\n streamed: z6.boolean(),\n finish_reason: z6.string(),\n latency: z6.number(),\n generation_time: z6.number(),\n native_tokens_prompt: z6.number(),\n native_tokens_completion: z6.number(),\n native_tokens_reasoning: z6.number(),\n native_tokens_cached: z6.number(),\n native_tokens_cache_creation: z6.number(),\n billable_web_search_calls: z6.number()\n }).transform(\n ({\n total_cost,\n upstream_inference_cost,\n created_at,\n is_byok,\n provider_name,\n finish_reason,\n generation_time,\n native_tokens_prompt,\n native_tokens_completion,\n native_tokens_reasoning,\n native_tokens_cached,\n native_tokens_cache_creation,\n billable_web_search_calls,\n ...rest\n }) => ({\n ...rest,\n totalCost: total_cost,\n upstreamInferenceCost: upstream_inference_cost,\n createdAt: created_at,\n isByok: is_byok,\n providerName: provider_name,\n finishReason: finish_reason,\n generationTime: generation_time,\n promptTokens: native_tokens_prompt,\n completionTokens: native_tokens_completion,\n reasoningTokens: native_tokens_reasoning,\n cachedTokens: native_tokens_cached,\n cacheCreationTokens: native_tokens_cache_creation,\n billableWebSearchCalls: billable_web_search_calls\n })\n )\n }).transform(({ data }) => data)\n )\n);\n\n// src/gateway-language-model.ts\nimport {\n combineHeaders,\n createEventSourceResponseHandler,\n createJsonErrorResponseHandler as createJsonErrorResponseHandler4,\n createJsonResponseHandler as createJsonResponseHandler4,\n postJsonToApi,\n resolve as resolve4\n} from \"@ai-sdk/provider-utils\";\nimport { z as z7 } from \"zod/v4\";\nvar GatewayLanguageModel = class {\n constructor(modelId, config) {\n this.modelId = modelId;\n this.config = config;\n this.specificationVersion = \"v3\";\n this.supportedUrls = { \"*/*\": [/.*/] };\n }\n get provider() {\n return this.config.provider;\n }\n async getArgs(options) {\n const { abortSignal: _abortSignal, ...optionsWithoutSignal } = options;\n return {\n args: this.maybeEncodeFileParts(optionsWithoutSignal),\n warnings: []\n };\n }\n async doGenerate(options) {\n const { args, warnings } = await this.getArgs(options);\n const { abortSignal } = options;\n const resolvedHeaders = await resolve4(this.config.headers());\n try {\n const {\n responseHeaders,\n value: responseBody,\n rawValue: rawResponse\n } = await postJsonToApi({\n url: this.getUrl(),\n headers: combineHeaders(\n resolvedHeaders,\n options.headers,\n this.getModelConfigHeaders(this.modelId, false),\n await resolve4(this.config.o11yHeaders)\n ),\n body: args,\n successfulResponseHandler: createJsonResponseHandler4(z7.any()),\n failedResponseHandler: createJsonErrorResponseHandler4({\n errorSchema: z7.any(),\n errorToMessage: (data) => data\n }),\n ...abortSignal && { abortSignal },\n fetch: this.config.fetch\n });\n return {\n ...responseBody,\n request: { body: args },\n response: { headers: responseHeaders, body: rawResponse },\n warnings\n };\n } catch (error) {\n throw await asGatewayError(error, await parseAuthMethod(resolvedHeaders));\n }\n }\n async doStream(options) {\n const { args, warnings } = await this.getArgs(options);\n const { abortSignal } = options;\n const resolvedHeaders = await resolve4(this.config.headers());\n try {\n const { value: response, responseHeaders } = await postJsonToApi({\n url: this.getUrl(),\n headers: combineHeaders(\n resolvedHeaders,\n options.headers,\n this.getModelConfigHeaders(this.modelId, true),\n await resolve4(this.config.o11yHeaders)\n ),\n body: args,\n successfulResponseHandler: createEventSourceResponseHandler(z7.any()),\n failedResponseHandler: createJsonErrorResponseHandler4({\n errorSchema: z7.any(),\n errorToMessage: (data) => data\n }),\n ...abortSignal && { abortSignal },\n fetch: this.config.fetch\n });\n return {\n stream: response.pipeThrough(\n new TransformStream({\n start(controller) {\n if (warnings.length > 0) {\n controller.enqueue({ type: \"stream-start\", warnings });\n }\n },\n transform(chunk, controller) {\n if (chunk.success) {\n const streamPart = chunk.value;\n if (streamPart.type === \"raw\" && !options.includeRawChunks) {\n return;\n }\n if (streamPart.type === \"response-metadata\" && streamPart.timestamp && typeof streamPart.timestamp === \"string\") {\n streamPart.timestamp = new Date(streamPart.timestamp);\n }\n controller.enqueue(streamPart);\n } else {\n controller.error(\n chunk.error\n );\n }\n }\n })\n ),\n request: { body: args },\n response: { headers: responseHeaders }\n };\n } catch (error) {\n throw await asGatewayError(error, await parseAuthMethod(resolvedHeaders));\n }\n }\n isFilePart(part) {\n return part && typeof part === \"object\" && \"type\" in part && part.type === \"file\";\n }\n /**\n * Encodes file parts in the prompt to base64. Mutates the passed options\n * instance directly to avoid copying the file data.\n * @param options - The options to encode.\n * @returns The options with the file parts encoded.\n */\n maybeEncodeFileParts(options) {\n for (const message of options.prompt) {\n for (const part of message.content) {\n if (this.isFilePart(part)) {\n const filePart = part;\n if (filePart.data instanceof Uint8Array) {\n const buffer = Uint8Array.from(filePart.data);\n const base64Data = Buffer.from(buffer).toString(\"base64\");\n filePart.data = new URL(\n `data:${filePart.mediaType || \"application/octet-stream\"};base64,${base64Data}`\n );\n }\n }\n }\n }\n return options;\n }\n getUrl() {\n return `${this.config.baseURL}/language-model`;\n }\n getModelConfigHeaders(modelId, streaming) {\n return {\n \"ai-language-model-specification-version\": \"3\",\n \"ai-language-model-id\": modelId,\n \"ai-language-model-streaming\": String(streaming)\n };\n }\n};\n\n// src/gateway-embedding-model.ts\nimport {\n combineHeaders as combineHeaders2,\n createJsonErrorResponseHandler as createJsonErrorResponseHandler5,\n createJsonResponseHandler as createJsonResponseHandler5,\n lazySchema as lazySchema7,\n postJsonToApi as postJsonToApi2,\n resolve as resolve5,\n zodSchema as zodSchema7\n} from \"@ai-sdk/provider-utils\";\nimport { z as z8 } from \"zod/v4\";\nvar GatewayEmbeddingModel = class {\n constructor(modelId, config) {\n this.modelId = modelId;\n this.config = config;\n this.specificationVersion = \"v3\";\n this.maxEmbeddingsPerCall = 2048;\n this.supportsParallelCalls = true;\n }\n get provider() {\n return this.config.provider;\n }\n async doEmbed({\n values,\n headers,\n abortSignal,\n providerOptions\n }) {\n var _a9;\n const resolvedHeaders = await resolve5(this.config.headers());\n try {\n const {\n responseHeaders,\n value: responseBody,\n rawValue\n } = await postJsonToApi2({\n url: this.getUrl(),\n headers: combineHeaders2(\n resolvedHeaders,\n headers != null ? headers : {},\n this.getModelConfigHeaders(),\n await resolve5(this.config.o11yHeaders)\n ),\n body: {\n values,\n ...providerOptions ? { providerOptions } : {}\n },\n successfulResponseHandler: createJsonResponseHandler5(\n gatewayEmbeddingResponseSchema\n ),\n failedResponseHandler: createJsonErrorResponseHandler5({\n errorSchema: z8.any(),\n errorToMessage: (data) => data\n }),\n ...abortSignal && { abortSignal },\n fetch: this.config.fetch\n });\n return {\n embeddings: responseBody.embeddings,\n usage: (_a9 = responseBody.usage) != null ? _a9 : void 0,\n providerMetadata: responseBody.providerMetadata,\n response: { headers: responseHeaders, body: rawValue },\n warnings: []\n };\n } catch (error) {\n throw await asGatewayError(error, await parseAuthMethod(resolvedHeaders));\n }\n }\n getUrl() {\n return `${this.config.baseURL}/embedding-model`;\n }\n getModelConfigHeaders() {\n return {\n \"ai-embedding-model-specification-version\": \"3\",\n \"ai-model-id\": this.modelId\n };\n }\n};\nvar gatewayEmbeddingResponseSchema = lazySchema7(\n () => zodSchema7(\n z8.object({\n embeddings: z8.array(z8.array(z8.number())),\n usage: z8.object({ tokens: z8.number() }).nullish(),\n providerMetadata: z8.record(z8.string(), z8.record(z8.string(), z8.unknown())).optional()\n })\n )\n);\n\n// src/gateway-image-model.ts\nimport {\n combineHeaders as combineHeaders3,\n convertUint8ArrayToBase64,\n createJsonResponseHandler as createJsonResponseHandler6,\n createJsonErrorResponseHandler as createJsonErrorResponseHandler6,\n postJsonToApi as postJsonToApi3,\n resolve as resolve6\n} from \"@ai-sdk/provider-utils\";\nimport { z as z9 } from \"zod/v4\";\nvar GatewayImageModel = class {\n constructor(modelId, config) {\n this.modelId = modelId;\n this.config = config;\n this.specificationVersion = \"v3\";\n // Set a very large number to prevent client-side splitting of requests\n this.maxImagesPerCall = Number.MAX_SAFE_INTEGER;\n }\n get provider() {\n return this.config.provider;\n }\n async doGenerate({\n prompt,\n n,\n size,\n aspectRatio,\n seed,\n files,\n mask,\n providerOptions,\n headers,\n abortSignal\n }) {\n var _a9, _b9, _c, _d;\n const resolvedHeaders = await resolve6(this.config.headers());\n try {\n const {\n responseHeaders,\n value: responseBody,\n rawValue\n } = await postJsonToApi3({\n url: this.getUrl(),\n headers: combineHeaders3(\n resolvedHeaders,\n headers != null ? headers : {},\n this.getModelConfigHeaders(),\n await resolve6(this.config.o11yHeaders)\n ),\n body: {\n prompt,\n n,\n ...size && { size },\n ...aspectRatio && { aspectRatio },\n ...seed && { seed },\n ...providerOptions && { providerOptions },\n ...files && {\n files: files.map((file) => maybeEncodeImageFile(file))\n },\n ...mask && { mask: maybeEncodeImageFile(mask) }\n },\n successfulResponseHandler: createJsonResponseHandler6(\n gatewayImageResponseSchema\n ),\n failedResponseHandler: createJsonErrorResponseHandler6({\n errorSchema: z9.any(),\n errorToMessage: (data) => data\n }),\n ...abortSignal && { abortSignal },\n fetch: this.config.fetch\n });\n return {\n images: responseBody.images,\n // Always base64 strings from server\n warnings: (_a9 = responseBody.warnings) != null ? _a9 : [],\n providerMetadata: responseBody.providerMetadata,\n response: {\n timestamp: /* @__PURE__ */ new Date(),\n modelId: this.modelId,\n headers: responseHeaders\n },\n ...responseBody.usage != null && {\n usage: {\n inputTokens: (_b9 = responseBody.usage.inputTokens) != null ? _b9 : void 0,\n outputTokens: (_c = responseBody.usage.outputTokens) != null ? _c : void 0,\n totalTokens: (_d = responseBody.usage.totalTokens) != null ? _d : void 0\n }\n }\n };\n } catch (error) {\n throw await asGatewayError(error, await parseAuthMethod(resolvedHeaders));\n }\n }\n getUrl() {\n return `${this.config.baseURL}/image-model`;\n }\n getModelConfigHeaders() {\n return {\n \"ai-image-model-specification-version\": \"3\",\n \"ai-model-id\": this.modelId\n };\n }\n};\nfunction maybeEncodeImageFile(file) {\n if (file.type === \"file\" && file.data instanceof Uint8Array) {\n return {\n ...file,\n data: convertUint8ArrayToBase64(file.data)\n };\n }\n return file;\n}\nvar providerMetadataEntrySchema = z9.object({\n images: z9.array(z9.unknown()).optional()\n}).catchall(z9.unknown());\nvar gatewayImageWarningSchema = z9.discriminatedUnion(\"type\", [\n z9.object({\n type: z9.literal(\"unsupported\"),\n feature: z9.string(),\n details: z9.string().optional()\n }),\n z9.object({\n type: z9.literal(\"compatibility\"),\n feature: z9.string(),\n details: z9.string().optional()\n }),\n z9.object({\n type: z9.literal(\"other\"),\n message: z9.string()\n })\n]);\nvar gatewayImageUsageSchema = z9.object({\n inputTokens: z9.number().nullish(),\n outputTokens: z9.number().nullish(),\n totalTokens: z9.number().nullish()\n});\nvar gatewayImageResponseSchema = z9.object({\n images: z9.array(z9.string()),\n // Always base64 strings over the wire\n warnings: z9.array(gatewayImageWarningSchema).optional(),\n providerMetadata: z9.record(z9.string(), providerMetadataEntrySchema).optional(),\n usage: gatewayImageUsageSchema.optional()\n});\n\n// src/gateway-video-model.ts\nimport { APICallError as APICallError2 } from \"@ai-sdk/provider\";\nimport {\n combineHeaders as combineHeaders4,\n convertUint8ArrayToBase64 as convertUint8ArrayToBase642,\n createJsonErrorResponseHandler as createJsonErrorResponseHandler7,\n parseJsonEventStream,\n postJsonToApi as postJsonToApi4,\n resolve as resolve7\n} from \"@ai-sdk/provider-utils\";\nimport { z as z10 } from \"zod/v4\";\nvar GatewayVideoModel = class {\n constructor(modelId, config) {\n this.modelId = modelId;\n this.config = config;\n this.specificationVersion = \"v3\";\n // Set a very large number to prevent client-side splitting of requests\n this.maxVideosPerCall = Number.MAX_SAFE_INTEGER;\n }\n get provider() {\n return this.config.provider;\n }\n async doGenerate({\n prompt,\n n,\n aspectRatio,\n resolution,\n duration,\n fps,\n seed,\n image,\n providerOptions,\n headers,\n abortSignal\n }) {\n var _a9;\n const resolvedHeaders = await resolve7(this.config.headers());\n try {\n const { responseHeaders, value: responseBody } = await postJsonToApi4({\n url: this.getUrl(),\n headers: combineHeaders4(\n resolvedHeaders,\n headers != null ? headers : {},\n this.getModelConfigHeaders(),\n await resolve7(this.config.o11yHeaders),\n { accept: \"text/event-stream\" }\n ),\n body: {\n prompt,\n n,\n ...aspectRatio && { aspectRatio },\n ...resolution && { resolution },\n ...duration && { duration },\n ...fps && { fps },\n ...seed && { seed },\n ...providerOptions && { providerOptions },\n ...image && { image: maybeEncodeVideoFile(image) }\n },\n successfulResponseHandler: async ({\n response,\n url,\n requestBodyValues\n }) => {\n if (response.body == null) {\n throw new APICallError2({\n message: \"SSE response body is empty\",\n url,\n requestBodyValues,\n statusCode: response.status\n });\n }\n const eventStream = parseJsonEventStream({\n stream: response.body,\n schema: gatewayVideoEventSchema\n });\n const reader = eventStream.getReader();\n const { done, value: parseResult } = await reader.read();\n reader.releaseLock();\n if (done || !parseResult) {\n throw new APICallError2({\n message: \"SSE stream ended without a data event\",\n url,\n requestBodyValues,\n statusCode: response.status\n });\n }\n if (!parseResult.success) {\n throw new APICallError2({\n message: \"Failed to parse video SSE event\",\n cause: parseResult.error,\n url,\n requestBodyValues,\n statusCode: response.status\n });\n }\n const event = parseResult.value;\n if (event.type === \"error\") {\n throw new APICallError2({\n message: event.message,\n statusCode: event.statusCode,\n url,\n requestBodyValues,\n responseHeaders: Object.fromEntries([...response.headers]),\n responseBody: JSON.stringify(event),\n data: {\n error: {\n message: event.message,\n type: event.errorType,\n param: event.param\n }\n }\n });\n }\n return {\n value: {\n videos: event.videos,\n warnings: event.warnings,\n providerMetadata: event.providerMetadata\n },\n responseHeaders: Object.fromEntries([...response.headers])\n };\n },\n failedResponseHandler: createJsonErrorResponseHandler7({\n errorSchema: z10.any(),\n errorToMessage: (data) => data\n }),\n ...abortSignal && { abortSignal },\n fetch: this.config.fetch\n });\n return {\n videos: responseBody.videos,\n warnings: (_a9 = responseBody.warnings) != null ? _a9 : [],\n providerMetadata: responseBody.providerMetadata,\n response: {\n timestamp: /* @__PURE__ */ new Date(),\n modelId: this.modelId,\n headers: responseHeaders\n }\n };\n } catch (error) {\n throw await asGatewayError(error, await parseAuthMethod(resolvedHeaders));\n }\n }\n getUrl() {\n return `${this.config.baseURL}/video-model`;\n }\n getModelConfigHeaders() {\n return {\n \"ai-video-model-specification-version\": \"3\",\n \"ai-model-id\": this.modelId\n };\n }\n};\nfunction maybeEncodeVideoFile(file) {\n if (file.type === \"file\" && file.data instanceof Uint8Array) {\n return {\n ...file,\n data: convertUint8ArrayToBase642(file.data)\n };\n }\n return file;\n}\nvar providerMetadataEntrySchema2 = z10.object({\n videos: z10.array(z10.unknown()).optional()\n}).catchall(z10.unknown());\nvar gatewayVideoDataSchema = z10.union([\n z10.object({\n type: z10.literal(\"url\"),\n url: z10.string(),\n mediaType: z10.string()\n }),\n z10.object({\n type: z10.literal(\"base64\"),\n data: z10.string(),\n mediaType: z10.string()\n })\n]);\nvar gatewayVideoWarningSchema = z10.discriminatedUnion(\"type\", [\n z10.object({\n type: z10.literal(\"unsupported\"),\n feature: z10.string(),\n details: z10.string().optional()\n }),\n z10.object({\n type: z10.literal(\"compatibility\"),\n feature: z10.string(),\n details: z10.string().optional()\n }),\n z10.object({\n type: z10.literal(\"other\"),\n message: z10.string()\n })\n]);\nvar gatewayVideoEventSchema = z10.discriminatedUnion(\"type\", [\n z10.object({\n type: z10.literal(\"result\"),\n videos: z10.array(gatewayVideoDataSchema),\n warnings: z10.array(gatewayVideoWarningSchema).optional(),\n providerMetadata: z10.record(z10.string(), providerMetadataEntrySchema2).optional()\n }),\n z10.object({\n type: z10.literal(\"error\"),\n message: z10.string(),\n errorType: z10.string(),\n statusCode: z10.number(),\n param: z10.unknown().nullable()\n })\n]);\n\n// src/gateway-reranking-model.ts\nimport {\n combineHeaders as combineHeaders5,\n createJsonErrorResponseHandler as createJsonErrorResponseHandler8,\n createJsonResponseHandler as createJsonResponseHandler7,\n lazySchema as lazySchema8,\n postJsonToApi as postJsonToApi5,\n resolve as resolve8,\n zodSchema as zodSchema8\n} from \"@ai-sdk/provider-utils\";\nimport { z as z11 } from \"zod/v4\";\nvar GatewayRerankingModel = class {\n constructor(modelId, config) {\n this.modelId = modelId;\n this.config = config;\n this.specificationVersion = \"v3\";\n }\n get provider() {\n return this.config.provider;\n }\n async doRerank({\n documents,\n query,\n topN,\n headers,\n abortSignal,\n providerOptions\n }) {\n const resolvedHeaders = await resolve8(this.config.headers());\n try {\n const {\n responseHeaders,\n value: responseBody,\n rawValue\n } = await postJsonToApi5({\n url: this.getUrl(),\n headers: combineHeaders5(\n resolvedHeaders,\n headers != null ? headers : {},\n this.getModelConfigHeaders(),\n await resolve8(this.config.o11yHeaders)\n ),\n body: {\n documents,\n query,\n ...topN != null ? { topN } : {},\n ...providerOptions ? { providerOptions } : {}\n },\n successfulResponseHandler: createJsonResponseHandler7(\n gatewayRerankingResponseSchema\n ),\n failedResponseHandler: createJsonErrorResponseHandler8({\n errorSchema: z11.any(),\n errorToMessage: (data) => data\n }),\n ...abortSignal && { abortSignal },\n fetch: this.config.fetch\n });\n return {\n ranking: responseBody.ranking,\n providerMetadata: responseBody.providerMetadata,\n response: { headers: responseHeaders, body: rawValue },\n warnings: []\n };\n } catch (error) {\n throw await asGatewayError(error, await parseAuthMethod(resolvedHeaders));\n }\n }\n getUrl() {\n return `${this.config.baseURL}/reranking-model`;\n }\n getModelConfigHeaders() {\n return {\n \"ai-reranking-model-specification-version\": \"3\",\n \"ai-model-id\": this.modelId\n };\n }\n};\nvar gatewayRerankingResponseSchema = lazySchema8(\n () => zodSchema8(\n z11.object({\n ranking: z11.array(\n z11.object({\n index: z11.number(),\n relevanceScore: z11.number()\n })\n ),\n providerMetadata: z11.record(z11.string(), z11.record(z11.string(), z11.unknown())).optional()\n })\n )\n);\n\n// src/tool/parallel-search.ts\nimport {\n createProviderToolFactoryWithOutputSchema,\n lazySchema as lazySchema9,\n zodSchema as zodSchema9\n} from \"@ai-sdk/provider-utils\";\nimport { z as z12 } from \"zod\";\nvar parallelSearchInputSchema = lazySchema9(\n () => zodSchema9(\n z12.object({\n objective: z12.string().describe(\n \"Natural-language description of the web research goal, including source or freshness guidance and broader context from the task. Maximum 5000 characters.\"\n ),\n search_queries: z12.array(z12.string()).optional().describe(\n \"Optional search queries to supplement the objective. Maximum 200 characters per query.\"\n ),\n mode: z12.enum([\"one-shot\", \"agentic\"]).optional().describe(\n 'Mode preset: \"one-shot\" for comprehensive results with longer excerpts (default), \"agentic\" for concise, token-efficient results for multi-step workflows.'\n ),\n max_results: z12.number().optional().describe(\n \"Maximum number of results to return (1-20). Defaults to 10 if not specified.\"\n ),\n source_policy: z12.object({\n include_domains: z12.array(z12.string()).optional().describe(\"List of domains to include in search results.\"),\n exclude_domains: z12.array(z12.string()).optional().describe(\"List of domains to exclude from search results.\"),\n after_date: z12.string().optional().describe(\n \"Only include results published after this date (ISO 8601 format).\"\n )\n }).optional().describe(\n \"Source policy for controlling which domains to include/exclude and freshness.\"\n ),\n excerpts: z12.object({\n max_chars_per_result: z12.number().optional().describe(\"Maximum characters per result.\"),\n max_chars_total: z12.number().optional().describe(\"Maximum total characters across all results.\")\n }).optional().describe(\"Excerpt configuration for controlling result length.\"),\n fetch_policy: z12.object({\n max_age_seconds: z12.number().optional().describe(\n \"Maximum age in seconds for cached content. Set to 0 to always fetch fresh content.\"\n )\n }).optional().describe(\"Fetch policy for controlling content freshness.\")\n })\n )\n);\nvar parallelSearchOutputSchema = lazySchema9(\n () => zodSchema9(\n z12.union([\n // Success response\n z12.object({\n searchId: z12.string(),\n results: z12.array(\n z12.object({\n url: z12.string(),\n title: z12.string(),\n excerpt: z12.string(),\n publishDate: z12.string().nullable().optional(),\n relevanceScore: z12.number().optional()\n })\n )\n }),\n // Error response\n z12.object({\n error: z12.enum([\n \"api_error\",\n \"rate_limit\",\n \"timeout\",\n \"invalid_input\",\n \"configuration_error\",\n \"unknown\"\n ]),\n statusCode: z12.number().optional(),\n message: z12.string()\n })\n ])\n )\n);\nvar parallelSearchToolFactory = createProviderToolFactoryWithOutputSchema({\n id: \"gateway.parallel_search\",\n inputSchema: parallelSearchInputSchema,\n outputSchema: parallelSearchOutputSchema\n});\nvar parallelSearch = (config = {}) => parallelSearchToolFactory(config);\n\n// src/tool/perplexity-search.ts\nimport {\n createProviderToolFactoryWithOutputSchema as createProviderToolFactoryWithOutputSchema2,\n lazySchema as lazySchema10,\n zodSchema as zodSchema10\n} from \"@ai-sdk/provider-utils\";\nimport { z as z13 } from \"zod\";\nvar perplexitySearchInputSchema = lazySchema10(\n () => zodSchema10(\n z13.object({\n query: z13.union([z13.string(), z13.array(z13.string())]).describe(\n \"Search query (string) or multiple queries (array of up to 5 strings). Multi-query searches return combined results from all queries.\"\n ),\n max_results: z13.number().optional().describe(\n \"Maximum number of search results to return (1-20, default: 10)\"\n ),\n max_tokens_per_page: z13.number().optional().describe(\n \"Maximum number of tokens to extract per search result page (256-2048, default: 2048)\"\n ),\n max_tokens: z13.number().optional().describe(\n \"Maximum total tokens across all search results (default: 25000, max: 1000000)\"\n ),\n country: z13.string().optional().describe(\n \"Two-letter ISO 3166-1 alpha-2 country code for regional search results (e.g., 'US', 'GB', 'FR')\"\n ),\n search_domain_filter: z13.array(z13.string()).optional().describe(\n \"List of domains to include or exclude from search results (max 20). To include: ['nature.com', 'science.org']. To exclude: ['-example.com', '-spam.net']\"\n ),\n search_language_filter: z13.array(z13.string()).optional().describe(\n \"List of ISO 639-1 language codes to filter results (max 10, lowercase). Examples: ['en', 'fr', 'de']\"\n ),\n search_after_date: z13.string().optional().describe(\n \"Include only results published after this date. Format: 'MM/DD/YYYY' (e.g., '3/1/2025'). Cannot be used with search_recency_filter.\"\n ),\n search_before_date: z13.string().optional().describe(\n \"Include only results published before this date. Format: 'MM/DD/YYYY' (e.g., '3/15/2025'). Cannot be used with search_recency_filter.\"\n ),\n last_updated_after_filter: z13.string().optional().describe(\n \"Include only results last updated after this date. Format: 'MM/DD/YYYY' (e.g., '3/1/2025'). Cannot be used with search_recency_filter.\"\n ),\n last_updated_before_filter: z13.string().optional().describe(\n \"Include only results last updated before this date. Format: 'MM/DD/YYYY' (e.g., '3/15/2025'). Cannot be used with search_recency_filter.\"\n ),\n search_recency_filter: z13.enum([\"day\", \"week\", \"month\", \"year\"]).optional().describe(\n \"Filter results by relative time period. Cannot be used with search_after_date or search_before_date.\"\n )\n })\n )\n);\nvar perplexitySearchOutputSchema = lazySchema10(\n () => zodSchema10(\n z13.union([\n // Success response\n z13.object({\n results: z13.array(\n z13.object({\n title: z13.string(),\n url: z13.string(),\n snippet: z13.string(),\n date: z13.string().optional(),\n lastUpdated: z13.string().optional()\n })\n ),\n id: z13.string()\n }),\n // Error response\n z13.object({\n error: z13.enum([\n \"api_error\",\n \"rate_limit\",\n \"timeout\",\n \"invalid_input\",\n \"unknown\"\n ]),\n statusCode: z13.number().optional(),\n message: z13.string()\n })\n ])\n )\n);\nvar perplexitySearchToolFactory = createProviderToolFactoryWithOutputSchema2({\n id: \"gateway.perplexity_search\",\n inputSchema: perplexitySearchInputSchema,\n outputSchema: perplexitySearchOutputSchema\n});\nvar perplexitySearch = (config = {}) => perplexitySearchToolFactory(config);\n\n// src/gateway-tools.ts\nvar gatewayTools = {\n /**\n * Search the web using Parallel AI's Search API for LLM-optimized excerpts.\n *\n * Takes a natural language objective and returns relevant excerpts,\n * replacing multiple keyword searches with a single call for broad\n * or complex queries. Supports different search types for depth vs\n * breadth tradeoffs.\n */\n parallelSearch,\n /**\n * Search the web using Perplexity's Search API for real-time information,\n * news, research papers, and articles.\n *\n * Provides ranked search results with advanced filtering options including\n * domain, language, date range, and recency filters.\n */\n perplexitySearch\n};\n\n// src/vercel-environment.ts\nimport { getContext } from \"@vercel/oidc\";\nimport { getVercelOidcToken } from \"@vercel/oidc\";\nasync function getVercelRequestId() {\n var _a9;\n return (_a9 = getContext().headers) == null ? void 0 : _a9[\"x-vercel-id\"];\n}\n\n// src/gateway-provider.ts\nimport { withUserAgentSuffix } from \"@ai-sdk/provider-utils\";\n\n// src/version.ts\nvar VERSION = true ? \"3.0.104\" : \"0.0.0-test\";\n\n// src/gateway-provider.ts\nvar AI_GATEWAY_PROTOCOL_VERSION = \"0.0.1\";\nfunction createGatewayProvider(options = {}) {\n var _a9, _b9;\n let pendingMetadata = null;\n let metadataCache = null;\n const cacheRefreshMillis = (_a9 = options.metadataCacheRefreshMillis) != null ? _a9 : 1e3 * 60 * 5;\n let lastFetchTime = 0;\n const baseURL = (_b9 = withoutTrailingSlash(options.baseURL)) != null ? _b9 : \"https://ai-gateway.vercel.sh/v3/ai\";\n const getHeaders = async () => {\n try {\n const auth = await getGatewayAuthToken(options);\n return withUserAgentSuffix(\n {\n Authorization: `Bearer ${auth.token}`,\n \"ai-gateway-protocol-version\": AI_GATEWAY_PROTOCOL_VERSION,\n [GATEWAY_AUTH_METHOD_HEADER]: auth.authMethod,\n ...options.headers\n },\n `ai-sdk/gateway/${VERSION}`\n );\n } catch (error) {\n throw GatewayAuthenticationError.createContextualError({\n apiKeyProvided: false,\n oidcTokenProvided: false,\n statusCode: 401,\n cause: error\n });\n }\n };\n const createO11yHeaders = () => {\n const deploymentId = loadOptionalSetting({\n settingValue: void 0,\n environmentVariableName: \"VERCEL_DEPLOYMENT_ID\"\n });\n const environment = loadOptionalSetting({\n settingValue: void 0,\n environmentVariableName: \"VERCEL_ENV\"\n });\n const region = loadOptionalSetting({\n settingValue: void 0,\n environmentVariableName: \"VERCEL_REGION\"\n });\n const projectId = loadOptionalSetting({\n settingValue: void 0,\n environmentVariableName: \"VERCEL_PROJECT_ID\"\n });\n return async () => {\n const requestId = await getVercelRequestId();\n return {\n ...deploymentId && { \"ai-o11y-deployment-id\": deploymentId },\n ...environment && { \"ai-o11y-environment\": environment },\n ...region && { \"ai-o11y-region\": region },\n ...requestId && { \"ai-o11y-request-id\": requestId },\n ...projectId && { \"ai-o11y-project-id\": projectId }\n };\n };\n };\n const createLanguageModel = (modelId) => {\n return new GatewayLanguageModel(modelId, {\n provider: \"gateway\",\n baseURL,\n headers: getHeaders,\n fetch: options.fetch,\n o11yHeaders: createO11yHeaders()\n });\n };\n const getAvailableModels = async () => {\n var _a10, _b10, _c;\n const now = (_c = (_b10 = (_a10 = options._internal) == null ? void 0 : _a10.currentDate) == null ? void 0 : _b10.call(_a10).getTime()) != null ? _c : Date.now();\n if (!pendingMetadata || now - lastFetchTime > cacheRefreshMillis) {\n lastFetchTime = now;\n pendingMetadata = new GatewayFetchMetadata({\n baseURL,\n headers: getHeaders,\n fetch: options.fetch\n }).getAvailableModels().then((metadata) => {\n metadataCache = metadata;\n return metadata;\n }).catch(async (error) => {\n throw await asGatewayError(\n error,\n await parseAuthMethod(await getHeaders())\n );\n });\n }\n return metadataCache ? Promise.resolve(metadataCache) : pendingMetadata;\n };\n const getCredits = async () => {\n return new GatewayFetchMetadata({\n baseURL,\n headers: getHeaders,\n fetch: options.fetch\n }).getCredits().catch(async (error) => {\n throw await asGatewayError(\n error,\n await parseAuthMethod(await getHeaders())\n );\n });\n };\n const getSpendReport = async (params) => {\n return new GatewaySpendReport({\n baseURL,\n headers: getHeaders,\n fetch: options.fetch\n }).getSpendReport(params).catch(async (error) => {\n throw await asGatewayError(\n error,\n await parseAuthMethod(await getHeaders())\n );\n });\n };\n const getGenerationInfo = async (params) => {\n return new GatewayGenerationInfoFetcher({\n baseURL,\n headers: getHeaders,\n fetch: options.fetch\n }).getGenerationInfo(params).catch(async (error) => {\n throw await asGatewayError(\n error,\n await parseAuthMethod(await getHeaders())\n );\n });\n };\n const provider = function(modelId) {\n if (new.target) {\n throw new Error(\n \"The Gateway Provider model function cannot be called with the new keyword.\"\n );\n }\n return createLanguageModel(modelId);\n };\n provider.specificationVersion = \"v3\";\n provider.getAvailableModels = getAvailableModels;\n provider.getCredits = getCredits;\n provider.getSpendReport = getSpendReport;\n provider.getGenerationInfo = getGenerationInfo;\n provider.imageModel = (modelId) => {\n return new GatewayImageModel(modelId, {\n provider: \"gateway\",\n baseURL,\n headers: getHeaders,\n fetch: options.fetch,\n o11yHeaders: createO11yHeaders()\n });\n };\n provider.languageModel = createLanguageModel;\n const createEmbeddingModel = (modelId) => {\n return new GatewayEmbeddingModel(modelId, {\n provider: \"gateway\",\n baseURL,\n headers: getHeaders,\n fetch: options.fetch,\n o11yHeaders: createO11yHeaders()\n });\n };\n provider.embeddingModel = createEmbeddingModel;\n provider.textEmbeddingModel = createEmbeddingModel;\n provider.videoModel = (modelId) => {\n return new GatewayVideoModel(modelId, {\n provider: \"gateway\",\n baseURL,\n headers: getHeaders,\n fetch: options.fetch,\n o11yHeaders: createO11yHeaders()\n });\n };\n const createRerankingModel = (modelId) => {\n return new GatewayRerankingModel(modelId, {\n provider: \"gateway\",\n baseURL,\n headers: getHeaders,\n fetch: options.fetch,\n o11yHeaders: createO11yHeaders()\n });\n };\n provider.rerankingModel = createRerankingModel;\n provider.reranking = createRerankingModel;\n provider.chat = provider.languageModel;\n provider.embedding = provider.embeddingModel;\n provider.image = provider.imageModel;\n provider.video = provider.videoModel;\n provider.tools = gatewayTools;\n return provider;\n}\nvar gateway = createGatewayProvider();\nasync function getGatewayAuthToken(options) {\n const apiKey = loadOptionalSetting({\n settingValue: options.apiKey,\n environmentVariableName: \"AI_GATEWAY_API_KEY\"\n });\n if (apiKey) {\n return {\n token: apiKey,\n authMethod: \"api-key\"\n };\n }\n const oidcToken = await getVercelOidcToken();\n return {\n token: oidcToken,\n authMethod: \"oidc\"\n };\n}\nexport {\n GatewayAuthenticationError,\n GatewayError,\n GatewayInternalServerError,\n GatewayInvalidRequestError,\n GatewayModelNotFoundError,\n GatewayRateLimitError,\n GatewayResponseError,\n createGatewayProvider as createGateway,\n createGatewayProvider,\n gateway\n};\n//# sourceMappingURL=index.mjs.map"
9
+ ],
10
+ "mappings": ";+bACA,SAAuB,oBAAnB,OAC0B,8BAA1B,QAC2B,oBAA3B,IADmB,OAEnB,GAAe,OAAO,UAAU,eAChC,GAAW,CAAC,EAAQ,IAAQ,CAC9B,QAAS,KAAQ,EACf,EAAU,EAAQ,EAAM,CAAE,IAAK,EAAI,GAAO,WAAY,EAAK,CAAC,GAE5D,GAAc,CAAC,EAAI,EAAM,EAAQ,IAAS,CAC5C,GAAI,GAAQ,OAAO,IAAS,UAAY,OAAO,IAAS,YACtD,QAAS,KAAO,GAAkB,CAAI,EACpC,GAAI,CAAC,GAAa,KAAK,EAAI,CAAG,GAAK,IAAQ,EACzC,EAAU,EAAI,EAAK,CAAE,IAAK,IAAM,EAAK,GAAM,WAAY,EAAE,EAAO,GAAiB,EAAM,CAAG,IAAM,EAAK,UAAW,CAAC,EAEvH,OAAO,GAEL,GAAe,CAAC,IAAQ,GAAY,EAAU,CAAC,EAAG,aAAc,CAAE,MAAO,EAAK,CAAC,EAAG,CAAG,EACrF,EAAsB,CAAC,EAC3B,GAAS,EAAqB,CAC5B,uBAAwB,IAAM,EAC9B,WAAY,IAAM,EACpB,CAAC,EACD,EAAO,QAAU,GAAa,CAAmB,EACjD,IAAM,EAAyB,OAAO,IAAI,yBAAyB,EACnE,SAAS,EAAU,EAAG,CAEpB,OADmB,WACD,IAAyB,MAAM,GAAK,CAAC,wBCzBzD,IAAuB,eAAnB,EAC0B,yBAA1B,GAC2B,oBAA3B,IADmB,OAGnB,GAAe,OAAO,UAAU,eAChC,GAAW,CAAC,EAAQ,IAAQ,CAC9B,QAAS,KAAQ,EACf,EAAU,EAAQ,EAAM,CAAE,IAAK,EAAI,GAAO,WAAY,EAAK,CAAC,GAE5D,GAAc,CAAC,EAAI,EAAM,EAAQ,IAAS,CAC5C,GAAI,GAAQ,OAAO,IAAS,UAAY,OAAO,IAAS,YACtD,QAAS,KAAO,GAAkB,CAAI,EACpC,GAAI,CAAC,GAAa,KAAK,EAAI,CAAG,GAAK,IAAQ,EACzC,EAAU,EAAI,EAAK,CAAE,IAAK,IAAM,EAAK,GAAM,WAAY,EAAE,EAAO,GAAiB,EAAM,CAAG,IAAM,EAAK,UAAW,CAAC,EAEvH,OAAO,GAUL,GAAe,CAAC,IAAQ,GAAY,EAAU,CAAC,EAAG,aAAc,CAAE,MAAO,EAAK,CAAC,EAAG,CAAG,EACrF,EAAgC,CAAC,EACrC,GAAS,EAA+B,CACtC,mBAAoB,IAAM,GAC1B,uBAAwB,IAAM,CAChC,CAAC,EACD,GAAO,QAAU,GAAa,CAA6B,EAC3D,IAAI,OACA,QACJ,eAAe,EAAkB,CAAC,EAAS,CACzC,IAAI,EAAQ,GACR,EACJ,GAAI,CACF,EAAQ,EAAuB,EAC/B,MAAO,EAAO,CACd,EAAM,EAER,GAAI,CACF,KAAS,kBAAiB,cAAe,iBAAkB,MAAM,QAAQ,IAAI,CAC3E,KAAa,kEACb,KAAa,iEACf,CAAC,EACD,GAAI,CAAC,GAAS,EAAU,EAAgB,CAAK,EAAG,GAAS,kBAAkB,EACzE,MAAM,EAAa,CAAO,EAC1B,EAAQ,EAAuB,EAEjC,MAAO,EAAO,CACd,IAAI,EAAU,aAAe,MAAQ,EAAI,QAAU,GACnD,GAAI,aAAiB,MACnB,EAAU,GAAG;AAAA,EACjB,EAAM,UAEJ,GAAI,EACF,MAAM,IAAI,GAAmB,qBAAqB,CAAO,EAE3D,MAAM,EAER,OAAO,EAET,SAAS,CAAsB,EAAG,CAChC,IAAM,GAAS,EAAG,GAAmB,YAAY,EAAE,UAAU,wBAA0B,QAAQ,IAAI,kBACnG,GAAI,CAAC,EACH,MAAU,MACR,mIACF,EAEF,OAAO,uBCxET,IAAuB,eAAnB,EAC0B,yBAA1B,GAC2B,oBAA3B,IADmB,OAEnB,GAAe,OAAO,UAAU,eAChC,GAAW,CAAC,EAAQ,IAAQ,CAC9B,QAAS,KAAQ,EACf,EAAU,EAAQ,EAAM,CAAE,IAAK,EAAI,GAAO,WAAY,EAAK,CAAC,GAE5D,GAAc,CAAC,EAAI,EAAM,EAAQ,IAAS,CAC5C,GAAI,GAAQ,OAAO,IAAS,UAAY,OAAO,IAAS,YACtD,QAAS,KAAO,GAAkB,CAAI,EACpC,GAAI,CAAC,GAAa,KAAK,EAAI,CAAG,GAAK,IAAQ,EACzC,EAAU,EAAI,EAAK,CAAE,IAAK,IAAM,EAAK,GAAM,WAAY,EAAE,EAAO,GAAiB,EAAM,CAAG,IAAM,EAAK,UAAW,CAAC,EAEvH,OAAO,GAEL,GAAe,CAAC,IAAQ,GAAY,EAAU,CAAC,EAAG,aAAc,CAAE,MAAO,EAAK,CAAC,EAAG,CAAG,EACrF,GAAc,CAAC,EACnB,GAAS,GAAa,CACpB,wBAAyB,IAAM,GAAmB,wBAClD,8BAA+B,IAAM,GAAmB,8BACxD,WAAY,IAAM,GAAmB,WACrC,mBAAoB,IAAM,GAA6B,mBACvD,uBAAwB,IAAM,GAA6B,uBAC3D,eAAgB,IAAM,GAAkB,cAC1C,CAAC,EACD,GAAO,QAAU,GAAa,EAAW,EACzC,IAAI,QACA,OACA,QACA,UC0lDJ,gBACA,YA7mDA,IAAI,GAAS,0BACT,EAAS,OAAO,IAAI,EAAM,EAC1B,GAAI,GACJ,EAAe,MAAM,UAAuB,GAAK,MAAO,GAAK,EAAQ,GAAI,CAC3E,WAAW,EACT,UACA,aAAa,IACb,QACA,gBACC,CACD,MAAM,EAAe,GAAG,MAAY,KAAkB,CAAO,EAC7D,KAAK,IAAM,GACX,KAAK,WAAa,EAClB,KAAK,MAAQ,EACb,KAAK,aAAe,QAOf,WAAU,CAAC,EAAO,CACvB,OAAO,EAAc,UAAU,CAAK,QAE/B,UAAS,CAAC,EAAO,CACtB,OAAO,OAAO,IAAU,UAAY,IAAU,MAAQ,KAAU,GAAS,EAAM,KAAY,GAE/F,EAGI,GAAO,6BACP,GAAU,2BAA2B,KACrC,GAAU,OAAO,IAAI,EAAO,EAC5B,GAAK,GACL,GAA6B,MAAM,UAAqC,GAAM,EAAc,GAAM,GAAS,GAAK,CAClH,WAAW,EACT,UAAU,wBACV,aAAa,IACb,QACA,gBACE,CAAC,EAAG,CACN,MAAM,CAAE,UAAS,aAAY,QAAO,cAAa,CAAC,EAClD,KAAK,IAAO,GAEZ,KAAK,KAAO,GACZ,KAAK,KAAO,6BAEP,WAAU,CAAC,EAAO,CACvB,OAAO,EAAa,UAAU,CAAK,GAAK,MAAW,QAK9C,sBAAqB,EAC1B,iBACA,oBACA,UAAU,wBACV,aAAa,IACb,QACA,gBACC,CACD,IAAI,EACJ,GAAI,EACF,EAAoB;AAAA;AAAA;AAAA;AAAA,2EAKf,QAAI,EACT,EAAoB;AAAA;AAAA;AAAA;AAAA,4FAMpB,OAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oFAStB,OAAO,IAAI,EAA4B,CACrC,QAAS,EACT,aACA,QACA,cACF,CAAC,EAEL,EAGI,GAAQ,6BACR,GAAU,2BAA2B,KACrC,GAAU,OAAO,IAAI,EAAO,EAC5B,GAAK,GACL,GAA6B,cAAe,GAAM,EAAc,GAAM,GAAS,GAAK,CACtF,WAAW,EACT,UAAU,kBACV,aAAa,IACb,QACA,gBACE,CAAC,EAAG,CACN,MAAM,CAAE,UAAS,aAAY,QAAO,cAAa,CAAC,EAClD,KAAK,IAAO,GAEZ,KAAK,KAAO,GACZ,KAAK,KAAO,8BAEP,WAAU,CAAC,EAAO,CACvB,OAAO,EAAa,UAAU,CAAK,GAAK,MAAW,EAEvD,EAGI,GAAQ,wBACR,GAAU,2BAA2B,KACrC,GAAU,OAAO,IAAI,EAAO,EAC5B,GAAK,GACL,GAAwB,cAAe,GAAM,EAAc,GAAM,GAAS,GAAK,CACjF,WAAW,EACT,UAAU,sBACV,aAAa,IACb,QACA,gBACE,CAAC,EAAG,CACN,MAAM,CAAE,UAAS,aAAY,QAAO,cAAa,CAAC,EAClD,KAAK,IAAO,GAEZ,KAAK,KAAO,GACZ,KAAK,KAAO,4BAEP,WAAU,CAAC,EAAO,CACvB,OAAO,EAAa,UAAU,CAAK,GAAK,MAAW,EAEvD,EAKI,GAAQ,4BACR,GAAU,2BAA2B,KACrC,GAAU,OAAO,IAAI,EAAO,EAC5B,GAA2B,EAC7B,IAAM,EACJ,EAAE,OAAO,CACP,QAAS,EAAE,OAAO,CACpB,CAAC,CACH,CACF,EACI,GAAK,GACL,GAA4B,cAAe,GAAM,EAAc,GAAM,GAAS,GAAK,CACrF,WAAW,EACT,UAAU,kBACV,aAAa,IACb,UACA,QACA,gBACE,CAAC,EAAG,CACN,MAAM,CAAE,UAAS,aAAY,QAAO,cAAa,CAAC,EAClD,KAAK,IAAO,GAEZ,KAAK,KAAO,GACZ,KAAK,KAAO,kBACZ,KAAK,QAAU,QAEV,WAAU,CAAC,EAAO,CACvB,OAAO,EAAa,UAAU,CAAK,GAAK,MAAW,EAEvD,EAGI,GAAQ,6BACR,GAAU,2BAA2B,KACrC,GAAU,OAAO,IAAI,EAAO,EAC5B,GAAK,GACL,GAA6B,cAAe,GAAM,EAAc,GAAM,GAAS,GAAK,CACtF,WAAW,EACT,UAAU,wBACV,aAAa,IACb,QACA,gBACE,CAAC,EAAG,CACN,MAAM,CAAE,UAAS,aAAY,QAAO,cAAa,CAAC,EAClD,KAAK,IAAO,GAEZ,KAAK,KAAO,GACZ,KAAK,KAAO,8BAEP,WAAU,CAAC,EAAO,CACvB,OAAO,EAAa,UAAU,CAAK,GAAK,MAAW,EAEvD,EAGI,GAAQ,uBACR,GAAU,2BAA2B,KACrC,GAAU,OAAO,IAAI,EAAO,EAC5B,GAAK,GACL,GAAuB,cAAe,GAAM,EAAc,GAAM,GAAS,GAAK,CAChF,WAAW,EACT,UAAU,gCACV,aAAa,IACb,WACA,kBACA,QACA,gBACE,CAAC,EAAG,CACN,MAAM,CAAE,UAAS,aAAY,QAAO,cAAa,CAAC,EAClD,KAAK,IAAO,GAEZ,KAAK,KAAO,GACZ,KAAK,KAAO,iBACZ,KAAK,SAAW,EAChB,KAAK,gBAAkB,QAElB,WAAU,CAAC,EAAO,CACvB,OAAO,EAAa,UAAU,CAAK,GAAK,MAAW,EAEvD,EAQA,eAAe,EAA8B,EAC3C,WACA,aACA,iBAAiB,yBACjB,QACA,cACC,CACD,IAAI,EACJ,IAAM,EAAc,MAAM,EAAkB,CAC1C,MAAO,EACP,OAAQ,EACV,CAAC,EACD,GAAI,CAAC,EAAY,QAAS,CACxB,IAAM,EAAkB,OAAO,IAAa,UAAY,IAAa,MAAQ,iBAAkB,EAAW,EAAS,aAAoB,OACvI,OAAO,IAAI,GAAqB,CAC9B,QAAS,kCAAkC,IAC3C,aACA,WACA,gBAAiB,EAAY,MAC7B,QACA,aAAc,CAChB,CAAC,EAEH,IAAM,EAAoB,EAAY,MAChC,EAAY,EAAkB,MAAM,KACpC,EAAU,EAAkB,MAAM,QAClC,GAAgB,EAAM,EAAkB,eAAiB,KAAO,EAAW,OACjF,OAAQ,OACD,uBACH,OAAO,GAA2B,sBAAsB,CACtD,eAAgB,IAAe,UAC/B,kBAAmB,IAAe,OAClC,aACA,QACA,cACF,CAAC,MACE,wBACH,OAAO,IAAI,GAA2B,CACpC,UACA,aACA,QACA,cACF,CAAC,MACE,sBACH,OAAO,IAAI,GAAsB,CAC/B,UACA,aACA,QACA,cACF,CAAC,MACE,kBAAmB,CACtB,IAAM,EAAc,MAAM,EAAkB,CAC1C,MAAO,EAAkB,MAAM,MAC/B,OAAQ,EACV,CAAC,EACD,OAAO,IAAI,GAA0B,CACnC,UACA,aACA,QAAS,EAAY,QAAU,EAAY,MAAM,QAAe,OAChE,QACA,cACF,CAAC,CACH,KACK,wBACH,OAAO,IAAI,GAA2B,CACpC,UACA,aACA,QACA,cACF,CAAC,UAED,OAAO,IAAI,GAA2B,CACpC,UACA,aACA,QACA,cACF,CAAC,GAGP,IAAI,GAA6B,EAC/B,IAAM,EACJ,EAAG,OAAO,CACR,MAAO,EAAG,OAAO,CACf,QAAS,EAAG,OAAO,EACnB,KAAM,EAAG,OAAO,EAAE,QAAQ,EAC1B,MAAO,EAAG,QAAQ,EAAE,QAAQ,EAC5B,KAAM,EAAG,MAAM,CAAC,EAAG,OAAO,EAAG,EAAG,OAAO,CAAC,CAAC,EAAE,QAAQ,CACrD,CAAC,EACD,aAAc,EAAG,OAAO,EAAE,QAAQ,CACpC,CAAC,CACH,CACF,EAGI,GAAQ,sBACR,GAAU,2BAA2B,KACrC,GAAU,OAAO,IAAI,EAAO,EAC5B,GAAK,GACL,GAAsB,MAAM,UAA8B,GAAM,EAAc,GAAM,GAAS,GAAK,CACpG,WAAW,EACT,UAAU,oBACV,aAAa,IACb,QACA,gBACE,CAAC,EAAG,CACN,MAAM,CAAE,UAAS,aAAY,QAAO,cAAa,CAAC,EAClD,KAAK,IAAO,GAEZ,KAAK,KAAO,GACZ,KAAK,KAAO,sBAEP,WAAU,CAAC,EAAO,CACvB,OAAO,EAAa,UAAU,CAAK,GAAK,MAAW,QAK9C,mBAAkB,EACvB,kBACA,aAAa,IACb,QACA,gBACC,CACD,IAAM,EAAU,8BAA8B;AAAA;AAAA,0LAG9C,OAAO,IAAI,EAAqB,CAC9B,UACA,aACA,QACA,cACF,CAAC,EAEL,EAGA,SAAS,EAAc,CAAC,EAAO,CAC7B,GAAI,EAAE,aAAiB,OACrB,MAAO,GAET,IAAM,EAAY,EAAM,KACxB,GAAI,OAAO,IAAc,SAMvB,MAL2B,CACzB,0BACA,uBACA,yBACF,EAC0B,SAAS,CAAS,EAE9C,MAAO,GAET,eAAe,CAAc,CAAC,EAAO,EAAY,CAC/C,IAAI,EACJ,GAAI,EAAa,WAAW,CAAK,EAC/B,OAAO,EAET,GAAI,GAAe,CAAK,EACtB,OAAO,GAAoB,mBAAmB,CAC5C,gBAAiB,aAAiB,MAAQ,EAAM,QAAU,gBAC1D,MAAO,CACT,CAAC,EAEH,GAAI,EAAa,WAAW,CAAK,EAAG,CAClC,GAAI,EAAM,OAAS,GAAe,EAAM,KAAK,EAC3C,OAAO,GAAoB,mBAAmB,CAC5C,gBAAiB,EAAM,QACvB,MAAO,CACT,CAAC,EAEH,OAAO,MAAM,GAA+B,CAC1C,SAAU,GAAuB,CAAK,EACtC,YAAa,EAAM,EAAM,aAAe,KAAO,EAAM,IACrD,eAAgB,yBAChB,MAAO,EACP,YACF,CAAC,EAEH,OAAO,MAAM,GAA+B,CAC1C,SAAU,CAAC,EACX,WAAY,IACZ,eAAgB,aAAiB,MAAQ,2BAA2B,EAAM,UAAY,wBACtF,MAAO,EACP,YACF,CAAC,EAIH,SAAS,EAAsB,CAAC,EAAO,CACrC,GAAI,EAAM,OAAc,OACtB,OAAO,EAAM,KAEf,GAAI,EAAM,cAAgB,KACxB,GAAI,CACF,OAAO,KAAK,MAAM,EAAM,YAAY,EACpC,MAAO,EAAG,CACV,OAAO,EAAM,aAGjB,MAAO,CAAC,EAUV,IAAI,GAA6B,yBACjC,eAAe,CAAe,CAAC,EAAS,CACtC,IAAM,EAAS,MAAM,EAAmB,CACtC,MAAO,EAAQ,IACf,OAAQ,EACV,CAAC,EACD,OAAO,EAAO,QAAU,EAAO,MAAa,OAE9C,IAAI,GAA0B,EAC5B,IAAM,EAAW,EAAG,MAAM,CAAC,EAAG,QAAQ,SAAS,EAAG,EAAG,QAAQ,MAAM,CAAC,CAAC,CAAC,CACxE,EAcI,GAAoB,CACtB,YACA,QACA,WACA,YACA,OACF,EAGI,GAAuB,KAAM,CAC/B,WAAW,CAAC,EAAQ,CAClB,KAAK,OAAS,OAEV,mBAAkB,EAAG,CACzB,GAAI,CACF,IAAQ,SAAU,MAAM,EAAW,CACjC,IAAK,GAAG,KAAK,OAAO,iBACpB,QAAS,MAAM,EAAQ,KAAK,OAAO,QAAQ,CAAC,EAC5C,0BAA2B,EACzB,EACF,EACA,sBAAuB,EAA+B,CACpD,YAAa,EAAG,IAAI,EACpB,eAAgB,CAAC,IAAS,CAC5B,CAAC,EACD,MAAO,KAAK,OAAO,KACrB,CAAC,EACD,OAAO,EACP,MAAO,EAAO,CACd,MAAM,MAAM,EAAe,CAAK,QAG9B,WAAU,EAAG,CACjB,GAAI,CACF,IAAM,EAAU,IAAI,IAAI,KAAK,OAAO,OAAO,GACnC,SAAU,MAAM,EAAW,CACjC,IAAK,GAAG,EAAQ,oBAChB,QAAS,MAAM,EAAQ,KAAK,OAAO,QAAQ,CAAC,EAC5C,0BAA2B,EACzB,EACF,EACA,sBAAuB,EAA+B,CACpD,YAAa,EAAG,IAAI,EACpB,eAAgB,CAAC,IAAS,CAC5B,CAAC,EACD,MAAO,KAAK,OAAO,KACrB,CAAC,EACD,OAAO,EACP,MAAO,EAAO,CACd,MAAM,MAAM,EAAe,CAAK,GAGtC,EACI,GAAuC,EACzC,IAAM,EACJ,EAAG,OAAO,CACR,OAAQ,EAAG,MACT,EAAG,OAAO,CACR,GAAI,EAAG,OAAO,EACd,KAAM,EAAG,OAAO,EAChB,YAAa,EAAG,OAAO,EAAE,QAAQ,EACjC,QAAS,EAAG,OAAO,CACjB,MAAO,EAAG,OAAO,EACjB,OAAQ,EAAG,OAAO,EAClB,iBAAkB,EAAG,OAAO,EAAE,QAAQ,EACtC,kBAAmB,EAAG,OAAO,EAAE,QAAQ,CACzC,CAAC,EAAE,UACD,EAAG,QAAO,SAAQ,mBAAkB,wBAAyB,CAC3D,QACA,YACG,EAAmB,CAAE,kBAAmB,CAAiB,EAAI,CAAC,KAC9D,EAAoB,CAAE,yBAA0B,CAAkB,EAAI,CAAC,CAC5E,EACF,EAAE,QAAQ,EACV,cAAe,EAAG,OAAO,CACvB,qBAAsB,EAAG,QAAQ,IAAI,EACrC,SAAU,EAAG,OAAO,EACpB,QAAS,EAAG,OAAO,CACrB,CAAC,EACD,UAAW,EAAG,OAAO,EAAE,QAAQ,CACjC,CAAC,CACH,EAAE,UACA,CAAC,IAAW,EAAO,OACjB,CAAC,IAAM,EAAE,WAAa,MAAQ,GAAkB,SAAS,EAAE,SAAS,CACtE,CACF,CACF,CAAC,CACH,CACF,EACI,GAA+B,EACjC,IAAM,EACJ,EAAG,OAAO,CACR,QAAS,EAAG,OAAO,EACnB,WAAY,EAAG,OAAO,CACxB,CAAC,EAAE,UAAU,EAAG,UAAS,iBAAkB,CACzC,UACA,UAAW,CACb,EAAE,CACJ,CACF,EAYI,GAAqB,KAAM,CAC7B,WAAW,CAAC,EAAQ,CAClB,KAAK,OAAS,OAEV,eAAc,CAAC,EAAQ,CAC3B,GAAI,CACF,IAAM,EAAU,IAAI,IAAI,KAAK,OAAO,OAAO,EACrC,EAAe,IAAI,gBAGzB,GAFA,EAAa,IAAI,aAAc,EAAO,SAAS,EAC/C,EAAa,IAAI,WAAY,EAAO,OAAO,EACvC,EAAO,QACT,EAAa,IAAI,WAAY,EAAO,OAAO,EAE7C,GAAI,EAAO,SACT,EAAa,IAAI,YAAa,EAAO,QAAQ,EAE/C,GAAI,EAAO,OACT,EAAa,IAAI,UAAW,EAAO,MAAM,EAE3C,GAAI,EAAO,MACT,EAAa,IAAI,QAAS,EAAO,KAAK,EAExC,GAAI,EAAO,SACT,EAAa,IAAI,WAAY,EAAO,QAAQ,EAE9C,GAAI,EAAO,eACT,EAAa,IAAI,kBAAmB,EAAO,cAAc,EAE3D,GAAI,EAAO,MAAQ,EAAO,KAAK,OAAS,EACtC,EAAa,IAAI,OAAQ,EAAO,KAAK,KAAK,GAAG,CAAC,EAEhD,IAAQ,SAAU,MAAM,EAAY,CAClC,IAAK,GAAG,EAAQ,oBAAoB,EAAa,SAAS,IAC1D,QAAS,MAAM,EAAS,KAAK,OAAO,QAAQ,CAAC,EAC7C,0BAA2B,EACzB,EACF,EACA,sBAAuB,EAAgC,CACrD,YAAa,EAAG,IAAI,EACpB,eAAgB,CAAC,IAAS,CAC5B,CAAC,EACD,MAAO,KAAK,OAAO,KACrB,CAAC,EACD,OAAO,EACP,MAAO,EAAO,CACd,MAAM,MAAM,EAAe,CAAK,GAGtC,EACI,GAAmC,EACrC,IAAM,EACJ,EAAG,OAAO,CACR,QAAS,EAAG,MACV,EAAG,OAAO,CACR,IAAK,EAAG,OAAO,EAAE,SAAS,EAC1B,KAAM,EAAG,OAAO,EAAE,SAAS,EAC3B,KAAM,EAAG,OAAO,EAAE,SAAS,EAC3B,MAAO,EAAG,OAAO,EAAE,SAAS,EAC5B,IAAK,EAAG,OAAO,EAAE,SAAS,EAC1B,SAAU,EAAG,OAAO,EAAE,SAAS,EAC/B,gBAAiB,EAAG,KAAK,CAAC,OAAQ,QAAQ,CAAC,EAAE,SAAS,EACtD,WAAY,EAAG,OAAO,EACtB,YAAa,EAAG,OAAO,EAAE,SAAS,EAClC,aAAc,EAAG,OAAO,EAAE,SAAS,EACnC,cAAe,EAAG,OAAO,EAAE,SAAS,EACpC,oBAAqB,EAAG,OAAO,EAAE,SAAS,EAC1C,4BAA6B,EAAG,OAAO,EAAE,SAAS,EAClD,iBAAkB,EAAG,OAAO,EAAE,SAAS,EACvC,cAAe,EAAG,OAAO,EAAE,SAAS,CACtC,CAAC,EAAE,UACD,EACE,kBACA,aACA,cACA,eACA,gBACA,sBACA,8BACA,mBACA,mBACG,MACE,IACF,KACA,IAAyB,OAAI,CAAE,eAAgB,CAAgB,EAAI,CAAC,EACvE,UAAW,KACR,IAAqB,OAAI,CAAE,WAAY,CAAY,EAAI,CAAC,KACxD,IAAsB,OAAI,CAAE,YAAa,CAAa,EAAI,CAAC,KAC3D,IAAuB,OAAI,CAAE,aAAc,CAAc,EAAI,CAAC,KAC9D,IAA6B,OAAI,CAAE,kBAAmB,CAAoB,EAAI,CAAC,KAC/E,IAAqC,OAAI,CAAE,yBAA0B,CAA4B,EAAI,CAAC,KACtG,IAA0B,OAAI,CAAE,gBAAiB,CAAiB,EAAI,CAAC,KACvE,IAAuB,OAAI,CAAE,aAAc,CAAc,EAAI,CAAC,CACnE,EACF,CACF,CACF,CAAC,CACH,CACF,EAYI,GAA+B,KAAM,CACvC,WAAW,CAAC,EAAQ,CAClB,KAAK,OAAS,OAEV,kBAAiB,CAAC,EAAQ,CAC9B,GAAI,CACF,IAAM,EAAU,IAAI,IAAI,KAAK,OAAO,OAAO,GACnC,SAAU,MAAM,EAAY,CAClC,IAAK,GAAG,EAAQ,2BAA2B,mBAAmB,EAAO,EAAE,IACvE,QAAS,MAAM,EAAS,KAAK,OAAO,QAAQ,CAAC,EAC7C,0BAA2B,EACzB,EACF,EACA,sBAAuB,EAAgC,CACrD,YAAa,EAAG,IAAI,EACpB,eAAgB,CAAC,IAAS,CAC5B,CAAC,EACD,MAAO,KAAK,OAAO,KACrB,CAAC,EACD,OAAO,EACP,MAAO,EAAO,CACd,MAAM,MAAM,EAAe,CAAK,GAGtC,EACI,GAAsC,EACxC,IAAM,EACJ,EAAG,OAAO,CACR,KAAM,EAAG,OAAO,CACd,GAAI,EAAG,OAAO,EACd,WAAY,EAAG,OAAO,EACtB,wBAAyB,EAAG,OAAO,EACnC,MAAO,EAAG,OAAO,EACjB,WAAY,EAAG,OAAO,EACtB,MAAO,EAAG,OAAO,EACjB,QAAS,EAAG,QAAQ,EACpB,cAAe,EAAG,OAAO,EACzB,SAAU,EAAG,QAAQ,EACrB,cAAe,EAAG,OAAO,EACzB,QAAS,EAAG,OAAO,EACnB,gBAAiB,EAAG,OAAO,EAC3B,qBAAsB,EAAG,OAAO,EAChC,yBAA0B,EAAG,OAAO,EACpC,wBAAyB,EAAG,OAAO,EACnC,qBAAsB,EAAG,OAAO,EAChC,6BAA8B,EAAG,OAAO,EACxC,0BAA2B,EAAG,OAAO,CACvC,CAAC,EAAE,UACD,EACE,aACA,0BACA,aACA,UACA,gBACA,gBACA,kBACA,uBACA,2BACA,0BACA,uBACA,+BACA,+BACG,MACE,IACF,EACH,UAAW,EACX,sBAAuB,EACvB,UAAW,EACX,OAAQ,EACR,aAAc,EACd,aAAc,EACd,eAAgB,EAChB,aAAc,EACd,iBAAkB,EAClB,gBAAiB,EACjB,aAAc,EACd,oBAAqB,EACrB,uBAAwB,CAC1B,EACF,CACF,CAAC,EAAE,UAAU,EAAG,UAAW,CAAI,CACjC,CACF,EAYI,GAAuB,KAAM,CAC/B,WAAW,CAAC,EAAS,EAAQ,CAC3B,KAAK,QAAU,EACf,KAAK,OAAS,EACd,KAAK,qBAAuB,KAC5B,KAAK,cAAgB,CAAE,MAAO,CAAC,IAAI,CAAE,KAEnC,SAAQ,EAAG,CACb,OAAO,KAAK,OAAO,cAEf,QAAO,CAAC,EAAS,CACrB,IAAQ,YAAa,KAAiB,GAAyB,EAC/D,MAAO,CACL,KAAM,KAAK,qBAAqB,CAAoB,EACpD,SAAU,CAAC,CACb,OAEI,WAAU,CAAC,EAAS,CACxB,IAAQ,OAAM,YAAa,MAAM,KAAK,QAAQ,CAAO,GAC7C,eAAgB,EAClB,EAAkB,MAAM,EAAS,KAAK,OAAO,QAAQ,CAAC,EAC5D,GAAI,CACF,IACE,kBACA,MAAO,EACP,SAAU,GACR,MAAM,EAAc,CACtB,IAAK,KAAK,OAAO,EACjB,QAAS,EACP,EACA,EAAQ,QACR,KAAK,sBAAsB,KAAK,QAAS,EAAK,EAC9C,MAAM,EAAS,KAAK,OAAO,WAAW,CACxC,EACA,KAAM,EACN,0BAA2B,EAA2B,EAAG,IAAI,CAAC,EAC9D,sBAAuB,EAAgC,CACrD,YAAa,EAAG,IAAI,EACpB,eAAgB,CAAC,IAAS,CAC5B,CAAC,KACE,GAAe,CAAE,aAAY,EAChC,MAAO,KAAK,OAAO,KACrB,CAAC,EACD,MAAO,IACF,EACH,QAAS,CAAE,KAAM,CAAK,EACtB,SAAU,CAAE,QAAS,EAAiB,KAAM,CAAY,EACxD,UACF,EACA,MAAO,EAAO,CACd,MAAM,MAAM,EAAe,EAAO,MAAM,EAAgB,CAAe,CAAC,QAGtE,SAAQ,CAAC,EAAS,CACtB,IAAQ,OAAM,YAAa,MAAM,KAAK,QAAQ,CAAO,GAC7C,eAAgB,EAClB,EAAkB,MAAM,EAAS,KAAK,OAAO,QAAQ,CAAC,EAC5D,GAAI,CACF,IAAQ,MAAO,EAAU,mBAAoB,MAAM,EAAc,CAC/D,IAAK,KAAK,OAAO,EACjB,QAAS,EACP,EACA,EAAQ,QACR,KAAK,sBAAsB,KAAK,QAAS,EAAI,EAC7C,MAAM,EAAS,KAAK,OAAO,WAAW,CACxC,EACA,KAAM,EACN,0BAA2B,GAAiC,EAAG,IAAI,CAAC,EACpE,sBAAuB,EAAgC,CACrD,YAAa,EAAG,IAAI,EACpB,eAAgB,CAAC,IAAS,CAC5B,CAAC,KACE,GAAe,CAAE,aAAY,EAChC,MAAO,KAAK,OAAO,KACrB,CAAC,EACD,MAAO,CACL,OAAQ,EAAS,YACf,IAAI,gBAAgB,CAClB,KAAK,CAAC,EAAY,CAChB,GAAI,EAAS,OAAS,EACpB,EAAW,QAAQ,CAAE,KAAM,eAAgB,UAAS,CAAC,GAGzD,SAAS,CAAC,EAAO,EAAY,CAC3B,GAAI,EAAM,QAAS,CACjB,IAAM,EAAa,EAAM,MACzB,GAAI,EAAW,OAAS,OAAS,CAAC,EAAQ,iBACxC,OAEF,GAAI,EAAW,OAAS,qBAAuB,EAAW,WAAa,OAAO,EAAW,YAAc,SACrG,EAAW,UAAY,IAAI,KAAK,EAAW,SAAS,EAEtD,EAAW,QAAQ,CAAU,EAE7B,OAAW,MACT,EAAM,KACR,EAGN,CAAC,CACH,EACA,QAAS,CAAE,KAAM,CAAK,EACtB,SAAU,CAAE,QAAS,CAAgB,CACvC,EACA,MAAO,EAAO,CACd,MAAM,MAAM,EAAe,EAAO,MAAM,EAAgB,CAAe,CAAC,GAG5E,UAAU,CAAC,EAAM,CACf,OAAO,GAAQ,OAAO,IAAS,UAAY,SAAU,GAAQ,EAAK,OAAS,OAQ7E,oBAAoB,CAAC,EAAS,CAC5B,QAAW,KAAW,EAAQ,OAC5B,QAAW,KAAQ,EAAQ,QACzB,GAAI,KAAK,WAAW,CAAI,EAAG,CACzB,IAAM,EAAW,EACjB,GAAI,EAAS,gBAAgB,WAAY,CACvC,IAAM,EAAS,WAAW,KAAK,EAAS,IAAI,EACtC,EAAa,OAAO,KAAK,CAAM,EAAE,SAAS,QAAQ,EACxD,EAAS,KAAO,IAAI,IAClB,QAAQ,EAAS,WAAa,qCAAqC,GACrE,GAKR,OAAO,EAET,MAAM,EAAG,CACP,MAAO,GAAG,KAAK,OAAO,yBAExB,qBAAqB,CAAC,EAAS,EAAW,CACxC,MAAO,CACL,0CAA2C,IAC3C,uBAAwB,EACxB,8BAA+B,OAAO,CAAS,CACjD,EAEJ,EAaI,GAAwB,KAAM,CAChC,WAAW,CAAC,EAAS,EAAQ,CAC3B,KAAK,QAAU,EACf,KAAK,OAAS,EACd,KAAK,qBAAuB,KAC5B,KAAK,qBAAuB,KAC5B,KAAK,sBAAwB,MAE3B,SAAQ,EAAG,CACb,OAAO,KAAK,OAAO,cAEf,QAAO,EACX,SACA,UACA,cACA,mBACC,CACD,IAAI,EACJ,IAAM,EAAkB,MAAM,EAAS,KAAK,OAAO,QAAQ,CAAC,EAC5D,GAAI,CACF,IACE,kBACA,MAAO,EACP,YACE,MAAM,EAAe,CACvB,IAAK,KAAK,OAAO,EACjB,QAAS,EACP,EACA,GAAW,KAAO,EAAU,CAAC,EAC7B,KAAK,sBAAsB,EAC3B,MAAM,EAAS,KAAK,OAAO,WAAW,CACxC,EACA,KAAM,CACJ,YACG,EAAkB,CAAE,iBAAgB,EAAI,CAAC,CAC9C,EACA,0BAA2B,EACzB,EACF,EACA,sBAAuB,EAAgC,CACrD,YAAa,EAAG,IAAI,EACpB,eAAgB,CAAC,IAAS,CAC5B,CAAC,KACE,GAAe,CAAE,aAAY,EAChC,MAAO,KAAK,OAAO,KACrB,CAAC,EACD,MAAO,CACL,WAAY,EAAa,WACzB,OAAQ,EAAM,EAAa,QAAU,KAAO,EAAW,OACvD,iBAAkB,EAAa,iBAC/B,SAAU,CAAE,QAAS,EAAiB,KAAM,CAAS,EACrD,SAAU,CAAC,CACb,EACA,MAAO,EAAO,CACd,MAAM,MAAM,EAAe,EAAO,MAAM,EAAgB,CAAe,CAAC,GAG5E,MAAM,EAAG,CACP,MAAO,GAAG,KAAK,OAAO,0BAExB,qBAAqB,EAAG,CACtB,MAAO,CACL,2CAA4C,IAC5C,cAAe,KAAK,OACtB,EAEJ,EACI,GAAiC,EACnC,IAAM,EACJ,EAAG,OAAO,CACR,WAAY,EAAG,MAAM,EAAG,MAAM,EAAG,OAAO,CAAC,CAAC,EAC1C,MAAO,EAAG,OAAO,CAAE,OAAQ,EAAG,OAAO,CAAE,CAAC,EAAE,QAAQ,EAClD,iBAAkB,EAAG,OAAO,EAAG,OAAO,EAAG,EAAG,OAAO,EAAG,OAAO,EAAG,EAAG,QAAQ,CAAC,CAAC,EAAE,SAAS,CAC1F,CAAC,CACH,CACF,EAYI,GAAoB,KAAM,CAC5B,WAAW,CAAC,EAAS,EAAQ,CAC3B,KAAK,QAAU,EACf,KAAK,OAAS,EACd,KAAK,qBAAuB,KAE5B,KAAK,iBAAmB,OAAO,oBAE7B,SAAQ,EAAG,CACb,OAAO,KAAK,OAAO,cAEf,WAAU,EACd,SACA,IACA,OACA,cACA,OACA,QACA,OACA,kBACA,UACA,eACC,CACD,IAAI,EAAK,EAAK,EAAI,EAClB,IAAM,EAAkB,MAAM,EAAS,KAAK,OAAO,QAAQ,CAAC,EAC5D,GAAI,CACF,IACE,kBACA,MAAO,EACP,YACE,MAAM,EAAe,CACvB,IAAK,KAAK,OAAO,EACjB,QAAS,EACP,EACA,GAAW,KAAO,EAAU,CAAC,EAC7B,KAAK,sBAAsB,EAC3B,MAAM,EAAS,KAAK,OAAO,WAAW,CACxC,EACA,KAAM,CACJ,SACA,OACG,GAAQ,CAAE,MAAK,KACf,GAAe,CAAE,aAAY,KAC7B,GAAQ,CAAE,MAAK,KACf,GAAmB,CAAE,iBAAgB,KACrC,GAAS,CACV,MAAO,EAAM,IAAI,CAAC,IAAS,GAAqB,CAAI,CAAC,CACvD,KACG,GAAQ,CAAE,KAAM,GAAqB,CAAI,CAAE,CAChD,EACA,0BAA2B,EACzB,EACF,EACA,sBAAuB,EAAgC,CACrD,YAAa,EAAG,IAAI,EACpB,eAAgB,CAAC,IAAS,CAC5B,CAAC,KACE,GAAe,CAAE,aAAY,EAChC,MAAO,KAAK,OAAO,KACrB,CAAC,EACD,MAAO,CACL,OAAQ,EAAa,OAErB,UAAW,EAAM,EAAa,WAAa,KAAO,EAAM,CAAC,EACzD,iBAAkB,EAAa,iBAC/B,SAAU,CACR,UAA2B,IAAI,KAC/B,QAAS,KAAK,QACd,QAAS,CACX,KACG,EAAa,OAAS,MAAQ,CAC/B,MAAO,CACL,aAAc,EAAM,EAAa,MAAM,cAAgB,KAAO,EAAW,OACzE,cAAe,EAAK,EAAa,MAAM,eAAiB,KAAO,EAAU,OACzE,aAAc,EAAK,EAAa,MAAM,cAAgB,KAAO,EAAU,MACzE,CACF,CACF,EACA,MAAO,EAAO,CACd,MAAM,MAAM,EAAe,EAAO,MAAM,EAAgB,CAAe,CAAC,GAG5E,MAAM,EAAG,CACP,MAAO,GAAG,KAAK,OAAO,sBAExB,qBAAqB,EAAG,CACtB,MAAO,CACL,uCAAwC,IACxC,cAAe,KAAK,OACtB,EAEJ,EACA,SAAS,EAAoB,CAAC,EAAM,CAClC,GAAI,EAAK,OAAS,QAAU,EAAK,gBAAgB,WAC/C,MAAO,IACF,EACH,KAAM,EAA0B,EAAK,IAAI,CAC3C,EAEF,OAAO,EAET,IAAI,GAA8B,EAAG,OAAO,CAC1C,OAAQ,EAAG,MAAM,EAAG,QAAQ,CAAC,EAAE,SAAS,CAC1C,CAAC,EAAE,SAAS,EAAG,QAAQ,CAAC,EACpB,GAA4B,EAAG,mBAAmB,OAAQ,CAC5D,EAAG,OAAO,CACR,KAAM,EAAG,QAAQ,aAAa,EAC9B,QAAS,EAAG,OAAO,EACnB,QAAS,EAAG,OAAO,EAAE,SAAS,CAChC,CAAC,EACD,EAAG,OAAO,CACR,KAAM,EAAG,QAAQ,eAAe,EAChC,QAAS,EAAG,OAAO,EACnB,QAAS,EAAG,OAAO,EAAE,SAAS,CAChC,CAAC,EACD,EAAG,OAAO,CACR,KAAM,EAAG,QAAQ,OAAO,EACxB,QAAS,EAAG,OAAO,CACrB,CAAC,CACH,CAAC,EACG,GAA0B,EAAG,OAAO,CACtC,YAAa,EAAG,OAAO,EAAE,QAAQ,EACjC,aAAc,EAAG,OAAO,EAAE,QAAQ,EAClC,YAAa,EAAG,OAAO,EAAE,QAAQ,CACnC,CAAC,EACG,GAA6B,EAAG,OAAO,CACzC,OAAQ,EAAG,MAAM,EAAG,OAAO,CAAC,EAE5B,SAAU,EAAG,MAAM,EAAyB,EAAE,SAAS,EACvD,iBAAkB,EAAG,OAAO,EAAG,OAAO,EAAG,EAA2B,EAAE,SAAS,EAC/E,MAAO,GAAwB,SAAS,CAC1C,CAAC,EAaG,GAAoB,KAAM,CAC5B,WAAW,CAAC,EAAS,EAAQ,CAC3B,KAAK,QAAU,EACf,KAAK,OAAS,EACd,KAAK,qBAAuB,KAE5B,KAAK,iBAAmB,OAAO,oBAE7B,SAAQ,EAAG,CACb,OAAO,KAAK,OAAO,cAEf,WAAU,EACd,SACA,IACA,cACA,aACA,WACA,MACA,OACA,QACA,kBACA,UACA,eACC,CACD,IAAI,EACJ,IAAM,EAAkB,MAAM,EAAS,KAAK,OAAO,QAAQ,CAAC,EAC5D,GAAI,CACF,IAAQ,kBAAiB,MAAO,GAAiB,MAAM,EAAe,CACpE,IAAK,KAAK,OAAO,EACjB,QAAS,EACP,EACA,GAAW,KAAO,EAAU,CAAC,EAC7B,KAAK,sBAAsB,EAC3B,MAAM,EAAS,KAAK,OAAO,WAAW,EACtC,CAAE,OAAQ,mBAAoB,CAChC,EACA,KAAM,CACJ,SACA,OACG,GAAe,CAAE,aAAY,KAC7B,GAAc,CAAE,YAAW,KAC3B,GAAY,CAAE,UAAS,KACvB,GAAO,CAAE,KAAI,KACb,GAAQ,CAAE,MAAK,KACf,GAAmB,CAAE,iBAAgB,KACrC,GAAS,CAAE,MAAO,GAAqB,CAAK,CAAE,CACnD,EACA,0BAA2B,OACzB,WACA,MACA,uBACI,CACJ,GAAI,EAAS,MAAQ,KACnB,MAAM,IAAI,EAAc,CACtB,QAAS,6BACT,MACA,oBACA,WAAY,EAAS,MACvB,CAAC,EAMH,IAAM,EAJc,GAAqB,CACvC,OAAQ,EAAS,KACjB,OAAQ,EACV,CAAC,EAC0B,UAAU,GAC7B,OAAM,MAAO,GAAgB,MAAM,EAAO,KAAK,EAEvD,GADA,EAAO,YAAY,EACf,GAAQ,CAAC,EACX,MAAM,IAAI,EAAc,CACtB,QAAS,wCACT,MACA,oBACA,WAAY,EAAS,MACvB,CAAC,EAEH,GAAI,CAAC,EAAY,QACf,MAAM,IAAI,EAAc,CACtB,QAAS,kCACT,MAAO,EAAY,MACnB,MACA,oBACA,WAAY,EAAS,MACvB,CAAC,EAEH,IAAM,EAAQ,EAAY,MAC1B,GAAI,EAAM,OAAS,QACjB,MAAM,IAAI,EAAc,CACtB,QAAS,EAAM,QACf,WAAY,EAAM,WAClB,MACA,oBACA,gBAAiB,OAAO,YAAY,CAAC,GAAG,EAAS,OAAO,CAAC,EACzD,aAAc,KAAK,UAAU,CAAK,EAClC,KAAM,CACJ,MAAO,CACL,QAAS,EAAM,QACf,KAAM,EAAM,UACZ,MAAO,EAAM,KACf,CACF,CACF,CAAC,EAEH,MAAO,CACL,MAAO,CACL,OAAQ,EAAM,OACd,SAAU,EAAM,SAChB,iBAAkB,EAAM,gBAC1B,EACA,gBAAiB,OAAO,YAAY,CAAC,GAAG,EAAS,OAAO,CAAC,CAC3D,GAEF,sBAAuB,EAAgC,CACrD,YAAa,EAAI,IAAI,EACrB,eAAgB,CAAC,IAAS,CAC5B,CAAC,KACE,GAAe,CAAE,aAAY,EAChC,MAAO,KAAK,OAAO,KACrB,CAAC,EACD,MAAO,CACL,OAAQ,EAAa,OACrB,UAAW,EAAM,EAAa,WAAa,KAAO,EAAM,CAAC,EACzD,iBAAkB,EAAa,iBAC/B,SAAU,CACR,UAA2B,IAAI,KAC/B,QAAS,KAAK,QACd,QAAS,CACX,CACF,EACA,MAAO,EAAO,CACd,MAAM,MAAM,EAAe,EAAO,MAAM,EAAgB,CAAe,CAAC,GAG5E,MAAM,EAAG,CACP,MAAO,GAAG,KAAK,OAAO,sBAExB,qBAAqB,EAAG,CACtB,MAAO,CACL,uCAAwC,IACxC,cAAe,KAAK,OACtB,EAEJ,EACA,SAAS,EAAoB,CAAC,EAAM,CAClC,GAAI,EAAK,OAAS,QAAU,EAAK,gBAAgB,WAC/C,MAAO,IACF,EACH,KAAM,EAA2B,EAAK,IAAI,CAC5C,EAEF,OAAO,EAET,IAAI,GAA+B,EAAI,OAAO,CAC5C,OAAQ,EAAI,MAAM,EAAI,QAAQ,CAAC,EAAE,SAAS,CAC5C,CAAC,EAAE,SAAS,EAAI,QAAQ,CAAC,EACrB,GAAyB,EAAI,MAAM,CACrC,EAAI,OAAO,CACT,KAAM,EAAI,QAAQ,KAAK,EACvB,IAAK,EAAI,OAAO,EAChB,UAAW,EAAI,OAAO,CACxB,CAAC,EACD,EAAI,OAAO,CACT,KAAM,EAAI,QAAQ,QAAQ,EAC1B,KAAM,EAAI,OAAO,EACjB,UAAW,EAAI,OAAO,CACxB,CAAC,CACH,CAAC,EACG,GAA4B,EAAI,mBAAmB,OAAQ,CAC7D,EAAI,OAAO,CACT,KAAM,EAAI,QAAQ,aAAa,EAC/B,QAAS,EAAI,OAAO,EACpB,QAAS,EAAI,OAAO,EAAE,SAAS,CACjC,CAAC,EACD,EAAI,OAAO,CACT,KAAM,EAAI,QAAQ,eAAe,EACjC,QAAS,EAAI,OAAO,EACpB,QAAS,EAAI,OAAO,EAAE,SAAS,CACjC,CAAC,EACD,EAAI,OAAO,CACT,KAAM,EAAI,QAAQ,OAAO,EACzB,QAAS,EAAI,OAAO,CACtB,CAAC,CACH,CAAC,EACG,GAA0B,EAAI,mBAAmB,OAAQ,CAC3D,EAAI,OAAO,CACT,KAAM,EAAI,QAAQ,QAAQ,EAC1B,OAAQ,EAAI,MAAM,EAAsB,EACxC,SAAU,EAAI,MAAM,EAAyB,EAAE,SAAS,EACxD,iBAAkB,EAAI,OAAO,EAAI,OAAO,EAAG,EAA4B,EAAE,SAAS,CACpF,CAAC,EACD,EAAI,OAAO,CACT,KAAM,EAAI,QAAQ,OAAO,EACzB,QAAS,EAAI,OAAO,EACpB,UAAW,EAAI,OAAO,EACtB,WAAY,EAAI,OAAO,EACvB,MAAO,EAAI,QAAQ,EAAE,SAAS,CAChC,CAAC,CACH,CAAC,EAaG,GAAwB,KAAM,CAChC,WAAW,CAAC,EAAS,EAAQ,CAC3B,KAAK,QAAU,EACf,KAAK,OAAS,EACd,KAAK,qBAAuB,QAE1B,SAAQ,EAAG,CACb,OAAO,KAAK,OAAO,cAEf,SAAQ,EACZ,YACA,QACA,OACA,UACA,cACA,mBACC,CACD,IAAM,EAAkB,MAAM,EAAS,KAAK,OAAO,QAAQ,CAAC,EAC5D,GAAI,CACF,IACE,kBACA,MAAO,EACP,YACE,MAAM,EAAe,CACvB,IAAK,KAAK,OAAO,EACjB,QAAS,EACP,EACA,GAAW,KAAO,EAAU,CAAC,EAC7B,KAAK,sBAAsB,EAC3B,MAAM,EAAS,KAAK,OAAO,WAAW,CACxC,EACA,KAAM,CACJ,YACA,WACG,GAAQ,KAAO,CAAE,MAAK,EAAI,CAAC,KAC3B,EAAkB,CAAE,iBAAgB,EAAI,CAAC,CAC9C,EACA,0BAA2B,EACzB,EACF,EACA,sBAAuB,EAAgC,CACrD,YAAa,EAAI,IAAI,EACrB,eAAgB,CAAC,IAAS,CAC5B,CAAC,KACE,GAAe,CAAE,aAAY,EAChC,MAAO,KAAK,OAAO,KACrB,CAAC,EACD,MAAO,CACL,QAAS,EAAa,QACtB,iBAAkB,EAAa,iBAC/B,SAAU,CAAE,QAAS,EAAiB,KAAM,CAAS,EACrD,SAAU,CAAC,CACb,EACA,MAAO,EAAO,CACd,MAAM,MAAM,EAAe,EAAO,MAAM,EAAgB,CAAe,CAAC,GAG5E,MAAM,EAAG,CACP,MAAO,GAAG,KAAK,OAAO,0BAExB,qBAAqB,EAAG,CACtB,MAAO,CACL,2CAA4C,IAC5C,cAAe,KAAK,OACtB,EAEJ,EACI,GAAiC,EACnC,IAAM,EACJ,EAAI,OAAO,CACT,QAAS,EAAI,MACX,EAAI,OAAO,CACT,MAAO,EAAI,OAAO,EAClB,eAAgB,EAAI,OAAO,CAC7B,CAAC,CACH,EACA,iBAAkB,EAAI,OAAO,EAAI,OAAO,EAAG,EAAI,OAAO,EAAI,OAAO,EAAG,EAAI,QAAQ,CAAC,CAAC,EAAE,SAAS,CAC/F,CAAC,CACH,CACF,EASI,GAA4B,EAC9B,IAAM,EACJ,EAAI,OAAO,CACT,UAAW,EAAI,OAAO,EAAE,SACtB,2JACF,EACA,eAAgB,EAAI,MAAM,EAAI,OAAO,CAAC,EAAE,SAAS,EAAE,SACjD,wFACF,EACA,KAAM,EAAI,KAAK,CAAC,WAAY,SAAS,CAAC,EAAE,SAAS,EAAE,SACjD,4JACF,EACA,YAAa,EAAI,OAAO,EAAE,SAAS,EAAE,SACnC,8EACF,EACA,cAAe,EAAI,OAAO,CACxB,gBAAiB,EAAI,MAAM,EAAI,OAAO,CAAC,EAAE,SAAS,EAAE,SAAS,+CAA+C,EAC5G,gBAAiB,EAAI,MAAM,EAAI,OAAO,CAAC,EAAE,SAAS,EAAE,SAAS,iDAAiD,EAC9G,WAAY,EAAI,OAAO,EAAE,SAAS,EAAE,SAClC,mEACF,CACF,CAAC,EAAE,SAAS,EAAE,SACZ,+EACF,EACA,SAAU,EAAI,OAAO,CACnB,qBAAsB,EAAI,OAAO,EAAE,SAAS,EAAE,SAAS,gCAAgC,EACvF,gBAAiB,EAAI,OAAO,EAAE,SAAS,EAAE,SAAS,8CAA8C,CAClG,CAAC,EAAE,SAAS,EAAE,SAAS,sDAAsD,EAC7E,aAAc,EAAI,OAAO,CACvB,gBAAiB,EAAI,OAAO,EAAE,SAAS,EAAE,SACvC,oFACF,CACF,CAAC,EAAE,SAAS,EAAE,SAAS,iDAAiD,CAC1E,CAAC,CACH,CACF,EACI,GAA6B,EAC/B,IAAM,EACJ,EAAI,MAAM,CAER,EAAI,OAAO,CACT,SAAU,EAAI,OAAO,EACrB,QAAS,EAAI,MACX,EAAI,OAAO,CACT,IAAK,EAAI,OAAO,EAChB,MAAO,EAAI,OAAO,EAClB,QAAS,EAAI,OAAO,EACpB,YAAa,EAAI,OAAO,EAAE,SAAS,EAAE,SAAS,EAC9C,eAAgB,EAAI,OAAO,EAAE,SAAS,CACxC,CAAC,CACH,CACF,CAAC,EAED,EAAI,OAAO,CACT,MAAO,EAAI,KAAK,CACd,YACA,aACA,UACA,gBACA,sBACA,SACF,CAAC,EACD,WAAY,EAAI,OAAO,EAAE,SAAS,EAClC,QAAS,EAAI,OAAO,CACtB,CAAC,CACH,CAAC,CACH,CACF,EACI,GAA4B,EAA0C,CACxE,GAAI,0BACJ,YAAa,GACb,aAAc,EAChB,CAAC,EACG,GAAiB,CAAC,EAAS,CAAC,IAAM,GAA0B,CAAM,EASlE,GAA8B,EAChC,IAAM,EACJ,EAAI,OAAO,CACT,MAAO,EAAI,MAAM,CAAC,EAAI,OAAO,EAAG,EAAI,MAAM,EAAI,OAAO,CAAC,CAAC,CAAC,EAAE,SACxD,sIACF,EACA,YAAa,EAAI,OAAO,EAAE,SAAS,EAAE,SACnC,gEACF,EACA,oBAAqB,EAAI,OAAO,EAAE,SAAS,EAAE,SAC3C,sFACF,EACA,WAAY,EAAI,OAAO,EAAE,SAAS,EAAE,SAClC,+EACF,EACA,QAAS,EAAI,OAAO,EAAE,SAAS,EAAE,SAC/B,iGACF,EACA,qBAAsB,EAAI,MAAM,EAAI,OAAO,CAAC,EAAE,SAAS,EAAE,SACvD,0JACF,EACA,uBAAwB,EAAI,MAAM,EAAI,OAAO,CAAC,EAAE,SAAS,EAAE,SACzD,sGACF,EACA,kBAAmB,EAAI,OAAO,EAAE,SAAS,EAAE,SACzC,qIACF,EACA,mBAAoB,EAAI,OAAO,EAAE,SAAS,EAAE,SAC1C,uIACF,EACA,0BAA2B,EAAI,OAAO,EAAE,SAAS,EAAE,SACjD,wIACF,EACA,2BAA4B,EAAI,OAAO,EAAE,SAAS,EAAE,SAClD,0IACF,EACA,sBAAuB,EAAI,KAAK,CAAC,MAAO,OAAQ,QAAS,MAAM,CAAC,EAAE,SAAS,EAAE,SAC3E,sGACF,CACF,CAAC,CACH,CACF,EACI,GAA+B,EACjC,IAAM,EACJ,EAAI,MAAM,CAER,EAAI,OAAO,CACT,QAAS,EAAI,MACX,EAAI,OAAO,CACT,MAAO,EAAI,OAAO,EAClB,IAAK,EAAI,OAAO,EAChB,QAAS,EAAI,OAAO,EACpB,KAAM,EAAI,OAAO,EAAE,SAAS,EAC5B,YAAa,EAAI,OAAO,EAAE,SAAS,CACrC,CAAC,CACH,EACA,GAAI,EAAI,OAAO,CACjB,CAAC,EAED,EAAI,OAAO,CACT,MAAO,EAAI,KAAK,CACd,YACA,aACA,UACA,gBACA,SACF,CAAC,EACD,WAAY,EAAI,OAAO,EAAE,SAAS,EAClC,QAAS,EAAI,OAAO,CACtB,CAAC,CACH,CAAC,CACH,CACF,EACI,GAA8B,EAA2C,CAC3E,GAAI,4BACJ,YAAa,GACb,aAAc,EAChB,CAAC,EACG,GAAmB,CAAC,EAAS,CAAC,IAAM,GAA4B,CAAM,EAGtE,GAAe,CASjB,kBAQA,mBACF,EAKA,eAAe,EAAkB,EAAG,CAClC,IAAI,EACJ,OAAQ,EAAM,cAAW,EAAE,UAAY,KAAY,OAAI,EAAI,eAO7D,IAAI,GAAiB,UAGjB,GAA8B,QAClC,SAAS,EAAqB,CAAC,EAAU,CAAC,EAAG,CAC3C,IAAI,EAAK,EACT,IAAI,EAAkB,KAClB,EAAgB,KACd,GAAsB,EAAM,EAAQ,6BAA+B,KAAO,EAAM,OAClF,EAAgB,EACd,GAAW,EAAM,GAAqB,EAAQ,OAAO,IAAM,KAAO,EAAM,qCACxE,EAAa,SAAY,CAC7B,GAAI,CACF,IAAM,EAAO,MAAM,GAAoB,CAAO,EAC9C,OAAO,GACL,CACE,cAAe,UAAU,EAAK,QAC9B,8BAA+B,IAC9B,IAA6B,EAAK,cAChC,EAAQ,OACb,EACA,kBAAkB,IACpB,EACA,MAAO,EAAO,CACd,MAAM,GAA2B,sBAAsB,CACrD,eAAgB,GAChB,kBAAmB,GACnB,WAAY,IACZ,MAAO,CACT,CAAC,IAGC,EAAoB,IAAM,CAC9B,IAAM,EAAe,EAAoB,CACvC,aAAmB,OACnB,wBAAyB,sBAC3B,CAAC,EACK,EAAc,EAAoB,CACtC,aAAmB,OACnB,wBAAyB,YAC3B,CAAC,EACK,EAAS,EAAoB,CACjC,aAAmB,OACnB,wBAAyB,eAC3B,CAAC,EACK,EAAY,EAAoB,CACpC,aAAmB,OACnB,wBAAyB,mBAC3B,CAAC,EACD,MAAO,UAAY,CACjB,IAAM,EAAY,MAAM,GAAmB,EAC3C,MAAO,IACF,GAAgB,CAAE,wBAAyB,CAAa,KACxD,GAAe,CAAE,sBAAuB,CAAY,KACpD,GAAU,CAAE,iBAAkB,CAAO,KACrC,GAAa,CAAE,qBAAsB,CAAU,KAC/C,GAAa,CAAE,qBAAsB,CAAU,CACpD,IAGE,EAAsB,CAAC,IAAY,CACvC,OAAO,IAAI,GAAqB,EAAS,CACvC,SAAU,UACV,UACA,QAAS,EACT,MAAO,EAAQ,MACf,YAAa,EAAkB,CACjC,CAAC,GAEG,EAAqB,SAAY,CACrC,IAAI,EAAM,EAAM,EAChB,IAAM,GAAO,GAAM,GAAQ,EAAO,EAAQ,YAAc,KAAY,OAAI,EAAK,cAAgB,KAAY,OAAI,EAAK,KAAK,CAAI,EAAE,QAAQ,IAAM,KAAO,EAAK,KAAK,IAAI,EAChK,GAAI,CAAC,GAAmB,EAAM,EAAgB,EAC5C,EAAgB,EAChB,EAAkB,IAAI,GAAqB,CACzC,UACA,QAAS,EACT,MAAO,EAAQ,KACjB,CAAC,EAAE,mBAAmB,EAAE,KAAK,CAAC,IAAa,CAEzC,OADA,EAAgB,EACT,EACR,EAAE,MAAM,MAAO,IAAU,CACxB,MAAM,MAAM,EACV,EACA,MAAM,EAAgB,MAAM,EAAW,CAAC,CAC1C,EACD,EAEH,OAAO,EAAgB,QAAQ,QAAQ,CAAa,EAAI,GAEpD,EAAa,SAAY,CAC7B,OAAO,IAAI,GAAqB,CAC9B,UACA,QAAS,EACT,MAAO,EAAQ,KACjB,CAAC,EAAE,WAAW,EAAE,MAAM,MAAO,IAAU,CACrC,MAAM,MAAM,EACV,EACA,MAAM,EAAgB,MAAM,EAAW,CAAC,CAC1C,EACD,GAEG,EAAiB,MAAO,IAAW,CACvC,OAAO,IAAI,GAAmB,CAC5B,UACA,QAAS,EACT,MAAO,EAAQ,KACjB,CAAC,EAAE,eAAe,CAAM,EAAE,MAAM,MAAO,IAAU,CAC/C,MAAM,MAAM,EACV,EACA,MAAM,EAAgB,MAAM,EAAW,CAAC,CAC1C,EACD,GAEG,EAAoB,MAAO,IAAW,CAC1C,OAAO,IAAI,GAA6B,CACtC,UACA,QAAS,EACT,MAAO,EAAQ,KACjB,CAAC,EAAE,kBAAkB,CAAM,EAAE,MAAM,MAAO,IAAU,CAClD,MAAM,MAAM,EACV,EACA,MAAM,EAAgB,MAAM,EAAW,CAAC,CAC1C,EACD,GAEG,EAAW,QAAQ,CAAC,EAAS,CACjC,GAAI,WACF,MAAU,MACR,4EACF,EAEF,OAAO,EAAoB,CAAO,GAEpC,EAAS,qBAAuB,KAChC,EAAS,mBAAqB,EAC9B,EAAS,WAAa,EACtB,EAAS,eAAiB,EAC1B,EAAS,kBAAoB,EAC7B,EAAS,WAAa,CAAC,IAAY,CACjC,OAAO,IAAI,GAAkB,EAAS,CACpC,SAAU,UACV,UACA,QAAS,EACT,MAAO,EAAQ,MACf,YAAa,EAAkB,CACjC,CAAC,GAEH,EAAS,cAAgB,EACzB,IAAM,EAAuB,CAAC,IAAY,CACxC,OAAO,IAAI,GAAsB,EAAS,CACxC,SAAU,UACV,UACA,QAAS,EACT,MAAO,EAAQ,MACf,YAAa,EAAkB,CACjC,CAAC,GAEH,EAAS,eAAiB,EAC1B,EAAS,mBAAqB,EAC9B,EAAS,WAAa,CAAC,IAAY,CACjC,OAAO,IAAI,GAAkB,EAAS,CACpC,SAAU,UACV,UACA,QAAS,EACT,MAAO,EAAQ,MACf,YAAa,EAAkB,CACjC,CAAC,GAEH,IAAM,EAAuB,CAAC,IAAY,CACxC,OAAO,IAAI,GAAsB,EAAS,CACxC,SAAU,UACV,UACA,QAAS,EACT,MAAO,EAAQ,MACf,YAAa,EAAkB,CACjC,CAAC,GASH,OAPA,EAAS,eAAiB,EAC1B,EAAS,UAAY,EACrB,EAAS,KAAO,EAAS,cACzB,EAAS,UAAY,EAAS,eAC9B,EAAS,MAAQ,EAAS,WAC1B,EAAS,MAAQ,EAAS,WAC1B,EAAS,MAAQ,GACV,EAET,IAAI,GAAU,GAAsB,EACpC,eAAe,EAAmB,CAAC,EAAS,CAC1C,IAAM,EAAS,EAAoB,CACjC,aAAc,EAAQ,OACtB,wBAAyB,oBAC3B,CAAC,EACD,GAAI,EACF,MAAO,CACL,MAAO,EACP,WAAY,SACd,EAGF,MAAO,CACL,MAFgB,MAAM,sBAAmB,EAGzC,WAAY,MACd",
11
+ "debugId": "5A23FAE0DDD310E164756E2164756E21",
12
+ "names": []
13
+ }
@@ -0,0 +1,10 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../core/src/database/migration/20260428004200_add_session_path.ts"],
4
+ "sourcesContent": [
5
+ "import { Effect } from \"effect\"\nimport type { DatabaseMigration } from \"../migration\"\n\nexport default {\n id: \"20260428004200_add_session_path\",\n up(tx) {\n return Effect.gen(function* () {\n yield* tx.run(`ALTER TABLE \\`session\\` ADD \\`path\\` text;`)\n })\n },\n} satisfies DatabaseMigration.Migration\n"
6
+ ],
7
+ "mappings": ";wHAGA,SAAe,QACb,GAAI,kCACJ,EAAE,CAAC,EAAI,CACL,OAAO,EAAO,IAAI,SAAU,EAAG,CAC7B,MAAO,EAAG,IAAI,wCAA4C,EAC3D,EAEL",
8
+ "debugId": "353AC1FD975A97E164756E2164756E21",
9
+ "names": []
10
+ }
@@ -0,0 +1,37 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../node_modules/.bun/@opentelemetry+sdk-trace-node@2.6.1+460773ef8ff1e07c/node_modules/@opentelemetry/sdk-trace-node/build/src/NodeTracerProvider.js", "../../node_modules/.bun/@opentelemetry+sdk-trace-node@2.6.1+460773ef8ff1e07c/node_modules/@opentelemetry/sdk-trace-node/build/src/index.js", "../../node_modules/.bun/@effect+opentelemetry@4.0.0-beta.74+216b5fc669d139f4/node_modules/@effect/opentelemetry/dist/NodeSdk.js", "../../node_modules/.bun/@effect+opentelemetry@4.0.0-beta.74+216b5fc669d139f4/node_modules/@effect/opentelemetry/dist/internal/utilities.js", "../../node_modules/.bun/@opentelemetry+api-logs@0.214.0/node_modules/@opentelemetry/api-logs/build/esm/types/LogRecord.js", "../../node_modules/.bun/@opentelemetry+api-logs@0.214.0/node_modules/@opentelemetry/api-logs/build/esm/NoopLogger.js", "../../node_modules/.bun/@opentelemetry+api-logs@0.214.0/node_modules/@opentelemetry/api-logs/build/esm/internal/global-utils.js", "../../node_modules/.bun/@opentelemetry+api-logs@0.214.0/node_modules/@opentelemetry/api-logs/build/esm/NoopLoggerProvider.js", "../../node_modules/.bun/@opentelemetry+api-logs@0.214.0/node_modules/@opentelemetry/api-logs/build/esm/ProxyLogger.js", "../../node_modules/.bun/@opentelemetry+api-logs@0.214.0/node_modules/@opentelemetry/api-logs/build/esm/ProxyLoggerProvider.js", "../../node_modules/.bun/@opentelemetry+api-logs@0.214.0/node_modules/@opentelemetry/api-logs/build/esm/api/logs.js", "../../node_modules/.bun/@opentelemetry+api-logs@0.214.0/node_modules/@opentelemetry/api-logs/build/esm/index.js", "../../node_modules/.bun/@opentelemetry+sdk-logs@0.214.0+460773ef8ff1e07c/node_modules/@opentelemetry/sdk-logs/build/esm/LoggerProvider.js", "../../node_modules/.bun/@opentelemetry+sdk-logs@0.214.0+460773ef8ff1e07c/node_modules/@opentelemetry/sdk-logs/build/esm/Logger.js", "../../node_modules/.bun/@opentelemetry+sdk-logs@0.214.0+460773ef8ff1e07c/node_modules/@opentelemetry/sdk-logs/build/esm/LogRecordImpl.js", "../../node_modules/.bun/@opentelemetry+sdk-logs@0.214.0+460773ef8ff1e07c/node_modules/@opentelemetry/sdk-logs/build/esm/utils/validation.js", "../../node_modules/.bun/@opentelemetry+sdk-logs@0.214.0+460773ef8ff1e07c/node_modules/@opentelemetry/sdk-logs/build/esm/export/NoopLogRecordProcessor.js", "../../node_modules/.bun/@opentelemetry+sdk-logs@0.214.0+460773ef8ff1e07c/node_modules/@opentelemetry/sdk-logs/build/esm/MultiLogRecordProcessor.js", "../../node_modules/.bun/@opentelemetry+sdk-logs@0.214.0+460773ef8ff1e07c/node_modules/@opentelemetry/sdk-logs/build/esm/internal/utils.js", "../../node_modules/.bun/@opentelemetry+sdk-logs@0.214.0+460773ef8ff1e07c/node_modules/@opentelemetry/sdk-logs/build/esm/internal/LoggerProviderSharedState.js", "../../node_modules/.bun/@effect+opentelemetry@4.0.0-beta.74+216b5fc669d139f4/node_modules/@effect/opentelemetry/dist/internal/attributes.js", "../../node_modules/.bun/@effect+opentelemetry@4.0.0-beta.74+216b5fc669d139f4/node_modules/@effect/opentelemetry/dist/Resource.js", "../../node_modules/.bun/@effect+opentelemetry@4.0.0-beta.74+216b5fc669d139f4/node_modules/@effect/opentelemetry/dist/Logger.js", "../../node_modules/.bun/@effect+opentelemetry@4.0.0-beta.74+216b5fc669d139f4/node_modules/@effect/opentelemetry/dist/internal/metrics.js", "../../node_modules/.bun/@opentelemetry+sdk-metrics@2.6.1+460773ef8ff1e07c/node_modules/@opentelemetry/sdk-metrics/build/esm/export/AggregationTemporality.js", "../../node_modules/.bun/@opentelemetry+sdk-metrics@2.6.1+460773ef8ff1e07c/node_modules/@opentelemetry/sdk-metrics/build/esm/export/MetricData.js", "../../node_modules/.bun/@effect+opentelemetry@4.0.0-beta.74+216b5fc669d139f4/node_modules/@effect/opentelemetry/dist/Metrics.js", "../../node_modules/.bun/@effect+opentelemetry@4.0.0-beta.74+216b5fc669d139f4/node_modules/@effect/opentelemetry/dist/Tracer.js"],
4
+ "sourcesContent": [
5
+ "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.NodeTracerProvider = void 0;\n/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nconst context_async_hooks_1 = require(\"@opentelemetry/context-async-hooks\");\nconst sdk_trace_base_1 = require(\"@opentelemetry/sdk-trace-base\");\nconst api_1 = require(\"@opentelemetry/api\");\nconst core_1 = require(\"@opentelemetry/core\");\nfunction setupContextManager(contextManager) {\n // null means 'do not register'\n if (contextManager === null) {\n return;\n }\n // undefined means 'register default'\n if (contextManager === undefined) {\n const defaultContextManager = new context_async_hooks_1.AsyncLocalStorageContextManager();\n defaultContextManager.enable();\n api_1.context.setGlobalContextManager(defaultContextManager);\n return;\n }\n contextManager.enable();\n api_1.context.setGlobalContextManager(contextManager);\n}\nfunction setupPropagator(propagator) {\n // null means 'do not register'\n if (propagator === null) {\n return;\n }\n // undefined means 'register default'\n if (propagator === undefined) {\n api_1.propagation.setGlobalPropagator(new core_1.CompositePropagator({\n propagators: [\n new core_1.W3CTraceContextPropagator(),\n new core_1.W3CBaggagePropagator(),\n ],\n }));\n return;\n }\n api_1.propagation.setGlobalPropagator(propagator);\n}\n/**\n * Register this TracerProvider for use with the OpenTelemetry API.\n * Undefined values may be replaced with defaults, and\n * null values will be skipped.\n *\n * @param config Configuration object for SDK registration\n */\nclass NodeTracerProvider extends sdk_trace_base_1.BasicTracerProvider {\n constructor(config = {}) {\n super(config);\n }\n /**\n * Register this TracerProvider for use with the OpenTelemetry API.\n * Undefined values may be replaced with defaults, and\n * null values will be skipped.\n *\n * @param config Configuration object for SDK registration\n */\n register(config = {}) {\n api_1.trace.setGlobalTracerProvider(this);\n setupContextManager(config.contextManager);\n setupPropagator(config.propagator);\n }\n}\nexports.NodeTracerProvider = NodeTracerProvider;\n//# sourceMappingURL=NodeTracerProvider.js.map",
6
+ "\"use strict\";\n/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.TraceIdRatioBasedSampler = exports.SimpleSpanProcessor = exports.SamplingDecision = exports.RandomIdGenerator = exports.ParentBasedSampler = exports.NoopSpanProcessor = exports.InMemorySpanExporter = exports.ConsoleSpanExporter = exports.BatchSpanProcessor = exports.BasicTracerProvider = exports.AlwaysOnSampler = exports.AlwaysOffSampler = exports.NodeTracerProvider = void 0;\nvar NodeTracerProvider_1 = require(\"./NodeTracerProvider\");\nObject.defineProperty(exports, \"NodeTracerProvider\", { enumerable: true, get: function () { return NodeTracerProvider_1.NodeTracerProvider; } });\nvar sdk_trace_base_1 = require(\"@opentelemetry/sdk-trace-base\");\nObject.defineProperty(exports, \"AlwaysOffSampler\", { enumerable: true, get: function () { return sdk_trace_base_1.AlwaysOffSampler; } });\nObject.defineProperty(exports, \"AlwaysOnSampler\", { enumerable: true, get: function () { return sdk_trace_base_1.AlwaysOnSampler; } });\nObject.defineProperty(exports, \"BasicTracerProvider\", { enumerable: true, get: function () { return sdk_trace_base_1.BasicTracerProvider; } });\nObject.defineProperty(exports, \"BatchSpanProcessor\", { enumerable: true, get: function () { return sdk_trace_base_1.BatchSpanProcessor; } });\nObject.defineProperty(exports, \"ConsoleSpanExporter\", { enumerable: true, get: function () { return sdk_trace_base_1.ConsoleSpanExporter; } });\nObject.defineProperty(exports, \"InMemorySpanExporter\", { enumerable: true, get: function () { return sdk_trace_base_1.InMemorySpanExporter; } });\nObject.defineProperty(exports, \"NoopSpanProcessor\", { enumerable: true, get: function () { return sdk_trace_base_1.NoopSpanProcessor; } });\nObject.defineProperty(exports, \"ParentBasedSampler\", { enumerable: true, get: function () { return sdk_trace_base_1.ParentBasedSampler; } });\nObject.defineProperty(exports, \"RandomIdGenerator\", { enumerable: true, get: function () { return sdk_trace_base_1.RandomIdGenerator; } });\nObject.defineProperty(exports, \"SamplingDecision\", { enumerable: true, get: function () { return sdk_trace_base_1.SamplingDecision; } });\nObject.defineProperty(exports, \"SimpleSpanProcessor\", { enumerable: true, get: function () { return sdk_trace_base_1.SimpleSpanProcessor; } });\nObject.defineProperty(exports, \"TraceIdRatioBasedSampler\", { enumerable: true, get: function () { return sdk_trace_base_1.TraceIdRatioBasedSampler; } });\n//# sourceMappingURL=index.js.map",
7
+ "import { NodeTracerProvider } from \"@opentelemetry/sdk-trace-node\";\nimport * as Effect from \"effect/Effect\";\nimport { constant } from \"effect/Function\";\nimport * as Layer from \"effect/Layer\";\nimport { isNonEmpty } from \"./internal/utilities.js\";\nimport * as Logger from \"./Logger.js\";\nimport * as Metrics from \"./Metrics.js\";\nimport * as Resource from \"./Resource.js\";\nimport * as Tracer from \"./Tracer.js\";\n/**\n * Creates a scoped Node OpenTelemetry tracer provider from one or more span processors and shuts it down when the layer is released.\n *\n * @category layers\n * @since 4.0.0\n */\nexport const layerTracerProvider = (processor, config) => Layer.effect(Tracer.OtelTracerProvider, Effect.gen(function* () {\n const resource = yield* Resource.Resource;\n return yield* Effect.acquireRelease(Effect.sync(() => {\n const provider = new NodeTracerProvider({\n ...(config ?? undefined),\n resource,\n spanProcessors: Array.isArray(processor) ? processor : [processor]\n });\n return provider;\n }), provider => Effect.promise(() => provider.forceFlush().then(() => provider.shutdown())).pipe(Effect.ignore, Effect.interruptible, Effect.timeoutOption(config?.shutdownTimeout ?? 3000)));\n}));\n/**\n * Creates a Node OpenTelemetry layer from configuration, enabling tracing, metrics, and logging only when their processors or readers are supplied.\n *\n * **When to use**\n *\n * Use to install OpenTelemetry support for a Node.js Effect application from\n * one configuration object, enabling tracing, metrics, logging, or any\n * combination of those signals based on the processors and readers supplied.\n *\n * **Details**\n *\n * The configuration can be provided lazily or effectfully. The layer always\n * provides `Resource.Resource`, building it from environment variables and any\n * explicit resource metadata in the configuration.\n *\n * **Gotchas**\n *\n * Register Node auto-instrumentations before importing modules that should be\n * patched, because many Node instrumentations hook module loading.\n *\n * @category layers\n * @since 4.0.0\n */\nexport const layer = evaluate => Layer.unwrap(Effect.gen(function* () {\n const config = yield* Effect.isEffect(evaluate) ? evaluate : Effect.sync(evaluate);\n const ResourceLive = Resource.layerFromEnv(config.resource && Resource.configToAttributes(config.resource));\n const TracerLive = isNonEmpty(config.spanProcessor) ? Layer.provide(Tracer.layer, layerTracerProvider(config.spanProcessor, {\n ...config.tracerConfig,\n shutdownTimeout: config.shutdownTimeout\n })) : Layer.empty;\n const MetricsLive = isNonEmpty(config.metricReader) ? Metrics.layer(constant(config.metricReader), {\n shutdownTimeout: config.shutdownTimeout,\n temporality: config.metricTemporality\n }) : Layer.empty;\n const LoggerLive = isNonEmpty(config.logRecordProcessor) ? Layer.provide(Logger.layer({\n mergeWithExisting: config.loggerMergeWithExisting\n }), Logger.layerLoggerProvider(config.logRecordProcessor, {\n ...config.loggerProviderConfig,\n shutdownTimeout: config.shutdownTimeout\n })) : Layer.empty;\n return Layer.mergeAll(TracerLive, MetricsLive, LoggerLive).pipe(Layer.provideMerge(ResourceLive));\n}));\n/**\n * Layer that provides an empty OpenTelemetry `Resource`.\n *\n * @category layers\n * @since 2.0.0\n */\nexport const layerEmpty = Resource.layerEmpty;\n//# sourceMappingURL=NodeSdk.js.map",
8
+ "/** @internal */\nexport const isNonEmpty = a => a !== undefined && !(Array.isArray(a) && a.length === 0);\n//# sourceMappingURL=utilities.js.map",
9
+ "/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nexport var SeverityNumber;\n(function (SeverityNumber) {\n SeverityNumber[SeverityNumber[\"UNSPECIFIED\"] = 0] = \"UNSPECIFIED\";\n SeverityNumber[SeverityNumber[\"TRACE\"] = 1] = \"TRACE\";\n SeverityNumber[SeverityNumber[\"TRACE2\"] = 2] = \"TRACE2\";\n SeverityNumber[SeverityNumber[\"TRACE3\"] = 3] = \"TRACE3\";\n SeverityNumber[SeverityNumber[\"TRACE4\"] = 4] = \"TRACE4\";\n SeverityNumber[SeverityNumber[\"DEBUG\"] = 5] = \"DEBUG\";\n SeverityNumber[SeverityNumber[\"DEBUG2\"] = 6] = \"DEBUG2\";\n SeverityNumber[SeverityNumber[\"DEBUG3\"] = 7] = \"DEBUG3\";\n SeverityNumber[SeverityNumber[\"DEBUG4\"] = 8] = \"DEBUG4\";\n SeverityNumber[SeverityNumber[\"INFO\"] = 9] = \"INFO\";\n SeverityNumber[SeverityNumber[\"INFO2\"] = 10] = \"INFO2\";\n SeverityNumber[SeverityNumber[\"INFO3\"] = 11] = \"INFO3\";\n SeverityNumber[SeverityNumber[\"INFO4\"] = 12] = \"INFO4\";\n SeverityNumber[SeverityNumber[\"WARN\"] = 13] = \"WARN\";\n SeverityNumber[SeverityNumber[\"WARN2\"] = 14] = \"WARN2\";\n SeverityNumber[SeverityNumber[\"WARN3\"] = 15] = \"WARN3\";\n SeverityNumber[SeverityNumber[\"WARN4\"] = 16] = \"WARN4\";\n SeverityNumber[SeverityNumber[\"ERROR\"] = 17] = \"ERROR\";\n SeverityNumber[SeverityNumber[\"ERROR2\"] = 18] = \"ERROR2\";\n SeverityNumber[SeverityNumber[\"ERROR3\"] = 19] = \"ERROR3\";\n SeverityNumber[SeverityNumber[\"ERROR4\"] = 20] = \"ERROR4\";\n SeverityNumber[SeverityNumber[\"FATAL\"] = 21] = \"FATAL\";\n SeverityNumber[SeverityNumber[\"FATAL2\"] = 22] = \"FATAL2\";\n SeverityNumber[SeverityNumber[\"FATAL3\"] = 23] = \"FATAL3\";\n SeverityNumber[SeverityNumber[\"FATAL4\"] = 24] = \"FATAL4\";\n})(SeverityNumber || (SeverityNumber = {}));\n//# sourceMappingURL=LogRecord.js.map",
10
+ "/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nexport class NoopLogger {\n emit(_logRecord) { }\n}\nexport const NOOP_LOGGER = new NoopLogger();\n//# sourceMappingURL=NoopLogger.js.map",
11
+ "/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nexport const GLOBAL_LOGS_API_KEY = Symbol.for('io.opentelemetry.js.api.logs');\nexport const _global = globalThis;\n/**\n * Make a function which accepts a version integer and returns the instance of an API if the version\n * is compatible, or a fallback version (usually NOOP) if it is not.\n *\n * @param requiredVersion Backwards compatibility version which is required to return the instance\n * @param instance Instance which should be returned if the required version is compatible\n * @param fallback Fallback instance, usually NOOP, which will be returned if the required version is not compatible\n */\nexport function makeGetter(requiredVersion, instance, fallback) {\n return (version) => version === requiredVersion ? instance : fallback;\n}\n/**\n * A number which should be incremented each time a backwards incompatible\n * change is made to the API. This number is used when an API package\n * attempts to access the global API to ensure it is getting a compatible\n * version. If the global API is not compatible with the API package\n * attempting to get it, a NOOP API implementation will be returned.\n */\nexport const API_BACKWARDS_COMPATIBILITY_VERSION = 1;\n//# sourceMappingURL=global-utils.js.map",
12
+ "/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nimport { NoopLogger } from './NoopLogger';\nexport class NoopLoggerProvider {\n getLogger(_name, _version, _options) {\n return new NoopLogger();\n }\n}\nexport const NOOP_LOGGER_PROVIDER = new NoopLoggerProvider();\n//# sourceMappingURL=NoopLoggerProvider.js.map",
13
+ "/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nimport { NOOP_LOGGER } from './NoopLogger';\nexport class ProxyLogger {\n constructor(provider, name, version, options) {\n this._provider = provider;\n this.name = name;\n this.version = version;\n this.options = options;\n }\n /**\n * Emit a log record. This method should only be used by log appenders.\n *\n * @param logRecord\n */\n emit(logRecord) {\n this._getLogger().emit(logRecord);\n }\n /**\n * Try to get a logger from the proxy logger provider.\n * If the proxy logger provider has no delegate, return a noop logger.\n */\n _getLogger() {\n if (this._delegate) {\n return this._delegate;\n }\n const logger = this._provider._getDelegateLogger(this.name, this.version, this.options);\n if (!logger) {\n return NOOP_LOGGER;\n }\n this._delegate = logger;\n return this._delegate;\n }\n}\n//# sourceMappingURL=ProxyLogger.js.map",
14
+ "/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nimport { NOOP_LOGGER_PROVIDER } from './NoopLoggerProvider';\nimport { ProxyLogger } from './ProxyLogger';\nexport class ProxyLoggerProvider {\n getLogger(name, version, options) {\n var _a;\n return ((_a = this._getDelegateLogger(name, version, options)) !== null && _a !== void 0 ? _a : new ProxyLogger(this, name, version, options));\n }\n /**\n * Get the delegate logger provider.\n * Used by tests only.\n * @internal\n */\n _getDelegate() {\n var _a;\n return (_a = this._delegate) !== null && _a !== void 0 ? _a : NOOP_LOGGER_PROVIDER;\n }\n /**\n * Set the delegate logger provider\n * @internal\n */\n _setDelegate(delegate) {\n this._delegate = delegate;\n }\n /**\n * @internal\n */\n _getDelegateLogger(name, version, options) {\n var _a;\n return (_a = this._delegate) === null || _a === void 0 ? void 0 : _a.getLogger(name, version, options);\n }\n}\n//# sourceMappingURL=ProxyLoggerProvider.js.map",
15
+ "/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nimport { API_BACKWARDS_COMPATIBILITY_VERSION, GLOBAL_LOGS_API_KEY, _global, makeGetter, } from '../internal/global-utils';\nimport { NOOP_LOGGER_PROVIDER } from '../NoopLoggerProvider';\nimport { ProxyLoggerProvider } from '../ProxyLoggerProvider';\nexport class LogsAPI {\n constructor() {\n this._proxyLoggerProvider = new ProxyLoggerProvider();\n }\n static getInstance() {\n if (!this._instance) {\n this._instance = new LogsAPI();\n }\n return this._instance;\n }\n setGlobalLoggerProvider(provider) {\n if (_global[GLOBAL_LOGS_API_KEY]) {\n return this.getLoggerProvider();\n }\n _global[GLOBAL_LOGS_API_KEY] = makeGetter(API_BACKWARDS_COMPATIBILITY_VERSION, provider, NOOP_LOGGER_PROVIDER);\n this._proxyLoggerProvider._setDelegate(provider);\n return provider;\n }\n /**\n * Returns the global logger provider.\n *\n * @returns LoggerProvider\n */\n getLoggerProvider() {\n var _a, _b;\n return ((_b = (_a = _global[GLOBAL_LOGS_API_KEY]) === null || _a === void 0 ? void 0 : _a.call(_global, API_BACKWARDS_COMPATIBILITY_VERSION)) !== null && _b !== void 0 ? _b : this._proxyLoggerProvider);\n }\n /**\n * Returns a logger from the global logger provider.\n *\n * @returns Logger\n */\n getLogger(name, version, options) {\n return this.getLoggerProvider().getLogger(name, version, options);\n }\n /** Remove the global logger provider */\n disable() {\n delete _global[GLOBAL_LOGS_API_KEY];\n this._proxyLoggerProvider = new ProxyLoggerProvider();\n }\n}\n//# sourceMappingURL=logs.js.map",
16
+ "/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nexport { SeverityNumber } from './types/LogRecord';\nexport { NOOP_LOGGER, NoopLogger } from './NoopLogger';\nimport { LogsAPI } from './api/logs';\nexport const logs = LogsAPI.getInstance();\n//# sourceMappingURL=index.js.map",
17
+ "/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nimport { diag } from '@opentelemetry/api';\nimport { NOOP_LOGGER } from '@opentelemetry/api-logs';\nimport { defaultResource } from '@opentelemetry/resources';\nimport { BindOnceFuture } from '@opentelemetry/core';\nimport { Logger } from './Logger';\nimport { DEFAULT_LOGGER_CONFIGURATOR, LoggerProviderSharedState, } from './internal/LoggerProviderSharedState';\nexport const DEFAULT_LOGGER_NAME = 'unknown';\nexport class LoggerProvider {\n _shutdownOnce;\n _sharedState;\n constructor(config = {}) {\n const mergedConfig = {\n resource: config.resource ?? defaultResource(),\n forceFlushTimeoutMillis: config.forceFlushTimeoutMillis ?? 30000,\n logRecordLimits: {\n attributeCountLimit: config.logRecordLimits?.attributeCountLimit ?? 128,\n attributeValueLengthLimit: config.logRecordLimits?.attributeValueLengthLimit ?? Infinity,\n },\n loggerConfigurator: config.loggerConfigurator ?? DEFAULT_LOGGER_CONFIGURATOR,\n processors: config.processors ?? [],\n };\n this._sharedState = new LoggerProviderSharedState(mergedConfig.resource, mergedConfig.forceFlushTimeoutMillis, mergedConfig.logRecordLimits, mergedConfig.processors, mergedConfig.loggerConfigurator);\n this._shutdownOnce = new BindOnceFuture(this._shutdown, this);\n }\n /**\n * Get a logger with the configuration of the LoggerProvider.\n */\n getLogger(name, version, options) {\n if (this._shutdownOnce.isCalled) {\n diag.warn('A shutdown LoggerProvider cannot provide a Logger');\n return NOOP_LOGGER;\n }\n if (!name) {\n diag.warn('Logger requested without instrumentation scope name.');\n }\n const loggerName = name || DEFAULT_LOGGER_NAME;\n const key = `${loggerName}@${version || ''}:${options?.schemaUrl || ''}`;\n if (!this._sharedState.loggers.has(key)) {\n this._sharedState.loggers.set(key, new Logger({ name: loggerName, version, schemaUrl: options?.schemaUrl }, this._sharedState));\n }\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n return this._sharedState.loggers.get(key);\n }\n /**\n * Notifies all registered LogRecordProcessor to flush any buffered data.\n *\n * Returns a promise which is resolved when all flushes are complete.\n */\n forceFlush() {\n // do not flush after shutdown\n if (this._shutdownOnce.isCalled) {\n diag.warn('invalid attempt to force flush after LoggerProvider shutdown');\n return this._shutdownOnce.promise;\n }\n return this._sharedState.activeProcessor.forceFlush();\n }\n /**\n * Flush all buffered data and shut down the LoggerProvider and all registered\n * LogRecordProcessor.\n *\n * Returns a promise which is resolved when all flushes are complete.\n */\n shutdown() {\n if (this._shutdownOnce.isCalled) {\n diag.warn('shutdown may only be called once per LoggerProvider');\n return this._shutdownOnce.promise;\n }\n return this._shutdownOnce.call();\n }\n _shutdown() {\n return this._sharedState.activeProcessor.shutdown();\n }\n}\n//# sourceMappingURL=LoggerProvider.js.map",
18
+ "/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nimport { SeverityNumber } from '@opentelemetry/api-logs';\nimport { context, trace, TraceFlags, isSpanContextValid, } from '@opentelemetry/api';\nimport { LogRecordImpl } from './LogRecordImpl';\nexport class Logger {\n instrumentationScope;\n _sharedState;\n _loggerConfig;\n constructor(instrumentationScope, sharedState) {\n this.instrumentationScope = instrumentationScope;\n this._sharedState = sharedState;\n // Cache the logger configuration at construction time\n // Since we don't support re-configuration, this avoids map lookups\n // and string allocations on each emit() call\n this._loggerConfig = this._sharedState.getLoggerConfig(this.instrumentationScope);\n }\n emit(logRecord) {\n const loggerConfig = this._loggerConfig;\n const currentContext = logRecord.context || context.active();\n // Apply minimum severity filtering\n const recordSeverity = logRecord.severityNumber ?? SeverityNumber.UNSPECIFIED;\n // 1. Minimum severity: If the log record's SeverityNumber is specified\n // (i.e. not 0) and is less than the configured minimum_severity,\n // the log record MUST be dropped.\n if (recordSeverity !== SeverityNumber.UNSPECIFIED &&\n recordSeverity < loggerConfig.minimumSeverity) {\n // Log record is dropped due to minimum severity filter\n return;\n }\n // 2. Trace-based: If trace_based is true, and if the log record has a\n // SpanId and the TraceFlags SAMPLED flag is unset, the log record MUST be dropped.\n if (loggerConfig.traceBased) {\n const spanContext = trace.getSpanContext(currentContext);\n if (spanContext && isSpanContextValid(spanContext)) {\n // Check if the trace is unsampled (SAMPLED flag is unset)\n const isSampled = (spanContext.traceFlags & TraceFlags.SAMPLED) === TraceFlags.SAMPLED;\n if (!isSampled) {\n // Log record is dropped due to trace-based filter\n return;\n }\n }\n // If there's no valid span context, the log record is not associated with a trace\n // and therefore bypasses trace-based filtering (as per spec)\n }\n /**\n * If a Logger was obtained with include_trace_context=true,\n * the LogRecords it emits MUST automatically include the Trace Context from the active Context,\n * if Context has not been explicitly set.\n */\n const logRecordInstance = new LogRecordImpl(this._sharedState, this.instrumentationScope, {\n context: currentContext,\n ...logRecord,\n });\n /**\n * the explicitly passed Context,\n * the current Context, or an empty Context if the Logger was obtained with include_trace_context=false\n */\n this._sharedState.activeProcessor.onEmit(logRecordInstance, currentContext);\n /**\n * A LogRecordProcessor may freely modify logRecord for the duration of the OnEmit call.\n * If logRecord is needed after OnEmit returns (i.e. for asynchronous processing) only reads are permitted.\n */\n logRecordInstance._makeReadonly();\n }\n}\n//# sourceMappingURL=Logger.js.map",
19
+ "/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nimport * as api from '@opentelemetry/api';\nimport { timeInputToHrTime } from '@opentelemetry/core';\nimport { ATTR_EXCEPTION_MESSAGE, ATTR_EXCEPTION_STACKTRACE, ATTR_EXCEPTION_TYPE, } from '@opentelemetry/semantic-conventions';\nimport { isLogAttributeValue } from './utils/validation';\nexport class LogRecordImpl {\n hrTime;\n hrTimeObserved;\n spanContext;\n resource;\n instrumentationScope;\n attributes = {};\n _severityText;\n _severityNumber;\n _body;\n _eventName;\n _attributesCount = 0;\n _droppedAttributesCount = 0;\n _isReadonly = false;\n _logRecordLimits;\n set severityText(severityText) {\n if (this._isLogRecordReadonly()) {\n return;\n }\n this._severityText = severityText;\n }\n get severityText() {\n return this._severityText;\n }\n set severityNumber(severityNumber) {\n if (this._isLogRecordReadonly()) {\n return;\n }\n this._severityNumber = severityNumber;\n }\n get severityNumber() {\n return this._severityNumber;\n }\n set body(body) {\n if (this._isLogRecordReadonly()) {\n return;\n }\n this._body = body;\n }\n get body() {\n return this._body;\n }\n get eventName() {\n return this._eventName;\n }\n set eventName(eventName) {\n if (this._isLogRecordReadonly()) {\n return;\n }\n this._eventName = eventName;\n }\n get droppedAttributesCount() {\n return this._droppedAttributesCount;\n }\n constructor(_sharedState, instrumentationScope, logRecord) {\n const { timestamp, observedTimestamp, eventName, severityNumber, severityText, body, attributes = {}, exception, context, } = logRecord;\n const now = Date.now();\n this.hrTime = timeInputToHrTime(timestamp ?? now);\n this.hrTimeObserved = timeInputToHrTime(observedTimestamp ?? now);\n if (context) {\n const spanContext = api.trace.getSpanContext(context);\n if (spanContext && api.isSpanContextValid(spanContext)) {\n this.spanContext = spanContext;\n }\n }\n this.severityNumber = severityNumber;\n this.severityText = severityText;\n this.body = body;\n this.resource = _sharedState.resource;\n this.instrumentationScope = instrumentationScope;\n this._logRecordLimits = _sharedState.logRecordLimits;\n this._eventName = eventName;\n this.setAttributes(attributes);\n if (exception != null) {\n this._setException(exception);\n }\n }\n setAttribute(key, value) {\n if (this._isLogRecordReadonly()) {\n return this;\n }\n if (key.length === 0) {\n api.diag.warn(`Invalid attribute key: ${key}`);\n return this;\n }\n if (!isLogAttributeValue(value)) {\n api.diag.warn(`Invalid attribute value set for key: ${key}`);\n return this;\n }\n const isNewKey = !Object.prototype.hasOwnProperty.call(this.attributes, key);\n if (isNewKey &&\n this._attributesCount >= this._logRecordLimits.attributeCountLimit) {\n this._droppedAttributesCount++;\n // Only warn once per LogRecord to avoid log spam\n if (this._droppedAttributesCount === 1) {\n api.diag.warn('Dropping extra attributes.');\n }\n return this;\n }\n this.attributes[key] = this._truncateToSize(value);\n if (isNewKey) {\n this._attributesCount++;\n }\n return this;\n }\n setAttributes(attributes) {\n for (const [k, v] of Object.entries(attributes)) {\n this.setAttribute(k, v);\n }\n return this;\n }\n setBody(body) {\n this.body = body;\n return this;\n }\n setEventName(eventName) {\n this.eventName = eventName;\n return this;\n }\n setSeverityNumber(severityNumber) {\n this.severityNumber = severityNumber;\n return this;\n }\n setSeverityText(severityText) {\n this.severityText = severityText;\n return this;\n }\n /**\n * @internal\n * A LogRecordProcessor may freely modify logRecord for the duration of the OnEmit call.\n * If logRecord is needed after OnEmit returns (i.e. for asynchronous processing) only reads are permitted.\n */\n _makeReadonly() {\n this._isReadonly = true;\n }\n _truncateToSize(value) {\n const limit = this._logRecordLimits.attributeValueLengthLimit;\n // Check limit\n if (limit <= 0) {\n // Negative values are invalid, so do not truncate\n api.diag.warn(`Attribute value limit must be positive, got ${limit}`);\n return value;\n }\n // null/undefined - no truncation needed\n if (value == null) {\n return value;\n }\n // String\n if (typeof value === 'string') {\n return this._truncateToLimitUtil(value, limit);\n }\n // Byte arrays - no truncation needed\n if (value instanceof Uint8Array) {\n return value;\n }\n // Arrays (can contain any AnyValue types)\n if (Array.isArray(value)) {\n return value.map(val => this._truncateToSize(val));\n }\n // Objects/Maps - recursively truncate nested values\n if (typeof value === 'object') {\n const truncatedObj = {};\n for (const [k, v] of Object.entries(value)) {\n truncatedObj[k] = this._truncateToSize(v);\n }\n return truncatedObj;\n }\n // Other types (number, boolean), no need to apply value length limit\n return value;\n }\n _setException(exception) {\n let hasMinimumAttributes = false;\n if (typeof exception === 'string' || typeof exception === 'number') {\n if (!Object.hasOwn(this.attributes, ATTR_EXCEPTION_MESSAGE)) {\n this.setAttribute(ATTR_EXCEPTION_MESSAGE, String(exception));\n }\n hasMinimumAttributes = true;\n }\n else if (exception && typeof exception === 'object') {\n const exceptionObj = exception;\n if (exceptionObj.code) {\n if (!Object.hasOwn(this.attributes, ATTR_EXCEPTION_TYPE)) {\n this.setAttribute(ATTR_EXCEPTION_TYPE, exceptionObj.code.toString());\n }\n hasMinimumAttributes = true;\n }\n else if (exceptionObj.name) {\n if (!Object.hasOwn(this.attributes, ATTR_EXCEPTION_TYPE)) {\n this.setAttribute(ATTR_EXCEPTION_TYPE, exceptionObj.name);\n }\n hasMinimumAttributes = true;\n }\n if (exceptionObj.message) {\n if (!Object.hasOwn(this.attributes, ATTR_EXCEPTION_MESSAGE)) {\n this.setAttribute(ATTR_EXCEPTION_MESSAGE, exceptionObj.message);\n }\n hasMinimumAttributes = true;\n }\n if (exceptionObj.stack) {\n if (!Object.hasOwn(this.attributes, ATTR_EXCEPTION_STACKTRACE)) {\n this.setAttribute(ATTR_EXCEPTION_STACKTRACE, exceptionObj.stack);\n }\n hasMinimumAttributes = true;\n }\n }\n if (!hasMinimumAttributes) {\n api.diag.warn(`Failed to record an exception ${exception}`);\n }\n }\n _truncateToLimitUtil(value, limit) {\n if (value.length <= limit) {\n return value;\n }\n return value.substring(0, limit);\n }\n _isLogRecordReadonly() {\n if (this._isReadonly) {\n api.diag.warn('Can not execute the operation on emitted log record');\n }\n return this._isReadonly;\n }\n}\n//# sourceMappingURL=LogRecordImpl.js.map",
20
+ "/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\n/**\n * Validates if a value is a valid AnyValue for Log Attributes according to OpenTelemetry spec.\n * Log Attributes support a superset of standard Attributes and must support:\n * - Scalar values: string, boolean, signed 64 bit integer, or double precision floating point\n * - Byte arrays (Uint8Array)\n * - Arrays of any values (heterogeneous arrays allowed)\n * - Maps from string to any value (nested objects)\n * - Empty values (null/undefined)\n *\n * @param val - The value to validate\n * @returns true if the value is a valid AnyValue, false otherwise\n */\nexport function isLogAttributeValue(val) {\n return isLogAttributeValueInternal(val, new WeakSet());\n}\nfunction isLogAttributeValueInternal(val, visited) {\n // null and undefined are explicitly allowed\n if (val == null) {\n return true;\n }\n // Scalar values\n if (typeof val === 'string' ||\n typeof val === 'number' ||\n typeof val === 'boolean') {\n return true;\n }\n // Byte arrays\n if (val instanceof Uint8Array) {\n return true;\n }\n // For objects and arrays, check for circular references\n if (typeof val === 'object') {\n if (visited.has(val)) {\n // Circular reference detected - reject it\n return false;\n }\n visited.add(val);\n // Arrays (can contain any AnyValue, including heterogeneous)\n if (Array.isArray(val)) {\n return val.every(item => isLogAttributeValueInternal(item, visited));\n }\n // Only accept plain objects (not built-in objects like Date, RegExp, Error, etc.)\n // Check if it's a plain object by verifying its constructor is Object or it has no constructor\n const obj = val;\n if (obj.constructor !== Object && obj.constructor !== undefined) {\n return false;\n }\n // Objects/Maps (including empty objects)\n // All object properties must be valid AnyValues\n return Object.values(obj).every(item => isLogAttributeValueInternal(item, visited));\n }\n return false;\n}\n//# sourceMappingURL=validation.js.map",
21
+ "/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nexport class NoopLogRecordProcessor {\n forceFlush() {\n return Promise.resolve();\n }\n onEmit(_logRecord, _context) { }\n shutdown() {\n return Promise.resolve();\n }\n}\n//# sourceMappingURL=NoopLogRecordProcessor.js.map",
22
+ "/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nimport { callWithTimeout } from '@opentelemetry/core';\n/**\n * Implementation of the {@link LogRecordProcessor} that simply forwards all\n * received events to a list of {@link LogRecordProcessor}s.\n */\nexport class MultiLogRecordProcessor {\n processors;\n forceFlushTimeoutMillis;\n constructor(processors, forceFlushTimeoutMillis) {\n this.processors = processors;\n this.forceFlushTimeoutMillis = forceFlushTimeoutMillis;\n }\n async forceFlush() {\n const timeout = this.forceFlushTimeoutMillis;\n await Promise.all(this.processors.map(processor => callWithTimeout(processor.forceFlush(), timeout)));\n }\n onEmit(logRecord, context) {\n this.processors.forEach(processors => processors.onEmit(logRecord, context));\n }\n async shutdown() {\n await Promise.all(this.processors.map(processor => processor.shutdown()));\n }\n}\n//# sourceMappingURL=MultiLogRecordProcessor.js.map",
23
+ "/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\n/**\n * Converting the instrumentation scope object to a unique identifier string.\n * @param scope - The instrumentation scope to convert\n * @returns A unique string identifier for the scope\n */\nexport function getInstrumentationScopeKey(scope) {\n return `${scope.name}@${scope.version || ''}:${scope.schemaUrl || ''}`;\n}\n//# sourceMappingURL=utils.js.map",
24
+ "/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nimport { SeverityNumber } from '@opentelemetry/api-logs';\nimport { NoopLogRecordProcessor } from '../export/NoopLogRecordProcessor';\nimport { MultiLogRecordProcessor } from '../MultiLogRecordProcessor';\nimport { getInstrumentationScopeKey } from './utils';\nconst DEFAULT_LOGGER_CONFIG = {\n disabled: false,\n minimumSeverity: SeverityNumber.UNSPECIFIED,\n traceBased: false,\n};\n/**\n * Default LoggerConfigurator that returns the default config for all loggers\n */\nexport const DEFAULT_LOGGER_CONFIGURATOR = () => ({\n ...DEFAULT_LOGGER_CONFIG,\n});\nexport class LoggerProviderSharedState {\n loggers = new Map();\n activeProcessor;\n registeredLogRecordProcessors = [];\n resource;\n forceFlushTimeoutMillis;\n logRecordLimits;\n processors;\n _loggerConfigurator;\n _loggerConfigs = new Map();\n constructor(resource, forceFlushTimeoutMillis, logRecordLimits, processors, loggerConfigurator) {\n this.resource = resource;\n this.forceFlushTimeoutMillis = forceFlushTimeoutMillis;\n this.logRecordLimits = logRecordLimits;\n this.processors = processors;\n if (processors.length > 0) {\n this.registeredLogRecordProcessors = processors;\n this.activeProcessor = new MultiLogRecordProcessor(this.registeredLogRecordProcessors, this.forceFlushTimeoutMillis);\n }\n else {\n this.activeProcessor = new NoopLogRecordProcessor();\n }\n this._loggerConfigurator =\n loggerConfigurator ?? DEFAULT_LOGGER_CONFIGURATOR;\n }\n /**\n * Get the LoggerConfig for a given instrumentation scope.\n * Uses the LoggerConfigurator function to compute the config on first access\n * and caches the result.\n *\n * @experimental This feature is in development as per the OpenTelemetry specification.\n */\n getLoggerConfig(instrumentationScope) {\n const key = getInstrumentationScopeKey(instrumentationScope);\n // Return cached config if available\n let config = this._loggerConfigs.get(key);\n if (config) {\n return config;\n }\n // Compute config using the configurator\n // The configurator always returns a complete config\n config = this._loggerConfigurator(instrumentationScope);\n // Cache the result\n this._loggerConfigs.set(key, config);\n return config;\n }\n}\n//# sourceMappingURL=LoggerProviderSharedState.js.map",
25
+ "import * as Inspectable from \"effect/Inspectable\";\nconst bigint1e9 = /*#__PURE__*/BigInt(1_000_000_000);\n/** @internal */\nexport const nanosToHrTime = timestamp => {\n return [Number(timestamp / bigint1e9), Number(timestamp % bigint1e9)];\n};\n/** @internal */\nexport const recordToAttributes = record => {\n const attributes = {};\n for (const [key, value] of Object.entries(record)) {\n attributes[key] = unknownToAttributeValue(value);\n }\n return attributes;\n};\n/** @internal */\nexport const unknownToAttributeValue = value => {\n if (typeof value === \"string\" || typeof value === \"number\" || typeof value === \"boolean\") {\n return value;\n } else if (typeof value === \"bigint\") {\n return value.toString();\n }\n return Inspectable.toStringUnknown(value);\n};\n//# sourceMappingURL=attributes.js.map",
26
+ "import * as Resources from \"@opentelemetry/resources\";\nimport * as OtelSemConv from \"@opentelemetry/semantic-conventions\";\nimport * as Arr from \"effect/Array\";\nimport * as Config from \"effect/Config\";\nimport * as Context from \"effect/Context\";\nimport * as Effect from \"effect/Effect\";\nimport * as Layer from \"effect/Layer\";\n/**\n * Service tag for OpenTelemetry metadata attached to emitted telemetry.\n *\n * **When to use**\n *\n * Use to provide process, service, and deployment metadata that should be\n * attached to spans, metrics, and logs.\n *\n * @category services\n * @since 4.0.0\n */\nexport class Resource extends /*#__PURE__*/Context.Service()(\"@effect/opentelemetry/Resource\") {}\n/**\n * Creates a `Resource` layer from service metadata and additional OpenTelemetry attributes.\n *\n * @category layers\n * @since 4.0.0\n */\nexport const layer = config => Layer.succeed(Resource, Resources.resourceFromAttributes(configToAttributes(config)));\n/**\n * Converts resource configuration into OpenTelemetry attributes, adding service name, optional service version, and telemetry SDK metadata.\n *\n * **When to use**\n *\n * Use to turn explicit service metadata into a raw OpenTelemetry attribute map\n * for lower-level resource construction or for merging with environment-derived\n * attributes via `layerFromEnv`.\n *\n * **Details**\n *\n * The returned record copies `attributes` first, then sets `service.name`,\n * `telemetry.sdk.name`, and `telemetry.sdk.language`. `service.version` is\n * included only when `serviceVersion` is provided.\n *\n * **Gotchas**\n *\n * Custom values for `service.name` and `telemetry.sdk.*` are overwritten by this\n * helper. An empty `serviceVersion` is treated as absent.\n *\n * @see {@link layer} for creating a `Resource` layer from explicit metadata\n * @see {@link layerFromEnv} for merging attributes with OpenTelemetry environment variables\n *\n * @category configuration\n * @since 4.0.0\n */\nexport const configToAttributes = options => {\n const attributes = {\n ...(options.attributes ?? undefined),\n [OtelSemConv.ATTR_SERVICE_NAME]: options.serviceName,\n [OtelSemConv.ATTR_TELEMETRY_SDK_NAME]: \"@effect/opentelemetry\",\n [OtelSemConv.ATTR_TELEMETRY_SDK_LANGUAGE]: typeof globalThis.document === \"undefined\" ? OtelSemConv.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS : OtelSemConv.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS\n };\n if (options.serviceVersion) {\n attributes[OtelSemConv.ATTR_SERVICE_VERSION] = options.serviceVersion;\n }\n return attributes;\n};\n/**\n * Creates a `Resource` layer from OpenTelemetry environment variables, optionally merging additional attributes.\n *\n * @category layers\n * @since 4.0.0\n */\nexport const layerFromEnv = additionalAttributes => Layer.effect(Resource, Effect.gen(function* () {\n const serviceName = yield* Config.option(Config.string(\"OTEL_SERVICE_NAME\"));\n const attributes = yield* Config.string(\"OTEL_RESOURCE_ATTRIBUTES\").pipe(Config.withDefault(\"\"), Config.map(s => {\n const attrs = s.split(\",\");\n return Arr.reduce(attrs, {}, (acc, attr) => {\n const parts = attr.split(\"=\");\n if (parts.length !== 2) {\n return acc;\n }\n acc[parts[0].trim()] = parts[1].trim();\n return acc;\n });\n }));\n if (serviceName._tag === \"Some\") {\n attributes[OtelSemConv.ATTR_SERVICE_NAME] = serviceName.value;\n }\n if (additionalAttributes) {\n Object.assign(attributes, additionalAttributes);\n }\n return Resources.resourceFromAttributes(attributes);\n}).pipe(Effect.orDie));\n/**\n * Layer that provides an empty OpenTelemetry resource.\n *\n * @category layers\n * @since 4.0.0\n */\nexport const layerEmpty = /*#__PURE__*/Layer.succeed(Resource, /*#__PURE__*/Resources.emptyResource());\n//# sourceMappingURL=Resource.js.map",
27
+ "/**\n * Connects Effect logging to the OpenTelemetry Logs SDK.\n *\n * This module turns Effect log events into OpenTelemetry log records. It\n * provides the `OtelLoggerProvider` service, a `Logger` implementation created\n * by {@link make}, a {@link layer} that installs it into Effect logging, and\n * {@link layerLoggerProvider} for creating a scoped SDK `LoggerProvider` from\n * one or more `LogRecordProcessor`s.\n *\n * **Mental model**\n *\n * Effect decides when a log is emitted and supplies the message, fiber id, log\n * level, annotations, log spans, and active parent span. This module maps that\n * data into an OpenTelemetry log record, including severity text/number, trace\n * and span identifiers when available, and timestamps from the Effect `Clock`.\n *\n * **Common tasks**\n *\n * Use {@link layerLoggerProvider} when the application wants this package to own\n * the OpenTelemetry logger provider lifecycle. Provide it with processors such\n * as OTLP, console, or vendor-specific exporters, then install {@link layer} so\n * regular Effect logging emits records through that provider. If the provider is\n * created elsewhere, supply `OtelLoggerProvider` yourself and still use\n * {@link layer} or {@link make}.\n *\n * **Gotchas**\n *\n * This module does not choose an exporter. Export behavior, batching, retries,\n * and delivery guarantees come from the configured OpenTelemetry processors.\n * The scoped provider is force-flushed and shut down when the layer is released,\n * using the configured shutdown timeout; externally managed providers should be\n * flushed and shut down by the owner to avoid dropping buffered logs.\n *\n * @since 4.0.0\n */\nimport { SeverityNumber } from \"@opentelemetry/api-logs\";\nimport * as Otel from \"@opentelemetry/sdk-logs\";\nimport * as Arr from \"effect/Array\";\nimport * as Clock from \"effect/Clock\";\nimport * as Context from \"effect/Context\";\nimport * as Effect from \"effect/Effect\";\nimport * as Layer from \"effect/Layer\";\nimport * as Logger from \"effect/Logger\";\nimport * as Predicate from \"effect/Predicate\";\nimport * as References from \"effect/References\";\nimport * as Tracer from \"effect/Tracer\";\nimport { nanosToHrTime, unknownToAttributeValue } from \"./internal/attributes.js\";\nimport { Resource } from \"./Resource.js\";\n/**\n * Context service containing the OpenTelemetry `LoggerProvider` used to emit Effect log records.\n *\n * @category services\n * @since 4.0.0\n */\nexport class OtelLoggerProvider extends /*#__PURE__*/Context.Service()(\"@effect/opentelemetry/Logger/OtelLoggerProvider\") {}\n/**\n * Maps an Effect `LogLevel` to the corresponding OpenTelemetry `SeverityNumber`.\n *\n * **Details**\n *\n * OpenTelemetry log severity numbers are in the range `1` through `24`. This\n * function maps from Effect's log levels instead of using\n * `LogLevel.getOrdinal`, whose internal sort ordinals, such as the `Info`\n * ordinal `20000`, fall outside the OpenTelemetry logs data model and can be\n * treated as `UNSPECIFIED` by validating backends.\n *\n * @category converting\n * @since 4.0.0\n */\nexport const logLevelToSeverityNumber = level => {\n switch (level) {\n case \"Trace\":\n return SeverityNumber.TRACE;\n case \"Debug\":\n return SeverityNumber.DEBUG;\n case \"Info\":\n return SeverityNumber.INFO;\n case \"Warn\":\n return SeverityNumber.WARN;\n case \"Error\":\n return SeverityNumber.ERROR;\n case \"Fatal\":\n return SeverityNumber.FATAL;\n default:\n return SeverityNumber.UNSPECIFIED;\n }\n};\n/**\n * Creates an Effect logger that emits log records through the configured OpenTelemetry logger provider.\n *\n * @category constructors\n * @since 4.0.0\n */\nexport const make = /*#__PURE__*/Effect.gen(function* () {\n const loggerProvider = yield* OtelLoggerProvider;\n const clock = yield* Clock.Clock;\n const otelLogger = loggerProvider.getLogger(\"@effect/opentelemetry\");\n return Logger.make(options => {\n const attributes = {\n fiberId: options.fiber.id\n };\n const span = Context.getOrUndefined(options.fiber.context, Tracer.ParentSpan);\n if (Predicate.isNotUndefined(span)) {\n attributes.spanId = span.spanId;\n attributes.traceId = span.traceId;\n }\n for (const [key, value] of Object.entries(options.fiber.getRef(References.CurrentLogAnnotations))) {\n attributes[key] = unknownToAttributeValue(value);\n }\n const now = options.date.getTime();\n for (const [label, startTime] of options.fiber.getRef(References.CurrentLogSpans)) {\n attributes[`logSpan.${label}`] = `${now - startTime}ms`;\n }\n const message = Arr.ensure(options.message).map(unknownToAttributeValue);\n const hrTime = nanosToHrTime(clock.currentTimeNanosUnsafe());\n otelLogger.emit({\n body: message.length === 1 ? message[0] : message,\n severityText: options.logLevel,\n severityNumber: logLevelToSeverityNumber(options.logLevel),\n timestamp: hrTime,\n observedTimestamp: hrTime,\n attributes\n });\n });\n});\n/**\n * Creates a layer that installs the OpenTelemetry-backed Effect logger, merging with existing loggers by default.\n *\n * **When to use**\n *\n * Use to install the OpenTelemetry-backed Effect logger in an application that\n * has an `OtelLoggerProvider`, so standard Effect logging emits OpenTelemetry\n * log records.\n *\n * **Details**\n *\n * The layer installs the logger created by `make`. `mergeWithExisting` defaults\n * to `true`; set it to `false` to replace the current logger set.\n *\n * @see {@link make} for constructing the logger directly\n * @see {@link layerLoggerProvider} for creating the required logger provider\n *\n * @category layers\n * @since 4.0.0\n */\nexport const layer = options => Logger.layer([make], {\n mergeWithExisting: options.mergeWithExisting ?? true\n});\n/**\n * Creates a scoped OpenTelemetry logger provider from one or more log record processors, using the current `Resource` and flushing and shutting down the provider when the layer is released.\n *\n * @category layers\n * @since 4.0.0\n */\nexport const layerLoggerProvider = (processor, config) => Layer.effect(OtelLoggerProvider, Effect.gen(function* () {\n const resource = yield* Resource;\n return yield* Effect.acquireRelease(Effect.sync(() => new Otel.LoggerProvider({\n ...(config ?? undefined),\n processors: Arr.ensure(processor),\n resource\n })), provider => Effect.promise(() => provider.forceFlush().then(() => provider.shutdown())).pipe(Effect.ignore, Effect.interruptible, Effect.timeoutOption(config?.shutdownTimeout ?? 3000)));\n}));\n//# sourceMappingURL=Logger.js.map",
28
+ "import { ValueType } from \"@opentelemetry/api\";\nimport { AggregationTemporality, DataPointType, InstrumentType } from \"@opentelemetry/sdk-metrics\";\nimport * as Arr from \"effect/Array\";\nimport * as Metric from \"effect/Metric\";\nconst sdkName = \"@effect/opentelemetry/Metrics\";\n/** @internal */\nexport class MetricProducerImpl {\n resource;\n context;\n temporality;\n startTimes;\n startTimeNanos;\n previousExportTimeNanos;\n previousCounterState;\n previousHistogramState;\n previousFrequencyState;\n previousSummaryState;\n constructor(resource, context, temporality = \"cumulative\") {\n this.resource = resource;\n this.context = context;\n this.temporality = temporality;\n this.startTimes = new Map();\n this.startTimeNanos = currentHrTime();\n this.previousExportTimeNanos = this.startTimeNanos;\n this.previousCounterState = new Map();\n this.previousHistogramState = new Map();\n this.previousFrequencyState = new Map();\n this.previousSummaryState = new Map();\n }\n startTimeFor(name, hrTime) {\n if (this.startTimes.has(name)) {\n return this.startTimes.get(name);\n }\n this.startTimes.set(name, hrTime);\n return hrTime;\n }\n collect(_options) {\n const snapshot = Metric.snapshotUnsafe(this.context);\n const hrTimeNow = currentHrTime();\n const metricData = [];\n const metricDataByName = new Map();\n const addMetricData = data => {\n metricData.push(data);\n metricDataByName.set(data.descriptor.name, data);\n };\n const isDelta = this.temporality === \"delta\";\n const aggregationTemporality = isDelta ? AggregationTemporality.DELTA : AggregationTemporality.CUMULATIVE;\n const intervalStartTime = isDelta ? this.previousExportTimeNanos : this.startTimeNanos;\n for (let i = 0, len = snapshot.length; i < len; i++) {\n const state = snapshot[i];\n const attributes = state.attributes ? Arr.reduce(Object.entries(state.attributes), {}, (acc, [key, value]) => {\n acc[key] = String(value);\n return acc;\n }) : {};\n const metricKey = makeMetricKey(state.id, state.attributes);\n switch (state.type) {\n case \"Counter\":\n {\n const currentCount = state.state.count;\n let reportValue = currentCount;\n if (isDelta) {\n const previousCount = this.previousCounterState.get(metricKey);\n if (previousCount !== undefined) {\n if (typeof currentCount === \"bigint\" && typeof previousCount === \"bigint\") {\n reportValue = currentCount - previousCount;\n // Handle reset: if current < previous, report current value\n if (reportValue < BigInt(0)) {\n reportValue = currentCount;\n }\n } else {\n const curr = Number(currentCount);\n const prev = Number(previousCount);\n reportValue = curr - prev;\n // Handle reset\n if (reportValue < 0) {\n reportValue = curr;\n }\n }\n }\n this.previousCounterState.set(metricKey, currentCount);\n }\n const descriptor = descriptorFromState(state, attributes);\n const startTime = this.startTimeFor(descriptor.name, intervalStartTime);\n const dataPoint = {\n startTime,\n endTime: hrTimeNow,\n attributes,\n value: Number(reportValue)\n };\n if (metricDataByName.has(state.id)) {\n metricDataByName.get(state.id).dataPoints.push(dataPoint);\n } else {\n addMetricData({\n dataPointType: DataPointType.SUM,\n descriptor,\n isMonotonic: state.state.incremental,\n aggregationTemporality,\n dataPoints: [dataPoint]\n });\n }\n break;\n }\n case \"Gauge\":\n {\n // Gauges don't have temporality - they always report current value\n const descriptor = descriptorFromState(state, attributes);\n const startTime = this.startTimeFor(descriptor.name, this.startTimeNanos);\n const dataPoint = {\n startTime,\n endTime: hrTimeNow,\n attributes,\n value: Number(state.state.value)\n };\n if (metricDataByName.has(state.id)) {\n metricDataByName.get(state.id).dataPoints.push(dataPoint);\n } else {\n addMetricData({\n dataPointType: DataPointType.GAUGE,\n descriptor,\n aggregationTemporality: AggregationTemporality.CUMULATIVE,\n dataPoints: [dataPoint]\n });\n }\n break;\n }\n case \"Histogram\":\n {\n const size = state.state.buckets.length;\n const currentBuckets = {\n boundaries: Arr.allocate(size - 1),\n counts: Arr.allocate(size)\n };\n let idx = 0;\n let prev = 0;\n for (const [boundary, value] of state.state.buckets) {\n if (idx < size - 1) {\n currentBuckets.boundaries[idx] = boundary;\n }\n currentBuckets.counts[idx] = value - prev;\n prev = value;\n idx++;\n }\n let reportCount = state.state.count;\n let reportSum = state.state.sum;\n let reportBucketCounts = currentBuckets.counts;\n const reportMin = state.state.min;\n const reportMax = state.state.max;\n if (isDelta) {\n const previousState = this.previousHistogramState.get(metricKey);\n if (previousState !== undefined) {\n reportCount = state.state.count - previousState.count;\n reportSum = state.state.sum - previousState.sum;\n reportBucketCounts = currentBuckets.counts.map((c, i) => Math.max(0, c - (previousState.bucketCounts[i] ?? 0)));\n }\n this.previousHistogramState.set(metricKey, {\n count: state.state.count,\n sum: state.state.sum,\n bucketCounts: currentBuckets.counts.slice(),\n min: state.state.min,\n max: state.state.max\n });\n }\n const descriptor = descriptorFromState(state, attributes);\n const startTime = this.startTimeFor(descriptor.name, intervalStartTime);\n const dataPoint = {\n startTime,\n endTime: hrTimeNow,\n attributes,\n value: {\n buckets: {\n boundaries: currentBuckets.boundaries,\n counts: reportBucketCounts\n },\n count: reportCount,\n min: reportMin,\n max: reportMax,\n sum: reportSum\n }\n };\n if (metricDataByName.has(state.id)) {\n metricDataByName.get(state.id).dataPoints.push(dataPoint);\n } else {\n addMetricData({\n dataPointType: DataPointType.HISTOGRAM,\n descriptor,\n aggregationTemporality,\n dataPoints: [dataPoint]\n });\n }\n break;\n }\n case \"Frequency\":\n {\n const dataPoints = [];\n const currentOccurrences = new Map();\n for (const [freqKey, value] of state.state.occurrences) {\n currentOccurrences.set(freqKey, value);\n let reportValue = value;\n if (isDelta) {\n const previousOccurrences = this.previousFrequencyState.get(metricKey);\n if (previousOccurrences !== undefined) {\n const previousValue = previousOccurrences.get(freqKey) ?? 0;\n reportValue = Math.max(0, value - previousValue);\n }\n }\n const descriptor = descriptorFromState(state, attributes);\n const startTime = this.startTimeFor(descriptor.name, intervalStartTime);\n dataPoints.push({\n startTime,\n endTime: hrTimeNow,\n attributes: {\n ...attributes,\n key: freqKey\n },\n value: reportValue\n });\n }\n if (isDelta) {\n this.previousFrequencyState.set(metricKey, currentOccurrences);\n }\n if (metricDataByName.has(state.id)) {\n // oxlint-disable-next-line no-restricted-syntax\n metricDataByName.get(state.id).dataPoints.push(...dataPoints);\n } else {\n const descriptor = descriptorFromState(state, attributes);\n addMetricData({\n dataPointType: DataPointType.SUM,\n descriptor,\n aggregationTemporality,\n isMonotonic: true,\n dataPoints\n });\n }\n break;\n }\n case \"Summary\":\n {\n // Quantiles are always computed fresh from the sliding window\n const dataPoints = [{\n startTime: intervalStartTime,\n endTime: hrTimeNow,\n attributes: {\n ...attributes,\n quantile: \"min\"\n },\n value: state.state.min\n }];\n for (const [quantile, value] of state.state.quantiles) {\n dataPoints.push({\n startTime: intervalStartTime,\n endTime: hrTimeNow,\n attributes: {\n ...attributes,\n quantile: quantile.toString()\n },\n value: value ?? 0\n });\n }\n dataPoints.push({\n startTime: intervalStartTime,\n endTime: hrTimeNow,\n attributes: {\n ...attributes,\n quantile: \"max\"\n },\n value: state.state.max\n });\n let reportCount = state.state.count;\n let reportSum = state.state.sum;\n if (isDelta) {\n const previousState = this.previousSummaryState.get(metricKey);\n if (previousState !== undefined) {\n reportCount = state.state.count - previousState.count;\n reportSum = state.state.sum - previousState.sum;\n }\n this.previousSummaryState.set(metricKey, {\n count: state.state.count,\n sum: state.state.sum\n });\n }\n const countDataPoint = {\n startTime: intervalStartTime,\n endTime: hrTimeNow,\n attributes,\n value: reportCount\n };\n const sumDataPoint = {\n startTime: intervalStartTime,\n endTime: hrTimeNow,\n attributes,\n value: reportSum\n };\n if (metricDataByName.has(`${state.id}_quantiles`)) {\n // oxlint-disable-next-line no-restricted-syntax\n metricDataByName.get(`${state.id}_quantiles`).dataPoints.push(...dataPoints);\n metricDataByName.get(`${state.id}_count`).dataPoints.push(countDataPoint);\n metricDataByName.get(`${state.id}_sum`).dataPoints.push(sumDataPoint);\n } else {\n const descriptor = descriptorFromState(state, attributes);\n addMetricData({\n dataPointType: DataPointType.SUM,\n descriptor: {\n ...descriptor,\n name: `${descriptor.name}_quantiles`\n },\n aggregationTemporality,\n isMonotonic: false,\n dataPoints\n });\n addMetricData({\n dataPointType: DataPointType.SUM,\n descriptor: {\n name: `${state.id}_count`,\n description: state.description ?? \"\",\n unit: \"1\",\n type: InstrumentType.COUNTER,\n valueType: ValueType.INT,\n advice: {}\n },\n aggregationTemporality,\n isMonotonic: true,\n dataPoints: [countDataPoint]\n });\n addMetricData({\n dataPointType: DataPointType.SUM,\n descriptor: {\n name: `${state.id}_sum`,\n description: state.description ?? \"\",\n unit: \"1\",\n type: InstrumentType.COUNTER,\n valueType: ValueType.DOUBLE,\n advice: {}\n },\n aggregationTemporality,\n isMonotonic: true,\n dataPoints: [sumDataPoint]\n });\n }\n break;\n }\n }\n }\n // Update the previous export time for delta calculations\n if (isDelta) {\n this.previousExportTimeNanos = hrTimeNow;\n }\n return Promise.resolve({\n resourceMetrics: {\n resource: this.resource,\n scopeMetrics: [{\n scope: {\n name: sdkName\n },\n metrics: metricData\n }]\n },\n errors: []\n });\n }\n}\n/** Creates a unique key for a metric including its attributes */\nconst makeMetricKey = (id, attributes) => {\n if (attributes === undefined || Object.keys(attributes).length === 0) {\n return id;\n }\n const sortedEntries = Object.entries(attributes).sort((a, b) => a[0].localeCompare(b[0]));\n return `${id}:${JSON.stringify(sortedEntries)}`;\n};\nconst currentHrTime = () => {\n const now = Date.now();\n return [Math.floor(now / 1000), now % 1000 * 1000000];\n};\nconst descriptorFromState = (state, attributes) => {\n const unit = attributes.unit ?? attributes.time_unit ?? \"1\";\n return {\n name: state.id,\n description: state.description ?? \"\",\n unit,\n type: instrumentTypeFromSnapshot(state),\n valueType: determineValueType(state),\n advice: {}\n };\n};\nconst instrumentTypeFromSnapshot = state => {\n switch (state.type) {\n case \"Histogram\":\n return InstrumentType.HISTOGRAM;\n case \"Gauge\":\n return InstrumentType.OBSERVABLE_GAUGE;\n case \"Frequency\":\n return InstrumentType.COUNTER;\n case \"Counter\":\n return state.state.incremental ? InstrumentType.COUNTER : InstrumentType.UP_DOWN_COUNTER;\n case \"Summary\":\n return InstrumentType.COUNTER;\n }\n};\nconst determineValueType = state => {\n if (state.type === \"Counter\") {\n return typeof state.state.count === \"bigint\" ? ValueType.INT : ValueType.DOUBLE;\n } else if (state.type === \"Gauge\") {\n return typeof state.state.value === \"bigint\" ? ValueType.INT : ValueType.DOUBLE;\n }\n return ValueType.DOUBLE;\n};\n//# sourceMappingURL=metrics.js.map",
29
+ "/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\n/**\n * AggregationTemporality indicates the way additive quantities are expressed.\n */\nexport var AggregationTemporality;\n(function (AggregationTemporality) {\n AggregationTemporality[AggregationTemporality[\"DELTA\"] = 0] = \"DELTA\";\n AggregationTemporality[AggregationTemporality[\"CUMULATIVE\"] = 1] = \"CUMULATIVE\";\n})(AggregationTemporality || (AggregationTemporality = {}));\n//# sourceMappingURL=AggregationTemporality.js.map",
30
+ "/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\n/**\n * Supported types of metric instruments.\n */\nexport var InstrumentType;\n(function (InstrumentType) {\n InstrumentType[\"COUNTER\"] = \"COUNTER\";\n InstrumentType[\"GAUGE\"] = \"GAUGE\";\n InstrumentType[\"HISTOGRAM\"] = \"HISTOGRAM\";\n InstrumentType[\"UP_DOWN_COUNTER\"] = \"UP_DOWN_COUNTER\";\n InstrumentType[\"OBSERVABLE_COUNTER\"] = \"OBSERVABLE_COUNTER\";\n InstrumentType[\"OBSERVABLE_GAUGE\"] = \"OBSERVABLE_GAUGE\";\n InstrumentType[\"OBSERVABLE_UP_DOWN_COUNTER\"] = \"OBSERVABLE_UP_DOWN_COUNTER\";\n})(InstrumentType || (InstrumentType = {}));\n/**\n * The aggregated point data type.\n */\nexport var DataPointType;\n(function (DataPointType) {\n /**\n * A histogram data point contains a histogram statistics of collected\n * values with a list of explicit bucket boundaries and statistics such\n * as min, max, count, and sum of all collected values.\n */\n DataPointType[DataPointType[\"HISTOGRAM\"] = 0] = \"HISTOGRAM\";\n /**\n * An exponential histogram data point contains a histogram statistics of\n * collected values where bucket boundaries are automatically calculated\n * using an exponential function, and statistics such as min, max, count,\n * and sum of all collected values.\n */\n DataPointType[DataPointType[\"EXPONENTIAL_HISTOGRAM\"] = 1] = \"EXPONENTIAL_HISTOGRAM\";\n /**\n * A gauge metric data point has only a single numeric value.\n */\n DataPointType[DataPointType[\"GAUGE\"] = 2] = \"GAUGE\";\n /**\n * A sum metric data point has a single numeric value and a\n * monotonicity-indicator.\n */\n DataPointType[DataPointType[\"SUM\"] = 3] = \"SUM\";\n})(DataPointType || (DataPointType = {}));\n//# sourceMappingURL=MetricData.js.map",
31
+ "import * as Effect from \"effect/Effect\";\nimport * as Layer from \"effect/Layer\";\nimport { MetricProducerImpl } from \"./internal/metrics.js\";\nimport { Resource } from \"./Resource.js\";\n/**\n * Creates an OpenTelemetry metric producer from Effect metrics.\n *\n * **When to use**\n *\n * Use to create a `MetricProducer` when you need to wire Effect metrics into\n * OpenTelemetry manually instead of using the scoped `layer` helper.\n *\n * **Details**\n *\n * Requires the current OpenTelemetry `Resource`, captures the current Effect\n * context, and uses cumulative temporality by default. Pass `\"delta\"` for\n * interval-based values.\n *\n * @see {@link registerProducer} for attaching a producer to metric readers\n * @see {@link layer} for creating and registering a producer in a scoped layer\n *\n * @category constructors\n * @since 4.0.0\n */\nexport const makeProducer = temporality => Effect.gen(function* () {\n const resource = yield* Resource;\n const services = yield* Effect.context();\n return new MetricProducerImpl(resource, services, temporality);\n});\n/**\n * Registers a metric producer with one or more metric readers.\n *\n * @category constructors\n * @since 4.0.0\n */\nexport const registerProducer = (self, metricReader, options) => Effect.acquireRelease(Effect.sync(() => {\n const reader = metricReader();\n const readers = Array.isArray(reader) ? reader : [reader];\n readers.forEach(reader => reader.setMetricProducer(self));\n return readers;\n}), readers => Effect.promise(() => Promise.all(readers.map(reader => reader.shutdown()))).pipe(Effect.ignore, Effect.interruptible, Effect.timeoutOption(options?.shutdownTimeout ?? 3000)));\n/**\n * Creates a Layer that registers a metric producer with metric readers.\n *\n * **Example** (Creating a metrics layer with temporality)\n *\n * ```ts\n * import { Metrics } from \"@effect/opentelemetry\"\n * import { PeriodicExportingMetricReader } from \"@opentelemetry/sdk-metrics\"\n * import { OTLPMetricExporter } from \"@opentelemetry/exporter-metrics-otlp-http\"\n *\n * const metricExporter = new OTLPMetricExporter({ url: \"<your-otel-url>\" })\n *\n * // Use delta temporality for backends like Datadog or Dynatrace\n * const metricsLayer = Metrics.layer(\n * () => new PeriodicExportingMetricReader({\n * exporter: metricExporter,\n * exportIntervalMillis: 10000\n * }),\n * { temporality: \"delta\" }\n * )\n *\n * // Use cumulative temporality for backends like Prometheus (default)\n * const cumulativeLayer = Metrics.layer(\n * () => new PeriodicExportingMetricReader({ exporter: metricExporter }),\n * { temporality: \"cumulative\" }\n * )\n * ```\n *\n * @category layers\n * @since 4.0.0\n */\nexport const layer = (evaluate, options) => Layer.effectDiscard(Effect.flatMap(makeProducer(options?.temporality), producer => registerProducer(producer, evaluate, options)));\n//# sourceMappingURL=Metrics.js.map",
32
+ "/**\n * Bridges Effect tracing into OpenTelemetry by installing an Effect `Tracer`\n * that creates OpenTelemetry spans, records attributes, events, links, errors,\n * and status, and keeps OpenTelemetry context active while traced effects run.\n * Use this module when an application already has an OpenTelemetry\n * `TracerProvider`, or when the Node and Web SDK layers should expose Effect\n * spans to OTLP, console, or other OpenTelemetry-compatible exporters.\n *\n * The layer constructors wire Effect's tracer service to either the global\n * OpenTelemetry tracer provider or an explicitly provided `OtelTracer`. This\n * module does not create exporters or span processors by itself, so spans are\n * exported only when the provider has been configured by the application or by\n * the Node/Web SDK layers. Parentage is taken from Effect spans first and can\n * also attach to the active OpenTelemetry context, while `makeExternalSpan` and\n * `withSpanContext` are the entry points for continuing an incoming remote\n * trace. Preserve `traceFlags` and `traceState` when building external spans;\n * otherwise sampling defaults to sampled and trace state cannot be propagated.\n *\n * @since 4.0.0\n */\nimport * as Otel from \"@opentelemetry/api\";\nimport * as OtelSemConv from \"@opentelemetry/semantic-conventions\";\nimport * as Cause from \"effect/Cause\";\nimport * as Context from \"effect/Context\";\nimport * as Effect from \"effect/Effect\";\nimport * as Exit from \"effect/Exit\";\nimport { constTrue, dual } from \"effect/Function\";\nimport * as Layer from \"effect/Layer\";\nimport * as Option from \"effect/Option\";\nimport * as Predicate from \"effect/Predicate\";\nimport * as Tracer from \"effect/Tracer\";\nimport { nanosToHrTime, recordToAttributes, unknownToAttributeValue } from \"./internal/attributes.js\";\nimport { Resource } from \"./Resource.js\";\n// =============================================================================\n// Service Definitions\n// =============================================================================\n/**\n * Context service containing the OpenTelemetry `Tracer` used to create spans for Effect tracing.\n *\n * @category services\n * @since 4.0.0\n */\nexport class OtelTracer extends /*#__PURE__*/Context.Service()(\"@effect/opentelemetry/Tracer\") {}\n/**\n * Context service containing the OpenTelemetry `TracerProvider` used to obtain tracers.\n *\n * @category services\n * @since 4.0.0\n */\nexport class OtelTracerProvider extends /*#__PURE__*/Context.Service()(\"@effect/opentelemetry/Tracer/OtelTracerProvider\") {}\n/**\n * Context service containing OpenTelemetry trace flags used when constructing external span contexts.\n *\n * @category services\n * @since 4.0.0\n */\nexport class OtelTraceFlags extends /*#__PURE__*/Context.Service()(\"@effect/opentelemetry/Tracer/OtelTraceFlags\") {}\n/**\n * Context service containing OpenTelemetry trace state used when constructing external span contexts.\n *\n * @category services\n * @since 4.0.0\n */\nexport class OtelTraceState extends /*#__PURE__*/Context.Service()(\"@effect/opentelemetry/Tracer/OtelTraceState\") {}\n// =============================================================================\n// Constructors\n// =============================================================================\n/**\n * Creates an Effect `Tracer` implementation backed by the configured OpenTelemetry tracer.\n *\n * @category constructors\n * @since 4.0.0\n */\nexport const make = /*#__PURE__*/Effect.map(/*#__PURE__*/Effect.service(OtelTracer), tracer => Tracer.make({\n span(options) {\n return new OtelSpan(Otel.context, Otel.trace, tracer, options);\n },\n context(primitive, fiber) {\n const currentSpan = fiber.currentSpan;\n if (currentSpan === undefined) {\n return primitive[\"~effect/Effect/evaluate\"](fiber);\n }\n return Otel.context.with(populateContext(Otel.context.active(), currentSpan), () => primitive[\"~effect/Effect/evaluate\"](fiber));\n }\n}));\n/**\n * Creates an Effect external span from an OpenTelemetry span context, preserving trace flags and trace state when provided.\n *\n * @category constructors\n * @since 4.0.0\n */\nexport const makeExternalSpan = options => {\n const annotations = Context.mutate(Context.empty(), annotations => {\n let next = annotations;\n if (options.traceFlags !== undefined) {\n next = Context.add(next, OtelTraceFlags, options.traceFlags);\n }\n if (typeof options.traceState === \"string\") {\n try {\n next = Context.add(next, OtelTraceState, Otel.createTraceState(options.traceState));\n } catch {\n //\n }\n } else if (options.traceState) {\n next = Context.add(next, OtelTraceState, options.traceState);\n }\n return next;\n });\n return {\n _tag: \"ExternalSpan\",\n traceId: options.traceId,\n spanId: options.spanId,\n sampled: Predicate.isNotUndefined(options.traceFlags) ? isSampled(options.traceFlags) : true,\n annotations\n };\n};\n// =============================================================================\n// Layers\n// =============================================================================\n/**\n * Layer that provides the current global OpenTelemetry tracer provider.\n *\n * @category layers\n * @since 4.0.0\n */\nexport const layerGlobalProvider = /*#__PURE__*/Layer.sync(OtelTracerProvider, () => Otel.trace.getTracerProvider());\n/**\n * Layer that creates an OpenTelemetry tracer from the provided tracer provider and resource metadata.\n *\n * @category layers\n * @since 4.0.0\n */\nexport const layerTracer = /*#__PURE__*/Layer.effect(OtelTracer, /*#__PURE__*/Effect.gen(function* () {\n const resource = yield* Resource;\n const provider = yield* OtelTracerProvider;\n return provider.getTracer(resource.attributes[OtelSemConv.ATTR_SERVICE_NAME], resource.attributes[OtelSemConv.ATTR_SERVICE_VERSION]);\n}));\n/**\n * Layer that creates an OpenTelemetry tracer from the global tracer provider and the current resource.\n *\n * @category layers\n * @since 4.0.0\n */\nexport const layerGlobalTracer = /*#__PURE__*/layerTracer.pipe(/*#__PURE__*/Layer.provide(layerGlobalProvider));\n/**\n * Layer that installs an Effect tracer backed by the global OpenTelemetry tracer provider.\n *\n * @category layers\n * @since 4.0.0\n */\nexport const layerGlobal = /*#__PURE__*/Layer.effect(Tracer.Tracer, make).pipe(/*#__PURE__*/Layer.provideMerge(layerGlobalTracer));\n/**\n * Layer that installs the Effect tracer using an `OtelTracer` already provided in the environment.\n *\n * @category layers\n * @since 4.0.0\n */\nexport const layerWithoutOtelTracer = /*#__PURE__*/Layer.effect(Tracer.Tracer, make);\n/**\n * Layer that creates an OpenTelemetry tracer from a provider and resource, then installs it as the Effect tracer.\n *\n * **When to use**\n *\n * Use when your application already supplies an `OtelTracerProvider` and a\n * `Resource`, and you want Effect spans to be created by an OpenTelemetry\n * tracer derived from those services.\n *\n * @see {@link layerTracer} for creating only the OpenTelemetry tracer service\n * @see {@link layerGlobal} for installing the Effect tracer from the global provider\n * @see {@link layerWithoutOtelTracer} for installing an already-provided `OtelTracer`\n *\n * @category layers\n * @since 4.0.0\n */\nexport const layer = /*#__PURE__*/layerWithoutOtelTracer.pipe(/*#__PURE__*/Layer.provideMerge(layerTracer));\n// =============================================================================\n// Utilities / Combinators\n// =============================================================================\nconst bigint1e6 = /*#__PURE__*/BigInt(1_000_000);\nconst bigint1e9 = /*#__PURE__*/BigInt(1_000_000_000);\n/**\n * Gets the current OpenTelemetry span.\n *\n * **Details**\n *\n * This accessor works with both the official OpenTelemetry API, such as\n * `Tracer.layer` and `NodeSdk.layer`, and the lightweight OTLP module, such as\n * `OtlpTracer.layer`. When using OTLP, the returned span is a wrapper that\n * conforms to the OpenTelemetry `Span` interface.\n *\n * @category accessors\n * @since 4.0.0\n */\nexport const currentOtelSpan = /*#__PURE__*/Effect.clockWith(clock => Effect.map(Effect.currentSpan, span => OtelSpanTypeId in span ? span.span : makeOtelSpan(span, clock)));\nconst makeOtelSpan = (span, clock) => {\n const spanContext = {\n traceId: span.traceId,\n spanId: span.spanId,\n traceFlags: span.sampled ? Otel.TraceFlags.SAMPLED : Otel.TraceFlags.NONE,\n isRemote: false\n };\n let exit = Exit.void;\n const self = {\n spanContext: () => spanContext,\n setAttribute(key, value) {\n span.attribute(key, value);\n return self;\n },\n setAttributes(attributes) {\n for (const [key, value] of Object.entries(attributes)) {\n span.attribute(key, value);\n }\n return self;\n },\n addEvent(name) {\n let attributes = undefined;\n let startTime = undefined;\n if (arguments.length === 3) {\n attributes = arguments[1];\n startTime = arguments[2];\n } else {\n startTime = arguments[1];\n }\n span.event(name, convertOtelTimeInput(startTime, clock), attributes);\n return self;\n },\n addLink(link) {\n span.addLinks([{\n span: makeExternalSpan(link.context),\n attributes: link.attributes ?? {}\n }]);\n return self;\n },\n addLinks(links) {\n span.addLinks(links.map(link => ({\n span: makeExternalSpan(link.context),\n attributes: link.attributes ?? {}\n })));\n return self;\n },\n setStatus(status) {\n exit = Otel.SpanStatusCode.ERROR ? Exit.die(status.message ?? \"Unknown error\") : Exit.void;\n return self;\n },\n updateName: () => self,\n end(endTime) {\n const time = convertOtelTimeInput(endTime, clock);\n span.end(time, exit);\n return self;\n },\n isRecording: constTrue,\n recordException(exception, timeInput) {\n const time = convertOtelTimeInput(timeInput, clock);\n const cause = Cause.fail(exception);\n const error = Cause.prettyErrors(cause)[0];\n span.event(error.message, time, {\n \"exception.type\": error.name,\n \"exception.message\": error.message,\n \"exception.stacktrace\": error.stack ?? \"\"\n });\n }\n };\n return self;\n};\nconst convertOtelTimeInput = (input, clock) => {\n if (input === undefined) {\n return clock.currentTimeNanosUnsafe();\n } else if (typeof input === \"number\") {\n return BigInt(Math.round(input * 1_000_000));\n } else if (input instanceof Date) {\n return BigInt(input.getTime()) * bigint1e6;\n }\n const [seconds, nanos] = input;\n return BigInt(seconds) * bigint1e9 + BigInt(nanos);\n};\n/**\n * Sets an effect's parent span from the given OpenTelemetry `SpanContext`.\n *\n * **When to use**\n *\n * Use when OpenTelemetry instrumentation outside Effect has already\n * produced a parent span context and an effect should continue that trace.\n *\n * @category propagation\n * @since 4.0.0\n */\nexport const withSpanContext = /*#__PURE__*/dual(2, (self, spanContext) => Effect.withParentSpan(self, makeExternalSpan(spanContext)));\n// =============================================================================\n// Internals\n// =============================================================================\nconst OtelSpanTypeId = \"~@effect/opentelemetry/Tracer/OtelSpan\";\nconst kindMap = {\n \"internal\": Otel.SpanKind.INTERNAL,\n \"client\": Otel.SpanKind.CLIENT,\n \"server\": Otel.SpanKind.SERVER,\n \"producer\": Otel.SpanKind.PRODUCER,\n \"consumer\": Otel.SpanKind.CONSUMER\n};\n/** @internal */\nexport class OtelSpan {\n [OtelSpanTypeId];\n _tag = \"Span\";\n name;\n kind;\n annotations;\n links;\n span;\n spanId;\n traceId;\n attributes = /*#__PURE__*/new Map();\n sampled;\n parent;\n status;\n constructor(contextApi, traceApi, tracer, options) {\n this[OtelSpanTypeId] = OtelSpanTypeId;\n this.name = options.name;\n this.annotations = options.annotations;\n this.links = options.links;\n this.kind = options.kind;\n const active = contextApi.active();\n this.parent = options.root !== true ? Option.orElse(options.parent, () => getOtelParent(traceApi, active, options.annotations)) : options.parent;\n this.span = tracer.startSpan(options.name, {\n startTime: nanosToHrTime(options.startTime),\n links: options.links.length > 0 ? options.links.map(link => ({\n context: makeSpanContext(link.span),\n attributes: recordToAttributes(link.attributes)\n })) : undefined,\n kind: kindMap[this.kind]\n }, Option.isSome(this.parent) ? populateContext(active, this.parent.value, options.annotations) : Otel.trace.deleteSpan(active));\n const spanContext = this.span.spanContext();\n this.spanId = spanContext.spanId;\n this.traceId = spanContext.traceId;\n this.status = {\n _tag: \"Started\",\n startTime: options.startTime\n };\n this.sampled = isSampled(spanContext.traceFlags);\n }\n attribute(key, value) {\n this.span.setAttribute(key, unknownToAttributeValue(value));\n this.attributes.set(key, value);\n }\n addLinks(links) {\n // oxlint-disable-next-line no-restricted-syntax\n this.links.push(...links);\n this.span.addLinks(links.map(link => ({\n context: makeSpanContext(link.span),\n attributes: recordToAttributes(link.attributes)\n })));\n }\n end(endTime, exit) {\n const hrTime = nanosToHrTime(endTime);\n this.status = {\n _tag: \"Ended\",\n endTime,\n exit,\n startTime: this.status.startTime\n };\n if (exit._tag === \"Success\") {\n this.span.setStatus({\n code: Otel.SpanStatusCode.OK\n });\n } else {\n if (Cause.hasInterruptsOnly(exit.cause)) {\n this.span.setStatus({\n code: Otel.SpanStatusCode.OK,\n message: Cause.pretty(exit.cause)\n });\n this.span.setAttribute(\"span.label\", \"⚠︎ Interrupted\");\n this.span.setAttribute(\"status.interrupted\", true);\n } else {\n const errors = Cause.prettyErrors(exit.cause);\n if (errors.length > 0) {\n for (const error of errors) {\n this.span.recordException(error, hrTime);\n }\n this.span.setStatus({\n code: Otel.SpanStatusCode.ERROR,\n message: errors[0].message\n });\n } else {\n // empty cause means no error\n this.span.setStatus({\n code: Otel.SpanStatusCode.OK\n });\n }\n }\n }\n this.span.end(hrTime);\n }\n event(name, startTime, attributes) {\n this.span.addEvent(name, attributes ? recordToAttributes(attributes) : undefined, nanosToHrTime(startTime));\n }\n}\nconst isSampled = traceFlags => (traceFlags & Otel.TraceFlags.SAMPLED) === Otel.TraceFlags.SAMPLED;\nconst getOtelParent = (tracer, context, annotations) => {\n const otelParent = tracer.getSpan(context)?.spanContext();\n if (!otelParent) return Option.none();\n return Option.some(Tracer.externalSpan({\n spanId: otelParent.spanId,\n traceId: otelParent.traceId,\n sampled: (otelParent.traceFlags & 1) === 1,\n annotations\n }));\n};\nconst makeSpanContext = (span, annotations) => {\n const traceFlags = makeTraceFlags(span, annotations);\n const traceState = makeTraceState(span, annotations);\n return {\n spanId: span.spanId,\n traceId: span.traceId,\n isRemote: span._tag === \"ExternalSpan\",\n traceFlags,\n traceState\n };\n};\nconst makeTraceFlags = (span, annotations) => {\n let traceFlags;\n if (Predicate.isNotUndefined(annotations)) {\n traceFlags = extractTraceService(span, annotations, OtelTraceFlags);\n if (Predicate.isUndefined(traceFlags)) {\n traceFlags = Context.getOrUndefined(span.annotations, OtelTraceFlags);\n }\n }\n return traceFlags ?? Otel.TraceFlags.SAMPLED;\n};\nconst makeTraceState = (span, annotations) => {\n let traceState;\n if (Predicate.isNotUndefined(annotations)) {\n traceState = extractTraceService(span, annotations, OtelTraceState);\n if (Predicate.isUndefined(traceState)) {\n traceState = Context.getOrUndefined(span.annotations, OtelTraceState);\n }\n }\n return traceState;\n};\nconst extractTraceService = (parent, annotations, service) => {\n const instance = Context.getOrUndefined(annotations, service);\n if (Predicate.isNotUndefined(instance)) {\n return instance;\n }\n return Context.getOrUndefined(parent.annotations, service);\n};\nconst populateContext = (context, span, annotations) => span instanceof OtelSpan ? Otel.trace.setSpan(context, span.span) : Otel.trace.setSpanContext(context, makeSpanContext(span, annotations));\n//# sourceMappingURL=Tracer.js.map"
33
+ ],
34
+ "mappings": "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",
35
+ "debugId": "0C79C2F5FE1C7FA864756E2164756E21",
36
+ "names": []
37
+ }
@@ -0,0 +1,10 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["src/commands/handlers/service/start.ts"],
4
+ "sourcesContent": [
5
+ "import { EOL } from \"os\"\nimport * as Effect from \"effect/Effect\"\nimport { Commands } from \"../../commands\"\nimport { Runtime } from \"../../../framework/runtime\"\nimport { Daemon } from \"../../../services/daemon\"\n\nexport default Runtime.handler(\n Commands.commands.service.commands.start,\n Effect.fn(\"cli.service.start\")(function* () {\n process.stdout.write((yield* (yield* Daemon.Service).start()) + EOL)\n }),\n)\n"
6
+ ],
7
+ "mappings": ";uLAAA,mBAAS,gBAMT,SAAe,IAAQ,QACrB,EAAS,SAAS,QAAQ,SAAS,MAC5B,EAAG,mBAAmB,EAAE,SAAU,EAAG,CAC1C,QAAQ,OAAO,OAAO,OAAQ,MAAO,EAAO,SAAS,MAAM,GAAK,CAAG,EACpE,CACH",
8
+ "debugId": "C5F14873049EE3DA64756E2164756E21",
9
+ "names": []
10
+ }