@bevorai/sdk 0.0.0-stage → 0.1.0-rc.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.
Files changed (130) hide show
  1. package/README.md +179 -2
  2. package/dist/client.d.ts +86 -0
  3. package/dist/client.d.ts.map +1 -0
  4. package/dist/client.js +171 -0
  5. package/dist/client.js.map +1 -0
  6. package/dist/errors.d.ts +109 -0
  7. package/dist/errors.d.ts.map +1 -0
  8. package/dist/errors.js +132 -0
  9. package/dist/errors.js.map +1 -0
  10. package/dist/graph/call-node.d.ts +47 -0
  11. package/dist/graph/call-node.d.ts.map +1 -0
  12. package/dist/graph/call-node.js +338 -0
  13. package/dist/graph/call-node.js.map +1 -0
  14. package/dist/graph/cursor.d.ts +46 -0
  15. package/dist/graph/cursor.d.ts.map +1 -0
  16. package/dist/graph/cursor.js +149 -0
  17. package/dist/graph/cursor.js.map +1 -0
  18. package/dist/graph/field-metadata.d.ts +24 -0
  19. package/dist/graph/field-metadata.d.ts.map +1 -0
  20. package/dist/graph/field-metadata.js +72 -0
  21. package/dist/graph/field-metadata.js.map +1 -0
  22. package/dist/graph/graph.d.ts +87 -0
  23. package/dist/graph/graph.d.ts.map +1 -0
  24. package/dist/graph/graph.js +354 -0
  25. package/dist/graph/graph.js.map +1 -0
  26. package/dist/helpers/call-chain.d.ts +11 -0
  27. package/dist/helpers/call-chain.d.ts.map +1 -0
  28. package/dist/helpers/call-chain.js +79 -0
  29. package/dist/helpers/call-chain.js.map +1 -0
  30. package/dist/helpers/sarif.d.ts +21 -0
  31. package/dist/helpers/sarif.d.ts.map +1 -0
  32. package/dist/helpers/sarif.js +191 -0
  33. package/dist/helpers/sarif.js.map +1 -0
  34. package/dist/helpers/source-fingerprint.d.ts +32 -0
  35. package/dist/helpers/source-fingerprint.d.ts.map +1 -0
  36. package/dist/helpers/source-fingerprint.js +115 -0
  37. package/dist/helpers/source-fingerprint.js.map +1 -0
  38. package/dist/helpers/static-analysis.d.ts +18 -0
  39. package/dist/helpers/static-analysis.d.ts.map +1 -0
  40. package/dist/helpers/static-analysis.js +89 -0
  41. package/dist/helpers/static-analysis.js.map +1 -0
  42. package/dist/index.d.ts +31 -0
  43. package/dist/index.d.ts.map +1 -0
  44. package/dist/index.js +29 -0
  45. package/dist/index.js.map +1 -0
  46. package/dist/node.d.ts +4 -0
  47. package/dist/node.d.ts.map +1 -0
  48. package/dist/node.js +26 -0
  49. package/dist/node.js.map +1 -0
  50. package/dist/pagination.d.ts +13 -0
  51. package/dist/pagination.d.ts.map +1 -0
  52. package/dist/pagination.js +30 -0
  53. package/dist/pagination.js.map +1 -0
  54. package/dist/resources/analyses.d.ts +90 -0
  55. package/dist/resources/analyses.d.ts.map +1 -0
  56. package/dist/resources/analyses.js +250 -0
  57. package/dist/resources/analyses.js.map +1 -0
  58. package/dist/resources/chats.d.ts +48 -0
  59. package/dist/resources/chats.d.ts.map +1 -0
  60. package/dist/resources/chats.js +114 -0
  61. package/dist/resources/chats.js.map +1 -0
  62. package/dist/resources/codes.d.ts +64 -0
  63. package/dist/resources/codes.d.ts.map +1 -0
  64. package/dist/resources/codes.js +200 -0
  65. package/dist/resources/codes.js.map +1 -0
  66. package/dist/resources/files.d.ts +26 -0
  67. package/dist/resources/files.d.ts.map +1 -0
  68. package/dist/resources/files.js +45 -0
  69. package/dist/resources/files.js.map +1 -0
  70. package/dist/resources/findings.d.ts +49 -0
  71. package/dist/resources/findings.d.ts.map +1 -0
  72. package/dist/resources/findings.js +84 -0
  73. package/dist/resources/findings.js.map +1 -0
  74. package/dist/resources/nodes.d.ts +33 -0
  75. package/dist/resources/nodes.d.ts.map +1 -0
  76. package/dist/resources/nodes.js +65 -0
  77. package/dist/resources/nodes.js.map +1 -0
  78. package/dist/resources/projects.d.ts +11 -0
  79. package/dist/resources/projects.d.ts.map +1 -0
  80. package/dist/resources/projects.js +14 -0
  81. package/dist/resources/projects.js.map +1 -0
  82. package/dist/resources/shared.d.ts +14 -0
  83. package/dist/resources/shared.d.ts.map +1 -0
  84. package/dist/resources/shared.js +2 -0
  85. package/dist/resources/shared.js.map +1 -0
  86. package/dist/resources/summary.d.ts +17 -0
  87. package/dist/resources/summary.d.ts.map +1 -0
  88. package/dist/resources/summary.js +27 -0
  89. package/dist/resources/summary.js.map +1 -0
  90. package/dist/resources/transitions.d.ts +25 -0
  91. package/dist/resources/transitions.d.ts.map +1 -0
  92. package/dist/resources/transitions.js +30 -0
  93. package/dist/resources/transitions.js.map +1 -0
  94. package/dist/resources/users.d.ts +19 -0
  95. package/dist/resources/users.d.ts.map +1 -0
  96. package/dist/resources/users.js +36 -0
  97. package/dist/resources/users.js.map +1 -0
  98. package/dist/resources/versions.d.ts +20 -0
  99. package/dist/resources/versions.d.ts.map +1 -0
  100. package/dist/resources/versions.js +25 -0
  101. package/dist/resources/versions.js.map +1 -0
  102. package/dist/streaming.d.ts +43 -0
  103. package/dist/streaming.d.ts.map +1 -0
  104. package/dist/streaming.js +147 -0
  105. package/dist/streaming.js.map +1 -0
  106. package/dist/types/graph-data.d.ts +62 -0
  107. package/dist/types/graph-data.d.ts.map +1 -0
  108. package/dist/types/graph-data.js +2 -0
  109. package/dist/types/graph-data.js.map +1 -0
  110. package/dist/types/literals.d.ts +27 -0
  111. package/dist/types/literals.d.ts.map +1 -0
  112. package/dist/types/literals.js +16 -0
  113. package/dist/types/literals.js.map +1 -0
  114. package/dist/types/node-types.d.ts +5 -0
  115. package/dist/types/node-types.d.ts.map +1 -0
  116. package/dist/types/node-types.js +292 -0
  117. package/dist/types/node-types.js.map +1 -0
  118. package/dist/types/requests.d.ts +205 -0
  119. package/dist/types/requests.d.ts.map +1 -0
  120. package/dist/types/requests.js +3 -0
  121. package/dist/types/requests.js.map +1 -0
  122. package/dist/types/responses.d.ts +448 -0
  123. package/dist/types/responses.d.ts.map +1 -0
  124. package/dist/types/responses.js +11 -0
  125. package/dist/types/responses.js.map +1 -0
  126. package/dist/types/static-analysis.d.ts +28 -0
  127. package/dist/types/static-analysis.d.ts.map +1 -0
  128. package/dist/types/static-analysis.js +93 -0
  129. package/dist/types/static-analysis.js.map +1 -0
  130. package/package.json +46 -5
