@effected/github 0.7.0 → 0.9.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/GitHubRepository.js +42 -1
- package/README.md +14 -0
- package/index.d.ts +137 -82
- package/index.js +2 -2
- package/package.json +4 -4
- package/tsdoc-metadata.json +1 -1
package/GitHubRepository.js
CHANGED
|
@@ -5,6 +5,47 @@ import { Context, Effect, Layer, Schema } from "effect";
|
|
|
5
5
|
|
|
6
6
|
//#region src/GitHubRepository.ts
|
|
7
7
|
/**
|
|
8
|
+
* A {@link RepositoryPatch} from a draft, dropping every explicitly-`undefined`
|
|
9
|
+
* field.
|
|
10
|
+
*
|
|
11
|
+
* @remarks
|
|
12
|
+
* The supported spelling for "apply only what was configured" — the natural
|
|
13
|
+
* shape for a sync action, and the one the checker cannot follow on its own.
|
|
14
|
+
* Without it a consumer under the recommended tsconfig is quietly pushed toward
|
|
15
|
+
* `as`, which is a real cost in a package whose stated design property is that
|
|
16
|
+
* the route is the key and there are no casts.
|
|
17
|
+
*
|
|
18
|
+
* Dropping the key rather than sending `undefined` is what the wire needs:
|
|
19
|
+
* `PATCH` treats an absent field as "leave it alone", while an explicit `null`
|
|
20
|
+
* or `undefined` is a value.
|
|
21
|
+
*
|
|
22
|
+
* A key-by-key loop still defeats TypeScript's correlation between two indexed
|
|
23
|
+
* accesses (`draft[key] = source[key]` over a union `key`), which no helper can
|
|
24
|
+
* fix — build the draft as a literal where you can.
|
|
25
|
+
*
|
|
26
|
+
* @example
|
|
27
|
+
* ```ts
|
|
28
|
+
* import { repositoryPatch } from "@effected/github";
|
|
29
|
+
*
|
|
30
|
+
* // `config.has_issues` is `boolean | undefined`; absent fields drop out.
|
|
31
|
+
* const patch = repositoryPatch({
|
|
32
|
+
* has_issues: config.has_issues,
|
|
33
|
+
* has_wiki: config.has_wiki,
|
|
34
|
+
* description: config.description,
|
|
35
|
+
* });
|
|
36
|
+
* ```
|
|
37
|
+
*
|
|
38
|
+
* @param draft - The fields to apply, any of which may be `undefined`.
|
|
39
|
+
* @returns A patch carrying only the fields that were actually set.
|
|
40
|
+
*
|
|
41
|
+
* @public
|
|
42
|
+
*/
|
|
43
|
+
const repositoryPatch = (draft) => {
|
|
44
|
+
const out = {};
|
|
45
|
+
for (const [key, value] of Object.entries(draft)) if (value !== void 0) out[key] = value;
|
|
46
|
+
return out;
|
|
47
|
+
};
|
|
48
|
+
/**
|
|
8
49
|
* Fields in the user-facing `security_and_analysis` block that GitHub accepts
|
|
9
50
|
* as `{ status: "enabled" | "disabled" }`.
|
|
10
51
|
*
|
|
@@ -234,4 +275,4 @@ const make = (client) => {
|
|
|
234
275
|
};
|
|
235
276
|
|
|
236
277
|
//#endregion
|
|
237
|
-
export { GRAPHQL_ONLY_SETTINGS, GitHubRepository, SECURITY_ANALYSIS_STATUS_FIELDS, transformSecurityAndAnalysis };
|
|
278
|
+
export { GRAPHQL_ONLY_SETTINGS, GitHubRepository, SECURITY_ANALYSIS_STATUS_FIELDS, repositoryPatch, transformSecurityAndAnalysis };
|
package/README.md
CHANGED
|
@@ -189,6 +189,19 @@ const program = Effect.gen(function* () {
|
|
|
189
189
|
// GitHub would reject, which is what a person reading a dry run is checking for.
|
|
190
190
|
```
|
|
191
191
|
|
|
192
|
+
`updateSettings` takes octokit's own generated params, and those spell an optional field as `has_issues?: boolean` rather than `has_issues?: boolean | undefined` — so under `exactOptionalPropertyTypes` a `Partial<T>` built from your own settings schema does not assign to it at all. `repositoryPatch` is the supported way out, and it exists so the answer is never a cast:
|
|
193
|
+
|
|
194
|
+
```ts
|
|
195
|
+
import { repositoryPatch } from "@effected/github";
|
|
196
|
+
|
|
197
|
+
declare const config: { has_issues?: boolean | undefined; description?: string | undefined };
|
|
198
|
+
|
|
199
|
+
const patch = repositoryPatch({ has_issues: config.has_issues, description: config.description });
|
|
200
|
+
// a RepositoryPatch carrying only the fields that were actually set
|
|
201
|
+
```
|
|
202
|
+
|
|
203
|
+
Dropping the key is what the wire needs: `PATCH` reads an absent field as "leave it alone", while an explicit `null` is a value. `RepositoryPatchDraft` is the input type — the same fields, each allowed to be an explicit `undefined`. Build the draft as an object literal where you can: a key-by-key loop defeats TypeScript's correlation between two indexed accesses, which no helper can repair.
|
|
204
|
+
|
|
192
205
|
`security_and_analysis` accepts both the bare `"enabled"` a human writes in a config file and the `{ status: "enabled" }` GitHub's own parameter type declares. A map touching neither GraphQL-only setting never reads the node id, so the common case stays one request. `ownerType` answers `"User"` or `"Organization"` for the repository in `Repo`, which is how a shared settings template drops the fields GitHub accepts only on an organization-owned repository before applying itself to a personal one.
|
|
193
206
|
|
|
194
207
|
## GitHub App authentication
|
|
@@ -268,6 +281,7 @@ const TestClient = GitHubClient.layerFixture(fixtures);
|
|
|
268
281
|
- `GitHubClient` — the typed transport: `request`, `requestDecoded` (a mandatory-schema escape hatch for routes outside the generated map), `paginate` / `paginateStream`, `graphql`, and `rateLimit` (observation only — nothing here throttles on your behalf).
|
|
269
282
|
- `Repo` / `RepoRef` — the `{ owner, repo }` coordinate, resolved per call through `R`, with `Repo.provide` for multi-repository programs.
|
|
270
283
|
- `GitHubRepository` — the repository's settings as GitHub's own generated type, plus `defaultBranch`, `nodeId`, `ownerType` for gating organization-only fields, and `applySettings` reporting the keys it actually sent.
|
|
284
|
+
- `repositoryPatch` / `RepositoryPatchDraft` — build an `updateSettings` patch from fields that may be `undefined`, under `exactOptionalPropertyTypes`, without a cast.
|
|
271
285
|
- `GitHubError` / `GitHubGraphQLError` — one error per transport, `kind`-routed with `hasKind` for `Effect.catchIf`.
|
|
272
286
|
- `RetryPolicy` — the client's one retry policy: full-jitter backoff, server-advised delays honored up to a ceiling.
|
|
273
287
|
- `GitHubApp` — App JWT signing, installation token minting/revocation, app and installation identity, and `clientLayer` for an App-authenticated `GitHubClient`.
|
package/index.d.ts
CHANGED
|
@@ -3,6 +3,7 @@ import { Config, Context, Duration, Effect, Layer, Option, Redacted, Result, Sch
|
|
|
3
3
|
import { PaginatingEndpoints } from "@octokit/plugin-paginate-rest";
|
|
4
4
|
import { Endpoints, RequestHeaders } from "@octokit/types";
|
|
5
5
|
import { SemVer } from "@effected/semver";
|
|
6
|
+
//#endregion
|
|
6
7
|
//#region src/GitHubError.d.ts
|
|
7
8
|
/**
|
|
8
9
|
* Why a GitHub call failed, as a value you can branch on.
|
|
@@ -17,7 +18,7 @@ import { SemVer } from "@effected/semver";
|
|
|
17
18
|
*
|
|
18
19
|
* @public
|
|
19
20
|
*/
|
|
20
|
-
declare const GitHubErrorKind: Schema.Literals<readonly ["notFound", "alreadyExists", "rejected", "unauthorized", "rateLimited", "transport", "decode"]>;
|
|
21
|
+
export declare const GitHubErrorKind: Schema.Literals<readonly ["notFound", "alreadyExists", "rejected", "unauthorized", "rateLimited", "transport", "decode"]>;
|
|
21
22
|
declare const GitHubError_base: Schema.Class<GitHubError, Schema.TaggedStruct<"GitHubError", {
|
|
22
23
|
/** Structural routing. Branch on this, never on the rendered message. */
|
|
23
24
|
readonly kind: Schema.Literals<readonly ["notFound", "alreadyExists", "rejected", "unauthorized", "rateLimited", "transport", "decode"]>;
|
|
@@ -57,7 +58,7 @@ declare const GitHubError_base: Schema.Class<GitHubError, Schema.TaggedStruct<"G
|
|
|
57
58
|
*
|
|
58
59
|
* @public
|
|
59
60
|
*/
|
|
60
|
-
declare class GitHubError extends GitHubError_base {
|
|
61
|
+
export declare class GitHubError extends GitHubError_base {
|
|
61
62
|
/** `"GitBranch.upsert failed (422): Reference already exists"`. */
|
|
62
63
|
get message(): string;
|
|
63
64
|
/**
|
|
@@ -122,7 +123,7 @@ declare const GraphQLErrorEntry_base: Schema.Class<GraphQLErrorEntry, Schema.Str
|
|
|
122
123
|
*
|
|
123
124
|
* @public
|
|
124
125
|
*/
|
|
125
|
-
declare class GraphQLErrorEntry extends GraphQLErrorEntry_base {}
|
|
126
|
+
export declare class GraphQLErrorEntry extends GraphQLErrorEntry_base {}
|
|
126
127
|
declare const GitHubGraphQLError_base: Schema.Class<GitHubGraphQLError, Schema.TaggedStruct<"GitHubGraphQLError", {
|
|
127
128
|
/**
|
|
128
129
|
* Structural routing, mirroring `GitHubError`'s.
|
|
@@ -155,7 +156,7 @@ declare const GitHubGraphQLError_base: Schema.Class<GitHubGraphQLError, Schema.T
|
|
|
155
156
|
*
|
|
156
157
|
* @public
|
|
157
158
|
*/
|
|
158
|
-
declare class GitHubGraphQLError extends GitHubGraphQLError_base {
|
|
159
|
+
export declare class GitHubGraphQLError extends GitHubGraphQLError_base {
|
|
159
160
|
get message(): string;
|
|
160
161
|
/** Whether retrying could plausibly succeed. Derived, like the REST error's. */
|
|
161
162
|
get retryable(): boolean;
|
|
@@ -201,7 +202,7 @@ declare class GitHubGraphQLError extends GitHubGraphQLError_base {
|
|
|
201
202
|
*
|
|
202
203
|
* @public
|
|
203
204
|
*/
|
|
204
|
-
declare class GraphQLDocument<A, V extends Record<string, unknown>> {
|
|
205
|
+
export declare class GraphQLDocument<A, V extends Record<string, unknown>> {
|
|
205
206
|
/** Names the span and the error's `operation`. */
|
|
206
207
|
readonly name: string;
|
|
207
208
|
/** The document text sent to GitHub. */
|
|
@@ -260,7 +261,7 @@ declare const RateLimitSnapshot_base: Schema.Class<RateLimitSnapshot, Schema.Str
|
|
|
260
261
|
*
|
|
261
262
|
* @public
|
|
262
263
|
*/
|
|
263
|
-
declare class RateLimitSnapshot extends RateLimitSnapshot_base {
|
|
264
|
+
export declare class RateLimitSnapshot extends RateLimitSnapshot_base {
|
|
264
265
|
/** Milliseconds until the window resets, relative to `nowMillis`, floored at zero. */
|
|
265
266
|
millisUntilReset(nowMillis: number): number;
|
|
266
267
|
/** True when the budget is spent. */
|
|
@@ -319,7 +320,7 @@ declare const RetryPolicy_base: Schema.Class<RetryPolicy, Schema.Struct<{
|
|
|
319
320
|
*
|
|
320
321
|
* @public
|
|
321
322
|
*/
|
|
322
|
-
declare class RetryPolicy extends RetryPolicy_base {
|
|
323
|
+
export declare class RetryPolicy extends RetryPolicy_base {
|
|
323
324
|
/** Four retries, 1s base, 30s cap, honoring server-advised delays up to a minute. */
|
|
324
325
|
static readonly default: RetryPolicy;
|
|
325
326
|
/** Retries nothing; every failure surfaces on the first attempt. */
|
|
@@ -361,8 +362,9 @@ declare class RetryPolicy extends RetryPolicy_base {
|
|
|
361
362
|
*/
|
|
362
363
|
schedule<E extends RetryableFailure>(): Schedule.Schedule<number, E>;
|
|
363
364
|
}
|
|
364
|
-
|
|
365
|
-
|
|
365
|
+
declare namespace Rest_d_exports {
|
|
366
|
+
export { Data, Item, PageOptions, PaginatingRoute, Params, RequestExtras, Response, Route };
|
|
367
|
+
}
|
|
366
368
|
/**
|
|
367
369
|
* Every REST route GitHub documents, as a `"<METHOD> <path>"` literal — for
|
|
368
370
|
* example `"GET /repos/{owner}/{repo}"`.
|
|
@@ -470,7 +472,7 @@ declare const PageOptions_base: Schema.Class<PageOptions, Schema.Struct<{
|
|
|
470
472
|
*
|
|
471
473
|
* @public
|
|
472
474
|
*/
|
|
473
|
-
declare class PageOptions extends PageOptions_base {
|
|
475
|
+
export declare class PageOptions extends PageOptions_base {
|
|
474
476
|
/** Reads every page, 100 at a time — GitHub's maximum page size. */
|
|
475
477
|
static readonly all: PageOptions;
|
|
476
478
|
/**
|
|
@@ -685,7 +687,7 @@ declare const GitHubClient_base: Context.ServiceClass<GitHubClient, "@effected/g
|
|
|
685
687
|
*
|
|
686
688
|
* @public
|
|
687
689
|
*/
|
|
688
|
-
declare class GitHubClient extends GitHubClient_base {
|
|
690
|
+
export declare class GitHubClient extends GitHubClient_base {
|
|
689
691
|
/**
|
|
690
692
|
* A client authenticated with a token you already hold.
|
|
691
693
|
*
|
|
@@ -759,7 +761,7 @@ declare const InvalidRepoRefError_base: Schema.Class<InvalidRepoRefError, Schema
|
|
|
759
761
|
*
|
|
760
762
|
* @public
|
|
761
763
|
*/
|
|
762
|
-
declare class InvalidRepoRefError extends InvalidRepoRefError_base {
|
|
764
|
+
export declare class InvalidRepoRefError extends InvalidRepoRefError_base {
|
|
763
765
|
get message(): string;
|
|
764
766
|
}
|
|
765
767
|
declare const RepoRef_base: Schema.Class<RepoRef, Schema.Struct<{
|
|
@@ -773,7 +775,7 @@ declare const RepoRef_base: Schema.Class<RepoRef, Schema.Struct<{
|
|
|
773
775
|
*
|
|
774
776
|
* @public
|
|
775
777
|
*/
|
|
776
|
-
declare class RepoRef extends RepoRef_base {
|
|
778
|
+
export declare class RepoRef extends RepoRef_base {
|
|
777
779
|
/**
|
|
778
780
|
* Parse `"owner/repo"`, synchronously.
|
|
779
781
|
*
|
|
@@ -826,7 +828,7 @@ declare const Repo_base: Context.ServiceClass<Repo, "@effected/github/Repo", Rep
|
|
|
826
828
|
*
|
|
827
829
|
* @public
|
|
828
830
|
*/
|
|
829
|
-
declare class Repo extends Repo_base {
|
|
831
|
+
export declare class Repo extends Repo_base {
|
|
830
832
|
/** The repository, as a value you already have. */
|
|
831
833
|
static readonly layer: (ref: RepoRef) => Layer.Layer<Repo>;
|
|
832
834
|
/** The repository, from an `"owner/repo"` slug. */
|
|
@@ -872,7 +874,7 @@ declare const StorageRecordInput_base: Schema.Class<StorageRecordInput, Schema.S
|
|
|
872
874
|
*
|
|
873
875
|
* @public
|
|
874
876
|
*/
|
|
875
|
-
declare class StorageRecordInput extends StorageRecordInput_base {}
|
|
877
|
+
export declare class StorageRecordInput extends StorageRecordInput_base {}
|
|
876
878
|
/**
|
|
877
879
|
* Organization-level artifact metadata.
|
|
878
880
|
*
|
|
@@ -895,7 +897,7 @@ declare const ArtifactMetadata_base: Context.ServiceClass<ArtifactMetadata, "@ef
|
|
|
895
897
|
*
|
|
896
898
|
* @public
|
|
897
899
|
*/
|
|
898
|
-
declare class ArtifactMetadata extends ArtifactMetadata_base {
|
|
900
|
+
export declare class ArtifactMetadata extends ArtifactMetadata_base {
|
|
899
901
|
static readonly layer: Layer.Layer<ArtifactMetadata, never, GitHubClient>;
|
|
900
902
|
/** An in-memory double; unstubbed members die naming themselves. */
|
|
901
903
|
static readonly makeTest: (overrides?: Partial<ArtifactMetadataShape>) => ArtifactMetadataShape;
|
|
@@ -915,7 +917,7 @@ declare const AttestationRecord_base: Schema.Class<AttestationRecord, Schema.Str
|
|
|
915
917
|
*
|
|
916
918
|
* @public
|
|
917
919
|
*/
|
|
918
|
-
declare class AttestationRecord extends AttestationRecord_base {}
|
|
920
|
+
export declare class AttestationRecord extends AttestationRecord_base {}
|
|
919
921
|
declare const AttestationListEntry_base: Schema.Class<AttestationListEntry, Schema.Struct<{
|
|
920
922
|
/** Where the bundle lives. */
|
|
921
923
|
readonly url: Schema.String;
|
|
@@ -927,7 +929,7 @@ declare const AttestationListEntry_base: Schema.Class<AttestationListEntry, Sche
|
|
|
927
929
|
*
|
|
928
930
|
* @public
|
|
929
931
|
*/
|
|
930
|
-
declare class AttestationListEntry extends AttestationListEntry_base {}
|
|
932
|
+
export declare class AttestationListEntry extends AttestationListEntry_base {}
|
|
931
933
|
/**
|
|
932
934
|
* The attestation REST surface.
|
|
933
935
|
*
|
|
@@ -960,7 +962,7 @@ declare const Attestation_base: Context.ServiceClass<Attestation, "@effected/git
|
|
|
960
962
|
*
|
|
961
963
|
* @public
|
|
962
964
|
*/
|
|
963
|
-
declare class Attestation extends Attestation_base {
|
|
965
|
+
export declare class Attestation extends Attestation_base {
|
|
964
966
|
static readonly layer: Layer.Layer<Attestation, never, GitHubClient>;
|
|
965
967
|
/** An in-memory double; unstubbed members die naming themselves. */
|
|
966
968
|
static readonly makeTest: (overrides?: Partial<AttestationShape>) => AttestationShape;
|
|
@@ -970,9 +972,9 @@ declare class Attestation extends Attestation_base {
|
|
|
970
972
|
//#endregion
|
|
971
973
|
//#region src/CheckRun.d.ts
|
|
972
974
|
/** How a check run finished. @public */
|
|
973
|
-
declare const CheckConclusion: Schema.Literals<readonly ["success", "failure", "neutral", "cancelled", "timed_out", "action_required", "skipped"]>;
|
|
975
|
+
export declare const CheckConclusion: Schema.Literals<readonly ["success", "failure", "neutral", "cancelled", "timed_out", "action_required", "skipped"]>;
|
|
974
976
|
/** How serious an annotation is. @public */
|
|
975
|
-
declare const AnnotationLevel: Schema.Literals<readonly ["notice", "warning", "failure"]>;
|
|
977
|
+
export declare const AnnotationLevel: Schema.Literals<readonly ["notice", "warning", "failure"]>;
|
|
976
978
|
declare const Annotation_base: Schema.Class<Annotation, Schema.Struct<{
|
|
977
979
|
/** Repository-relative path. */
|
|
978
980
|
readonly path: Schema.String;
|
|
@@ -989,7 +991,7 @@ declare const Annotation_base: Schema.Class<Annotation, Schema.Struct<{
|
|
|
989
991
|
*
|
|
990
992
|
* @public
|
|
991
993
|
*/
|
|
992
|
-
declare class Annotation extends Annotation_base {}
|
|
994
|
+
export declare class Annotation extends Annotation_base {}
|
|
993
995
|
declare const CheckRunOutput_base: Schema.Class<CheckRunOutput, Schema.Struct<{
|
|
994
996
|
readonly title: Schema.String;
|
|
995
997
|
/** Markdown shown under the title. Capped at 65535 **bytes**. */
|
|
@@ -1011,7 +1013,7 @@ declare const CheckRunOutput_base: Schema.Class<CheckRunOutput, Schema.Struct<{
|
|
|
1011
1013
|
*
|
|
1012
1014
|
* @public
|
|
1013
1015
|
*/
|
|
1014
|
-
declare class CheckRunOutput extends CheckRunOutput_base {
|
|
1016
|
+
export declare class CheckRunOutput extends CheckRunOutput_base {
|
|
1015
1017
|
/** GitHub's cap on `summary` and `text`, in UTF-8 bytes. */
|
|
1016
1018
|
static readonly LIMIT_BYTES = 65535;
|
|
1017
1019
|
/** GitHub's cap on annotations per request. */
|
|
@@ -1040,7 +1042,7 @@ declare const CheckRunRef_base: Schema.Class<CheckRunRef, Schema.Struct<{
|
|
|
1040
1042
|
*
|
|
1041
1043
|
* @public
|
|
1042
1044
|
*/
|
|
1043
|
-
declare class CheckRunRef extends CheckRunRef_base {}
|
|
1045
|
+
export declare class CheckRunRef extends CheckRunRef_base {}
|
|
1044
1046
|
/**
|
|
1045
1047
|
* Conclude the surrounding {@link CheckRunShape.withCheckRun} explicitly.
|
|
1046
1048
|
*
|
|
@@ -1119,7 +1121,7 @@ declare const CheckRun_base: Context.ServiceClass<CheckRun, "@effected/github/Ch
|
|
|
1119
1121
|
*
|
|
1120
1122
|
* @public
|
|
1121
1123
|
*/
|
|
1122
|
-
declare class CheckRun extends CheckRun_base {
|
|
1124
|
+
export declare class CheckRun extends CheckRun_base {
|
|
1123
1125
|
static readonly layer: Layer.Layer<CheckRun, never, GitHubClient>;
|
|
1124
1126
|
/** An in-memory double; unstubbed members die naming themselves. */
|
|
1125
1127
|
static readonly makeTest: (overrides?: Partial<CheckRunShape>) => CheckRunShape;
|
|
@@ -1194,7 +1196,7 @@ declare const CodeScanning_base: Context.ServiceClass<CodeScanning, "@effected/g
|
|
|
1194
1196
|
*
|
|
1195
1197
|
* @public
|
|
1196
1198
|
*/
|
|
1197
|
-
declare class CodeScanning extends CodeScanning_base {
|
|
1199
|
+
export declare class CodeScanning extends CodeScanning_base {
|
|
1198
1200
|
/**
|
|
1199
1201
|
* @remarks
|
|
1200
1202
|
* The callback is written `(client) => make(client)` rather than passed as
|
|
@@ -1256,7 +1258,7 @@ declare const DeploymentEnvironment_base: Context.ServiceClass<DeploymentEnviron
|
|
|
1256
1258
|
*
|
|
1257
1259
|
* @public
|
|
1258
1260
|
*/
|
|
1259
|
-
declare class DeploymentEnvironment extends DeploymentEnvironment_base {
|
|
1261
|
+
export declare class DeploymentEnvironment extends DeploymentEnvironment_base {
|
|
1260
1262
|
/**
|
|
1261
1263
|
* @remarks
|
|
1262
1264
|
* `(client) => make(client)` rather than `make`: a static initializer runs
|
|
@@ -1353,7 +1355,7 @@ declare const GitBranch_base: Context.ServiceClass<GitBranch, "@effected/github/
|
|
|
1353
1355
|
*
|
|
1354
1356
|
* @public
|
|
1355
1357
|
*/
|
|
1356
|
-
declare class GitBranch extends GitBranch_base {
|
|
1358
|
+
export declare class GitBranch extends GitBranch_base {
|
|
1357
1359
|
/**
|
|
1358
1360
|
* @remarks
|
|
1359
1361
|
* The callback is written `(client) => make(client)` rather than passed as
|
|
@@ -1376,7 +1378,7 @@ declare class GitBranch extends GitBranch_base {
|
|
|
1376
1378
|
*
|
|
1377
1379
|
* @public
|
|
1378
1380
|
*/
|
|
1379
|
-
declare const FileMode: Schema.Literals<readonly ["100644", "100755", "120000"]>;
|
|
1381
|
+
export declare const FileMode: Schema.Literals<readonly ["100644", "100755", "120000"]>;
|
|
1380
1382
|
declare const FileContent_base: Schema.Class<FileContent, Schema.TaggedStruct<"FileContent", {
|
|
1381
1383
|
/** Repository-relative path. */
|
|
1382
1384
|
readonly path: Schema.NonEmptyString;
|
|
@@ -1390,7 +1392,7 @@ declare const FileContent_base: Schema.Class<FileContent, Schema.TaggedStruct<"F
|
|
|
1390
1392
|
*
|
|
1391
1393
|
* @public
|
|
1392
1394
|
*/
|
|
1393
|
-
declare class FileContent extends FileContent_base {}
|
|
1395
|
+
export declare class FileContent extends FileContent_base {}
|
|
1394
1396
|
declare const FileDeletion_base: Schema.Class<FileDeletion, Schema.TaggedStruct<"FileDeletion", {
|
|
1395
1397
|
/** Repository-relative path. */
|
|
1396
1398
|
readonly path: Schema.NonEmptyString;
|
|
@@ -1400,15 +1402,15 @@ declare const FileDeletion_base: Schema.Class<FileDeletion, Schema.TaggedStruct<
|
|
|
1400
1402
|
*
|
|
1401
1403
|
* @public
|
|
1402
1404
|
*/
|
|
1403
|
-
declare class FileDeletion extends FileDeletion_base {}
|
|
1405
|
+
export declare class FileDeletion extends FileDeletion_base {}
|
|
1404
1406
|
/**
|
|
1405
1407
|
* One change in a commit.
|
|
1406
1408
|
*
|
|
1407
1409
|
* @public
|
|
1408
1410
|
*/
|
|
1409
|
-
declare const FileChange: Schema.Union<readonly [typeof FileContent, typeof FileDeletion]>;
|
|
1411
|
+
export declare const FileChange: Schema.Union<readonly [typeof FileContent, typeof FileDeletion]>;
|
|
1410
1412
|
/** One change in a commit. @public */
|
|
1411
|
-
type FileChange = FileContent | FileDeletion;
|
|
1413
|
+
export type FileChange = FileContent | FileDeletion;
|
|
1412
1414
|
declare const CommitRef_base: Schema.Class<CommitRef, Schema.Struct<{
|
|
1413
1415
|
/** The commit's own sha. */
|
|
1414
1416
|
readonly sha: Schema.String;
|
|
@@ -1428,7 +1430,7 @@ declare const CommitRef_base: Schema.Class<CommitRef, Schema.Struct<{
|
|
|
1428
1430
|
*
|
|
1429
1431
|
* @public
|
|
1430
1432
|
*/
|
|
1431
|
-
declare class CommitRef extends CommitRef_base {}
|
|
1433
|
+
export declare class CommitRef extends CommitRef_base {}
|
|
1432
1434
|
/**
|
|
1433
1435
|
* Commits and trees in GitHub's Git Database API.
|
|
1434
1436
|
*
|
|
@@ -1482,7 +1484,7 @@ declare const GitCommit_base: Context.ServiceClass<GitCommit, "@effected/github/
|
|
|
1482
1484
|
*
|
|
1483
1485
|
* @public
|
|
1484
1486
|
*/
|
|
1485
|
-
declare class GitCommit extends GitCommit_base {
|
|
1487
|
+
export declare class GitCommit extends GitCommit_base {
|
|
1486
1488
|
static readonly layer: Layer.Layer<GitCommit, never, GitHubClient>;
|
|
1487
1489
|
/** An in-memory double; unstubbed members die naming themselves. */
|
|
1488
1490
|
static readonly makeTest: (overrides?: Partial<GitCommitShape>) => GitCommitShape;
|
|
@@ -1510,7 +1512,7 @@ declare const GitHubAppError_base: Schema.Class<GitHubAppError, Schema.TaggedStr
|
|
|
1510
1512
|
*
|
|
1511
1513
|
* @public
|
|
1512
1514
|
*/
|
|
1513
|
-
declare class GitHubAppError extends GitHubAppError_base {
|
|
1515
|
+
export declare class GitHubAppError extends GitHubAppError_base {
|
|
1514
1516
|
get message(): string;
|
|
1515
1517
|
/** @internal */
|
|
1516
1518
|
static of(kind: GitHubAppError["kind"], reason: string, cause?: unknown): GitHubAppError;
|
|
@@ -1588,7 +1590,7 @@ declare const InstallationToken_base: Schema.Class<InstallationToken, Schema.Str
|
|
|
1588
1590
|
*
|
|
1589
1591
|
* @public
|
|
1590
1592
|
*/
|
|
1591
|
-
declare class InstallationToken extends InstallationToken_base {
|
|
1593
|
+
export declare class InstallationToken extends InstallationToken_base {
|
|
1592
1594
|
/**
|
|
1593
1595
|
* Whether this token is spent, `skew` before its stated expiry.
|
|
1594
1596
|
*
|
|
@@ -1618,7 +1620,7 @@ declare const BotIdentity_base: Schema.Class<BotIdentity, Schema.Struct<{
|
|
|
1618
1620
|
*
|
|
1619
1621
|
* @public
|
|
1620
1622
|
*/
|
|
1621
|
-
declare class BotIdentity extends BotIdentity_base {
|
|
1623
|
+
export declare class BotIdentity extends BotIdentity_base {
|
|
1622
1624
|
/** The identity for an app, given whatever of its identity is known. */
|
|
1623
1625
|
static forApp(source: {
|
|
1624
1626
|
readonly appSlug: string;
|
|
@@ -1654,7 +1656,7 @@ declare const AppIdentity_base: Schema.Class<AppIdentity, Schema.Struct<{
|
|
|
1654
1656
|
*
|
|
1655
1657
|
* @public
|
|
1656
1658
|
*/
|
|
1657
|
-
declare class AppIdentity extends AppIdentity_base {
|
|
1659
|
+
export declare class AppIdentity extends AppIdentity_base {
|
|
1658
1660
|
/** The committer identity for this app. */
|
|
1659
1661
|
botIdentity(): BotIdentity;
|
|
1660
1662
|
}
|
|
@@ -1669,7 +1671,7 @@ declare const Installation_base: Schema.Class<Installation, Schema.Struct<{
|
|
|
1669
1671
|
*
|
|
1670
1672
|
* @public
|
|
1671
1673
|
*/
|
|
1672
|
-
declare class Installation extends Installation_base {}
|
|
1674
|
+
export declare class Installation extends Installation_base {}
|
|
1673
1675
|
/**
|
|
1674
1676
|
* Transport settings for the app's own API calls.
|
|
1675
1677
|
*
|
|
@@ -1709,7 +1711,7 @@ declare const GitHubApp_base: Context.ServiceClass<GitHubApp, "@effected/github/
|
|
|
1709
1711
|
*
|
|
1710
1712
|
* @public
|
|
1711
1713
|
*/
|
|
1712
|
-
declare class GitHubApp extends GitHubApp_base {
|
|
1714
|
+
export declare class GitHubApp extends GitHubApp_base {
|
|
1713
1715
|
/** The default transport. Bind it once; layers are memoized by reference. */
|
|
1714
1716
|
static readonly layer: Layer.Layer<GitHubApp>;
|
|
1715
1717
|
/**
|
|
@@ -1824,7 +1826,7 @@ declare const CommitSummary_base: Schema.Class<CommitSummary, Schema.Struct<{
|
|
|
1824
1826
|
*
|
|
1825
1827
|
* @public
|
|
1826
1828
|
*/
|
|
1827
|
-
declare class CommitSummary extends CommitSummary_base {
|
|
1829
|
+
export declare class CommitSummary extends CommitSummary_base {
|
|
1828
1830
|
/** The message's first line. */
|
|
1829
1831
|
get subject(): string;
|
|
1830
1832
|
}
|
|
@@ -1833,7 +1835,7 @@ declare class CommitSummary extends CommitSummary_base {
|
|
|
1833
1835
|
*
|
|
1834
1836
|
* @public
|
|
1835
1837
|
*/
|
|
1836
|
-
declare const FileStatus: Schema.Literals<readonly ["added", "removed", "modified", "renamed", "copied", "changed", "unchanged"]>;
|
|
1838
|
+
export declare const FileStatus: Schema.Literals<readonly ["added", "removed", "modified", "renamed", "copied", "changed", "unchanged"]>;
|
|
1837
1839
|
declare const CommitFile_base: Schema.Class<CommitFile, Schema.Struct<{
|
|
1838
1840
|
/** Repository-relative path, after any rename. */
|
|
1839
1841
|
readonly path: Schema.String;
|
|
@@ -1851,7 +1853,7 @@ declare const CommitFile_base: Schema.Class<CommitFile, Schema.Struct<{
|
|
|
1851
1853
|
*
|
|
1852
1854
|
* @public
|
|
1853
1855
|
*/
|
|
1854
|
-
declare class CommitFile extends CommitFile_base {}
|
|
1856
|
+
export declare class CommitFile extends CommitFile_base {}
|
|
1855
1857
|
declare const CommitComparison_base: Schema.Class<CommitComparison, Schema.Struct<{
|
|
1856
1858
|
/** How head relates to base. */
|
|
1857
1859
|
readonly status: Schema.Literals<readonly ["diverged", "ahead", "behind", "identical"]>;
|
|
@@ -1869,7 +1871,7 @@ declare const CommitComparison_base: Schema.Class<CommitComparison, Schema.Struc
|
|
|
1869
1871
|
*
|
|
1870
1872
|
* @public
|
|
1871
1873
|
*/
|
|
1872
|
-
declare class CommitComparison extends CommitComparison_base {}
|
|
1874
|
+
export declare class CommitComparison extends CommitComparison_base {}
|
|
1873
1875
|
/**
|
|
1874
1876
|
* Reading commits.
|
|
1875
1877
|
*
|
|
@@ -1905,7 +1907,7 @@ declare const GitHubCommit_base: Context.ServiceClass<GitHubCommit, "@effected/g
|
|
|
1905
1907
|
*
|
|
1906
1908
|
* @public
|
|
1907
1909
|
*/
|
|
1908
|
-
declare class GitHubCommit extends GitHubCommit_base {
|
|
1910
|
+
export declare class GitHubCommit extends GitHubCommit_base {
|
|
1909
1911
|
static readonly layer: Layer.Layer<GitHubCommit, never, GitHubClient>;
|
|
1910
1912
|
/** An in-memory double; unstubbed members die naming themselves. */
|
|
1911
1913
|
static readonly makeTest: (overrides?: Partial<GitHubCommitShape>) => GitHubCommitShape;
|
|
@@ -1938,7 +1940,7 @@ declare const GitHubContent_base: Context.ServiceClass<GitHubContent, "@effected
|
|
|
1938
1940
|
*
|
|
1939
1941
|
* @public
|
|
1940
1942
|
*/
|
|
1941
|
-
declare class GitHubContent extends GitHubContent_base {
|
|
1943
|
+
export declare class GitHubContent extends GitHubContent_base {
|
|
1942
1944
|
static readonly layer: Layer.Layer<GitHubContent, never, GitHubClient>;
|
|
1943
1945
|
/** An in-memory double; unstubbed members die naming themselves. */
|
|
1944
1946
|
static readonly makeTest: (overrides?: Partial<GitHubContentShape>) => GitHubContentShape;
|
|
@@ -1965,7 +1967,7 @@ declare const CommentMarker_base: Schema.Class<CommentMarker, Schema.Struct<{
|
|
|
1965
1967
|
*
|
|
1966
1968
|
* @public
|
|
1967
1969
|
*/
|
|
1968
|
-
declare class CommentMarker extends CommentMarker_base {
|
|
1970
|
+
export declare class CommentMarker extends CommentMarker_base {
|
|
1969
1971
|
/** The HTML comment appended to a body so the comment can be found again. */
|
|
1970
1972
|
get html(): string;
|
|
1971
1973
|
/** Does this body carry the marker? */
|
|
@@ -1981,7 +1983,7 @@ declare const CommentRecord_base: Schema.Class<CommentRecord, Schema.Struct<{
|
|
|
1981
1983
|
*
|
|
1982
1984
|
* @public
|
|
1983
1985
|
*/
|
|
1984
|
-
declare class CommentRecord extends CommentRecord_base {}
|
|
1986
|
+
export declare class CommentRecord extends CommentRecord_base {}
|
|
1985
1987
|
/**
|
|
1986
1988
|
* Sticky comments on a pull request or issue.
|
|
1987
1989
|
*
|
|
@@ -2017,7 +2019,7 @@ declare const PullRequestComment_base: Context.ServiceClass<PullRequestComment,
|
|
|
2017
2019
|
*
|
|
2018
2020
|
* @public
|
|
2019
2021
|
*/
|
|
2020
|
-
declare class PullRequestComment extends PullRequestComment_base {
|
|
2022
|
+
export declare class PullRequestComment extends PullRequestComment_base {
|
|
2021
2023
|
static readonly layer: Layer.Layer<PullRequestComment, never, GitHubClient>;
|
|
2022
2024
|
/** An in-memory double; unstubbed members die naming themselves. */
|
|
2023
2025
|
static readonly makeTest: (overrides?: Partial<PullRequestCommentShape>) => PullRequestCommentShape;
|
|
@@ -2041,7 +2043,7 @@ declare const IssueInfo_base: Schema.Class<IssueInfo, Schema.Struct<{
|
|
|
2041
2043
|
*
|
|
2042
2044
|
* @public
|
|
2043
2045
|
*/
|
|
2044
|
-
declare class IssueInfo extends IssueInfo_base {}
|
|
2046
|
+
export declare class IssueInfo extends IssueInfo_base {}
|
|
2045
2047
|
declare const LinkedIssue_base: Schema.Class<LinkedIssue, Schema.Struct<{
|
|
2046
2048
|
readonly number: Schema.Int;
|
|
2047
2049
|
readonly title: Schema.String;
|
|
@@ -2065,7 +2067,7 @@ declare const LinkedIssue_base: Schema.Class<LinkedIssue, Schema.Struct<{
|
|
|
2065
2067
|
*
|
|
2066
2068
|
* @public
|
|
2067
2069
|
*/
|
|
2068
|
-
declare class LinkedIssue extends LinkedIssue_base {}
|
|
2070
|
+
export declare class LinkedIssue extends LinkedIssue_base {}
|
|
2069
2071
|
declare const CommentOnceResult_base: Schema.Class<CommentOnceResult, Schema.Struct<{
|
|
2070
2072
|
/** Did this call post the comment (`true`), or find it already there (`false`)? */
|
|
2071
2073
|
readonly wrote: Schema.Boolean;
|
|
@@ -2082,7 +2084,7 @@ declare const CommentOnceResult_base: Schema.Class<CommentOnceResult, Schema.Str
|
|
|
2082
2084
|
*
|
|
2083
2085
|
* @public
|
|
2084
2086
|
*/
|
|
2085
|
-
declare class CommentOnceResult extends CommentOnceResult_base {}
|
|
2087
|
+
export declare class CommentOnceResult extends CommentOnceResult_base {}
|
|
2086
2088
|
/**
|
|
2087
2089
|
* Issues.
|
|
2088
2090
|
*
|
|
@@ -2150,7 +2152,7 @@ declare const GitHubIssue_base: Context.ServiceClass<GitHubIssue, "@effected/git
|
|
|
2150
2152
|
*
|
|
2151
2153
|
* @public
|
|
2152
2154
|
*/
|
|
2153
|
-
declare class GitHubIssue extends GitHubIssue_base {
|
|
2155
|
+
export declare class GitHubIssue extends GitHubIssue_base {
|
|
2154
2156
|
static readonly layer: Layer.Layer<GitHubIssue, never, GitHubClient>;
|
|
2155
2157
|
/** An in-memory double; unstubbed members die naming themselves. */
|
|
2156
2158
|
static readonly makeTest: (overrides?: Partial<GitHubIssueShape>) => GitHubIssueShape;
|
|
@@ -2176,7 +2178,7 @@ declare const ReleaseInfo_base: Schema.Class<ReleaseInfo, Schema.Struct<{
|
|
|
2176
2178
|
*
|
|
2177
2179
|
* @public
|
|
2178
2180
|
*/
|
|
2179
|
-
declare class ReleaseInfo extends ReleaseInfo_base {}
|
|
2181
|
+
export declare class ReleaseInfo extends ReleaseInfo_base {}
|
|
2180
2182
|
declare const ReleaseAsset_base: Schema.Class<ReleaseAsset, Schema.Struct<{
|
|
2181
2183
|
readonly id: Schema.Int;
|
|
2182
2184
|
readonly name: Schema.String;
|
|
@@ -2190,7 +2192,7 @@ declare const ReleaseAsset_base: Schema.Class<ReleaseAsset, Schema.Struct<{
|
|
|
2190
2192
|
*
|
|
2191
2193
|
* @public
|
|
2192
2194
|
*/
|
|
2193
|
-
declare class ReleaseAsset extends ReleaseAsset_base {}
|
|
2195
|
+
export declare class ReleaseAsset extends ReleaseAsset_base {}
|
|
2194
2196
|
/**
|
|
2195
2197
|
* Releases and their assets.
|
|
2196
2198
|
*
|
|
@@ -2249,7 +2251,7 @@ declare const GitHubRelease_base: Context.ServiceClass<GitHubRelease, "@effected
|
|
|
2249
2251
|
*
|
|
2250
2252
|
* @public
|
|
2251
2253
|
*/
|
|
2252
|
-
declare class GitHubRelease extends GitHubRelease_base {
|
|
2254
|
+
export declare class GitHubRelease extends GitHubRelease_base {
|
|
2253
2255
|
static readonly layer: Layer.Layer<GitHubRelease, never, GitHubClient>;
|
|
2254
2256
|
/** An in-memory double; unstubbed members die naming themselves. */
|
|
2255
2257
|
static readonly makeTest: (overrides?: Partial<GitHubReleaseShape>) => GitHubReleaseShape;
|
|
@@ -2277,6 +2279,59 @@ type RepositorySettings = Data<"GET /repos/{owner}/{repo}">;
|
|
|
2277
2279
|
* @public
|
|
2278
2280
|
*/
|
|
2279
2281
|
type RepositoryPatch = Omit<Params<"PATCH /repos/{owner}/{repo}">, "owner" | "repo">;
|
|
2282
|
+
/**
|
|
2283
|
+
* A {@link RepositoryPatch} under construction, where an absent field may be
|
|
2284
|
+
* spelled as an explicit `undefined`.
|
|
2285
|
+
*
|
|
2286
|
+
* @remarks
|
|
2287
|
+
* The shape you actually have when you are applying only what a user
|
|
2288
|
+
* configured. Octokit's generated params spell an optional field as
|
|
2289
|
+
* `has_issues?: boolean`, **not** `has_issues?: boolean | undefined`, so under
|
|
2290
|
+
* `exactOptionalPropertyTypes` — on in this repo and in the silk tsconfig base
|
|
2291
|
+
* — a `Partial<T>` built from your own settings schema does not assign to
|
|
2292
|
+
* `RepositoryPatch` at all. This type does, and {@link repositoryPatch} turns
|
|
2293
|
+
* it into one.
|
|
2294
|
+
*
|
|
2295
|
+
* @public
|
|
2296
|
+
*/
|
|
2297
|
+
type RepositoryPatchDraft = { readonly [K in keyof RepositoryPatch]?: RepositoryPatch[K] | undefined; };
|
|
2298
|
+
/**
|
|
2299
|
+
* A {@link RepositoryPatch} from a draft, dropping every explicitly-`undefined`
|
|
2300
|
+
* field.
|
|
2301
|
+
*
|
|
2302
|
+
* @remarks
|
|
2303
|
+
* The supported spelling for "apply only what was configured" — the natural
|
|
2304
|
+
* shape for a sync action, and the one the checker cannot follow on its own.
|
|
2305
|
+
* Without it a consumer under the recommended tsconfig is quietly pushed toward
|
|
2306
|
+
* `as`, which is a real cost in a package whose stated design property is that
|
|
2307
|
+
* the route is the key and there are no casts.
|
|
2308
|
+
*
|
|
2309
|
+
* Dropping the key rather than sending `undefined` is what the wire needs:
|
|
2310
|
+
* `PATCH` treats an absent field as "leave it alone", while an explicit `null`
|
|
2311
|
+
* or `undefined` is a value.
|
|
2312
|
+
*
|
|
2313
|
+
* A key-by-key loop still defeats TypeScript's correlation between two indexed
|
|
2314
|
+
* accesses (`draft[key] = source[key]` over a union `key`), which no helper can
|
|
2315
|
+
* fix — build the draft as a literal where you can.
|
|
2316
|
+
*
|
|
2317
|
+
* @example
|
|
2318
|
+
* ```ts
|
|
2319
|
+
* import { repositoryPatch } from "@effected/github";
|
|
2320
|
+
*
|
|
2321
|
+
* // `config.has_issues` is `boolean | undefined`; absent fields drop out.
|
|
2322
|
+
* const patch = repositoryPatch({
|
|
2323
|
+
* has_issues: config.has_issues,
|
|
2324
|
+
* has_wiki: config.has_wiki,
|
|
2325
|
+
* description: config.description,
|
|
2326
|
+
* });
|
|
2327
|
+
* ```
|
|
2328
|
+
*
|
|
2329
|
+
* @param draft - The fields to apply, any of which may be `undefined`.
|
|
2330
|
+
* @returns A patch carrying only the fields that were actually set.
|
|
2331
|
+
*
|
|
2332
|
+
* @public
|
|
2333
|
+
*/
|
|
2334
|
+
export declare const repositoryPatch: (draft: RepositoryPatchDraft) => RepositoryPatch;
|
|
2280
2335
|
/**
|
|
2281
2336
|
* Whether an account is a user or an organization.
|
|
2282
2337
|
*
|
|
@@ -2292,7 +2347,7 @@ type OwnerType = "User" | "Organization";
|
|
|
2292
2347
|
*
|
|
2293
2348
|
* @public
|
|
2294
2349
|
*/
|
|
2295
|
-
declare const SECURITY_ANALYSIS_STATUS_FIELDS: ReadonlySet<string>;
|
|
2350
|
+
export declare const SECURITY_ANALYSIS_STATUS_FIELDS: ReadonlySet<string>;
|
|
2296
2351
|
/**
|
|
2297
2352
|
* Settings reachable **only** through the GraphQL `updateRepository` mutation,
|
|
2298
2353
|
* mapped from snake_case keys to camelCase GraphQL input fields.
|
|
@@ -2311,7 +2366,7 @@ declare const SECURITY_ANALYSIS_STATUS_FIELDS: ReadonlySet<string>;
|
|
|
2311
2366
|
*
|
|
2312
2367
|
* @public
|
|
2313
2368
|
*/
|
|
2314
|
-
declare const GRAPHQL_ONLY_SETTINGS: Readonly<Record<string, string>>;
|
|
2369
|
+
export declare const GRAPHQL_ONLY_SETTINGS: Readonly<Record<string, string>>;
|
|
2315
2370
|
/**
|
|
2316
2371
|
* Translate a user-facing `security_and_analysis` block into the shape
|
|
2317
2372
|
* `PATCH /repos/{owner}/{repo}` expects.
|
|
@@ -2334,7 +2389,7 @@ declare const GRAPHQL_ONLY_SETTINGS: Readonly<Record<string, string>>;
|
|
|
2334
2389
|
*
|
|
2335
2390
|
* @public
|
|
2336
2391
|
*/
|
|
2337
|
-
declare const transformSecurityAndAnalysis: (value: unknown) => Record<string, unknown> | undefined;
|
|
2392
|
+
export declare const transformSecurityAndAnalysis: (value: unknown) => Record<string, unknown> | undefined;
|
|
2338
2393
|
/**
|
|
2339
2394
|
* What {@link GitHubRepositoryShape.applySettings} actually sent.
|
|
2340
2395
|
*
|
|
@@ -2426,7 +2481,7 @@ declare const GitHubRepository_base: Context.ServiceClass<GitHubRepository, "@ef
|
|
|
2426
2481
|
*
|
|
2427
2482
|
* @public
|
|
2428
2483
|
*/
|
|
2429
|
-
declare class GitHubRepository extends GitHubRepository_base {
|
|
2484
|
+
export declare class GitHubRepository extends GitHubRepository_base {
|
|
2430
2485
|
static readonly layer: Layer.Layer<GitHubRepository, never, GitHubClient>;
|
|
2431
2486
|
/** An in-memory double; unstubbed members die naming themselves. */
|
|
2432
2487
|
static readonly makeTest: (overrides?: Partial<GitHubRepositoryShape>) => GitHubRepositoryShape;
|
|
@@ -2446,7 +2501,7 @@ declare const TagRef_base: Schema.Class<TagRef, Schema.Struct<{
|
|
|
2446
2501
|
*
|
|
2447
2502
|
* @public
|
|
2448
2503
|
*/
|
|
2449
|
-
declare class TagRef extends TagRef_base {}
|
|
2504
|
+
export declare class TagRef extends TagRef_base {}
|
|
2450
2505
|
declare const SemverTag_base: Schema.Class<SemverTag, Schema.Struct<{
|
|
2451
2506
|
/** The tag name as GitHub has it. */
|
|
2452
2507
|
readonly tag: Schema.NonEmptyString;
|
|
@@ -2460,7 +2515,7 @@ declare const SemverTag_base: Schema.Class<SemverTag, Schema.Struct<{
|
|
|
2460
2515
|
*
|
|
2461
2516
|
* @public
|
|
2462
2517
|
*/
|
|
2463
|
-
declare class SemverTag extends SemverTag_base {}
|
|
2518
|
+
export declare class SemverTag extends SemverTag_base {}
|
|
2464
2519
|
/**
|
|
2465
2520
|
* Read a version out of a tag name.
|
|
2466
2521
|
*
|
|
@@ -2474,7 +2529,7 @@ declare class SemverTag extends SemverTag_base {}
|
|
|
2474
2529
|
*/
|
|
2475
2530
|
type VersionFromTag = (tag: string) => Option.Option<string>;
|
|
2476
2531
|
/** The default {@link VersionFromTag}. @public */
|
|
2477
|
-
declare const versionFromTag: VersionFromTag;
|
|
2532
|
+
export declare const versionFromTag: VersionFromTag;
|
|
2478
2533
|
/**
|
|
2479
2534
|
* How to pick the newest version-shaped tag.
|
|
2480
2535
|
*
|
|
@@ -2542,7 +2597,7 @@ declare const GitTag_base: Context.ServiceClass<GitTag, "@effected/github/GitTag
|
|
|
2542
2597
|
*
|
|
2543
2598
|
* @public
|
|
2544
2599
|
*/
|
|
2545
|
-
declare class GitTag extends GitTag_base {
|
|
2600
|
+
export declare class GitTag extends GitTag_base {
|
|
2546
2601
|
static readonly layer: Layer.Layer<GitTag, never, GitHubClient>;
|
|
2547
2602
|
/** An in-memory double; unstubbed members die naming themselves. */
|
|
2548
2603
|
static readonly makeTest: (overrides?: Partial<GitTagShape>) => GitTagShape;
|
|
@@ -2552,7 +2607,7 @@ declare class GitTag extends GitTag_base {
|
|
|
2552
2607
|
//#endregion
|
|
2553
2608
|
//#region src/PullRequest.d.ts
|
|
2554
2609
|
/** How a pull request is merged. @public */
|
|
2555
|
-
declare const MergeMethod: Schema.Literals<readonly ["merge", "squash", "rebase"]>;
|
|
2610
|
+
export declare const MergeMethod: Schema.Literals<readonly ["merge", "squash", "rebase"]>;
|
|
2556
2611
|
declare const PullRequestInfo_base: Schema.Class<PullRequestInfo, Schema.Struct<{
|
|
2557
2612
|
/** The number in `#123`. */
|
|
2558
2613
|
readonly number: Schema.Int;
|
|
@@ -2601,7 +2656,7 @@ declare const PullRequestInfo_base: Schema.Class<PullRequestInfo, Schema.Struct<
|
|
|
2601
2656
|
*
|
|
2602
2657
|
* @public
|
|
2603
2658
|
*/
|
|
2604
|
-
declare class PullRequestInfo extends PullRequestInfo_base {}
|
|
2659
|
+
export declare class PullRequestInfo extends PullRequestInfo_base {}
|
|
2605
2660
|
/** What {@link PullRequestShape.upsert} did. @public */
|
|
2606
2661
|
interface UpsertedPullRequest {
|
|
2607
2662
|
readonly pullRequest: PullRequestInfo;
|
|
@@ -2713,7 +2768,7 @@ declare const PullRequest_base: Context.ServiceClass<PullRequest, "@effected/git
|
|
|
2713
2768
|
*
|
|
2714
2769
|
* @public
|
|
2715
2770
|
*/
|
|
2716
|
-
declare class PullRequest extends PullRequest_base {
|
|
2771
|
+
export declare class PullRequest extends PullRequest_base {
|
|
2717
2772
|
static readonly layer: Layer.Layer<PullRequest, never, GitHubClient>;
|
|
2718
2773
|
/** An in-memory double; unstubbed members die naming themselves. */
|
|
2719
2774
|
static readonly makeTest: (overrides?: Partial<PullRequestShape>) => PullRequestShape;
|
|
@@ -2785,7 +2840,7 @@ declare const RepositorySecret_base: Context.ServiceClass<RepositorySecret, "@ef
|
|
|
2785
2840
|
*
|
|
2786
2841
|
* @public
|
|
2787
2842
|
*/
|
|
2788
|
-
declare class RepositorySecret extends RepositorySecret_base {
|
|
2843
|
+
export declare class RepositorySecret extends RepositorySecret_base {
|
|
2789
2844
|
/**
|
|
2790
2845
|
* @remarks
|
|
2791
2846
|
* `(client) => make(client)` rather than `make`: a static initializer runs
|
|
@@ -2846,7 +2901,7 @@ declare const RepositorySecurity_base: Context.ServiceClass<RepositorySecurity,
|
|
|
2846
2901
|
*
|
|
2847
2902
|
* @public
|
|
2848
2903
|
*/
|
|
2849
|
-
declare class RepositorySecurity extends RepositorySecurity_base {
|
|
2904
|
+
export declare class RepositorySecurity extends RepositorySecurity_base {
|
|
2850
2905
|
/**
|
|
2851
2906
|
* @remarks
|
|
2852
2907
|
* `(client) => make(client)` rather than `make`: a static initializer runs
|
|
@@ -2934,7 +2989,7 @@ declare const RepositoryVariable_base: Context.ServiceClass<RepositoryVariable,
|
|
|
2934
2989
|
*
|
|
2935
2990
|
* @public
|
|
2936
2991
|
*/
|
|
2937
|
-
declare class RepositoryVariable extends RepositoryVariable_base {
|
|
2992
|
+
export declare class RepositoryVariable extends RepositoryVariable_base {
|
|
2938
2993
|
/**
|
|
2939
2994
|
* @remarks
|
|
2940
2995
|
* `(client) => make(client)` rather than `make`: a static initializer runs
|
|
@@ -3036,7 +3091,7 @@ declare const Ruleset_base: Context.ServiceClass<Ruleset, "@effected/github/Rule
|
|
|
3036
3091
|
*
|
|
3037
3092
|
* @public
|
|
3038
3093
|
*/
|
|
3039
|
-
declare class Ruleset extends Ruleset_base {
|
|
3094
|
+
export declare class Ruleset extends Ruleset_base {
|
|
3040
3095
|
/**
|
|
3041
3096
|
* @remarks
|
|
3042
3097
|
* `(client) => make(client)` rather than `make`: a static initializer runs
|
|
@@ -3056,9 +3111,9 @@ declare class Ruleset extends Ruleset_base {
|
|
|
3056
3111
|
*
|
|
3057
3112
|
* @public
|
|
3058
3113
|
*/
|
|
3059
|
-
declare const PermissionLevel: Schema.Literals<readonly ["read", "write", "admin"]>;
|
|
3114
|
+
export declare const PermissionLevel: Schema.Literals<readonly ["read", "write", "admin"]>;
|
|
3060
3115
|
/** How much access a permission grants. @public */
|
|
3061
|
-
type PermissionLevel = (typeof PermissionLevel.literals)[number];
|
|
3116
|
+
export type PermissionLevel = (typeof PermissionLevel.literals)[number];
|
|
3062
3117
|
declare const PermissionGap_base: Schema.Class<PermissionGap, Schema.Struct<{
|
|
3063
3118
|
/** The permission's name, e.g. `"contents"`. */
|
|
3064
3119
|
readonly permission: Schema.String;
|
|
@@ -3072,7 +3127,7 @@ declare const PermissionGap_base: Schema.Class<PermissionGap, Schema.Struct<{
|
|
|
3072
3127
|
*
|
|
3073
3128
|
* @public
|
|
3074
3129
|
*/
|
|
3075
|
-
declare class PermissionGap extends PermissionGap_base {}
|
|
3130
|
+
export declare class PermissionGap extends PermissionGap_base {}
|
|
3076
3131
|
declare const ExtraPermission_base: Schema.Class<ExtraPermission, Schema.Struct<{
|
|
3077
3132
|
readonly permission: Schema.String;
|
|
3078
3133
|
readonly granted: Schema.Literals<readonly ["read", "write", "admin"]>;
|
|
@@ -3084,7 +3139,7 @@ declare const ExtraPermission_base: Schema.Class<ExtraPermission, Schema.Struct<
|
|
|
3084
3139
|
*
|
|
3085
3140
|
* @public
|
|
3086
3141
|
*/
|
|
3087
|
-
declare class ExtraPermission extends ExtraPermission_base {}
|
|
3142
|
+
export declare class ExtraPermission extends ExtraPermission_base {}
|
|
3088
3143
|
declare const PermissionResult_base: Schema.Class<PermissionResult, Schema.Struct<{
|
|
3089
3144
|
/** Permissions that are missing or too weak. */
|
|
3090
3145
|
readonly missing: Schema.$Array<typeof PermissionGap>;
|
|
@@ -3096,7 +3151,7 @@ declare const PermissionResult_base: Schema.Class<PermissionResult, Schema.Struc
|
|
|
3096
3151
|
*
|
|
3097
3152
|
* @public
|
|
3098
3153
|
*/
|
|
3099
|
-
declare class PermissionResult extends PermissionResult_base {
|
|
3154
|
+
export declare class PermissionResult extends PermissionResult_base {
|
|
3100
3155
|
/** Nothing missing. */
|
|
3101
3156
|
get satisfied(): boolean;
|
|
3102
3157
|
/** Nothing missing and nothing spare. */
|
|
@@ -3113,7 +3168,7 @@ declare const TokenPermissionError_base: Schema.Class<TokenPermissionError, Sche
|
|
|
3113
3168
|
*
|
|
3114
3169
|
* @public
|
|
3115
3170
|
*/
|
|
3116
|
-
declare class TokenPermissionError extends TokenPermissionError_base {
|
|
3171
|
+
export declare class TokenPermissionError extends TokenPermissionError_base {
|
|
3117
3172
|
get message(): string;
|
|
3118
3173
|
}
|
|
3119
3174
|
declare const TokenPermissions_base: Schema.Class<TokenPermissions, Schema.Struct<{
|
|
@@ -3151,7 +3206,7 @@ declare const TokenPermissions_base: Schema.Class<TokenPermissions, Schema.Struc
|
|
|
3151
3206
|
*
|
|
3152
3207
|
* @public
|
|
3153
3208
|
*/
|
|
3154
|
-
declare class TokenPermissions extends TokenPermissions_base {
|
|
3209
|
+
export declare class TokenPermissions extends TokenPermissions_base {
|
|
3155
3210
|
/**
|
|
3156
3211
|
* Read GitHub's permission map, ignoring anything unrecognized.
|
|
3157
3212
|
*
|
|
@@ -3189,7 +3244,7 @@ declare const WorkflowRunStatus_base: Schema.Class<WorkflowRunStatus, Schema.Str
|
|
|
3189
3244
|
*
|
|
3190
3245
|
* @public
|
|
3191
3246
|
*/
|
|
3192
|
-
declare class WorkflowRunStatus extends WorkflowRunStatus_base {
|
|
3247
|
+
export declare class WorkflowRunStatus extends WorkflowRunStatus_base {
|
|
3193
3248
|
/** Has the run finished, whatever the outcome? */
|
|
3194
3249
|
get isDone(): boolean;
|
|
3195
3250
|
}
|
|
@@ -3271,7 +3326,7 @@ declare const WorkflowDispatch_base: Context.ServiceClass<WorkflowDispatch, "@ef
|
|
|
3271
3326
|
*
|
|
3272
3327
|
* @public
|
|
3273
3328
|
*/
|
|
3274
|
-
declare class WorkflowDispatch extends WorkflowDispatch_base {
|
|
3329
|
+
export declare class WorkflowDispatch extends WorkflowDispatch_base {
|
|
3275
3330
|
static readonly layer: Layer.Layer<WorkflowDispatch, never, GitHubClient>;
|
|
3276
3331
|
/** An in-memory double; unstubbed members die naming themselves. */
|
|
3277
3332
|
static readonly makeTest: (overrides?: Partial<WorkflowDispatchShape>) => WorkflowDispatchShape;
|
|
@@ -3279,5 +3334,5 @@ declare class WorkflowDispatch extends WorkflowDispatch_base {
|
|
|
3279
3334
|
static readonly layerTest: (overrides?: Partial<WorkflowDispatchShape>) => Layer.Layer<WorkflowDispatch>;
|
|
3280
3335
|
}
|
|
3281
3336
|
//#endregion
|
|
3282
|
-
export {
|
|
3337
|
+
export { type AppCredentials, type AppliedSettings, type ArtifactMetadataShape, type AttestationShape, type BareLineReference, type BranchOutcome, CLOSING_KEYWORDS, type CheckRunShape, type ClosingKeyword, type CodeScanningSetup, type CodeScanningShape, type ConcludeCheckRun, type DeploymentEnvironmentInfo, type DeploymentEnvironmentShape, type GitBranchShape, type GitCommitShape, type GitHubAppOptions, type GitHubAppShape, type GitHubClientOptions, type GitHubClientShape, type GitHubCommitShape, type GitHubContentShape, type GitHubFixtures, type GitHubIssueShape, type GitHubReleaseShape, type GitHubRepositoryShape, type GitTagShape, type IssueReference, type LatestSemverOptions, type OwnerType, type PollOptions, type PullRequestCommentShape, type PullRequestShape, type RecordedCall, type RepositoryPatch, type RepositoryPatchDraft, type RepositorySecretShape, type RepositorySecurityShape, type RepositorySettings, type RepositoryVariableShape, type Data as RestData, type RequestExtras as RestExtras, type Item as RestItem, type PaginatingRoute as RestPaginatingRoute, type Params as RestParams, type Response as RestResponse, type Route as RestRoute, type RetryableFailure, type RulesetInfo, type RulesetPayload, type RulesetShape, type SecretInfo, type SecretScope, type TokenRequest, type UpsertedPullRequest, type VariableInfo, type VersionFromTag, type WorkflowDispatchShape, type WorkflowInfo, harvestIssueReferences, parseBareLineReference };
|
|
3283
3338
|
//# sourceMappingURL=index.d.ts.map
|
package/index.js
CHANGED
|
@@ -16,7 +16,7 @@ import { GitHubContent } from "./GitHubContent.js";
|
|
|
16
16
|
import { CommentMarker, CommentRecord, PullRequestComment } from "./PullRequestComment.js";
|
|
17
17
|
import { CommentOnceResult, GitHubIssue, IssueInfo, LinkedIssue } from "./GitHubIssue.js";
|
|
18
18
|
import { GitHubRelease, ReleaseAsset, ReleaseInfo } from "./GitHubRelease.js";
|
|
19
|
-
import { GRAPHQL_ONLY_SETTINGS, GitHubRepository, SECURITY_ANALYSIS_STATUS_FIELDS, transformSecurityAndAnalysis } from "./GitHubRepository.js";
|
|
19
|
+
import { GRAPHQL_ONLY_SETTINGS, GitHubRepository, SECURITY_ANALYSIS_STATUS_FIELDS, repositoryPatch, transformSecurityAndAnalysis } from "./GitHubRepository.js";
|
|
20
20
|
import { GitTag, SemverTag, TagRef, versionFromTag } from "./GitTag.js";
|
|
21
21
|
import { PageOptions } from "./Rest.js";
|
|
22
22
|
import { MergeMethod, PullRequest, PullRequestInfo } from "./PullRequest.js";
|
|
@@ -28,4 +28,4 @@ import { ExtraPermission, PermissionGap, PermissionLevel, PermissionResult, Toke
|
|
|
28
28
|
import { WorkflowDispatch, WorkflowRunStatus } from "./WorkflowDispatch.js";
|
|
29
29
|
import { CLOSING_KEYWORDS, harvestIssueReferences, parseBareLineReference } from "@effected/github-references";
|
|
30
30
|
|
|
31
|
-
export { Annotation, AnnotationLevel, AppIdentity, ArtifactMetadata, Attestation, AttestationListEntry, AttestationRecord, BotIdentity, CLOSING_KEYWORDS, CheckConclusion, CheckRun, CheckRunOutput, CheckRunRef, CodeScanning, CommentMarker, CommentOnceResult, CommentRecord, CommitComparison, CommitFile, CommitRef, CommitSummary, DeploymentEnvironment, ExtraPermission, FileChange, FileContent, FileDeletion, FileMode, FileStatus, GRAPHQL_ONLY_SETTINGS, GitBranch, GitCommit, GitHubApp, GitHubAppError, GitHubClient, GitHubCommit, GitHubContent, GitHubError, GitHubErrorKind, GitHubGraphQLError, GitHubIssue, GitHubRelease, GitHubRepository, GitTag, GraphQLDocument, GraphQLErrorEntry, Installation, InstallationToken, InvalidRepoRefError, IssueInfo, LinkedIssue, MergeMethod, PageOptions, PermissionGap, PermissionLevel, PermissionResult, PullRequest, PullRequestComment, PullRequestInfo, RateLimitSnapshot, ReleaseAsset, ReleaseInfo, Repo, RepoRef, RepositorySecret, RepositorySecurity, RepositoryVariable, RetryPolicy, Ruleset, SECURITY_ANALYSIS_STATUS_FIELDS, SemverTag, StorageRecordInput, TagRef, TokenPermissionError, TokenPermissions, WorkflowDispatch, WorkflowRunStatus, harvestIssueReferences, parseBareLineReference, transformSecurityAndAnalysis, versionFromTag };
|
|
31
|
+
export { Annotation, AnnotationLevel, AppIdentity, ArtifactMetadata, Attestation, AttestationListEntry, AttestationRecord, BotIdentity, CLOSING_KEYWORDS, CheckConclusion, CheckRun, CheckRunOutput, CheckRunRef, CodeScanning, CommentMarker, CommentOnceResult, CommentRecord, CommitComparison, CommitFile, CommitRef, CommitSummary, DeploymentEnvironment, ExtraPermission, FileChange, FileContent, FileDeletion, FileMode, FileStatus, GRAPHQL_ONLY_SETTINGS, GitBranch, GitCommit, GitHubApp, GitHubAppError, GitHubClient, GitHubCommit, GitHubContent, GitHubError, GitHubErrorKind, GitHubGraphQLError, GitHubIssue, GitHubRelease, GitHubRepository, GitTag, GraphQLDocument, GraphQLErrorEntry, Installation, InstallationToken, InvalidRepoRefError, IssueInfo, LinkedIssue, MergeMethod, PageOptions, PermissionGap, PermissionLevel, PermissionResult, PullRequest, PullRequestComment, PullRequestInfo, RateLimitSnapshot, ReleaseAsset, ReleaseInfo, Repo, RepoRef, RepositorySecret, RepositorySecurity, RepositoryVariable, RetryPolicy, Ruleset, SECURITY_ANALYSIS_STATUS_FIELDS, SemverTag, StorageRecordInput, TagRef, TokenPermissionError, TokenPermissions, WorkflowDispatch, WorkflowRunStatus, harvestIssueReferences, parseBareLineReference, repositoryPatch, transformSecurityAndAnalysis, versionFromTag };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@effected/github",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.9.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "Typed GitHub REST and GraphQL services over the octokit core request surface, with app auth and resource helpers.",
|
|
6
6
|
"keywords": [
|
|
@@ -38,8 +38,8 @@
|
|
|
38
38
|
"./package.json": "./package.json"
|
|
39
39
|
},
|
|
40
40
|
"dependencies": {
|
|
41
|
-
"@effected/github-references": "^0.
|
|
42
|
-
"@effected/semver": "^0.
|
|
41
|
+
"@effected/github-references": "^0.2.0",
|
|
42
|
+
"@effected/semver": "^0.6.0",
|
|
43
43
|
"@octokit/core": "^7.0.6",
|
|
44
44
|
"@octokit/plugin-paginate-rest": "^15.0.0",
|
|
45
45
|
"@octokit/types": "^17.0.0",
|
|
@@ -48,7 +48,7 @@
|
|
|
48
48
|
"universal-github-app-jwt": "^2.2.2"
|
|
49
49
|
},
|
|
50
50
|
"peerDependencies": {
|
|
51
|
-
"effect": "4.0.0-rc.
|
|
51
|
+
"effect": "4.0.0-rc.112"
|
|
52
52
|
},
|
|
53
53
|
"engines": {
|
|
54
54
|
"node": ">=24.11.0"
|