@mcarvin/smart-diff 2.3.2 → 2.4.0

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/README.md CHANGED
@@ -7,7 +7,7 @@
7
7
  [![codecov](https://codecov.io/gh/mcarvin8/smart-diff/graph/badge.svg?token=H3ZWAGG7S9)](https://codecov.io/gh/mcarvin8/smart-diff)
8
8
  [![Mutation testing badge](https://img.shields.io/endpoint?style=flat&url=https%3A%2F%2Fbadge-api.stryker-mutator.io%2Fgithub.com%2Fmcarvin8%2Fsmart-diff%2Fmain)](https://dashboard.stryker-mutator.io/reports/github.com/mcarvin8/smart-diff/main)
9
9
 
10
- TypeScript library that turns a **git revision range** into a **Markdown summary** using any LLM provider supported by the [Vercel AI SDK](https://sdk.vercel.ai) — OpenAI, Anthropic, Google Gemini, Amazon Bedrock, Mistral, Cohere, Groq, xAI, DeepSeek, or any OpenAI-compatible gateway. It uses [`simple-git`](https://github.com/steveukx/git-js) to read the repo, respects **path includes/excludes** and **commit message include/exclude regexes**, and sends commits, paths, structured diff stats, and unified diff text to the model.
10
+ TypeScript library that turns a **git revision range** into a **Markdown summary** using any LLM provider supported by the [Vercel AI SDK](https://sdk.vercel.ai) — OpenAI, Anthropic, Google Gemini, Amazon Bedrock, Mistral, Cohere, Groq, xAI, DeepSeek, or any OpenAI-compatible gateway. It shells out to `git` to read the repo, respects **path includes/excludes** and **commit message include/exclude regexes**, and sends commits, paths, structured diff stats, and unified diff text to the model.
11
11
 
12
12
  ## Requirements
13
13
 
@@ -29,15 +29,15 @@ smart-diff is "configured" when [`isLlmProviderConfigured()`](#lower-level-api)
29
29
 
30
30
  ### Selecting a provider
31
31
 
32
- `LLM_PROVIDER` explicitly selects a provider. When unset, the resolver auto-detects in this order: `LLM_BASE_URL`/`OPENAI_BASE_URL` → `openai-compatible`, `OPENAI_API_KEY`/`LLM_API_KEY` → `openai`, then `ANTHROPIC_API_KEY`, `GOOGLE_GENERATIVE_AI_API_KEY` (or `GOOGLE_API_KEY`), `MISTRAL_API_KEY`, `COHERE_API_KEY`, `GROQ_API_KEY`, `XAI_API_KEY`, `DEEPSEEK_API_KEY`, and finally `OPENAI_DEFAULT_HEADERS`/`LLM_DEFAULT_HEADERS` → `openai`.
32
+ `LLM_PROVIDER` explicitly selects a provider. When unset, the resolver auto-detects in this order: `LLM_BASE_URL`/`OPENAI_BASE_URL` → `openai-compatible`, `OPENAI_API_KEY`/`LLM_API_KEY` → `openai`, then `ANTHROPIC_API_KEY`, `GOOGLE_GENERATIVE_AI_API_KEY` (or `GOOGLE_API_KEY`), `MISTRAL_API_KEY`, `COHERE_API_KEY`, `GROQ_API_KEY`, `XAI_API_KEY`, `DEEPSEEK_API_KEY`, `AWS_ACCESS_KEY_ID`/`AWS_PROFILE` → `bedrock`, and finally `OPENAI_DEFAULT_HEADERS`/`LLM_DEFAULT_HEADERS` → `openai`.
33
33
 
34
34
  | Provider (`LLM_PROVIDER`) | Package | Credential env vars | Default model |
35
35
  |---|---|---|---|
36
36
  | `openai` | `@ai-sdk/openai` | `OPENAI_API_KEY` or `LLM_API_KEY` | `gpt-4o-mini` |
37
37
  | `openai-compatible` | `@ai-sdk/openai-compatible` | `LLM_BASE_URL` or `OPENAI_BASE_URL` (required); `OPENAI_API_KEY`/`LLM_API_KEY` or custom headers | `gpt-4o-mini` |
38
- | `anthropic` | `@ai-sdk/anthropic` | `ANTHROPIC_API_KEY` | `claude-3-5-haiku-latest` |
38
+ | `anthropic` | `@ai-sdk/anthropic` | `ANTHROPIC_API_KEY` | `claude-haiku-4-5-20251001` |
39
39
  | `google` | `@ai-sdk/google` | `GOOGLE_GENERATIVE_AI_API_KEY` or `GOOGLE_API_KEY` | `gemini-2.0-flash` |
40
- | `bedrock` | `@ai-sdk/amazon-bedrock` | Standard AWS credential chain (env / profile / role) | `anthropic.claude-3-5-haiku-20241022-v1:0` |
40
+ | `bedrock` | `@ai-sdk/amazon-bedrock` | `AWS_ACCESS_KEY_ID` / `AWS_PROFILE` (auto-detects); full AWS credential chain supported | `anthropic.claude-3-5-haiku-20241022-v1:0` |
41
41
  | `mistral` | `@ai-sdk/mistral` | `MISTRAL_API_KEY` | `mistral-small-latest` |
42
42
  | `cohere` | `@ai-sdk/cohere` | `COHERE_API_KEY` | `command-r-08-2024` |
43
43
  | `groq` | `@ai-sdk/groq` | `GROQ_API_KEY` | `llama-3.1-8b-instant` |
@@ -113,7 +113,7 @@ const markdown = await summarizeGitDiff({
113
113
  | Option | Description |
114
114
  |--------|-------------|
115
115
  | `from` / `to` | Git refs for the range; `to` defaults to `HEAD`. |
116
- | `cwd` / `git` | Working tree for `simple-git`, or inject your own `SimpleGit` instance. |
116
+ | `cwd` / `git` | Working directory path, or inject your own `GitClient` instance. |
117
117
  | `includeFolders` | Limit diff to these paths relative to repo root (omit for full repo minus excludes). |
118
118
  | `excludeFolders` | Excluded paths (git `:(exclude)` pathspecs), e.g. `node_modules`. |
119
119
  | `commitMessageIncludeRegexes` | If any pattern is non-empty, only commits whose **full message** matches at least one pattern are kept (after excludes). Case-insensitive. |
@@ -173,10 +173,10 @@ const md = await summarizeGitDiff({
173
173
 
174
174
  The package also exports helpers for building a custom pipeline on top of the same git and LLM behavior:
175
175
 
176
- - **Git**: `createGitClient`, `getRepoRoot`, `getCommits`, `getDiff`, `getDiffSummary`, `getChangedFiles`, `filterCommitsByMessageRegexes`, `buildDiffPathspecs`, `buildDiffShapingGitArgs`, `shapeUnifiedDiff`, `DEFAULT_NOISE_EXCLUDES`
176
+ - **Git**: `createGitClient(cwd?, timeout?)`, `getRepoRoot`, `getCommits`, `getDiff`, `getDiffSummary`, `getChangedFiles`, `filterCommitsByMessageRegexes`, `buildDiffPathspecs`, `buildDiffShapingGitArgs`, `shapeUnifiedDiff`, `DEFAULT_NOISE_EXCLUDES` — `timeout` is in milliseconds, forwarded to `execFile`; omit for no timeout
177
177
  - **AI**: `generateSummary`, `resolveLlmMaxDiffChars`, `truncateUnifiedDiffForLlm`
178
178
  - **Provider resolution**: `resolveLanguageModel`, `detectLlmProvider`, `isLlmProviderConfigured`, `defaultModelForProvider`, `resolveLlmBaseUrl`, `parseLlmDefaultHeadersFromEnv`
179
- - **Constants / types**: `DEFAULT_GIT_DIFF_SYSTEM_PROMPT`, `LLM_GATEWAY_REQUIRED_MESSAGE`, `LlmProviderId`, `LlmModelProvider`, `ResolveLanguageModelOptions`, `GenerateSummaryInput`, `SummarizeFlags`
179
+ - **Constants / types**: `DEFAULT_GIT_DIFF_SYSTEM_PROMPT`, `LLM_GATEWAY_REQUIRED_MESSAGE`, `LlmProviderId`, `LlmModelProvider`, `ResolveLanguageModelOptions`, `GenerateSummaryInput`, `SummarizeFlags`, `DiffFileSummary`, `DiffSummary`, `CommitInfo`, `GitClient`, `GitDiffRangeQuery`, `DiffPathFilter`, `DiffShapingOptions` — `DiffFileSummary.binary?: boolean` is set to `true` when git reports `-` for additions/deletions (binary file); absent for text files
180
180
 
181
181
  ## Migrating from 1.x → 2.x
182
182
 
package/dist/index.cjs CHANGED
@@ -2,7 +2,8 @@
2
2
 
3
3
  var ai = require('ai');
4
4
  var node_path = require('node:path');
5
- var simpleGit = require('simple-git');
5
+ var node_child_process = require('node:child_process');
6
+ var node_util = require('node:util');
6
7
 
7
8
  /******************************************************************************
8
9
  Copyright (c) Microsoft Corporation.
@@ -53,7 +54,7 @@ const LLM_GATEWAY_REQUIRED_MESSAGE = "No LLM provider configured. Set LLM_PROVID
53
54
  const DEFAULT_MODEL_BY_PROVIDER = {
54
55
  openai: "gpt-4o-mini",
55
56
  "openai-compatible": "gpt-4o-mini",
56
- anthropic: "claude-3-5-haiku-latest",
57
+ anthropic: "claude-haiku-4-5-20251001",
57
58
  google: "gemini-2.0-flash",
58
59
  bedrock: "anthropic.claude-3-5-haiku-20241022-v1:0",
59
60
  mistral: "mistral-small-latest",
@@ -120,7 +121,7 @@ function resolveOpenAiApiKey() {
120
121
  return (_a = readEnv("LLM_API_KEY")) !== null && _a !== void 0 ? _a : readEnv("OPENAI_API_KEY");
121
122
  }
122
123
  function detectLlmProvider() {
123
- var _a, _b;
124
+ var _a, _b, _c;
124
125
  const explicit = (_a = readEnv("LLM_PROVIDER")) === null || _a === void 0 ? void 0 : _a.toLowerCase();
125
126
  if (explicit && isValidProviderId(explicit)) {
126
127
  return explicit;
@@ -145,6 +146,8 @@ function detectLlmProvider() {
145
146
  return "xai";
146
147
  if (readEnv("DEEPSEEK_API_KEY"))
147
148
  return "deepseek";
149
+ if ((_c = readEnv("AWS_ACCESS_KEY_ID")) !== null && _c !== void 0 ? _c : readEnv("AWS_PROFILE"))
150
+ return "bedrock";
148
151
  if (parseLlmDefaultHeadersFromEnv())
149
152
  return "openai";
150
153
  return undefined;
@@ -424,10 +427,9 @@ function normalizeRepoRelativePath(p) {
424
427
  return noTrailingSlash.length > 0 ? noTrailingSlash : ".";
425
428
  }
426
429
  function assertPathUnderRepo(repoRoot, userPath) {
430
+ const absRoot = node_path.resolve(repoRoot);
427
431
  const abs = node_path.resolve(repoRoot, userPath);
428
- const rel = node_path.relative(repoRoot, abs);
429
- const segments = rel.split(/[/\\]/);
430
- if (segments.includes("..")) {
432
+ if (abs !== absRoot && !abs.startsWith(absRoot + node_path.sep)) {
431
433
  throw new Error(`Path escapes repository root: ${JSON.stringify(userPath)}`);
432
434
  }
433
435
  }
@@ -705,10 +707,11 @@ function parseNumStatLine(line) {
705
707
  const addStr = parts[0];
706
708
  const delStr = parts[1];
707
709
  const pathField = parts.slice(2).join("\t");
710
+ const binary = addStr === "-" || delStr === "-" ? true : undefined;
708
711
  const additions = addStr !== "-" ? Number.parseInt(addStr, 10) || 0 : 0;
709
712
  const deletions = delStr !== "-" ? Number.parseInt(delStr, 10) || 0 : 0;
710
713
  const key = numStatPathToLookupKey(pathField);
711
- return { key, additions, deletions };
714
+ return Object.assign({ key, additions, deletions }, (binary ? { binary } : {}));
712
715
  }
713
716
  function accumulateNumStat(numStatOutput, into) {
714
717
  var _a;
@@ -720,10 +723,8 @@ function accumulateNumStat(numStatOutput, into) {
720
723
  if (!parsed)
721
724
  continue;
722
725
  const prev = (_a = into.get(parsed.key)) !== null && _a !== void 0 ? _a : { additions: 0, deletions: 0 };
723
- into.set(parsed.key, {
724
- additions: prev.additions + parsed.additions,
725
- deletions: prev.deletions + parsed.deletions,
726
- });
726
+ const binary = parsed.binary || prev.binary || undefined;
727
+ into.set(parsed.key, Object.assign({ additions: prev.additions + parsed.additions, deletions: prev.deletions + parsed.deletions }, (binary ? { binary } : {})));
727
728
  }
728
729
  }
729
730
 
@@ -813,7 +814,7 @@ function buildSyntheticDiffLine(meta, counts) {
813
814
  return `${prefix}\t${counts.additions}\t${counts.deletions}\t${meta.path}`;
814
815
  }
815
816
  function buildDiffSummaryFromGitOutputs(nameStatusOutput, numStatOutput) {
816
- var _a;
817
+ var _a, _b;
817
818
  const numMap = new Map();
818
819
  accumulateNumStat(numStatOutput, numMap);
819
820
  const mergedName = mergeNameEntriesByPath(parseNameStatusLines(nameStatusOutput));
@@ -822,21 +823,39 @@ function buildDiffSummaryFromGitOutputs(nameStatusOutput, numStatOutput) {
822
823
  const counts = (_a = numMap.get(path)) !== null && _a !== void 0 ? _a : { additions: 0, deletions: 0 };
823
824
  syntheticLines.push(buildSyntheticDiffLine(meta, counts));
824
825
  }
825
- return parseDiffSummary(syntheticLines.join("\n"));
826
+ const summary = parseDiffSummary(syntheticLines.join("\n"));
827
+ for (const file of summary.files) {
828
+ if ((_b = numMap.get(file.path)) === null || _b === void 0 ? void 0 : _b.binary) {
829
+ file.binary = true;
830
+ }
831
+ }
832
+ return summary;
826
833
  }
827
834
 
828
- function createGitClient(cwd = process.cwd()) {
829
- return simpleGit.simpleGit(cwd);
835
+ const execFileAsync = node_util.promisify(node_child_process.execFile);
836
+ function createGitClient(cwd = process.cwd(), timeout) {
837
+ return {
838
+ run: (args) => execFileAsync("git", args, Object.assign({ cwd, maxBuffer: 100 * 1024 * 1024 }, (timeout !== undefined ? { timeout } : {}))).then(({ stdout }) => stdout),
839
+ };
830
840
  }
831
841
  function getCommits(git, from, to) {
832
842
  return __awaiter(this, void 0, void 0, function* () {
833
- const logResult = yield git.log({ from, to });
834
- return logResult.all;
843
+ const output = yield git.run(["log", "--format=%H%x1f%s", `${from}..${to}`]);
844
+ return output
845
+ .split("\n")
846
+ .filter(Boolean)
847
+ .map((line) => {
848
+ const sep = line.indexOf("\x1f");
849
+ return {
850
+ hash: sep >= 0 ? line.slice(0, sep) : line,
851
+ message: sep >= 0 ? line.slice(sep + 1) : "",
852
+ };
853
+ });
835
854
  });
836
855
  }
837
856
  function getRepoRoot(git) {
838
857
  return __awaiter(this, void 0, void 0, function* () {
839
- const root = yield git.revparse(["--show-toplevel"]);
858
+ const root = yield git.run(["rev-parse", "--show-toplevel"]);
840
859
  return root.trim();
841
860
  });
842
861
  }
@@ -853,7 +872,8 @@ function getDiff(git, query) {
853
872
  const { specs } = yield getDiffPathContext(git, pathFilter, repoRootOverride);
854
873
  const shapingArgs = buildDiffShapingGitArgs(shaping);
855
874
  if (!filterByCommits) {
856
- const raw = yield git.diff([
875
+ const raw = yield git.run([
876
+ "diff",
857
877
  ...shapingArgs,
858
878
  `${from}..${to}`,
859
879
  "--",
@@ -861,7 +881,7 @@ function getDiff(git, query) {
861
881
  ]);
862
882
  return shapeUnifiedDiff(raw, shaping);
863
883
  }
864
- const patches = yield Promise.all(commits.map((c) => git.diff([...shapingArgs, `${c.hash}^!`, "--", ...specs])));
884
+ const patches = yield Promise.all(commits.map((c) => git.run(["diff", ...shapingArgs, `${c.hash}^!`, "--", ...specs])));
865
885
  return patches
866
886
  .map((p) => shapeUnifiedDiff(p, shaping))
867
887
  .filter(Boolean)
@@ -875,14 +895,16 @@ function getDiffSummary(git, query) {
875
895
  const whitespaceArgs = (shaping === null || shaping === void 0 ? void 0 : shaping.ignoreWhitespace) ? ["-w"] : [];
876
896
  if (!filterByCommits) {
877
897
  const [numOutput, nameOutput] = yield Promise.all([
878
- git.diff([
898
+ git.run([
899
+ "diff",
879
900
  ...whitespaceArgs,
880
901
  "--numstat",
881
902
  `${from}..${to}`,
882
903
  "--",
883
904
  ...specs,
884
905
  ]),
885
- git.diff([
906
+ git.run([
907
+ "diff",
886
908
  ...whitespaceArgs,
887
909
  "--name-status",
888
910
  `${from}..${to}`,
@@ -895,8 +917,22 @@ function getDiffSummary(git, query) {
895
917
  const pairs = yield Promise.all(commits.map((c) => __awaiter(this, void 0, void 0, function* () {
896
918
  const range = `${c.hash}^!`;
897
919
  const [numOutput, nameOutput] = yield Promise.all([
898
- git.diff([...whitespaceArgs, "--numstat", range, "--", ...specs]),
899
- git.diff([...whitespaceArgs, "--name-status", range, "--", ...specs]),
920
+ git.run([
921
+ "diff",
922
+ ...whitespaceArgs,
923
+ "--numstat",
924
+ range,
925
+ "--",
926
+ ...specs,
927
+ ]),
928
+ git.run([
929
+ "diff",
930
+ ...whitespaceArgs,
931
+ "--name-status",
932
+ range,
933
+ "--",
934
+ ...specs,
935
+ ]),
900
936
  ]);
901
937
  return { numOutput, nameOutput };
902
938
  })));
@@ -916,7 +952,8 @@ function getChangedFiles(git, query) {
916
952
  const { from, to, commits, filterByCommits, pathFilter, repoRootOverride } = query;
917
953
  const { specs } = yield getDiffPathContext(git, pathFilter, repoRootOverride);
918
954
  if (!filterByCommits) {
919
- const output = yield git.diff([
955
+ const output = yield git.run([
956
+ "diff",
920
957
  "--name-only",
921
958
  `${from}..${to}`,
922
959
  "--",
@@ -925,24 +962,24 @@ function getChangedFiles(git, query) {
925
962
  return output
926
963
  .split(/\r?\n/)
927
964
  .map((f) => f.trim())
928
- .filter(Boolean);
965
+ .filter(Boolean)
966
+ .sort();
929
967
  }
930
- const fileSet = new Set();
931
- yield Promise.all(commits.map((c) => __awaiter(this, void 0, void 0, function* () {
932
- const output = yield git.show([
968
+ const results = yield Promise.all(commits.map((c) => __awaiter(this, void 0, void 0, function* () {
969
+ const output = yield git.run([
970
+ "show",
933
971
  "--name-only",
934
972
  "--pretty=format:",
935
973
  c.hash,
936
974
  "--",
937
975
  ...specs,
938
976
  ]);
939
- output
977
+ return output
940
978
  .split(/\r?\n/)
941
979
  .map((f) => f.trim())
942
- .filter(Boolean)
943
- .forEach((f) => fileSet.add(f));
980
+ .filter(Boolean);
944
981
  })));
945
- return Array.from(fileSet);
982
+ return [...new Set(results.flat())].sort();
946
983
  });
947
984
  }
948
985
 
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../node_modules/tslib/tslib.es6.js","../src/ai/aiConstants.ts","../src/ai/llmProviders.ts","../src/ai/aiSummary.ts","../src/git/diffPathspecs.ts","../src/git/commitMessageFilter.ts","../src/git/diffShaping.ts","../src/git/diffGitStatus.ts","../src/git/diffNameStatusParse.ts","../src/git/diffNumstatParse.ts","../src/git/diffSummaryParse.ts","../src/git/diffSummaryBuild.ts","../src/git/gitDiffOps.ts","../src/index.ts"],"sourcesContent":["/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n function next() {\r\n while (env.stack.length) {\r\n var rec = env.stack.pop();\r\n try {\r\n var result = rec.dispose && rec.dispose.call(rec.value);\r\n if (rec.async) return Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n};\r\n",null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["generateText","resolve","relative","simpleGit"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.cjs","sources":["../node_modules/tslib/tslib.es6.js","../src/ai/aiConstants.ts","../src/ai/llmProviders.ts","../src/ai/aiSummary.ts","../src/git/diffPathspecs.ts","../src/git/commitMessageFilter.ts","../src/git/diffShaping.ts","../src/git/diffGitStatus.ts","../src/git/diffNameStatusParse.ts","../src/git/diffNumstatParse.ts","../src/git/diffSummaryParse.ts","../src/git/diffSummaryBuild.ts","../src/git/gitDiffOps.ts","../src/index.ts"],"sourcesContent":["/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n function next() {\r\n while (env.stack.length) {\r\n var rec = env.stack.pop();\r\n try {\r\n var result = rec.dispose && rec.dispose.call(rec.value);\r\n if (rec.async) return Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n};\r\n",null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["generateText","resolve","sep","promisify","execFile"],"mappings":"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","x_google_ignoreList":[0]}