@@ -0,0 +1,30 @@
1
+ /** Incrementally accumulates the pages of a paginated list. */
2
+ export class PaginatedResource {
3
+ #results;
4
+ #current;
5
+ #fetchPage;
6
+ constructor(data, fetchPage) {
7
+ this.#results = [...data.results];
8
+ this.#current = data;
9
+ this.#fetchPage = fetchPage;
10
+ }
11
+ /** Every result fetched so far, across pages. */
12
+ get results() {
13
+ return this.#results;
14
+ }
15
+ /** The most recently fetched page. */
16
+ get current() {
17
+ return this.#current;
18
+ }
19
+ get hasMore() {
20
+ return this.#current.more;
21
+ }
22
+ async fetchNext() {
23
+ if (!this.hasMore)
24
+ throw new Error("No more pages to fetch. check .hasMore");
25
+ const next = await this.#fetchPage(this.#current.page + 1);
26
+ this.#results.push(...next.results);
27
+ this.#current = next;
28
+ }
29
+ }
30
+ //# sourceMappingURL=pagination.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pagination.js","sourceRoot":"","sources":["../src/pagination.ts"],"names":[],"mappings":"AAEA,+DAA+D;AAC/D,MAAM,OAAO,iBAAiB;IAC7B,QAAQ,CAAM;IACd,QAAQ,CAAgB;IACf,UAAU,CAA2C;IAE9D,YACC,IAAmB,EACnB,SAAmD;QAEnD,IAAI,CAAC,QAAQ,GAAG,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;QAClC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;IAC7B,CAAC;IAED,iDAAiD;IACjD,IAAI,OAAO;QACV,OAAO,IAAI,CAAC,QAAQ,CAAC;IACtB,CAAC;IAED,sCAAsC;IACtC,IAAI,OAAO;QACV,OAAO,IAAI,CAAC,QAAQ,CAAC;IACtB,CAAC;IAED,IAAI,OAAO;QACV,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,SAAS;QACd,IAAI,CAAC,IAAI,CAAC,OAAO;YAChB,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;QAC3D,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;QAC3D,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;QACpC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;IACtB,CAAC;CACD"}
@@ -0,0 +1,90 @@
1
+ import type { BevorClient, RequestOptions } from "../client.js";
2
+ import type { PaginatedResource } from "../pagination.js";
3
+ import { EventResource } from "../streaming.js";
4
+ import type { ID } from "../types/literals.js";
5
+ import type { AddFindingBody, AnalysesQueryParams, CreateAnalysisChildBody, CreateAnalysisRootBody, MergeAnalysisBody, RunAnalysisBody, SetHeadBody, VersionBody, VersionQueryParams } from "../types/requests.js";
6
+ import type { AnalysisCreateSchema, AnalysisEventData, AnalysisExpandedSchema, AnalysisSchema, BooleanResponse, EntryPointSchema, ExistsResponse, FindingSchema, FindingTransitionSchema, Pagination, ResultsResponse } from "../types/responses.js";
7
+ import type { WithoutPagination, WithoutStreaming, WithPagination, WithStreaming } from "./shared.js";
8
+ /** An analysis whose pipeline is running, with its progress events. */
9
+ export type AnalysisRunResource = EventResource<AnalysisSchema, AnalysisEventData>;
10
+ export declare class AnalysisResources {
11
+ #private;
12
+ constructor(client: BevorClient);
13
+ /** Methods bound to one analysis. */
14
+ with(analysisId: ID): BoundAnalysisResources;
15
+ /** GET `/v1/analyses` */
16
+ list(query?: AnalysesQueryParams, options?: WithoutPagination): Promise<Pagination<AnalysisSchema>>;
17
+ list(query: AnalysesQueryParams | undefined, options: WithPagination): Promise<PaginatedResource<AnalysisSchema>>;
18
+ /** GET `/v1/analyses/{analysis_id}` */
19
+ get(analysisId: ID, query?: VersionQueryParams, options?: RequestOptions): Promise<AnalysisSchema>;
20
+ /** GET `/v1/analyses/recent` */
21
+ recent(options?: RequestOptions): Promise<ExistsResponse<AnalysisExpandedSchema>>;
22
+ /** PATCH `/v1/analyses/{analysis_id}` */
23
+ update(analysisId: ID, name: string, options?: RequestOptions): Promise<AnalysisSchema>;
24
+ /** DELETE `/v1/analyses/{analysis_id}` */
25
+ delete(analysisId: ID, options?: RequestOptions): Promise<BooleanResponse>;
26
+ /** POST `/v1/analyses` */
27
+ createRoot(body: CreateAnalysisRootBody, options?: RequestOptions): Promise<AnalysisCreateSchema>;
28
+ /** POST `/v1/analyses/{analysis_id}/child` */
29
+ createChild(analysisId: ID, body: CreateAnalysisChildBody, options?: RequestOptions): Promise<AnalysisCreateSchema>;
30
+ /** POST `/v1/analyses/{analysis_id}/fork` */
31
+ fork(analysisId: ID, body?: VersionBody, options?: RequestOptions): Promise<AnalysisSchema>;
32
+ /** POST `/v1/analyses/merge` */
33
+ merge(body: MergeAnalysisBody, options?: RequestOptions): Promise<AnalysisSchema>;
34
+ /** POST `/v1/analyses/{analysis_id}/commit` */
35
+ commit(analysisId: ID, body?: VersionBody, options?: RequestOptions): Promise<AnalysisSchema>;
36
+ /** POST `/v1/analyses/{analysis_id}/head` */
37
+ setHead(analysisId: ID, body: SetHeadBody, options?: RequestOptions): Promise<AnalysisSchema>;
38
+ /** GET `/v1/analyses/{analysis_id}/entrypoints` */
39
+ entrypoints(analysisId: ID, query?: VersionQueryParams, options?: RequestOptions): Promise<ResultsResponse<EntryPointSchema>>;
40
+ /** GET `/v1/analyses/{analysis_id}/findings` */
41
+ listFindings(analysisId: ID, query?: VersionQueryParams, options?: RequestOptions): Promise<ResultsResponse<FindingSchema>>;
42
+ /** POST `/v1/analyses/{analysis_id}/findings` */
43
+ addFindings(analysisId: ID, body: AddFindingBody, options?: RequestOptions): Promise<ResultsResponse<FindingSchema>>;
44
+ /** GET `/v1/analyses/{analysis_id}/staged` */
45
+ diffStaged(analysisId: ID, query?: VersionQueryParams, options?: RequestOptions): Promise<ResultsResponse<FindingTransitionSchema>>;
46
+ /** GET `/v1/analyses/{analysis_id}/transitions` */
47
+ diffVersion(analysisId: ID, query?: VersionQueryParams, options?: RequestOptions): Promise<ResultsResponse<FindingTransitionSchema>>;
48
+ /** POST `/v1/analyses/{analysis_id}/run` */
49
+ run(analysisId: ID, body?: RunAnalysisBody, options?: WithoutStreaming): Promise<AnalysisSchema>;
50
+ run(analysisId: ID, body: RunAnalysisBody | undefined, options: WithStreaming): Promise<AnalysisRunResource>;
51
+ /** POST `/v1/analyses/{analysis_id}/retry` */
52
+ retry(analysisId: ID, body?: VersionBody, options?: WithoutStreaming): Promise<AnalysisSchema>;
53
+ retry(analysisId: ID, body: VersionBody | undefined, options: WithStreaming): Promise<AnalysisRunResource>;
54
+ }
55
+ export declare class BoundAnalysisResources {
56
+ #private;
57
+ readonly analysisId: ID;
58
+ constructor(parent: AnalysisResources, analysisId: ID);
59
+ /** GET `/v1/analyses/{analysis_id}` */
60
+ get(query?: VersionQueryParams, options?: RequestOptions): Promise<AnalysisSchema>;
61
+ /** PATCH `/v1/analyses/{analysis_id}` */
62
+ update(name: string, options?: RequestOptions): Promise<AnalysisSchema>;
63
+ /** DELETE `/v1/analyses/{analysis_id}` */
64
+ delete(options?: RequestOptions): Promise<BooleanResponse>;
65
+ /** POST `/v1/analyses/{analysis_id}/child` */
66
+ createChild(body: CreateAnalysisChildBody, options?: RequestOptions): Promise<AnalysisCreateSchema>;
67
+ /** POST `/v1/analyses/{analysis_id}/fork` */
68
+ fork(body?: VersionBody, options?: RequestOptions): Promise<AnalysisSchema>;
69
+ /** POST `/v1/analyses/{analysis_id}/commit` */
70
+ commit(body?: VersionBody, options?: RequestOptions): Promise<AnalysisSchema>;
71
+ /** POST `/v1/analyses/{analysis_id}/head` */
72
+ setHead(body: SetHeadBody, options?: RequestOptions): Promise<AnalysisSchema>;
73
+ /** GET `/v1/analyses/{analysis_id}/entrypoints` */
74
+ entrypoints(query?: VersionQueryParams, options?: RequestOptions): Promise<ResultsResponse<EntryPointSchema>>;
75
+ /** GET `/v1/analyses/{analysis_id}/findings` */
76
+ listFindings(query?: VersionQueryParams, options?: RequestOptions): Promise<ResultsResponse<FindingSchema>>;
77
+ /** POST `/v1/analyses/{analysis_id}/findings` */
78
+ addFindings(body: AddFindingBody, options?: RequestOptions): Promise<ResultsResponse<FindingSchema>>;
79
+ /** GET `/v1/analyses/{analysis_id}/staged` */
80
+ diffStaged(query?: VersionQueryParams, options?: RequestOptions): Promise<ResultsResponse<FindingTransitionSchema>>;
81
+ /** GET `/v1/analyses/{analysis_id}/transitions` */
82
+ diffVersion(query?: VersionQueryParams, options?: RequestOptions): Promise<ResultsResponse<FindingTransitionSchema>>;
83
+ /** POST `/v1/analyses/{analysis_id}/run` */
84
+ run(body?: RunAnalysisBody, options?: WithoutStreaming): Promise<AnalysisSchema>;
85
+ run(body: RunAnalysisBody | undefined, options: WithStreaming): Promise<AnalysisRunResource>;
86
+ /** POST `/v1/analyses/{analysis_id}/retry` */
87
+ retry(body?: VersionBody, options?: WithoutStreaming): Promise<AnalysisSchema>;
88
+ retry(body: VersionBody | undefined, options: WithStreaming): Promise<AnalysisRunResource>;
89
+ }
90
+ //# sourceMappingURL=analyses.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"analyses.d.ts","sourceRoot":"","sources":["../../src/resources/analyses.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,250 @@
1
+ import { EventResource } from "../streaming.js";
2
+ export class AnalysisResources {
3
+ #client;
4
+ constructor(client) {
5
+ this.#client = client;
6
+ }
7
+ /** Methods bound to one analysis. */
8
+ with(analysisId) {
9
+ return new BoundAnalysisResources(this, analysisId);
10
+ }
11
+ list(query, options = {}) {
12
+ return this.#client.paginate("/v1/analyses", query, options);
13
+ }
14
+ /** GET `/v1/analyses/{analysis_id}` */
15
+ get(analysisId, query, options) {
16
+ return this.#client.request("GET", `/v1/analyses/${analysisId}`, {
17
+ ...options,
18
+ query,
19
+ });
20
+ }
21
+ /** GET `/v1/analyses/recent` */
22
+ recent(options) {
23
+ return this.#client.request("GET", "/v1/analyses/recent", options);
24
+ }
25
+ /** PATCH `/v1/analyses/{analysis_id}` */
26
+ update(analysisId, name, options) {
27
+ return this.#client.request("PATCH", `/v1/analyses/${analysisId}`, {
28
+ ...options,
29
+ json: { name },
30
+ });
31
+ }
32
+ /** DELETE `/v1/analyses/{analysis_id}` */
33
+ delete(analysisId, options) {
34
+ return this.#client.request("DELETE", `/v1/analyses/${analysisId}`, options);
35
+ }
36
+ /** POST `/v1/analyses` */
37
+ createRoot(body, options) {
38
+ return this.#client.request("POST", "/v1/analyses", {
39
+ ...options,
40
+ json: body,
41
+ });
42
+ }
43
+ /** POST `/v1/analyses/{analysis_id}/child` */
44
+ createChild(analysisId, body, options) {
45
+ return this.#client.request("POST", `/v1/analyses/${analysisId}/child`, {
46
+ ...options,
47
+ json: body,
48
+ });
49
+ }
50
+ /** POST `/v1/analyses/{analysis_id}/fork` */
51
+ fork(analysisId, body = {}, options) {
52
+ return this.#client.request("POST", `/v1/analyses/${analysisId}/fork`, {
53
+ ...options,
54
+ json: body,
55
+ });
56
+ }
57
+ /** POST `/v1/analyses/merge` */
58
+ merge(body, options) {
59
+ return this.#client.request("POST", "/v1/analyses/merge", {
60
+ ...options,
61
+ json: body,
62
+ });
63
+ }
64
+ /** POST `/v1/analyses/{analysis_id}/commit` */
65
+ commit(analysisId, body = {}, options) {
66
+ return this.#client.request("POST", `/v1/analyses/${analysisId}/commit`, {
67
+ ...options,
68
+ json: body,
69
+ });
70
+ }
71
+ /** POST `/v1/analyses/{analysis_id}/head` */
72
+ setHead(analysisId, body, options) {
73
+ return this.#client.request("POST", `/v1/analyses/${analysisId}/head`, {
74
+ ...options,
75
+ json: body,
76
+ });
77
+ }
78
+ /** GET `/v1/analyses/{analysis_id}/entrypoints` */
79
+ entrypoints(analysisId, query, options) {
80
+ return this.#client.request("GET", `/v1/analyses/${analysisId}/entrypoints`, { ...options, query });
81
+ }
82
+ /** GET `/v1/analyses/{analysis_id}/findings` */
83
+ listFindings(analysisId, query, options) {
84
+ return this.#client.request("GET", `/v1/analyses/${analysisId}/findings`, {
85
+ ...options,
86
+ query,
87
+ });
88
+ }
89
+ /** POST `/v1/analyses/{analysis_id}/findings` */
90
+ addFindings(analysisId, body, options) {
91
+ return this.#client.request("POST", `/v1/analyses/${analysisId}/findings`, {
92
+ ...options,
93
+ json: body,
94
+ });
95
+ }
96
+ /** GET `/v1/analyses/{analysis_id}/staged` */
97
+ diffStaged(analysisId, query, options) {
98
+ return this.#client.request("GET", `/v1/analyses/${analysisId}/staged`, {
99
+ ...options,
100
+ query,
101
+ });
102
+ }
103
+ /** GET `/v1/analyses/{analysis_id}/transitions` */
104
+ diffVersion(analysisId, query, options) {
105
+ return this.#client.request("GET", `/v1/analyses/${analysisId}/transitions`, { ...options, query });
106
+ }
107
+ async run(analysisId, body = {}, options = {}) {
108
+ const { withStreaming, ...requestOptions } = options;
109
+ const data = await this.#client.request("POST", `/v1/analyses/${analysisId}/run`, {
110
+ ...requestOptions,
111
+ json: body,
112
+ });
113
+ if (!withStreaming)
114
+ return data;
115
+ return new EventResource({
116
+ data,
117
+ resourceId: data.version.id,
118
+ client: this.#client,
119
+ isCompleted: (current) => !current.version.has_pipeline_processing,
120
+ refreshData: () => this.get(data.id, { version_id: data.version.id }, requestOptions),
121
+ shouldRefresh: (event) => event.type === "analysis.pipeline",
122
+ handleEvent: (event) => {
123
+ if (event.event === "analysis.run") {
124
+ const parsed = JSON.parse(event.data).data;
125
+ if (!parsed || parsed.id !== data.version.id)
126
+ return null;
127
+ return { ...parsed, type: "analysis.run" };
128
+ }
129
+ if (event.event === "analysis.pipeline") {
130
+ const parsed = JSON.parse(event.data).data;
131
+ if (!parsed || parsed.id !== data.version.id)
132
+ return null;
133
+ return { ...parsed, type: "analysis.pipeline" };
134
+ }
135
+ return null;
136
+ },
137
+ });
138
+ }
139
+ async retry(analysisId, body = {}, options = {}) {
140
+ const { withStreaming, ...requestOptions } = options;
141
+ const data = await this.#client.request("POST", `/v1/analyses/${analysisId}/retry`, {
142
+ ...requestOptions,
143
+ json: body,
144
+ });
145
+ if (!withStreaming)
146
+ return data;
147
+ return new EventResource({
148
+ data,
149
+ resourceId: data.version.id,
150
+ client: this.#client,
151
+ isCompleted: (current) => !current.version.has_pipeline_processing,
152
+ refreshData: () => this.get(data.id, { version_id: data.version.id }, requestOptions),
153
+ shouldRefresh: (event) => event.type === "analysis.pipeline",
154
+ handleEvent: (event) => {
155
+ if (event.event === "analysis.run") {
156
+ const parsed = JSON.parse(event.data).data;
157
+ if (!parsed || parsed.id !== data.version.id)
158
+ return null;
159
+ return { ...parsed, type: "analysis.run" };
160
+ }
161
+ if (event.event === "analysis.pipeline") {
162
+ const parsed = JSON.parse(event.data).data;
163
+ if (!parsed || parsed.id !== data.version.id)
164
+ return null;
165
+ return { ...parsed, type: "analysis.pipeline" };
166
+ }
167
+ return null;
168
+ },
169
+ });
170
+ }
171
+ }
172
+ export class BoundAnalysisResources {
173
+ #parent;
174
+ analysisId;
175
+ constructor(parent, analysisId) {
176
+ this.#parent = parent;
177
+ this.analysisId = analysisId;
178
+ }
179
+ /** GET `/v1/analyses/{analysis_id}` */
180
+ get(query, options) {
181
+ return this.#parent.get(this.analysisId, query, options);
182
+ }
183
+ /** PATCH `/v1/analyses/{analysis_id}` */
184
+ update(name, options) {
185
+ return this.#parent.update(this.analysisId, name, options);
186
+ }
187
+ /** DELETE `/v1/analyses/{analysis_id}` */
188
+ delete(options) {
189
+ return this.#parent.delete(this.analysisId, options);
190
+ }
191
+ /** POST `/v1/analyses/{analysis_id}/child` */
192
+ createChild(body, options) {
193
+ return this.#parent.createChild(this.analysisId, body, options);
194
+ }
195
+ /** POST `/v1/analyses/{analysis_id}/fork` */
196
+ fork(body, options) {
197
+ return this.#parent.fork(this.analysisId, body, options);
198
+ }
199
+ /** POST `/v1/analyses/{analysis_id}/commit` */
200
+ commit(body, options) {
201
+ return this.#parent.commit(this.analysisId, body, options);
202
+ }
203
+ /** POST `/v1/analyses/{analysis_id}/head` */
204
+ setHead(body, options) {
205
+ return this.#parent.setHead(this.analysisId, body, options);
206
+ }
207
+ /** GET `/v1/analyses/{analysis_id}/entrypoints` */
208
+ entrypoints(query, options) {
209
+ return this.#parent.entrypoints(this.analysisId, query, options);
210
+ }
211
+ /** GET `/v1/analyses/{analysis_id}/findings` */
212
+ listFindings(query, options) {
213
+ return this.#parent.listFindings(this.analysisId, query, options);
214
+ }
215
+ /** POST `/v1/analyses/{analysis_id}/findings` */
216
+ addFindings(body, options) {
217
+ return this.#parent.addFindings(this.analysisId, body, options);
218
+ }
219
+ /** GET `/v1/analyses/{analysis_id}/staged` */
220
+ diffStaged(query, options) {
221
+ return this.#parent.diffStaged(this.analysisId, query, options);
222
+ }
223
+ /** GET `/v1/analyses/{analysis_id}/transitions` */
224
+ diffVersion(query, options) {
225
+ return this.#parent.diffVersion(this.analysisId, query, options);
226
+ }
227
+ run(body, options = {}) {
228
+ return options.withStreaming
229
+ ? this.#parent.run(this.analysisId, body, {
230
+ ...options,
231
+ withStreaming: true,
232
+ })
233
+ : this.#parent.run(this.analysisId, body, {
234
+ ...options,
235
+ withStreaming: false,
236
+ });
237
+ }
238
+ retry(body, options = {}) {
239
+ return options.withStreaming
240
+ ? this.#parent.retry(this.analysisId, body, {
241
+ ...options,
242
+ withStreaming: true,
243
+ })
244
+ : this.#parent.retry(this.analysisId, body, {
245
+ ...options,
246
+ withStreaming: false,
247
+ });
248
+ }
249
+ }
250
+ //# sourceMappingURL=analyses.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"analyses.js","sourceRoot":"","sources":["../../src/resources/analyses.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,48 @@
1
+ import type { BevorClient, RequestOptions } from "../client.js";
2
+ import type { PaginatedResource } from "../pagination.js";
3
+ import type { ID } from "../types/literals.js";
4
+ import type { ChatMessageBody, ChatsQueryParams } from "../types/requests.js";
5
+ import { type ChatMessageSchema, type ChatSchema, type Pagination, type ResultsResponse, type StreamedMessageType } from "../types/responses.js";
6
+ import type { WithoutPagination, WithPagination } from "./shared.js";
7
+ export declare class ChatResources {
8
+ #private;
9
+ constructor(client: BevorClient);
10
+ /** Methods bound to one chat. */
11
+ with(chatId: ID): BoundChatResources;
12
+ /** POST `/v1/chats` */
13
+ createForAnalysis(versionId: ID, options?: RequestOptions): Promise<ChatSchema>;
14
+ /** POST `/v1/chats` */
15
+ createForCode(codeId: ID, options?: RequestOptions): Promise<ChatSchema>;
16
+ /** GET `/v1/chats` */
17
+ list(query?: ChatsQueryParams, options?: WithoutPagination): Promise<Pagination<ChatSchema>>;
18
+ list(query: ChatsQueryParams | undefined, options: WithPagination): Promise<PaginatedResource<ChatSchema>>;
19
+ /** GET `/v1/chats/{chat_id}` */
20
+ get(chatId: ID, options?: RequestOptions): Promise<ChatSchema>;
21
+ /** GET `/v1/chats/{chat_id}/messages` */
22
+ messages(chatId: ID, options?: RequestOptions): Promise<ResultsResponse<ChatMessageSchema>>;
23
+ /** POST `/v1/chats/{chat_id}/sync` */
24
+ sync(chatId: ID, body: ChatMessageBody, options?: RequestOptions): Promise<ChatMessageSchema>;
25
+ /** POST `/v1/chats/{chat_id}/session-token`; the token for `stream`. */
26
+ sessionToken(chatId: ID, options?: RequestOptions): Promise<string>;
27
+ /**
28
+ * POST `/v1/chats/{chat_id}/stream`. Get `sessionToken` with `sessionToken()` first.
29
+ * Lines that aren't a valid streamed message are skipped.
30
+ */
31
+ stream(chatId: ID, sessionToken: string, body: ChatMessageBody, options?: RequestOptions): AsyncGenerator<StreamedMessageType>;
32
+ }
33
+ export declare class BoundChatResources {
34
+ #private;
35
+ readonly chatId: ID;
36
+ constructor(parent: ChatResources, chatId: ID);
37
+ /** GET `/v1/chats/{chat_id}` */
38
+ get(options?: RequestOptions): Promise<ChatSchema>;
39
+ /** GET `/v1/chats/{chat_id}/messages` */
40
+ messages(options?: RequestOptions): Promise<ResultsResponse<ChatMessageSchema>>;
41
+ /** POST `/v1/chats/{chat_id}/sync` */
42
+ sync(body: ChatMessageBody, options?: RequestOptions): Promise<ChatMessageSchema>;
43
+ /** POST `/v1/chats/{chat_id}/session-token` */
44
+ sessionToken(options?: RequestOptions): Promise<string>;
45
+ /** POST `/v1/chats/{chat_id}/stream` */
46
+ stream(sessionToken: string, body: ChatMessageBody, options?: RequestOptions): AsyncGenerator<StreamedMessageType>;
47
+ }
48
+ //# sourceMappingURL=chats.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chats.d.ts","sourceRoot":"","sources":["../../src/resources/chats.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,114 @@
1
+ import { STREAMED_MESSAGE_EVENT_TYPES, } from "../types/responses.js";
2
+ const isStreamedMessage = (value) => typeof value === "object" &&
3
+ value !== null &&
4
+ STREAMED_MESSAGE_EVENT_TYPES.includes(value.event_type);
5
+ const parseStreamedMessage = (line) => {
6
+ try {
7
+ const parsed = JSON.parse(line);
8
+ if (!isStreamedMessage(parsed))
9
+ return null;
10
+ return {
11
+ id: parsed.id ?? null,
12
+ event_type: parsed.event_type,
13
+ content: parsed.content ?? null,
14
+ };
15
+ }
16
+ catch {
17
+ return null;
18
+ }
19
+ };
20
+ export class ChatResources {
21
+ #client;
22
+ constructor(client) {
23
+ this.#client = client;
24
+ }
25
+ /** Methods bound to one chat. */
26
+ with(chatId) {
27
+ return new BoundChatResources(this, chatId);
28
+ }
29
+ /** POST `/v1/chats` */
30
+ createForAnalysis(versionId, options) {
31
+ return this.#client.request("POST", "/v1/chats", {
32
+ ...options,
33
+ json: { version_id: versionId, scope: "analysis" },
34
+ });
35
+ }
36
+ /** POST `/v1/chats` */
37
+ createForCode(codeId, options) {
38
+ return this.#client.request("POST", "/v1/chats", {
39
+ ...options,
40
+ json: { code_id: codeId, scope: "code" },
41
+ });
42
+ }
43
+ list(query, options = {}) {
44
+ return this.#client.paginate("/v1/chats", query, options);
45
+ }
46
+ /** GET `/v1/chats/{chat_id}` */
47
+ get(chatId, options) {
48
+ return this.#client.request("GET", `/v1/chats/${chatId}`, options);
49
+ }
50
+ /** GET `/v1/chats/{chat_id}/messages` */
51
+ messages(chatId, options) {
52
+ return this.#client.request("GET", `/v1/chats/${chatId}/messages`, options);
53
+ }
54
+ /** POST `/v1/chats/{chat_id}/sync` */
55
+ sync(chatId, body, options) {
56
+ return this.#client.request("POST", `/v1/chats/${chatId}/sync`, {
57
+ ...options,
58
+ json: body,
59
+ });
60
+ }
61
+ /** POST `/v1/chats/{chat_id}/session-token`; the token for `stream`. */
62
+ async sessionToken(chatId, options) {
63
+ const data = await this.#client.request("POST", `/v1/chats/${chatId}/session-token`, options);
64
+ if (!data?.token)
65
+ throw new Error("session-token response is missing `token`");
66
+ return String(data.token);
67
+ }
68
+ /**
69
+ * POST `/v1/chats/{chat_id}/stream`. Get `sessionToken` with `sessionToken()` first.
70
+ * Lines that aren't a valid streamed message are skipped.
71
+ */
72
+ async *stream(chatId, sessionToken, body, options) {
73
+ const lines = this.#client.streamLines("POST", `/v1/chats/${chatId}/stream`, {
74
+ ...options,
75
+ json: { ...body, token: sessionToken },
76
+ });
77
+ for await (const line of lines) {
78
+ if (!line)
79
+ continue;
80
+ const message = parseStreamedMessage(line);
81
+ if (message)
82
+ yield message;
83
+ }
84
+ }
85
+ }
86
+ export class BoundChatResources {
87
+ #parent;
88
+ chatId;
89
+ constructor(parent, chatId) {
90
+ this.#parent = parent;
91
+ this.chatId = chatId;
92
+ }
93
+ /** GET `/v1/chats/{chat_id}` */
94
+ get(options) {
95
+ return this.#parent.get(this.chatId, options);
96
+ }
97
+ /** GET `/v1/chats/{chat_id}/messages` */
98
+ messages(options) {
99
+ return this.#parent.messages(this.chatId, options);
100
+ }
101
+ /** POST `/v1/chats/{chat_id}/sync` */
102
+ sync(body, options) {
103
+ return this.#parent.sync(this.chatId, body, options);
104
+ }
105
+ /** POST `/v1/chats/{chat_id}/session-token` */
106
+ sessionToken(options) {
107
+ return this.#parent.sessionToken(this.chatId, options);
108
+ }
109
+ /** POST `/v1/chats/{chat_id}/stream` */
110
+ stream(sessionToken, body, options) {
111
+ return this.#parent.stream(this.chatId, sessionToken, body, options);
112
+ }
113
+ }
114
+ //# sourceMappingURL=chats.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chats.js","sourceRoot":"","sources":["../../src/resources/chats.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,64 @@
1
+ import type { BevorClient, RequestOptions } from "../client.js";
2
+ import type { PaginatedResource } from "../pagination.js";
3
+ import { EventResource } from "../streaming.js";
4
+ import type { ID } from "../types/literals.js";
5
+ import type { CodeConnectedRepoBody, CodePasteBody, CodePublicRepoBody, CodeQueryParams, CodeScanBody } from "../types/requests.js";
6
+ import type { ChatSchema, CodeEventData, CodeMappingSchema, GraphSnapshotEdge, Pagination, ResultsResponse } from "../types/responses.js";
7
+ import { type BoundFileResources, FileResources } from "./files.js";
8
+ import { type BoundNodeResources, NodeResources } from "./nodes.js";
9
+ import type { WithoutPagination, WithoutStreaming, WithPagination, WithStreaming } from "./shared.js";
10
+ /** A code version still being processed, with its progress events. */
11
+ export type CodeResource = EventResource<CodeMappingSchema, CodeEventData>;
12
+ /** A file for `createFile`: its name and contents. */
13
+ export type UploadFile = readonly [name: string, content: Uint8Array | Blob];
14
+ export declare class CodesResources {
15
+ #private;
16
+ readonly files: FileResources;
17
+ readonly nodes: NodeResources;
18
+ constructor(client: BevorClient);
19
+ /** Methods bound to one code version. */
20
+ with(codeId: ID): BoundCodesResources;
21
+ /** GET `/v1/codes` */
22
+ list(query?: CodeQueryParams, options?: WithoutPagination): Promise<Pagination<CodeMappingSchema>>;
23
+ list(query: CodeQueryParams | undefined, options: WithPagination): Promise<PaginatedResource<CodeMappingSchema>>;
24
+ /** GET `/v1/codes/{code_id}` */
25
+ get(codeId: ID, options?: RequestOptions): Promise<CodeMappingSchema>;
26
+ /** GET `/v1/codes/{code_id}/edges` (all edges for the snapshot) */
27
+ edges(codeId: ID, options?: RequestOptions): Promise<ResultsResponse<GraphSnapshotEdge>>;
28
+ /** POST `/v1/codes/{code_id}/retry` */
29
+ retry(codeId: ID, options?: RequestOptions): Promise<CodeMappingSchema>;
30
+ /** POST `/v1/codes/scan` */
31
+ createScan(body: CodeScanBody, options?: RequestOptions): Promise<CodeMappingSchema>;
32
+ /** POST `/v1/codes/paste` */
33
+ createPaste(body: CodePasteBody, options?: RequestOptions): Promise<CodeMappingSchema>;
34
+ /** POST `/v1/codes/repo` */
35
+ createPublicRepo(body: CodePublicRepoBody, options?: WithoutStreaming): Promise<CodeMappingSchema>;
36
+ createPublicRepo(body: CodePublicRepoBody, options: WithStreaming): Promise<CodeResource>;
37
+ /** POST `/v1/codes/connected-repo` */
38
+ createConnectedRepo(body: CodeConnectedRepoBody, options?: WithoutStreaming): Promise<CodeMappingSchema>;
39
+ createConnectedRepo(body: CodeConnectedRepoBody, options: WithStreaming): Promise<CodeResource>;
40
+ /** POST `/v1/codes/signing-key`; returns the short-lived key for `uploadFolderZip`. */
41
+ generateSigningKey(options?: RequestOptions): Promise<string>;
42
+ /** POST `/v1/codes/file` (multipart upload; the server uses the first file). */
43
+ createFile(files: readonly UploadFile[], options?: RequestOptions): Promise<CodeMappingSchema>;
44
+ /** POST `/v1/codes/folder` with a raw zip body, authorized by `signingKey`. */
45
+ uploadFolderZip(signingKey: string, zip: Uint8Array, options?: WithoutStreaming): Promise<CodeMappingSchema>;
46
+ uploadFolderZip(signingKey: string, zip: Uint8Array, options: WithStreaming): Promise<CodeResource>;
47
+ /** POST `/v1/chats` */
48
+ createChat(codeId: ID, options?: RequestOptions): Promise<ChatSchema>;
49
+ }
50
+ /** Bound to one code version; methods omit `codeId`. */
51
+ export declare class BoundCodesResources {
52
+ #private;
53
+ readonly codeId: ID;
54
+ readonly files: BoundFileResources;
55
+ readonly nodes: BoundNodeResources;
56
+ constructor(parent: CodesResources, codeId: ID);
57
+ /** GET `/v1/codes/{code_id}` */
58
+ get(options?: RequestOptions): Promise<CodeMappingSchema>;
59
+ /** GET `/v1/codes/{code_id}/edges` */
60
+ edges(options?: RequestOptions): Promise<ResultsResponse<GraphSnapshotEdge>>;
61
+ /** POST `/v1/codes/{code_id}/retry` */
62
+ retry(options?: RequestOptions): Promise<CodeMappingSchema>;
63
+ }
64
+ //# sourceMappingURL=codes.d.ts.map