langgraph-ui-components 0.0.13 → 0.0.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (200) hide show
  1. package/dist/index.es107.js +4 -4
  2. package/dist/index.es109.js +1 -1
  3. package/dist/index.es115.js +1 -1
  4. package/dist/index.es119.js +1 -1
  5. package/dist/index.es121.js +1 -1
  6. package/dist/index.es122.js +9 -9
  7. package/dist/index.es129.js +2 -2
  8. package/dist/index.es13.js +6 -6
  9. package/dist/index.es132.js +2 -2
  10. package/dist/index.es141.js +1 -1
  11. package/dist/index.es142.js +2 -2
  12. package/dist/index.es143.js +1 -1
  13. package/dist/index.es156.js +1 -1
  14. package/dist/index.es16.js +1 -1
  15. package/dist/index.es164.js +1 -1
  16. package/dist/index.es165.js +1 -1
  17. package/dist/index.es166.js +1 -1
  18. package/dist/index.es167.js +1 -1
  19. package/dist/index.es168.js +1 -1
  20. package/dist/index.es169.js +1 -1
  21. package/dist/index.es170.js +1 -1
  22. package/dist/index.es171.js +1 -1
  23. package/dist/index.es172.js +1 -1
  24. package/dist/index.es173.js +1 -1
  25. package/dist/index.es174.js +1 -1
  26. package/dist/index.es175.js +1 -1
  27. package/dist/index.es176.js +1 -1
  28. package/dist/index.es177.js +1 -1
  29. package/dist/index.es178.js +1 -1
  30. package/dist/index.es179.js +1 -1
  31. package/dist/index.es180.js +1 -1
  32. package/dist/index.es181.js +1 -1
  33. package/dist/index.es182.js +1 -1
  34. package/dist/index.es183.js +1 -1
  35. package/dist/index.es184.js +1 -1
  36. package/dist/index.es185.js +1 -1
  37. package/dist/index.es186.js +1 -1
  38. package/dist/index.es187.js +1 -1
  39. package/dist/index.es188.js +1 -1
  40. package/dist/index.es189.js +1 -1
  41. package/dist/index.es190.js +1 -1
  42. package/dist/index.es191.js +1 -1
  43. package/dist/index.es192.js +1 -1
  44. package/dist/index.es193.js +1 -1
  45. package/dist/index.es194.js +1 -1
  46. package/dist/index.es195.js +1 -1
  47. package/dist/index.es196.js +1 -1
  48. package/dist/index.es197.js +1 -1
  49. package/dist/index.es198.js +1 -1
  50. package/dist/index.es199.js +1 -1
  51. package/dist/index.es2.js +30 -24
  52. package/dist/index.es2.js.map +1 -1
  53. package/dist/index.es20.js +2 -2
  54. package/dist/index.es200.js +1 -1
  55. package/dist/index.es201.js +1 -1
  56. package/dist/index.es202.js +1 -1
  57. package/dist/index.es203.js +1 -1
  58. package/dist/index.es204.js +1 -1
  59. package/dist/index.es205.js +1 -1
  60. package/dist/index.es206.js +1 -1
  61. package/dist/index.es207.js +1 -1
  62. package/dist/index.es208.js +1 -1
  63. package/dist/index.es214.js +4 -2
  64. package/dist/index.es214.js.map +1 -1
  65. package/dist/index.es215.js +2 -2
  66. package/dist/index.es216.js +2 -2
  67. package/dist/index.es217.js +2 -2
  68. package/dist/index.es218.js +2 -2
  69. package/dist/index.es219.js +2 -2
  70. package/dist/index.es22.js +15 -119
  71. package/dist/index.es22.js.map +1 -1
  72. package/dist/index.es220.js +2 -2
  73. package/dist/index.es221.js +2 -2
  74. package/dist/index.es222.js +2 -2
  75. package/dist/index.es223.js +2 -2
  76. package/dist/index.es224.js +2 -2
  77. package/dist/index.es225.js +2 -2
  78. package/dist/index.es226.js +2 -2
  79. package/dist/index.es227.js +2 -2
  80. package/dist/index.es228.js +2 -2
  81. package/dist/index.es229.js +2 -2
  82. package/dist/index.es23.js +64 -17
  83. package/dist/index.es23.js.map +1 -1
  84. package/dist/index.es230.js +2 -2
  85. package/dist/index.es231.js +2 -2
  86. package/dist/index.es232.js +2 -2
  87. package/dist/index.es233.js +2 -2
  88. package/dist/index.es234.js +2 -2
  89. package/dist/index.es235.js +2 -2
  90. package/dist/index.es236.js +2 -2
  91. package/dist/index.es237.js +2 -2
  92. package/dist/index.es238.js +2 -2
  93. package/dist/index.es239.js +2 -2
  94. package/dist/index.es24.js +29 -60
  95. package/dist/index.es24.js.map +1 -1
  96. package/dist/index.es240.js +2 -2
  97. package/dist/index.es241.js +2 -2
  98. package/dist/index.es242.js +2 -2
  99. package/dist/index.es243.js +2 -2
  100. package/dist/index.es244.js +2 -2
  101. package/dist/index.es245.js +2 -2
  102. package/dist/index.es246.js +2 -2
  103. package/dist/index.es247.js +2 -2
  104. package/dist/index.es248.js +2 -2
  105. package/dist/index.es249.js +2 -2
  106. package/dist/index.es25.js +145 -28
  107. package/dist/index.es25.js.map +1 -1
  108. package/dist/index.es250.js +2 -2
  109. package/dist/index.es251.js +2 -2
  110. package/dist/index.es252.js +2 -2
  111. package/dist/index.es253.js +2 -2
  112. package/dist/index.es254.js +2 -2
  113. package/dist/index.es255.js +2 -2
  114. package/dist/index.es256.js +2 -2
  115. package/dist/index.es257.js +2 -2
  116. package/dist/index.es258.js +2 -2
  117. package/dist/index.es259.js +2 -4
  118. package/dist/index.es259.js.map +1 -1
  119. package/dist/index.es26.js +100 -144
  120. package/dist/index.es26.js.map +1 -1
  121. package/dist/index.es260.js +8 -5
  122. package/dist/index.es260.js.map +1 -1
  123. package/dist/index.es261.js +5 -13
  124. package/dist/index.es261.js.map +1 -1
  125. package/dist/index.es262.js +12 -5
  126. package/dist/index.es262.js.map +1 -1
  127. package/dist/index.es263.js +6 -8
  128. package/dist/index.es263.js.map +1 -1
  129. package/dist/index.es267.js +63 -6
  130. package/dist/index.es267.js.map +1 -1
  131. package/dist/index.es268.js +21 -102
  132. package/dist/index.es268.js.map +1 -1
  133. package/dist/index.es269.js +5 -118
  134. package/dist/index.es269.js.map +1 -1
  135. package/dist/index.es27.js +66 -101
  136. package/dist/index.es27.js.map +1 -1
  137. package/dist/index.es270.js +330 -117
  138. package/dist/index.es270.js.map +1 -1
  139. package/dist/index.es271.js +6 -114
  140. package/dist/index.es271.js.map +1 -1
  141. package/dist/index.es272.js +103 -6
  142. package/dist/index.es272.js.map +1 -1
  143. package/dist/index.es273.js +112 -57
  144. package/dist/index.es273.js.map +1 -1
  145. package/dist/index.es274.js +135 -21
  146. package/dist/index.es274.js.map +1 -1
  147. package/dist/index.es275.js +114 -5
  148. package/dist/index.es275.js.map +1 -1
  149. package/dist/index.es276.js +6 -349
  150. package/dist/index.es276.js.map +1 -1
  151. package/dist/index.es28.js +121 -68
  152. package/dist/index.es28.js.map +1 -1
  153. package/dist/index.es280.js +3726 -131
  154. package/dist/index.es280.js.map +1 -1
  155. package/dist/index.es281.js +342 -2
  156. package/dist/index.es281.js.map +1 -1
  157. package/dist/index.es282.js +76 -3704
  158. package/dist/index.es282.js.map +1 -1
  159. package/dist/index.es283.js +117 -326
  160. package/dist/index.es283.js.map +1 -1
  161. package/dist/index.es284.js +13 -107
  162. package/dist/index.es284.js.map +1 -1
  163. package/dist/index.es285.js +142 -123
  164. package/dist/index.es285.js.map +1 -1
  165. package/dist/index.es286.js +13 -13
  166. package/dist/index.es286.js.map +1 -1
  167. package/dist/index.es287.js +6 -150
  168. package/dist/index.es287.js.map +1 -1
  169. package/dist/index.es288.js +19 -13
  170. package/dist/index.es288.js.map +1 -1
  171. package/dist/index.es289.js +88 -6
  172. package/dist/index.es289.js.map +1 -1
  173. package/dist/index.es29.js +1 -1
  174. package/dist/index.es290.js +238 -16
  175. package/dist/index.es290.js.map +1 -1
  176. package/dist/index.es291.js +22 -88
  177. package/dist/index.es291.js.map +1 -1
  178. package/dist/index.es292.js +6 -243
  179. package/dist/index.es292.js.map +1 -1
  180. package/dist/index.es293.js +4 -24
  181. package/dist/index.es293.js.map +1 -1
  182. package/dist/index.es294.js +18 -6
  183. package/dist/index.es294.js.map +1 -1
  184. package/dist/index.es295.js +8 -4
  185. package/dist/index.es295.js.map +1 -1
  186. package/dist/index.es296.js +141 -17
  187. package/dist/index.es296.js.map +1 -1
  188. package/dist/index.es297.js +2 -8
  189. package/dist/index.es297.js.map +1 -1
  190. package/dist/index.es50.js +208 -5
  191. package/dist/index.es50.js.map +1 -1
  192. package/dist/index.es51.js +138 -202
  193. package/dist/index.es51.js.map +1 -1
  194. package/dist/index.es52.js +42 -141
  195. package/dist/index.es52.js.map +1 -1
  196. package/dist/index.es53.js +5 -45
  197. package/dist/index.es53.js.map +1 -1
  198. package/dist/index.es7.js +5 -25
  199. package/dist/index.es7.js.map +1 -1
  200. package/package.json +1 -1
