@markusylisiurunen/tau 0.2.67 → 0.2.69

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 (45) hide show
  1. package/README.md +55 -68
  2. package/dist/core/async/cli.js +2 -1
  3. package/dist/core/async/cli.js.map +1 -1
  4. package/dist/core/auth/cli.js +1 -1
  5. package/dist/core/auth/cli.js.map +1 -1
  6. package/dist/core/auth/providers/openai_codex.js +1 -1
  7. package/dist/core/auth/providers/openai_codex.js.map +1 -1
  8. package/dist/core/cli.js +3 -3
  9. package/dist/core/config/content_loader.js +110 -43
  10. package/dist/core/config/content_loader.js.map +1 -1
  11. package/dist/core/config/paths.js +2 -1
  12. package/dist/core/config/paths.js.map +1 -1
  13. package/dist/core/config/runtime.js +13 -4
  14. package/dist/core/config/runtime.js.map +1 -1
  15. package/dist/core/config/schema.js +25 -21
  16. package/dist/core/config/schema.js.map +1 -1
  17. package/dist/core/config/skills_loader.js +5 -10
  18. package/dist/core/config/skills_loader.js.map +1 -1
  19. package/dist/core/config/virtual_bundle.js +1 -1
  20. package/dist/core/config/virtual_bundle.js.map +1 -1
  21. package/dist/core/models/catalog.js +315 -0
  22. package/dist/core/models/catalog.js.map +1 -1
  23. package/dist/core/personas.js +15 -7
  24. package/dist/core/personas.js.map +1 -1
  25. package/dist/core/session/session_engine.js +27 -0
  26. package/dist/core/session/session_engine.js.map +1 -1
  27. package/dist/core/subagents/control_plane.js +5 -2
  28. package/dist/core/subagents/control_plane.js.map +1 -1
  29. package/dist/core/subagents/launch_model.js +7 -10
  30. package/dist/core/subagents/launch_model.js.map +1 -1
  31. package/dist/core/subagents/subagent_engine.js +2 -1
  32. package/dist/core/subagents/subagent_engine.js.map +1 -1
  33. package/dist/core/tools/registry.js.map +1 -1
  34. package/dist/core/tools/send_input_to_agent.js +1 -0
  35. package/dist/core/tools/send_input_to_agent.js.map +1 -1
  36. package/dist/core/tools/spawn_agent.js +18 -2
  37. package/dist/core/tools/spawn_agent.js.map +1 -1
  38. package/dist/core/utils/agents_files.js +5 -1
  39. package/dist/core/utils/agents_files.js.map +1 -1
  40. package/dist/core/utils/mistral_transcription.js +1 -1
  41. package/dist/core/utils/mistral_transcription.js.map +1 -1
  42. package/dist/core/version.js +1 -1
  43. package/dist/main.js +5 -4
  44. package/dist/main.js.map +1 -1
  45. package/package.json +6 -6
@@ -1,6 +1,5 @@
1
1
  import { basename, join } from "node:path";
2
2
  import { z } from "zod";
3
- import { resolveModel as resolveCatalogModel } from "../models/catalog.js";
4
3
  import { personas as builtinPersonas } from "../personas.js";
5
4
  import { parseSubagentLaunchModelList } from "../subagents/launch_model.js";
6
5
  import { DEFAULT_SUBAGENT_NAME, SUBAGENT_TOOL_NAMES } from "../subagents/types.js";
@@ -15,9 +14,7 @@ import { WAIT_FOR_AGENT_TOOL } from "../tools/wait_for_agent.js";
15
14
  import { WRITE_TOOL } from "../tools/write.js";
16
15
  import { ReasoningEffortSchema, RiskLevelSchema } from "../types.js";
17
16
  import { formatZodError } from "../utils/zod.js";
18
- import { createDefaultConfigDeps } from "./deps.js";
19
17
  import { parseMarkdownFrontMatter } from "./markdown_frontmatter.js";
20
- import { resolveConfigLevels } from "./paths.js";
21
18
  import { loadSkillsContent as loadCanonicalSkillsContent } from "./skills_loader.js";
22
19
  import { buildVirtualBundle } from "./virtual_bundle.js";
23
20
  const SubagentNameSchema = z
