@cartanova/qgrid-cli 2.1.1 → 2.2.1
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.
- package/bundle/dist/application/qgrid/conv-routing.js +68 -0
- package/bundle/dist/application/qgrid/qgrid-run-lifecycle.js +2 -2
- package/bundle/dist/application/qgrid/qgrid.dispatcher.js +16 -15
- package/bundle/dist/application/qgrid/qgrid.frame.js +11 -4
- package/bundle/dist/application/qgrid/qgrid.types.js +12 -3
- package/bundle/dist/application/qgrid/tool-emulation.js +11 -6
- package/bundle/dist/utils/providers/common/model-cost.js +32 -17
- package/bundle/dist/utils/providers/openai/codex-worker.js +65 -21
- package/bundle/dist/utils/providers/openai/openai-dispatcher.js +65 -21
- package/bundle/src/application/qgrid/conv-routing.ts +97 -0
- package/bundle/src/application/qgrid/qgrid-run-lifecycle.ts +2 -1
- package/bundle/src/application/qgrid/qgrid.dispatcher.ts +16 -5
- package/bundle/src/application/qgrid/qgrid.frame.ts +11 -3
- package/bundle/src/application/qgrid/qgrid.types.ts +14 -1
- package/bundle/src/application/qgrid/tool-emulation.ts +20 -5
- package/bundle/src/application/sonamu.generated.http +14 -2
- package/bundle/src/utils/providers/common/model-cost.ts +55 -9
- package/bundle/src/utils/providers/common/provider-dispatcher.ts +29 -2
- package/bundle/src/utils/providers/openai/codex-worker.test.ts +91 -0
- package/bundle/src/utils/providers/openai/codex-worker.ts +105 -19
- package/bundle/src/utils/providers/openai/openai-dispatcher.ts +104 -27
- package/bundle/web-dist/client/assets/cost-CpjVoAqp.js +1 -0
- package/bundle/web-dist/client/assets/{index-ZV-tHpAg.js → index-DeThumA3.js} +2 -2
- package/bundle/web-dist/client/assets/logs-CtmOVH58.js +1 -0
- package/bundle/web-dist/client/assets/{routes-BMRwPj6F.js → routes-Cfoe9J0I.js} +1 -1
- package/bundle/web-dist/client/assets/show-C6OofoAL.js +30 -0
- package/bundle/web-dist/client/assets/{tokens-Cg1f0Ga2.js → tokens-BAZq8sTo.js} +1 -1
- package/bundle/web-dist/client/index.html +1 -1
- package/bundle/web-dist/server/assets/cost-DzjfVtUr.js +24 -0
- package/bundle/web-dist/server/assets/{logs-Xt934T5f.js → logs-CHM0fhfO.js} +2 -7
- package/bundle/web-dist/server/assets/{routes-B7QYbNIv.js → routes-C9xFMJ_r.js} +1 -1
- package/bundle/web-dist/server/assets/{show-Dxz6UJnD.js → show-BZWqH09U.js} +2 -4
- package/bundle/web-dist/server/entry-server.generated.js +3 -3
- package/package.json +1 -1
- package/bundle/web-dist/client/assets/cost-DE_8cLD-.js +0 -1
- package/bundle/web-dist/client/assets/logs-HJYkbqom.js +0 -1
- package/bundle/web-dist/client/assets/show-DI6iWDzV.js +0 -30
- package/bundle/web-dist/server/assets/cost-DdHTzQDR.js +0 -14
|
@@ -38,7 +38,16 @@ const QgridLogMode = z.enum([
|
|
|
38
38
|
"run",
|
|
39
39
|
"none"
|
|
40
40
|
]);
|
|
41
|
-
const
|
|
41
|
+
const QgridThreadCoord = z.object({
|
|
42
|
+
workerId: z.number(),
|
|
43
|
+
threadId: z.string(),
|
|
44
|
+
epoch: z.number(),
|
|
45
|
+
systemHash: z.string()
|
|
46
|
+
});
|
|
47
|
+
const QgridRunContext = z.object({
|
|
48
|
+
requestLogId: z.number().optional(),
|
|
49
|
+
threadCoord: QgridThreadCoord.optional()
|
|
50
|
+
});
|
|
42
51
|
const QgridToolResultInput = z.object({
|
|
43
52
|
toolCallId: z.string(),
|
|
44
53
|
toolName: z.string().optional(),
|
|
@@ -195,6 +204,6 @@ function maskToken(token) {
|
|
|
195
204
|
return token.length > 4 ? `...${token.slice(-4)}` : token;
|
|
196
205
|
}
|
|
197
206
|
//#endregion
|
|
198
|
-
export { AddTokenInput, AppendStepInput, CreateRunInput, Effort, FinishReason, FinishRunInput, HealthResponse, OAuthStartResult, ProcessError, QgridContent, QgridLogMode, QgridRunContext, QgridTool, QgridToolResultInput, QueryInput, QueryOutput, QuotaError, ReasoningSummary, RemoveTokenInput, ServiceTier, StreamEvents, SubscriberStatus, TimeoutError, TokenStats, UsageResponse, Verbosity, maskToken };
|
|
207
|
+
export { AddTokenInput, AppendStepInput, CreateRunInput, Effort, FinishReason, FinishRunInput, HealthResponse, OAuthStartResult, ProcessError, QgridContent, QgridLogMode, QgridRunContext, QgridThreadCoord, QgridTool, QgridToolResultInput, QueryInput, QueryOutput, QuotaError, ReasoningSummary, RemoveTokenInput, ServiceTier, StreamEvents, SubscriberStatus, TimeoutError, TokenStats, UsageResponse, Verbosity, maskToken };
|
|
199
208
|
|
|
200
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicWdyaWQudHlwZXMuanMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2FwcGxpY2F0aW9uL3FncmlkL3FncmlkLnR5cGVzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHogfSBmcm9tIFwiem9kXCI7XG5cbi8vIOKUgOKUgOKUgCBRdWVyeSDilIDilIDilIBcblxuZXhwb3J0IGNvbnN0IEVmZm9ydCA9IHouZW51bShbXCJsb3dcIiwgXCJtZWRpdW1cIiwgXCJoaWdoXCJdKTtcbmV4cG9ydCB0eXBlIEVmZm9ydCA9IHouaW5mZXI8dHlwZW9mIEVmZm9ydD47XG5cbmV4cG9ydCBjb25zdCBRZ3JpZFRvb2wgPSB6Lm9iamVjdCh7XG4gIG5hbWU6IHouc3RyaW5nKCksXG4gIGRlc2NyaXB0aW9uOiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIGlucHV0U2NoZW1hOiB6LnVua25vd24oKSxcbn0pO1xuZXhwb3J0IHR5cGUgUWdyaWRUb29sID0gei5pbmZlcjx0eXBlb2YgUWdyaWRUb29sPjtcblxuZXhwb3J0IGNvbnN0IFFncmlkQ29udGVudCA9IHouZGlzY3JpbWluYXRlZFVuaW9uKFwidHlwZVwiLCBbXG4gIHoub2JqZWN0KHtcbiAgICB0eXBlOiB6LmxpdGVyYWwoXCJ0ZXh0XCIpLFxuICAgIHRleHQ6IHouc3RyaW5nKCksXG4gIH0pLFxuICB6Lm9iamVjdCh7XG4gICAgdHlwZTogei5saXRlcmFsKFwidG9vbC1jYWxsXCIpLFxuICAgIHRvb2xDYWxsSWQ6IHouc3RyaW5nKCksXG4gICAgdG9vbE5hbWU6IHouc3RyaW5nKCksXG4gICAgaW5wdXQ6IHouc3RyaW5nKCksXG4gIH0pLFxuXSk7XG5leHBvcnQgdHlwZSBRZ3JpZENvbnRlbnQgPSB6LmluZmVyPHR5cGVvZiBRZ3JpZENvbnRlbnQ+O1xuXG5leHBvcnQgY29uc3QgRmluaXNoUmVhc29uID0gei5lbnVtKFtcInN0b3BcIiwgXCJ0b29sLWNhbGxzXCJdKTtcbmV4cG9ydCB0eXBlIEZpbmlzaFJlYXNvbiA9IHouaW5mZXI8dHlwZW9mIEZpbmlzaFJlYXNvbj47XG5cbmV4cG9ydCBjb25zdCBWZXJib3NpdHkgPSB6LmVudW0oW1wibG93XCIsIFwibWVkaXVtXCIsIFwiaGlnaFwiXSk7XG5leHBvcnQgdHlwZSBWZXJib3NpdHkgPSB6LmluZmVyPHR5cGVvZiBWZXJib3NpdHk+O1xuXG5leHBvcnQgY29uc3QgUmVhc29uaW5nU3VtbWFyeSA9IHouZW51bShbXCJhdXRvXCIsIFwiY29uY2lzZVwiLCBcImRldGFpbGVkXCIsIFwibm9uZVwiXSk7XG5leHBvcnQgdHlwZSBSZWFzb25pbmdTdW1tYXJ5ID0gei5pbmZlcjx0eXBlb2YgUmVhc29uaW5nU3VtbWFyeT47XG5cbmV4cG9ydCBjb25zdCBTZXJ2aWNlVGllciA9IHouZW51bShbXCJmYXN0XCIsIFwiZmxleFwiXSk7XG5leHBvcnQgdHlwZSBTZXJ2aWNlVGllciA9IHouaW5mZXI8dHlwZW9mIFNlcnZpY2VUaWVyPjtcblxuLy8g4pSA4pSA4pSAIFJ1biBMaWZlY3ljbGUgQ29udGV4dCAoU0RLIOKGlCBTZXJ2ZXIgY29udHJhY3QpIOKUgOKUgOKUgFxuXG5leHBvcnQgY29uc3QgUWdyaWRMb2dNb2RlID0gei5lbnVtKFtcImF1dG9cIiwgXCJydW5cIiwgXCJub25lXCJdKTtcbmV4cG9ydCB0eXBlIFFncmlkTG9nTW9kZSA9IHouaW5mZXI8dHlwZW9mIFFncmlkTG9nTW9kZT47XG5cbmV4cG9ydCBjb25zdCBRZ3JpZFJ1bkNvbnRleHQgPSB6Lm9iamVjdCh7XG4gIHJlcXVlc3RMb2dJZDogei5udW1iZXIoKSxcbn0pO1xuZXhwb3J0IHR5cGUgUWdyaWRSdW5Db250ZXh0ID0gei5pbmZlcjx0eXBlb2YgUWdyaWRSdW5Db250ZXh0PjtcblxuZXhwb3J0IGNvbnN0IFFncmlkVG9vbFJlc3VsdElucHV0ID0gei5vYmplY3Qoe1xuICB0b29sQ2FsbElkOiB6LnN0cmluZygpLFxuICB0b29sTmFtZTogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBvdXRwdXQ6IHouc3RyaW5nKCksXG4gIGlzRXJyb3I6IHouYm9vbGVhbigpLm9wdGlvbmFsKCksXG59KTtcbmV4cG9ydCB0eXBlIFFncmlkVG9vbFJlc3VsdElucHV0ID0gei5pbmZlcjx0eXBlb2YgUWdyaWRUb29sUmVzdWx0SW5wdXQ+O1xuXG5leHBvcnQgY29uc3QgUXVlcnlJbnB1dCA9IHoub2JqZWN0KHtcbiAgc3lzdGVtOiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIHByb21wdDogei5zdHJpbmcoKSxcbiAgbW9kZWw6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgdGltZW91dDogei5udW1iZXIoKS5vcHRpb25hbCgpLFxuICBqc29uU2NoZW1hOiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIHRvb2xzOiB6LmFycmF5KFFncmlkVG9vbCkub3B0aW9uYWwoKSxcbiAgZWZmb3J0OiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIHZlcmJvc2l0eTogVmVyYm9zaXR5Lm9wdGlvbmFsKCksXG4gIHJlYXNvbmluZ1N1bW1hcnk6IFJlYXNvbmluZ1N1bW1hcnkub3B0aW9uYWwoKSxcbiAgc2VydmljZVRpZXI6IFNlcnZpY2VUaWVyLm9wdGlvbmFsKCksXG4gIGhpc3Rvcnk6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgcHJvamVjdE5hbWU6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgaXNTdGVwOiB6LmJvb2xlYW4oKS5vcHRpb25hbCgpLFxuICBsb2dNb2RlOiBRZ3JpZExvZ01vZGUub3B0aW9uYWwoKSxcbiAgcnVuQ29udGV4dDogUWdyaWRSdW5Db250ZXh0Lm9wdGlvbmFsKCksXG4gIHRvb2xSZXN1bHRzOiB6LmFycmF5KFFncmlkVG9vbFJlc3VsdElucHV0KS5vcHRpb25hbCgpLFxufSk7XG5leHBvcnQgdHlwZSBRdWVyeUlucHV0ID0gei5pbmZlcjx0eXBlb2YgUXVlcnlJbnB1dD47XG5cbmV4cG9ydCBjb25zdCBRdWVyeU91dHB1dCA9IHoub2JqZWN0KHtcbiAgdGV4dDogei5zdHJpbmcoKSxcbiAgY29udGVudDogei5hcnJheShRZ3JpZENvbnRlbnQpLFxuICBmaW5pc2hSZWFzb246IEZpbmlzaFJlYXNvbixcbiAgdG9rZW5OYW1lOiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIG1vZGVsOiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIHVzYWdlOiB6Lm9iamVjdCh7XG4gICAgaW5wdXRfdG9rZW5zOiB6Lm51bWJlcigpLFxuICAgIG91dHB1dF90b2tlbnM6IHoubnVtYmVyKCksXG4gICAgY2FjaGVfY3JlYXRpb25faW5wdXRfdG9rZW5zOiB6Lm51bWJlcigpLFxuICAgIGNhY2hlX3JlYWRfaW5wdXRfdG9rZW5zOiB6Lm51bWJlcigpLFxuICB9KSxcbiAgZHVyYXRpb25Nczogei5udW1iZXIoKSxcbiAgY29zdFVzZDogei5udW1iZXIoKSxcbiAgcnVuQ29udGV4dDogUWdyaWRSdW5Db250ZXh0Lm9wdGlvbmFsKCksXG59KTtcbmV4cG9ydCB0eXBlIFF1ZXJ5T3V0cHV0ID0gei5pbmZlcjx0eXBlb2YgUXVlcnlPdXRwdXQ+O1xuXG4vLyDilIDilIDilIAgU3RyZWFtIEV2ZW50cyDilIDilIDilIBcblxuZXhwb3J0IGNvbnN0IFN0cmVhbUV2ZW50cyA9IHoub2JqZWN0KHtcbiAgZGVsdGE6IHoub2JqZWN0KHsgdGV4dDogei5zdHJpbmcoKSB9KSxcbiAgdG9vbENhbGw6IHoub2JqZWN0KHtcbiAgICB0b29sQ2FsbElkOiB6LnN0cmluZygpLFxuICAgIHRvb2xOYW1lOiB6LnN0cmluZygpLFxuICAgIGlucHV0OiB6LnN0cmluZygpLFxuICB9KSxcbiAgZG9uZTogei5vYmplY3Qoe1xuICAgIHRleHQ6IHouc3RyaW5nKCksXG4gICAgbW9kZWw6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgICB0b2tlbk5hbWU6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgICBmaW5pc2hSZWFzb246IEZpbmlzaFJlYXNvbixcbiAgICB1c2FnZTogei5vYmplY3Qoe1xuICAgICAgaW5wdXRfdG9rZW5zOiB6Lm51bWJlcigpLFxuICAgICAgb3V0cHV0X3Rva2Vuczogei5udW1iZXIoKSxcbiAgICAgIGNhY2hlX2NyZWF0aW9uX2lucHV0X3Rva2Vuczogei5udW1iZXIoKSxcbiAgICAgIGNhY2hlX3JlYWRfaW5wdXRfdG9rZW5zOiB6Lm51bWJlcigpLFxuICAgIH0pLFxuICAgIGR1cmF0aW9uTXM6IHoubnVtYmVyKCksXG4gICAgY29zdFVzZDogei5udW1iZXIoKSxcbiAgICBjb250ZW50OiB6LmFycmF5KFFncmlkQ29udGVudCksXG4gICAgcnVuQ29udGV4dDogUWdyaWRSdW5Db250ZXh0Lm9wdGlvbmFsKCksXG4gIH0pLFxuICBlcnJvcjogei5vYmplY3QoeyBtZXNzYWdlOiB6LnN0cmluZygpIH0pLFxufSk7XG5leHBvcnQgdHlwZSBTdHJlYW1FdmVudHMgPSB6LmluZmVyPHR5cGVvZiBTdHJlYW1FdmVudHM+O1xuXG4vLyDilIDilIDilIAgUnVuIExpZmVjeWNsZSDilIDilIDilIBcblxuZXhwb3J0IGNvbnN0IENyZWF0ZVJ1bklucHV0ID0gei5vYmplY3Qoe1xuICB1c2VyUHJvbXB0OiB6LnN0cmluZygpLFxuICBzeXN0ZW1Qcm9tcHQ6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgbW9kZWxOYW1lOiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIGVmZm9ydDogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBwcm9qZWN0TmFtZTogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBoaXN0b3J5OiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG59KTtcbmV4cG9ydCB0eXBlIENyZWF0ZVJ1bklucHV0ID0gei5pbmZlcjx0eXBlb2YgQ3JlYXRlUnVuSW5wdXQ+O1xuXG5leHBvcnQgY29uc3QgQXBwZW5kU3RlcElucHV0ID0gei5vYmplY3Qoe1xuICByZXF1ZXN0TG9nSWQ6IHoubnVtYmVyKCksXG4gIHN0ZXBJbmRleDogei5udW1iZXIoKSxcbiAgdHlwZTogei5lbnVtKFtcImdlbmVyYXRlXCIsIFwidG9vbF9jYWxsXCJdKSxcbiAgaW5wdXRUb2tlbnM6IHoubnVtYmVyKCkub3B0aW9uYWwoKSxcbiAgb3V0cHV0VG9rZW5zOiB6Lm51bWJlcigpLm9wdGlvbmFsKCksXG4gIGNhY2hlUmVhZFRva2Vuczogei5udW1iZXIoKS5vcHRpb25hbCgpLFxuICBjYWNoZUNyZWF0aW9uVG9rZW5zOiB6Lm51bWJlcigpLm9wdGlvbmFsKCksXG4gIGR1cmF0aW9uTXM6IHoubnVtYmVyKCkub3B0aW9uYWwoKSxcbiAgZmluaXNoUmVhc29uOiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIHJlYXNvbmluZ1RleHQ6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgcmVhc29uaW5nVG9rZW5zOiB6Lm51bWJlcigpLm9wdGlvbmFsKCksXG4gIHRvb2xDYWxsSW5kZXg6IHoubnVtYmVyKCkub3B0aW9uYWwoKSxcbiAgdG9vbENhbGxJZDogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICB0b29sTmFtZTogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICB0b29sQXJnczogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICB0b29sUmVzdWx0OiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIHRvb2xEdXJhdGlvbk1zOiB6Lm51bWJlcigpLm9wdGlvbmFsKCksXG4gIGVycm9yOiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG59KTtcbmV4cG9ydCB0eXBlIEFwcGVuZFN0ZXBJbnB1dCA9IHouaW5mZXI8dHlwZW9mIEFwcGVuZFN0ZXBJbnB1dD47XG5cbmV4cG9ydCBjb25zdCBGaW5pc2hSdW5JbnB1dCA9IHoub2JqZWN0KHtcbiAgcmVxdWVzdExvZ0lkOiB6Lm51bWJlcigpLFxuICBzdGF0dXM6IHouZW51bShbXCJzdWNjZWVkZWRcIiwgXCJlcnJvclwiLCBcImFib3J0ZWRcIl0pLFxuICByZXNwb25zZTogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICB0b2tlbk5hbWU6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgdG90YWxJbnB1dFRva2Vuczogei5udW1iZXIoKS5vcHRpb25hbCgpLFxuICB0b3RhbE91dHB1dFRva2Vuczogei5udW1iZXIoKS5vcHRpb25hbCgpLFxuICB0b3RhbENhY2hlUmVhZFRva2Vuczogei5udW1iZXIoKS5vcHRpb25hbCgpLFxuICB0b3RhbENhY2hlQ3JlYXRpb25Ub2tlbnM6IHoubnVtYmVyKCkub3B0aW9uYWwoKSxcbiAgdG90YWxEdXJhdGlvbk1zOiB6Lm51bWJlcigpLm9wdGlvbmFsKCksXG4gIGhpc3Rvcnk6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgZXJyb3JNZXNzYWdlOiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG59KTtcbmV4cG9ydCB0eXBlIEZpbmlzaFJ1bklucHV0ID0gei5pbmZlcjx0eXBlb2YgRmluaXNoUnVuSW5wdXQ+O1xuXG4vLyDilIDilIDilIAgVG9rZW4gTWFuYWdlbWVudCDilIDilIDilIBcblxuZXhwb3J0IGNvbnN0IEFkZFRva2VuSW5wdXQgPSB6Lm9iamVjdCh7XG4gIHRva2VuOiB6LnN0cmluZygpLFxuICBuYW1lOiB6LnN0cmluZygpLFxufSk7XG5leHBvcnQgdHlwZSBBZGRUb2tlbklucHV0ID0gei5pbmZlcjx0eXBlb2YgQWRkVG9rZW5JbnB1dD47XG5cbmV4cG9ydCBjb25zdCBSZW1vdmVUb2tlbklucHV0ID0gei5vYmplY3Qoe1xuICB0b2tlbjogei5zdHJpbmcoKSxcbn0pO1xuZXhwb3J0IHR5cGUgUmVtb3ZlVG9rZW5JbnB1dCA9IHouaW5mZXI8dHlwZW9mIFJlbW92ZVRva2VuSW5wdXQ+O1xuXG5leHBvcnQgY29uc3QgVG9rZW5TdGF0cyA9IHoub2JqZWN0KHtcbiAgdG9rZW46IHouc3RyaW5nKCksXG4gIG5hbWU6IHouc3RyaW5nKCksXG4gIHByb3ZpZGVyOiB6LnN0cmluZygpLFxuICByZXF1ZXN0czogei5udW1iZXIoKSxcbn0pO1xuZXhwb3J0IHR5cGUgVG9rZW5TdGF0cyA9IHouaW5mZXI8dHlwZW9mIFRva2VuU3RhdHM+O1xuXG4vLyDilIDilIDilIAgT0F1dGgg4pSA4pSA4pSAXG5cbmV4cG9ydCBjb25zdCBPQXV0aFN0YXJ0UmVzdWx0ID0gei5vYmplY3Qoe1xuICBhdXRoVXJsOiB6LnN0cmluZygpLFxufSk7XG5leHBvcnQgdHlwZSBPQXV0aFN0YXJ0UmVzdWx0ID0gei5pbmZlcjx0eXBlb2YgT0F1dGhTdGFydFJlc3VsdD47XG5cbmNvbnN0IFJhdGVXaW5kb3cgPSB6XG4gIC5vYmplY3Qoe1xuICAgIHV0aWxpemF0aW9uOiB6Lm51bWJlcigpLm51bGxhYmxlKCksXG4gICAgcmVzZXRzQXQ6IHouc3RyaW5nKCkubnVsbGFibGUoKSxcbiAgfSlcbiAgLm51bGxhYmxlKCk7XG5cbmV4cG9ydCBjb25zdCBVc2FnZVJlc3BvbnNlID0gei5vYmplY3Qoe1xuICBlcnJvcjogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBwcm92aWRlcjogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBmaXZlSG91cjogUmF0ZVdpbmRvdy5vcHRpb25hbCgpLFxuICBzZXZlbkRheTogUmF0ZVdpbmRvdy5vcHRpb25hbCgpLFxufSk7XG5leHBvcnQgdHlwZSBVc2FnZVJlc3BvbnNlID0gei5pbmZlcjx0eXBlb2YgVXNhZ2VSZXNwb25zZT47XG5cbi8vIOKUgOKUgOKUgCBIZWFsdGgg4pSA4pSA4pSAXG5cbmV4cG9ydCBjb25zdCBTdWJzY3JpYmVyU3RhdHVzID0gei5vYmplY3Qoe1xuICBjb25uZWN0ZWQ6IHouYm9vbGVhbigpLFxuICBjb25uZWN0ZWRBdDogei5kYXRlKCkubnVsbGFibGUoKSxcbiAgbGFzdFJlY29uY2lsZUF0OiB6LmRhdGUoKS5udWxsYWJsZSgpLFxuICBhdHRlbXB0OiB6Lm51bWJlcigpLFxufSk7XG5leHBvcnQgdHlwZSBTdWJzY3JpYmVyU3RhdHVzID0gei5pbmZlcjx0eXBlb2YgU3Vic2NyaWJlclN0YXR1cz47XG5cbmV4cG9ydCBjb25zdCBIZWFsdGhSZXNwb25zZSA9IHoub2JqZWN0KHtcbiAgc3RhdHVzOiB6LnN0cmluZygpLFxuICBhY3RpdmVUb2tlbnM6IHoubnVtYmVyKCksXG4gIHN1YnNjcmliZXI6IFN1YnNjcmliZXJTdGF0dXMubnVsbGFibGUoKSxcbn0pO1xuZXhwb3J0IHR5cGUgSGVhbHRoUmVzcG9uc2UgPSB6LmluZmVyPHR5cGVvZiBIZWFsdGhSZXNwb25zZT47XG5cbi8vIOKUgOKUgOKUgCBFcnJvcnMg4pSA4pSA4pSAXG5cbmV4cG9ydCBjbGFzcyBRdW90YUVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICByZWFkb25seSBjb2RlID0gXCJRVU9UQV9FWEhBVVNURURcIiBhcyBjb25zdDtcbn1cbmV4cG9ydCBjbGFzcyBUaW1lb3V0RXJyb3IgZXh0ZW5kcyBFcnJvciB7XG4gIHJlYWRvbmx5IGNvZGUgPSBcIlRJTUVPVVRcIiBhcyBjb25zdDtcbn1cbmV4cG9ydCBjbGFzcyBQcm9jZXNzRXJyb3IgZXh0ZW5kcyBFcnJvciB7XG4gIHJlYWRvbmx5IGNvZGUgPSBcIlBST0NFU1NfRVJST1JcIiBhcyBjb25zdDtcbn1cblxuLy8g4pSA4pSA4pSAIFV0aWxzIOKUgOKUgOKUgFxuXG5leHBvcnQgZnVuY3Rpb24gbWFza1Rva2VuKHRva2VuOiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gdG9rZW4ubGVuZ3RoID4gNCA/IGAuLi4ke3Rva2VuLnNsaWNlKC00KX1gIDogdG9rZW47XG59XG4iXSwibWFwcGluZ3MiOiI7OztBQUlBLE1BQWEsU0FBUyxFQUFFLEtBQUs7Q0FBQztDQUFPO0NBQVU7Q0FBTyxDQUFDO0FBR3ZELE1BQWEsWUFBWSxFQUFFLE9BQU87Q0FDaEMsTUFBTSxFQUFFLFFBQVE7Q0FDaEIsYUFBYSxFQUFFLFFBQVEsQ0FBQyxVQUFVO0NBQ2xDLGFBQWEsRUFBRSxTQUFTO0NBQ3pCLENBQUM7QUFHRixNQUFhLGVBQWUsRUFBRSxtQkFBbUIsUUFBUSxDQUN2RCxFQUFFLE9BQU87Q0FDUCxNQUFNLEVBQUUsUUFBUSxPQUFPO0NBQ3ZCLE1BQU0sRUFBRSxRQUFRO0NBQ2pCLENBQUMsRUFDRixFQUFFLE9BQU87Q0FDUCxN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
|
|
209
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicWdyaWQudHlwZXMuanMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2FwcGxpY2F0aW9uL3FncmlkL3FncmlkLnR5cGVzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHogfSBmcm9tIFwiem9kXCI7XG5cbi8vIOKUgOKUgOKUgCBRdWVyeSDilIDilIDilIBcblxuZXhwb3J0IGNvbnN0IEVmZm9ydCA9IHouZW51bShbXCJsb3dcIiwgXCJtZWRpdW1cIiwgXCJoaWdoXCJdKTtcbmV4cG9ydCB0eXBlIEVmZm9ydCA9IHouaW5mZXI8dHlwZW9mIEVmZm9ydD47XG5cbmV4cG9ydCBjb25zdCBRZ3JpZFRvb2wgPSB6Lm9iamVjdCh7XG4gIG5hbWU6IHouc3RyaW5nKCksXG4gIGRlc2NyaXB0aW9uOiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIGlucHV0U2NoZW1hOiB6LnVua25vd24oKSxcbn0pO1xuZXhwb3J0IHR5cGUgUWdyaWRUb29sID0gei5pbmZlcjx0eXBlb2YgUWdyaWRUb29sPjtcblxuZXhwb3J0IGNvbnN0IFFncmlkQ29udGVudCA9IHouZGlzY3JpbWluYXRlZFVuaW9uKFwidHlwZVwiLCBbXG4gIHoub2JqZWN0KHtcbiAgICB0eXBlOiB6LmxpdGVyYWwoXCJ0ZXh0XCIpLFxuICAgIHRleHQ6IHouc3RyaW5nKCksXG4gIH0pLFxuICB6Lm9iamVjdCh7XG4gICAgdHlwZTogei5saXRlcmFsKFwidG9vbC1jYWxsXCIpLFxuICAgIHRvb2xDYWxsSWQ6IHouc3RyaW5nKCksXG4gICAgdG9vbE5hbWU6IHouc3RyaW5nKCksXG4gICAgaW5wdXQ6IHouc3RyaW5nKCksXG4gIH0pLFxuXSk7XG5leHBvcnQgdHlwZSBRZ3JpZENvbnRlbnQgPSB6LmluZmVyPHR5cGVvZiBRZ3JpZENvbnRlbnQ+O1xuXG5leHBvcnQgY29uc3QgRmluaXNoUmVhc29uID0gei5lbnVtKFtcInN0b3BcIiwgXCJ0b29sLWNhbGxzXCJdKTtcbmV4cG9ydCB0eXBlIEZpbmlzaFJlYXNvbiA9IHouaW5mZXI8dHlwZW9mIEZpbmlzaFJlYXNvbj47XG5cbmV4cG9ydCBjb25zdCBWZXJib3NpdHkgPSB6LmVudW0oW1wibG93XCIsIFwibWVkaXVtXCIsIFwiaGlnaFwiXSk7XG5leHBvcnQgdHlwZSBWZXJib3NpdHkgPSB6LmluZmVyPHR5cGVvZiBWZXJib3NpdHk+O1xuXG5leHBvcnQgY29uc3QgUmVhc29uaW5nU3VtbWFyeSA9IHouZW51bShbXCJhdXRvXCIsIFwiY29uY2lzZVwiLCBcImRldGFpbGVkXCIsIFwibm9uZVwiXSk7XG5leHBvcnQgdHlwZSBSZWFzb25pbmdTdW1tYXJ5ID0gei5pbmZlcjx0eXBlb2YgUmVhc29uaW5nU3VtbWFyeT47XG5cbmV4cG9ydCBjb25zdCBTZXJ2aWNlVGllciA9IHouZW51bShbXCJmYXN0XCIsIFwiZmxleFwiXSk7XG5leHBvcnQgdHlwZSBTZXJ2aWNlVGllciA9IHouaW5mZXI8dHlwZW9mIFNlcnZpY2VUaWVyPjtcblxuLy8g4pSA4pSA4pSAIFJ1biBMaWZlY3ljbGUgQ29udGV4dCAoU0RLIOKGlCBTZXJ2ZXIgY29udHJhY3QpIOKUgOKUgOKUgFxuXG5leHBvcnQgY29uc3QgUWdyaWRMb2dNb2RlID0gei5lbnVtKFtcImF1dG9cIiwgXCJydW5cIiwgXCJub25lXCJdKTtcbmV4cG9ydCB0eXBlIFFncmlkTG9nTW9kZSA9IHouaW5mZXI8dHlwZW9mIFFncmlkTG9nTW9kZT47XG5cbi8vIGNvZGV4IHRocmVhZCDsooztkZwuIHRocmVhZCDsnqzsgqzsmqnsnLzroZwgY29udmVyc2F0aW9uX2lkKD1wcm9tcHRfY2FjaGVfa2V5KeulvCDqs6DsoJXtlbRcbi8vIE9wZW5BSSBwcm9tcHQgY2FjaGluZyDsnYQg7IK066as6riwIOychO2VnCDtlbjrk6QuIOyEnOuyhOqwgCDrsJzquIntlZjqs6Ag7YG065286rCAIOuLpOydjCDsmpTssq3sl5Ag6re464yA66GcIO2ajOyGoe2VnOuLpC5cbi8vIO2VuOuTpCDrr7jsoITshqEg7IucIOq4sOyhtCBcIuunpCB0dXJuIOyDiCB0aHJlYWQgKyBoaXN0b3J5IGluamVjdFwiIOuPmeyekeycvOuhnCDtj7TrsLEoUWdyaWRSdW5Db250ZXh0IOywuOyhsCkuXG5leHBvcnQgY29uc3QgUWdyaWRUaHJlYWRDb29yZCA9IHoub2JqZWN0KHtcbiAgd29ya2VySWQ6IHoubnVtYmVyKCksIC8vIOqzoOyglSDrnbzsmrDtjIUgKHRocmVhZCDripQgd29ya2VyIO2UhOuhnOyEuOyKpCDrqZTrqqjrpqzsl5Drp4wg7KG07J6sKVxuICB0aHJlYWRJZDogei5zdHJpbmcoKSwgLy8gY29kZXggY29udmVyc2F0aW9uX2lkID0gcHJvbXB0X2NhY2hlX2tleVxuICBlcG9jaDogei5udW1iZXIoKSwgLy8gd29ya2VyIHNwYXduIOy5tOyatO2EsC4gcmVzdGFydCDroZwgdGhyZWFkIOymneuwnCDqsJDsp4BcbiAgc3lzdGVtSGFzaDogei5zdHJpbmcoKSwgLy8gc3lzdGVtX3Byb21wdCDtlbTsi5wuIOuLpOuluCDrjIDtmZQg7Jik7KCR7IaNIOuwqeyngFxufSk7XG5leHBvcnQgdHlwZSBRZ3JpZFRocmVhZENvb3JkID0gei5pbmZlcjx0eXBlb2YgUWdyaWRUaHJlYWRDb29yZD47XG5cbmV4cG9ydCBjb25zdCBRZ3JpZFJ1bkNvbnRleHQgPSB6Lm9iamVjdCh7XG4gIC8vIHJ1biBsaWZlY3ljbGUobG9nTW9kZT1cInJ1blwiKSDsl5DshJzrp4wg67Cc6riJLiBhdXRvIOuqqOuTnCjsmIg6IElGKeuKlCB0aHJlYWRDb29yZCDrp4wg7JmV67O1LlxuICByZXF1ZXN0TG9nSWQ6IHoubnVtYmVyKCkub3B0aW9uYWwoKSxcbiAgdGhyZWFkQ29vcmQ6IFFncmlkVGhyZWFkQ29vcmQub3B0aW9uYWwoKSxcbn0pO1xuZXhwb3J0IHR5cGUgUWdyaWRSdW5Db250ZXh0ID0gei5pbmZlcjx0eXBlb2YgUWdyaWRSdW5Db250ZXh0PjtcblxuZXhwb3J0IGNvbnN0IFFncmlkVG9vbFJlc3VsdElucHV0ID0gei5vYmplY3Qoe1xuICB0b29sQ2FsbElkOiB6LnN0cmluZygpLFxuICB0b29sTmFtZTogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBvdXRwdXQ6IHouc3RyaW5nKCksXG4gIGlzRXJyb3I6IHouYm9vbGVhbigpLm9wdGlvbmFsKCksXG59KTtcbmV4cG9ydCB0eXBlIFFncmlkVG9vbFJlc3VsdElucHV0ID0gei5pbmZlcjx0eXBlb2YgUWdyaWRUb29sUmVzdWx0SW5wdXQ+O1xuXG5leHBvcnQgY29uc3QgUXVlcnlJbnB1dCA9IHoub2JqZWN0KHtcbiAgc3lzdGVtOiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIHByb21wdDogei5zdHJpbmcoKSxcbiAgbW9kZWw6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgdGltZW91dDogei5udW1iZXIoKS5vcHRpb25hbCgpLFxuICBqc29uU2NoZW1hOiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIHRvb2xzOiB6LmFycmF5KFFncmlkVG9vbCkub3B0aW9uYWwoKSxcbiAgZWZmb3J0OiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIHZlcmJvc2l0eTogVmVyYm9zaXR5Lm9wdGlvbmFsKCksXG4gIHJlYXNvbmluZ1N1bW1hcnk6IFJlYXNvbmluZ1N1bW1hcnkub3B0aW9uYWwoKSxcbiAgc2VydmljZVRpZXI6IFNlcnZpY2VUaWVyLm9wdGlvbmFsKCksXG4gIGhpc3Rvcnk6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgcHJvamVjdE5hbWU6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgaXNTdGVwOiB6LmJvb2xlYW4oKS5vcHRpb25hbCgpLFxuICBsb2dNb2RlOiBRZ3JpZExvZ01vZGUub3B0aW9uYWwoKSxcbiAgcnVuQ29udGV4dDogUWdyaWRSdW5Db250ZXh0Lm9wdGlvbmFsKCksXG4gIHRvb2xSZXN1bHRzOiB6LmFycmF5KFFncmlkVG9vbFJlc3VsdElucHV0KS5vcHRpb25hbCgpLFxufSk7XG5leHBvcnQgdHlwZSBRdWVyeUlucHV0ID0gei5pbmZlcjx0eXBlb2YgUXVlcnlJbnB1dD47XG5cbmV4cG9ydCBjb25zdCBRdWVyeU91dHB1dCA9IHoub2JqZWN0KHtcbiAgdGV4dDogei5zdHJpbmcoKSxcbiAgY29udGVudDogei5hcnJheShRZ3JpZENvbnRlbnQpLFxuICBmaW5pc2hSZWFzb246IEZpbmlzaFJlYXNvbixcbiAgdG9rZW5OYW1lOiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIG1vZGVsOiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIHVzYWdlOiB6Lm9iamVjdCh7XG4gICAgaW5wdXRfdG9rZW5zOiB6Lm51bWJlcigpLFxuICAgIG91dHB1dF90b2tlbnM6IHoubnVtYmVyKCksXG4gICAgY2FjaGVfY3JlYXRpb25faW5wdXRfdG9rZW5zOiB6Lm51bWJlcigpLFxuICAgIGNhY2hlX3JlYWRfaW5wdXRfdG9rZW5zOiB6Lm51bWJlcigpLFxuICB9KSxcbiAgZHVyYXRpb25Nczogei5udW1iZXIoKSxcbiAgY29zdFVzZDogei5udW1iZXIoKSxcbiAgcnVuQ29udGV4dDogUWdyaWRSdW5Db250ZXh0Lm9wdGlvbmFsKCksXG59KTtcbmV4cG9ydCB0eXBlIFF1ZXJ5T3V0cHV0ID0gei5pbmZlcjx0eXBlb2YgUXVlcnlPdXRwdXQ+O1xuXG4vLyDilIDilIDilIAgU3RyZWFtIEV2ZW50cyDilIDilIDilIBcblxuZXhwb3J0IGNvbnN0IFN0cmVhbUV2ZW50cyA9IHoub2JqZWN0KHtcbiAgZGVsdGE6IHoub2JqZWN0KHsgdGV4dDogei5zdHJpbmcoKSB9KSxcbiAgdG9vbENhbGw6IHoub2JqZWN0KHtcbiAgICB0b29sQ2FsbElkOiB6LnN0cmluZygpLFxuICAgIHRvb2xOYW1lOiB6LnN0cmluZygpLFxuICAgIGlucHV0OiB6LnN0cmluZygpLFxuICB9KSxcbiAgZG9uZTogei5vYmplY3Qoe1xuICAgIHRleHQ6IHouc3RyaW5nKCksXG4gICAgbW9kZWw6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgICB0b2tlbk5hbWU6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgICBmaW5pc2hSZWFzb246IEZpbmlzaFJlYXNvbixcbiAgICB1c2FnZTogei5vYmplY3Qoe1xuICAgICAgaW5wdXRfdG9rZW5zOiB6Lm51bWJlcigpLFxuICAgICAgb3V0cHV0X3Rva2Vuczogei5udW1iZXIoKSxcbiAgICAgIGNhY2hlX2NyZWF0aW9uX2lucHV0X3Rva2Vuczogei5udW1iZXIoKSxcbiAgICAgIGNhY2hlX3JlYWRfaW5wdXRfdG9rZW5zOiB6Lm51bWJlcigpLFxuICAgIH0pLFxuICAgIGR1cmF0aW9uTXM6IHoubnVtYmVyKCksXG4gICAgY29zdFVzZDogei5udW1iZXIoKSxcbiAgICBjb250ZW50OiB6LmFycmF5KFFncmlkQ29udGVudCksXG4gICAgcnVuQ29udGV4dDogUWdyaWRSdW5Db250ZXh0Lm9wdGlvbmFsKCksXG4gIH0pLFxuICBlcnJvcjogei5vYmplY3QoeyBtZXNzYWdlOiB6LnN0cmluZygpIH0pLFxufSk7XG5leHBvcnQgdHlwZSBTdHJlYW1FdmVudHMgPSB6LmluZmVyPHR5cGVvZiBTdHJlYW1FdmVudHM+O1xuXG4vLyDilIDilIDilIAgUnVuIExpZmVjeWNsZSDilIDilIDilIBcblxuZXhwb3J0IGNvbnN0IENyZWF0ZVJ1bklucHV0ID0gei5vYmplY3Qoe1xuICB1c2VyUHJvbXB0OiB6LnN0cmluZygpLFxuICBzeXN0ZW1Qcm9tcHQ6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgbW9kZWxOYW1lOiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIGVmZm9ydDogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBwcm9qZWN0TmFtZTogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBoaXN0b3J5OiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG59KTtcbmV4cG9ydCB0eXBlIENyZWF0ZVJ1bklucHV0ID0gei5pbmZlcjx0eXBlb2YgQ3JlYXRlUnVuSW5wdXQ+O1xuXG5leHBvcnQgY29uc3QgQXBwZW5kU3RlcElucHV0ID0gei5vYmplY3Qoe1xuICByZXF1ZXN0TG9nSWQ6IHoubnVtYmVyKCksXG4gIHN0ZXBJbmRleDogei5udW1iZXIoKSxcbiAgdHlwZTogei5lbnVtKFtcImdlbmVyYXRlXCIsIFwidG9vbF9jYWxsXCJdKSxcbiAgaW5wdXRUb2tlbnM6IHoubnVtYmVyKCkub3B0aW9uYWwoKSxcbiAgb3V0cHV0VG9rZW5zOiB6Lm51bWJlcigpLm9wdGlvbmFsKCksXG4gIGNhY2hlUmVhZFRva2Vuczogei5udW1iZXIoKS5vcHRpb25hbCgpLFxuICBjYWNoZUNyZWF0aW9uVG9rZW5zOiB6Lm51bWJlcigpLm9wdGlvbmFsKCksXG4gIGR1cmF0aW9uTXM6IHoubnVtYmVyKCkub3B0aW9uYWwoKSxcbiAgZmluaXNoUmVhc29uOiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIHJlYXNvbmluZ1RleHQ6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgcmVhc29uaW5nVG9rZW5zOiB6Lm51bWJlcigpLm9wdGlvbmFsKCksXG4gIHRvb2xDYWxsSW5kZXg6IHoubnVtYmVyKCkub3B0aW9uYWwoKSxcbiAgdG9vbENhbGxJZDogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICB0b29sTmFtZTogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICB0b29sQXJnczogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICB0b29sUmVzdWx0OiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIHRvb2xEdXJhdGlvbk1zOiB6Lm51bWJlcigpLm9wdGlvbmFsKCksXG4gIGVycm9yOiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG59KTtcbmV4cG9ydCB0eXBlIEFwcGVuZFN0ZXBJbnB1dCA9IHouaW5mZXI8dHlwZW9mIEFwcGVuZFN0ZXBJbnB1dD47XG5cbmV4cG9ydCBjb25zdCBGaW5pc2hSdW5JbnB1dCA9IHoub2JqZWN0KHtcbiAgcmVxdWVzdExvZ0lkOiB6Lm51bWJlcigpLFxuICBzdGF0dXM6IHouZW51bShbXCJzdWNjZWVkZWRcIiwgXCJlcnJvclwiLCBcImFib3J0ZWRcIl0pLFxuICByZXNwb25zZTogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICB0b2tlbk5hbWU6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgdG90YWxJbnB1dFRva2Vuczogei5udW1iZXIoKS5vcHRpb25hbCgpLFxuICB0b3RhbE91dHB1dFRva2Vuczogei5udW1iZXIoKS5vcHRpb25hbCgpLFxuICB0b3RhbENhY2hlUmVhZFRva2Vuczogei5udW1iZXIoKS5vcHRpb25hbCgpLFxuICB0b3RhbENhY2hlQ3JlYXRpb25Ub2tlbnM6IHoubnVtYmVyKCkub3B0aW9uYWwoKSxcbiAgdG90YWxEdXJhdGlvbk1zOiB6Lm51bWJlcigpLm9wdGlvbmFsKCksXG4gIGhpc3Rvcnk6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgZXJyb3JNZXNzYWdlOiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG59KTtcbmV4cG9ydCB0eXBlIEZpbmlzaFJ1bklucHV0ID0gei5pbmZlcjx0eXBlb2YgRmluaXNoUnVuSW5wdXQ+O1xuXG4vLyDilIDilIDilIAgVG9rZW4gTWFuYWdlbWVudCDilIDilIDilIBcblxuZXhwb3J0IGNvbnN0IEFkZFRva2VuSW5wdXQgPSB6Lm9iamVjdCh7XG4gIHRva2VuOiB6LnN0cmluZygpLFxuICBuYW1lOiB6LnN0cmluZygpLFxufSk7XG5leHBvcnQgdHlwZSBBZGRUb2tlbklucHV0ID0gei5pbmZlcjx0eXBlb2YgQWRkVG9rZW5JbnB1dD47XG5cbmV4cG9ydCBjb25zdCBSZW1vdmVUb2tlbklucHV0ID0gei5vYmplY3Qoe1xuICB0b2tlbjogei5zdHJpbmcoKSxcbn0pO1xuZXhwb3J0IHR5cGUgUmVtb3ZlVG9rZW5JbnB1dCA9IHouaW5mZXI8dHlwZW9mIFJlbW92ZVRva2VuSW5wdXQ+O1xuXG5leHBvcnQgY29uc3QgVG9rZW5TdGF0cyA9IHoub2JqZWN0KHtcbiAgdG9rZW46IHouc3RyaW5nKCksXG4gIG5hbWU6IHouc3RyaW5nKCksXG4gIHByb3ZpZGVyOiB6LnN0cmluZygpLFxuICByZXF1ZXN0czogei5udW1iZXIoKSxcbn0pO1xuZXhwb3J0IHR5cGUgVG9rZW5TdGF0cyA9IHouaW5mZXI8dHlwZW9mIFRva2VuU3RhdHM+O1xuXG4vLyDilIDilIDilIAgT0F1dGgg4pSA4pSA4pSAXG5cbmV4cG9ydCBjb25zdCBPQXV0aFN0YXJ0UmVzdWx0ID0gei5vYmplY3Qoe1xuICBhdXRoVXJsOiB6LnN0cmluZygpLFxufSk7XG5leHBvcnQgdHlwZSBPQXV0aFN0YXJ0UmVzdWx0ID0gei5pbmZlcjx0eXBlb2YgT0F1dGhTdGFydFJlc3VsdD47XG5cbmNvbnN0IFJhdGVXaW5kb3cgPSB6XG4gIC5vYmplY3Qoe1xuICAgIHV0aWxpemF0aW9uOiB6Lm51bWJlcigpLm51bGxhYmxlKCksXG4gICAgcmVzZXRzQXQ6IHouc3RyaW5nKCkubnVsbGFibGUoKSxcbiAgfSlcbiAgLm51bGxhYmxlKCk7XG5cbmV4cG9ydCBjb25zdCBVc2FnZVJlc3BvbnNlID0gei5vYmplY3Qoe1xuICBlcnJvcjogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBwcm92aWRlcjogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBmaXZlSG91cjogUmF0ZVdpbmRvdy5vcHRpb25hbCgpLFxuICBzZXZlbkRheTogUmF0ZVdpbmRvdy5vcHRpb25hbCgpLFxufSk7XG5leHBvcnQgdHlwZSBVc2FnZVJlc3BvbnNlID0gei5pbmZlcjx0eXBlb2YgVXNhZ2VSZXNwb25zZT47XG5cbi8vIOKUgOKUgOKUgCBIZWFsdGgg4pSA4pSA4pSAXG5cbmV4cG9ydCBjb25zdCBTdWJzY3JpYmVyU3RhdHVzID0gei5vYmplY3Qoe1xuICBjb25uZWN0ZWQ6IHouYm9vbGVhbigpLFxuICBjb25uZWN0ZWRBdDogei5kYXRlKCkubnVsbGFibGUoKSxcbiAgbGFzdFJlY29uY2lsZUF0OiB6LmRhdGUoKS5udWxsYWJsZSgpLFxuICBhdHRlbXB0OiB6Lm51bWJlcigpLFxufSk7XG5leHBvcnQgdHlwZSBTdWJzY3JpYmVyU3RhdHVzID0gei5pbmZlcjx0eXBlb2YgU3Vic2NyaWJlclN0YXR1cz47XG5cbmV4cG9ydCBjb25zdCBIZWFsdGhSZXNwb25zZSA9IHoub2JqZWN0KHtcbiAgc3RhdHVzOiB6LnN0cmluZygpLFxuICBhY3RpdmVUb2tlbnM6IHoubnVtYmVyKCksXG4gIHN1YnNjcmliZXI6IFN1YnNjcmliZXJTdGF0dXMubnVsbGFibGUoKSxcbn0pO1xuZXhwb3J0IHR5cGUgSGVhbHRoUmVzcG9uc2UgPSB6LmluZmVyPHR5cGVvZiBIZWFsdGhSZXNwb25zZT47XG5cbi8vIOKUgOKUgOKUgCBFcnJvcnMg4pSA4pSA4pSAXG5cbmV4cG9ydCBjbGFzcyBRdW90YUVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICByZWFkb25seSBjb2RlID0gXCJRVU9UQV9FWEhBVVNURURcIiBhcyBjb25zdDtcbn1cbmV4cG9ydCBjbGFzcyBUaW1lb3V0RXJyb3IgZXh0ZW5kcyBFcnJvciB7XG4gIHJlYWRvbmx5IGNvZGUgPSBcIlRJTUVPVVRcIiBhcyBjb25zdDtcbn1cbmV4cG9ydCBjbGFzcyBQcm9jZXNzRXJyb3IgZXh0ZW5kcyBFcnJvciB7XG4gIHJlYWRvbmx5IGNvZGUgPSBcIlBST0NFU1NfRVJST1JcIiBhcyBjb25zdDtcbn1cblxuLy8g4pSA4pSA4pSAIFV0aWxzIOKUgOKUgOKUgFxuXG5leHBvcnQgZnVuY3Rpb24gbWFza1Rva2VuKHRva2VuOiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gdG9rZW4ubGVuZ3RoID4gNCA/IGAuLi4ke3Rva2VuLnNsaWNlKC00KX1gIDogdG9rZW47XG59XG4iXSwibWFwcGluZ3MiOiI7OztBQUlBLE1BQWEsU0FBUyxFQUFFLEtBQUs7Q0FBQztDQUFPO0NBQVU7Q0FBTyxDQUFDO0FBR3ZELE1BQWEsWUFBWSxFQUFFLE9BQU87Q0FDaEMsTUFBTSxFQUFFLFFBQVE7Q0FDaEIsYUFBYSxFQUFFLFFBQVEsQ0FBQyxVQUFVO0NBQ2xDLGFBQWEsRUFBRSxTQUFTO0NBQ3pCLENBQUM7QUFHRixNQUFhLGVBQWUsRUFBRSxtQkFBbUIsUUFBUSxDQUN2RCxFQUFFLE9BQU87Q0FDUCxNQUFNLEVBQUUsUUFBUSxPQUFP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
|
|
@@ -43,7 +43,8 @@ function buildToolCallSchema(tools) {
|
|
|
43
43
|
additionalProperties: false
|
|
44
44
|
};
|
|
45
45
|
}
|
|
46
|
-
function applyToolCallEmulation(result, tools) {
|
|
46
|
+
function applyToolCallEmulation(result, tools, threadCoord) {
|
|
47
|
+
const runContext = threadCoord ? { threadCoord } : void 0;
|
|
47
48
|
if (!tools?.length) {
|
|
48
49
|
const content = [{
|
|
49
50
|
type: "text",
|
|
@@ -52,7 +53,8 @@ function applyToolCallEmulation(result, tools) {
|
|
|
52
53
|
return {
|
|
53
54
|
...result,
|
|
54
55
|
content,
|
|
55
|
-
finishReason: "stop"
|
|
56
|
+
finishReason: "stop",
|
|
57
|
+
runContext
|
|
56
58
|
};
|
|
57
59
|
}
|
|
58
60
|
let parsed;
|
|
@@ -66,7 +68,8 @@ function applyToolCallEmulation(result, tools) {
|
|
|
66
68
|
type: "text",
|
|
67
69
|
text: result.text
|
|
68
70
|
}],
|
|
69
|
-
finishReason: "stop"
|
|
71
|
+
finishReason: "stop",
|
|
72
|
+
runContext
|
|
70
73
|
};
|
|
71
74
|
}
|
|
72
75
|
if (parsed.action === "tool_call") {
|
|
@@ -82,7 +85,8 @@ function applyToolCallEmulation(result, tools) {
|
|
|
82
85
|
return {
|
|
83
86
|
...result,
|
|
84
87
|
content,
|
|
85
|
-
finishReason: "tool-calls"
|
|
88
|
+
finishReason: "tool-calls",
|
|
89
|
+
runContext
|
|
86
90
|
};
|
|
87
91
|
}
|
|
88
92
|
const text = parsed.answer ?? result.text;
|
|
@@ -93,10 +97,11 @@ function applyToolCallEmulation(result, tools) {
|
|
|
93
97
|
type: "text",
|
|
94
98
|
text
|
|
95
99
|
}],
|
|
96
|
-
finishReason: "stop"
|
|
100
|
+
finishReason: "stop",
|
|
101
|
+
runContext
|
|
97
102
|
};
|
|
98
103
|
}
|
|
99
104
|
//#endregion
|
|
100
105
|
export { applyToolCallEmulation, buildToolCallSchema };
|
|
101
106
|
|
|
102
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
107
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbC1lbXVsYXRpb24uanMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2FwcGxpY2F0aW9uL3FncmlkL3Rvb2wtZW11bGF0aW9uLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGdldExvZ2dlciB9IGZyb20gXCJAbG9ndGFwZS9sb2d0YXBlXCI7XG5cbmltcG9ydCB7IHR5cGUgSnNvblZhbHVlIH0gZnJvbSBcIi4uLy4uL2NvZGV4LXByb3RvY29sL3NlcmRlX2pzb24vSnNvblZhbHVlXCI7XG5pbXBvcnQge1xuICB0eXBlIFFncmlkQ29udGVudCxcbiAgdHlwZSBRZ3JpZFRocmVhZENvb3JkLFxuICB0eXBlIFFncmlkVG9vbCxcbiAgdHlwZSBRdWVyeU91dHB1dCxcbn0gZnJvbSBcIi4vcWdyaWQudHlwZXNcIjtcblxuY29uc3QgbG9nZ2VyID0gZ2V0TG9nZ2VyKFtcInFncmlkXCIsIFwidG9vbC1lbXVsYXRpb25cIl0pO1xuXG50eXBlIFRvb2xDYWxsUmVzcG9uc2UgPSB7XG4gIGFjdGlvbjogXCJhbnN3ZXJcIiB8IFwidG9vbF9jYWxsXCI7XG4gIGFuc3dlcj86IHN0cmluZyB8IG51bGw7XG4gIHRvb2xDYWxscz86IEFycmF5PHsgdG9vbE5hbWU6IHN0cmluZzsgYXJnczogc3RyaW5nIH0+IHwgbnVsbDtcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBidWlsZFRvb2xDYWxsU2NoZW1hKHRvb2xzOiBRZ3JpZFRvb2xbXSk6IEpzb25WYWx1ZSB7XG4gIGNvbnN0IHRvb2xEZXNjcmlwdGlvbnMgPSB0b29sc1xuICAgIC5tYXAoKHRvb2wpID0+IHtcbiAgICAgIGNvbnN0IHNjaGVtYSA9IEpTT04uc3RyaW5naWZ5KHRvb2wuaW5wdXRTY2hlbWEpO1xuICAgICAgcmV0dXJuIGAtICR7dG9vbC5uYW1lfTogJHt0b29sLmRlc2NyaXB0aW9uID8/IFwiXCJ9XFxuICBpbnB1dFNjaGVtYTogJHtzY2hlbWF9YDtcbiAgICB9KVxuICAgIC5qb2luKFwiXFxuXCIpO1xuXG4gIHJldHVybiB7XG4gICAgdHlwZTogXCJvYmplY3RcIixcbiAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICBhY3Rpb246IHsgdHlwZTogXCJzdHJpbmdcIiwgZW51bTogW1wiYW5zd2VyXCIsIFwidG9vbF9jYWxsXCJdIH0sXG4gICAgICBhbnN3ZXI6IHsgYW55T2Y6IFt7IHR5cGU6IFwic3RyaW5nXCIgfSwgeyB0eXBlOiBcIm51bGxcIiB9XSB9LFxuICAgICAgdG9vbENhbGxzOiB7XG4gICAgICAgIGFueU9mOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgdHlwZTogXCJhcnJheVwiLFxuICAgICAgICAgICAgaXRlbXM6IHtcbiAgICAgICAgICAgICAgdHlwZTogXCJvYmplY3RcIixcbiAgICAgICAgICAgICAgcHJvcGVydGllczoge1xuICAgICAgICAgICAgICAgIHRvb2xOYW1lOiB7XG4gICAgICAgICAgICAgICAgICB0eXBlOiBcInN0cmluZ1wiLFxuICAgICAgICAgICAgICAgICAgZW51bTogdG9vbHMubWFwKCh0b29sKSA9PiB0b29sLm5hbWUpLFxuICAgICAgICAgICAgICAgICAgZGVzY3JpcHRpb246IHRvb2xEZXNjcmlwdGlvbnMsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBhcmdzOiB7IHR5cGU6IFwic3RyaW5nXCIsIGRlc2NyaXB0aW9uOiBcIlRvb2wgYXJndW1lbnRzIGFzIEpTT04gc3RyaW5nXCIgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgcmVxdWlyZWQ6IFtcInRvb2xOYW1lXCIsIFwiYXJnc1wiXSxcbiAgICAgICAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IGZhbHNlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHsgdHlwZTogXCJudWxsXCIgfSxcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgfSxcbiAgICByZXF1aXJlZDogW1wiYWN0aW9uXCIsIFwiYW5zd2VyXCIsIFwidG9vbENhbGxzXCJdLFxuICAgIGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiBmYWxzZSxcbiAgfTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGFwcGx5VG9vbENhbGxFbXVsYXRpb24oXG4gIHJlc3VsdDogT21pdDxRdWVyeU91dHB1dCwgXCJjb250ZW50XCIgfCBcImZpbmlzaFJlYXNvblwiIHwgXCJydW5Db250ZXh0XCI+LFxuICB0b29scz86IFFncmlkVG9vbFtdLFxuICB0aHJlYWRDb29yZD86IFFncmlkVGhyZWFkQ29vcmQsXG4pOiBRdWVyeU91dHB1dCB7XG4gIC8vIHRocmVhZCDsnqzsgqzsmqkg7KKM7ZGc66W8IHJ1bkNvbnRleHQg66GcIOyLpOyWtCDsmKzrprDri6QgKGF1dG8g66qo65Oc64qUIHJlcXVlc3RMb2dJZCDsl4bsnbQgdGhyZWFkQ29vcmQg66eMKS5cbiAgY29uc3QgcnVuQ29udGV4dCA9IHRocmVhZENvb3JkID8geyB0aHJlYWRDb29yZCB9IDogdW5kZWZpbmVkO1xuXG4gIGlmICghdG9vbHM/Lmxlbmd0aCkge1xuICAgIGNvbnN0IGNvbnRlbnQ6IFFncmlkQ29udGVudFtdID0gW3sgdHlwZTogXCJ0ZXh0XCIsIHRleHQ6IHJlc3VsdC50ZXh0IH1dO1xuICAgIHJldHVybiB7IC4uLnJlc3VsdCwgY29udGVudCwgZmluaXNoUmVhc29uOiBcInN0b3BcIiwgcnVuQ29udGV4dCB9O1xuICB9XG5cbiAgbGV0IHBhcnNlZDogVG9vbENhbGxSZXNwb25zZTtcbiAgdHJ5IHtcbiAgICBwYXJzZWQgPSBKU09OLnBhcnNlKHJlc3VsdC50ZXh0KSBhcyBUb29sQ2FsbFJlc3BvbnNlO1xuICB9IGNhdGNoIChlKSB7XG4gICAgbG9nZ2VyLndhcm4oYHRvb2wtY2FsbCBlbXVsYXRpb24gcGFyc2UgZmFpbGVkLCBmYWxsaW5nIGJhY2sgdG8gdGV4dDogJHsoZSBhcyBFcnJvcikubWVzc2FnZX1gKTtcbiAgICByZXR1cm4ge1xuICAgICAgLi4ucmVzdWx0LFxuICAgICAgY29udGVudDogW3sgdHlwZTogXCJ0ZXh0XCIsIHRleHQ6IHJlc3VsdC50ZXh0IH1dLFxuICAgICAgZmluaXNoUmVhc29uOiBcInN0b3BcIixcbiAgICAgIHJ1bkNvbnRleHQsXG4gICAgfTtcbiAgfVxuXG4gIGlmIChwYXJzZWQuYWN0aW9uID09PSBcInRvb2xfY2FsbFwiKSB7XG4gICAgY29uc3QgdG9vbENhbGxzID0gcGFyc2VkLnRvb2xDYWxscyA/PyBbXTtcbiAgICBjb25zdCBjb250ZW50OiBRZ3JpZENvbnRlbnRbXSA9IHRvb2xDYWxscy5tYXAoKHRvb2xDYWxsKSA9PiB7XG4gICAgICBpZiAoIXRvb2xzLnNvbWUoKHRvb2wpID0+IHRvb2wubmFtZSA9PT0gdG9vbENhbGwudG9vbE5hbWUpKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgdW5rbm93biBlbXVsYXRlZCB0b29sOiAke3Rvb2xDYWxsLnRvb2xOYW1lfWApO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4ge1xuICAgICAgICB0eXBlOiBcInRvb2wtY2FsbFwiLFxuICAgICAgICB0b29sQ2FsbElkOiBgY2FsbF8ke01hdGgucmFuZG9tKCkudG9TdHJpbmcoMzYpLnNsaWNlKDIsIDEwKX1gLFxuICAgICAgICB0b29sTmFtZTogdG9vbENhbGwudG9vbE5hbWUsXG4gICAgICAgIGlucHV0OiB0b29sQ2FsbC5hcmdzLFxuICAgICAgfTtcbiAgICB9KTtcbiAgICByZXR1cm4geyAuLi5yZXN1bHQsIGNvbnRlbnQsIGZpbmlzaFJlYXNvbjogXCJ0b29sLWNhbGxzXCIsIHJ1bkNvbnRleHQgfTtcbiAgfVxuXG4gIGNvbnN0IHRleHQgPSBwYXJzZWQuYW5zd2VyID8/IHJlc3VsdC50ZXh0O1xuICByZXR1cm4ge1xuICAgIC4uLnJlc3VsdCxcbiAgICB0ZXh0LFxuICAgIGNvbnRlbnQ6IFt7IHR5cGU6IFwidGV4dFwiLCB0ZXh0IH1dLFxuICAgIGZpbmlzaFJlYXNvbjogXCJzdG9wXCIsXG4gICAgcnVuQ29udGV4dCxcbiAgfTtcbn1cbiJdLCJtYXBwaW5n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
|
|
@@ -1,30 +1,38 @@
|
|
|
1
1
|
import "../../../_virtual/_rolldown/runtime.js";
|
|
2
2
|
//#region src/utils/providers/common/model-cost.ts
|
|
3
|
+
const LONG_CONTEXT_272K = {
|
|
4
|
+
threshold: 272e3,
|
|
5
|
+
inputMultiplier: 2,
|
|
6
|
+
cachedInputMultiplier: 2,
|
|
7
|
+
outputMultiplier: 1.5
|
|
8
|
+
};
|
|
3
9
|
const OPENAI_COSTS = {
|
|
4
10
|
"gpt-5.5": {
|
|
5
|
-
inputTokens:
|
|
6
|
-
outputTokens:
|
|
7
|
-
cachedInputTokens: .5
|
|
11
|
+
inputTokens: 5,
|
|
12
|
+
outputTokens: 30,
|
|
13
|
+
cachedInputTokens: .5,
|
|
14
|
+
longContext: LONG_CONTEXT_272K
|
|
8
15
|
},
|
|
9
16
|
"gpt-5.4": {
|
|
10
|
-
inputTokens: 2,
|
|
11
|
-
outputTokens:
|
|
12
|
-
cachedInputTokens: .
|
|
17
|
+
inputTokens: 2.5,
|
|
18
|
+
outputTokens: 15,
|
|
19
|
+
cachedInputTokens: .25,
|
|
20
|
+
longContext: LONG_CONTEXT_272K
|
|
13
21
|
},
|
|
14
22
|
"gpt-5.4-mini": {
|
|
15
|
-
inputTokens: .
|
|
16
|
-
outputTokens:
|
|
17
|
-
cachedInputTokens: .
|
|
23
|
+
inputTokens: .75,
|
|
24
|
+
outputTokens: 4.5,
|
|
25
|
+
cachedInputTokens: .075
|
|
18
26
|
},
|
|
19
27
|
"gpt-5.3-codex": {
|
|
20
|
-
inputTokens:
|
|
21
|
-
outputTokens:
|
|
22
|
-
cachedInputTokens: .
|
|
28
|
+
inputTokens: 1.75,
|
|
29
|
+
outputTokens: 14,
|
|
30
|
+
cachedInputTokens: .175
|
|
23
31
|
},
|
|
24
32
|
"gpt-5.2": {
|
|
25
|
-
inputTokens:
|
|
26
|
-
outputTokens:
|
|
27
|
-
cachedInputTokens: .
|
|
33
|
+
inputTokens: 1.75,
|
|
34
|
+
outputTokens: 14,
|
|
35
|
+
cachedInputTokens: .175
|
|
28
36
|
}
|
|
29
37
|
};
|
|
30
38
|
const ANTHROPIC_COSTS = {
|
|
@@ -114,9 +122,16 @@ function getModelCosts(model) {
|
|
|
114
122
|
}
|
|
115
123
|
function calculateCostUsd(model, usage) {
|
|
116
124
|
const costs = getModelCosts(model);
|
|
117
|
-
|
|
125
|
+
const cachedInput = usage.cachedInputTokens ?? 0;
|
|
126
|
+
const nonCachedInput = usage.inputTokens - cachedInput;
|
|
127
|
+
const lc = costs.longContext;
|
|
128
|
+
const isLongContext = lc !== void 0 && usage.inputTokens > lc.threshold;
|
|
129
|
+
const inputRate = costs.inputTokens * (isLongContext ? lc.inputMultiplier : 1);
|
|
130
|
+
const cachedRate = costs.cachedInputTokens * (isLongContext ? lc.cachedInputMultiplier : 1);
|
|
131
|
+
const outputRate = costs.outputTokens * (isLongContext ? lc.outputMultiplier : 1);
|
|
132
|
+
return nonCachedInput / 1e6 * inputRate + usage.outputTokens / 1e6 * outputRate + cachedInput / 1e6 * cachedRate;
|
|
118
133
|
}
|
|
119
134
|
//#endregion
|
|
120
135
|
export { calculateCostUsd, getModelCosts };
|
|
121
136
|
|
|
122
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
137
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwtY29zdC5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdXRpbHMvcHJvdmlkZXJzL2NvbW1vbi9tb2RlbC1jb3N0LnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICog66qo642467OEIO2GoO2BsCDqsIDqsqkg7YWM7J2067iUICsgY29zdCDqs4TsgrAuXG4gKlxuICogY2xhdWRlIGNvZGUg7JmAIOuPmeydvCDtjKjthLQ6IO2BtOudvOydtOyWuO2KuOyXkOyEnCDqsIDqsqkg7YWM7J2067iU66GcIOyngeygkSDqs4TsgrAuXG4gKiDqsIDqsqkg64uo7JyEOiBVU0QgcGVyIDFNIHRva2Vucy5cbiAqXG4gKiBPcGVuQUkg66qo6424IOuqqeuhnTogY29kZXggYXBwLXNlcnZlciBtb2RlbC9saXN0IFJQQyDroZwg7Iuk7LihICgyMDI2LTA1LTE4KVxuICpcbiAqIEBzZWUgaHR0cHM6Ly9wbGF0Zm9ybS5vcGVuYWkuY29tL2RvY3MvcHJpY2luZ1xuICogQHNlZSBodHRwczovL3BsYXRmb3JtLmNsYXVkZS5jb20vZG9jcy9lbi9hYm91dC1jbGF1ZGUvcHJpY2luZ1xuICovXG5cbmV4cG9ydCBpbnRlcmZhY2UgTW9kZWxDb3N0cyB7XG4gIGlucHV0VG9rZW5zOiBudW1iZXI7XG4gIG91dHB1dFRva2VuczogbnVtYmVyO1xuICBjYWNoZWRJbnB1dFRva2VuczogbnVtYmVyO1xuICAvKipcbiAgICogbG9uZy1jb250ZXh0IO2VoOymnS4g7KCE7LK0IOyeheugpSDthqDtgbAoaW5wdXRfdG9rZW5zLCBjYWNoZV9yZWFkIO2PrO2VqCnsnbQgdGhyZXNob2xkIOy0iOqzvCDsi5xcbiAgICog7LSI6rO867aE66eM7J20IOyVhOuLiOudvCDsmpTssq0g7KCE7LK0KGZ1bGwgc2Vzc2lvbinsl5Ag67Cw7JyoIOyggeyaqS5cbiAgICovXG4gIGxvbmdDb250ZXh0Pzoge1xuICAgIHRocmVzaG9sZDogbnVtYmVyO1xuICAgIGlucHV0TXVsdGlwbGllcjogbnVtYmVyO1xuICAgIGNhY2hlZElucHV0TXVsdGlwbGllcjogbnVtYmVyO1xuICAgIG91dHB1dE11bHRpcGxpZXI6IG51bWJlcjtcbiAgfTtcbn1cblxuLy8g4pSA4pSAIE9wZW5BSSDigJQgY29kZXggYXBwLXNlcnZlciDsl5DshJwg7IKs7JqpIOqwgOuKpe2VnCDrqqjrjbgg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG4vL1xuLy8g6rCA6rKpIOy2nOyymDogaHR0cHM6Ly9vcGVuYWkuY29tL2FwaS9wcmljaW5nICgyMDI2LTA2LTExIO2ZleyduClcbi8vIOyLoOuqqOuNuCDstpzsi5zrp4jri6Qg64uo6rCA6rCAIOuwlOuAjOuvgOuhnCg1LjLihpI1LjTihpI1LjUpIOuqqOuNuCDstpTqsIAg7IucIOuwmOuTnOyLnCDqs7Xsi50g7Y6Y7J207KeAIOyerO2ZleyduO2VtOyVvO2VqFxuXG4vLyBHUFQtNS407JeQ7IScIOyymOydjCDrj4TsnoXrkJwgbG9uZy1jb250ZXh0IO2VoOymnSAoNS4yLzUuMy1jb2RleOuKlCDtlbTri7kg7JeG7J2MLCA1LjQtbWluaeuKlCDrr7jtmZXsnbgpXG4vLyAyNzJLIOy0iOqzvCDsi5wgaW5wdXQgMnggLyBjYWNoZWQgMnggLyBvdXRwdXQgMS41eCDigJQg7LSI6rO867aE66eM7J20IOyVhOuLjCDshLjshZgg7KCE7LK07JeQIOyggeyaqeuQqFxuLy8gQHNlZSBodHRwczovL2RldmVsb3BlcnMub3BlbmFpLmNvbS9hcGkvZG9jcy9tb2RlbHMvZ3B0LTUuNSAoXCJwcm9tcHRzIHdpdGggPjI3MksgaW5wdXQgdG9rZW5zXCIpXG5jb25zdCBMT05HX0NPTlRFWFRfMjcySzogTm9uTnVsbGFibGU8TW9kZWxDb3N0c1tcImxvbmdDb250ZXh0XCJdPiA9IHtcbiAgdGhyZXNob2xkOiAyNzJfMDAwLFxuICBpbnB1dE11bHRpcGxpZXI6IDIsXG4gIGNhY2hlZElucHV0TXVsdGlwbGllcjogMixcbiAgb3V0cHV0TXVsdGlwbGllcjogMS41LFxufTtcblxuY29uc3QgT1BFTkFJX0NPU1RTOiBSZWNvcmQ8c3RyaW5nLCBNb2RlbENvc3RzPiA9IHtcbiAgLy8gaHR0cHM6Ly9vcGVuYWkuY29tL2luZGV4L2ludHJvZHVjaW5nLWdwdC01LTUvICgyMDI2LTA0IOy2nOyLnClcbiAgXCJncHQtNS41XCI6IHtcbiAgICBpbnB1dFRva2VuczogNSxcbiAgICBvdXRwdXRUb2tlbnM6IDMwLFxuICAgIGNhY2hlZElucHV0VG9rZW5zOiAwLjUsXG4gICAgbG9uZ0NvbnRleHQ6IExPTkdfQ09OVEVYVF8yNzJLLFxuICB9LFxuICAvLyBodHRwczovL29wZW5haS5jb20vaW5kZXgvaW50cm9kdWNpbmctZ3B0LTUtNC8gKDIwMjYtMDMg7Lac7IucKVxuICBcImdwdC01LjRcIjoge1xuICAgIGlucHV0VG9rZW5zOiAyLjUsXG4gICAgb3V0cHV0VG9rZW5zOiAxNSxcbiAgICBjYWNoZWRJbnB1dFRva2VuczogMC4yNSxcbiAgICBsb25nQ29udGV4dDogTE9OR19DT05URVhUXzI3MkssXG4gIH0sXG4gIFwiZ3B0LTUuNC1taW5pXCI6IHsgaW5wdXRUb2tlbnM6IDAuNzUsIG91dHB1dFRva2VuczogNC41LCBjYWNoZWRJbnB1dFRva2VuczogMC4wNzUgfSxcbiAgLy8gZ3B0LTUuMuyZgCDrj5nsnbwg64uo6rCAIChjYWNoZWQgPSBpbnB1dOydmCAxMCUpXG4gIFwiZ3B0LTUuMy1jb2RleFwiOiB7IGlucHV0VG9rZW5zOiAxLjc1LCBvdXRwdXRUb2tlbnM6IDE0LCBjYWNoZWRJbnB1dFRva2VuczogMC4xNzUgfSxcbiAgLy8gaHR0cHM6Ly9vcGVuYWkuY29tL2luZGV4L2ludHJvZHVjaW5nLWdwdC01LTIvIChjYWNoZWQgaW5wdXQgOTAlIO2VoOyduCDrqoXsi5wpXG4gIFwiZ3B0LTUuMlwiOiB7IGlucHV0VG9rZW5zOiAxLjc1LCBvdXRwdXRUb2tlbnM6IDE0LCBjYWNoZWRJbnB1dFRva2VuczogMC4xNzUgfSxcbn07XG5cbi8vIOKUgOKUgCBBbnRocm9waWMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5cbmNvbnN0IEFOVEhST1BJQ19DT1NUUzogUmVjb3JkPHN0cmluZywgTW9kZWxDb3N0cz4gPSB7XG4gIHNvbm5ldDogeyBpbnB1dFRva2VuczogMywgb3V0cHV0VG9rZW5zOiAxNSwgY2FjaGVkSW5wdXRUb2tlbnM6IDAuMyB9LFxuICBcImNsYXVkZS0zLTUtaGFpa3VcIjogeyBpbnB1dFRva2VuczogMC44LCBvdXRwdXRUb2tlbnM6IDQsIGNhY2hlZElucHV0VG9rZW5zOiAwLjA4IH0sXG4gIFwiY2xhdWRlLWhhaWt1LTQtNVwiOiB7IGlucHV0VG9rZW5zOiAxLCBvdXRwdXRUb2tlbnM6IDUsIGNhY2hlZElucHV0VG9rZW5zOiAwLjEgfSxcbiAgXCJjbGF1ZGUtMy01LXNvbm5ldFwiOiB7IGlucHV0VG9rZW5zOiAzLCBvdXRwdXRUb2tlbnM6IDE1LCBjYWNoZWRJbnB1dFRva2VuczogMC4zIH0sXG4gIFwiY2xhdWRlLTMtNy1zb25uZXRcIjogeyBpbnB1dFRva2VuczogMywgb3V0cHV0VG9rZW5zOiAxNSwgY2FjaGVkSW5wdXRUb2tlbnM6IDAuMyB9LFxuICBcImNsYXVkZS1zb25uZXQtNFwiOiB7IGlucHV0VG9rZW5zOiAzLCBvdXRwdXRUb2tlbnM6IDE1LCBjYWNoZWRJbnB1dFRva2VuczogMC4zIH0sXG4gIFwiY2xhdWRlLXNvbm5ldC00LTVcIjogeyBpbnB1dFRva2VuczogMywgb3V0cHV0VG9rZW5zOiAxNSwgY2FjaGVkSW5wdXRUb2tlbnM6IDAuMyB9LFxuICBcImNsYXVkZS1zb25uZXQtNC02XCI6IHsgaW5wdXRUb2tlbnM6IDMsIG91dHB1dFRva2VuczogMTUsIGNhY2hlZElucHV0VG9rZW5zOiAwLjMgfSxcbiAgXCJjbGF1ZGUtc29ubmV0LTQtN1wiOiB7IGlucHV0VG9rZW5zOiAzLCBvdXRwdXRUb2tlbnM6IDE1LCBjYWNoZWRJbnB1dFRva2VuczogMC4zIH0sXG4gIFwiY2xhdWRlLW9wdXMtNFwiOiB7IGlucHV0VG9rZW5zOiAxNSwgb3V0cHV0VG9rZW5zOiA3NSwgY2FjaGVkSW5wdXRUb2tlbnM6IDEuNSB9LFxuICBcImNsYXVkZS1vcHVzLTQtMVwiOiB7IGlucHV0VG9rZW5zOiAxNSwgb3V0cHV0VG9rZW5zOiA3NSwgY2FjaGVkSW5wdXRUb2tlbnM6IDEuNSB9LFxuICBcImNsYXVkZS1vcHVzLTQtNVwiOiB7IGlucHV0VG9rZW5zOiA1LCBvdXRwdXRUb2tlbnM6IDI1LCBjYWNoZWRJbnB1dFRva2VuczogMC41IH0sXG4gIFwiY2xhdWRlLW9wdXMtNC02XCI6IHsgaW5wdXRUb2tlbnM6IDUsIG91dHB1dFRva2VuczogMjUsIGNhY2hlZElucHV0VG9rZW5zOiAwLjUgfSxcbiAgXCJjbGF1ZGUtb3B1cy00LTdcIjogeyBpbnB1dFRva2VuczogNSwgb3V0cHV0VG9rZW5zOiAyNSwgY2FjaGVkSW5wdXRUb2tlbnM6IDAuNSB9LFxuICBcImNsYXVkZS1vcHVzLTQtOFwiOiB7IGlucHV0VG9rZW5zOiA1LCBvdXRwdXRUb2tlbnM6IDI1LCBjYWNoZWRJbnB1dFRva2VuczogMC41IH0sXG59O1xuXG5jb25zdCBERUZBVUxUX0NPU1RTOiBNb2RlbENvc3RzID0geyBpbnB1dFRva2VuczogMywgb3V0cHV0VG9rZW5zOiAxNSwgY2FjaGVkSW5wdXRUb2tlbnM6IDAuMyB9O1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0TW9kZWxDb3N0cyhtb2RlbDogc3RyaW5nKTogTW9kZWxDb3N0cyB7XG4gIHJldHVybiBPUEVOQUlfQ09TVFNbbW9kZWxdID8/IEFOVEhST1BJQ19DT1NUU1ttb2RlbF0gPz8gREVGQVVMVF9DT1NUUztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNhbGN1bGF0ZUNvc3RVc2QoXG4gIG1vZGVsOiBzdHJpbmcsXG4gIHVzYWdlOiB7IGlucHV0VG9rZW5zOiBudW1iZXI7IG91dHB1dFRva2VuczogbnVtYmVyOyBjYWNoZWRJbnB1dFRva2Vucz86IG51bWJlciB9LFxuKTogbnVtYmVyIHtcbiAgY29uc3QgY29zdHMgPSBnZXRNb2RlbENvc3RzKG1vZGVsKTtcbiAgY29uc3QgY2FjaGVkSW5wdXQgPSB1c2FnZS5jYWNoZWRJbnB1dFRva2VucyA/PyAwO1xuICBjb25zdCBub25DYWNoZWRJbnB1dCA9IHVzYWdlLmlucHV0VG9rZW5zIC0gY2FjaGVkSW5wdXQ7XG5cbiAgLy8gbG9uZy1jb250ZXh0IO2VoOymnTog7KCE7LK0IOyeheugpShpbnB1dF90b2tlbnMsIGNhY2hlIO2PrO2VqCnsnbQgdGhyZXNob2xkIOy0iOqzvCDsi5wg7JqU7LKtIOyghOyytOyXkCDrsLDsnKgg7KCB7JqpXG4gIGNvbnN0IGxjID0gY29zdHMubG9uZ0NvbnRleHQ7XG4gIGNvbnN0IGlzTG9uZ0NvbnRleHQgPSBsYyAhPT0gdW5kZWZpbmVkICYmIHVzYWdlLmlucHV0VG9rZW5zID4gbGMudGhyZXNob2xkO1xuICBjb25zdCBpbnB1dFJhdGUgPSBjb3N0cy5pbnB1dFRva2VucyAqIChpc0xvbmdDb250ZXh0ID8gbGMuaW5wdXRNdWx0aXBsaWVyIDogMSk7XG4gIGNvbnN0IGNhY2hlZFJhdGUgPSBjb3N0cy5jYWNoZWRJbnB1dFRva2VucyAqIChpc0xvbmdDb250ZXh0ID8gbGMuY2FjaGVkSW5wdXRNdWx0aXBsaWVyIDogMSk7XG4gIGNvbnN0IG91dHB1dFJhdGUgPSBjb3N0cy5vdXRwdXRUb2tlbnMgKiAoaXNMb25nQ29udGV4dCA/IGxjLm91dHB1dE11bHRpcGxpZXIgOiAxKTtcblxuICByZXR1cm4gKFxuICAgIChub25DYWNoZWRJbnB1dCAvIDFfMDAwXzAwMCkgKiBpbnB1dFJhdGUgK1xuICAgICh1c2FnZS5vdXRwdXRUb2tlbnMgLyAxXzAwMF8wMDApICogb3V0cHV0UmF0ZSArXG4gICAgKGNhY2hl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
|