@adaptic/lumic-utils 1.0.20 → 1.0.22

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 (24) hide show
  1. package/dist/{apollo-client.client-DRk6kygw.js → apollo-client.client-Bu5mc2I8.js} +4 -4
  2. package/dist/{apollo-client.client-DRk6kygw.js.map → apollo-client.client-Bu5mc2I8.js.map} +1 -1
  3. package/dist/{apollo-client.client-DVsbR05r.js → apollo-client.client-YzlpL7kf.js} +3 -3
  4. package/dist/{apollo-client.client-DVsbR05r.js.map → apollo-client.client-YzlpL7kf.js.map} +1 -1
  5. package/dist/{apollo-client.server-Djh4v__C.js → apollo-client.server-BTHAQqYl.js} +3 -3
  6. package/dist/{apollo-client.server-Djh4v__C.js.map → apollo-client.server-BTHAQqYl.js.map} +1 -1
  7. package/dist/{apollo-client.server-L8JR2ko_.js → apollo-client.server-sD1QteQO.js} +3 -3
  8. package/dist/{apollo-client.server-L8JR2ko_.js.map → apollo-client.server-sD1QteQO.js.map} +1 -1
  9. package/dist/{index-eU6Q74W8.js → index-B_4Q2noT.js} +2 -2
  10. package/dist/{index-eU6Q74W8.js.map → index-B_4Q2noT.js.map} +1 -1
  11. package/dist/{index-Cs56Fq24.js → index-CWx6sW9a.js} +2 -2
  12. package/dist/{index-Cs56Fq24.js.map → index-CWx6sW9a.js.map} +1 -1
  13. package/dist/{index-CSOg0U0R.js → index-DPaCMqua.js} +211 -23
  14. package/dist/{index-BVl0tRmx.js.map → index-DPaCMqua.js.map} +1 -1
  15. package/dist/{index-BVl0tRmx.js → index-DfuMX-MS.js} +211 -23
  16. package/dist/{index-CSOg0U0R.js.map → index-DfuMX-MS.js.map} +1 -1
  17. package/dist/index.cjs +1 -1
  18. package/dist/index.mjs +1 -1
  19. package/dist/test.cjs +1 -1
  20. package/dist/test.mjs +1 -1
  21. package/dist/types/functions/llm-config.d.ts +9 -1
  22. package/dist/types/types/openai-types.d.ts +95 -5
  23. package/dist/types/utils/llm-cost-tracker.d.ts +3 -0
  24. package/package.json +1 -1