@@ -1,112 +1,18 @@
1
- import { getOtelEnabled } from "./index.es287.js";
2
- class MockTracer {
3
- constructor() {
4
- Object.defineProperty(this, "hasWarned", {
5
- enumerable: true,
6
- configurable: true,
7
- writable: true,
8
- value: false
9
- });
10
- }
11
- startActiveSpan(_name, ...args) {
12
- if (!this.hasWarned && getOtelEnabled()) {
13
- console.warn('You have enabled OTEL export via the `OTEL_ENABLED` or `LANGSMITH_OTEL_ENABLED` environment variable, but have not initialized the required OTEL instances. Please add:\n```\nimport { initializeOTEL } from "langsmith/experimental/otel/setup";\ninitializeOTEL();\n```\nat the beginning of your code.');
14
- this.hasWarned = true;
15
- }
16
- let fn;
17
- if (args.length === 1 && typeof args[0] === "function") {
18
- fn = args[0];
19
- } else if (args.length === 2 && typeof args[1] === "function") {
20
- fn = args[1];
21
- } else if (args.length === 3 && typeof args[2] === "function") {
22
- fn = args[2];
23
- }
24
- if (typeof fn === "function") {
25
- return fn();
26
- }
27
- return void 0;
28
- }
29
- }
30
- class MockOTELTrace {
31
- constructor() {
32
- Object.defineProperty(this, "mockTracer", {
33
- enumerable: true,
34
- configurable: true,
35
- writable: true,
36
- value: new MockTracer()
37
- });
38
- }
39
- getTracer(_name, _version) {
40
- return this.mockTracer;
41
- }
42
- getActiveSpan() {
43
- return void 0;
44
- }
45
- setSpan(context, _span) {
46
- return context;
47
- }
48
- getSpan(_context) {
49
- return void 0;
50
- }
51
- setSpanContext(context, _spanContext) {
52
- return context;
53
- }
54
- getTracerProvider() {
55
- return void 0;
56
- }
57
- setGlobalTracerProvider(_tracerProvider) {
58
- return false;
59
- }
60
- }
61
- class MockOTELContext {
62
- active() {
63
- return {};
64
- }
65
- with(_context, fn) {
66
- return fn();
67
- }
68
- }
69
- const OTEL_TRACE_KEY = /* @__PURE__ */ Symbol.for("ls:otel_trace");
70
- const OTEL_CONTEXT_KEY = /* @__PURE__ */ Symbol.for("ls:otel_context");
71
- const OTEL_GET_DEFAULT_OTLP_TRACER_PROVIDER_KEY = /* @__PURE__ */ Symbol.for("ls:otel_get_default_otlp_tracer_provider");
72
- const mockOTELTrace = new MockOTELTrace();
73
- const mockOTELContext = new MockOTELContext();
74
- class OTELProvider {
75
- getTraceInstance() {
76
- return globalThis[OTEL_TRACE_KEY] ?? mockOTELTrace;
77
- }
78
- getContextInstance() {
79
- return globalThis[OTEL_CONTEXT_KEY] ?? mockOTELContext;
80
- }
81
- initializeGlobalInstances(otel) {
82
- if (globalThis[OTEL_TRACE_KEY] === void 0) {
83
- globalThis[OTEL_TRACE_KEY] = otel.trace;
84
- }
85
- if (globalThis[OTEL_CONTEXT_KEY] === void 0) {
86
- globalThis[OTEL_CONTEXT_KEY] = otel.context;
87
- }
88
- }
89
- setDefaultOTLPTracerComponents(components) {
90
- globalThis[OTEL_GET_DEFAULT_OTLP_TRACER_PROVIDER_KEY] = components;
91
- }
92
- getDefaultOTLPTracerComponents() {
93
- return globalThis[OTEL_GET_DEFAULT_OTLP_TRACER_PROVIDER_KEY] ?? void 0;
94
- }
95
- }
96
- const OTELProviderSingleton = new OTELProvider();
97
- function getOTELTrace() {
98
- return OTELProviderSingleton.getTraceInstance();
99
- }
100
- function getOTELContext() {
101
- return OTELProviderSingleton.getContextInstance();
1
+ function isLangChainMessage(message) {
2
+ return typeof message?._getType === "function";
102
3
  }
103
- function getDefaultOTLPTracerComponents() {
104
- return OTELProviderSingleton.getDefaultOTLPTracerComponents();
4
+ function convertLangChainMessageToExample(message) {
5
+ const converted = {
6
+ type: message._getType(),
7
+ data: { content: message.content }
8
+ };
9
+ if (message?.additional_kwargs && Object.keys(message.additional_kwargs).length > 0) {
10
+ converted.data.additional_kwargs = { ...message.additional_kwargs };
11
+ }
12
+ return converted;
105
13
  }
106
14
  export {
107
- OTELProviderSingleton,
108
- getDefaultOTLPTracerComponents,
109
- getOTELContext,
110
- getOTELTrace
15
+ convertLangChainMessageToExample,
16
+ isLangChainMessage
111
17
  };
112
18
  //# sourceMappingURL=index.es284.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es284.js","sources":["../node_modules/.pnpm/langsmith@0.4.6_openai@6.16.0_zod@4.3.5_/node_modules/langsmith/dist/singletons/otel.js"],"sourcesContent":["// Should not import any OTEL packages to avoid pulling in optional deps.\nimport { getOtelEnabled } from \"../utils/env.js\";\nclass MockTracer {\n constructor() {\n Object.defineProperty(this, \"hasWarned\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: false\n });\n }\n startActiveSpan(_name, ...args) {\n if (!this.hasWarned && getOtelEnabled()) {\n console.warn(\"You have enabled OTEL export via the `OTEL_ENABLED` or `LANGSMITH_OTEL_ENABLED` environment variable, but have not initialized the required OTEL instances. \" +\n 'Please add:\\n```\\nimport { initializeOTEL } from \"langsmith/experimental/otel/setup\";\\ninitializeOTEL();\\n```\\nat the beginning of your code.');\n this.hasWarned = true;\n }\n // Handle different overloads:\n // startActiveSpan(name, fn)\n // startActiveSpan(name, options, fn)\n // startActiveSpan(name, options, context, fn)\n let fn;\n if (args.length === 1 && typeof args[0] === \"function\") {\n fn = args[0];\n }\n else if (args.length === 2 && typeof args[1] === \"function\") {\n fn = args[1];\n }\n else if (args.length === 3 && typeof args[2] === \"function\") {\n fn = args[2];\n }\n if (typeof fn === \"function\") {\n return fn();\n }\n return undefined;\n }\n}\nclass MockOTELTrace {\n constructor() {\n Object.defineProperty(this, \"mockTracer\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: new MockTracer()\n });\n }\n getTracer(_name, _version) {\n return this.mockTracer;\n }\n getActiveSpan() {\n return undefined;\n }\n setSpan(context, _span) {\n return context;\n }\n getSpan(_context) {\n return undefined;\n }\n setSpanContext(context, _spanContext) {\n return context;\n }\n getTracerProvider() {\n return undefined;\n }\n setGlobalTracerProvider(_tracerProvider) {\n return false;\n }\n}\nclass MockOTELContext {\n active() {\n return {};\n }\n with(_context, fn) {\n return fn();\n }\n}\nconst OTEL_TRACE_KEY = Symbol.for(\"ls:otel_trace\");\nconst OTEL_CONTEXT_KEY = Symbol.for(\"ls:otel_context\");\nconst OTEL_GET_DEFAULT_OTLP_TRACER_PROVIDER_KEY = Symbol.for(\"ls:otel_get_default_otlp_tracer_provider\");\nconst mockOTELTrace = new MockOTELTrace();\nconst mockOTELContext = new MockOTELContext();\nclass OTELProvider {\n getTraceInstance() {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return globalThis[OTEL_TRACE_KEY] ?? mockOTELTrace;\n }\n getContextInstance() {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return globalThis[OTEL_CONTEXT_KEY] ?? mockOTELContext;\n }\n initializeGlobalInstances(otel) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n if (globalThis[OTEL_TRACE_KEY] === undefined) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n globalThis[OTEL_TRACE_KEY] = otel.trace;\n }\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n if (globalThis[OTEL_CONTEXT_KEY] === undefined) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n globalThis[OTEL_CONTEXT_KEY] = otel.context;\n }\n }\n setDefaultOTLPTracerComponents(components) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n globalThis[OTEL_GET_DEFAULT_OTLP_TRACER_PROVIDER_KEY] = components;\n }\n getDefaultOTLPTracerComponents() {\n return (globalThis[OTEL_GET_DEFAULT_OTLP_TRACER_PROVIDER_KEY] ??\n undefined);\n }\n}\nexport const OTELProviderSingleton = new OTELProvider();\n/**\n * Get the current OTEL trace instance.\n * Returns a mock implementation if OTEL is not available.\n */\nexport function getOTELTrace() {\n return OTELProviderSingleton.getTraceInstance();\n}\n/**\n * Get the current OTEL context instance.\n * Returns a mock implementation if OTEL is not available.\n */\nexport function getOTELContext() {\n return OTELProviderSingleton.getContextInstance();\n}\n/**\n * Initialize the global OTEL instances.\n * Should be called once when OTEL packages are available.\n */\nexport function setOTELInstances(otel) {\n OTELProviderSingleton.initializeGlobalInstances(otel);\n}\n/**\n * Set a getter function for the default OTLP tracer provider.\n * This allows lazy initialization of the tracer provider.\n */\nexport function setDefaultOTLPTracerComponents(components) {\n OTELProviderSingleton.setDefaultOTLPTracerComponents(components);\n}\n/**\n * Get the default OTLP tracer provider instance.\n * Returns undefined if not set.\n */\nexport function getDefaultOTLPTracerComponents() {\n return OTELProviderSingleton.getDefaultOTLPTracerComponents();\n}\n"],"names":[],"mappings":";AAEA,MAAM,WAAW;AAAA,EACb,cAAc;AACV,WAAO,eAAe,MAAM,aAAa;AAAA,MACrC,YAAY;AAAA,MACZ,cAAc;AAAA,MACd,UAAU;AAAA,MACV,OAAO;AAAA,IACnB,CAAS;AAAA,EACL;AAAA,EACA,gBAAgB,UAAU,MAAM;AAC5B,QAAI,CAAC,KAAK,aAAa,kBAAkB;AACrC,cAAQ,KAAK,2SACsI;AACnJ,WAAK,YAAY;AAAA,IACrB;AAKA,QAAI;AACJ,QAAI,KAAK,WAAW,KAAK,OAAO,KAAK,CAAC,MAAM,YAAY;AACpD,WAAK,KAAK,CAAC;AAAA,IACf,WACS,KAAK,WAAW,KAAK,OAAO,KAAK,CAAC,MAAM,YAAY;AACzD,WAAK,KAAK,CAAC;AAAA,IACf,WACS,KAAK,WAAW,KAAK,OAAO,KAAK,CAAC,MAAM,YAAY;AACzD,WAAK,KAAK,CAAC;AAAA,IACf;AACA,QAAI,OAAO,OAAO,YAAY;AAC1B,aAAO,GAAE;AAAA,IACb;AACA,WAAO;AAAA,EACX;AACJ;AACA,MAAM,cAAc;AAAA,EAChB,cAAc;AACV,WAAO,eAAe,MAAM,cAAc;AAAA,MACtC,YAAY;AAAA,MACZ,cAAc;AAAA,MACd,UAAU;AAAA,MACV,OAAO,IAAI,WAAU;AAAA,IACjC,CAAS;AAAA,EACL;AAAA,EACA,UAAU,OAAO,UAAU;AACvB,WAAO,KAAK;AAAA,EAChB;AAAA,EACA,gBAAgB;AACZ,WAAO;AAAA,EACX;AAAA,EACA,QAAQ,SAAS,OAAO;AACpB,WAAO;AAAA,EACX;AAAA,EACA,QAAQ,UAAU;AACd,WAAO;AAAA,EACX;AAAA,EACA,eAAe,SAAS,cAAc;AAClC,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB;AAChB,WAAO;AAAA,EACX;AAAA,EACA,wBAAwB,iBAAiB;AACrC,WAAO;AAAA,EACX;AACJ;AACA,MAAM,gBAAgB;AAAA,EAClB,SAAS;AACL,WAAO,CAAA;AAAA,EACX;AAAA,EACA,KAAK,UAAU,IAAI;AACf,WAAO,GAAE;AAAA,EACb;AACJ;AACA,MAAM,iBAAiB,uBAAO,IAAI,eAAe;AACjD,MAAM,mBAAmB,uBAAO,IAAI,iBAAiB;AACrD,MAAM,4CAA4C,uBAAO,IAAI,0CAA0C;AACvG,MAAM,gBAAgB,IAAI,cAAa;AACvC,MAAM,kBAAkB,IAAI,gBAAe;AAC3C,MAAM,aAAa;AAAA,EACf,mBAAmB;AAEf,WAAO,WAAW,cAAc,KAAK;AAAA,EACzC;AAAA,EACA,qBAAqB;AAEjB,WAAO,WAAW,gBAAgB,KAAK;AAAA,EAC3C;AAAA,EACA,0BAA0B,MAAM;AAE5B,QAAI,WAAW,cAAc,MAAM,QAAW;AAE1C,iBAAW,cAAc,IAAI,KAAK;AAAA,IACtC;AAEA,QAAI,WAAW,gBAAgB,MAAM,QAAW;AAE5C,iBAAW,gBAAgB,IAAI,KAAK;AAAA,IACxC;AAAA,EACJ;AAAA,EACA,+BAA+B,YAAY;AAEvC,eAAW,yCAAyC,IAAI;AAAA,EAC5D;AAAA,EACA,iCAAiC;AAC7B,WAAQ,WAAW,yCAAyC,KACxD;AAAA,EACR;AACJ;AACY,MAAC,wBAAwB,IAAI,aAAY;AAK9C,SAAS,eAAe;AAC3B,SAAO,sBAAsB,iBAAgB;AACjD;AAKO,SAAS,iBAAiB;AAC7B,SAAO,sBAAsB,mBAAkB;AACnD;AAmBO,SAAS,iCAAiC;AAC7C,SAAO,sBAAsB,+BAA8B;AAC/D;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.es284.js","sources":["../node_modules/.pnpm/langsmith@0.4.6_openai@6.16.0_zod@4.3.5_/node_modules/langsmith/dist/utils/messages.js"],"sourcesContent":["export function isLangChainMessage(\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nmessage) {\n return typeof message?._getType === \"function\";\n}\nexport function convertLangChainMessageToExample(message) {\n const converted = {\n type: message._getType(),\n data: { content: message.content },\n };\n // Check for presence of keys in additional_kwargs\n if (message?.additional_kwargs &&\n Object.keys(message.additional_kwargs).length > 0) {\n converted.data.additional_kwargs = { ...message.additional_kwargs };\n }\n return converted;\n}\n"],"names":[],"mappings":"AAAO,SAAS,mBAEhB,SAAS;AACL,SAAO,OAAO,SAAS,aAAa;AACxC;AACO,SAAS,iCAAiC,SAAS;AACtD,QAAM,YAAY;AAAA,IACd,MAAM,QAAQ,SAAQ;AAAA,IACtB,MAAM,EAAE,SAAS,QAAQ,QAAO;AAAA,EACxC;AAEI,MAAI,SAAS,qBACT,OAAO,KAAK,QAAQ,iBAAiB,EAAE,SAAS,GAAG;AACnD,cAAU,KAAK,oBAAoB,EAAE,GAAG,QAAQ,kBAAiB;AAAA,EACrE;AACA,SAAO;AACX;","x_google_ignoreList":[0]}
@@ -1,136 +1,155 @@
1
- import pRetry from "./index.es338.js";
2
- import PQueueMod from "./index.es119.js";
3
- const STATUS_RETRYABLE = [
4
- 408,
5
- // Request Timeout
6
- 425,
7
- // Too Early
8
- 429,
9
- // Too Many Requests
10
- 500,
11
- // Internal Server Error
12
- 502,
13
- // Bad Gateway
14
- 503,
15
- // Service Unavailable
16
- 504
17
- // Gateway Timeout
18
- ];
19
- class AsyncCaller {
20
- constructor(params) {
21
- Object.defineProperty(this, "maxConcurrency", {
22
- enumerable: true,
23
- configurable: true,
24
- writable: true,
25
- value: void 0
26
- });
27
- Object.defineProperty(this, "maxRetries", {
28
- enumerable: true,
29
- configurable: true,
30
- writable: true,
31
- value: void 0
32
- });
33
- Object.defineProperty(this, "maxQueueSizeBytes", {
34
- enumerable: true,
35
- configurable: true,
36
- writable: true,
37
- value: void 0
38
- });
39
- Object.defineProperty(this, "queue", {
40
- enumerable: true,
41
- configurable: true,
42
- writable: true,
43
- value: void 0
44
- });
45
- Object.defineProperty(this, "onFailedResponseHook", {
46
- enumerable: true,
47
- configurable: true,
48
- writable: true,
49
- value: void 0
50
- });
51
- Object.defineProperty(this, "queueSizeBytes", {
52
- enumerable: true,
53
- configurable: true,
54
- writable: true,
55
- value: 0
56
- });
57
- this.maxConcurrency = params.maxConcurrency ?? Infinity;
58
- this.maxRetries = params.maxRetries ?? 6;
59
- this.maxQueueSizeBytes = params.maxQueueSizeBytes;
60
- if ("default" in PQueueMod) {
61
- this.queue = new PQueueMod.default({
62
- concurrency: this.maxConcurrency
63
- });
64
- } else {
65
- this.queue = new PQueueMod({ concurrency: this.maxConcurrency });
66
- }
67
- this.onFailedResponseHook = params?.onFailedResponseHook;
1
+ import { __version__ } from "./index.es260.js";
2
+ let globalEnv;
3
+ const isBrowser = () => typeof window !== "undefined" && typeof window.document !== "undefined";
4
+ const isWebWorker = () => typeof globalThis === "object" && globalThis.constructor && globalThis.constructor.name === "DedicatedWorkerGlobalScope";
5
+ const isJsDom = () => typeof window !== "undefined" && window.name === "nodejs" || typeof navigator !== "undefined" && navigator.userAgent.includes("jsdom");
6
+ const isDeno = () => typeof Deno !== "undefined";
7
+ const isNode = () => typeof process !== "undefined" && typeof process.versions !== "undefined" && typeof process.versions.node !== "undefined" && !isDeno();
8
+ const getEnv = () => {
9
+ if (globalEnv) {
10
+ return globalEnv;
68
11
  }
69
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
70
- call(callable, ...args) {
71
- return this.callWithOptions({}, callable, ...args);
12
+ if (typeof Bun !== "undefined") {
13
+ globalEnv = "bun";
14
+ } else if (isBrowser()) {
15
+ globalEnv = "browser";
16
+ } else if (isNode()) {
17
+ globalEnv = "node";
18
+ } else if (isWebWorker()) {
19
+ globalEnv = "webworker";
20
+ } else if (isJsDom()) {
21
+ globalEnv = "jsdom";
22
+ } else if (isDeno()) {
23
+ globalEnv = "deno";
24
+ } else {
25
+ globalEnv = "other";
72
26
  }
73
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
74
- callWithOptions(options, callable, ...args) {
75
- const sizeBytes = options.sizeBytes ?? 0;
76
- if (this.maxQueueSizeBytes !== void 0 && sizeBytes > 0 && this.queueSizeBytes + sizeBytes > this.maxQueueSizeBytes) {
77
- return Promise.reject(new Error(`Queue size limit (${this.maxQueueSizeBytes} bytes) exceeded. Current queue size: ${this.queueSizeBytes} bytes, attempted addition: ${sizeBytes} bytes.`));
78
- }
79
- if (sizeBytes > 0) {
80
- this.queueSizeBytes += sizeBytes;
81
- }
82
- const onFailedResponseHook = this.onFailedResponseHook;
83
- let promise = this.queue.add(() => pRetry(() => callable(...args).catch((error) => {
84
- if (error instanceof Error) {
85
- throw error;
27
+ return globalEnv;
28
+ };
29
+ let runtimeEnvironment;
30
+ function getRuntimeEnvironment() {
31
+ if (runtimeEnvironment === void 0) {
32
+ const env = getEnv();
33
+ const releaseEnv = getShas();
34
+ runtimeEnvironment = {
35
+ library: "langsmith",
36
+ runtime: env,
37
+ sdk: "langsmith-js",
38
+ sdk_version: __version__,
39
+ ...releaseEnv
40
+ };
41
+ }
42
+ return runtimeEnvironment;
43
+ }
44
+ function getLangSmithEnvVarsMetadata() {
45
+ const allEnvVars = getLangSmithEnvironmentVariables();
46
+ const envVars = {};
47
+ const excluded = [
48
+ "LANGCHAIN_API_KEY",
49
+ "LANGCHAIN_ENDPOINT",
50
+ "LANGCHAIN_TRACING_V2",
51
+ "LANGCHAIN_PROJECT",
52
+ "LANGCHAIN_SESSION",
53
+ "LANGSMITH_API_KEY",
54
+ "LANGSMITH_ENDPOINT",
55
+ "LANGSMITH_TRACING_V2",
56
+ "LANGSMITH_PROJECT",
57
+ "LANGSMITH_SESSION"
58
+ ];
59
+ for (const [key, value] of Object.entries(allEnvVars)) {
60
+ if (typeof value === "string" && !excluded.includes(key) && !key.toLowerCase().includes("key") && !key.toLowerCase().includes("secret") && !key.toLowerCase().includes("token")) {
61
+ if (key === "LANGCHAIN_REVISION_ID") {
62
+ envVars["revision_id"] = value;
86
63
  } else {
87
- throw new Error(error);
64
+ envVars[key] = value;
88
65
  }
89
- }), {
90
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
91
- async onFailedAttempt({ error }) {
92
- if (error.message.startsWith("Cancel") || error.message.startsWith("TimeoutError") || error.name === "TimeoutError" || error.message.startsWith("AbortError")) {
93
- throw error;
94
- }
95
- if (error?.code === "ECONNABORTED") {
96
- throw error;
97
- }
98
- const response = error?.response;
99
- if (onFailedResponseHook) {
100
- const handled = await onFailedResponseHook(response);
101
- if (handled) {
102
- return;
103
- }
104
- }
105
- const status = response?.status ?? error?.status;
106
- if (status) {
107
- if (!STATUS_RETRYABLE.includes(+status)) {
108
- throw error;
66
+ }
67
+ }
68
+ return envVars;
69
+ }
70
+ function getLangSmithEnvironmentVariables() {
71
+ const envVars = {};
72
+ try {
73
+ if (typeof process !== "undefined" && process.env) {
74
+ for (const [key, value] of Object.entries(process.env)) {
75
+ if ((key.startsWith("LANGCHAIN_") || key.startsWith("LANGSMITH_")) && value != null) {
76
+ if ((key.toLowerCase().includes("key") || key.toLowerCase().includes("secret") || key.toLowerCase().includes("token")) && typeof value === "string") {
77
+ envVars[key] = value.slice(0, 2) + "*".repeat(value.length - 4) + value.slice(-2);
78
+ } else {
79
+ envVars[key] = value;
109
80
  }
110
81
  }
111
- },
112
- retries: this.maxRetries,
113
- randomize: true
114
- }), { throwOnTimeout: true });
115
- if (sizeBytes > 0) {
116
- promise = promise.finally(() => {
117
- this.queueSizeBytes -= sizeBytes;
118
- });
82
+ }
119
83
  }
120
- if (options.signal) {
121
- return Promise.race([
122
- promise,
123
- new Promise((_, reject) => {
124
- options.signal?.addEventListener("abort", () => {
125
- reject(new Error("AbortError"));
126
- });
127
- })
128
- ]);
84
+ } catch (e) {
85
+ }
86
+ return envVars;
87
+ }
88
+ function getEnvironmentVariable(name) {
89
+ try {
90
+ return typeof process !== "undefined" ? (
91
+ // eslint-disable-next-line no-process-env
92
+ process.env?.[name]
93
+ ) : void 0;
94
+ } catch (e) {
95
+ return void 0;
96
+ }
97
+ }
98
+ function getLangSmithEnvironmentVariable(name) {
99
+ return getEnvironmentVariable(`LANGSMITH_${name}`) || getEnvironmentVariable(`LANGCHAIN_${name}`);
100
+ }
101
+ let cachedCommitSHAs;
102
+ function getShas() {
103
+ if (cachedCommitSHAs !== void 0) {
104
+ return cachedCommitSHAs;
105
+ }
106
+ const common_release_envs = [
107
+ "VERCEL_GIT_COMMIT_SHA",
108
+ "NEXT_PUBLIC_VERCEL_GIT_COMMIT_SHA",
109
+ "COMMIT_REF",
110
+ "RENDER_GIT_COMMIT",
111
+ "CI_COMMIT_SHA",
112
+ "CIRCLE_SHA1",
113
+ "CF_PAGES_COMMIT_SHA",
114
+ "REACT_APP_GIT_SHA",
115
+ "SOURCE_VERSION",
116
+ "GITHUB_SHA",
117
+ "TRAVIS_COMMIT",
118
+ "GIT_COMMIT",
119
+ "BUILD_VCS_NUMBER",
120
+ "bamboo_planRepository_revision",
121
+ "Build.SourceVersion",
122
+ "BITBUCKET_COMMIT",
123
+ "DRONE_COMMIT_SHA",
124
+ "SEMAPHORE_GIT_SHA",
125
+ "BUILDKITE_COMMIT"
126
+ ];
127
+ const shas = {};
128
+ for (const env of common_release_envs) {
129
+ const envVar = getEnvironmentVariable(env);
130
+ if (envVar !== void 0) {
131
+ shas[env] = envVar;
129
132
  }
130
- return promise;
131
133
  }
134
+ cachedCommitSHAs = shas;
135
+ return shas;
136
+ }
137
+ function getOtelEnabled() {
138
+ return getEnvironmentVariable("OTEL_ENABLED") === "true" || getLangSmithEnvironmentVariable("OTEL_ENABLED") === "true";
132
139
  }
133
140
  export {
134
- AsyncCaller
141
+ getEnv,
142
+ getEnvironmentVariable,
143
+ getLangSmithEnvVarsMetadata,
144
+ getLangSmithEnvironmentVariable,
145
+ getLangSmithEnvironmentVariables,
146
+ getOtelEnabled,
147
+ getRuntimeEnvironment,
148
+ getShas,
149
+ isBrowser,
150
+ isDeno,
151
+ isJsDom,
152
+ isNode,
153
+ isWebWorker
135
154
  };
136
155
  //# sourceMappingURL=index.es285.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es285.js","sources":["../node_modules/.pnpm/langsmith@0.4.6_openai@6.16.0_zod@4.3.5_/node_modules/langsmith/dist/utils/async_caller.js"],"sourcesContent":["import pRetry from \"../utils/p-retry/index.js\";\nimport PQueueMod from \"p-queue\";\nconst STATUS_RETRYABLE = [\n 408, // Request Timeout\n 425, // Too Early\n 429, // Too Many Requests\n 500, // Internal Server Error\n 502, // Bad Gateway\n 503, // Service Unavailable\n 504, // Gateway Timeout\n];\n/**\n * A class that can be used to make async calls with concurrency and retry logic.\n *\n * This is useful for making calls to any kind of \"expensive\" external resource,\n * be it because it's rate-limited, subject to network issues, etc.\n *\n * Concurrent calls are limited by the `maxConcurrency` parameter, which defaults\n * to `Infinity`. This means that by default, all calls will be made in parallel.\n *\n * Retries are limited by the `maxRetries` parameter, which defaults to 6. This\n * means that by default, each call will be retried up to 6 times, with an\n * exponential backoff between each attempt.\n */\nexport class AsyncCaller {\n constructor(params) {\n Object.defineProperty(this, \"maxConcurrency\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"maxRetries\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"maxQueueSizeBytes\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"queue\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"onFailedResponseHook\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"queueSizeBytes\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 0\n });\n this.maxConcurrency = params.maxConcurrency ?? Infinity;\n this.maxRetries = params.maxRetries ?? 6;\n this.maxQueueSizeBytes = params.maxQueueSizeBytes;\n if (\"default\" in PQueueMod) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n this.queue = new PQueueMod.default({\n concurrency: this.maxConcurrency,\n });\n }\n else {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n this.queue = new PQueueMod({ concurrency: this.maxConcurrency });\n }\n this.onFailedResponseHook = params?.onFailedResponseHook;\n }\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n call(callable, ...args) {\n return this.callWithOptions({}, callable, ...args);\n }\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n callWithOptions(options, callable, ...args) {\n const sizeBytes = options.sizeBytes ?? 0;\n // Check if adding this call would exceed the byte size limit\n if (this.maxQueueSizeBytes !== undefined &&\n sizeBytes > 0 &&\n this.queueSizeBytes + sizeBytes > this.maxQueueSizeBytes) {\n return Promise.reject(new Error(`Queue size limit (${this.maxQueueSizeBytes} bytes) exceeded. ` +\n `Current queue size: ${this.queueSizeBytes} bytes, attempted addition: ${sizeBytes} bytes.`));\n }\n // Add to queue size tracking\n if (sizeBytes > 0) {\n this.queueSizeBytes += sizeBytes;\n }\n const onFailedResponseHook = this.onFailedResponseHook;\n let promise = this.queue.add(() => pRetry(() => callable(...args).catch((error) => {\n // eslint-disable-next-line no-instanceof/no-instanceof\n if (error instanceof Error) {\n throw error;\n }\n else {\n throw new Error(error);\n }\n }), {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n async onFailedAttempt({ error }) {\n if (error.message.startsWith(\"Cancel\") ||\n error.message.startsWith(\"TimeoutError\") ||\n error.name === \"TimeoutError\" ||\n error.message.startsWith(\"AbortError\")) {\n throw error;\n }\n if (error?.code === \"ECONNABORTED\") {\n throw error;\n }\n const response = error?.response;\n if (onFailedResponseHook) {\n const handled = await onFailedResponseHook(response);\n if (handled) {\n return;\n }\n }\n const status = response?.status ?? error?.status;\n if (status) {\n if (!STATUS_RETRYABLE.includes(+status)) {\n throw error;\n }\n }\n },\n retries: this.maxRetries,\n randomize: true,\n }), { throwOnTimeout: true });\n // Decrement queue size when the call completes (success or failure)\n if (sizeBytes > 0) {\n promise = promise.finally(() => {\n this.queueSizeBytes -= sizeBytes;\n });\n }\n // Handle signal cancellation\n if (options.signal) {\n return Promise.race([\n promise,\n new Promise((_, reject) => {\n options.signal?.addEventListener(\"abort\", () => {\n reject(new Error(\"AbortError\"));\n });\n }),\n ]);\n }\n return promise;\n }\n}\n"],"names":[],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.es285.js","sources":["../node_modules/.pnpm/langsmith@0.4.6_openai@6.16.0_zod@4.3.5_/node_modules/langsmith/dist/utils/env.js"],"sourcesContent":["// Inlined from https://github.com/flexdinesh/browser-or-node\nimport { __version__ } from \"../index.js\";\nlet globalEnv;\nexport const isBrowser = () => typeof window !== \"undefined\" && typeof window.document !== \"undefined\";\nexport const isWebWorker = () => typeof globalThis === \"object\" &&\n globalThis.constructor &&\n globalThis.constructor.name === \"DedicatedWorkerGlobalScope\";\nexport const isJsDom = () => (typeof window !== \"undefined\" && window.name === \"nodejs\") ||\n (typeof navigator !== \"undefined\" && navigator.userAgent.includes(\"jsdom\"));\n// Supabase Edge Function provides a `Deno` global object\n// without `version` property\nexport const isDeno = () => typeof Deno !== \"undefined\";\n// Mark not-as-node if in Supabase Edge Function\nexport const isNode = () => typeof process !== \"undefined\" &&\n typeof process.versions !== \"undefined\" &&\n typeof process.versions.node !== \"undefined\" &&\n !isDeno();\nexport const getEnv = () => {\n if (globalEnv) {\n return globalEnv;\n }\n // @ts-expect-error Bun types are not imported due to conflicts with Node types\n if (typeof Bun !== \"undefined\") {\n globalEnv = \"bun\";\n }\n else if (isBrowser()) {\n globalEnv = \"browser\";\n }\n else if (isNode()) {\n globalEnv = \"node\";\n }\n else if (isWebWorker()) {\n globalEnv = \"webworker\";\n }\n else if (isJsDom()) {\n globalEnv = \"jsdom\";\n }\n else if (isDeno()) {\n globalEnv = \"deno\";\n }\n else {\n globalEnv = \"other\";\n }\n return globalEnv;\n};\nlet runtimeEnvironment;\nexport function getRuntimeEnvironment() {\n if (runtimeEnvironment === undefined) {\n const env = getEnv();\n const releaseEnv = getShas();\n runtimeEnvironment = {\n library: \"langsmith\",\n runtime: env,\n sdk: \"langsmith-js\",\n sdk_version: __version__,\n ...releaseEnv,\n };\n }\n return runtimeEnvironment;\n}\n/**\n * Retrieves the LangSmith-specific metadata from the current runtime environment.\n *\n * @returns {Record<string, string>}\n * - A record of LangSmith-specific metadata environment variables.\n */\nexport function getLangSmithEnvVarsMetadata() {\n const allEnvVars = getLangSmithEnvironmentVariables();\n const envVars = {};\n const excluded = [\n \"LANGCHAIN_API_KEY\",\n \"LANGCHAIN_ENDPOINT\",\n \"LANGCHAIN_TRACING_V2\",\n \"LANGCHAIN_PROJECT\",\n \"LANGCHAIN_SESSION\",\n \"LANGSMITH_API_KEY\",\n \"LANGSMITH_ENDPOINT\",\n \"LANGSMITH_TRACING_V2\",\n \"LANGSMITH_PROJECT\",\n \"LANGSMITH_SESSION\",\n ];\n for (const [key, value] of Object.entries(allEnvVars)) {\n if (typeof value === \"string\" &&\n !excluded.includes(key) &&\n !key.toLowerCase().includes(\"key\") &&\n !key.toLowerCase().includes(\"secret\") &&\n !key.toLowerCase().includes(\"token\")) {\n if (key === \"LANGCHAIN_REVISION_ID\") {\n envVars[\"revision_id\"] = value;\n }\n else {\n envVars[key] = value;\n }\n }\n }\n return envVars;\n}\n/**\n * Retrieves only the LangChain/LangSmith-prefixed environment variables from the current runtime environment.\n * This is more efficient than copying all environment variables.\n *\n * @returns {Record<string, string>}\n * - A record of LangChain/LangSmith environment variables.\n */\nexport function getLangSmithEnvironmentVariables() {\n const envVars = {};\n try {\n // Check for Node.js environment\n // eslint-disable-next-line no-process-env\n if (typeof process !== \"undefined\" && process.env) {\n // eslint-disable-next-line no-process-env\n for (const [key, value] of Object.entries(process.env)) {\n if ((key.startsWith(\"LANGCHAIN_\") || key.startsWith(\"LANGSMITH_\")) &&\n value != null) {\n if ((key.toLowerCase().includes(\"key\") ||\n key.toLowerCase().includes(\"secret\") ||\n key.toLowerCase().includes(\"token\")) &&\n typeof value === \"string\") {\n envVars[key] =\n value.slice(0, 2) +\n \"*\".repeat(value.length - 4) +\n value.slice(-2);\n }\n else {\n envVars[key] = value;\n }\n }\n }\n }\n }\n catch (e) {\n // Catch any errors that might occur while trying to access environment variables\n }\n return envVars;\n}\nexport function getEnvironmentVariable(name) {\n // Certain Deno setups will throw an error if you try to access environment variables\n // https://github.com/hwchase17/langchainjs/issues/1412\n try {\n return typeof process !== \"undefined\"\n ? // eslint-disable-next-line no-process-env\n process.env?.[name]\n : undefined;\n }\n catch (e) {\n return undefined;\n }\n}\nexport function getLangSmithEnvironmentVariable(name) {\n return (getEnvironmentVariable(`LANGSMITH_${name}`) ||\n getEnvironmentVariable(`LANGCHAIN_${name}`));\n}\nexport function setEnvironmentVariable(name, value) {\n if (typeof process !== \"undefined\") {\n // eslint-disable-next-line no-process-env\n process.env[name] = value;\n }\n}\nlet cachedCommitSHAs;\n/**\n * Get the Git commit SHA from common environment variables\n * used by different CI/CD platforms.\n * @returns {string | undefined} The Git commit SHA or undefined if not found.\n */\nexport function getShas() {\n if (cachedCommitSHAs !== undefined) {\n return cachedCommitSHAs;\n }\n const common_release_envs = [\n \"VERCEL_GIT_COMMIT_SHA\",\n \"NEXT_PUBLIC_VERCEL_GIT_COMMIT_SHA\",\n \"COMMIT_REF\",\n \"RENDER_GIT_COMMIT\",\n \"CI_COMMIT_SHA\",\n \"CIRCLE_SHA1\",\n \"CF_PAGES_COMMIT_SHA\",\n \"REACT_APP_GIT_SHA\",\n \"SOURCE_VERSION\",\n \"GITHUB_SHA\",\n \"TRAVIS_COMMIT\",\n \"GIT_COMMIT\",\n \"BUILD_VCS_NUMBER\",\n \"bamboo_planRepository_revision\",\n \"Build.SourceVersion\",\n \"BITBUCKET_COMMIT\",\n \"DRONE_COMMIT_SHA\",\n \"SEMAPHORE_GIT_SHA\",\n \"BUILDKITE_COMMIT\",\n ];\n const shas = {};\n for (const env of common_release_envs) {\n const envVar = getEnvironmentVariable(env);\n if (envVar !== undefined) {\n shas[env] = envVar;\n }\n }\n cachedCommitSHAs = shas;\n return shas;\n}\nexport function getOtelEnabled() {\n return (getEnvironmentVariable(\"OTEL_ENABLED\") === \"true\" ||\n getLangSmithEnvironmentVariable(\"OTEL_ENABLED\") === \"true\");\n}\n"],"names":[],"mappings":"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","x_google_ignoreList":[0]}
@@ -1,18 +1,18 @@
1
- function isLangChainMessage(message) {
2
- return typeof message?._getType === "function";
3
- }
4
- function convertLangChainMessageToExample(message) {
5
- const converted = {
6
- type: message._getType(),
7
- data: { content: message.content }
8
- };
9
- if (message?.additional_kwargs && Object.keys(message.additional_kwargs).length > 0) {
10
- converted.data.additional_kwargs = { ...message.additional_kwargs };
1
+ import { v7 } from "uuid";
2
+ const UUID_REGEX = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
3
+ function assertUuid(str, which) {
4
+ if (!UUID_REGEX.test(str)) {
5
+ const msg = which !== void 0 ? `Invalid UUID for ${which}: ${str}` : `Invalid UUID: ${str}`;
6
+ throw new Error(msg);
11
7
  }
12
- return converted;
8
+ return str;
9
+ }
10
+ function uuid7FromTime(timestamp) {
11
+ const msecs = typeof timestamp === "string" ? Date.parse(timestamp) : timestamp;
12
+ return v7({ msecs, seq: 0 });
13
13
  }
14
14
  export {
15
- convertLangChainMessageToExample,
16
- isLangChainMessage
15
+ assertUuid,
16
+ uuid7FromTime
17
17
  };
18
18
  //# sourceMappingURL=index.es286.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es286.js","sources":["../node_modules/.pnpm/langsmith@0.4.6_openai@6.16.0_zod@4.3.5_/node_modules/langsmith/dist/utils/messages.js"],"sourcesContent":["export function isLangChainMessage(\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nmessage) {\n return typeof message?._getType === \"function\";\n}\nexport function convertLangChainMessageToExample(message) {\n const converted = {\n type: message._getType(),\n data: { content: message.content },\n };\n // Check for presence of keys in additional_kwargs\n if (message?.additional_kwargs &&\n Object.keys(message.additional_kwargs).length > 0) {\n converted.data.additional_kwargs = { ...message.additional_kwargs };\n }\n return converted;\n}\n"],"names":[],"mappings":"AAAO,SAAS,mBAEhB,SAAS;AACL,SAAO,OAAO,SAAS,aAAa;AACxC;AACO,SAAS,iCAAiC,SAAS;AACtD,QAAM,YAAY;AAAA,IACd,MAAM,QAAQ,SAAQ;AAAA,IACtB,MAAM,EAAE,SAAS,QAAQ,QAAO;AAAA,EACxC;AAEI,MAAI,SAAS,qBACT,OAAO,KAAK,QAAQ,iBAAiB,EAAE,SAAS,GAAG;AACnD,cAAU,KAAK,oBAAoB,EAAE,GAAG,QAAQ,kBAAiB;AAAA,EACrE;AACA,SAAO;AACX;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.es286.js","sources":["../node_modules/.pnpm/langsmith@0.4.6_openai@6.16.0_zod@4.3.5_/node_modules/langsmith/dist/utils/_uuid.js"],"sourcesContent":["// Relaxed UUID validation regex (allows any valid UUID format including nil UUIDs)\nconst UUID_REGEX = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;\nimport { v7 as uuidv7 } from \"uuid\";\nimport { warnOnce } from \"./warn.js\";\nlet UUID7_WARNING_EMITTED = false;\nexport function assertUuid(str, which) {\n // Use relaxed regex validation instead of strict uuid.validate()\n // This allows edge cases like nil UUIDs or test UUIDs that might not pass strict validation\n if (!UUID_REGEX.test(str)) {\n const msg = which !== undefined\n ? `Invalid UUID for ${which}: ${str}`\n : `Invalid UUID: ${str}`;\n throw new Error(msg);\n }\n return str;\n}\n/**\n * Generate a UUID v7 from a timestamp.\n *\n * @param timestamp - The timestamp in milliseconds\n * @returns A UUID v7 string\n */\nexport function uuid7FromTime(timestamp) {\n const msecs = typeof timestamp === \"string\" ? Date.parse(timestamp) : timestamp;\n // Work around uuid@10 behavior where providing only { msecs }\n // may not set the internal timestamp used for stringification.\n // Providing a seq ensures the implementation updates its internal state\n // and encodes the provided milliseconds into the UUID bytes.\n return uuidv7({ msecs, seq: 0 });\n}\n/**\n * Get the version of a UUID string.\n * @param uuidStr - The UUID string to check\n * @returns The version number (1-7) or null if invalid\n */\nexport function getUuidVersion(uuidStr) {\n if (!UUID_REGEX.test(uuidStr)) {\n return null;\n }\n // Version is in bits 48-51\n // Format: xxxxxxxx-xxxx-Vxxx-xxxx-xxxxxxxxxxxx\n const versionChar = uuidStr[14];\n return parseInt(versionChar, 16);\n}\n/**\n * Warn if a UUID is not version 7.\n *\n * @param uuidStr - The UUID string to check\n * @param idType - The type of ID (e.g., \"run_id\", \"trace_id\") for the warning message\n */\nexport function warnIfNotUuidV7(uuidStr, _idType) {\n const version = getUuidVersion(uuidStr);\n if (version !== null && version !== 7 && !UUID7_WARNING_EMITTED) {\n UUID7_WARNING_EMITTED = true;\n warnOnce(`LangSmith now uses UUID v7 for run and trace identifiers. ` +\n `This warning appears when passing custom IDs. ` +\n `Please use: import { uuidv7 } from 'langsmith'; const id = uuidv7(); ` +\n `Future versions will require UUID v7.`);\n }\n}\n"],"names":["uuidv7"],"mappings":";AACA,MAAM,aAAa;AAIZ,SAAS,WAAW,KAAK,OAAO;AAGnC,MAAI,CAAC,WAAW,KAAK,GAAG,GAAG;AACvB,UAAM,MAAM,UAAU,SAChB,oBAAoB,KAAK,KAAK,GAAG,KACjC,iBAAiB,GAAG;AAC1B,UAAM,IAAI,MAAM,GAAG;AAAA,EACvB;AACA,SAAO;AACX;AAOO,SAAS,cAAc,WAAW;AACrC,QAAM,QAAQ,OAAO,cAAc,WAAW,KAAK,MAAM,SAAS,IAAI;AAKtE,SAAOA,GAAO,EAAE,OAAO,KAAK,EAAC,CAAE;AACnC;","x_google_ignoreList":[0]}