@@ -99,7 +96,7 @@ function cloneSubagentPersonaConfig(config) {
99
96
  ...(config.launchModels ? { launchModels: [...config.launchModels] } : {}),
100
97
  };
101
98
  }
102
- function parseSubagentConfig(subagentsRaw) {
99
+ function parseSubagentConfig(subagentsRaw, modelResolver) {
103
100
  if (subagentsRaw === undefined) {
104
101
  return {};
105
102
  }
@@ -141,7 +138,9 @@ function parseSubagentConfig(subagentsRaw) {
141
138
  if (toolsResult.error) {
142
139
  return { error: `subagent ${validatedName}: ${toolsResult.error}` };
143
140
  }
144
- const launchModelsResult = parseSubagentLaunchModelList(specRaw.launchModels);
141
+ const launchModelsResult = parseSubagentLaunchModelList(specRaw.launchModels, {
142
+ resolveModel: modelResolver,
143
+ });
145
144
  if (launchModelsResult.error) {
146
145
  return {
147
146
  error: `subagent ${validatedName}: launchModels ${launchModelsResult.error}`,
@@ -155,7 +154,7 @@ function parseSubagentConfig(subagentsRaw) {
155
154
  : undefined;
156
155
  let modelObj;
157
156
  if (provider && model) {
158
- modelObj = resolveModel(provider, model);
157
+ modelObj = modelResolver(provider, model);
159
158
  if (!modelObj) {
160
159
  return {
161
160
  error: `subagent ${validatedName}: failed to resolve model "${provider}:${model}"`,
@@ -212,8 +211,47 @@ function parsePersonaTools(toolsRaw) {
212
211
  }
213
212
  return { tools: selected };
214
213
  }
215
- function resolveModel(provider, modelId) {
216
- return resolveCatalogModel(provider, modelId);
214
+ function resolvePersonaModels(persona, modelResolver) {
215
+ const resolvedPersonaModel = modelResolver(persona.model.provider, persona.model.id);
216
+ if (!resolvedPersonaModel) {
217
+ return {
218
+ error: `failed to resolve model "${persona.model.provider}:${persona.model.id}"`,
219
+ };
220
+ }
221
+ if (!persona.subagents) {
222
+ return {
223
+ persona: {
224
+ ...persona,
225
+ model: resolvedPersonaModel,
226
+ },
227
+ };
228
+ }
229
+ const resolvedSubagents = {};
230
+ for (const [name, config] of Object.entries(persona.subagents)) {
231
+ if (!config?.model) {
232
+ if (config) {
233
+ resolvedSubagents[name] = cloneSubagentPersonaConfig(config);
234
+ }
235
+ continue;
236
+ }
237
+ const resolvedSubagentModel = modelResolver(config.model.provider, config.model.id);
238
+ if (!resolvedSubagentModel) {
239
+ return {
240
+ error: `subagent ${name}: failed to resolve model "${config.model.provider}:${config.model.id}"`,
241
+ };
242
+ }
243
+ resolvedSubagents[name] = {
244
+ ...cloneSubagentPersonaConfig(config),
245
+ model: resolvedSubagentModel,
246
+ };
247
+ }
248
+ return {
249
+ persona: {
250
+ ...persona,
251
+ model: resolvedPersonaModel,
252
+ subagents: resolvedSubagents,
253
+ },
254
+ };
217
255
  }
218
256
  function mergeById(base, overlay, overlay2) {
219
257
  const map = new Map();
@@ -293,9 +331,10 @@ function loadJsonEntries(dir, deps, listFiles) {
293
331
  return loadEntries(dir, deps, listFiles);
294
332
  }
295
333
  function resolveContentContext(options) {
296
- const deps = options?.deps ?? createDefaultConfigDeps();
297
- const levels = options?.levels ?? resolveConfigLevels(deps, { cwd: options?.cwd });
298
- return { deps, levels };
334
+ return {
335
+ deps: options.deps,
336
+ levels: options.levels,
337
+ };
299
338
  }
300
339
  const personaFrontMatterSchema = z
301
340
  .object({
@@ -337,7 +376,7 @@ const DEFAULT_SUBAGENT_TOOLS = [
337
376
  WAIT_FOR_AGENT_TOOL,
338
377
  TERMINATE_AGENT_TOOL,
339
378
  ];
340
- function parsePersona(file, content, source, basePersonasById) {
379
+ function parsePersona(file, content, source, modelResolver, basePersonasById) {
341
380
  const markdownResult = parseMarkdownFrontMatter(content);
342
381
  if (!markdownResult.ok) {
343
382
  return { error: `${file}: ${markdownResult.message}. skipped.` };
@@ -362,7 +401,7 @@ function parsePersona(file, content, source, basePersonasById) {
362
401
  if (extendsId && !basePersona) {
363
402
  return { error: `${file}: extends "${extendsId}" not found. skipped.` };
364
403
  }
365
- const modelObj = resolveModel(provider, model);
404
+ const modelObj = modelResolver(provider, model);
366
405
  if (!modelObj) {
367
406
  return { error: `${file}: failed to load model "${provider}:${model}". skipped.` };
368
407
  }
@@ -395,7 +434,7 @@ function parsePersona(file, content, source, basePersonasById) {
395
434
  }
396
435
  }
397
436
  // Parse subagents
398
- const subagentsResult = parseSubagentConfig(subagentsRaw);
437
+ const subagentsResult = parseSubagentConfig(subagentsRaw, modelResolver);
399
438
  if (subagentsResult.error) {
400
439
  return { error: `${file}: ${subagentsResult.error}. skipped.` };
401
440
  }
@@ -534,9 +573,8 @@ function parseTheme(entry, scope) {
534
573
  }
535
574
  export async function loadUserPersonas(args) {
536
575
  const { deps, levels } = resolveContentContext({
537
- deps: args?.deps,
538
- levels: args?.levels,
539
- cwd: args?.cwd,
576
+ deps: args.deps,
577
+ levels: args.levels,
540
578
  });
541
579
  const globalLevel = levels.find((level) => level.scope === "global");
542
580
  if (!globalLevel) {
@@ -545,9 +583,9 @@ export async function loadUserPersonas(args) {
545
583
  const personasDir = globalLevel.personasDir;
546
584
  const { entries, errors } = loadMarkdownEntries(personasDir, deps, listMarkdownFiles);
547
585
  const personas = [];
548
- const basePersonasById = args?.basePersonasById ?? new Map(builtinPersonas.map((p) => [p.id.toLowerCase(), p]));
586
+ const basePersonasById = args.basePersonasById ?? new Map(builtinPersonas.map((p) => [p.id.toLowerCase(), p]));
549
587
  for (const file of entries) {
550
- const result = parsePersona(file.path, file.content, "user", basePersonasById);
588
+ const result = parsePersona(file.path, file.content, "user", args.modelResolver, basePersonasById);
551
589
  if (result.persona) {
552
590
  personas.push(result.persona);
553
591
  }
@@ -559,9 +597,8 @@ export async function loadUserPersonas(args) {
559
597
  }
560
598
  export async function loadProjectPersonas(args) {
561
599
  const { deps, levels } = resolveContentContext({
562
- deps: args?.deps,
563
- levels: args?.levels,
564
- cwd: args?.cwd,
600
+ deps: args.deps,
601
+ levels: args.levels,
565
602
  });
566
603
  const projectLevels = levels.filter((level) => level.scope === "project");
567
604
  if (projectLevels.length === 0) {
@@ -569,13 +606,13 @@ export async function loadProjectPersonas(args) {
569
606
  }
570
607
  const personas = [];
571
608
  const errors = [];
572
- const basePersonasById = args?.basePersonasById ?? new Map(builtinPersonas.map((p) => [p.id.toLowerCase(), p]));
609
+ const basePersonasById = args.basePersonasById ?? new Map(builtinPersonas.map((p) => [p.id.toLowerCase(), p]));
573
610
  // Parent-first order, closest directory wins on conflicts.
574
611
  for (const level of projectLevels) {
575
612
  const { entries, errors: entryErrors } = loadMarkdownEntries(level.personasDir, deps, listMarkdownFiles);
576
613
  errors.push(...entryErrors);
577
614
  for (const file of entries) {
578
- const result = parsePersona(file.path, file.content, "project", basePersonasById);
615
+ const result = parsePersona(file.path, file.content, "project", args.modelResolver, basePersonasById);
579
616
  if (result.persona) {
580
617
  personas.push(result.persona);
581
618
  }
@@ -588,9 +625,8 @@ export async function loadProjectPersonas(args) {
588
625
  }
589
626
  export async function loadUserPrompts(args) {
590
627
  const { deps, levels } = resolveContentContext({
591
- deps: args?.deps,
592
- levels: args?.levels,
593
- cwd: args?.cwd,
628
+ deps: args.deps,
629
+ levels: args.levels,
594
630
  });
595
631
  const globalLevel = levels.find((level) => level.scope === "global");
596
632
  if (!globalLevel) {
@@ -612,9 +648,8 @@ export async function loadUserPrompts(args) {
612
648
  }
613
649
  export async function loadProjectPrompts(args) {
614
650
  const { deps, levels } = resolveContentContext({
615
- deps: args?.deps,
616
- levels: args?.levels,
617
- cwd: args?.cwd,
651
+ deps: args.deps,
652
+ levels: args.levels,
618
653
  });
619
654
  const projectLevels = levels.filter((level) => level.scope === "project");
620
655
  if (projectLevels.length === 0) {
@@ -640,9 +675,8 @@ export async function loadProjectPrompts(args) {
640
675
  }
641
676
  export async function loadUserThemes(args) {
642
677
  const { deps, levels } = resolveContentContext({
643
- deps: args?.deps,
644
- levels: args?.levels,
645
- cwd: args?.cwd,
678
+ deps: args.deps,
679
+ levels: args.levels,
646
680
  });
647
681
  const globalLevel = levels.find((level) => level.scope === "global");
648
682
  if (!globalLevel) {
@@ -663,9 +697,8 @@ export async function loadUserThemes(args) {
663
697
  }
664
698
  export async function loadProjectThemes(args) {
665
699
  const { deps, levels } = resolveContentContext({
666
- deps: args?.deps,
667
- levels: args?.levels,
668
- cwd: args?.cwd,
700
+ deps: args.deps,
701
+ levels: args.levels,
669
702
  });
670
703
  const projectLevels = levels.filter((level) => level.scope === "project");
671
704
  if (projectLevels.length === 0) {
@@ -694,25 +727,59 @@ export async function loadSkillsContent(config, options) {
694
727
  }
695
728
  export async function loadAllContent(config, options) {
696
729
  const { deps, levels } = resolveContentContext({
697
- deps: options?.deps,
698
- levels: options?.levels,
699
- cwd: options?.cwd,
730
+ deps: options.deps,
731
+ levels: options.levels,
700
732
  });
701
- const virtualBundle = buildVirtualBundle(config ?? {}, deps);
733
+ const virtualBundle = buildVirtualBundle(config ?? {});
702
734
  try {
703
- const basePersonasById = new Map(builtinPersonas.map((p) => [p.id.toLowerCase(), p]));
735
+ const modelResolverResult = {
736
+ resolveModel: options.modelResolver,
737
+ errors: [],
738
+ };
739
+ const builtinPersonaErrors = [];
740
+ const resolvedBuiltinPersonas = [];
741
+ for (const persona of builtinPersonas) {
742
+ const resolved = resolvePersonaModels(persona, modelResolverResult.resolveModel);
743
+ if (resolved.persona) {
744
+ resolvedBuiltinPersonas.push(resolved.persona);
745
+ }
746
+ else if (resolved.error) {
747
+ builtinPersonaErrors.push(`builtin persona '${persona.id}': ${resolved.error}`);
748
+ }
749
+ }
750
+ const resolvedVirtualBundlePersonas = virtualBundle.personas === builtinPersonas ? [...resolvedBuiltinPersonas] : [];
751
+ if (resolvedVirtualBundlePersonas.length === 0) {
752
+ for (const persona of virtualBundle.personas) {
753
+ const resolved = resolvePersonaModels(persona, modelResolverResult.resolveModel);
754
+ if (resolved.persona) {
755
+ resolvedVirtualBundlePersonas.push(resolved.persona);
756
+ }
757
+ else if (resolved.error) {
758
+ builtinPersonaErrors.push(`builtin persona '${persona.id}': ${resolved.error}`);
759
+ }
760
+ }
761
+ }
762
+ const basePersonasById = new Map(resolvedBuiltinPersonas.map((persona) => [persona.id.toLowerCase(), persona]));
704
763
  const userPersonasResult = await loadUserPersonas({
705
764
  basePersonasById,
765
+ modelResolver: modelResolverResult.resolveModel,
766
+ deps,
767
+ levels,
768
+ });
769
+ const projectPersonasResult = await loadProjectPersonas({
770
+ basePersonasById,
771
+ modelResolver: modelResolverResult.resolveModel,
706
772
  deps,
707
773
  levels,
708
774
  });
709
- const projectPersonasResult = await loadProjectPersonas({ basePersonasById, deps, levels });
710
775
  const userPromptsResult = await loadUserPrompts({ deps, levels });
711
776
  const projectPromptsResult = await loadProjectPrompts({ deps, levels });
712
777
  const skillsResult = await loadSkillsContent(config, { deps, levels });
713
778
  const userThemesResult = await loadUserThemes({ deps, levels });
714
779
  const projectThemesResult = await loadProjectThemes({ deps, levels });
715
780
  const allErrors = [
781
+ ...modelResolverResult.errors,
782
+ ...builtinPersonaErrors,
716
783
  ...userPersonasResult.errors,
717
784
  ...projectPersonasResult.errors,
718
785
  ...userPromptsResult.errors,
@@ -724,7 +791,7 @@ export async function loadAllContent(config, options) {
724
791
  const skills = skillsResult.skills;
725
792
  // Precedence: virtual bundle < global < nearest .tau levels.
726
793
  const defaultLaunchModels = config?.subagents?.defaultLaunchModels;
727
- const personas = mergeById(virtualBundle.personas, userPersonasResult.personas, projectPersonasResult.personas).map((persona) => withDefaultSubagentLaunchModels(persona, defaultLaunchModels));
794
+ const personas = mergeById(resolvedVirtualBundlePersonas, userPersonasResult.personas, projectPersonasResult.personas).map((persona) => withDefaultSubagentLaunchModels(persona, defaultLaunchModels));
728
795
  return {
729
796
  personas,
730
797
  prompts: mergeById(virtualBundle.prompts, userPromptsResult.prompts, projectPromptsResult.prompts),
@@ -1 +1 @@
1
- {"version":3,"file":"content_loader.js","sourceRoot":"","sources":["../../../src/core/config/content_loader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"content_loader.js","sourceRoot":"","sources":["../../../src/core/config/content_loader.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,7 @@ function buildLevel(levelRoot, configDir, scope) {
6
6
  levelRoot: root,
7
7
  configDir: dir,
8
8
  configPath: join(dir, "config.json"),
9
+ modelsPath: join(dir, "models.json"),
9
10
  personasDir: join(dir, "personas"),
10
11
  promptsDir: join(dir, "prompts"),
11
12
  skillsDir: join(dir, "skills"),
@@ -26,7 +27,7 @@ function isDirectory(deps, path) {
26
27
  }
27
28
  }
28
29
  export function resolveConfigLevels(deps, options) {
29
- const cwdAbs = resolve(options?.cwd ?? deps.env.cwd());
30
+ const cwdAbs = resolve(options.cwd);
30
31
  const homeAbs = resolve(deps.env.home());
31
32
  const withinHome = cwdAbs === homeAbs || cwdAbs.startsWith(homeAbs + sep);
32
33
  const stopAbs = withinHome ? homeAbs : parse(cwdAbs).root;
@@ -1 +1 @@
1
- {"version":3,"file":"paths.js","sourceRoot":"","sources":["../../../src/core/config/paths.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"paths.js","sourceRoot":"","sources":["../../../src/core/config/paths.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,21 @@
1
+ import { loadModelResolver } from "../models/catalog.js";
1
2
  import { parsePersonaReference } from "../persona_reference.js";
2
3
  import { loadAllContent } from "./content_loader.js";
3
- import { createDefaultConfigDeps } from "./deps.js";
4
+ import { resolveConfigLevels } from "./paths.js";
4
5
  import { loadConfigWithDiagnostics } from "./schema.js";
5
6
  export async function loadRuntimeConfig(cwd, deps) {
6
- const resolvedDeps = deps ?? createDefaultConfigDeps();
7
- const configResult = loadConfigWithDiagnostics(cwd, resolvedDeps);
7
+ const levels = resolveConfigLevels(deps, { cwd });
8
+ const modelResolverResult = loadModelResolver({ deps, levels });
9
+ const configResult = loadConfigWithDiagnostics(deps, {
10
+ levels,
11
+ modelResolver: modelResolverResult,
12
+ });
8
13
  const config = configResult.config;
9
- const content = await loadAllContent(config, { cwd, deps: resolvedDeps });
14
+ const content = await loadAllContent(config, {
15
+ deps,
16
+ levels,
17
+ modelResolver: modelResolverResult.resolveModel,
18
+ });
10
19
  const warnings = [...configResult.errors, ...content.errors];
11
20
  if (config.defaultPersona) {
12
21
  const parsedDefaultPersona = parsePersonaReference(config.defaultPersona);
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../../src/core/config/runtime.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAKhE,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,OAAO,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AAEpD,OAAO,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAYxD,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,GAAW,EACX,IAAiB;IAEjB,MAAM,YAAY,GAAG,IAAI,IAAI,uBAAuB,EAAE,CAAC;IACvD,MAAM,YAAY,GAAG,yBAAyB,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;IAClE,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC;IACnC,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,MAAM,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC;IAC1E,MAAM,QAAQ,GAAG,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7D,IAAI,MAAM,CAAC,cAAc,EAAE,CAAC;QAC1B,MAAM,oBAAoB,GAAG,qBAAqB,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;QAC1E,MAAM,SAAS,GAAG,oBAAoB,CAAC,SAAS,CAAC;QACjD,MAAM,OAAO,GAAG,SAAS;YACvB,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,SAAS,CAAC;YAC9D,CAAC,CAAC,KAAK,CAAC;QACV,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,QAAQ,CAAC,IAAI,CAAC,mBAAmB,MAAM,CAAC,cAAc,iCAAiC,CAAC,CAAC;QAC3F,CAAC;IACH,CAAC;IACD,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;QACxB,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,MAAM,CAAC,YAAY,CAAC,CAAC;QACjF,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,QAAQ,CAAC,IAAI,CACX,iBAAiB,MAAM,CAAC,YAAY,uEAAuE,CAC5G,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO;QACL,MAAM;QACN,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,YAAY,EAAE,MAAM,CAAC,YAAY,IAAI,EAAE;QACvC,QAAQ;KACT,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../../src/core/config/runtime.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAKhE,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEjD,OAAO,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAYxD,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,GAAW,EACX,IAAgB;IAEhB,MAAM,MAAM,GAAG,mBAAmB,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;IAClD,MAAM,mBAAmB,GAAG,iBAAiB,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;IAChE,MAAM,YAAY,GAAG,yBAAyB,CAAC,IAAI,EAAE;QACnD,MAAM;QACN,aAAa,EAAE,mBAAmB;KACnC,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC;IACnC,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,MAAM,EAAE;QAC3C,IAAI;QACJ,MAAM;QACN,aAAa,EAAE,mBAAmB,CAAC,YAAY;KAChD,CAAC,CAAC;IACH,MAAM,QAAQ,GAAG,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7D,IAAI,MAAM,CAAC,cAAc,EAAE,CAAC;QAC1B,MAAM,oBAAoB,GAAG,qBAAqB,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;QAC1E,MAAM,SAAS,GAAG,oBAAoB,CAAC,SAAS,CAAC;QACjD,MAAM,OAAO,GAAG,SAAS;YACvB,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,SAAS,CAAC;YAC9D,CAAC,CAAC,KAAK,CAAC;QACV,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,QAAQ,CAAC,IAAI,CAAC,mBAAmB,MAAM,CAAC,cAAc,iCAAiC,CAAC,CAAC;QAC3F,CAAC;IACH,CAAC;IACD,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;QACxB,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,MAAM,CAAC,YAAY,CAAC,CAAC;QACjF,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,QAAQ,CAAC,IAAI,CACX,iBAAiB,MAAM,CAAC,YAAY,uEAAuE,CAC5G,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO;QACL,MAAM;QACN,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,YAAY,EAAE,MAAM,CAAC,YAAY,IAAI,EAAE;QACvC,QAAQ;KACT,CAAC;AACJ,CAAC"}