@@ -99,6 +99,25 @@ const OPENAI_COMPATIBLE_PROVIDERS = {
99
99
  * Supported models with their capabilities
100
100
  */
101
101
  const SUPPORTED_MODELS = {
102
+ // ── OpenAI GPT-5.5 series (current flagship) ─────────────────────────
103
+ 'gpt-5.5': {
104
+ provider: 'openai',
105
+ supportsTools: true,
106
+ supportsJson: true,
107
+ supportsStructuredOutput: true,
108
+ supportsDeveloperPrompt: true,
109
+ supportsTemperature: true,
110
+ isReasoningModel: false,
111
+ },
112
+ 'gpt-5.5-pro': {
113
+ provider: 'openai',
114
+ supportsTools: true,
115
+ supportsJson: true,
116
+ supportsStructuredOutput: true,
117
+ supportsDeveloperPrompt: true,
118
+ supportsTemperature: true,
119
+ isReasoningModel: false,
120
+ },
102
121
  // ── OpenAI GPT-5.4 series ────────────────────────────────────────────
103
122
  'gpt-5.4': {
104
123
  provider: 'openai',
@@ -221,6 +240,15 @@ const SUPPORTED_MODELS = {
221
240
  isReasoningModel: true,
222
241
  },
223
242
  // ── Anthropic Claude models ──────────────────────────────────────────
243
+ 'claude-opus-4-7': {
244
+ provider: 'anthropic',
245
+ supportsTools: true,
246
+ supportsJson: false,
247
+ supportsStructuredOutput: false,
248
+ supportsDeveloperPrompt: true,
249
+ supportsTemperature: true,
250
+ isReasoningModel: false,
251
+ },
224
252
  'claude-opus-4-6': {
225
253
  provider: 'anthropic',
226
254
  supportsTools: true,
@@ -249,6 +277,24 @@ const SUPPORTED_MODELS = {
249
277
  isReasoningModel: false,
250
278
  },
251
279
  // ── Deepseek models ──────────────────────────────────────────────────
280
+ 'deepseek-v4-pro': {
281
+ provider: 'deepseek',
282
+ supportsTools: true,
283
+ supportsJson: true,
284
+ supportsStructuredOutput: false,
285
+ supportsDeveloperPrompt: true,
286
+ supportsTemperature: true,
287
+ isReasoningModel: true,
288
+ },
289
+ 'deepseek-v4-flash': {
290
+ provider: 'deepseek',
291
+ supportsTools: true,
292
+ supportsJson: true,
293
+ supportsStructuredOutput: false,
294
+ supportsDeveloperPrompt: true,
295
+ supportsTemperature: true,
296
+ isReasoningModel: true,
297
+ },
252
298
  'deepseek-chat': {
253
299
  provider: 'deepseek',
254
300
  supportsTools: true,
@@ -268,6 +314,24 @@ const SUPPORTED_MODELS = {
268
314
  isReasoningModel: true,
269
315
  },
270
316
  // ── Kimi (Moonshot) models ───────────────────────────────────────────
317
+ 'kimi-k2.6': {
318
+ provider: 'kimi',
319
+ supportsTools: true,
320
+ supportsJson: true,
321
+ supportsStructuredOutput: false,
322
+ supportsDeveloperPrompt: true,
323
+ supportsTemperature: true,
324
+ isReasoningModel: false,
325
+ },
326
+ 'kimi-k2.5': {
327
+ provider: 'kimi',
328
+ supportsTools: true,
329
+ supportsJson: true,
330
+ supportsStructuredOutput: false,
331
+ supportsDeveloperPrompt: true,
332
+ supportsTemperature: true,
333
+ isReasoningModel: false,
334
+ },
271
335
  'kimi-k2-0905-preview': {
272
336
  provider: 'kimi',
273
337
  supportsTools: true,
@@ -333,6 +397,33 @@ const SUPPORTED_MODELS = {
333
397
  isReasoningModel: false,
334
398
  },
335
399
  // ── xAI Grok models ─────────────────────────────────────────────────
400
+ 'grok-4.3': {
401
+ provider: 'xai',
402
+ supportsTools: true,
403
+ supportsJson: true,
404
+ supportsStructuredOutput: true,
405
+ supportsDeveloperPrompt: true,
406
+ supportsTemperature: true,
407
+ isReasoningModel: false,
408
+ },
409
+ 'grok-4.20': {
410
+ provider: 'xai',
411
+ supportsTools: true,
412
+ supportsJson: true,
413
+ supportsStructuredOutput: true,
414
+ supportsDeveloperPrompt: true,
415
+ supportsTemperature: true,
416
+ isReasoningModel: false,
417
+ },
418
+ 'grok-4.1-fast': {
419
+ provider: 'xai',
420
+ supportsTools: true,
421
+ supportsJson: true,
422
+ supportsStructuredOutput: true,
423
+ supportsDeveloperPrompt: true,
424
+ supportsTemperature: true,
425
+ isReasoningModel: false,
426
+ },
336
427
  'grok-4': {
337
428
  provider: 'xai',
338
429
  supportsTools: true,
@@ -411,21 +502,41 @@ const SUPPORTED_MODELS = {
411
502
  * Common model aliases that map to canonical model names
412
503
  */
413
504
  const MODEL_ALIASES = {
414
- 'deepseek-r1': 'deepseek-reasoner',
415
- 'deepseek-v3': 'deepseek-chat',
416
- 'claude-4-opus': 'claude-opus-4-6',
505
+ // OpenAI aliases
506
+ 'gpt-5.5-flagship': 'gpt-5.5',
507
+ // Anthropic aliases
508
+ 'claude-opus-4.7': 'claude-opus-4-7',
509
+ 'claude-opus-4.6': 'claude-opus-4-6',
510
+ 'claude-sonnet-4.6': 'claude-sonnet-4-6',
511
+ 'claude-haiku-4.5': 'claude-haiku-4-5',
512
+ 'claude-4-opus': 'claude-opus-4-7',
417
513
  'claude-4-sonnet': 'claude-sonnet-4-6',
418
514
  'claude-4-haiku': 'claude-haiku-4-5',
515
+ 'claude-4.7-opus': 'claude-opus-4-7',
516
+ 'claude-4.6-opus': 'claude-opus-4-6',
517
+ // Deepseek aliases (legacy names route to V4 Flash thinking modes per DeepSeek migration policy)
518
+ 'deepseek-r1': 'deepseek-reasoner',
519
+ 'deepseek-v3': 'deepseek-chat',
520
+ 'deepseek-v4': 'deepseek-v4-pro',
521
+ // xAI aliases
419
522
  'grok-4-0709': 'grok-4',
523
+ 'grok-3-fast': 'grok-4-fast-non-reasoning',
524
+ 'grok-3-mini-fast': 'grok-3-mini',
525
+ 'grok-4-3': 'grok-4.3',
526
+ 'grok-4-20': 'grok-4.20',
527
+ // Gemini aliases
420
528
  'gemini-pro': 'gemini-3.1-pro-preview',
421
529
  'gemini-flash': 'gemini-3-flash-preview',
422
- 'kimi-k2.5': 'kimi-k2-0905-preview',
423
- 'moonshot-v1-auto': 'kimi-k2-0905-preview',
530
+ 'gemini-3.1-pro': 'gemini-3.1-pro-preview',
531
+ 'gemini-3-flash': 'gemini-3-flash-preview',
532
+ 'gemini-3.1-flash-lite': 'gemini-3.1-flash-lite-preview',
533
+ // Kimi aliases
534
+ 'moonshot-v1-auto': 'kimi-k2.6',
535
+ 'kimi-k3': 'kimi-k2.6',
536
+ // Qwen aliases
424
537
  'qwen-plus': 'qwen3.5-plus',
425
538
  'qwen-max': 'qwen3-max',
426
539
  'qwen-turbo': 'qwen3.5-flash',
427
- 'grok-3-fast': 'grok-4-fast-non-reasoning',
428
- 'grok-3-mini-fast': 'grok-3-mini',
429
540
  };
430
541
  /**
431
542
  * Type guard to check if a string is a valid supported model
@@ -455,12 +566,12 @@ function getModelProvider(model) {
455
566
  * Default model tiers per provider for use with LLM_MODEL_MINI/NORMAL/ADVANCED env vars
456
567
  */
457
568
  const PROVIDER_DEFAULT_MODELS = {
458
- openai: { mini: 'gpt-5.4-nano', normal: 'gpt-5.4-mini', advanced: 'gpt-5.4' },
459
- anthropic: { mini: 'claude-haiku-4-5', normal: 'claude-sonnet-4-6', advanced: 'claude-opus-4-6' },
460
- deepseek: { mini: 'deepseek-chat', normal: 'deepseek-chat', advanced: 'deepseek-reasoner' },
461
- kimi: { mini: 'kimi-k2-0905-preview', normal: 'kimi-k2-turbo-preview', advanced: 'kimi-k2-thinking-turbo' },
569
+ openai: { mini: 'gpt-5.4-nano', normal: 'gpt-5.4-mini', advanced: 'gpt-5.5' },
570
+ anthropic: { mini: 'claude-haiku-4-5', normal: 'claude-sonnet-4-6', advanced: 'claude-opus-4-7' },
571
+ deepseek: { mini: 'deepseek-v4-flash', normal: 'deepseek-v4-flash', advanced: 'deepseek-v4-pro' },
572
+ kimi: { mini: 'kimi-k2-0905-preview', normal: 'kimi-k2.5', advanced: 'kimi-k2.6' },
462
573
  qwen: { mini: 'qwen3.5-flash', normal: 'qwen3.5-plus', advanced: 'qwen3-max' },
463
- xai: { mini: 'grok-3-mini', normal: 'grok-4-fast-non-reasoning', advanced: 'grok-4' },
574
+ xai: { mini: 'grok-4.1-fast', normal: 'grok-4-fast-non-reasoning', advanced: 'grok-4.3' },
464
575
  gemini: { mini: 'gemini-3.1-flash-lite-preview', normal: 'gemini-3-flash-preview', advanced: 'gemini-3.1-pro-preview' },
465
576
  };
466
577
 
@@ -768,62 +879,98 @@ const DEFAULT_DEVELOPER_PROMPT = `
768
879
  Present complete, high-confidence, final answers only. Do not rephrase to be more brief or omit parts of answers.
769
880
  Respond only with final content (e.g. code, a json or yaml object, a formatted string, or a markdown document) and nothing else. Do not reply with a preamble, introduction, or conclusion.
770
881
  `;
771
- /** Token costs in USD per token. Last updated Mar 2026. */
882
+ /**
883
+ * Token costs in USD per token. Last updated May 2026.
884
+ *
885
+ * `cacheHitCost` reflects OpenAI's cached-input billing rate (~50% of the
886
+ * standard input rate per OpenAI's prompt caching documentation). When set,
887
+ * `calculateCost` splits prompt tokens into cached vs non-cached buckets and
888
+ * applies the discount; when omitted, cached tokens are billed at full input
889
+ * rate (a silent ~50% cost overstatement for cache-friendly workloads).
890
+ */
772
891
  const openAiModelCosts = {
892
+ 'gpt-5.5': {
893
+ inputCost: 5 / 1_000_000,
894
+ cacheHitCost: 2.5 / 1_000_000,
895
+ outputCost: 30 / 1_000_000,
896
+ },
897
+ 'gpt-5.5-pro': {
898
+ inputCost: 30 / 1_000_000,
899
+ cacheHitCost: 15 / 1_000_000,
900
+ outputCost: 180 / 1_000_000,
901
+ },
773
902
  'gpt-5.4': {
774
903
  inputCost: 2.5 / 1_000_000,
904
+ cacheHitCost: 1.25 / 1_000_000,
775
905
  outputCost: 15 / 1_000_000,
776
906
  },
777
907
  'gpt-5.4-mini': {
778
908
  inputCost: 0.75 / 1_000_000,
909
+ cacheHitCost: 0.375 / 1_000_000,
779
910
  outputCost: 4.5 / 1_000_000,
780
911
  },
781
912
  'gpt-5.4-nano': {
782
913
  inputCost: 0.2 / 1_000_000,
914
+ cacheHitCost: 0.1 / 1_000_000,
783
915
  outputCost: 1.25 / 1_000_000,
784
916
  },
785
917
  'gpt-5': {
786
918
  inputCost: 2.5 / 1_000_000,
919
+ cacheHitCost: 1.25 / 1_000_000,
787
920
  outputCost: 10 / 1_000_000,
788
921
  },
789
922
  'gpt-5-mini': {
790
923
  inputCost: 0.15 / 1_000_000,
924
+ cacheHitCost: 0.075 / 1_000_000,
791
925
  outputCost: 0.6 / 1_000_000,
792
926
  },
793
927
  'o1-mini': {
794
928
  inputCost: 1.1 / 1_000_000,
929
+ cacheHitCost: 0.55 / 1_000_000,
795
930
  outputCost: 4.4 / 1_000_000,
796
931
  },
797
932
  'o1': {
798
933
  inputCost: 15 / 1_000_000,
934
+ cacheHitCost: 7.5 / 1_000_000,
799
935
  outputCost: 60 / 1_000_000,
800
936
  },
801
937
  'o3-mini': {
802
938
  inputCost: 1.1 / 1_000_000,
939
+ cacheHitCost: 0.55 / 1_000_000,
803
940
  outputCost: 4.4 / 1_000_000,
804
941
  },
805
942
  'o3': {
806
943
  inputCost: 2 / 1_000_000,
944
+ cacheHitCost: 1 / 1_000_000,
807
945
  outputCost: 8 / 1_000_000,
808
946
  },
809
947
  'gpt-4.1': {
810
948
  inputCost: 2 / 1_000_000,
949
+ cacheHitCost: 1 / 1_000_000,
811
950
  outputCost: 8 / 1_000_000,
812
951
  },
813
952
  'gpt-4.1-mini': {
814
953
  inputCost: 0.4 / 1_000_000,
954
+ cacheHitCost: 0.2 / 1_000_000,
815
955
  outputCost: 1.6 / 1_000_000,
816
956
  },
817
957
  'gpt-4.1-nano': {
818
958
  inputCost: 0.1 / 1_000_000,
959
+ cacheHitCost: 0.05 / 1_000_000,
819
960
  outputCost: 0.4 / 1_000_000,
820
961
  },
821
962
  'o4-mini': {
822
963
  inputCost: 1.1 / 1_000_000,
964
+ cacheHitCost: 0.55 / 1_000_000,
823
965
  outputCost: 4.4 / 1_000_000,
824
966
  },
825
967
  };
826
968
  const anthropicModelCosts = {
969
+ 'claude-opus-4-7': {
970
+ inputCost: 5 / 1_000_000,
971
+ outputCost: 25 / 1_000_000,
972
+ cacheHitCost: 0.5 / 1_000_000,
973
+ },
827
974
  'claude-opus-4-6': {
828
975
  inputCost: 15 / 1_000_000,
829
976
  outputCost: 75 / 1_000_000,
@@ -841,6 +988,16 @@ const anthropicModelCosts = {
841
988
  },
842
989
  };
843
990
  const deepseekModelCosts = {
991
+ 'deepseek-v4-pro': {
992
+ inputCost: 0.55 / 1_000_000,
993
+ cacheHitCost: 0.14 / 1_000_000,
994
+ outputCost: 2.19 / 1_000_000,
995
+ },
996
+ 'deepseek-v4-flash': {
997
+ inputCost: 0.27 / 1_000_000,
998
+ cacheHitCost: 0.07 / 1_000_000,
999
+ outputCost: 1.1 / 1_000_000,
1000
+ },
844
1001
  'deepseek-chat': {
845
1002
  inputCost: 0.27 / 1_000_000,
846
1003
  cacheHitCost: 0.07 / 1_000_000,
@@ -853,6 +1010,14 @@ const deepseekModelCosts = {
853
1010
  },
854
1011
  };
855
1012
  const kimiModelCosts = {
1013
+ 'kimi-k2.6': {
1014
+ inputCost: 0.74 / 1_000_000,
1015
+ outputCost: 3.49 / 1_000_000,
1016
+ },
1017
+ 'kimi-k2.5': {
1018
+ inputCost: 0.44 / 1_000_000,
1019
+ outputCost: 2 / 1_000_000,
1020
+ },
856
1021
  'kimi-k2-0905-preview': {
857
1022
  inputCost: 0.15 / 1_000_000,
858
1023
  outputCost: 0.6 / 1_000_000,
@@ -885,6 +1050,21 @@ const qwenModelCosts = {
885
1050
  },
886
1051
  };
887
1052
  const xaiModelCosts = {
1053
+ 'grok-4.3': {
1054
+ inputCost: 1.25 / 1_000_000,
1055
+ outputCost: 2.5 / 1_000_000,
1056
+ cacheHitCost: 0.31 / 1_000_000,
1057
+ },
1058
+ 'grok-4.20': {
1059
+ inputCost: 2 / 1_000_000,
1060
+ outputCost: 6 / 1_000_000,
1061
+ cacheHitCost: 0.5 / 1_000_000,
1062
+ },
1063
+ 'grok-4.1-fast': {
1064
+ inputCost: 0.2 / 1_000_000,
1065
+ outputCost: 0.5 / 1_000_000,
1066
+ cacheHitCost: 0.05 / 1_000_000,
1067
+ },
888
1068
  'grok-4': {
889
1069
  inputCost: 3 / 1_000_000,
890
1070
  outputCost: 15 / 1_000_000,
@@ -911,16 +1091,16 @@ const xaiModelCosts = {
911
1091
  };
912
1092
  const geminiModelCosts = {
913
1093
  'gemini-3.1-pro-preview': {
914
- inputCost: 1.25 / 1_000_000,
915
- outputCost: 10 / 1_000_000,
1094
+ inputCost: 2 / 1_000_000,
1095
+ outputCost: 12 / 1_000_000,
916
1096
  },
917
1097
  'gemini-3-flash-preview': {
918
- inputCost: 0.15 / 1_000_000,
919
- outputCost: 0.6 / 1_000_000,
1098
+ inputCost: 0.5 / 1_000_000,
1099
+ outputCost: 3 / 1_000_000,
920
1100
  },
921
1101
  'gemini-3.1-flash-lite-preview': {
922
- inputCost: 0.075 / 1_000_000,
923
- outputCost: 0.3 / 1_000_000,
1102
+ inputCost: 0.25 / 1_000_000,
1103
+ outputCost: 1.5 / 1_000_000,
924
1104
  },
925
1105
  };
926
1106
  /**
@@ -1894,7 +2074,10 @@ class LLMCostTracker {
1894
2074
  timestamp: Date.now(),
1895
2075
  };
1896
2076
  this.usageRecords.push(record);
1897
- getLumicLogger().info(`LLM cost tracked: ${provider}/${model} - $${cost.toFixed(6)}`, { provider, model, inputTokens, outputTokens, cost });
2077
+ // Emit cachedTokens and reasoningTokens explicitly so operators can
2078
+ // verify cache effectiveness from logs alone (the prior log shape only
2079
+ // surfaced inputTokens and outputTokens, hiding the cache discount).
2080
+ getLumicLogger().info(`LLM cost tracked: ${provider}/${model} - $${cost.toFixed(6)}`, { provider, model, inputTokens, cachedTokens: cacheHitTokens, outputTokens, reasoningTokens, cost });
1898
2081
  }
1899
2082
  /**
1900
2083
  * Records usage from an image generation call.
@@ -1975,11 +2158,13 @@ class LLMCostTracker {
1975
2158
  const images = this.getImageCosts();
1976
2159
  let totalCost = 0;
1977
2160
  let totalInputTokens = 0;
2161
+ let totalCacheHitTokens = 0;
1978
2162
  let totalOutputTokens = 0;
1979
2163
  let totalReasoningTokens = 0;
1980
2164
  for (const summary of Object.values(byModel)) {
1981
2165
  totalCost += summary.totalCost;
1982
2166
  totalInputTokens += summary.totalInputTokens;
2167
+ totalCacheHitTokens += summary.totalCacheHitTokens;
1983
2168
  totalOutputTokens += summary.totalOutputTokens;
1984
2169
  totalReasoningTokens += summary.totalReasoningTokens;
1985
2170
  }
@@ -1996,6 +2181,7 @@ class LLMCostTracker {
1996
2181
  totalCost,
1997
2182
  totalCalls: this.usageRecords.length + this.imageRecords.length,
1998
2183
  totalInputTokens,
2184
+ totalCacheHitTokens,
1999
2185
  totalOutputTokens,
2000
2186
  totalReasoningTokens,
2001
2187
  byModel,
@@ -2018,7 +2204,9 @@ class LLMCostTracker {
2018
2204
  cost: `$${m.totalCost.toFixed(6)}`,
2019
2205
  calls: m.callCount,
2020
2206
  inputTokens: m.totalInputTokens,
2207
+ cachedTokens: m.totalCacheHitTokens,
2021
2208
  outputTokens: m.totalOutputTokens,
2209
+ reasoningTokens: m.totalReasoningTokens,
2022
2210
  }));
2023
2211
  const images = Object.values(summary.images).map((img) => ({
2024
2212
  model: img.model,
@@ -22821,11 +23009,11 @@ let poolConfig = DEFAULT_POOL_CONFIG;
22821
23009
  async function loadApolloModules() {
22822
23010
  if (typeof window === "undefined" || process.env.AWS_EXECUTION_ENV) {
22823
23011
  // Server-side (or Lambda): load the CommonJS‑based implementation.
22824
- return (await Promise.resolve().then(function () { return require('./apollo-client.server-Djh4v__C.js'); }));
23012
+ return (await Promise.resolve().then(function () { return require('./apollo-client.server-BTHAQqYl.js'); }));
22825
23013
  }
22826
23014
  else {
22827
23015
  // Client-side: load the ESM‑based implementation.
22828
- return (await Promise.resolve().then(function () { return require('./apollo-client.client-DVsbR05r.js'); }));
23016
+ return (await Promise.resolve().then(function () { return require('./apollo-client.client-YzlpL7kf.js'); }));
22829
23017
  }
22830
23018
  }
22831
23019
  /**
@@ -81536,4 +81724,4 @@ exports.withCorrelationId = withCorrelationId;
81536
81724
  exports.withMetrics = withMetrics;
81537
81725
  exports.withRateLimit = withRateLimit;
81538
81726
  exports.withRetry = withRetry;
81539
- //# sourceMappingURL=index-BVl0tRmx.js.map
81727
+ //# sourceMappingURL=index-DfuMX-MS.js.map