@opencode-ai/cli-linux-x64 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.
- package/bin/chunk-01tb5qes.js.map +131 -0
- package/bin/chunk-06d8aa69.js.map +10 -0
- package/bin/chunk-07w2xsfy.js.map +50 -0
- package/bin/chunk-0azwkk9z.js.map +12 -0
- package/bin/chunk-0d9ja06r.js.map +9 -0
- package/bin/chunk-14kv2kjk.js.map +13 -0
- package/bin/chunk-17j53wgt.js.map +11 -0
- package/bin/chunk-191djt7z.js.map +113 -0
- package/bin/chunk-1brm44vt.js.map +10 -0
- package/bin/chunk-1jb1dn9p.js.map +10 -0
- package/bin/chunk-1paeax4j.js.map +56 -0
- package/bin/chunk-1wb39pye.js.map +9 -0
- package/bin/chunk-2mjmecen.js.map +10 -0
- package/bin/chunk-2wqpg9fb.js.map +10 -0
- package/bin/chunk-32ewzcjk.js.map +10 -0
- package/bin/chunk-334z6v35.js.map +9 -0
- package/bin/chunk-3jqjf0hd.js.map +10 -0
- package/bin/chunk-3n6vddyq.js.map +73 -0
- package/bin/chunk-3zmvhepw.js.map +10 -0
- package/bin/chunk-4980h0t7.js.map +37 -0
- package/bin/chunk-4q5k6a0e.js.map +10 -0
- package/bin/chunk-5ft9zwf9.js.map +10 -0
- package/bin/chunk-6ttpn29p.js.map +10 -0
- package/bin/chunk-7fvpf4bs.js.map +10 -0
- package/bin/chunk-7vb6kdat.js.map +10 -0
- package/bin/chunk-84amh6xf.js.map +11 -0
- package/bin/chunk-8akfq1ty.js.map +19 -0
- package/bin/chunk-8rd9r1gb.js.map +11 -0
- package/bin/chunk-8x80qvzn.js.map +10 -0
- package/bin/chunk-943th5qs.js.map +10 -0
- package/bin/chunk-94yf089p.js.map +10 -0
- package/bin/chunk-98cxndhz.js.map +9 -0
- package/bin/chunk-9f8tmby0.js.map +9 -0
- package/bin/chunk-9fbstsnw.js.map +9 -0
- package/bin/chunk-9hq8aywf.js.map +10 -0
- package/bin/chunk-9m7hf7ms.js.map +10 -0
- package/bin/chunk-9vf55fj3.js.map +10 -0
- package/bin/chunk-9w9rk9en.js.map +20 -0
- package/bin/chunk-9y4hgfns.js.map +10 -0
- package/bin/chunk-aag5p1fp.js.map +10 -0
- package/bin/chunk-axy1v6wd.js.map +27 -0
- package/bin/chunk-bj9msmj2.js.map +10 -0
- package/bin/chunk-bt0r89ee.js.map +9 -0
- package/bin/chunk-c2gsyspz.js.map +10 -0
- package/bin/chunk-c8hr0q5n.js.map +10 -0
- package/bin/chunk-cab6ccj0.js.map +10 -0
- package/bin/chunk-ck4nkjtx.js.map +193 -0
- package/bin/chunk-cvm4kr56.js.map +23 -0
- package/bin/chunk-cyb9bpgm.js.map +10 -0
- package/bin/chunk-d1p8awq6.js.map +10 -0
- package/bin/chunk-d6nz1m6v.js.map +10 -0
- package/bin/chunk-d9g5798m.js.map +81 -0
- package/bin/chunk-dcn0azxw.js.map +10 -0
- package/bin/chunk-dd9pfwmr.js.map +10 -0
- package/bin/chunk-dk4qekzk.js.map +10 -0
- package/bin/chunk-dk9tgwkh.js.map +9 -0
- package/bin/chunk-dzzhxh1c.js.map +10 -0
- package/bin/chunk-efsmps94.js.map +9 -0
- package/bin/chunk-fdw7znt6.js.map +11 -0
- package/bin/chunk-fs6t8jdg.js.map +10 -0
- package/bin/chunk-fzcqzwx5.js.map +10 -0
- package/bin/chunk-g4fcmhkj.js.map +11 -0
- package/bin/chunk-g4ff66n8.js.map +10 -0
- package/bin/chunk-g8mpn6ke.js.map +11 -0
- package/bin/chunk-gahs293a.js.map +10 -0
- package/bin/chunk-gh9dcqbv.js.map +10 -0
- package/bin/chunk-grvxd8zq.js.map +10 -0
- package/bin/chunk-gv6nagng.js.map +10 -0
- package/bin/chunk-h1vz14ze.js.map +167 -0
- package/bin/chunk-hav16yge.js.map +10 -0
- package/bin/chunk-hp5nnq6f.js.map +11 -0
- package/bin/chunk-hrcbafh3.js.map +9 -0
- package/bin/chunk-hxfsfpek.js.map +10 -0
- package/bin/chunk-jcqp2wmf.js.map +10 -0
- package/bin/chunk-jt9t8203.js.map +9 -0
- package/bin/chunk-k0980eb5.js.map +10 -0
- package/bin/chunk-kghptcgb.js.map +9 -0
- package/bin/chunk-kkvk5eez.js.map +10 -0
- package/bin/chunk-kv0b3sh5.js.map +10 -0
- package/bin/chunk-kvfs5rat.js.map +10 -0
- package/bin/chunk-mf0qqhvb.js.map +10 -0
- package/bin/chunk-mkze6twx.js.map +10 -0
- package/bin/chunk-mzjs3qj3.js.map +10 -0
- package/bin/chunk-n10mj2m3.js.map +17 -0
- package/bin/chunk-n2fbt143.js.map +9 -0
- package/bin/chunk-n6a0rctn.js.map +9 -0
- package/bin/chunk-nd3yv9bg.js.map +388 -0
- package/bin/chunk-njn9a3jp.js.map +13 -0
- package/bin/chunk-nkhzpsnk.js.map +13 -0
- package/bin/chunk-ny5cyeha.js.map +10 -0
- package/bin/chunk-p3nkd9t2.js.map +10 -0
- package/bin/chunk-p3pr1t3k.js.map +10 -0
- package/bin/chunk-p7j7e7hb.js.map +10 -0
- package/bin/chunk-p89bk96c.js.map +10 -0
- package/bin/chunk-pnkd37ss.js.map +20 -0
- package/bin/chunk-prat77ba.js.map +577 -0
- package/bin/chunk-q6nf6fka.js.map +10 -0
- package/bin/chunk-qbpebjh2.js.map +10 -0
- package/bin/chunk-qzx2gre7.js.map +13 -0
- package/bin/chunk-r55kafff.js.map +9 -0
- package/bin/chunk-rrwp4x01.js.map +10 -0
- package/bin/chunk-rt02k446.js.map +11 -0
- package/bin/chunk-s39nwv01.js.map +9 -0
- package/bin/chunk-s983v0dp.js.map +10 -0
- package/bin/chunk-san15sca.js.map +10 -0
- package/bin/chunk-sfk73pp2.js.map +10 -0
- package/bin/chunk-sjd3wbjd.js.map +10 -0
- package/bin/chunk-swbdmja3.js.map +10 -0
- package/bin/chunk-tc8tvjey.js.map +33 -0
- package/bin/chunk-tcqtz83b.js.map +10 -0
- package/bin/chunk-tgxxchfy.js.map +28 -0
- package/bin/chunk-tvxakxv2.js.map +10 -0
- package/bin/chunk-v81ta3tx.js.map +15 -0
- package/bin/chunk-va2h4xya.js.map +37 -0
- package/bin/chunk-vezq3hc4.js.map +9 -0
- package/bin/chunk-vmbpvmpg.js.map +10 -0
- package/bin/chunk-w7p62pb6.js.map +17 -0
- package/bin/chunk-wr4x72qd.js.map +13 -0
- package/bin/chunk-x3ywttp7.js.map +10 -0
- package/bin/chunk-x988wmrk.js.map +10 -0
- package/bin/chunk-x9zjg1f7.js.map +20 -0
- package/bin/chunk-xaqrhtz6.js.map +10 -0
- package/bin/chunk-xd2mrkwy.js.map +10 -0
- package/bin/chunk-xfh2377b.js.map +10 -0
- package/bin/chunk-xs0ras4j.js.map +51 -0
- package/bin/chunk-xt7ap9fb.js.map +10 -0
- package/bin/chunk-xya5qk3h.js.map +16 -0
- package/bin/chunk-yg7w4jgd.js.map +10 -0
- package/bin/chunk-yhpv46tb.js.map +20 -0
- package/bin/chunk-ymy66kr8.js.map +15 -0
- package/bin/chunk-yx4z6xsb.js.map +11 -0
- package/bin/chunk-yymwxqpy.js.map +10 -0
- package/bin/chunk-z70c75xe.js.map +11 -0
- package/bin/chunk-zkqyr3hc.js.map +10 -0
- package/bin/index.js.map +12 -0
- package/bin/lildax +0 -0
- package/package.json +15 -0
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../node_modules/.bun/@opentelemetry+resources@2.6.1+460773ef8ff1e07c/node_modules/@opentelemetry/resources/build/src/default-service-name.js", "../../node_modules/.bun/@opentelemetry+resources@2.6.1+460773ef8ff1e07c/node_modules/@opentelemetry/resources/build/src/utils.js", "../../node_modules/.bun/@opentelemetry+resources@2.6.1+460773ef8ff1e07c/node_modules/@opentelemetry/resources/build/src/ResourceImpl.js", "../../node_modules/.bun/@opentelemetry+resources@2.6.1+460773ef8ff1e07c/node_modules/@opentelemetry/resources/build/src/detect-resources.js", "../../node_modules/.bun/@opentelemetry+resources@2.6.1+460773ef8ff1e07c/node_modules/@opentelemetry/resources/build/src/detectors/EnvDetector.js", "../../node_modules/.bun/@opentelemetry+resources@2.6.1+460773ef8ff1e07c/node_modules/@opentelemetry/resources/build/src/semconv.js", "../../node_modules/.bun/@opentelemetry+resources@2.6.1+460773ef8ff1e07c/node_modules/@opentelemetry/resources/build/src/detectors/platform/node/machine-id/getMachineId.js", "../../node_modules/.bun/@opentelemetry+resources@2.6.1+460773ef8ff1e07c/node_modules/@opentelemetry/resources/build/src/detectors/platform/node/utils.js", "../../node_modules/.bun/@opentelemetry+resources@2.6.1+460773ef8ff1e07c/node_modules/@opentelemetry/resources/build/src/detectors/platform/node/HostDetector.js", "../../node_modules/.bun/@opentelemetry+resources@2.6.1+460773ef8ff1e07c/node_modules/@opentelemetry/resources/build/src/detectors/platform/node/OSDetector.js", "../../node_modules/.bun/@opentelemetry+resources@2.6.1+460773ef8ff1e07c/node_modules/@opentelemetry/resources/build/src/detectors/platform/node/ProcessDetector.js", "../../node_modules/.bun/@opentelemetry+resources@2.6.1+460773ef8ff1e07c/node_modules/@opentelemetry/resources/build/src/detectors/platform/node/ServiceInstanceIdDetector.js", "../../node_modules/.bun/@opentelemetry+resources@2.6.1+460773ef8ff1e07c/node_modules/@opentelemetry/resources/build/src/detectors/platform/node/index.js", "../../node_modules/.bun/@opentelemetry+resources@2.6.1+460773ef8ff1e07c/node_modules/@opentelemetry/resources/build/src/detectors/platform/index.js", "../../node_modules/.bun/@opentelemetry+resources@2.6.1+460773ef8ff1e07c/node_modules/@opentelemetry/resources/build/src/detectors/NoopDetector.js", "../../node_modules/.bun/@opentelemetry+resources@2.6.1+460773ef8ff1e07c/node_modules/@opentelemetry/resources/build/src/detectors/index.js", "../../node_modules/.bun/@opentelemetry+resources@2.6.1+460773ef8ff1e07c/node_modules/@opentelemetry/resources/build/src/index.js", "../../node_modules/.bun/@opentelemetry+sdk-trace-base@2.6.1+460773ef8ff1e07c/node_modules/@opentelemetry/sdk-trace-base/build/src/enums.js", "../../node_modules/.bun/@opentelemetry+sdk-trace-base@2.6.1+460773ef8ff1e07c/node_modules/@opentelemetry/sdk-trace-base/build/src/Span.js", "../../node_modules/.bun/@opentelemetry+sdk-trace-base@2.6.1+460773ef8ff1e07c/node_modules/@opentelemetry/sdk-trace-base/build/src/Sampler.js", "../../node_modules/.bun/@opentelemetry+sdk-trace-base@2.6.1+460773ef8ff1e07c/node_modules/@opentelemetry/sdk-trace-base/build/src/sampler/AlwaysOffSampler.js", "../../node_modules/.bun/@opentelemetry+sdk-trace-base@2.6.1+460773ef8ff1e07c/node_modules/@opentelemetry/sdk-trace-base/build/src/sampler/AlwaysOnSampler.js", "../../node_modules/.bun/@opentelemetry+sdk-trace-base@2.6.1+460773ef8ff1e07c/node_modules/@opentelemetry/sdk-trace-base/build/src/sampler/ParentBasedSampler.js", "../../node_modules/.bun/@opentelemetry+sdk-trace-base@2.6.1+460773ef8ff1e07c/node_modules/@opentelemetry/sdk-trace-base/build/src/sampler/TraceIdRatioBasedSampler.js", "../../node_modules/.bun/@opentelemetry+sdk-trace-base@2.6.1+460773ef8ff1e07c/node_modules/@opentelemetry/sdk-trace-base/build/src/config.js", "../../node_modules/.bun/@opentelemetry+sdk-trace-base@2.6.1+460773ef8ff1e07c/node_modules/@opentelemetry/sdk-trace-base/build/src/utility.js", "../../node_modules/.bun/@opentelemetry+sdk-trace-base@2.6.1+460773ef8ff1e07c/node_modules/@opentelemetry/sdk-trace-base/build/src/export/BatchSpanProcessorBase.js", "../../node_modules/.bun/@opentelemetry+sdk-trace-base@2.6.1+460773ef8ff1e07c/node_modules/@opentelemetry/sdk-trace-base/build/src/platform/node/export/BatchSpanProcessor.js", "../../node_modules/.bun/@opentelemetry+sdk-trace-base@2.6.1+460773ef8ff1e07c/node_modules/@opentelemetry/sdk-trace-base/build/src/platform/node/RandomIdGenerator.js", "../../node_modules/.bun/@opentelemetry+sdk-trace-base@2.6.1+460773ef8ff1e07c/node_modules/@opentelemetry/sdk-trace-base/build/src/platform/node/index.js", "../../node_modules/.bun/@opentelemetry+sdk-trace-base@2.6.1+460773ef8ff1e07c/node_modules/@opentelemetry/sdk-trace-base/build/src/platform/index.js", "../../node_modules/.bun/@opentelemetry+sdk-trace-base@2.6.1+460773ef8ff1e07c/node_modules/@opentelemetry/sdk-trace-base/build/src/semconv.js", "../../node_modules/.bun/@opentelemetry+sdk-trace-base@2.6.1+460773ef8ff1e07c/node_modules/@opentelemetry/sdk-trace-base/build/src/TracerMetrics.js", "../../node_modules/.bun/@opentelemetry+sdk-trace-base@2.6.1+460773ef8ff1e07c/node_modules/@opentelemetry/sdk-trace-base/build/src/version.js", "../../node_modules/.bun/@opentelemetry+sdk-trace-base@2.6.1+460773ef8ff1e07c/node_modules/@opentelemetry/sdk-trace-base/build/src/Tracer.js", "../../node_modules/.bun/@opentelemetry+sdk-trace-base@2.6.1+460773ef8ff1e07c/node_modules/@opentelemetry/sdk-trace-base/build/src/MultiSpanProcessor.js", "../../node_modules/.bun/@opentelemetry+sdk-trace-base@2.6.1+460773ef8ff1e07c/node_modules/@opentelemetry/sdk-trace-base/build/src/BasicTracerProvider.js", "../../node_modules/.bun/@opentelemetry+sdk-trace-base@2.6.1+460773ef8ff1e07c/node_modules/@opentelemetry/sdk-trace-base/build/src/export/ConsoleSpanExporter.js", "../../node_modules/.bun/@opentelemetry+sdk-trace-base@2.6.1+460773ef8ff1e07c/node_modules/@opentelemetry/sdk-trace-base/build/src/export/InMemorySpanExporter.js", "../../node_modules/.bun/@opentelemetry+sdk-trace-base@2.6.1+460773ef8ff1e07c/node_modules/@opentelemetry/sdk-trace-base/build/src/export/SimpleSpanProcessor.js", "../../node_modules/.bun/@opentelemetry+sdk-trace-base@2.6.1+460773ef8ff1e07c/node_modules/@opentelemetry/sdk-trace-base/build/src/export/NoopSpanProcessor.js", "../../node_modules/.bun/@opentelemetry+sdk-trace-base@2.6.1+460773ef8ff1e07c/node_modules/@opentelemetry/sdk-trace-base/build/src/index.js"],
|
|
4
|
+
"sourcesContent": [
|
|
5
|
+
"\"use strict\";\n/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports._clearDefaultServiceNameCache = exports.defaultServiceName = void 0;\nlet serviceName;\n/**\n * Returns the default service name for OpenTelemetry resources.\n * In Node.js environments, returns \"unknown_service:<process.argv0>\".\n * In browser/edge environments, returns \"unknown_service\".\n */\nfunction defaultServiceName() {\n if (serviceName === undefined) {\n try {\n const argv0 = globalThis.process.argv0;\n serviceName = argv0 ? `unknown_service:${argv0}` : 'unknown_service';\n }\n catch {\n serviceName = 'unknown_service';\n }\n }\n return serviceName;\n}\nexports.defaultServiceName = defaultServiceName;\n/** @internal For testing purposes only */\nfunction _clearDefaultServiceNameCache() {\n serviceName = undefined;\n}\nexports._clearDefaultServiceNameCache = _clearDefaultServiceNameCache;\n//# sourceMappingURL=default-service-name.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.isPromiseLike = void 0;\nconst isPromiseLike = (val) => {\n return (val !== null &&\n typeof val === 'object' &&\n typeof val.then === 'function');\n};\nexports.isPromiseLike = isPromiseLike;\n//# sourceMappingURL=utils.js.map",
|
|
7
|
+
"\"use strict\";\n/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.defaultResource = exports.emptyResource = exports.resourceFromDetectedResource = exports.resourceFromAttributes = void 0;\nconst api_1 = require(\"@opentelemetry/api\");\nconst core_1 = require(\"@opentelemetry/core\");\nconst semantic_conventions_1 = require(\"@opentelemetry/semantic-conventions\");\nconst default_service_name_1 = require(\"./default-service-name\");\nconst utils_1 = require(\"./utils\");\nclass ResourceImpl {\n _rawAttributes;\n _asyncAttributesPending = false;\n _schemaUrl;\n _memoizedAttributes;\n static FromAttributeList(attributes, options) {\n const res = new ResourceImpl({}, options);\n res._rawAttributes = guardedRawAttributes(attributes);\n res._asyncAttributesPending =\n attributes.filter(([_, val]) => (0, utils_1.isPromiseLike)(val)).length > 0;\n return res;\n }\n constructor(\n /**\n * A dictionary of attributes with string keys and values that provide\n * information about the entity as numbers, strings or booleans\n * TODO: Consider to add check/validation on attributes.\n */\n resource, options) {\n const attributes = resource.attributes ?? {};\n this._rawAttributes = Object.entries(attributes).map(([k, v]) => {\n if ((0, utils_1.isPromiseLike)(v)) {\n // side-effect\n this._asyncAttributesPending = true;\n }\n return [k, v];\n });\n this._rawAttributes = guardedRawAttributes(this._rawAttributes);\n this._schemaUrl = validateSchemaUrl(options?.schemaUrl);\n }\n get asyncAttributesPending() {\n return this._asyncAttributesPending;\n }\n async waitForAsyncAttributes() {\n if (!this.asyncAttributesPending) {\n return;\n }\n for (let i = 0; i < this._rawAttributes.length; i++) {\n const [k, v] = this._rawAttributes[i];\n this._rawAttributes[i] = [k, (0, utils_1.isPromiseLike)(v) ? await v : v];\n }\n this._asyncAttributesPending = false;\n }\n get attributes() {\n if (this.asyncAttributesPending) {\n api_1.diag.error('Accessing resource attributes before async attributes settled');\n }\n if (this._memoizedAttributes) {\n return this._memoizedAttributes;\n }\n const attrs = {};\n for (const [k, v] of this._rawAttributes) {\n if ((0, utils_1.isPromiseLike)(v)) {\n api_1.diag.debug(`Unsettled resource attribute ${k} skipped`);\n continue;\n }\n if (v != null) {\n attrs[k] ??= v;\n }\n }\n // only memoize output if all attributes are settled\n if (!this._asyncAttributesPending) {\n this._memoizedAttributes = attrs;\n }\n return attrs;\n }\n getRawAttributes() {\n return this._rawAttributes;\n }\n get schemaUrl() {\n return this._schemaUrl;\n }\n merge(resource) {\n if (resource == null)\n return this;\n // Order is important\n // Spec states incoming attributes override existing attributes\n const mergedSchemaUrl = mergeSchemaUrl(this, resource);\n const mergedOptions = mergedSchemaUrl\n ? { schemaUrl: mergedSchemaUrl }\n : undefined;\n return ResourceImpl.FromAttributeList([...resource.getRawAttributes(), ...this.getRawAttributes()], mergedOptions);\n }\n}\nfunction resourceFromAttributes(attributes, options) {\n return ResourceImpl.FromAttributeList(Object.entries(attributes), options);\n}\nexports.resourceFromAttributes = resourceFromAttributes;\nfunction resourceFromDetectedResource(detectedResource, options) {\n return new ResourceImpl(detectedResource, options);\n}\nexports.resourceFromDetectedResource = resourceFromDetectedResource;\nfunction emptyResource() {\n return resourceFromAttributes({});\n}\nexports.emptyResource = emptyResource;\nfunction defaultResource() {\n return resourceFromAttributes({\n [semantic_conventions_1.ATTR_SERVICE_NAME]: (0, default_service_name_1.defaultServiceName)(),\n [semantic_conventions_1.ATTR_TELEMETRY_SDK_LANGUAGE]: core_1.SDK_INFO[semantic_conventions_1.ATTR_TELEMETRY_SDK_LANGUAGE],\n [semantic_conventions_1.ATTR_TELEMETRY_SDK_NAME]: core_1.SDK_INFO[semantic_conventions_1.ATTR_TELEMETRY_SDK_NAME],\n [semantic_conventions_1.ATTR_TELEMETRY_SDK_VERSION]: core_1.SDK_INFO[semantic_conventions_1.ATTR_TELEMETRY_SDK_VERSION],\n });\n}\nexports.defaultResource = defaultResource;\nfunction guardedRawAttributes(attributes) {\n return attributes.map(([k, v]) => {\n if ((0, utils_1.isPromiseLike)(v)) {\n return [\n k,\n v.catch(err => {\n api_1.diag.debug('promise rejection for resource attribute: %s - %s', k, err);\n return undefined;\n }),\n ];\n }\n return [k, v];\n });\n}\nfunction validateSchemaUrl(schemaUrl) {\n if (typeof schemaUrl === 'string' || schemaUrl === undefined) {\n return schemaUrl;\n }\n api_1.diag.warn('Schema URL must be string or undefined, got %s. Schema URL will be ignored.', schemaUrl);\n return undefined;\n}\nfunction mergeSchemaUrl(old, updating) {\n const oldSchemaUrl = old?.schemaUrl;\n const updatingSchemaUrl = updating?.schemaUrl;\n const isOldEmpty = oldSchemaUrl === undefined || oldSchemaUrl === '';\n const isUpdatingEmpty = updatingSchemaUrl === undefined || updatingSchemaUrl === '';\n if (isOldEmpty) {\n return updatingSchemaUrl;\n }\n if (isUpdatingEmpty) {\n return oldSchemaUrl;\n }\n if (oldSchemaUrl === updatingSchemaUrl) {\n return oldSchemaUrl;\n }\n api_1.diag.warn('Schema URL merge conflict: old resource has \"%s\", updating resource has \"%s\". Resulting resource will have undefined Schema URL.', oldSchemaUrl, updatingSchemaUrl);\n return undefined;\n}\n//# sourceMappingURL=ResourceImpl.js.map",
|
|
8
|
+
"\"use strict\";\n/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.detectResources = void 0;\nconst api_1 = require(\"@opentelemetry/api\");\nconst ResourceImpl_1 = require(\"./ResourceImpl\");\n/**\n * Runs all resource detectors and returns the results merged into a single Resource.\n *\n * @param config Configuration for resource detection\n */\nconst detectResources = (config = {}) => {\n const resources = (config.detectors || []).map(d => {\n try {\n const resource = (0, ResourceImpl_1.resourceFromDetectedResource)(d.detect(config));\n api_1.diag.debug(`${d.constructor.name} found resource.`, resource);\n return resource;\n }\n catch (e) {\n api_1.diag.debug(`${d.constructor.name} failed: ${e.message}`);\n return (0, ResourceImpl_1.emptyResource)();\n }\n });\n return resources.reduce((acc, resource) => acc.merge(resource), (0, ResourceImpl_1.emptyResource)());\n};\nexports.detectResources = detectResources;\n//# sourceMappingURL=detect-resources.js.map",
|
|
9
|
+
"\"use strict\";\n/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.envDetector = void 0;\nconst api_1 = require(\"@opentelemetry/api\");\nconst semantic_conventions_1 = require(\"@opentelemetry/semantic-conventions\");\nconst core_1 = require(\"@opentelemetry/core\");\n/**\n * EnvDetector can be used to detect the presence of and create a Resource\n * from the OTEL_RESOURCE_ATTRIBUTES environment variable.\n */\nclass EnvDetector {\n // Type, attribute keys, and attribute values should not exceed 256 characters.\n _MAX_LENGTH = 255;\n // OTEL_RESOURCE_ATTRIBUTES is a comma-separated list of attributes.\n _COMMA_SEPARATOR = ',';\n // OTEL_RESOURCE_ATTRIBUTES contains key value pair separated by '='.\n _LABEL_KEY_VALUE_SPLITTER = '=';\n /**\n * Returns a {@link Resource} populated with attributes from the\n * OTEL_RESOURCE_ATTRIBUTES environment variable. Note this is an async\n * function to conform to the Detector interface.\n *\n * @param config The resource detection config\n */\n detect(_config) {\n const attributes = {};\n const rawAttributes = (0, core_1.getStringFromEnv)('OTEL_RESOURCE_ATTRIBUTES');\n const serviceName = (0, core_1.getStringFromEnv)('OTEL_SERVICE_NAME');\n if (rawAttributes) {\n try {\n const parsedAttributes = this._parseResourceAttributes(rawAttributes);\n Object.assign(attributes, parsedAttributes);\n }\n catch (e) {\n api_1.diag.debug(`EnvDetector failed: ${e instanceof Error ? e.message : e}`);\n }\n }\n if (serviceName) {\n attributes[semantic_conventions_1.ATTR_SERVICE_NAME] = serviceName;\n }\n return { attributes };\n }\n /**\n * Creates an attribute map from the OTEL_RESOURCE_ATTRIBUTES environment\n * variable.\n *\n * OTEL_RESOURCE_ATTRIBUTES: A comma-separated list of attributes in the\n * format \"key1=value1,key2=value2\". The ',' and '=' characters in keys\n * and values MUST be percent-encoded. Other characters MAY be percent-encoded.\n *\n * Per the spec, on any error (e.g., decoding failure), the entire environment\n * variable value is discarded.\n *\n * @param rawEnvAttributes The resource attributes as a comma-separated list\n * of key/value pairs.\n * @returns The parsed resource attributes.\n * @throws Error if parsing fails (caller handles by discarding all attributes)\n */\n _parseResourceAttributes(rawEnvAttributes) {\n if (!rawEnvAttributes)\n return {};\n const attributes = {};\n const rawAttributes = rawEnvAttributes.split(this._COMMA_SEPARATOR);\n for (const rawAttribute of rawAttributes) {\n const keyValuePair = rawAttribute.split(this._LABEL_KEY_VALUE_SPLITTER);\n // Per spec: ',' and '=' MUST be percent-encoded in keys and values.\n // If we get != 2 parts, there's an unencoded '=' which is an error.\n if (keyValuePair.length !== 2) {\n throw new Error(`Invalid format for OTEL_RESOURCE_ATTRIBUTES: \"${rawAttribute}\". ` +\n `Expected format: key=value. The ',' and '=' characters must be percent-encoded in keys and values.`);\n }\n const [rawKey, rawValue] = keyValuePair;\n const key = rawKey.trim();\n const value = rawValue.trim();\n if (key.length === 0) {\n throw new Error(`Invalid OTEL_RESOURCE_ATTRIBUTES: empty attribute key in \"${rawAttribute}\".`);\n }\n let decodedKey;\n let decodedValue;\n try {\n decodedKey = decodeURIComponent(key);\n decodedValue = decodeURIComponent(value);\n }\n catch (e) {\n throw new Error(`Failed to percent-decode OTEL_RESOURCE_ATTRIBUTES entry \"${rawAttribute}\": ${e instanceof Error ? e.message : e}`);\n }\n if (decodedKey.length > this._MAX_LENGTH) {\n throw new Error(`Attribute key exceeds the maximum length of ${this._MAX_LENGTH} characters: \"${decodedKey}\".`);\n }\n if (decodedValue.length > this._MAX_LENGTH) {\n throw new Error(`Attribute value exceeds the maximum length of ${this._MAX_LENGTH} characters for key \"${decodedKey}\".`);\n }\n attributes[decodedKey] = decodedValue;\n }\n return attributes;\n }\n}\nexports.envDetector = new EnvDetector();\n//# sourceMappingURL=EnvDetector.js.map",
|
|
10
|
+
"\"use strict\";\n/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ATTR_WEBENGINE_VERSION = exports.ATTR_WEBENGINE_NAME = exports.ATTR_WEBENGINE_DESCRIPTION = exports.ATTR_SERVICE_NAMESPACE = exports.ATTR_SERVICE_INSTANCE_ID = exports.ATTR_PROCESS_RUNTIME_VERSION = exports.ATTR_PROCESS_RUNTIME_NAME = exports.ATTR_PROCESS_RUNTIME_DESCRIPTION = exports.ATTR_PROCESS_PID = exports.ATTR_PROCESS_OWNER = exports.ATTR_PROCESS_EXECUTABLE_PATH = exports.ATTR_PROCESS_EXECUTABLE_NAME = exports.ATTR_PROCESS_COMMAND_ARGS = exports.ATTR_PROCESS_COMMAND = exports.ATTR_OS_VERSION = exports.ATTR_OS_TYPE = exports.ATTR_K8S_POD_NAME = exports.ATTR_K8S_NAMESPACE_NAME = exports.ATTR_K8S_DEPLOYMENT_NAME = exports.ATTR_K8S_CLUSTER_NAME = exports.ATTR_HOST_TYPE = exports.ATTR_HOST_NAME = exports.ATTR_HOST_IMAGE_VERSION = exports.ATTR_HOST_IMAGE_NAME = exports.ATTR_HOST_IMAGE_ID = exports.ATTR_HOST_ID = exports.ATTR_HOST_ARCH = exports.ATTR_CONTAINER_NAME = exports.ATTR_CONTAINER_IMAGE_TAGS = exports.ATTR_CONTAINER_IMAGE_NAME = exports.ATTR_CONTAINER_ID = exports.ATTR_CLOUD_REGION = exports.ATTR_CLOUD_PROVIDER = exports.ATTR_CLOUD_AVAILABILITY_ZONE = exports.ATTR_CLOUD_ACCOUNT_ID = void 0;\n/*\n * This file contains a copy of unstable semantic convention definitions\n * used by this package.\n * @see https://github.com/open-telemetry/opentelemetry-js/tree/main/semantic-conventions#unstable-semconv\n */\n/**\n * The cloud account ID the resource is assigned to.\n *\n * @example 111111111111\n * @example opentelemetry\n *\n * @experimental This attribute is experimental and is subject to breaking changes in minor releases of `@opentelemetry/semantic-conventions`.\n */\nexports.ATTR_CLOUD_ACCOUNT_ID = 'cloud.account.id';\n/**\n * Cloud regions often have multiple, isolated locations known as zones to increase availability. Availability zone represents the zone where the resource is running.\n *\n * @example us-east-1c\n *\n * @note Availability zones are called \"zones\" on Alibaba Cloud and Google Cloud.\n *\n * @experimental This attribute is experimental and is subject to breaking changes in minor releases of `@opentelemetry/semantic-conventions`.\n */\nexports.ATTR_CLOUD_AVAILABILITY_ZONE = 'cloud.availability_zone';\n/**\n * Name of the cloud provider.\n *\n * @experimental This attribute is experimental and is subject to breaking changes in minor releases of `@opentelemetry/semantic-conventions`.\n */\nexports.ATTR_CLOUD_PROVIDER = 'cloud.provider';\n/**\n * The geographical region the resource is running.\n *\n * @example us-central1\n * @example us-east-1\n *\n * @note Refer to your provider's docs to see the available regions, for example [Alibaba Cloud regions](https://www.alibabacloud.com/help/doc-detail/40654.htm), [AWS regions](https://aws.amazon.com/about-aws/global-infrastructure/regions_az/), [Azure regions](https://azure.microsoft.com/global-infrastructure/geographies/), [Google Cloud regions](https://cloud.google.com/about/locations), or [Tencent Cloud regions](https://www.tencentcloud.com/document/product/213/6091).\n *\n * @experimental This attribute is experimental and is subject to breaking changes in minor releases of `@opentelemetry/semantic-conventions`.\n */\nexports.ATTR_CLOUD_REGION = 'cloud.region';\n/**\n * Container ID. Usually a UUID, as for example used to [identify Docker containers](https://docs.docker.com/engine/containers/run/#container-identification). The UUID might be abbreviated.\n *\n * @example a3bf90e006b2\n *\n * @experimental This attribute is experimental and is subject to breaking changes in minor releases of `@opentelemetry/semantic-conventions`.\n */\nexports.ATTR_CONTAINER_ID = 'container.id';\n/**\n * Name of the image the container was built on.\n *\n * @example gcr.io/opentelemetry/operator\n *\n * @experimental This attribute is experimental and is subject to breaking changes in minor releases of `@opentelemetry/semantic-conventions`.\n */\nexports.ATTR_CONTAINER_IMAGE_NAME = 'container.image.name';\n/**\n * Container image tags. An example can be found in [Docker Image Inspect](https://docs.docker.com/engine/api/v1.43/#tag/Image/operation/ImageInspect). Should be only the `<tag>` section of the full name for example from `registry.example.com/my-org/my-image:<tag>`.\n *\n * @example [\"v1.27.1\", \"3.5.7-0\"]\n *\n * @experimental This attribute is experimental and is subject to breaking changes in minor releases of `@opentelemetry/semantic-conventions`.\n */\nexports.ATTR_CONTAINER_IMAGE_TAGS = 'container.image.tags';\n/**\n * Container name used by container runtime.\n *\n * @example opentelemetry-autoconf\n *\n * @experimental This attribute is experimental and is subject to breaking changes in minor releases of `@opentelemetry/semantic-conventions`.\n */\nexports.ATTR_CONTAINER_NAME = 'container.name';\n/**\n * The CPU architecture the host system is running on.\n *\n * @experimental This attribute is experimental and is subject to breaking changes in minor releases of `@opentelemetry/semantic-conventions`.\n */\nexports.ATTR_HOST_ARCH = 'host.arch';\n/**\n * Unique host ID. For Cloud, this must be the instance_id assigned by the cloud provider. For non-containerized systems, this should be the `machine-id`. See the table below for the sources to use to determine the `machine-id` based on operating system.\n *\n * @example fdbf79e8af94cb7f9e8df36789187052\n *\n * @experimental This attribute is experimental and is subject to breaking changes in minor releases of `@opentelemetry/semantic-conventions`.\n */\nexports.ATTR_HOST_ID = 'host.id';\n/**\n * VM image ID or host OS image ID. For Cloud, this value is from the provider.\n *\n * @example ami-07b06b442921831e5\n *\n * @experimental This attribute is experimental and is subject to breaking changes in minor releases of `@opentelemetry/semantic-conventions`.\n */\nexports.ATTR_HOST_IMAGE_ID = 'host.image.id';\n/**\n * Name of the VM image or OS install the host was instantiated from.\n *\n * @example infra-ami-eks-worker-node-7d4ec78312\n * @example CentOS-8-x86_64-1905\n *\n * @experimental This attribute is experimental and is subject to breaking changes in minor releases of `@opentelemetry/semantic-conventions`.\n */\nexports.ATTR_HOST_IMAGE_NAME = 'host.image.name';\n/**\n * The version string of the VM image or host OS as defined in [Version Attributes](/docs/resource/README.md#version-attributes).\n *\n * @example 0.1\n *\n * @experimental This attribute is experimental and is subject to breaking changes in minor releases of `@opentelemetry/semantic-conventions`.\n */\nexports.ATTR_HOST_IMAGE_VERSION = 'host.image.version';\n/**\n * Name of the host. On Unix systems, it may contain what the hostname command returns, or the fully qualified hostname, or another name specified by the user.\n *\n * @example opentelemetry-test\n *\n * @experimental This attribute is experimental and is subject to breaking changes in minor releases of `@opentelemetry/semantic-conventions`.\n */\nexports.ATTR_HOST_NAME = 'host.name';\n/**\n * Type of host. For Cloud, this must be the machine type.\n *\n * @example n1-standard-1\n *\n * @experimental This attribute is experimental and is subject to breaking changes in minor releases of `@opentelemetry/semantic-conventions`.\n */\nexports.ATTR_HOST_TYPE = 'host.type';\n/**\n * The name of the cluster.\n *\n * @example opentelemetry-cluster\n *\n * @experimental This attribute is experimental and is subject to breaking changes in minor releases of `@opentelemetry/semantic-conventions`.\n */\nexports.ATTR_K8S_CLUSTER_NAME = 'k8s.cluster.name';\n/**\n * The name of the Deployment.\n *\n * @example opentelemetry\n *\n * @experimental This attribute is experimental and is subject to breaking changes in minor releases of `@opentelemetry/semantic-conventions`.\n */\nexports.ATTR_K8S_DEPLOYMENT_NAME = 'k8s.deployment.name';\n/**\n * The name of the namespace that the pod is running in.\n *\n * @example default\n *\n * @experimental This attribute is experimental and is subject to breaking changes in minor releases of `@opentelemetry/semantic-conventions`.\n */\nexports.ATTR_K8S_NAMESPACE_NAME = 'k8s.namespace.name';\n/**\n * The name of the Pod.\n *\n * @example opentelemetry-pod-autoconf\n *\n * @experimental This attribute is experimental and is subject to breaking changes in minor releases of `@opentelemetry/semantic-conventions`.\n */\nexports.ATTR_K8S_POD_NAME = 'k8s.pod.name';\n/**\n * The operating system type.\n *\n * @experimental This attribute is experimental and is subject to breaking changes in minor releases of `@opentelemetry/semantic-conventions`.\n */\nexports.ATTR_OS_TYPE = 'os.type';\n/**\n * The version string of the operating system as defined in [Version Attributes](/docs/resource/README.md#version-attributes).\n *\n * @example 14.2.1\n * @example 18.04.1\n *\n * @experimental This attribute is experimental and is subject to breaking changes in minor releases of `@opentelemetry/semantic-conventions`.\n */\nexports.ATTR_OS_VERSION = 'os.version';\n/**\n * The command used to launch the process (i.e. the command name). On Linux based systems, can be set to the zeroth string in `proc/[pid]/cmdline`. On Windows, can be set to the first parameter extracted from `GetCommandLineW`.\n *\n * @example cmd/otelcol\n *\n * @experimental This attribute is experimental and is subject to breaking changes in minor releases of `@opentelemetry/semantic-conventions`.\n */\nexports.ATTR_PROCESS_COMMAND = 'process.command';\n/**\n * All the command arguments (including the command/executable itself) as received by the process. On Linux-based systems (and some other Unixoid systems supporting procfs), can be set according to the list of null-delimited strings extracted from `proc/[pid]/cmdline`. For libc-based executables, this would be the full argv vector passed to `main`.\n *\n * @example [\"cmd/otecol\", \"--config=config.yaml\"]\n *\n * @experimental This attribute is experimental and is subject to breaking changes in minor releases of `@opentelemetry/semantic-conventions`.\n */\nexports.ATTR_PROCESS_COMMAND_ARGS = 'process.command_args';\n/**\n * The name of the process executable. On Linux based systems, this **SHOULD** be set to the base name of the target of `/proc/[pid]/exe`. On Windows, this **SHOULD** be set to the base name of `GetProcessImageFileNameW`.\n *\n * @example otelcol\n *\n * @experimental This attribute is experimental and is subject to breaking changes in minor releases of `@opentelemetry/semantic-conventions`.\n */\nexports.ATTR_PROCESS_EXECUTABLE_NAME = 'process.executable.name';\n/**\n * The full path to the process executable. On Linux based systems, can be set to the target of `proc/[pid]/exe`. On Windows, can be set to the result of `GetProcessImageFileNameW`.\n *\n * @example /usr/bin/cmd/otelcol\n *\n * @experimental This attribute is experimental and is subject to breaking changes in minor releases of `@opentelemetry/semantic-conventions`.\n */\nexports.ATTR_PROCESS_EXECUTABLE_PATH = 'process.executable.path';\n/**\n * The username of the user that owns the process.\n *\n * @example root\n *\n * @experimental This attribute is experimental and is subject to breaking changes in minor releases of `@opentelemetry/semantic-conventions`.\n */\nexports.ATTR_PROCESS_OWNER = 'process.owner';\n/**\n * Process identifier (PID).\n *\n * @example 1234\n *\n * @experimental This attribute is experimental and is subject to breaking changes in minor releases of `@opentelemetry/semantic-conventions`.\n */\nexports.ATTR_PROCESS_PID = 'process.pid';\n/**\n * An additional description about the runtime of the process, for example a specific vendor customization of the runtime environment.\n *\n * @example \"Eclipse OpenJ9 Eclipse OpenJ9 VM openj9-0.21.0\"\n *\n * @experimental This attribute is experimental and is subject to breaking changes in minor releases of `@opentelemetry/semantic-conventions`.\n */\nexports.ATTR_PROCESS_RUNTIME_DESCRIPTION = 'process.runtime.description';\n/**\n * The name of the runtime of this process.\n *\n * @example OpenJDK Runtime Environment\n *\n * @experimental This attribute is experimental and is subject to breaking changes in minor releases of `@opentelemetry/semantic-conventions`.\n */\nexports.ATTR_PROCESS_RUNTIME_NAME = 'process.runtime.name';\n/**\n * The version of the runtime of this process, as returned by the runtime without modification.\n *\n * @example \"14.0.2\"\n *\n * @experimental This attribute is experimental and is subject to breaking changes in minor releases of `@opentelemetry/semantic-conventions`.\n */\nexports.ATTR_PROCESS_RUNTIME_VERSION = 'process.runtime.version';\n/**\n * The string ID of the service instance.\n *\n * @example 627cc493-f310-47de-96bd-71410b7dec09\n *\n * @note **MUST** be unique for each instance of the same `service.namespace,service.name` pair (in other words\n * `service.namespace,service.name,service.instance.id` triplet **MUST** be globally unique). The ID helps to\n * distinguish instances of the same service that exist at the same time (e.g. instances of a horizontally scaled\n * service).\n *\n * Implementations, such as SDKs, are recommended to generate a random Version 1 or Version 4 [RFC\n * 4122](https://www.ietf.org/rfc/rfc4122.txt) UUID, but are free to use an inherent unique ID as the source of\n * this value if stability is desirable. In that case, the ID **SHOULD** be used as source of a UUID Version 5 and\n * **SHOULD** use the following UUID as the namespace: `4d63009a-8d0f-11ee-aad7-4c796ed8e320`.\n *\n * UUIDs are typically recommended, as only an opaque value for the purposes of identifying a service instance is\n * needed. Similar to what can be seen in the man page for the\n * [`/etc/machine-id`](https://www.freedesktop.org/software/systemd/man/latest/machine-id.html) file, the underlying\n * data, such as pod name and namespace should be treated as confidential, being the user's choice to expose it\n * or not via another resource attribute.\n *\n * For applications running behind an application server (like unicorn), we do not recommend using one identifier\n * for all processes participating in the application. Instead, it's recommended each division (e.g. a worker\n * thread in unicorn) to have its own instance.id.\n *\n * It's not recommended for a Collector to set `service.instance.id` if it can't unambiguously determine the\n * service instance that is generating that telemetry. For instance, creating an UUID based on `pod.name` will\n * likely be wrong, as the Collector might not know from which container within that pod the telemetry originated.\n * However, Collectors can set the `service.instance.id` if they can unambiguously determine the service instance\n * for that telemetry. This is typically the case for scraping receivers, as they know the target address and\n * port.\n *\n * @experimental This attribute is experimental and is subject to breaking changes in minor releases of `@opentelemetry/semantic-conventions`.\n */\nexports.ATTR_SERVICE_INSTANCE_ID = 'service.instance.id';\n/**\n * A namespace for `service.name`.\n *\n * @example Shop\n *\n * @note A string value having a meaning that helps to distinguish a group of services, for example the team name that owns a group of services. `service.name` is expected to be unique within the same namespace. If `service.namespace` is not specified in the Resource then `service.name` is expected to be unique for all services that have no explicit namespace defined (so the empty/unspecified namespace is simply one more valid namespace). Zero-length namespace string is assumed equal to unspecified namespace.\n *\n * @experimental This attribute is experimental and is subject to breaking changes in minor releases of `@opentelemetry/semantic-conventions`.\n */\nexports.ATTR_SERVICE_NAMESPACE = 'service.namespace';\n/**\n * Additional description of the web engine (e.g. detailed version and edition information).\n *\n * @example WildFly Full 21.0.0.Final (WildFly Core 13.0.1.Final) - 2.2.2.Final\n *\n * @experimental This attribute is experimental and is subject to breaking changes in minor releases of `@opentelemetry/semantic-conventions`.\n */\nexports.ATTR_WEBENGINE_DESCRIPTION = 'webengine.description';\n/**\n * The name of the web engine.\n *\n * @example WildFly\n *\n * @experimental This attribute is experimental and is subject to breaking changes in minor releases of `@opentelemetry/semantic-conventions`.\n */\nexports.ATTR_WEBENGINE_NAME = 'webengine.name';\n/**\n * The version of the web engine.\n *\n * @example 21.0.0\n *\n * @experimental This attribute is experimental and is subject to breaking changes in minor releases of `@opentelemetry/semantic-conventions`.\n */\nexports.ATTR_WEBENGINE_VERSION = 'webengine.version';\n//# sourceMappingURL=semconv.js.map",
|
|
11
|
+
"\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getMachineId = void 0;\n/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nconst process = require(\"process\");\nlet getMachineIdImpl;\nasync function getMachineId() {\n if (!getMachineIdImpl) {\n switch (process.platform) {\n case 'darwin':\n getMachineIdImpl = (await import('./getMachineId-darwin.js'))\n .getMachineId;\n break;\n case 'linux':\n getMachineIdImpl = (await import('./getMachineId-linux.js'))\n .getMachineId;\n break;\n case 'freebsd':\n getMachineIdImpl = (await import('./getMachineId-bsd.js')).getMachineId;\n break;\n case 'win32':\n getMachineIdImpl = (await import('./getMachineId-win.js')).getMachineId;\n break;\n default:\n getMachineIdImpl = (await import('./getMachineId-unsupported.js'))\n .getMachineId;\n break;\n }\n }\n return getMachineIdImpl();\n}\nexports.getMachineId = getMachineId;\n//# sourceMappingURL=getMachineId.js.map",
|
|
12
|
+
"\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.normalizeType = exports.normalizeArch = void 0;\n/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nconst normalizeArch = (nodeArchString) => {\n // Maps from https://nodejs.org/api/os.html#osarch to arch values in spec:\n // https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/resource/semantic_conventions/host.md\n switch (nodeArchString) {\n case 'arm':\n return 'arm32';\n case 'ppc':\n return 'ppc32';\n case 'x64':\n return 'amd64';\n default:\n return nodeArchString;\n }\n};\nexports.normalizeArch = normalizeArch;\nconst normalizeType = (nodePlatform) => {\n // Maps from https://nodejs.org/api/os.html#osplatform to arch values in spec:\n // https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/resource/semantic_conventions/os.md\n switch (nodePlatform) {\n case 'sunos':\n return 'solaris';\n case 'win32':\n return 'windows';\n default:\n return nodePlatform;\n }\n};\nexports.normalizeType = normalizeType;\n//# sourceMappingURL=utils.js.map",
|
|
13
|
+
"\"use strict\";\n/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.hostDetector = void 0;\nconst semconv_1 = require(\"../../../semconv\");\nconst os_1 = require(\"os\");\nconst getMachineId_1 = require(\"./machine-id/getMachineId\");\nconst utils_1 = require(\"./utils\");\n/**\n * HostDetector detects the resources related to the host current process is\n * running on. Currently only non-cloud-based attributes are included.\n */\nclass HostDetector {\n detect(_config) {\n const attributes = {\n [semconv_1.ATTR_HOST_NAME]: (0, os_1.hostname)(),\n [semconv_1.ATTR_HOST_ARCH]: (0, utils_1.normalizeArch)((0, os_1.arch)()),\n [semconv_1.ATTR_HOST_ID]: (0, getMachineId_1.getMachineId)(),\n };\n return { attributes };\n }\n}\nexports.hostDetector = new HostDetector();\n//# sourceMappingURL=HostDetector.js.map",
|
|
14
|
+
"\"use strict\";\n/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.osDetector = void 0;\nconst semconv_1 = require(\"../../../semconv\");\nconst os_1 = require(\"os\");\nconst utils_1 = require(\"./utils\");\n/**\n * OSDetector detects the resources related to the operating system (OS) on\n * which the process represented by this resource is running.\n */\nclass OSDetector {\n detect(_config) {\n const attributes = {\n [semconv_1.ATTR_OS_TYPE]: (0, utils_1.normalizeType)((0, os_1.platform)()),\n [semconv_1.ATTR_OS_VERSION]: (0, os_1.release)(),\n };\n return { attributes };\n }\n}\nexports.osDetector = new OSDetector();\n//# sourceMappingURL=OSDetector.js.map",
|
|
15
|
+
"\"use strict\";\n/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.processDetector = void 0;\nconst api_1 = require(\"@opentelemetry/api\");\nconst semconv_1 = require(\"../../../semconv\");\nconst os = require(\"os\");\n/**\n * ProcessDetector will be used to detect the resources related current process running\n * and being instrumented from the NodeJS Process module.\n */\nclass ProcessDetector {\n detect(_config) {\n const attributes = {\n [semconv_1.ATTR_PROCESS_PID]: process.pid,\n [semconv_1.ATTR_PROCESS_EXECUTABLE_NAME]: process.title,\n [semconv_1.ATTR_PROCESS_EXECUTABLE_PATH]: process.execPath,\n [semconv_1.ATTR_PROCESS_COMMAND_ARGS]: [\n process.argv[0],\n ...process.execArgv,\n ...process.argv.slice(1),\n ],\n [semconv_1.ATTR_PROCESS_RUNTIME_VERSION]: process.versions.node,\n [semconv_1.ATTR_PROCESS_RUNTIME_NAME]: 'nodejs',\n [semconv_1.ATTR_PROCESS_RUNTIME_DESCRIPTION]: 'Node.js',\n };\n if (process.argv.length > 1) {\n attributes[semconv_1.ATTR_PROCESS_COMMAND] = process.argv[1];\n }\n try {\n const userInfo = os.userInfo();\n attributes[semconv_1.ATTR_PROCESS_OWNER] = userInfo.username;\n }\n catch (e) {\n api_1.diag.debug(`error obtaining process owner: ${e}`);\n }\n return { attributes };\n }\n}\nexports.processDetector = new ProcessDetector();\n//# sourceMappingURL=ProcessDetector.js.map",
|
|
16
|
+
"\"use strict\";\n/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.serviceInstanceIdDetector = void 0;\nconst semconv_1 = require(\"../../../semconv\");\nconst crypto_1 = require(\"crypto\");\n/**\n * ServiceInstanceIdDetector detects the resources related to the service instance ID.\n */\nclass ServiceInstanceIdDetector {\n detect(_config) {\n return {\n attributes: {\n [semconv_1.ATTR_SERVICE_INSTANCE_ID]: (0, crypto_1.randomUUID)(),\n },\n };\n }\n}\n/**\n * @experimental\n */\nexports.serviceInstanceIdDetector = new ServiceInstanceIdDetector();\n//# sourceMappingURL=ServiceInstanceIdDetector.js.map",
|
|
17
|
+
"\"use strict\";\n/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.serviceInstanceIdDetector = exports.processDetector = exports.osDetector = exports.hostDetector = void 0;\nvar HostDetector_1 = require(\"./HostDetector\");\nObject.defineProperty(exports, \"hostDetector\", { enumerable: true, get: function () { return HostDetector_1.hostDetector; } });\nvar OSDetector_1 = require(\"./OSDetector\");\nObject.defineProperty(exports, \"osDetector\", { enumerable: true, get: function () { return OSDetector_1.osDetector; } });\nvar ProcessDetector_1 = require(\"./ProcessDetector\");\nObject.defineProperty(exports, \"processDetector\", { enumerable: true, get: function () { return ProcessDetector_1.processDetector; } });\nvar ServiceInstanceIdDetector_1 = require(\"./ServiceInstanceIdDetector\");\nObject.defineProperty(exports, \"serviceInstanceIdDetector\", { enumerable: true, get: function () { return ServiceInstanceIdDetector_1.serviceInstanceIdDetector; } });\n//# sourceMappingURL=index.js.map",
|
|
18
|
+
"\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.serviceInstanceIdDetector = exports.processDetector = exports.osDetector = exports.hostDetector = void 0;\n/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nvar node_1 = require(\"./node\");\nObject.defineProperty(exports, \"hostDetector\", { enumerable: true, get: function () { return node_1.hostDetector; } });\nObject.defineProperty(exports, \"osDetector\", { enumerable: true, get: function () { return node_1.osDetector; } });\nObject.defineProperty(exports, \"processDetector\", { enumerable: true, get: function () { return node_1.processDetector; } });\nObject.defineProperty(exports, \"serviceInstanceIdDetector\", { enumerable: true, get: function () { return node_1.serviceInstanceIdDetector; } });\n//# sourceMappingURL=index.js.map",
|
|
19
|
+
"\"use strict\";\n/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.noopDetector = exports.NoopDetector = void 0;\nclass NoopDetector {\n detect() {\n return {\n attributes: {},\n };\n }\n}\nexports.NoopDetector = NoopDetector;\nexports.noopDetector = new NoopDetector();\n//# sourceMappingURL=NoopDetector.js.map",
|
|
20
|
+
"\"use strict\";\n/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.noopDetector = exports.serviceInstanceIdDetector = exports.processDetector = exports.osDetector = exports.hostDetector = exports.envDetector = void 0;\nvar EnvDetector_1 = require(\"./EnvDetector\");\nObject.defineProperty(exports, \"envDetector\", { enumerable: true, get: function () { return EnvDetector_1.envDetector; } });\nvar platform_1 = require(\"./platform\");\nObject.defineProperty(exports, \"hostDetector\", { enumerable: true, get: function () { return platform_1.hostDetector; } });\nObject.defineProperty(exports, \"osDetector\", { enumerable: true, get: function () { return platform_1.osDetector; } });\nObject.defineProperty(exports, \"processDetector\", { enumerable: true, get: function () { return platform_1.processDetector; } });\nObject.defineProperty(exports, \"serviceInstanceIdDetector\", { enumerable: true, get: function () { return platform_1.serviceInstanceIdDetector; } });\nvar NoopDetector_1 = require(\"./NoopDetector\");\nObject.defineProperty(exports, \"noopDetector\", { enumerable: true, get: function () { return NoopDetector_1.noopDetector; } });\n//# sourceMappingURL=index.js.map",
|
|
21
|
+
"\"use strict\";\n/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.defaultServiceName = exports.emptyResource = exports.defaultResource = exports.resourceFromAttributes = exports.serviceInstanceIdDetector = exports.processDetector = exports.osDetector = exports.hostDetector = exports.envDetector = exports.detectResources = void 0;\nvar detect_resources_1 = require(\"./detect-resources\");\nObject.defineProperty(exports, \"detectResources\", { enumerable: true, get: function () { return detect_resources_1.detectResources; } });\nvar detectors_1 = require(\"./detectors\");\nObject.defineProperty(exports, \"envDetector\", { enumerable: true, get: function () { return detectors_1.envDetector; } });\nObject.defineProperty(exports, \"hostDetector\", { enumerable: true, get: function () { return detectors_1.hostDetector; } });\nObject.defineProperty(exports, \"osDetector\", { enumerable: true, get: function () { return detectors_1.osDetector; } });\nObject.defineProperty(exports, \"processDetector\", { enumerable: true, get: function () { return detectors_1.processDetector; } });\nObject.defineProperty(exports, \"serviceInstanceIdDetector\", { enumerable: true, get: function () { return detectors_1.serviceInstanceIdDetector; } });\nvar ResourceImpl_1 = require(\"./ResourceImpl\");\nObject.defineProperty(exports, \"resourceFromAttributes\", { enumerable: true, get: function () { return ResourceImpl_1.resourceFromAttributes; } });\nObject.defineProperty(exports, \"defaultResource\", { enumerable: true, get: function () { return ResourceImpl_1.defaultResource; } });\nObject.defineProperty(exports, \"emptyResource\", { enumerable: true, get: function () { return ResourceImpl_1.emptyResource; } });\nvar default_service_name_1 = require(\"./default-service-name\");\nObject.defineProperty(exports, \"defaultServiceName\", { enumerable: true, get: function () { return default_service_name_1.defaultServiceName; } });\n//# sourceMappingURL=index.js.map",
|
|
22
|
+
"\"use strict\";\n/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ExceptionEventName = void 0;\n// Event name definitions\nexports.ExceptionEventName = 'exception';\n//# sourceMappingURL=enums.js.map",
|
|
23
|
+
"\"use strict\";\n/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.SpanImpl = void 0;\nconst api_1 = require(\"@opentelemetry/api\");\nconst core_1 = require(\"@opentelemetry/core\");\nconst semantic_conventions_1 = require(\"@opentelemetry/semantic-conventions\");\nconst enums_1 = require(\"./enums\");\n/**\n * This class represents a span.\n */\nclass SpanImpl {\n // Below properties are included to implement ReadableSpan for export\n // purposes but are not intended to be written-to directly.\n _spanContext;\n kind;\n parentSpanContext;\n attributes = {};\n links = [];\n events = [];\n startTime;\n resource;\n instrumentationScope;\n _droppedAttributesCount = 0;\n _droppedEventsCount = 0;\n _droppedLinksCount = 0;\n _attributesCount = 0;\n name;\n status = {\n code: api_1.SpanStatusCode.UNSET,\n };\n endTime = [0, 0];\n _ended = false;\n _duration = [-1, -1];\n _spanProcessor;\n _spanLimits;\n _attributeValueLengthLimit;\n _recordEndMetrics;\n _performanceStartTime;\n _performanceOffset;\n _startTimeProvided;\n /**\n * Constructs a new SpanImpl instance.\n */\n constructor(opts) {\n const now = Date.now();\n this._spanContext = opts.spanContext;\n this._performanceStartTime = core_1.otperformance.now();\n this._performanceOffset =\n now - (this._performanceStartTime + core_1.otperformance.timeOrigin);\n this._startTimeProvided = opts.startTime != null;\n this._spanLimits = opts.spanLimits;\n this._attributeValueLengthLimit =\n this._spanLimits.attributeValueLengthLimit ?? 0;\n this._spanProcessor = opts.spanProcessor;\n this.name = opts.name;\n this.parentSpanContext = opts.parentSpanContext;\n this.kind = opts.kind;\n if (opts.links) {\n for (const link of opts.links) {\n this.addLink(link);\n }\n }\n this.startTime = this._getTime(opts.startTime ?? now);\n this.resource = opts.resource;\n this.instrumentationScope = opts.scope;\n this._recordEndMetrics = opts.recordEndMetrics;\n if (opts.attributes != null) {\n this.setAttributes(opts.attributes);\n }\n this._spanProcessor.onStart(this, opts.context);\n }\n spanContext() {\n return this._spanContext;\n }\n setAttribute(key, value) {\n if (value == null || this._isSpanEnded())\n return this;\n if (key.length === 0) {\n api_1.diag.warn(`Invalid attribute key: ${key}`);\n return this;\n }\n if (!(0, core_1.isAttributeValue)(value)) {\n api_1.diag.warn(`Invalid attribute value set for key: ${key}`);\n return this;\n }\n const { attributeCountLimit } = this._spanLimits;\n const isNewKey = !Object.prototype.hasOwnProperty.call(this.attributes, key);\n if (attributeCountLimit !== undefined &&\n this._attributesCount >= attributeCountLimit &&\n isNewKey) {\n this._droppedAttributesCount++;\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 key in attributes) {\n if (Object.prototype.hasOwnProperty.call(attributes, key)) {\n this.setAttribute(key, attributes[key]);\n }\n }\n return this;\n }\n /**\n *\n * @param name Span Name\n * @param [attributesOrStartTime] Span attributes or start time\n * if type is {@type TimeInput} and 3rd param is undefined\n * @param [timeStamp] Specified time stamp for the event\n */\n addEvent(name, attributesOrStartTime, timeStamp) {\n if (this._isSpanEnded())\n return this;\n const { eventCountLimit } = this._spanLimits;\n if (eventCountLimit === 0) {\n api_1.diag.warn('No events allowed.');\n this._droppedEventsCount++;\n return this;\n }\n if (eventCountLimit !== undefined &&\n this.events.length >= eventCountLimit) {\n if (this._droppedEventsCount === 0) {\n api_1.diag.debug('Dropping extra events.');\n }\n this.events.shift();\n this._droppedEventsCount++;\n }\n if ((0, core_1.isTimeInput)(attributesOrStartTime)) {\n if (!(0, core_1.isTimeInput)(timeStamp)) {\n timeStamp = attributesOrStartTime;\n }\n attributesOrStartTime = undefined;\n }\n const sanitized = (0, core_1.sanitizeAttributes)(attributesOrStartTime);\n const { attributePerEventCountLimit } = this._spanLimits;\n const attributes = {};\n let droppedAttributesCount = 0;\n let eventAttributesCount = 0;\n for (const attr in sanitized) {\n if (!Object.prototype.hasOwnProperty.call(sanitized, attr)) {\n continue;\n }\n const attrVal = sanitized[attr];\n if (attributePerEventCountLimit !== undefined &&\n eventAttributesCount >= attributePerEventCountLimit) {\n droppedAttributesCount++;\n continue;\n }\n attributes[attr] = this._truncateToSize(attrVal);\n eventAttributesCount++;\n }\n this.events.push({\n name,\n attributes,\n time: this._getTime(timeStamp),\n droppedAttributesCount,\n });\n return this;\n }\n addLink(link) {\n if (this._isSpanEnded())\n return this;\n const { linkCountLimit } = this._spanLimits;\n if (linkCountLimit === 0) {\n this._droppedLinksCount++;\n return this;\n }\n if (linkCountLimit !== undefined && this.links.length >= linkCountLimit) {\n if (this._droppedLinksCount === 0) {\n api_1.diag.debug('Dropping extra links.');\n }\n this.links.shift();\n this._droppedLinksCount++;\n }\n const { attributePerLinkCountLimit } = this._spanLimits;\n const sanitized = (0, core_1.sanitizeAttributes)(link.attributes);\n const attributes = {};\n let droppedAttributesCount = 0;\n let linkAttributesCount = 0;\n for (const attr in sanitized) {\n if (!Object.prototype.hasOwnProperty.call(sanitized, attr)) {\n continue;\n }\n const attrVal = sanitized[attr];\n if (attributePerLinkCountLimit !== undefined &&\n linkAttributesCount >= attributePerLinkCountLimit) {\n droppedAttributesCount++;\n continue;\n }\n attributes[attr] = this._truncateToSize(attrVal);\n linkAttributesCount++;\n }\n const processedLink = { context: link.context };\n if (linkAttributesCount > 0) {\n processedLink.attributes = attributes;\n }\n if (droppedAttributesCount > 0) {\n processedLink.droppedAttributesCount = droppedAttributesCount;\n }\n this.links.push(processedLink);\n return this;\n }\n addLinks(links) {\n for (const link of links) {\n this.addLink(link);\n }\n return this;\n }\n setStatus(status) {\n if (this._isSpanEnded())\n return this;\n if (status.code === api_1.SpanStatusCode.UNSET)\n return this;\n if (this.status.code === api_1.SpanStatusCode.OK)\n return this;\n const newStatus = { code: status.code };\n // When using try-catch, the caught \"error\" is of type `any`. When then assigning `any` to `status.message`,\n // TypeScript will not error. While this can happen during use of any API, it is more common on Span#setStatus()\n // as it's likely used in a catch-block. Therefore, we validate if `status.message` is actually a string, null, or\n // undefined to avoid an incorrect type causing issues downstream.\n if (status.code === api_1.SpanStatusCode.ERROR) {\n if (typeof status.message === 'string') {\n newStatus.message = status.message;\n }\n else if (status.message != null) {\n api_1.diag.warn(`Dropping invalid status.message of type '${typeof status.message}', expected 'string'`);\n }\n }\n this.status = newStatus;\n return this;\n }\n updateName(name) {\n if (this._isSpanEnded())\n return this;\n this.name = name;\n return this;\n }\n end(endTime) {\n if (this._isSpanEnded()) {\n api_1.diag.error(`${this.name} ${this._spanContext.traceId}-${this._spanContext.spanId} - You can only call end() on a span once.`);\n return;\n }\n this.endTime = this._getTime(endTime);\n this._duration = (0, core_1.hrTimeDuration)(this.startTime, this.endTime);\n if (this._duration[0] < 0) {\n api_1.diag.warn('Inconsistent start and end time, startTime > endTime. Setting span duration to 0ms.', this.startTime, this.endTime);\n this.endTime = this.startTime.slice();\n this._duration = [0, 0];\n }\n if (this._droppedEventsCount > 0) {\n api_1.diag.warn(`Dropped ${this._droppedEventsCount} events because eventCountLimit reached`);\n }\n if (this._droppedLinksCount > 0) {\n api_1.diag.warn(`Dropped ${this._droppedLinksCount} links because linkCountLimit reached`);\n }\n if (this._spanProcessor.onEnding) {\n this._spanProcessor.onEnding(this);\n }\n this._recordEndMetrics?.();\n this._ended = true;\n this._spanProcessor.onEnd(this);\n }\n _getTime(inp) {\n if (typeof inp === 'number' && inp <= core_1.otperformance.now()) {\n // must be a performance timestamp\n // apply correction and convert to hrtime\n return (0, core_1.hrTime)(inp + this._performanceOffset);\n }\n if (typeof inp === 'number') {\n return (0, core_1.millisToHrTime)(inp);\n }\n if (inp instanceof Date) {\n return (0, core_1.millisToHrTime)(inp.getTime());\n }\n if ((0, core_1.isTimeInputHrTime)(inp)) {\n return inp;\n }\n if (this._startTimeProvided) {\n // if user provided a time for the start manually\n // we can't use duration to calculate event/end times\n return (0, core_1.millisToHrTime)(Date.now());\n }\n const msDuration = core_1.otperformance.now() - this._performanceStartTime;\n return (0, core_1.addHrTimes)(this.startTime, (0, core_1.millisToHrTime)(msDuration));\n }\n isRecording() {\n return this._ended === false;\n }\n recordException(exception, time) {\n const attributes = {};\n if (typeof exception === 'string') {\n attributes[semantic_conventions_1.ATTR_EXCEPTION_MESSAGE] = exception;\n }\n else if (exception) {\n if (exception.code) {\n attributes[semantic_conventions_1.ATTR_EXCEPTION_TYPE] = exception.code.toString();\n }\n else if (exception.name) {\n attributes[semantic_conventions_1.ATTR_EXCEPTION_TYPE] = exception.name;\n }\n if (exception.message) {\n attributes[semantic_conventions_1.ATTR_EXCEPTION_MESSAGE] = exception.message;\n }\n if (exception.stack) {\n attributes[semantic_conventions_1.ATTR_EXCEPTION_STACKTRACE] = exception.stack;\n }\n }\n // these are minimum requirements from spec\n if (attributes[semantic_conventions_1.ATTR_EXCEPTION_TYPE] || attributes[semantic_conventions_1.ATTR_EXCEPTION_MESSAGE]) {\n this.addEvent(enums_1.ExceptionEventName, attributes, time);\n }\n else {\n api_1.diag.warn(`Failed to record an exception ${exception}`);\n }\n }\n get duration() {\n return this._duration;\n }\n get ended() {\n return this._ended;\n }\n get droppedAttributesCount() {\n return this._droppedAttributesCount;\n }\n get droppedEventsCount() {\n return this._droppedEventsCount;\n }\n get droppedLinksCount() {\n return this._droppedLinksCount;\n }\n _isSpanEnded() {\n if (this._ended) {\n const error = new Error(`Operation attempted on ended Span {traceId: ${this._spanContext.traceId}, spanId: ${this._spanContext.spanId}}`);\n api_1.diag.warn(`Cannot execute the operation on ended Span {traceId: ${this._spanContext.traceId}, spanId: ${this._spanContext.spanId}}`, error);\n }\n return this._ended;\n }\n // Utility function to truncate given value within size\n // for value type of string, will truncate to given limit\n // for type of non-string, will return same value\n _truncateToLimitUtil(value, limit) {\n if (value.length <= limit) {\n return value;\n }\n return value.substring(0, limit);\n }\n /**\n * If the given attribute value is of type string and has more characters than given {@code attributeValueLengthLimit} then\n * return string with truncated to {@code attributeValueLengthLimit} characters\n *\n * If the given attribute value is array of strings then\n * return new array of strings with each element truncated to {@code attributeValueLengthLimit} characters\n *\n * Otherwise return same Attribute {@code value}\n *\n * @param value Attribute value\n * @returns truncated attribute value if required, otherwise same value\n */\n _truncateToSize(value) {\n const limit = this._attributeValueLengthLimit;\n // Check limit\n if (limit <= 0) {\n // Negative values are invalid, so do not truncate\n api_1.diag.warn(`Attribute value limit must be positive, got ${limit}`);\n return value;\n }\n // String\n if (typeof value === 'string') {\n return this._truncateToLimitUtil(value, limit);\n }\n // Array of strings\n if (Array.isArray(value)) {\n return value.map(val => typeof val === 'string' ? this._truncateToLimitUtil(val, limit) : val);\n }\n // Other types, no need to apply value length limit\n return value;\n }\n}\nexports.SpanImpl = SpanImpl;\n//# sourceMappingURL=Span.js.map",
|
|
24
|
+
"\"use strict\";\n/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.SamplingDecision = void 0;\n/**\n * A sampling decision that determines how a {@link Span} will be recorded\n * and collected.\n */\nvar SamplingDecision;\n(function (SamplingDecision) {\n /**\n * `Span.isRecording() === false`, span will not be recorded and all events\n * and attributes will be dropped.\n */\n SamplingDecision[SamplingDecision[\"NOT_RECORD\"] = 0] = \"NOT_RECORD\";\n /**\n * `Span.isRecording() === true`, but `Sampled` flag in {@link TraceFlags}\n * MUST NOT be set.\n */\n SamplingDecision[SamplingDecision[\"RECORD\"] = 1] = \"RECORD\";\n /**\n * `Span.isRecording() === true` AND `Sampled` flag in {@link TraceFlags}\n * MUST be set.\n */\n SamplingDecision[SamplingDecision[\"RECORD_AND_SAMPLED\"] = 2] = \"RECORD_AND_SAMPLED\";\n})(SamplingDecision = exports.SamplingDecision || (exports.SamplingDecision = {}));\n//# sourceMappingURL=Sampler.js.map",
|
|
25
|
+
"\"use strict\";\n/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.AlwaysOffSampler = void 0;\nconst Sampler_1 = require(\"../Sampler\");\n/** Sampler that samples no traces. */\nclass AlwaysOffSampler {\n shouldSample() {\n return {\n decision: Sampler_1.SamplingDecision.NOT_RECORD,\n };\n }\n toString() {\n return 'AlwaysOffSampler';\n }\n}\nexports.AlwaysOffSampler = AlwaysOffSampler;\n//# sourceMappingURL=AlwaysOffSampler.js.map",
|
|
26
|
+
"\"use strict\";\n/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.AlwaysOnSampler = void 0;\nconst Sampler_1 = require(\"../Sampler\");\n/** Sampler that samples all traces. */\nclass AlwaysOnSampler {\n shouldSample() {\n return {\n decision: Sampler_1.SamplingDecision.RECORD_AND_SAMPLED,\n };\n }\n toString() {\n return 'AlwaysOnSampler';\n }\n}\nexports.AlwaysOnSampler = AlwaysOnSampler;\n//# sourceMappingURL=AlwaysOnSampler.js.map",
|
|
27
|
+
"\"use strict\";\n/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ParentBasedSampler = void 0;\nconst api_1 = require(\"@opentelemetry/api\");\nconst core_1 = require(\"@opentelemetry/core\");\nconst AlwaysOffSampler_1 = require(\"./AlwaysOffSampler\");\nconst AlwaysOnSampler_1 = require(\"./AlwaysOnSampler\");\n/**\n * A composite sampler that either respects the parent span's sampling decision\n * or delegates to `delegateSampler` for root spans.\n */\nclass ParentBasedSampler {\n _root;\n _remoteParentSampled;\n _remoteParentNotSampled;\n _localParentSampled;\n _localParentNotSampled;\n constructor(config) {\n this._root = config.root;\n if (!this._root) {\n (0, core_1.globalErrorHandler)(new Error('ParentBasedSampler must have a root sampler configured'));\n this._root = new AlwaysOnSampler_1.AlwaysOnSampler();\n }\n this._remoteParentSampled =\n config.remoteParentSampled ?? new AlwaysOnSampler_1.AlwaysOnSampler();\n this._remoteParentNotSampled =\n config.remoteParentNotSampled ?? new AlwaysOffSampler_1.AlwaysOffSampler();\n this._localParentSampled =\n config.localParentSampled ?? new AlwaysOnSampler_1.AlwaysOnSampler();\n this._localParentNotSampled =\n config.localParentNotSampled ?? new AlwaysOffSampler_1.AlwaysOffSampler();\n }\n shouldSample(context, traceId, spanName, spanKind, attributes, links) {\n const parentContext = api_1.trace.getSpanContext(context);\n if (!parentContext || !(0, api_1.isSpanContextValid)(parentContext)) {\n return this._root.shouldSample(context, traceId, spanName, spanKind, attributes, links);\n }\n if (parentContext.isRemote) {\n if (parentContext.traceFlags & api_1.TraceFlags.SAMPLED) {\n return this._remoteParentSampled.shouldSample(context, traceId, spanName, spanKind, attributes, links);\n }\n return this._remoteParentNotSampled.shouldSample(context, traceId, spanName, spanKind, attributes, links);\n }\n if (parentContext.traceFlags & api_1.TraceFlags.SAMPLED) {\n return this._localParentSampled.shouldSample(context, traceId, spanName, spanKind, attributes, links);\n }\n return this._localParentNotSampled.shouldSample(context, traceId, spanName, spanKind, attributes, links);\n }\n toString() {\n return `ParentBased{root=${this._root.toString()}, remoteParentSampled=${this._remoteParentSampled.toString()}, remoteParentNotSampled=${this._remoteParentNotSampled.toString()}, localParentSampled=${this._localParentSampled.toString()}, localParentNotSampled=${this._localParentNotSampled.toString()}}`;\n }\n}\nexports.ParentBasedSampler = ParentBasedSampler;\n//# sourceMappingURL=ParentBasedSampler.js.map",
|
|
28
|
+
"\"use strict\";\n/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.TraceIdRatioBasedSampler = void 0;\nconst api_1 = require(\"@opentelemetry/api\");\nconst Sampler_1 = require(\"../Sampler\");\n/** Sampler that samples a given fraction of traces based of trace id deterministically. */\nclass TraceIdRatioBasedSampler {\n _ratio;\n _upperBound;\n constructor(ratio = 0) {\n this._ratio = this._normalize(ratio);\n this._upperBound = Math.floor(this._ratio * 0xffffffff);\n }\n shouldSample(context, traceId) {\n return {\n decision: (0, api_1.isValidTraceId)(traceId) && this._accumulate(traceId) < this._upperBound\n ? Sampler_1.SamplingDecision.RECORD_AND_SAMPLED\n : Sampler_1.SamplingDecision.NOT_RECORD,\n };\n }\n toString() {\n return `TraceIdRatioBased{${this._ratio}}`;\n }\n _normalize(ratio) {\n if (typeof ratio !== 'number' || isNaN(ratio))\n return 0;\n return ratio >= 1 ? 1 : ratio <= 0 ? 0 : ratio;\n }\n _accumulate(traceId) {\n let accumulation = 0;\n for (let i = 0; i < traceId.length / 8; i++) {\n const pos = i * 8;\n const part = parseInt(traceId.slice(pos, pos + 8), 16);\n accumulation = (accumulation ^ part) >>> 0;\n }\n return accumulation;\n }\n}\nexports.TraceIdRatioBasedSampler = TraceIdRatioBasedSampler;\n//# sourceMappingURL=TraceIdRatioBasedSampler.js.map",
|
|
29
|
+
"\"use strict\";\n/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.buildSamplerFromEnv = exports.loadDefaultConfig = void 0;\nconst api_1 = require(\"@opentelemetry/api\");\nconst core_1 = require(\"@opentelemetry/core\");\nconst AlwaysOffSampler_1 = require(\"./sampler/AlwaysOffSampler\");\nconst AlwaysOnSampler_1 = require(\"./sampler/AlwaysOnSampler\");\nconst ParentBasedSampler_1 = require(\"./sampler/ParentBasedSampler\");\nconst TraceIdRatioBasedSampler_1 = require(\"./sampler/TraceIdRatioBasedSampler\");\nvar TracesSamplerValues;\n(function (TracesSamplerValues) {\n TracesSamplerValues[\"AlwaysOff\"] = \"always_off\";\n TracesSamplerValues[\"AlwaysOn\"] = \"always_on\";\n TracesSamplerValues[\"ParentBasedAlwaysOff\"] = \"parentbased_always_off\";\n TracesSamplerValues[\"ParentBasedAlwaysOn\"] = \"parentbased_always_on\";\n TracesSamplerValues[\"ParentBasedTraceIdRatio\"] = \"parentbased_traceidratio\";\n TracesSamplerValues[\"TraceIdRatio\"] = \"traceidratio\";\n})(TracesSamplerValues || (TracesSamplerValues = {}));\nconst DEFAULT_RATIO = 1;\n/**\n * Load default configuration. For fields with primitive values, any user-provided\n * value will override the corresponding default value. For fields with\n * non-primitive values (like `spanLimits`), the user-provided value will be\n * used to extend the default value.\n */\n// object needs to be wrapped in this function and called when needed otherwise\n// envs are parsed before tests are ran - causes tests using these envs to fail\nfunction loadDefaultConfig() {\n return {\n sampler: buildSamplerFromEnv(),\n forceFlushTimeoutMillis: 30000,\n generalLimits: {\n attributeValueLengthLimit: (0, core_1.getNumberFromEnv)('OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT') ?? Infinity,\n attributeCountLimit: (0, core_1.getNumberFromEnv)('OTEL_ATTRIBUTE_COUNT_LIMIT') ?? 128,\n },\n spanLimits: {\n attributeValueLengthLimit: (0, core_1.getNumberFromEnv)('OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT') ?? Infinity,\n attributeCountLimit: (0, core_1.getNumberFromEnv)('OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT') ?? 128,\n linkCountLimit: (0, core_1.getNumberFromEnv)('OTEL_SPAN_LINK_COUNT_LIMIT') ?? 128,\n eventCountLimit: (0, core_1.getNumberFromEnv)('OTEL_SPAN_EVENT_COUNT_LIMIT') ?? 128,\n attributePerEventCountLimit: (0, core_1.getNumberFromEnv)('OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT') ?? 128,\n attributePerLinkCountLimit: (0, core_1.getNumberFromEnv)('OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT') ?? 128,\n },\n };\n}\nexports.loadDefaultConfig = loadDefaultConfig;\n/**\n * Based on environment, builds a sampler, complies with specification.\n */\nfunction buildSamplerFromEnv() {\n const sampler = (0, core_1.getStringFromEnv)('OTEL_TRACES_SAMPLER') ??\n TracesSamplerValues.ParentBasedAlwaysOn;\n switch (sampler) {\n case TracesSamplerValues.AlwaysOn:\n return new AlwaysOnSampler_1.AlwaysOnSampler();\n case TracesSamplerValues.AlwaysOff:\n return new AlwaysOffSampler_1.AlwaysOffSampler();\n case TracesSamplerValues.ParentBasedAlwaysOn:\n return new ParentBasedSampler_1.ParentBasedSampler({\n root: new AlwaysOnSampler_1.AlwaysOnSampler(),\n });\n case TracesSamplerValues.ParentBasedAlwaysOff:\n return new ParentBasedSampler_1.ParentBasedSampler({\n root: new AlwaysOffSampler_1.AlwaysOffSampler(),\n });\n case TracesSamplerValues.TraceIdRatio:\n return new TraceIdRatioBasedSampler_1.TraceIdRatioBasedSampler(getSamplerProbabilityFromEnv());\n case TracesSamplerValues.ParentBasedTraceIdRatio:\n return new ParentBasedSampler_1.ParentBasedSampler({\n root: new TraceIdRatioBasedSampler_1.TraceIdRatioBasedSampler(getSamplerProbabilityFromEnv()),\n });\n default:\n api_1.diag.error(`OTEL_TRACES_SAMPLER value \"${sampler}\" invalid, defaulting to \"${TracesSamplerValues.ParentBasedAlwaysOn}\".`);\n return new ParentBasedSampler_1.ParentBasedSampler({\n root: new AlwaysOnSampler_1.AlwaysOnSampler(),\n });\n }\n}\nexports.buildSamplerFromEnv = buildSamplerFromEnv;\nfunction getSamplerProbabilityFromEnv() {\n const probability = (0, core_1.getNumberFromEnv)('OTEL_TRACES_SAMPLER_ARG');\n if (probability == null) {\n api_1.diag.error(`OTEL_TRACES_SAMPLER_ARG is blank, defaulting to ${DEFAULT_RATIO}.`);\n return DEFAULT_RATIO;\n }\n if (probability < 0 || probability > 1) {\n api_1.diag.error(`OTEL_TRACES_SAMPLER_ARG=${probability} was given, but it is out of range ([0..1]), defaulting to ${DEFAULT_RATIO}.`);\n return DEFAULT_RATIO;\n }\n return probability;\n}\n//# sourceMappingURL=config.js.map",
|
|
30
|
+
"\"use strict\";\n/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.reconfigureLimits = exports.mergeConfig = exports.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT = exports.DEFAULT_ATTRIBUTE_COUNT_LIMIT = void 0;\nconst config_1 = require(\"./config\");\nconst core_1 = require(\"@opentelemetry/core\");\nexports.DEFAULT_ATTRIBUTE_COUNT_LIMIT = 128;\nexports.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT = Infinity;\n/**\n * Function to merge Default configuration (as specified in './config') with\n * user provided configurations.\n */\nfunction mergeConfig(userConfig) {\n const perInstanceDefaults = {\n sampler: (0, config_1.buildSamplerFromEnv)(),\n };\n const DEFAULT_CONFIG = (0, config_1.loadDefaultConfig)();\n const target = Object.assign({}, DEFAULT_CONFIG, perInstanceDefaults, userConfig);\n target.generalLimits = Object.assign({}, DEFAULT_CONFIG.generalLimits, userConfig.generalLimits || {});\n target.spanLimits = Object.assign({}, DEFAULT_CONFIG.spanLimits, userConfig.spanLimits || {});\n return target;\n}\nexports.mergeConfig = mergeConfig;\n/**\n * When general limits are provided and model specific limits are not,\n * configures the model specific limits by using the values from the general ones.\n * @param userConfig User provided tracer configuration\n */\nfunction reconfigureLimits(userConfig) {\n const spanLimits = Object.assign({}, userConfig.spanLimits);\n /**\n * Reassign span attribute count limit to use first non null value defined by user or use default value\n */\n spanLimits.attributeCountLimit =\n userConfig.spanLimits?.attributeCountLimit ??\n userConfig.generalLimits?.attributeCountLimit ??\n (0, core_1.getNumberFromEnv)('OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT') ??\n (0, core_1.getNumberFromEnv)('OTEL_ATTRIBUTE_COUNT_LIMIT') ??\n exports.DEFAULT_ATTRIBUTE_COUNT_LIMIT;\n /**\n * Reassign span attribute value length limit to use first non null value defined by user or use default value\n */\n spanLimits.attributeValueLengthLimit =\n userConfig.spanLimits?.attributeValueLengthLimit ??\n userConfig.generalLimits?.attributeValueLengthLimit ??\n (0, core_1.getNumberFromEnv)('OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT') ??\n (0, core_1.getNumberFromEnv)('OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT') ??\n exports.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT;\n return Object.assign({}, userConfig, { spanLimits });\n}\nexports.reconfigureLimits = reconfigureLimits;\n//# sourceMappingURL=utility.js.map",
|
|
31
|
+
"\"use strict\";\n/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.BatchSpanProcessorBase = void 0;\nconst api_1 = require(\"@opentelemetry/api\");\nconst core_1 = require(\"@opentelemetry/core\");\n/**\n * Implementation of the {@link SpanProcessor} that batches spans exported by\n * the SDK then pushes them to the exporter pipeline.\n */\nclass BatchSpanProcessorBase {\n _maxExportBatchSize;\n _maxQueueSize;\n _scheduledDelayMillis;\n _exportTimeoutMillis;\n _exporter;\n _isExporting = false;\n _finishedSpans = [];\n _timer;\n _shutdownOnce;\n _droppedSpansCount = 0;\n constructor(exporter, config) {\n this._exporter = exporter;\n this._maxExportBatchSize =\n typeof config?.maxExportBatchSize === 'number'\n ? config.maxExportBatchSize\n : ((0, core_1.getNumberFromEnv)('OTEL_BSP_MAX_EXPORT_BATCH_SIZE') ?? 512);\n this._maxQueueSize =\n typeof config?.maxQueueSize === 'number'\n ? config.maxQueueSize\n : ((0, core_1.getNumberFromEnv)('OTEL_BSP_MAX_QUEUE_SIZE') ?? 2048);\n this._scheduledDelayMillis =\n typeof config?.scheduledDelayMillis === 'number'\n ? config.scheduledDelayMillis\n : ((0, core_1.getNumberFromEnv)('OTEL_BSP_SCHEDULE_DELAY') ?? 5000);\n this._exportTimeoutMillis =\n typeof config?.exportTimeoutMillis === 'number'\n ? config.exportTimeoutMillis\n : ((0, core_1.getNumberFromEnv)('OTEL_BSP_EXPORT_TIMEOUT') ?? 30000);\n this._shutdownOnce = new core_1.BindOnceFuture(this._shutdown, this);\n if (this._maxExportBatchSize > this._maxQueueSize) {\n api_1.diag.warn('BatchSpanProcessor: maxExportBatchSize must be smaller or equal to maxQueueSize, setting maxExportBatchSize to match maxQueueSize');\n this._maxExportBatchSize = this._maxQueueSize;\n }\n }\n forceFlush() {\n if (this._shutdownOnce.isCalled) {\n return this._shutdownOnce.promise;\n }\n return this._flushAll();\n }\n // does nothing.\n onStart(_span, _parentContext) { }\n onEnd(span) {\n if (this._shutdownOnce.isCalled) {\n return;\n }\n if ((span.spanContext().traceFlags & api_1.TraceFlags.SAMPLED) === 0) {\n return;\n }\n this._addToBuffer(span);\n }\n shutdown() {\n return this._shutdownOnce.call();\n }\n _shutdown() {\n return Promise.resolve()\n .then(() => {\n return this.onShutdown();\n })\n .then(() => {\n return this._flushAll();\n })\n .then(() => {\n return this._exporter.shutdown();\n });\n }\n /** Add a span in the buffer. */\n _addToBuffer(span) {\n if (this._finishedSpans.length >= this._maxQueueSize) {\n // limit reached, drop span\n if (this._droppedSpansCount === 0) {\n api_1.diag.debug('maxQueueSize reached, dropping spans');\n }\n this._droppedSpansCount++;\n return;\n }\n if (this._droppedSpansCount > 0) {\n // some spans were dropped, log once with count of spans dropped\n api_1.diag.warn(`Dropped ${this._droppedSpansCount} spans because maxQueueSize reached`);\n this._droppedSpansCount = 0;\n }\n this._finishedSpans.push(span);\n this._maybeStartTimer();\n }\n /**\n * Send all spans to the exporter respecting the batch size limit\n * This function is used only on forceFlush or shutdown,\n * for all other cases _flush should be used\n * */\n _flushAll() {\n return new Promise((resolve, reject) => {\n const promises = [];\n // calculate number of batches\n const count = Math.ceil(this._finishedSpans.length / this._maxExportBatchSize);\n for (let i = 0, j = count; i < j; i++) {\n promises.push(this._flushOneBatch());\n }\n Promise.all(promises)\n .then(() => {\n resolve();\n })\n .catch(reject);\n });\n }\n _flushOneBatch() {\n this._clearTimer();\n if (this._finishedSpans.length === 0) {\n return Promise.resolve();\n }\n return new Promise((resolve, reject) => {\n const timer = setTimeout(() => {\n // don't wait anymore for export, this way the next batch can start\n reject(new Error('Timeout'));\n }, this._exportTimeoutMillis);\n // prevent downstream exporter calls from generating spans\n api_1.context.with((0, core_1.suppressTracing)(api_1.context.active()), () => {\n // Reset the finished spans buffer here because the next invocations of the _flush method\n // could pass the same finished spans to the exporter if the buffer is cleared\n // outside the execution of this callback.\n let spans;\n if (this._finishedSpans.length <= this._maxExportBatchSize) {\n spans = this._finishedSpans;\n this._finishedSpans = [];\n }\n else {\n spans = this._finishedSpans.splice(0, this._maxExportBatchSize);\n }\n const doExport = () => this._exporter.export(spans, result => {\n clearTimeout(timer);\n if (result.code === core_1.ExportResultCode.SUCCESS) {\n resolve();\n }\n else {\n reject(result.error ??\n new Error('BatchSpanProcessor: span export failed'));\n }\n });\n let pendingResources = null;\n for (let i = 0, len = spans.length; i < len; i++) {\n const span = spans[i];\n if (span.resource.asyncAttributesPending &&\n span.resource.waitForAsyncAttributes) {\n pendingResources ??= [];\n pendingResources.push(span.resource.waitForAsyncAttributes());\n }\n }\n // Avoid scheduling a promise to make the behavior more predictable and easier to test\n if (pendingResources === null) {\n doExport();\n }\n else {\n Promise.all(pendingResources).then(doExport, err => {\n (0, core_1.globalErrorHandler)(err);\n reject(err);\n });\n }\n });\n });\n }\n _maybeStartTimer() {\n if (this._isExporting)\n return;\n const flush = () => {\n this._isExporting = true;\n this._flushOneBatch()\n .finally(() => {\n this._isExporting = false;\n if (this._finishedSpans.length > 0) {\n this._clearTimer();\n this._maybeStartTimer();\n }\n })\n .catch(e => {\n this._isExporting = false;\n (0, core_1.globalErrorHandler)(e);\n });\n };\n // we only wait if the queue doesn't have enough elements yet\n if (this._finishedSpans.length >= this._maxExportBatchSize) {\n return flush();\n }\n if (this._timer !== undefined)\n return;\n this._timer = setTimeout(() => flush(), this._scheduledDelayMillis);\n // depending on runtime, this may be a 'number' or NodeJS.Timeout\n if (typeof this._timer !== 'number') {\n this._timer.unref();\n }\n }\n _clearTimer() {\n if (this._timer !== undefined) {\n clearTimeout(this._timer);\n this._timer = undefined;\n }\n }\n}\nexports.BatchSpanProcessorBase = BatchSpanProcessorBase;\n//# sourceMappingURL=BatchSpanProcessorBase.js.map",
|
|
32
|
+
"\"use strict\";\n/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.BatchSpanProcessor = void 0;\nconst BatchSpanProcessorBase_1 = require(\"../../../export/BatchSpanProcessorBase\");\nclass BatchSpanProcessor extends BatchSpanProcessorBase_1.BatchSpanProcessorBase {\n onShutdown() { }\n}\nexports.BatchSpanProcessor = BatchSpanProcessor;\n//# sourceMappingURL=BatchSpanProcessor.js.map",
|
|
33
|
+
"\"use strict\";\n/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.RandomIdGenerator = void 0;\nconst SPAN_ID_BYTES = 8;\nconst TRACE_ID_BYTES = 16;\nclass RandomIdGenerator {\n /**\n * Returns a random 16-byte trace ID formatted/encoded as a 32 lowercase hex\n * characters corresponding to 128 bits.\n */\n generateTraceId = getIdGenerator(TRACE_ID_BYTES);\n /**\n * Returns a random 8-byte span ID formatted/encoded as a 16 lowercase hex\n * characters corresponding to 64 bits.\n */\n generateSpanId = getIdGenerator(SPAN_ID_BYTES);\n}\nexports.RandomIdGenerator = RandomIdGenerator;\nconst SHARED_BUFFER = Buffer.allocUnsafe(TRACE_ID_BYTES);\nfunction getIdGenerator(bytes) {\n return function generateId() {\n for (let i = 0; i < bytes / 4; i++) {\n // unsigned right shift drops decimal part of the number\n // it is required because if a number between 2**32 and 2**32 - 1 is generated, an out of range error is thrown by writeUInt32BE\n SHARED_BUFFER.writeUInt32BE((Math.random() * 2 ** 32) >>> 0, i * 4);\n }\n // If buffer is all 0, set the last byte to 1 to guarantee a valid w3c id is generated\n for (let i = 0; i < bytes; i++) {\n if (SHARED_BUFFER[i] > 0) {\n break;\n }\n else if (i === bytes - 1) {\n SHARED_BUFFER[bytes - 1] = 1;\n }\n }\n return SHARED_BUFFER.toString('hex', 0, bytes);\n };\n}\n//# sourceMappingURL=RandomIdGenerator.js.map",
|
|
34
|
+
"\"use strict\";\n/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.RandomIdGenerator = exports.BatchSpanProcessor = void 0;\nvar BatchSpanProcessor_1 = require(\"./export/BatchSpanProcessor\");\nObject.defineProperty(exports, \"BatchSpanProcessor\", { enumerable: true, get: function () { return BatchSpanProcessor_1.BatchSpanProcessor; } });\nvar RandomIdGenerator_1 = require(\"./RandomIdGenerator\");\nObject.defineProperty(exports, \"RandomIdGenerator\", { enumerable: true, get: function () { return RandomIdGenerator_1.RandomIdGenerator; } });\n//# sourceMappingURL=index.js.map",
|
|
35
|
+
"\"use strict\";\n/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.RandomIdGenerator = exports.BatchSpanProcessor = void 0;\nvar node_1 = require(\"./node\");\nObject.defineProperty(exports, \"BatchSpanProcessor\", { enumerable: true, get: function () { return node_1.BatchSpanProcessor; } });\nObject.defineProperty(exports, \"RandomIdGenerator\", { enumerable: true, get: function () { return node_1.RandomIdGenerator; } });\n//# sourceMappingURL=index.js.map",
|
|
36
|
+
"\"use strict\";\n/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.METRIC_OTEL_SDK_SPAN_STARTED = exports.METRIC_OTEL_SDK_SPAN_LIVE = exports.ATTR_OTEL_SPAN_SAMPLING_RESULT = exports.ATTR_OTEL_SPAN_PARENT_ORIGIN = void 0;\n/*\n * This file contains a copy of unstable semantic convention definitions\n * used by this package.\n * @see https://github.com/open-telemetry/opentelemetry-js/tree/main/semantic-conventions#unstable-semconv\n */\n/**\n * Determines whether the span has a parent span, and if so, [whether it is a remote parent](https://opentelemetry.io/docs/specs/otel/trace/api/#isremote)\n *\n * @experimental This attribute is experimental and is subject to breaking changes in minor releases of `@opentelemetry/semantic-conventions`.\n */\nexports.ATTR_OTEL_SPAN_PARENT_ORIGIN = 'otel.span.parent.origin';\n/**\n * The result value of the sampler for this span\n *\n * @experimental This attribute is experimental and is subject to breaking changes in minor releases of `@opentelemetry/semantic-conventions`.\n */\nexports.ATTR_OTEL_SPAN_SAMPLING_RESULT = 'otel.span.sampling_result';\n/**\n * The number of created spans with `recording=true` for which the end operation has not been called yet.\n *\n * @experimental This metric is experimental and is subject to breaking changes in minor releases of `@opentelemetry/semantic-conventions`.\n */\nexports.METRIC_OTEL_SDK_SPAN_LIVE = 'otel.sdk.span.live';\n/**\n * The number of created spans.\n *\n * @note Implementations **MUST** record this metric for all spans, even for non-recording ones.\n *\n * @experimental This metric is experimental and is subject to breaking changes in minor releases of `@opentelemetry/semantic-conventions`.\n */\nexports.METRIC_OTEL_SDK_SPAN_STARTED = 'otel.sdk.span.started';\n//# sourceMappingURL=semconv.js.map",
|
|
37
|
+
"\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.TracerMetrics = void 0;\nconst Sampler_1 = require(\"./Sampler\");\nconst semconv_1 = require(\"./semconv\");\n/**\n * Generates `otel.sdk.span.*` metrics.\n * https://opentelemetry.io/docs/specs/semconv/otel/sdk-metrics/#span-metrics\n */\nclass TracerMetrics {\n startedSpans;\n liveSpans;\n constructor(meter) {\n this.startedSpans = meter.createCounter(semconv_1.METRIC_OTEL_SDK_SPAN_STARTED, {\n unit: '{span}',\n description: 'The number of created spans.',\n });\n this.liveSpans = meter.createUpDownCounter(semconv_1.METRIC_OTEL_SDK_SPAN_LIVE, {\n unit: '{span}',\n description: 'The number of currently live spans.',\n });\n }\n startSpan(parentSpanCtx, samplingDecision) {\n const samplingDecisionStr = samplingDecisionToString(samplingDecision);\n this.startedSpans.add(1, {\n [semconv_1.ATTR_OTEL_SPAN_PARENT_ORIGIN]: parentOrigin(parentSpanCtx),\n [semconv_1.ATTR_OTEL_SPAN_SAMPLING_RESULT]: samplingDecisionStr,\n });\n if (samplingDecision === Sampler_1.SamplingDecision.NOT_RECORD) {\n return () => { };\n }\n const liveSpanAttributes = {\n [semconv_1.ATTR_OTEL_SPAN_SAMPLING_RESULT]: samplingDecisionStr,\n };\n this.liveSpans.add(1, liveSpanAttributes);\n return () => {\n this.liveSpans.add(-1, liveSpanAttributes);\n };\n }\n}\nexports.TracerMetrics = TracerMetrics;\nfunction parentOrigin(parentSpanContext) {\n if (!parentSpanContext) {\n return 'none';\n }\n if (parentSpanContext.isRemote) {\n return 'remote';\n }\n return 'local';\n}\nfunction samplingDecisionToString(decision) {\n switch (decision) {\n case Sampler_1.SamplingDecision.RECORD_AND_SAMPLED:\n return 'RECORD_AND_SAMPLE';\n case Sampler_1.SamplingDecision.RECORD:\n return 'RECORD_ONLY';\n case Sampler_1.SamplingDecision.NOT_RECORD:\n return 'DROP';\n }\n}\n//# sourceMappingURL=TracerMetrics.js.map",
|
|
38
|
+
"\"use strict\";\n/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.VERSION = void 0;\n// this is autogenerated file, see scripts/version-update.js\nexports.VERSION = '2.6.1';\n//# sourceMappingURL=version.js.map",
|
|
39
|
+
"\"use strict\";\n/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Tracer = void 0;\nconst api = require(\"@opentelemetry/api\");\nconst core_1 = require(\"@opentelemetry/core\");\nconst Span_1 = require(\"./Span\");\nconst utility_1 = require(\"./utility\");\nconst platform_1 = require(\"./platform\");\nconst TracerMetrics_1 = require(\"./TracerMetrics\");\nconst version_1 = require(\"./version\");\n/**\n * This class represents a basic tracer.\n */\nclass Tracer {\n _sampler;\n _generalLimits;\n _spanLimits;\n _idGenerator;\n instrumentationScope;\n _resource;\n _spanProcessor;\n _tracerMetrics;\n /**\n * Constructs a new Tracer instance.\n */\n constructor(instrumentationScope, config, resource, spanProcessor) {\n const localConfig = (0, utility_1.mergeConfig)(config);\n this._sampler = localConfig.sampler;\n this._generalLimits = localConfig.generalLimits;\n this._spanLimits = localConfig.spanLimits;\n this._idGenerator = config.idGenerator || new platform_1.RandomIdGenerator();\n this._resource = resource;\n this._spanProcessor = spanProcessor;\n this.instrumentationScope = instrumentationScope;\n const meter = localConfig.meterProvider\n ? localConfig.meterProvider.getMeter('@opentelemetry/sdk-trace', version_1.VERSION)\n : api.createNoopMeter();\n this._tracerMetrics = new TracerMetrics_1.TracerMetrics(meter);\n }\n /**\n * Starts a new Span or returns the default NoopSpan based on the sampling\n * decision.\n */\n startSpan(name, options = {}, context = api.context.active()) {\n // remove span from context in case a root span is requested via options\n if (options.root) {\n context = api.trace.deleteSpan(context);\n }\n const parentSpan = api.trace.getSpan(context);\n if ((0, core_1.isTracingSuppressed)(context)) {\n api.diag.debug('Instrumentation suppressed, returning Noop Span');\n const nonRecordingSpan = api.trace.wrapSpanContext(api.INVALID_SPAN_CONTEXT);\n return nonRecordingSpan;\n }\n const parentSpanContext = parentSpan?.spanContext();\n const spanId = this._idGenerator.generateSpanId();\n let validParentSpanContext;\n let traceId;\n let traceState;\n if (!parentSpanContext ||\n !api.trace.isSpanContextValid(parentSpanContext)) {\n // New root span.\n traceId = this._idGenerator.generateTraceId();\n }\n else {\n // New child span.\n traceId = parentSpanContext.traceId;\n traceState = parentSpanContext.traceState;\n validParentSpanContext = parentSpanContext;\n }\n const spanKind = options.kind ?? api.SpanKind.INTERNAL;\n const links = (options.links ?? []).map(link => {\n return {\n context: link.context,\n attributes: (0, core_1.sanitizeAttributes)(link.attributes),\n };\n });\n const attributes = (0, core_1.sanitizeAttributes)(options.attributes);\n // make sampling decision\n const samplingResult = this._sampler.shouldSample(context, traceId, name, spanKind, attributes, links);\n const recordEndMetrics = this._tracerMetrics.startSpan(parentSpanContext, samplingResult.decision);\n traceState = samplingResult.traceState ?? traceState;\n const traceFlags = samplingResult.decision === api.SamplingDecision.RECORD_AND_SAMPLED\n ? api.TraceFlags.SAMPLED\n : api.TraceFlags.NONE;\n const spanContext = { traceId, spanId, traceFlags, traceState };\n if (samplingResult.decision === api.SamplingDecision.NOT_RECORD) {\n api.diag.debug('Recording is off, propagating context in a non-recording span');\n const nonRecordingSpan = api.trace.wrapSpanContext(spanContext);\n return nonRecordingSpan;\n }\n // Set initial span attributes. The attributes object may have been mutated\n // by the sampler, so we sanitize the merged attributes before setting them.\n const initAttributes = (0, core_1.sanitizeAttributes)(Object.assign(attributes, samplingResult.attributes));\n const span = new Span_1.SpanImpl({\n resource: this._resource,\n scope: this.instrumentationScope,\n context,\n spanContext,\n name,\n kind: spanKind,\n links,\n parentSpanContext: validParentSpanContext,\n attributes: initAttributes,\n startTime: options.startTime,\n spanProcessor: this._spanProcessor,\n spanLimits: this._spanLimits,\n recordEndMetrics,\n });\n return span;\n }\n startActiveSpan(name, arg2, arg3, arg4) {\n let opts;\n let ctx;\n let fn;\n if (arguments.length < 2) {\n return;\n }\n else if (arguments.length === 2) {\n fn = arg2;\n }\n else if (arguments.length === 3) {\n opts = arg2;\n fn = arg3;\n }\n else {\n opts = arg2;\n ctx = arg3;\n fn = arg4;\n }\n const parentContext = ctx ?? api.context.active();\n const span = this.startSpan(name, opts, parentContext);\n const contextWithSpanSet = api.trace.setSpan(parentContext, span);\n return api.context.with(contextWithSpanSet, fn, undefined, span);\n }\n /** Returns the active {@link GeneralLimits}. */\n getGeneralLimits() {\n return this._generalLimits;\n }\n /** Returns the active {@link SpanLimits}. */\n getSpanLimits() {\n return this._spanLimits;\n }\n}\nexports.Tracer = Tracer;\n//# sourceMappingURL=Tracer.js.map",
|
|
40
|
+
"\"use strict\";\n/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.MultiSpanProcessor = void 0;\nconst core_1 = require(\"@opentelemetry/core\");\n/**\n * Implementation of the {@link SpanProcessor} that simply forwards all\n * received events to a list of {@link SpanProcessor}s.\n */\nclass MultiSpanProcessor {\n _spanProcessors;\n constructor(spanProcessors) {\n this._spanProcessors = spanProcessors;\n }\n forceFlush() {\n const promises = [];\n for (const spanProcessor of this._spanProcessors) {\n promises.push(spanProcessor.forceFlush());\n }\n return new Promise(resolve => {\n Promise.all(promises)\n .then(() => {\n resolve();\n })\n .catch(error => {\n (0, core_1.globalErrorHandler)(error || new Error('MultiSpanProcessor: forceFlush failed'));\n resolve();\n });\n });\n }\n onStart(span, context) {\n for (const spanProcessor of this._spanProcessors) {\n spanProcessor.onStart(span, context);\n }\n }\n onEnding(span) {\n for (const spanProcessor of this._spanProcessors) {\n if (spanProcessor.onEnding) {\n spanProcessor.onEnding(span);\n }\n }\n }\n onEnd(span) {\n for (const spanProcessor of this._spanProcessors) {\n spanProcessor.onEnd(span);\n }\n }\n shutdown() {\n const promises = [];\n for (const spanProcessor of this._spanProcessors) {\n promises.push(spanProcessor.shutdown());\n }\n return new Promise((resolve, reject) => {\n Promise.all(promises).then(() => {\n resolve();\n }, reject);\n });\n }\n}\nexports.MultiSpanProcessor = MultiSpanProcessor;\n//# sourceMappingURL=MultiSpanProcessor.js.map",
|
|
41
|
+
"\"use strict\";\n/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.BasicTracerProvider = exports.ForceFlushState = void 0;\nconst core_1 = require(\"@opentelemetry/core\");\nconst resources_1 = require(\"@opentelemetry/resources\");\nconst Tracer_1 = require(\"./Tracer\");\nconst config_1 = require(\"./config\");\nconst MultiSpanProcessor_1 = require(\"./MultiSpanProcessor\");\nconst utility_1 = require(\"./utility\");\nvar ForceFlushState;\n(function (ForceFlushState) {\n ForceFlushState[ForceFlushState[\"resolved\"] = 0] = \"resolved\";\n ForceFlushState[ForceFlushState[\"timeout\"] = 1] = \"timeout\";\n ForceFlushState[ForceFlushState[\"error\"] = 2] = \"error\";\n ForceFlushState[ForceFlushState[\"unresolved\"] = 3] = \"unresolved\";\n})(ForceFlushState = exports.ForceFlushState || (exports.ForceFlushState = {}));\n/**\n * This class represents a basic tracer provider which platform libraries can extend\n */\nclass BasicTracerProvider {\n _config;\n _tracers = new Map();\n _resource;\n _activeSpanProcessor;\n constructor(config = {}) {\n const mergedConfig = (0, core_1.merge)({}, (0, config_1.loadDefaultConfig)(), (0, utility_1.reconfigureLimits)(config));\n this._resource = mergedConfig.resource ?? (0, resources_1.defaultResource)();\n this._config = Object.assign({}, mergedConfig, {\n resource: this._resource,\n });\n const spanProcessors = [];\n if (config.spanProcessors?.length) {\n spanProcessors.push(...config.spanProcessors);\n }\n this._activeSpanProcessor = new MultiSpanProcessor_1.MultiSpanProcessor(spanProcessors);\n }\n getTracer(name, version, options) {\n const key = `${name}@${version || ''}:${options?.schemaUrl || ''}`;\n if (!this._tracers.has(key)) {\n this._tracers.set(key, new Tracer_1.Tracer({ name, version, schemaUrl: options?.schemaUrl }, this._config, this._resource, this._activeSpanProcessor));\n }\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n return this._tracers.get(key);\n }\n forceFlush() {\n const timeout = this._config.forceFlushTimeoutMillis;\n const promises = this._activeSpanProcessor['_spanProcessors'].map((spanProcessor) => {\n return new Promise(resolve => {\n let state;\n const timeoutInterval = setTimeout(() => {\n resolve(new Error(`Span processor did not completed within timeout period of ${timeout} ms`));\n state = ForceFlushState.timeout;\n }, timeout);\n spanProcessor\n .forceFlush()\n .then(() => {\n clearTimeout(timeoutInterval);\n if (state !== ForceFlushState.timeout) {\n state = ForceFlushState.resolved;\n resolve(state);\n }\n })\n .catch(error => {\n clearTimeout(timeoutInterval);\n state = ForceFlushState.error;\n resolve(error);\n });\n });\n });\n return new Promise((resolve, reject) => {\n Promise.all(promises)\n .then(results => {\n const errors = results.filter(result => result !== ForceFlushState.resolved);\n if (errors.length > 0) {\n reject(errors);\n }\n else {\n resolve();\n }\n })\n .catch(error => reject([error]));\n });\n }\n shutdown() {\n return this._activeSpanProcessor.shutdown();\n }\n}\nexports.BasicTracerProvider = BasicTracerProvider;\n//# sourceMappingURL=BasicTracerProvider.js.map",
|
|
42
|
+
"\"use strict\";\n/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ConsoleSpanExporter = void 0;\nconst core_1 = require(\"@opentelemetry/core\");\n/**\n * This is implementation of {@link SpanExporter} that prints spans to the\n * console. This class can be used for diagnostic purposes.\n *\n * NOTE: This {@link SpanExporter} is intended for diagnostics use only, output rendered to the console may change at any time.\n */\n/* eslint-disable no-console */\nclass ConsoleSpanExporter {\n /**\n * Export spans.\n * @param spans\n * @param resultCallback\n */\n export(spans, resultCallback) {\n return this._sendSpans(spans, resultCallback);\n }\n /**\n * Shutdown the exporter.\n */\n shutdown() {\n this._sendSpans([]);\n return this.forceFlush();\n }\n /**\n * Exports any pending spans in exporter\n */\n forceFlush() {\n return Promise.resolve();\n }\n /**\n * converts span info into more readable format\n * @param span\n */\n _exportInfo(span) {\n return {\n resource: {\n attributes: span.resource.attributes,\n },\n instrumentationScope: span.instrumentationScope,\n traceId: span.spanContext().traceId,\n parentSpanContext: span.parentSpanContext,\n traceState: span.spanContext().traceState?.serialize(),\n name: span.name,\n id: span.spanContext().spanId,\n kind: span.kind,\n timestamp: (0, core_1.hrTimeToMicroseconds)(span.startTime),\n duration: (0, core_1.hrTimeToMicroseconds)(span.duration),\n attributes: span.attributes,\n status: span.status,\n events: span.events,\n links: span.links,\n };\n }\n /**\n * Showing spans in console\n * @param spans\n * @param done\n */\n _sendSpans(spans, done) {\n for (const span of spans) {\n console.dir(this._exportInfo(span), { depth: 3 });\n }\n if (done) {\n return done({ code: core_1.ExportResultCode.SUCCESS });\n }\n }\n}\nexports.ConsoleSpanExporter = ConsoleSpanExporter;\n//# sourceMappingURL=ConsoleSpanExporter.js.map",
|
|
43
|
+
"\"use strict\";\n/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.InMemorySpanExporter = void 0;\nconst core_1 = require(\"@opentelemetry/core\");\n/**\n * This class can be used for testing purposes. It stores the exported spans\n * in a list in memory that can be retrieved using the `getFinishedSpans()`\n * method.\n */\nclass InMemorySpanExporter {\n _finishedSpans = [];\n /**\n * Indicates if the exporter has been \"shutdown.\"\n * When false, exported spans will not be stored in-memory.\n */\n _stopped = false;\n export(spans, resultCallback) {\n if (this._stopped)\n return resultCallback({\n code: core_1.ExportResultCode.FAILED,\n error: new Error('Exporter has been stopped'),\n });\n this._finishedSpans.push(...spans);\n setTimeout(() => resultCallback({ code: core_1.ExportResultCode.SUCCESS }), 0);\n }\n shutdown() {\n this._stopped = true;\n this._finishedSpans = [];\n return this.forceFlush();\n }\n /**\n * Exports any pending spans in the exporter\n */\n forceFlush() {\n return Promise.resolve();\n }\n reset() {\n this._finishedSpans = [];\n }\n getFinishedSpans() {\n return this._finishedSpans;\n }\n}\nexports.InMemorySpanExporter = InMemorySpanExporter;\n//# sourceMappingURL=InMemorySpanExporter.js.map",
|
|
44
|
+
"\"use strict\";\n/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.SimpleSpanProcessor = void 0;\nconst api_1 = require(\"@opentelemetry/api\");\nconst core_1 = require(\"@opentelemetry/core\");\n/**\n * An implementation of the {@link SpanProcessor} that converts the {@link Span}\n * to {@link ReadableSpan} and passes it to the configured exporter.\n *\n * Only spans that are sampled are converted.\n *\n * NOTE: This {@link SpanProcessor} exports every ended span individually instead of batching spans together, which causes significant performance overhead with most exporters. For production use, please consider using the {@link BatchSpanProcessor} instead.\n */\nclass SimpleSpanProcessor {\n _exporter;\n _shutdownOnce;\n _pendingExports;\n constructor(exporter) {\n this._exporter = exporter;\n this._shutdownOnce = new core_1.BindOnceFuture(this._shutdown, this);\n this._pendingExports = new Set();\n }\n async forceFlush() {\n await Promise.all(Array.from(this._pendingExports));\n if (this._exporter.forceFlush) {\n await this._exporter.forceFlush();\n }\n }\n onStart(_span, _parentContext) { }\n onEnd(span) {\n if (this._shutdownOnce.isCalled) {\n return;\n }\n if ((span.spanContext().traceFlags & api_1.TraceFlags.SAMPLED) === 0) {\n return;\n }\n const pendingExport = this._doExport(span).catch(err => (0, core_1.globalErrorHandler)(err));\n // Enqueue this export to the pending list so it can be flushed by the user.\n this._pendingExports.add(pendingExport);\n void pendingExport.finally(() => this._pendingExports.delete(pendingExport));\n }\n async _doExport(span) {\n if (span.resource.asyncAttributesPending) {\n // Ensure resource is fully resolved before exporting.\n await span.resource.waitForAsyncAttributes?.();\n }\n const result = await core_1.internal._export(this._exporter, [span]);\n if (result.code !== core_1.ExportResultCode.SUCCESS) {\n throw (result.error ??\n new Error(`SimpleSpanProcessor: span export failed (status ${result})`));\n }\n }\n shutdown() {\n return this._shutdownOnce.call();\n }\n _shutdown() {\n return this._exporter.shutdown();\n }\n}\nexports.SimpleSpanProcessor = SimpleSpanProcessor;\n//# sourceMappingURL=SimpleSpanProcessor.js.map",
|
|
45
|
+
"\"use strict\";\n/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.NoopSpanProcessor = void 0;\n/** No-op implementation of SpanProcessor */\nclass NoopSpanProcessor {\n onStart(_span, _context) { }\n onEnd(_span) { }\n shutdown() {\n return Promise.resolve();\n }\n forceFlush() {\n return Promise.resolve();\n }\n}\nexports.NoopSpanProcessor = NoopSpanProcessor;\n//# sourceMappingURL=NoopSpanProcessor.js.map",
|
|
46
|
+
"\"use strict\";\n/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.SamplingDecision = exports.TraceIdRatioBasedSampler = exports.ParentBasedSampler = exports.AlwaysOnSampler = exports.AlwaysOffSampler = exports.NoopSpanProcessor = exports.SimpleSpanProcessor = exports.InMemorySpanExporter = exports.ConsoleSpanExporter = exports.RandomIdGenerator = exports.BatchSpanProcessor = exports.BasicTracerProvider = void 0;\nvar BasicTracerProvider_1 = require(\"./BasicTracerProvider\");\nObject.defineProperty(exports, \"BasicTracerProvider\", { enumerable: true, get: function () { return BasicTracerProvider_1.BasicTracerProvider; } });\nvar platform_1 = require(\"./platform\");\nObject.defineProperty(exports, \"BatchSpanProcessor\", { enumerable: true, get: function () { return platform_1.BatchSpanProcessor; } });\nObject.defineProperty(exports, \"RandomIdGenerator\", { enumerable: true, get: function () { return platform_1.RandomIdGenerator; } });\nvar ConsoleSpanExporter_1 = require(\"./export/ConsoleSpanExporter\");\nObject.defineProperty(exports, \"ConsoleSpanExporter\", { enumerable: true, get: function () { return ConsoleSpanExporter_1.ConsoleSpanExporter; } });\nvar InMemorySpanExporter_1 = require(\"./export/InMemorySpanExporter\");\nObject.defineProperty(exports, \"InMemorySpanExporter\", { enumerable: true, get: function () { return InMemorySpanExporter_1.InMemorySpanExporter; } });\nvar SimpleSpanProcessor_1 = require(\"./export/SimpleSpanProcessor\");\nObject.defineProperty(exports, \"SimpleSpanProcessor\", { enumerable: true, get: function () { return SimpleSpanProcessor_1.SimpleSpanProcessor; } });\nvar NoopSpanProcessor_1 = require(\"./export/NoopSpanProcessor\");\nObject.defineProperty(exports, \"NoopSpanProcessor\", { enumerable: true, get: function () { return NoopSpanProcessor_1.NoopSpanProcessor; } });\nvar AlwaysOffSampler_1 = require(\"./sampler/AlwaysOffSampler\");\nObject.defineProperty(exports, \"AlwaysOffSampler\", { enumerable: true, get: function () { return AlwaysOffSampler_1.AlwaysOffSampler; } });\nvar AlwaysOnSampler_1 = require(\"./sampler/AlwaysOnSampler\");\nObject.defineProperty(exports, \"AlwaysOnSampler\", { enumerable: true, get: function () { return AlwaysOnSampler_1.AlwaysOnSampler; } });\nvar ParentBasedSampler_1 = require(\"./sampler/ParentBasedSampler\");\nObject.defineProperty(exports, \"ParentBasedSampler\", { enumerable: true, get: function () { return ParentBasedSampler_1.ParentBasedSampler; } });\nvar TraceIdRatioBasedSampler_1 = require(\"./sampler/TraceIdRatioBasedSampler\");\nObject.defineProperty(exports, \"TraceIdRatioBasedSampler\", { enumerable: true, get: function () { return TraceIdRatioBasedSampler_1.TraceIdRatioBasedSampler; } });\nvar Sampler_1 = require(\"./Sampler\");\nObject.defineProperty(exports, \"SamplingDecision\", { enumerable: true, get: function () { return Sampler_1.SamplingDecision; } });\n//# sourceMappingURL=index.js.map"
|
|
47
|
+
],
|
|
48
|
+
"mappings": ";2LAKA,YAAO,oBAAe,GAAS,aAAc,CAAE,MAAO,EAAK,CAAC,EACpD,iCAAwC,sBAA0B,OAC1E,IAAI,EAMJ,SAAS,EAAkB,EAAG,CAC1B,GAAI,IAAgB,OAChB,GAAI,CACA,IAAM,EAAQ,WAAW,QAAQ,MACjC,EAAc,EAAQ,mBAAmB,IAAU,kBAEvD,KAAM,CACF,EAAc,kBAGtB,OAAO,EAEH,sBAAqB,GAE7B,SAAS,EAA6B,EAAG,CACrC,EAAc,OAEV,iCAAgC,qBCzBxC,OAAO,eAAe,GAAS,aAAc,CAAE,MAAO,EAAK,CAAC,EACpD,iBAAqB,OAC7B,IAAM,GAAgB,CAAC,IAAQ,CAC3B,OAAQ,IAAQ,MACZ,OAAO,IAAQ,UACf,OAAO,EAAI,OAAS,YAEpB,iBAAgB,qBCPxB,OAAO,eAAe,GAAS,aAAc,CAAE,MAAO,EAAK,CAAC,EACpD,mBAA0B,iBAAwB,gCAAuC,0BAA8B,OAC/H,IAAM,MACA,OACA,OACA,QACA,OACN,MAAM,CAAa,CACf,eACA,wBAA0B,GAC1B,WACA,0BACO,kBAAiB,CAAC,EAAY,EAAS,CAC1C,IAAM,EAAM,IAAI,EAAa,CAAC,EAAG,CAAO,EAIxC,OAHA,EAAI,eAAiB,GAAqB,CAAU,EACpD,EAAI,wBACA,EAAW,OAAO,EAAE,EAAG,MAAU,EAAG,EAAQ,eAAe,CAAG,CAAC,EAAE,OAAS,EACvE,EAEX,WAAW,CAMX,EAAU,EAAS,CACf,IAAM,EAAa,EAAS,YAAc,CAAC,EAC3C,KAAK,eAAiB,OAAO,QAAQ,CAAU,EAAE,IAAI,EAAE,EAAG,KAAO,CAC7D,IAAK,EAAG,EAAQ,eAAe,CAAC,EAE5B,KAAK,wBAA0B,GAEnC,MAAO,CAAC,EAAG,CAAC,EACf,EACD,KAAK,eAAiB,GAAqB,KAAK,cAAc,EAC9D,KAAK,WAAa,GAAkB,GAAS,SAAS,KAEtD,uBAAsB,EAAG,CACzB,OAAO,KAAK,6BAEV,uBAAsB,EAAG,CAC3B,GAAI,CAAC,KAAK,uBACN,OAEJ,QAAS,EAAI,EAAG,EAAI,KAAK,eAAe,OAAQ,IAAK,CACjD,IAAO,EAAG,GAAK,KAAK,eAAe,GACnC,KAAK,eAAe,GAAK,CAAC,GAAI,EAAG,EAAQ,eAAe,CAAC,EAAI,MAAM,EAAI,CAAC,EAE5E,KAAK,wBAA0B,MAE/B,WAAU,EAAG,CACb,GAAI,KAAK,uBACL,EAAM,KAAK,MAAM,+DAA+D,EAEpF,GAAI,KAAK,oBACL,OAAO,KAAK,oBAEhB,IAAM,EAAQ,CAAC,EACf,QAAY,EAAG,KAAM,KAAK,eAAgB,CACtC,IAAK,EAAG,EAAQ,eAAe,CAAC,EAAG,CAC/B,EAAM,KAAK,MAAM,gCAAgC,WAAW,EAC5D,SAEJ,GAAI,GAAK,KACL,EAAM,KAAO,EAIrB,GAAI,CAAC,KAAK,wBACN,KAAK,oBAAsB,EAE/B,OAAO,EAEX,gBAAgB,EAAG,CACf,OAAO,KAAK,kBAEZ,UAAS,EAAG,CACZ,OAAO,KAAK,WAEhB,KAAK,CAAC,EAAU,CACZ,GAAI,GAAY,KACZ,OAAO,KAGX,IAAM,EAAkB,GAAe,KAAM,CAAQ,EAC/C,EAAgB,EAChB,CAAE,UAAW,CAAgB,EAC7B,OACN,OAAO,EAAa,kBAAkB,CAAC,GAAG,EAAS,iBAAiB,EAAG,GAAG,KAAK,iBAAiB,CAAC,EAAG,CAAa,EAEzH,CACA,SAAS,EAAsB,CAAC,EAAY,EAAS,CACjD,OAAO,EAAa,kBAAkB,OAAO,QAAQ,CAAU,EAAG,CAAO,EAErE,0BAAyB,GACjC,SAAS,EAA4B,CAAC,EAAkB,EAAS,CAC7D,OAAO,IAAI,EAAa,EAAkB,CAAO,EAE7C,gCAA+B,GACvC,SAAS,EAAa,EAAG,CACrB,OAAO,GAAuB,CAAC,CAAC,EAE5B,iBAAgB,GACxB,SAAS,EAAe,EAAG,CACvB,OAAO,GAAuB,EACzB,EAAuB,oBAAqB,EAAG,GAAuB,oBAAoB,GAC1F,EAAuB,6BAA8B,GAAO,SAAS,EAAuB,8BAC5F,EAAuB,yBAA0B,GAAO,SAAS,EAAuB,0BACxF,EAAuB,4BAA6B,GAAO,SAAS,EAAuB,2BAChG,CAAC,EAEG,mBAAkB,GAC1B,SAAS,EAAoB,CAAC,EAAY,CACtC,OAAO,EAAW,IAAI,EAAE,EAAG,KAAO,CAC9B,IAAK,EAAG,EAAQ,eAAe,CAAC,EAC5B,MAAO,CACH,EACA,EAAE,MAAM,KAAO,CACX,EAAM,KAAK,MAAM,oDAAqD,EAAG,CAAG,EAC5E,OACH,CACL,EAEJ,MAAO,CAAC,EAAG,CAAC,EACf,EAEL,SAAS,EAAiB,CAAC,EAAW,CAClC,GAAI,OAAO,IAAc,UAAY,IAAc,OAC/C,OAAO,EAEX,EAAM,KAAK,KAAK,8EAA+E,CAAS,EACxG,OAEJ,SAAS,EAAc,CAAC,EAAK,EAAU,CACnC,IAAM,EAAe,GAAK,UACpB,EAAoB,GAAU,UAC9B,EAAa,IAAiB,QAAa,IAAiB,GAC5D,EAAkB,IAAsB,QAAa,IAAsB,GACjF,GAAI,EACA,OAAO,EAEX,GAAI,EACA,OAAO,EAEX,GAAI,IAAiB,EACjB,OAAO,EAEX,EAAM,KAAK,KAAK,mIAAoI,EAAc,CAAiB,EACnL,0BCpJJ,OAAO,eAAe,GAAS,aAAc,CAAE,MAAO,EAAK,CAAC,EACpD,mBAAuB,OAC/B,IAAM,OACA,QAMA,GAAkB,CAAC,EAAS,CAAC,IAAM,CAYrC,OAXmB,EAAO,WAAa,CAAC,GAAG,IAAI,KAAK,CAChD,GAAI,CACA,IAAM,GAAY,EAAG,GAAe,8BAA8B,EAAE,OAAO,CAAM,CAAC,EAElF,OADA,GAAM,KAAK,MAAM,GAAG,EAAE,YAAY,uBAAwB,CAAQ,EAC3D,EAEX,MAAO,EAAG,CAEN,OADA,GAAM,KAAK,MAAM,GAAG,EAAE,YAAY,gBAAgB,EAAE,SAAS,GACrD,EAAG,GAAe,eAAe,GAEhD,EACgB,OAAO,CAAC,EAAK,IAAa,EAAI,MAAM,CAAQ,GAAI,EAAG,GAAe,eAAe,CAAC,GAE/F,mBAAkB,qBCvB1B,OAAO,eAAe,GAAS,aAAc,CAAE,MAAO,EAAK,CAAC,EACpD,eAAmB,OAC3B,IAAM,OACA,QACA,OAKN,MAAM,EAAY,CAEd,YAAc,IAEd,iBAAmB,IAEnB,0BAA4B,IAQ5B,MAAM,CAAC,EAAS,CACZ,IAAM,EAAa,CAAC,EACd,GAAiB,EAAG,GAAO,kBAAkB,0BAA0B,EACvE,GAAe,EAAG,GAAO,kBAAkB,mBAAmB,EACpE,GAAI,EACA,GAAI,CACA,IAAM,EAAmB,KAAK,yBAAyB,CAAa,EACpE,OAAO,OAAO,EAAY,CAAgB,EAE9C,MAAO,EAAG,CACN,GAAM,KAAK,MAAM,uBAAuB,aAAa,MAAQ,EAAE,QAAU,GAAG,EAGpF,GAAI,EACA,EAAW,GAAuB,mBAAqB,EAE3D,MAAO,CAAE,YAAW,EAkBxB,wBAAwB,CAAC,EAAkB,CACvC,GAAI,CAAC,EACD,MAAO,CAAC,EACZ,IAAM,EAAa,CAAC,EACd,EAAgB,EAAiB,MAAM,KAAK,gBAAgB,EAClE,QAAW,KAAgB,EAAe,CACtC,IAAM,EAAe,EAAa,MAAM,KAAK,yBAAyB,EAGtE,GAAI,EAAa,SAAW,EACxB,MAAU,MAAM,iDAAiD,wGACuC,EAE5G,IAAO,EAAQ,GAAY,EACrB,EAAM,EAAO,KAAK,EAClB,EAAQ,EAAS,KAAK,EAC5B,GAAI,EAAI,SAAW,EACf,MAAU,MAAM,6DAA6D,KAAgB,EAEjG,IAAI,EACA,EACJ,GAAI,CACA,EAAa,mBAAmB,CAAG,EACnC,EAAe,mBAAmB,CAAK,EAE3C,MAAO,EAAG,CACN,MAAU,MAAM,4DAA4D,OAAkB,aAAa,MAAQ,EAAE,QAAU,GAAG,EAEtI,GAAI,EAAW,OAAS,KAAK,YACzB,MAAU,MAAM,+CAA+C,KAAK,4BAA4B,KAAc,EAElH,GAAI,EAAa,OAAS,KAAK,YAC3B,MAAU,MAAM,iDAAiD,KAAK,mCAAmC,KAAc,EAE3H,EAAW,GAAc,EAE7B,OAAO,EAEf,CACQ,eAAc,IAAI,oBChG1B,OAAO,eAAe,GAAS,aAAc,CAAE,MAAO,EAAK,CAAC,EACpD,0BAAiC,uBAA8B,8BAAqC,0BAAiC,4BAAmC,gCAAuC,6BAAoC,oCAA2C,oBAA2B,sBAA6B,gCAAuC,gCAAuC,6BAAoC,wBAA+B,mBAA0B,gBAAuB,qBAA4B,2BAAkC,4BAAmC,yBAAgC,kBAAyB,kBAAyB,2BAAkC,wBAA+B,sBAA6B,gBAAuB,kBAAyB,uBAA8B,6BAAoC,6BAAoC,qBAA4B,qBAA4B,uBAA8B,gCAAuC,yBAA6B,OAczlC,yBAAwB,mBAUxB,gCAA+B,0BAM/B,uBAAsB,iBAWtB,qBAAoB,eAQpB,qBAAoB,eAQpB,6BAA4B,uBAQ5B,6BAA4B,uBAQ5B,uBAAsB,iBAMtB,kBAAiB,YAQjB,gBAAe,UAQf,sBAAqB,gBASrB,wBAAuB,kBAQvB,2BAA0B,qBAQ1B,kBAAiB,YAQjB,kBAAiB,YAQjB,yBAAwB,mBAQxB,4BAA2B,sBAQ3B,2BAA0B,qBAQ1B,qBAAoB,eAMpB,gBAAe,UASf,mBAAkB,aAQlB,wBAAuB,kBAQvB,6BAA4B,uBAQ5B,gCAA+B,0BAQ/B,gCAA+B,0BAQ/B,sBAAqB,gBAQrB,oBAAmB,cAQnB,oCAAmC,8BAQnC,6BAA4B,uBAQ5B,gCAA+B,0BAmC/B,4BAA2B,sBAU3B,0BAAyB,oBAQzB,8BAA6B,wBAQ7B,uBAAsB,iBAQtB,0BAAyB,sCCjUjC,OAAO,eAAe,GAAS,aAAc,CAAE,MAAO,EAAK,CAAC,EACpD,gBAAoB,OAK5B,IAAM,gBACF,EACJ,eAAe,EAAY,EAAG,CAC1B,GAAI,CAAC,EACD,OAAQ,GAAQ,cACP,SACD,GAAoB,KAAa,mEAC5B,aACL,UACC,QACD,GAAoB,KAAa,mEAC5B,aACL,UACC,UACD,GAAoB,KAAa,mEAA0B,aAC3D,UACC,QACD,GAAoB,KAAa,mEAA0B,aAC3D,cAEA,GAAoB,KAAa,mEAC5B,aACL,MAGZ,OAAO,EAAiB,EAEpB,gBAAe,qBCjCvB,OAAO,eAAe,GAAS,aAAc,CAAE,MAAO,EAAK,CAAC,EACpD,iBAAwB,iBAAqB,OAKrD,IAAM,GAAgB,CAAC,IAAmB,CAGtC,OAAQ,OACC,MACD,MAAO,YACN,MACD,MAAO,YACN,MACD,MAAO,gBAEP,OAAO,IAGX,iBAAgB,GACxB,IAAM,GAAgB,CAAC,IAAiB,CAGpC,OAAQ,OACC,QACD,MAAO,cACN,QACD,MAAO,kBAEP,OAAO,IAGX,iBAAgB,qBC7BxB,OAAO,eAAe,GAAS,aAAc,CAAE,MAAO,EAAK,CAAC,EACpD,gBAAoB,OAC5B,IAAM,OACA,WACA,QACA,QAKN,MAAM,EAAa,CACf,MAAM,CAAC,EAAS,CAMZ,MAAO,CAAE,WALU,EACd,GAAU,iBAAkB,EAAG,GAAK,UAAU,GAC9C,GAAU,iBAAkB,EAAG,GAAQ,gBAAgB,EAAG,GAAK,MAAM,CAAC,GACtE,GAAU,eAAgB,EAAG,GAAe,cAAc,CAC/D,CACoB,EAE5B,CACQ,gBAAe,IAAI,qBCpB3B,OAAO,eAAe,GAAS,aAAc,CAAE,MAAO,EAAK,CAAC,EACpD,cAAkB,OAC1B,IAAM,OACA,WACA,QAKN,MAAM,EAAW,CACb,MAAM,CAAC,EAAS,CAKZ,MAAO,CAAE,WAJU,EACd,GAAU,eAAgB,EAAG,GAAQ,gBAAgB,EAAG,GAAK,UAAU,CAAC,GACxE,GAAU,kBAAmB,EAAG,GAAK,SAAS,CACnD,CACoB,EAE5B,CACQ,cAAa,IAAI,qBClBzB,OAAO,eAAe,GAAS,aAAc,CAAE,MAAO,EAAK,CAAC,EACpD,mBAAuB,OAC/B,IAAM,OACA,MACA,WAKN,MAAM,EAAgB,CAClB,MAAM,CAAC,EAAS,CACZ,IAAM,EAAa,EACd,EAAU,kBAAmB,QAAQ,KACrC,EAAU,8BAA+B,QAAQ,OACjD,EAAU,8BAA+B,QAAQ,UACjD,EAAU,2BAA4B,CACnC,QAAQ,KAAK,GACb,GAAG,QAAQ,SACX,GAAG,QAAQ,KAAK,MAAM,CAAC,CAC3B,GACC,EAAU,8BAA+B,QAAQ,SAAS,MAC1D,EAAU,2BAA4B,UACtC,EAAU,kCAAmC,SAClD,EACA,GAAI,QAAQ,KAAK,OAAS,EACtB,EAAW,EAAU,sBAAwB,QAAQ,KAAK,GAE9D,GAAI,CACA,IAAM,EAAW,GAAG,SAAS,EAC7B,EAAW,EAAU,oBAAsB,EAAS,SAExD,MAAO,EAAG,CACN,GAAM,KAAK,MAAM,kCAAkC,GAAG,EAE1D,MAAO,CAAE,YAAW,EAE5B,CACQ,mBAAkB,IAAI,qBCrC9B,OAAO,eAAe,GAAS,aAAc,CAAE,MAAO,EAAK,CAAC,EACpD,6BAAiC,OACzC,IAAM,OACA,eAIN,MAAM,EAA0B,CAC5B,MAAM,CAAC,EAAS,CACZ,MAAO,CACH,WAAY,EACP,GAAU,2BAA4B,EAAG,GAAS,YAAY,CACnE,CACJ,EAER,CAIQ,6BAA4B,IAAI,oBCnBxC,OAAO,eAAe,EAAS,aAAc,CAAE,MAAO,EAAK,CAAC,EACpD,4BAAoC,kBAA0B,aAAqB,eAAoB,OAC/G,IAAI,QACJ,OAAO,eAAe,EAAS,eAAgB,CAAE,WAAY,GAAM,IAAK,QAAS,EAAG,CAAE,OAAO,GAAe,aAAgB,CAAC,EAC7H,IAAI,QACJ,OAAO,eAAe,EAAS,aAAc,CAAE,WAAY,GAAM,IAAK,QAAS,EAAG,CAAE,OAAO,GAAa,WAAc,CAAC,EACvH,IAAI,QACJ,OAAO,eAAe,EAAS,kBAAmB,CAAE,WAAY,GAAM,IAAK,QAAS,EAAG,CAAE,OAAO,GAAkB,gBAAmB,CAAC,EACtI,IAAI,QACJ,OAAO,eAAe,EAAS,4BAA6B,CAAE,WAAY,GAAM,IAAK,QAAS,EAAG,CAAE,OAAO,GAA4B,0BAA6B,CAAC,mBCbpK,OAAO,eAAe,EAAS,aAAc,CAAE,MAAO,EAAK,CAAC,EACpD,4BAAoC,kBAA0B,aAAqB,eAAoB,OAK/G,IAAI,OACJ,OAAO,eAAe,EAAS,eAAgB,CAAE,WAAY,GAAM,IAAK,QAAS,EAAG,CAAE,OAAO,EAAO,aAAgB,CAAC,EACrH,OAAO,eAAe,EAAS,aAAc,CAAE,WAAY,GAAM,IAAK,QAAS,EAAG,CAAE,OAAO,EAAO,WAAc,CAAC,EACjH,OAAO,eAAe,EAAS,kBAAmB,CAAE,WAAY,GAAM,IAAK,QAAS,EAAG,CAAE,OAAO,EAAO,gBAAmB,CAAC,EAC3H,OAAO,eAAe,EAAS,4BAA6B,CAAE,WAAY,GAAM,IAAK,QAAS,EAAG,CAAE,OAAO,EAAO,0BAA6B,CAAC,oBCN/I,OAAO,eAAe,GAAS,aAAc,CAAE,MAAO,EAAK,CAAC,EACpD,gBAAuB,gBAAoB,OACnD,MAAM,EAAa,CACf,MAAM,EAAG,CACL,MAAO,CACH,WAAY,CAAC,CACjB,EAER,CACQ,gBAAe,GACf,gBAAe,IAAI,oBCV3B,OAAO,eAAe,EAAS,aAAc,CAAE,MAAO,EAAK,CAAC,EACpD,eAAuB,4BAAoC,kBAA0B,aAAqB,eAAuB,cAAmB,OAC5J,IAAI,QACJ,OAAO,eAAe,EAAS,cAAe,CAAE,WAAY,GAAM,IAAK,QAAS,EAAG,CAAE,OAAO,GAAc,YAAe,CAAC,EAC1H,IAAI,OACJ,OAAO,eAAe,EAAS,eAAgB,CAAE,WAAY,GAAM,IAAK,QAAS,EAAG,CAAE,OAAO,EAAW,aAAgB,CAAC,EACzH,OAAO,eAAe,EAAS,aAAc,CAAE,WAAY,GAAM,IAAK,QAAS,EAAG,CAAE,OAAO,EAAW,WAAc,CAAC,EACrH,OAAO,eAAe,EAAS,kBAAmB,CAAE,WAAY,GAAM,IAAK,QAAS,EAAG,CAAE,OAAO,EAAW,gBAAmB,CAAC,EAC/H,OAAO,eAAe,EAAS,4BAA6B,CAAE,WAAY,GAAM,IAAK,QAAS,EAAG,CAAE,OAAO,EAAW,0BAA6B,CAAC,EACnJ,IAAI,QACJ,OAAO,eAAe,EAAS,eAAgB,CAAE,WAAY,GAAM,IAAK,QAAS,EAAG,CAAE,OAAO,GAAe,aAAgB,CAAC,mBCV7H,OAAO,eAAe,EAAS,aAAc,CAAE,MAAO,EAAK,CAAC,EACpD,qBAA6B,gBAAwB,kBAA0B,yBAAiC,4BAAoC,kBAA0B,aAAqB,eAAuB,cAAsB,kBAAuB,OAC/Q,IAAI,QACJ,OAAO,eAAe,EAAS,kBAAmB,CAAE,WAAY,GAAM,IAAK,QAAS,EAAG,CAAE,OAAO,GAAmB,gBAAmB,CAAC,EACvI,IAAI,OACJ,OAAO,eAAe,EAAS,cAAe,CAAE,WAAY,GAAM,IAAK,QAAS,EAAG,CAAE,OAAO,EAAY,YAAe,CAAC,EACxH,OAAO,eAAe,EAAS,eAAgB,CAAE,WAAY,GAAM,IAAK,QAAS,EAAG,CAAE,OAAO,EAAY,aAAgB,CAAC,EAC1H,OAAO,eAAe,EAAS,aAAc,CAAE,WAAY,GAAM,IAAK,QAAS,EAAG,CAAE,OAAO,EAAY,WAAc,CAAC,EACtH,OAAO,eAAe,EAAS,kBAAmB,CAAE,WAAY,GAAM,IAAK,QAAS,EAAG,CAAE,OAAO,EAAY,gBAAmB,CAAC,EAChI,OAAO,eAAe,EAAS,4BAA6B,CAAE,WAAY,GAAM,IAAK,QAAS,EAAG,CAAE,OAAO,EAAY,0BAA6B,CAAC,EACpJ,IAAI,QACJ,OAAO,eAAe,EAAS,yBAA0B,CAAE,WAAY,GAAM,IAAK,QAAS,EAAG,CAAE,OAAO,GAAe,uBAA0B,CAAC,EACjJ,OAAO,eAAe,EAAS,kBAAmB,CAAE,WAAY,GAAM,IAAK,QAAS,EAAG,CAAE,OAAO,GAAe,gBAAmB,CAAC,EACnI,OAAO,eAAe,EAAS,gBAAiB,CAAE,WAAY,GAAM,IAAK,QAAS,EAAG,CAAE,OAAO,GAAe,cAAiB,CAAC,EAC/H,IAAI,QACJ,OAAO,eAAe,EAAS,qBAAsB,CAAE,WAAY,GAAM,IAAK,QAAS,EAAG,CAAE,OAAO,GAAuB,mBAAsB,CAAC,oBCfjJ,OAAO,eAAe,GAAS,aAAc,CAAE,MAAO,EAAK,CAAC,EACpD,sBAA0B,OAE1B,sBAAqB,8BCH7B,OAAO,eAAe,GAAS,aAAc,CAAE,MAAO,EAAK,CAAC,EACpD,YAAgB,OACxB,IAAM,MACA,MACA,OACA,QAIN,MAAM,EAAS,CAGX,aACA,KACA,kBACA,WAAa,CAAC,EACd,MAAQ,CAAC,EACT,OAAS,CAAC,EACV,UACA,SACA,qBACA,wBAA0B,EAC1B,oBAAsB,EACtB,mBAAqB,EACrB,iBAAmB,EACnB,KACA,OAAS,CACL,KAAM,EAAM,eAAe,KAC/B,EACA,QAAU,CAAC,EAAG,CAAC,EACf,OAAS,GACT,UAAY,CAAC,GAAI,EAAE,EACnB,eACA,YACA,2BACA,kBACA,sBACA,mBACA,mBAIA,WAAW,CAAC,EAAM,CACd,IAAM,EAAM,KAAK,IAAI,EAarB,GAZA,KAAK,aAAe,EAAK,YACzB,KAAK,sBAAwB,EAAO,cAAc,IAAI,EACtD,KAAK,mBACD,GAAO,KAAK,sBAAwB,EAAO,cAAc,YAC7D,KAAK,mBAAqB,EAAK,WAAa,KAC5C,KAAK,YAAc,EAAK,WACxB,KAAK,2BACD,KAAK,YAAY,2BAA6B,EAClD,KAAK,eAAiB,EAAK,cAC3B,KAAK,KAAO,EAAK,KACjB,KAAK,kBAAoB,EAAK,kBAC9B,KAAK,KAAO,EAAK,KACb,EAAK,MACL,QAAW,KAAQ,EAAK,MACpB,KAAK,QAAQ,CAAI,EAOzB,GAJA,KAAK,UAAY,KAAK,SAAS,EAAK,WAAa,CAAG,EACpD,KAAK,SAAW,EAAK,SACrB,KAAK,qBAAuB,EAAK,MACjC,KAAK,kBAAoB,EAAK,iBAC1B,EAAK,YAAc,KACnB,KAAK,cAAc,EAAK,UAAU,EAEtC,KAAK,eAAe,QAAQ,KAAM,EAAK,OAAO,EAElD,WAAW,EAAG,CACV,OAAO,KAAK,aAEhB,YAAY,CAAC,EAAK,EAAO,CACrB,GAAI,GAAS,MAAQ,KAAK,aAAa,EACnC,OAAO,KACX,GAAI,EAAI,SAAW,EAEf,OADA,EAAM,KAAK,KAAK,0BAA0B,GAAK,EACxC,KAEX,GAAI,EAAE,EAAG,EAAO,kBAAkB,CAAK,EAEnC,OADA,EAAM,KAAK,KAAK,wCAAwC,GAAK,EACtD,KAEX,IAAQ,uBAAwB,KAAK,YAC/B,EAAW,CAAC,OAAO,UAAU,eAAe,KAAK,KAAK,WAAY,CAAG,EAC3E,GAAI,IAAwB,QACxB,KAAK,kBAAoB,GACzB,EAEA,OADA,KAAK,0BACE,KAGX,GADA,KAAK,WAAW,GAAO,KAAK,gBAAgB,CAAK,EAC7C,EACA,KAAK,mBAET,OAAO,KAEX,aAAa,CAAC,EAAY,CACtB,QAAW,KAAO,EACd,GAAI,OAAO,UAAU,eAAe,KAAK,EAAY,CAAG,EACpD,KAAK,aAAa,EAAK,EAAW,EAAI,EAG9C,OAAO,KASX,QAAQ,CAAC,EAAM,EAAuB,EAAW,CAC7C,GAAI,KAAK,aAAa,EAClB,OAAO,KACX,IAAQ,mBAAoB,KAAK,YACjC,GAAI,IAAoB,EAGpB,OAFA,EAAM,KAAK,KAAK,oBAAoB,EACpC,KAAK,sBACE,KAEX,GAAI,IAAoB,QACpB,KAAK,OAAO,QAAU,EAAiB,CACvC,GAAI,KAAK,sBAAwB,EAC7B,EAAM,KAAK,MAAM,wBAAwB,EAE7C,KAAK,OAAO,MAAM,EAClB,KAAK,sBAET,IAAK,EAAG,EAAO,aAAa,CAAqB,EAAG,CAChD,GAAI,EAAE,EAAG,EAAO,aAAa,CAAS,EAClC,EAAY,EAEhB,EAAwB,OAE5B,IAAM,GAAa,EAAG,EAAO,oBAAoB,CAAqB,GAC9D,+BAAgC,KAAK,YACvC,EAAa,CAAC,EAChB,EAAyB,EACzB,EAAuB,EAC3B,QAAW,KAAQ,EAAW,CAC1B,GAAI,CAAC,OAAO,UAAU,eAAe,KAAK,EAAW,CAAI,EACrD,SAEJ,IAAM,EAAU,EAAU,GAC1B,GAAI,IAAgC,QAChC,GAAwB,EAA6B,CACrD,IACA,SAEJ,EAAW,GAAQ,KAAK,gBAAgB,CAAO,EAC/C,IAQJ,OANA,KAAK,OAAO,KAAK,CACb,OACA,aACA,KAAM,KAAK,SAAS,CAAS,EAC7B,wBACJ,CAAC,EACM,KAEX,OAAO,CAAC,EAAM,CACV,GAAI,KAAK,aAAa,EAClB,OAAO,KACX,IAAQ,kBAAmB,KAAK,YAChC,GAAI,IAAmB,EAEnB,OADA,KAAK,qBACE,KAEX,GAAI,IAAmB,QAAa,KAAK,MAAM,QAAU,EAAgB,CACrE,GAAI,KAAK,qBAAuB,EAC5B,EAAM,KAAK,MAAM,uBAAuB,EAE5C,KAAK,MAAM,MAAM,EACjB,KAAK,qBAET,IAAQ,8BAA+B,KAAK,YACtC,GAAa,EAAG,EAAO,oBAAoB,EAAK,UAAU,EAC1D,EAAa,CAAC,EAChB,EAAyB,EACzB,EAAsB,EAC1B,QAAW,KAAQ,EAAW,CAC1B,GAAI,CAAC,OAAO,UAAU,eAAe,KAAK,EAAW,CAAI,EACrD,SAEJ,IAAM,EAAU,EAAU,GAC1B,GAAI,IAA+B,QAC/B,GAAuB,EAA4B,CACnD,IACA,SAEJ,EAAW,GAAQ,KAAK,gBAAgB,CAAO,EAC/C,IAEJ,IAAM,EAAgB,CAAE,QAAS,EAAK,OAAQ,EAC9C,GAAI,EAAsB,EACtB,EAAc,WAAa,EAE/B,GAAI,EAAyB,EACzB,EAAc,uBAAyB,EAG3C,OADA,KAAK,MAAM,KAAK,CAAa,EACtB,KAEX,QAAQ,CAAC,EAAO,CACZ,QAAW,KAAQ,EACf,KAAK,QAAQ,CAAI,EAErB,OAAO,KAEX,SAAS,CAAC,EAAQ,CACd,GAAI,KAAK,aAAa,EAClB,OAAO,KACX,GAAI,EAAO,OAAS,EAAM,eAAe,MACrC,OAAO,KACX,GAAI,KAAK,OAAO,OAAS,EAAM,eAAe,GAC1C,OAAO,KACX,IAAM,EAAY,CAAE,KAAM,EAAO,IAAK,EAKtC,GAAI,EAAO,OAAS,EAAM,eAAe,OACrC,GAAI,OAAO,EAAO,UAAY,SAC1B,EAAU,QAAU,EAAO,QAE1B,QAAI,EAAO,SAAW,KACvB,EAAM,KAAK,KAAK,4CAA4C,OAAO,EAAO,6BAA6B,EAI/G,OADA,KAAK,OAAS,EACP,KAEX,UAAU,CAAC,EAAM,CACb,GAAI,KAAK,aAAa,EAClB,OAAO,KAEX,OADA,KAAK,KAAO,EACL,KAEX,GAAG,CAAC,EAAS,CACT,GAAI,KAAK,aAAa,EAAG,CACrB,EAAM,KAAK,MAAM,GAAG,KAAK,QAAQ,KAAK,aAAa,WAAW,KAAK,aAAa,kDAAkD,EAClI,OAIJ,GAFA,KAAK,QAAU,KAAK,SAAS,CAAO,EACpC,KAAK,WAAa,EAAG,EAAO,gBAAgB,KAAK,UAAW,KAAK,OAAO,EACpE,KAAK,UAAU,GAAK,EACpB,EAAM,KAAK,KAAK,sFAAuF,KAAK,UAAW,KAAK,OAAO,EACnI,KAAK,QAAU,KAAK,UAAU,MAAM,EACpC,KAAK,UAAY,CAAC,EAAG,CAAC,EAE1B,GAAI,KAAK,oBAAsB,EAC3B,EAAM,KAAK,KAAK,WAAW,KAAK,4DAA4D,EAEhG,GAAI,KAAK,mBAAqB,EAC1B,EAAM,KAAK,KAAK,WAAW,KAAK,yDAAyD,EAE7F,GAAI,KAAK,eAAe,SACpB,KAAK,eAAe,SAAS,IAAI,EAErC,KAAK,oBAAoB,EACzB,KAAK,OAAS,GACd,KAAK,eAAe,MAAM,IAAI,EAElC,QAAQ,CAAC,EAAK,CACV,GAAI,OAAO,IAAQ,UAAY,GAAO,EAAO,cAAc,IAAI,EAG3D,OAAQ,EAAG,EAAO,QAAQ,EAAM,KAAK,kBAAkB,EAE3D,GAAI,OAAO,IAAQ,SACf,OAAQ,EAAG,EAAO,gBAAgB,CAAG,EAEzC,GAAI,aAAe,KACf,OAAQ,EAAG,EAAO,gBAAgB,EAAI,QAAQ,CAAC,EAEnD,IAAK,EAAG,EAAO,mBAAmB,CAAG,EACjC,OAAO,EAEX,GAAI,KAAK,mBAGL,OAAQ,EAAG,EAAO,gBAAgB,KAAK,IAAI,CAAC,EAEhD,IAAM,EAAa,EAAO,cAAc,IAAI,EAAI,KAAK,sBACrD,OAAQ,EAAG,EAAO,YAAY,KAAK,WAAY,EAAG,EAAO,gBAAgB,CAAU,CAAC,EAExF,WAAW,EAAG,CACV,OAAO,KAAK,SAAW,GAE3B,eAAe,CAAC,EAAW,EAAM,CAC7B,IAAM,EAAa,CAAC,EACpB,GAAI,OAAO,IAAc,SACrB,EAAW,EAAuB,wBAA0B,EAE3D,QAAI,EAAW,CAChB,GAAI,EAAU,KACV,EAAW,EAAuB,qBAAuB,EAAU,KAAK,SAAS,EAEhF,QAAI,EAAU,KACf,EAAW,EAAuB,qBAAuB,EAAU,KAEvE,GAAI,EAAU,QACV,EAAW,EAAuB,wBAA0B,EAAU,QAE1E,GAAI,EAAU,MACV,EAAW,EAAuB,2BAA6B,EAAU,MAIjF,GAAI,EAAW,EAAuB,sBAAwB,EAAW,EAAuB,wBAC5F,KAAK,SAAS,GAAQ,mBAAoB,EAAY,CAAI,EAG1D,OAAM,KAAK,KAAK,iCAAiC,GAAW,KAGhE,SAAQ,EAAG,CACX,OAAO,KAAK,aAEZ,MAAK,EAAG,CACR,OAAO,KAAK,UAEZ,uBAAsB,EAAG,CACzB,OAAO,KAAK,2BAEZ,mBAAkB,EAAG,CACrB,OAAO,KAAK,uBAEZ,kBAAiB,EAAG,CACpB,OAAO,KAAK,mBAEhB,YAAY,EAAG,CACX,GAAI,KAAK,OAAQ,CACb,IAAM,EAAY,MAAM,+CAA+C,KAAK,aAAa,oBAAoB,KAAK,aAAa,SAAS,EACxI,EAAM,KAAK,KAAK,wDAAwD,KAAK,aAAa,oBAAoB,KAAK,aAAa,UAAW,CAAK,EAEpJ,OAAO,KAAK,OAKhB,oBAAoB,CAAC,EAAO,EAAO,CAC/B,GAAI,EAAM,QAAU,EAChB,OAAO,EAEX,OAAO,EAAM,UAAU,EAAG,CAAK,EAcnC,eAAe,CAAC,EAAO,CACnB,IAAM,EAAQ,KAAK,2BAEnB,GAAI,GAAS,EAGT,OADA,EAAM,KAAK,KAAK,+CAA+C,GAAO,EAC/D,EAGX,GAAI,OAAO,IAAU,SACjB,OAAO,KAAK,qBAAqB,EAAO,CAAK,EAGjD,GAAI,MAAM,QAAQ,CAAK,EACnB,OAAO,EAAM,IAAI,KAAO,OAAO,IAAQ,SAAW,KAAK,qBAAqB,EAAK,CAAK,EAAI,CAAG,EAGjG,OAAO,EAEf,CACQ,YAAW,oBC7XnB,OAAO,eAAe,GAAS,aAAc,CAAE,MAAO,EAAK,CAAC,EACpD,oBAAwB,OAKhC,IAAI,IACH,QAAS,CAAC,EAAkB,CAKzB,EAAiB,EAAiB,WAAgB,GAAK,aAKvD,EAAiB,EAAiB,OAAY,GAAK,SAKnD,EAAiB,EAAiB,mBAAwB,GAAK,uBAChE,GAA2B,sBAA6B,oBAAmB,CAAC,EAAE,mBCvBjF,OAAO,eAAe,GAAS,aAAc,CAAE,MAAO,EAAK,CAAC,EACpD,oBAAwB,OAChC,IAAM,OAEN,MAAM,EAAiB,CACnB,YAAY,EAAG,CACX,MAAO,CACH,SAAU,GAAU,iBAAiB,UACzC,EAEJ,QAAQ,EAAG,CACP,MAAO,mBAEf,CACQ,oBAAmB,oBCd3B,OAAO,eAAe,GAAS,aAAc,CAAE,MAAO,EAAK,CAAC,EACpD,mBAAuB,OAC/B,IAAM,OAEN,MAAM,EAAgB,CAClB,YAAY,EAAG,CACX,MAAO,CACH,SAAU,GAAU,iBAAiB,kBACzC,EAEJ,QAAQ,EAAG,CACP,MAAO,kBAEf,CACQ,mBAAkB,qBCd1B,OAAO,eAAe,GAAS,aAAc,CAAE,MAAO,EAAK,CAAC,EACpD,sBAA0B,OAClC,IAAM,MACA,OACA,OACA,OAKN,MAAM,EAAmB,CACrB,MACA,qBACA,wBACA,oBACA,uBACA,WAAW,CAAC,EAAQ,CAEhB,GADA,KAAK,MAAQ,EAAO,KAChB,CAAC,KAAK,OACL,EAAG,GAAO,oBAAwB,MAAM,wDAAwD,CAAC,EAClG,KAAK,MAAQ,IAAI,GAAkB,gBAEvC,KAAK,qBACD,EAAO,qBAAuB,IAAI,GAAkB,gBACxD,KAAK,wBACD,EAAO,wBAA0B,IAAI,GAAmB,iBAC5D,KAAK,oBACD,EAAO,oBAAsB,IAAI,GAAkB,gBACvD,KAAK,uBACD,EAAO,uBAAyB,IAAI,GAAmB,iBAE/D,YAAY,CAAC,EAAS,EAAS,EAAU,EAAU,EAAY,EAAO,CAClE,IAAM,EAAgB,EAAM,MAAM,eAAe,CAAO,EACxD,GAAI,CAAC,GAAiB,EAAE,EAAG,EAAM,oBAAoB,CAAa,EAC9D,OAAO,KAAK,MAAM,aAAa,EAAS,EAAS,EAAU,EAAU,EAAY,CAAK,EAE1F,GAAI,EAAc,SAAU,CACxB,GAAI,EAAc,WAAa,EAAM,WAAW,QAC5C,OAAO,KAAK,qBAAqB,aAAa,EAAS,EAAS,EAAU,EAAU,EAAY,CAAK,EAEzG,OAAO,KAAK,wBAAwB,aAAa,EAAS,EAAS,EAAU,EAAU,EAAY,CAAK,EAE5G,GAAI,EAAc,WAAa,EAAM,WAAW,QAC5C,OAAO,KAAK,oBAAoB,aAAa,EAAS,EAAS,EAAU,EAAU,EAAY,CAAK,EAExG,OAAO,KAAK,uBAAuB,aAAa,EAAS,EAAS,EAAU,EAAU,EAAY,CAAK,EAE3G,QAAQ,EAAG,CACP,MAAO,oBAAoB,KAAK,MAAM,SAAS,0BAA0B,KAAK,qBAAqB,SAAS,6BAA6B,KAAK,wBAAwB,SAAS,yBAAyB,KAAK,oBAAoB,SAAS,4BAA4B,KAAK,uBAAuB,SAAS,KAEnT,CACQ,sBAAqB,qBCnD7B,OAAO,eAAe,GAAS,aAAc,CAAE,MAAO,EAAK,CAAC,EACpD,4BAAgC,OACxC,IAAM,OACA,OAEN,MAAM,EAAyB,CAC3B,OACA,YACA,WAAW,CAAC,EAAQ,EAAG,CACnB,KAAK,OAAS,KAAK,WAAW,CAAK,EACnC,KAAK,YAAc,KAAK,MAAM,KAAK,OAAS,UAAU,EAE1D,YAAY,CAAC,EAAS,EAAS,CAC3B,MAAO,CACH,UAAW,EAAG,GAAM,gBAAgB,CAAO,GAAK,KAAK,YAAY,CAAO,EAAI,KAAK,YAC3E,GAAU,iBAAiB,mBAC3B,GAAU,iBAAiB,UACrC,EAEJ,QAAQ,EAAG,CACP,MAAO,qBAAqB,KAAK,UAErC,UAAU,CAAC,EAAO,CACd,GAAI,OAAO,IAAU,UAAY,MAAM,CAAK,EACxC,MAAO,GACX,OAAO,GAAS,EAAI,EAAI,GAAS,EAAI,EAAI,EAE7C,WAAW,CAAC,EAAS,CACjB,IAAI,EAAe,EACnB,QAAS,EAAI,EAAG,EAAI,EAAQ,OAAS,EAAG,IAAK,CACzC,IAAM,EAAM,EAAI,EACV,EAAO,SAAS,EAAQ,MAAM,EAAK,EAAM,CAAC,EAAG,EAAE,EACrD,GAAgB,EAAe,KAAU,EAE7C,OAAO,EAEf,CACQ,4BAA2B,qBCrCnC,OAAO,eAAe,GAAS,aAAc,CAAE,MAAO,EAAK,CAAC,EACpD,uBAA8B,qBAAyB,OAC/D,IAAM,OACA,MACA,OACA,OACA,OACA,QACF,GACH,QAAS,CAAC,EAAqB,CAC5B,EAAoB,UAAe,aACnC,EAAoB,SAAc,YAClC,EAAoB,qBAA0B,yBAC9C,EAAoB,oBAAyB,wBAC7C,EAAoB,wBAA6B,2BACjD,EAAoB,aAAkB,iBACvC,IAAwB,EAAsB,CAAC,EAAE,EACpD,IAAM,EAAgB,EAStB,SAAS,EAAiB,EAAG,CACzB,MAAO,CACH,QAAS,GAAoB,EAC7B,wBAAyB,MACzB,cAAe,CACX,2BAA4B,EAAG,EAAO,kBAAkB,mCAAmC,GAAK,IAChG,qBAAsB,EAAG,EAAO,kBAAkB,4BAA4B,GAAK,GACvF,EACA,WAAY,CACR,2BAA4B,EAAG,EAAO,kBAAkB,wCAAwC,GAAK,IACrG,qBAAsB,EAAG,EAAO,kBAAkB,iCAAiC,GAAK,IACxF,gBAAiB,EAAG,EAAO,kBAAkB,4BAA4B,GAAK,IAC9E,iBAAkB,EAAG,EAAO,kBAAkB,6BAA6B,GAAK,IAChF,6BAA8B,EAAG,EAAO,kBAAkB,2CAA2C,GAAK,IAC1G,4BAA6B,EAAG,EAAO,kBAAkB,0CAA0C,GAAK,GAC5G,CACJ,EAEI,qBAAoB,GAI5B,SAAS,EAAmB,EAAG,CAC3B,IAAM,GAAW,EAAG,EAAO,kBAAkB,qBAAqB,GAC9D,EAAoB,oBACxB,OAAQ,QACC,EAAoB,SACrB,OAAO,IAAI,GAAkB,qBAC5B,EAAoB,UACrB,OAAO,IAAI,GAAmB,sBAC7B,EAAoB,oBACrB,OAAO,IAAI,EAAqB,mBAAmB,CAC/C,KAAM,IAAI,GAAkB,eAChC,CAAC,OACA,EAAoB,qBACrB,OAAO,IAAI,EAAqB,mBAAmB,CAC/C,KAAM,IAAI,GAAmB,gBACjC,CAAC,OACA,EAAoB,aACrB,OAAO,IAAI,GAA2B,yBAAyB,GAA6B,CAAC,OAC5F,EAAoB,wBACrB,OAAO,IAAI,EAAqB,mBAAmB,CAC/C,KAAM,IAAI,GAA2B,yBAAyB,GAA6B,CAAC,CAChG,CAAC,UAGD,OADA,GAAM,KAAK,MAAM,8BAA8B,8BAAoC,EAAoB,uBAAuB,EACvH,IAAI,EAAqB,mBAAmB,CAC/C,KAAM,IAAI,GAAkB,eAChC,CAAC,GAGL,uBAAsB,GAC9B,SAAS,EAA4B,EAAG,CACpC,IAAM,GAAe,EAAG,EAAO,kBAAkB,yBAAyB,EAC1E,GAAI,GAAe,KAEf,OADA,GAAM,KAAK,MAAM,mDAAmD,IAAgB,EAC7E,EAEX,GAAI,EAAc,GAAK,EAAc,EAEjC,OADA,GAAM,KAAK,MAAM,2BAA2B,+DAAyE,IAAgB,EAC9H,EAEX,OAAO,qBCxFX,OAAO,eAAe,GAAS,aAAc,CAAE,MAAO,EAAK,CAAC,EACpD,qBAA4B,eAAsB,wCAA+C,iCAAqC,OAC9I,IAAM,QACA,MACE,iCAAgC,IAChC,wCAAuC,IAK/C,SAAS,EAAW,CAAC,EAAY,CAC7B,IAAM,EAAsB,CACxB,SAAU,EAAG,GAAS,qBAAqB,CAC/C,EACM,GAAkB,EAAG,GAAS,mBAAmB,EACjD,EAAS,OAAO,OAAO,CAAC,EAAG,EAAgB,EAAqB,CAAU,EAGhF,OAFA,EAAO,cAAgB,OAAO,OAAO,CAAC,EAAG,EAAe,cAAe,EAAW,eAAiB,CAAC,CAAC,EACrG,EAAO,WAAa,OAAO,OAAO,CAAC,EAAG,EAAe,WAAY,EAAW,YAAc,CAAC,CAAC,EACrF,EAEH,eAAc,GAMtB,SAAS,EAAiB,CAAC,EAAY,CACnC,IAAM,EAAa,OAAO,OAAO,CAAC,EAAG,EAAW,UAAU,EAmB1D,OAfA,EAAW,oBACP,EAAW,YAAY,qBACnB,EAAW,eAAe,sBACzB,EAAG,EAAO,kBAAkB,iCAAiC,IAC7D,EAAG,EAAO,kBAAkB,4BAA4B,GACjD,iCAIhB,EAAW,0BACP,EAAW,YAAY,2BACnB,EAAW,eAAe,4BACzB,EAAG,EAAO,kBAAkB,wCAAwC,IACpE,EAAG,EAAO,kBAAkB,mCAAmC,GACxD,wCACT,OAAO,OAAO,CAAC,EAAG,EAAY,CAAE,YAAW,CAAC,EAE/C,qBAAoB,qBChD5B,OAAO,eAAe,GAAS,aAAc,CAAE,MAAO,EAAK,CAAC,EACpD,0BAA8B,OACtC,IAAM,MACA,MAKN,MAAM,EAAuB,CACzB,oBACA,cACA,sBACA,qBACA,UACA,aAAe,GACf,eAAiB,CAAC,EAClB,OACA,cACA,mBAAqB,EACrB,WAAW,CAAC,EAAU,EAAQ,CAmB1B,GAlBA,KAAK,UAAY,EACjB,KAAK,oBACD,OAAO,GAAQ,qBAAuB,SAChC,EAAO,oBACL,EAAG,EAAO,kBAAkB,gCAAgC,GAAK,IAC7E,KAAK,cACD,OAAO,GAAQ,eAAiB,SAC1B,EAAO,cACL,EAAG,EAAO,kBAAkB,yBAAyB,GAAK,KACtE,KAAK,sBACD,OAAO,GAAQ,uBAAyB,SAClC,EAAO,sBACL,EAAG,EAAO,kBAAkB,yBAAyB,GAAK,KACtE,KAAK,qBACD,OAAO,GAAQ,sBAAwB,SACjC,EAAO,qBACL,EAAG,EAAO,kBAAkB,yBAAyB,GAAK,MACtE,KAAK,cAAgB,IAAI,EAAO,eAAe,KAAK,UAAW,IAAI,EAC/D,KAAK,oBAAsB,KAAK,cAChC,EAAM,KAAK,KAAK,mIAAmI,EACnJ,KAAK,oBAAsB,KAAK,cAGxC,UAAU,EAAG,CACT,GAAI,KAAK,cAAc,SACnB,OAAO,KAAK,cAAc,QAE9B,OAAO,KAAK,UAAU,EAG1B,OAAO,CAAC,EAAO,EAAgB,EAC/B,KAAK,CAAC,EAAM,CACR,GAAI,KAAK,cAAc,SACnB,OAEJ,IAAK,EAAK,YAAY,EAAE,WAAa,EAAM,WAAW,WAAa,EAC/D,OAEJ,KAAK,aAAa,CAAI,EAE1B,QAAQ,EAAG,CACP,OAAO,KAAK,cAAc,KAAK,EAEnC,SAAS,EAAG,CACR,OAAO,QAAQ,QAAQ,EAClB,KAAK,IAAM,CACZ,OAAO,KAAK,WAAW,EAC1B,EACI,KAAK,IAAM,CACZ,OAAO,KAAK,UAAU,EACzB,EACI,KAAK,IAAM,CACZ,OAAO,KAAK,UAAU,SAAS,EAClC,EAGL,YAAY,CAAC,EAAM,CACf,GAAI,KAAK,eAAe,QAAU,KAAK,cAAe,CAElD,GAAI,KAAK,qBAAuB,EAC5B,EAAM,KAAK,MAAM,sCAAsC,EAE3D,KAAK,qBACL,OAEJ,GAAI,KAAK,mBAAqB,EAE1B,EAAM,KAAK,KAAK,WAAW,KAAK,uDAAuD,EACvF,KAAK,mBAAqB,EAE9B,KAAK,eAAe,KAAK,CAAI,EAC7B,KAAK,iBAAiB,EAO1B,SAAS,EAAG,CACR,OAAO,IAAI,QAAQ,CAAC,EAAS,IAAW,CACpC,IAAM,EAAW,CAAC,EAEZ,EAAQ,KAAK,KAAK,KAAK,eAAe,OAAS,KAAK,mBAAmB,EAC7E,QAAS,EAAI,EAAG,EAAI,EAAO,EAAI,EAAG,IAC9B,EAAS,KAAK,KAAK,eAAe,CAAC,EAEvC,QAAQ,IAAI,CAAQ,EACf,KAAK,IAAM,CACZ,EAAQ,EACX,EACI,MAAM,CAAM,EACpB,EAEL,cAAc,EAAG,CAEb,GADA,KAAK,YAAY,EACb,KAAK,eAAe,SAAW,EAC/B,OAAO,QAAQ,QAAQ,EAE3B,OAAO,IAAI,QAAQ,CAAC,EAAS,IAAW,CACpC,IAAM,EAAQ,WAAW,IAAM,CAE3B,EAAW,MAAM,SAAS,CAAC,GAC5B,KAAK,oBAAoB,EAE5B,EAAM,QAAQ,MAAM,EAAG,EAAO,iBAAiB,EAAM,QAAQ,OAAO,CAAC,EAAG,IAAM,CAI1E,IAAI,EACJ,GAAI,KAAK,eAAe,QAAU,KAAK,oBACnC,EAAQ,KAAK,eACb,KAAK,eAAiB,CAAC,EAGvB,OAAQ,KAAK,eAAe,OAAO,EAAG,KAAK,mBAAmB,EAElE,IAAM,EAAW,IAAM,KAAK,UAAU,OAAO,EAAO,KAAU,CAE1D,GADA,aAAa,CAAK,EACd,EAAO,OAAS,EAAO,iBAAiB,QACxC,EAAQ,EAGR,OAAO,EAAO,OACN,MAAM,wCAAwC,CAAC,EAE9D,EACG,EAAmB,KACvB,QAAS,EAAI,EAAG,EAAM,EAAM,OAAQ,EAAI,EAAK,IAAK,CAC9C,IAAM,EAAO,EAAM,GACnB,GAAI,EAAK,SAAS,wBACd,EAAK,SAAS,uBACd,IAAqB,CAAC,EACtB,EAAiB,KAAK,EAAK,SAAS,uBAAuB,CAAC,EAIpE,GAAI,IAAqB,KACrB,EAAS,EAGT,aAAQ,IAAI,CAAgB,EAAE,KAAK,EAAU,KAAO,EAC/C,EAAG,EAAO,oBAAoB,CAAG,EAClC,EAAO,CAAG,EACb,EAER,EACJ,EAEL,gBAAgB,EAAG,CACf,GAAI,KAAK,aACL,OACJ,IAAM,EAAQ,IAAM,CAChB,KAAK,aAAe,GACpB,KAAK,eAAe,EACf,QAAQ,IAAM,CAEf,GADA,KAAK,aAAe,GAChB,KAAK,eAAe,OAAS,EAC7B,KAAK,YAAY,EACjB,KAAK,iBAAiB,EAE7B,EACI,MAAM,KAAK,CACZ,KAAK,aAAe,IACnB,EAAG,EAAO,oBAAoB,CAAC,EACnC,GAGL,GAAI,KAAK,eAAe,QAAU,KAAK,oBACnC,OAAO,EAAM,EAEjB,GAAI,KAAK,SAAW,OAChB,OAGJ,GAFA,KAAK,OAAS,WAAW,IAAM,EAAM,EAAG,KAAK,qBAAqB,EAE9D,OAAO,KAAK,SAAW,SACvB,KAAK,OAAO,MAAM,EAG1B,WAAW,EAAG,CACV,GAAI,KAAK,SAAW,OAChB,aAAa,KAAK,MAAM,EACxB,KAAK,OAAS,OAG1B,CACQ,0BAAyB,qBC7MjC,OAAO,eAAe,GAAS,aAAc,CAAE,MAAO,EAAK,CAAC,EACpD,sBAA0B,OAClC,IAAM,QACN,MAAM,WAA2B,GAAyB,sBAAuB,CAC7E,UAAU,EAAG,EACjB,CACQ,sBAAqB,qBCN7B,OAAO,eAAe,GAAS,aAAc,CAAE,MAAO,EAAK,CAAC,EACpD,qBAAyB,OACjC,IAAM,GAAgB,EAChB,GAAiB,GACvB,MAAM,EAAkB,CAKpB,gBAAkB,GAAe,EAAc,EAK/C,eAAiB,GAAe,EAAa,CACjD,CACQ,qBAAoB,GAC5B,IAAM,EAAgB,OAAO,YAAY,EAAc,EACvD,SAAS,EAAc,CAAC,EAAO,CAC3B,OAAO,QAAmB,EAAG,CACzB,QAAS,EAAI,EAAG,EAAI,EAAQ,EAAG,IAG3B,EAAc,cAAe,KAAK,OAAO,EAAI,aAAa,EAAG,EAAI,CAAC,EAGtE,QAAS,EAAI,EAAG,EAAI,EAAO,IACvB,GAAI,EAAc,GAAK,EACnB,MAEC,QAAI,IAAM,EAAQ,EACnB,EAAc,EAAQ,GAAK,EAGnC,OAAO,EAAc,SAAS,MAAO,EAAG,CAAK,qBClCrD,OAAO,eAAe,EAAS,aAAc,CAAE,MAAO,EAAK,CAAC,EACpD,oBAA4B,qBAA0B,OAC9D,IAAI,QACJ,OAAO,eAAe,EAAS,qBAAsB,CAAE,WAAY,GAAM,IAAK,QAAS,EAAG,CAAE,OAAO,GAAqB,mBAAsB,CAAC,EAC/I,IAAI,QACJ,OAAO,eAAe,EAAS,oBAAqB,CAAE,WAAY,GAAM,IAAK,QAAS,EAAG,CAAE,OAAO,GAAoB,kBAAqB,CAAC,oBCL5I,OAAO,eAAe,GAAS,aAAc,CAAE,MAAO,EAAK,CAAC,EACpD,qBAA4B,sBAA0B,OAC9D,IAAI,QACJ,OAAO,eAAe,GAAS,qBAAsB,CAAE,WAAY,GAAM,IAAK,QAAS,EAAG,CAAE,OAAO,GAAO,mBAAsB,CAAC,EACjI,OAAO,eAAe,GAAS,oBAAqB,CAAE,WAAY,GAAM,IAAK,QAAS,EAAG,CAAE,OAAO,GAAO,kBAAqB,CAAC,oBCJ/H,OAAO,eAAe,GAAS,aAAc,CAAE,MAAO,EAAK,CAAC,EACpD,gCAAuC,6BAAoC,kCAAyC,gCAAoC,OAWxJ,gCAA+B,0BAM/B,kCAAiC,4BAMjC,6BAA4B,qBAQ5B,gCAA+B,0CCpCvC,OAAO,eAAe,GAAS,aAAc,CAAE,MAAO,EAAK,CAAC,EACpD,iBAAqB,OAC7B,IAAM,OACA,OAKN,MAAM,EAAc,CAChB,aACA,UACA,WAAW,CAAC,EAAO,CACf,KAAK,aAAe,EAAM,cAAc,EAAU,6BAA8B,CAC5E,KAAM,SACN,YAAa,8BACjB,CAAC,EACD,KAAK,UAAY,EAAM,oBAAoB,EAAU,0BAA2B,CAC5E,KAAM,SACN,YAAa,qCACjB,CAAC,EAEL,SAAS,CAAC,EAAe,EAAkB,CACvC,IAAM,EAAsB,GAAyB,CAAgB,EAKrE,GAJA,KAAK,aAAa,IAAI,EAAG,EACpB,EAAU,8BAA+B,GAAa,CAAa,GACnE,EAAU,gCAAiC,CAChD,CAAC,EACG,IAAqB,GAAU,iBAAiB,WAChD,MAAO,IAAM,GAEjB,IAAM,EAAqB,EACtB,EAAU,gCAAiC,CAChD,EAEA,OADA,KAAK,UAAU,IAAI,EAAG,CAAkB,EACjC,IAAM,CACT,KAAK,UAAU,IAAI,GAAI,CAAkB,GAGrD,CACQ,iBAAgB,GACxB,SAAS,EAAY,CAAC,EAAmB,CACrC,GAAI,CAAC,EACD,MAAO,OAEX,GAAI,EAAkB,SAClB,MAAO,SAEX,MAAO,QAEX,SAAS,EAAwB,CAAC,EAAU,CACxC,OAAQ,QACC,GAAU,iBAAiB,mBAC5B,MAAO,yBACN,GAAU,iBAAiB,OAC5B,MAAO,mBACN,GAAU,iBAAiB,WAC5B,MAAO,2BCpDnB,OAAO,eAAe,GAAS,aAAc,CAAE,MAAO,EAAK,CAAC,EACpD,WAAe,OAEf,WAAU,0BCHlB,OAAO,eAAe,GAAS,aAAc,CAAE,MAAO,EAAK,CAAC,EACpD,UAAc,OACtB,IAAM,MACA,OACA,QACA,QACA,QACA,QACA,QAIN,MAAM,EAAO,CACT,SACA,eACA,YACA,aACA,qBACA,UACA,eACA,eAIA,WAAW,CAAC,EAAsB,EAAQ,EAAU,EAAe,CAC/D,IAAM,GAAe,EAAG,GAAU,aAAa,CAAM,EACrD,KAAK,SAAW,EAAY,QAC5B,KAAK,eAAiB,EAAY,cAClC,KAAK,YAAc,EAAY,WAC/B,KAAK,aAAe,EAAO,aAAe,IAAI,GAAW,kBACzD,KAAK,UAAY,EACjB,KAAK,eAAiB,EACtB,KAAK,qBAAuB,EAC5B,IAAM,EAAQ,EAAY,cACpB,EAAY,cAAc,SAAS,2BAA4B,GAAU,OAAO,EAChF,EAAI,gBAAgB,EAC1B,KAAK,eAAiB,IAAI,GAAgB,cAAc,CAAK,EAMjE,SAAS,CAAC,EAAM,EAAU,CAAC,EAAG,EAAU,EAAI,QAAQ,OAAO,EAAG,CAE1D,GAAI,EAAQ,KACR,EAAU,EAAI,MAAM,WAAW,CAAO,EAE1C,IAAM,EAAa,EAAI,MAAM,QAAQ,CAAO,EAC5C,IAAK,EAAG,GAAO,qBAAqB,CAAO,EAGvC,OAFA,EAAI,KAAK,MAAM,iDAAiD,EACvC,EAAI,MAAM,gBAAgB,EAAI,oBAAoB,EAG/E,IAAM,EAAoB,GAAY,YAAY,EAC5C,EAAS,KAAK,aAAa,eAAe,EAC5C,EACA,EACA,EACJ,GAAI,CAAC,GACD,CAAC,EAAI,MAAM,mBAAmB,CAAiB,EAE/C,EAAU,KAAK,aAAa,gBAAgB,EAI5C,OAAU,EAAkB,QAC5B,EAAa,EAAkB,WAC/B,EAAyB,EAE7B,IAAM,EAAW,EAAQ,MAAQ,EAAI,SAAS,SACxC,GAAS,EAAQ,OAAS,CAAC,GAAG,IAAI,KAAQ,CAC5C,MAAO,CACH,QAAS,EAAK,QACd,YAAa,EAAG,GAAO,oBAAoB,EAAK,UAAU,CAC9D,EACH,EACK,GAAc,EAAG,GAAO,oBAAoB,EAAQ,UAAU,EAE9D,EAAiB,KAAK,SAAS,aAAa,EAAS,EAAS,EAAM,EAAU,EAAY,CAAK,EAC/F,GAAmB,KAAK,eAAe,UAAU,EAAmB,EAAe,QAAQ,EACjG,EAAa,EAAe,YAAc,EAC1C,IAAM,GAAa,EAAe,WAAa,EAAI,iBAAiB,mBAC9D,EAAI,WAAW,QACf,EAAI,WAAW,KACf,GAAc,CAAE,UAAS,SAAQ,cAAY,YAAW,EAC9D,GAAI,EAAe,WAAa,EAAI,iBAAiB,WAGjD,OAFA,EAAI,KAAK,MAAM,+DAA+D,EACrD,EAAI,MAAM,gBAAgB,EAAW,EAKlE,IAAM,IAAkB,EAAG,GAAO,oBAAoB,OAAO,OAAO,EAAY,EAAe,UAAU,CAAC,EAgB1G,OAfa,IAAI,GAAO,SAAS,CAC7B,SAAU,KAAK,UACf,MAAO,KAAK,qBACZ,UACA,eACA,OACA,KAAM,EACN,QACA,kBAAmB,EACnB,WAAY,GACZ,UAAW,EAAQ,UACnB,cAAe,KAAK,eACpB,WAAY,KAAK,YACjB,mBACJ,CAAC,EAGL,eAAe,CAAC,EAAM,EAAM,EAAM,EAAM,CACpC,IAAI,EACA,EACA,EACJ,GAAI,UAAU,OAAS,EACnB,OAEC,QAAI,UAAU,SAAW,EAC1B,EAAK,EAEJ,QAAI,UAAU,SAAW,EAC1B,EAAO,EACP,EAAK,EAGL,OAAO,EACP,EAAM,EACN,EAAK,EAET,IAAM,EAAgB,GAAO,EAAI,QAAQ,OAAO,EAC1C,EAAO,KAAK,UAAU,EAAM,EAAM,CAAa,EAC/C,EAAqB,EAAI,MAAM,QAAQ,EAAe,CAAI,EAChE,OAAO,EAAI,QAAQ,KAAK,EAAoB,EAAI,OAAW,CAAI,EAGnE,gBAAgB,EAAG,CACf,OAAO,KAAK,eAGhB,aAAa,EAAG,CACZ,OAAO,KAAK,YAEpB,CACQ,UAAS,qBC/IjB,OAAO,eAAe,GAAS,aAAc,CAAE,MAAO,EAAK,CAAC,EACpD,sBAA0B,OAClC,IAAM,OAKN,MAAM,EAAmB,CACrB,gBACA,WAAW,CAAC,EAAgB,CACxB,KAAK,gBAAkB,EAE3B,UAAU,EAAG,CACT,IAAM,EAAW,CAAC,EAClB,QAAW,KAAiB,KAAK,gBAC7B,EAAS,KAAK,EAAc,WAAW,CAAC,EAE5C,OAAO,IAAI,QAAQ,KAAW,CAC1B,QAAQ,IAAI,CAAQ,EACf,KAAK,IAAM,CACZ,EAAQ,EACX,EACI,MAAM,KAAS,EACf,EAAG,GAAO,oBAAoB,GAAa,MAAM,uCAAuC,CAAC,EAC1F,EAAQ,EACX,EACJ,EAEL,OAAO,CAAC,EAAM,EAAS,CACnB,QAAW,KAAiB,KAAK,gBAC7B,EAAc,QAAQ,EAAM,CAAO,EAG3C,QAAQ,CAAC,EAAM,CACX,QAAW,KAAiB,KAAK,gBAC7B,GAAI,EAAc,SACd,EAAc,SAAS,CAAI,EAIvC,KAAK,CAAC,EAAM,CACR,QAAW,KAAiB,KAAK,gBAC7B,EAAc,MAAM,CAAI,EAGhC,QAAQ,EAAG,CACP,IAAM,EAAW,CAAC,EAClB,QAAW,KAAiB,KAAK,gBAC7B,EAAS,KAAK,EAAc,SAAS,CAAC,EAE1C,OAAO,IAAI,QAAQ,CAAC,EAAS,IAAW,CACpC,QAAQ,IAAI,CAAQ,EAAE,KAAK,IAAM,CAC7B,EAAQ,GACT,CAAM,EACZ,EAET,CACQ,sBAAqB,qBCzD7B,OAAO,eAAe,GAAS,aAAc,CAAE,MAAO,EAAK,CAAC,EACpD,uBAA8B,mBAAuB,OAC7D,IAAM,OACA,QACA,QACA,QACA,QACA,QACF,GACH,QAAS,CAAC,EAAiB,CACxB,EAAgB,EAAgB,SAAc,GAAK,WACnD,EAAgB,EAAgB,QAAa,GAAK,UAClD,EAAgB,EAAgB,MAAW,GAAK,QAChD,EAAgB,EAAgB,WAAgB,GAAK,eACtD,EAA0B,qBAA4B,mBAAkB,CAAC,EAAE,EAI9E,MAAM,EAAoB,CACtB,QACA,SAAW,IAAI,IACf,UACA,qBACA,WAAW,CAAC,EAAS,CAAC,EAAG,CACrB,IAAM,GAAgB,EAAG,GAAO,OAAO,CAAC,GAAI,EAAG,GAAS,mBAAmB,GAAI,EAAG,GAAU,mBAAmB,CAAM,CAAC,EACtH,KAAK,UAAY,EAAa,WAAa,EAAG,GAAY,iBAAiB,EAC3E,KAAK,QAAU,OAAO,OAAO,CAAC,EAAG,EAAc,CAC3C,SAAU,KAAK,SACnB,CAAC,EACD,IAAM,EAAiB,CAAC,EACxB,GAAI,EAAO,gBAAgB,OACvB,EAAe,KAAK,GAAG,EAAO,cAAc,EAEhD,KAAK,qBAAuB,IAAI,GAAqB,mBAAmB,CAAc,EAE1F,SAAS,CAAC,EAAM,EAAS,EAAS,CAC9B,IAAM,EAAM,GAAG,KAAQ,GAAW,MAAM,GAAS,WAAa,KAC9D,GAAI,CAAC,KAAK,SAAS,IAAI,CAAG,EACtB,KAAK,SAAS,IAAI,EAAK,IAAI,GAAS,OAAO,CAAE,OAAM,UAAS,UAAW,GAAS,SAAU,EAAG,KAAK,QAAS,KAAK,UAAW,KAAK,oBAAoB,CAAC,EAGzJ,OAAO,KAAK,SAAS,IAAI,CAAG,EAEhC,UAAU,EAAG,CACT,IAAM,EAAU,KAAK,QAAQ,wBACvB,EAAW,KAAK,qBAAqB,gBAAmB,IAAI,CAAC,IAAkB,CACjF,OAAO,IAAI,QAAQ,KAAW,CAC1B,IAAI,EACE,EAAkB,WAAW,IAAM,CACrC,EAAY,MAAM,6DAA6D,MAAY,CAAC,EAC5F,EAAQ,EAAgB,SACzB,CAAO,EACV,EACK,WAAW,EACX,KAAK,IAAM,CAEZ,GADA,aAAa,CAAe,EACxB,IAAU,EAAgB,QAC1B,EAAQ,EAAgB,SACxB,EAAQ,CAAK,EAEpB,EACI,MAAM,KAAS,CAChB,aAAa,CAAe,EAC5B,EAAQ,EAAgB,MACxB,EAAQ,CAAK,EAChB,EACJ,EACJ,EACD,OAAO,IAAI,QAAQ,CAAC,EAAS,IAAW,CACpC,QAAQ,IAAI,CAAQ,EACf,KAAK,KAAW,CACjB,IAAM,EAAS,EAAQ,OAAO,KAAU,IAAW,EAAgB,QAAQ,EAC3E,GAAI,EAAO,OAAS,EAChB,EAAO,CAAM,EAGb,OAAQ,EAEf,EACI,MAAM,KAAS,EAAO,CAAC,CAAK,CAAC,CAAC,EACtC,EAEL,QAAQ,EAAG,CACP,OAAO,KAAK,qBAAqB,SAAS,EAElD,CACQ,uBAAsB,qBCtF9B,OAAO,eAAe,GAAS,aAAc,CAAE,MAAO,EAAK,CAAC,EACpD,uBAA2B,OACnC,IAAM,OAQN,MAAM,EAAoB,CAMtB,MAAM,CAAC,EAAO,EAAgB,CAC1B,OAAO,KAAK,WAAW,EAAO,CAAc,EAKhD,QAAQ,EAAG,CAEP,OADA,KAAK,WAAW,CAAC,CAAC,EACX,KAAK,WAAW,EAK3B,UAAU,EAAG,CACT,OAAO,QAAQ,QAAQ,EAM3B,WAAW,CAAC,EAAM,CACd,MAAO,CACH,SAAU,CACN,WAAY,EAAK,SAAS,UAC9B,EACA,qBAAsB,EAAK,qBAC3B,QAAS,EAAK,YAAY,EAAE,QAC5B,kBAAmB,EAAK,kBACxB,WAAY,EAAK,YAAY,EAAE,YAAY,UAAU,EACrD,KAAM,EAAK,KACX,GAAI,EAAK,YAAY,EAAE,OACvB,KAAM,EAAK,KACX,WAAY,EAAG,GAAO,sBAAsB,EAAK,SAAS,EAC1D,UAAW,EAAG,GAAO,sBAAsB,EAAK,QAAQ,EACxD,WAAY,EAAK,WACjB,OAAQ,EAAK,OACb,OAAQ,EAAK,OACb,MAAO,EAAK,KAChB,EAOJ,UAAU,CAAC,EAAO,EAAM,CACpB,QAAW,KAAQ,EACf,QAAQ,IAAI,KAAK,YAAY,CAAI,EAAG,CAAE,MAAO,CAAE,CAAC,EAEpD,GAAI,EACA,OAAO,EAAK,CAAE,KAAM,GAAO,iBAAiB,OAAQ,CAAC,EAGjE,CACQ,uBAAsB,qBCtE9B,OAAO,eAAe,GAAS,aAAc,CAAE,MAAO,EAAK,CAAC,EACpD,wBAA4B,OACpC,IAAM,OAMN,MAAM,EAAqB,CACvB,eAAiB,CAAC,EAKlB,SAAW,GACX,MAAM,CAAC,EAAO,EAAgB,CAC1B,GAAI,KAAK,SACL,OAAO,EAAe,CAClB,KAAM,GAAO,iBAAiB,OAC9B,MAAW,MAAM,2BAA2B,CAChD,CAAC,EACL,KAAK,eAAe,KAAK,GAAG,CAAK,EACjC,WAAW,IAAM,EAAe,CAAE,KAAM,GAAO,iBAAiB,OAAQ,CAAC,EAAG,CAAC,EAEjF,QAAQ,EAAG,CAGP,OAFA,KAAK,SAAW,GAChB,KAAK,eAAiB,CAAC,EAChB,KAAK,WAAW,EAK3B,UAAU,EAAG,CACT,OAAO,QAAQ,QAAQ,EAE3B,KAAK,EAAG,CACJ,KAAK,eAAiB,CAAC,EAE3B,gBAAgB,EAAG,CACf,OAAO,KAAK,eAEpB,CACQ,wBAAuB,qBC1C/B,OAAO,eAAe,GAAS,aAAc,CAAE,MAAO,EAAK,CAAC,EACpD,uBAA2B,OACnC,IAAM,OACA,OASN,MAAM,EAAoB,CACtB,UACA,cACA,gBACA,WAAW,CAAC,EAAU,CAClB,KAAK,UAAY,EACjB,KAAK,cAAgB,IAAI,GAAO,eAAe,KAAK,UAAW,IAAI,EACnE,KAAK,gBAAkB,IAAI,SAEzB,WAAU,EAAG,CAEf,GADA,MAAM,QAAQ,IAAI,MAAM,KAAK,KAAK,eAAe,CAAC,EAC9C,KAAK,UAAU,WACf,MAAM,KAAK,UAAU,WAAW,EAGxC,OAAO,CAAC,EAAO,EAAgB,EAC/B,KAAK,CAAC,EAAM,CACR,GAAI,KAAK,cAAc,SACnB,OAEJ,IAAK,EAAK,YAAY,EAAE,WAAa,GAAM,WAAW,WAAa,EAC/D,OAEJ,IAAM,EAAgB,KAAK,UAAU,CAAI,EAAE,MAAM,MAAQ,EAAG,GAAO,oBAAoB,CAAG,CAAC,EAE3F,KAAK,gBAAgB,IAAI,CAAa,EACjC,EAAc,QAAQ,IAAM,KAAK,gBAAgB,OAAO,CAAa,CAAC,OAEzE,UAAS,CAAC,EAAM,CAClB,GAAI,EAAK,SAAS,uBAEd,MAAM,EAAK,SAAS,yBAAyB,EAEjD,IAAM,EAAS,MAAM,GAAO,SAAS,QAAQ,KAAK,UAAW,CAAC,CAAI,CAAC,EACnE,GAAI,EAAO,OAAS,GAAO,iBAAiB,QACxC,MAAO,EAAO,OACN,MAAM,mDAAmD,IAAS,EAGlF,QAAQ,EAAG,CACP,OAAO,KAAK,cAAc,KAAK,EAEnC,SAAS,EAAG,CACR,OAAO,KAAK,UAAU,SAAS,EAEvC,CACQ,uBAAsB,qBC1D9B,OAAO,eAAe,GAAS,aAAc,CAAE,MAAO,EAAK,CAAC,EACpD,qBAAyB,OAEjC,MAAM,EAAkB,CACpB,OAAO,CAAC,EAAO,EAAU,EACzB,KAAK,CAAC,EAAO,EACb,QAAQ,EAAG,CACP,OAAO,QAAQ,QAAQ,EAE3B,UAAU,EAAG,CACT,OAAO,QAAQ,QAAQ,EAE/B,CACQ,qBAAoB,oBCb5B,OAAO,eAAe,EAAS,aAAc,CAAE,MAAO,EAAK,CAAC,EACpD,mBAA2B,2BAAmC,qBAA6B,kBAA0B,mBAA2B,oBAA4B,sBAA8B,uBAA+B,sBAA8B,oBAA4B,qBAA6B,sBAA2B,OACnW,IAAI,QACJ,OAAO,eAAe,EAAS,sBAAuB,CAAE,WAAY,GAAM,IAAK,QAAS,EAAG,CAAE,OAAO,GAAsB,oBAAuB,CAAC,EAClJ,IAAI,QACJ,OAAO,eAAe,EAAS,qBAAsB,CAAE,WAAY,GAAM,IAAK,QAAS,EAAG,CAAE,OAAO,GAAW,mBAAsB,CAAC,EACrI,OAAO,eAAe,EAAS,oBAAqB,CAAE,WAAY,GAAM,IAAK,QAAS,EAAG,CAAE,OAAO,GAAW,kBAAqB,CAAC,EACnI,IAAI,QACJ,OAAO,eAAe,EAAS,sBAAuB,CAAE,WAAY,GAAM,IAAK,QAAS,EAAG,CAAE,OAAO,GAAsB,oBAAuB,CAAC,EAClJ,IAAI,QACJ,OAAO,eAAe,EAAS,uBAAwB,CAAE,WAAY,GAAM,IAAK,QAAS,EAAG,CAAE,OAAO,GAAuB,qBAAwB,CAAC,EACrJ,IAAI,QACJ,OAAO,eAAe,EAAS,sBAAuB,CAAE,WAAY,GAAM,IAAK,QAAS,EAAG,CAAE,OAAO,GAAsB,oBAAuB,CAAC,EAClJ,IAAI,QACJ,OAAO,eAAe,EAAS,oBAAqB,CAAE,WAAY,GAAM,IAAK,QAAS,EAAG,CAAE,OAAO,GAAoB,kBAAqB,CAAC,EAC5I,IAAI,OACJ,OAAO,eAAe,EAAS,mBAAoB,CAAE,WAAY,GAAM,IAAK,QAAS,EAAG,CAAE,OAAO,GAAmB,iBAAoB,CAAC,EACzI,IAAI,OACJ,OAAO,eAAe,EAAS,kBAAmB,CAAE,WAAY,GAAM,IAAK,QAAS,EAAG,CAAE,OAAO,GAAkB,gBAAmB,CAAC,EACtI,IAAI,QACJ,OAAO,eAAe,EAAS,qBAAsB,CAAE,WAAY,GAAM,IAAK,QAAS,EAAG,CAAE,OAAO,GAAqB,mBAAsB,CAAC,EAC/I,IAAI,QACJ,OAAO,eAAe,EAAS,2BAA4B,CAAE,WAAY,GAAM,IAAK,QAAS,EAAG,CAAE,OAAO,GAA2B,yBAA4B,CAAC,EACjK,IAAI,OACJ,OAAO,eAAe,EAAS,mBAAoB,CAAE,WAAY,GAAM,IAAK,QAAS,EAAG,CAAE,OAAO,GAAU,iBAAoB,CAAC",
|
|
49
|
+
"debugId": "758F03D4A37781FE64756E2164756E21",
|
|
50
|
+
"names": []
|
|
51
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../node_modules/.bun/@ai-sdk+deepinfra@2.0.41+d6123d32214422cb/node_modules/@ai-sdk/deepinfra/dist/index.mjs"],
|
|
4
|
+
"sourcesContent": [
|
|
5
|
+
"// src/deepinfra-provider.ts\nimport {\n OpenAICompatibleCompletionLanguageModel,\n OpenAICompatibleEmbeddingModel\n} from \"@ai-sdk/openai-compatible\";\nimport {\n loadApiKey,\n withoutTrailingSlash,\n withUserAgentSuffix\n} from \"@ai-sdk/provider-utils\";\n\n// src/deepinfra-image-model.ts\nimport {\n combineHeaders,\n convertBase64ToUint8Array,\n convertToFormData,\n createJsonErrorResponseHandler,\n createJsonResponseHandler,\n downloadBlob,\n postFormDataToApi,\n postJsonToApi\n} from \"@ai-sdk/provider-utils\";\nimport { z } from \"zod/v4\";\nvar DeepInfraImageModel = class {\n constructor(modelId, config) {\n this.modelId = modelId;\n this.config = config;\n this.specificationVersion = \"v3\";\n this.maxImagesPerCall = 1;\n }\n get provider() {\n return this.config.provider;\n }\n async doGenerate({\n prompt,\n n,\n size,\n aspectRatio,\n seed,\n providerOptions,\n headers,\n abortSignal,\n files,\n mask\n }) {\n var _a, _b, _c, _d, _e;\n const warnings = [];\n const currentDate = (_c = (_b = (_a = this.config._internal) == null ? void 0 : _a.currentDate) == null ? void 0 : _b.call(_a)) != null ? _c : /* @__PURE__ */ new Date();\n if (files != null && files.length > 0) {\n const { value: response2, responseHeaders: responseHeaders2 } = await postFormDataToApi({\n url: this.getEditUrl(),\n headers: combineHeaders(this.config.headers(), headers),\n formData: convertToFormData(\n {\n model: this.modelId,\n prompt,\n image: await Promise.all(files.map((file) => fileToBlob(file))),\n mask: mask != null ? await fileToBlob(mask) : void 0,\n n,\n size,\n ...(_d = providerOptions.deepinfra) != null ? _d : {}\n },\n { useArrayBrackets: false }\n ),\n failedResponseHandler: createJsonErrorResponseHandler({\n errorSchema: deepInfraEditErrorSchema,\n errorToMessage: (error) => {\n var _a2, _b2;\n return (_b2 = (_a2 = error.error) == null ? void 0 : _a2.message) != null ? _b2 : \"Unknown error\";\n }\n }),\n successfulResponseHandler: createJsonResponseHandler(\n deepInfraEditResponseSchema\n ),\n abortSignal,\n fetch: this.config.fetch\n });\n return {\n images: response2.data.map((item) => item.b64_json),\n warnings,\n response: {\n timestamp: currentDate,\n modelId: this.modelId,\n headers: responseHeaders2\n }\n };\n }\n const splitSize = size == null ? void 0 : size.split(\"x\");\n const { value: response, responseHeaders } = await postJsonToApi({\n url: `${this.config.baseURL}/${this.modelId}`,\n headers: combineHeaders(this.config.headers(), headers),\n body: {\n prompt,\n num_images: n,\n ...aspectRatio && { aspect_ratio: aspectRatio },\n ...splitSize && { width: splitSize[0], height: splitSize[1] },\n ...seed != null && { seed },\n ...(_e = providerOptions.deepinfra) != null ? _e : {}\n },\n failedResponseHandler: createJsonErrorResponseHandler({\n errorSchema: deepInfraErrorSchema,\n errorToMessage: (error) => error.detail.error\n }),\n successfulResponseHandler: createJsonResponseHandler(\n deepInfraImageResponseSchema\n ),\n abortSignal,\n fetch: this.config.fetch\n });\n return {\n images: response.images.map(\n (image) => image.replace(/^data:image\\/\\w+;base64,/, \"\")\n ),\n warnings,\n response: {\n timestamp: currentDate,\n modelId: this.modelId,\n headers: responseHeaders\n }\n };\n }\n getEditUrl() {\n const baseUrl = this.config.baseURL.replace(\"/inference\", \"/openai\");\n return `${baseUrl}/images/edits`;\n }\n};\nvar deepInfraErrorSchema = z.object({\n detail: z.object({\n error: z.string()\n })\n});\nvar deepInfraImageResponseSchema = z.object({\n images: z.array(z.string())\n});\nvar deepInfraEditErrorSchema = z.object({\n error: z.object({\n message: z.string()\n }).optional()\n});\nvar deepInfraEditResponseSchema = z.object({\n data: z.array(z.object({ b64_json: z.string() }))\n});\nasync function fileToBlob(file) {\n if (file.type === \"url\") {\n return downloadBlob(file.url);\n }\n const data = file.data instanceof Uint8Array ? file.data : convertBase64ToUint8Array(file.data);\n return new Blob([data], { type: file.mediaType });\n}\n\n// src/deepinfra-chat-language-model.ts\nimport { OpenAICompatibleChatLanguageModel } from \"@ai-sdk/openai-compatible\";\nvar DeepInfraChatLanguageModel = class extends OpenAICompatibleChatLanguageModel {\n constructor(modelId, config) {\n super(modelId, config);\n }\n /**\n * Fixes incorrect token usage for Gemini/Gemma models from DeepInfra.\n *\n * DeepInfra's API returns completion_tokens that don't include reasoning_tokens\n * for Gemini/Gemma models, which violates the OpenAI-compatible spec.\n * According to the spec, completion_tokens should include reasoning_tokens.\n *\n * Example of incorrect data from DeepInfra:\n * {\n * \"completion_tokens\": 84, // text-only tokens\n * \"completion_tokens_details\": {\n * \"reasoning_tokens\": 1081 // reasoning tokens not included above\n * }\n * }\n *\n * This would result in negative text tokens: 84 - 1081 = -997\n *\n * The fix: If reasoning_tokens > completion_tokens, add reasoning_tokens\n * to completion_tokens: 84 + 1081 = 1165\n */\n fixUsageForGeminiModels(usage) {\n var _a, _b;\n if (!usage || !((_a = usage.completion_tokens_details) == null ? void 0 : _a.reasoning_tokens)) {\n return usage;\n }\n const completionTokens = (_b = usage.completion_tokens) != null ? _b : 0;\n const reasoningTokens = usage.completion_tokens_details.reasoning_tokens;\n if (reasoningTokens > completionTokens) {\n const correctedCompletionTokens = completionTokens + reasoningTokens;\n return {\n ...usage,\n // Add reasoning_tokens to completion_tokens to get the correct total\n completion_tokens: correctedCompletionTokens,\n // Update total_tokens if present\n total_tokens: usage.total_tokens != null ? usage.total_tokens + reasoningTokens : void 0\n };\n }\n return usage;\n }\n async doGenerate(options) {\n var _a, _b, _c, _d, _e, _f, _g;\n const result = await super.doGenerate(options);\n if ((_a = result.usage) == null ? void 0 : _a.raw) {\n const fixedRawUsage = this.fixUsageForGeminiModels(result.usage.raw);\n if (fixedRawUsage !== result.usage.raw) {\n const promptTokens = (_b = fixedRawUsage.prompt_tokens) != null ? _b : 0;\n const completionTokens = (_c = fixedRawUsage.completion_tokens) != null ? _c : 0;\n const cacheReadTokens = (_e = (_d = fixedRawUsage.prompt_tokens_details) == null ? void 0 : _d.cached_tokens) != null ? _e : 0;\n const reasoningTokens = (_g = (_f = fixedRawUsage.completion_tokens_details) == null ? void 0 : _f.reasoning_tokens) != null ? _g : 0;\n return {\n ...result,\n usage: {\n inputTokens: {\n total: promptTokens,\n noCache: promptTokens - cacheReadTokens,\n cacheRead: cacheReadTokens,\n cacheWrite: void 0\n },\n outputTokens: {\n total: completionTokens,\n text: completionTokens - reasoningTokens,\n reasoning: reasoningTokens\n },\n raw: fixedRawUsage\n }\n };\n }\n }\n return result;\n }\n async doStream(options) {\n const result = await super.doStream(options);\n const originalStream = result.stream;\n const fixUsage = this.fixUsageForGeminiModels.bind(this);\n const transformedStream = new ReadableStream({\n async start(controller) {\n var _a, _b, _c, _d, _e, _f, _g;\n const reader = originalStream.getReader();\n try {\n while (true) {\n const { done, value } = await reader.read();\n if (done) break;\n if (value.type === \"finish\" && ((_a = value.usage) == null ? void 0 : _a.raw)) {\n const fixedRawUsage = fixUsage(value.usage.raw);\n if (fixedRawUsage !== value.usage.raw) {\n const promptTokens = (_b = fixedRawUsage.prompt_tokens) != null ? _b : 0;\n const completionTokens = (_c = fixedRawUsage.completion_tokens) != null ? _c : 0;\n const cacheReadTokens = (_e = (_d = fixedRawUsage.prompt_tokens_details) == null ? void 0 : _d.cached_tokens) != null ? _e : 0;\n const reasoningTokens = (_g = (_f = fixedRawUsage.completion_tokens_details) == null ? void 0 : _f.reasoning_tokens) != null ? _g : 0;\n controller.enqueue({\n ...value,\n usage: {\n inputTokens: {\n total: promptTokens,\n noCache: promptTokens - cacheReadTokens,\n cacheRead: cacheReadTokens,\n cacheWrite: void 0\n },\n outputTokens: {\n total: completionTokens,\n text: completionTokens - reasoningTokens,\n reasoning: reasoningTokens\n },\n raw: fixedRawUsage\n }\n });\n } else {\n controller.enqueue(value);\n }\n } else {\n controller.enqueue(value);\n }\n }\n controller.close();\n } catch (error) {\n controller.error(error);\n }\n }\n });\n return {\n ...result,\n stream: transformedStream\n };\n }\n};\n\n// src/version.ts\nvar VERSION = true ? \"2.0.41\" : \"0.0.0-test\";\n\n// src/deepinfra-provider.ts\nfunction createDeepInfra(options = {}) {\n var _a;\n const baseURL = withoutTrailingSlash(\n (_a = options.baseURL) != null ? _a : \"https://api.deepinfra.com/v1\"\n );\n const getHeaders = () => withUserAgentSuffix(\n {\n Authorization: `Bearer ${loadApiKey({\n apiKey: options.apiKey,\n environmentVariableName: \"DEEPINFRA_API_KEY\",\n description: \"DeepInfra's API key\"\n })}`,\n ...options.headers\n },\n `ai-sdk/deepinfra/${VERSION}`\n );\n const getCommonModelConfig = (modelType) => ({\n provider: `deepinfra.${modelType}`,\n url: ({ path }) => `${baseURL}/openai${path}`,\n headers: getHeaders,\n fetch: options.fetch\n });\n const createChatModel = (modelId) => {\n return new DeepInfraChatLanguageModel(\n modelId,\n getCommonModelConfig(\"chat\")\n );\n };\n const createCompletionModel = (modelId) => new OpenAICompatibleCompletionLanguageModel(\n modelId,\n getCommonModelConfig(\"completion\")\n );\n const createEmbeddingModel = (modelId) => new OpenAICompatibleEmbeddingModel(\n modelId,\n getCommonModelConfig(\"embedding\")\n );\n const createImageModel = (modelId) => new DeepInfraImageModel(modelId, {\n ...getCommonModelConfig(\"image\"),\n baseURL: baseURL ? `${baseURL}/inference` : \"https://api.deepinfra.com/v1/inference\"\n });\n const provider = (modelId) => createChatModel(modelId);\n provider.specificationVersion = \"v3\";\n provider.completionModel = createCompletionModel;\n provider.chatModel = createChatModel;\n provider.image = createImageModel;\n provider.imageModel = createImageModel;\n provider.languageModel = createChatModel;\n provider.embeddingModel = createEmbeddingModel;\n provider.textEmbeddingModel = createEmbeddingModel;\n return provider;\n}\nvar deepinfra = createDeepInfra();\nexport {\n VERSION,\n createDeepInfra,\n deepinfra\n};\n//# sourceMappingURL=index.mjs.map"
|
|
6
|
+
],
|
|
7
|
+
"mappings": "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",
|
|
8
|
+
"debugId": "74945835DB85E1C464756E2164756E21",
|
|
9
|
+
"names": []
|
|
10
|
+
}
|