@computis/effect-github 0.0.0-stage → 0.1.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/CHANGELOG.md +7 -0
- package/LICENSE +23 -0
- package/README.md +79 -2
- package/dist/action-client.d.ts +38 -0
- package/dist/action-client.d.ts.map +1 -0
- package/dist/action-client.js +96 -0
- package/dist/action-client.js.map +1 -0
- package/dist/action-context.d.ts +51 -0
- package/dist/action-context.d.ts.map +1 -0
- package/dist/action-context.js +61 -0
- package/dist/action-context.js.map +1 -0
- package/dist/action-runner.d.ts +57 -0
- package/dist/action-runner.d.ts.map +1 -0
- package/dist/action-runner.js +100 -0
- package/dist/action-runner.js.map +1 -0
- package/dist/action-summary.d.ts +45 -0
- package/dist/action-summary.d.ts.map +1 -0
- package/dist/action-summary.js +92 -0
- package/dist/action-summary.js.map +1 -0
- package/dist/action.d.ts +16 -0
- package/dist/action.d.ts.map +1 -0
- package/dist/action.js +37 -0
- package/dist/action.js.map +1 -0
- package/dist/errors/action-api-error.d.ts +13 -0
- package/dist/errors/action-api-error.d.ts.map +1 -0
- package/dist/errors/action-api-error.js +17 -0
- package/dist/errors/action-api-error.js.map +1 -0
- package/dist/errors/action-context-error.d.ts +16 -0
- package/dist/errors/action-context-error.d.ts.map +1 -0
- package/dist/errors/action-context-error.js +16 -0
- package/dist/errors/action-context-error.js.map +1 -0
- package/dist/errors/action-failed.d.ts +10 -0
- package/dist/errors/action-failed.d.ts.map +1 -0
- package/dist/errors/action-failed.js +10 -0
- package/dist/errors/action-failed.js.map +1 -0
- package/dist/errors/action-failure.d.ts +15 -0
- package/dist/errors/action-failure.d.ts.map +1 -0
- package/dist/errors/action-failure.js +15 -0
- package/dist/errors/action-failure.js.map +1 -0
- package/dist/errors/action-input-error.d.ts +17 -0
- package/dist/errors/action-input-error.d.ts.map +1 -0
- package/dist/errors/action-input-error.js +22 -0
- package/dist/errors/action-input-error.js.map +1 -0
- package/dist/errors/action-oidc-error.d.ts +15 -0
- package/dist/errors/action-oidc-error.d.ts.map +1 -0
- package/dist/errors/action-oidc-error.js +18 -0
- package/dist/errors/action-oidc-error.js.map +1 -0
- package/dist/errors/action-summary-error.d.ts +15 -0
- package/dist/errors/action-summary-error.d.ts.map +1 -0
- package/dist/errors/action-summary-error.js +18 -0
- package/dist/errors/action-summary-error.js.map +1 -0
- package/dist/errors/input-validation-failure.d.ts +19 -0
- package/dist/errors/input-validation-failure.d.ts.map +1 -0
- package/dist/errors/input-validation-failure.js +19 -0
- package/dist/errors/input-validation-failure.js.map +1 -0
- package/dist/errors/platform-missing.d.ts +9 -0
- package/dist/errors/platform-missing.d.ts.map +1 -0
- package/dist/errors/platform-missing.js +9 -0
- package/dist/errors/platform-missing.js.map +1 -0
- package/dist/input.d.ts +14 -0
- package/dist/input.d.ts.map +1 -0
- package/dist/input.js +30 -0
- package/dist/input.js.map +1 -0
- package/dist/object.d.ts +2 -0
- package/dist/object.d.ts.map +1 -0
- package/dist/object.js +2 -0
- package/dist/object.js.map +1 -0
- package/dist/testing/action-client-test.d.ts +7 -0
- package/dist/testing/action-client-test.d.ts.map +1 -0
- package/dist/testing/action-client-test.js +10 -0
- package/dist/testing/action-client-test.js.map +1 -0
- package/dist/testing/action-context-test.d.ts +10 -0
- package/dist/testing/action-context-test.d.ts.map +1 -0
- package/dist/testing/action-context-test.js +27 -0
- package/dist/testing/action-context-test.js.map +1 -0
- package/dist/testing/action-runner-test.d.ts +26 -0
- package/dist/testing/action-runner-test.d.ts.map +1 -0
- package/dist/testing/action-runner-test.js +92 -0
- package/dist/testing/action-runner-test.js.map +1 -0
- package/dist/testing/action-summary-test.d.ts +11 -0
- package/dist/testing/action-summary-test.d.ts.map +1 -0
- package/dist/testing/action-summary-test.js +62 -0
- package/dist/testing/action-summary-test.js.map +1 -0
- package/dist/thrown-message.d.ts +2 -0
- package/dist/thrown-message.d.ts.map +1 -0
- package/dist/thrown-message.js +7 -0
- package/dist/thrown-message.js.map +1 -0
- package/package.json +64 -3
- package/src/action-client.ts +238 -0
- package/src/action-context.ts +121 -0
- package/src/action-runner.ts +221 -0
- package/src/action-summary.ts +143 -0
- package/src/action.ts +81 -0
- package/src/errors/action-api-error.ts +18 -0
- package/src/errors/action-context-error.ts +20 -0
- package/src/errors/action-failed.ts +10 -0
- package/src/errors/action-failure.ts +36 -0
- package/src/errors/action-input-error.ts +24 -0
- package/src/errors/action-oidc-error.ts +19 -0
- package/src/errors/action-summary-error.ts +22 -0
- package/src/errors/input-validation-failure.ts +23 -0
- package/src/errors/platform-missing.ts +9 -0
- package/src/input.ts +60 -0
- package/src/object.ts +4 -0
- package/src/testing/action-client-test.ts +15 -0
- package/src/testing/action-context-test.ts +36 -0
- package/src/testing/action-runner-test.ts +138 -0
- package/src/testing/action-summary-test.ts +82 -0
- package/src/thrown-message.ts +9 -0
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { Context, Effect, Layer } from "effect";
|
|
2
|
+
import { ActionSummaryError } from "./errors/action-summary-error.ts";
|
|
3
|
+
export interface SummaryTableCell {
|
|
4
|
+
readonly data: string;
|
|
5
|
+
readonly header?: boolean;
|
|
6
|
+
readonly colspan?: number;
|
|
7
|
+
readonly rowspan?: number;
|
|
8
|
+
}
|
|
9
|
+
export interface SummaryImageOptions {
|
|
10
|
+
readonly width?: string;
|
|
11
|
+
readonly height?: string;
|
|
12
|
+
}
|
|
13
|
+
export type HeadingLevel = 1 | 2 | 3 | 4 | 5 | 6;
|
|
14
|
+
export interface ActionSummaryApi {
|
|
15
|
+
readonly addRaw: (text: string, addEOL?: boolean) => ActionSummaryApi;
|
|
16
|
+
readonly addEOL: () => ActionSummaryApi;
|
|
17
|
+
readonly addHeading: (text: string, level?: HeadingLevel) => ActionSummaryApi;
|
|
18
|
+
readonly addCodeBlock: (code: string, lang?: string) => ActionSummaryApi;
|
|
19
|
+
readonly addList: (items: readonly string[], ordered?: boolean) => ActionSummaryApi;
|
|
20
|
+
readonly addTable: (rows: readonly (readonly SummaryTableCell[])[]) => ActionSummaryApi;
|
|
21
|
+
readonly addDetails: (label: string, content: string) => ActionSummaryApi;
|
|
22
|
+
readonly addImage: (src: string, alt: string, options?: SummaryImageOptions) => ActionSummaryApi;
|
|
23
|
+
readonly addLink: (text: string, href: string) => ActionSummaryApi;
|
|
24
|
+
readonly addSeparator: () => ActionSummaryApi;
|
|
25
|
+
readonly addBreak: () => ActionSummaryApi;
|
|
26
|
+
readonly addQuote: (text: string, cite?: string) => ActionSummaryApi;
|
|
27
|
+
readonly stringify: () => string;
|
|
28
|
+
readonly isEmptyBuffer: () => boolean;
|
|
29
|
+
readonly emptyBuffer: () => ActionSummaryApi;
|
|
30
|
+
readonly write: (options?: {
|
|
31
|
+
readonly overwrite?: boolean;
|
|
32
|
+
}) => Effect.Effect<ActionSummaryApi, ActionSummaryError>;
|
|
33
|
+
readonly clear: () => Effect.Effect<ActionSummaryApi, ActionSummaryError>;
|
|
34
|
+
}
|
|
35
|
+
declare const ActionSummary_base: Context.ServiceClass<ActionSummary, "@computis/effect-github/ActionSummary", ActionSummaryApi>;
|
|
36
|
+
export declare class ActionSummary extends ActionSummary_base {
|
|
37
|
+
static readonly layer: Layer.Layer<ActionSummary, never, never>;
|
|
38
|
+
}
|
|
39
|
+
export declare const write: (options?: {
|
|
40
|
+
readonly overwrite?: boolean;
|
|
41
|
+
}) => Effect.Effect<ActionSummaryApi, ActionSummaryError, ActionSummary>;
|
|
42
|
+
export declare const clear: Effect.Effect<ActionSummaryApi, ActionSummaryError, ActionSummary>;
|
|
43
|
+
export declare const layer: Layer.Layer<ActionSummary, never, never>;
|
|
44
|
+
export {};
|
|
45
|
+
//# sourceMappingURL=action-summary.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"action-summary.d.ts","sourceRoot":"","sources":["../src/action-summary.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import { summary } from "@actions/core";
|
|
2
|
+
import { whenDefined } from "./object.js";
|
|
3
|
+
import { thrownMessage } from "./thrown-message.js";
|
|
4
|
+
import { Context, Effect, Layer } from "effect";
|
|
5
|
+
import { ActionSummaryError, ActionSummaryErrorReason } from "./errors/action-summary-error.js";
|
|
6
|
+
const writeFailed = (cause) => new ActionSummaryError({
|
|
7
|
+
cause,
|
|
8
|
+
description: thrownMessage(cause, "GITHUB_STEP_SUMMARY could not be written"),
|
|
9
|
+
reason: ActionSummaryErrorReason.WriteFailed,
|
|
10
|
+
});
|
|
11
|
+
export class ActionSummary extends Context.Service()("@computis/effect-github/ActionSummary") {
|
|
12
|
+
static layer = Layer.sync(ActionSummary, () => {
|
|
13
|
+
const self = {
|
|
14
|
+
addBreak: () => {
|
|
15
|
+
summary.addBreak();
|
|
16
|
+
return self;
|
|
17
|
+
},
|
|
18
|
+
addCodeBlock: (code, lang) => {
|
|
19
|
+
summary.addCodeBlock(code, lang);
|
|
20
|
+
return self;
|
|
21
|
+
},
|
|
22
|
+
addDetails: (label, content) => {
|
|
23
|
+
summary.addDetails(label, content);
|
|
24
|
+
return self;
|
|
25
|
+
},
|
|
26
|
+
addEOL: () => {
|
|
27
|
+
summary.addEOL();
|
|
28
|
+
return self;
|
|
29
|
+
},
|
|
30
|
+
addHeading: (text, level) => {
|
|
31
|
+
summary.addHeading(text, level);
|
|
32
|
+
return self;
|
|
33
|
+
},
|
|
34
|
+
addImage: (src, alt, options) => {
|
|
35
|
+
summary.addImage(src, alt, options);
|
|
36
|
+
return self;
|
|
37
|
+
},
|
|
38
|
+
addLink: (text, href) => {
|
|
39
|
+
summary.addLink(text, href);
|
|
40
|
+
return self;
|
|
41
|
+
},
|
|
42
|
+
addList: (items, ordered) => {
|
|
43
|
+
summary.addList([...items], ordered);
|
|
44
|
+
return self;
|
|
45
|
+
},
|
|
46
|
+
addQuote: (text, cite) => {
|
|
47
|
+
summary.addQuote(text, cite);
|
|
48
|
+
return self;
|
|
49
|
+
},
|
|
50
|
+
addRaw: (text, addEOL) => {
|
|
51
|
+
summary.addRaw(text, addEOL);
|
|
52
|
+
return self;
|
|
53
|
+
},
|
|
54
|
+
addSeparator: () => {
|
|
55
|
+
summary.addSeparator();
|
|
56
|
+
return self;
|
|
57
|
+
},
|
|
58
|
+
addTable: (rows) => {
|
|
59
|
+
summary.addTable(rows.map((row) => row.map((cell) => ({
|
|
60
|
+
data: cell.data,
|
|
61
|
+
...whenDefined(cell.header, (header) => ({ header })),
|
|
62
|
+
...whenDefined(cell.colspan, (colspan) => ({ colspan: String(colspan) })),
|
|
63
|
+
...whenDefined(cell.rowspan, (rowspan) => ({ rowspan: String(rowspan) })),
|
|
64
|
+
}))));
|
|
65
|
+
return self;
|
|
66
|
+
},
|
|
67
|
+
clear: Effect.fn("ActionSummary.clear")(function* clear() {
|
|
68
|
+
yield* Effect.tryPromise({ catch: writeFailed, try: async () => await summary.clear() });
|
|
69
|
+
return self;
|
|
70
|
+
}),
|
|
71
|
+
emptyBuffer: () => {
|
|
72
|
+
summary.emptyBuffer();
|
|
73
|
+
return self;
|
|
74
|
+
},
|
|
75
|
+
isEmptyBuffer: () => summary.isEmptyBuffer(),
|
|
76
|
+
stringify: () => summary.stringify(),
|
|
77
|
+
write: Effect.fn("ActionSummary.write")(function* write(options) {
|
|
78
|
+
yield* Effect.tryPromise({
|
|
79
|
+
catch: writeFailed,
|
|
80
|
+
try: async () => await summary.write(options),
|
|
81
|
+
});
|
|
82
|
+
return self;
|
|
83
|
+
}),
|
|
84
|
+
};
|
|
85
|
+
return self;
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
const jobSummary = Effect.service(ActionSummary);
|
|
89
|
+
export const write = (options) => jobSummary.pipe(Effect.flatMap((service) => service.write(options)));
|
|
90
|
+
export const clear = jobSummary.pipe(Effect.flatMap((service) => service.clear()));
|
|
91
|
+
export const { layer } = ActionSummary;
|
|
92
|
+
//# sourceMappingURL=action-summary.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"action-summary.js","sourceRoot":"","sources":["../src/action-summary.ts"],"names":[],"mappings":"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"}
|
package/dist/action.d.ts
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { Effect, Layer, ManagedRuntime } from "effect";
|
|
2
|
+
import type { Redacted } from "effect";
|
|
3
|
+
import { ActionClient } from "./action-client.ts";
|
|
4
|
+
import { ActionContext } from "./action-context.ts";
|
|
5
|
+
import { ActionRunner } from "./action-runner.ts";
|
|
6
|
+
import { ActionSummary } from "./action-summary.ts";
|
|
7
|
+
export type ActionRequirements = ActionRunner | ActionContext | ActionClient | ActionSummary;
|
|
8
|
+
export declare const layer: (token: Redacted.Redacted) => Layer.Layer<ActionRequirements>;
|
|
9
|
+
export declare const layerConfig: Layer.Layer<ActionClient | ActionContext | ActionRunner | ActionSummary, import("effect/Config").ConfigError, never>;
|
|
10
|
+
export declare const runMain: <A, E>(effect: Effect.Effect<A, E, ActionRequirements>, options?: {
|
|
11
|
+
readonly disableErrorReporting?: boolean;
|
|
12
|
+
readonly disablePrettyLogger?: boolean;
|
|
13
|
+
readonly token?: Redacted.Redacted;
|
|
14
|
+
}) => void;
|
|
15
|
+
export declare const makeRuntime: (token: Redacted.Redacted) => ManagedRuntime.ManagedRuntime<ActionRequirements, never>;
|
|
16
|
+
//# sourceMappingURL=action.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"action.d.ts","sourceRoot":"","sources":["../src/action.ts"],"names":[],"mappings":"AAEA,OAAO,EAAS,MAAM,EAAE,KAAK,EAAU,cAAc,EAAU,MAAM,QAAQ,CAAC;AAC9E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAIpD,MAAM,MAAM,kBAAkB,GAAG,YAAY,GAAG,aAAa,GAAG,YAAY,GAAG,aAAa,CAAC;AAE7F,eAAO,MAAM,KAAK,UAAW,QAAQ,CAAC,QAAQ,KAAG,KAAK,CAAC,KAAK,CAAC,kBAAkB,CAM5E,CAAC;AAEJ,eAAO,MAAM,WAAW,sHAKvB,CAAC;AAEF,eAAO,MAAM,OAAO,GAAI,CAAC,EAAE,CAAC,UAClB,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,kBAAkB,CAAC,YACtC;IACP,QAAQ,CAAC,qBAAqB,CAAC,EAAE,OAAO,CAAC;IACzC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IACvC,QAAQ,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,QAAQ,CAAC;CACpC,SA4CF,CAAC;AAEF,eAAO,MAAM,WAAW,UAAW,QAAQ,CAAC,QAAQ,6DAAsC,CAAC"}
|
package/dist/action.js
ADDED
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { setFailed } from "@actions/core";
|
|
2
|
+
import { thrownMessage } from "./thrown-message.js";
|
|
3
|
+
import { Cause, Effect, Layer, Logger, ManagedRuntime, Option } from "effect";
|
|
4
|
+
import { ActionClient } from "./action-client.js";
|
|
5
|
+
import { ActionContext } from "./action-context.js";
|
|
6
|
+
import { ActionRunner } from "./action-runner.js";
|
|
7
|
+
import { ActionSummary } from "./action-summary.js";
|
|
8
|
+
import { isActionFailure } from "./errors/action-failure.js";
|
|
9
|
+
import { PlatformMissing } from "./errors/platform-missing.js";
|
|
10
|
+
export const layer = (token) => Layer.mergeAll(ActionRunner.layer, ActionContext.layer, ActionClient.layer(token), ActionSummary.layer);
|
|
11
|
+
export const layerConfig = Layer.mergeAll(ActionRunner.layer, ActionContext.layer, ActionClient.layerConfig, ActionSummary.layer);
|
|
12
|
+
export const runMain = (effect, options = {}) => {
|
|
13
|
+
const program = effect.pipe(Effect.provide(options.token === undefined ? layerConfig : layer(options.token)), Effect.tapCause(Effect.fn("Action.reportFailure")(function* reportFailure(cause) {
|
|
14
|
+
if (Cause.hasInterruptsOnly(cause)) {
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
17
|
+
if (options.disableErrorReporting !== true) {
|
|
18
|
+
yield* Effect.logError(cause);
|
|
19
|
+
}
|
|
20
|
+
setFailed(Option.match(Cause.findErrorOption(cause), {
|
|
21
|
+
onNone: () => Cause.pretty(cause),
|
|
22
|
+
onSome: (error) => isActionFailure(error)
|
|
23
|
+
? error.displayMessage
|
|
24
|
+
: thrownMessage(error, Cause.pretty(cause)),
|
|
25
|
+
}));
|
|
26
|
+
})), Effect.provide(options.disablePrettyLogger === true ? Layer.empty : Logger.layer([Logger.consolePretty()])));
|
|
27
|
+
Effect.runFork(Effect.tryPromise({
|
|
28
|
+
catch: () => new PlatformMissing({ platform: "@effect/platform-node" }),
|
|
29
|
+
try: async () => await import("@effect/platform-node/NodeRuntime"),
|
|
30
|
+
}).pipe(Effect.flatMap((NodeRuntime) => Effect.sync(() => {
|
|
31
|
+
NodeRuntime.runMain(program, { disableErrorReporting: true });
|
|
32
|
+
})), Effect.catchTag("PlatformMissing", (missing) => Effect.sync(() => {
|
|
33
|
+
setFailed(missing.message);
|
|
34
|
+
}))));
|
|
35
|
+
};
|
|
36
|
+
export const makeRuntime = (token) => ManagedRuntime.make(layer(token));
|
|
37
|
+
//# sourceMappingURL=action.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"action.js","sourceRoot":"","sources":["../src/action.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { Schema } from "effect";
|
|
2
|
+
declare const ActionApiError_base: Schema.Class<ActionApiError, Schema.TaggedStruct<"ActionApiError", {
|
|
3
|
+
readonly cause: Schema.optionalKey<Schema.Defect>;
|
|
4
|
+
readonly description: Schema.optionalKey<Schema.String>;
|
|
5
|
+
readonly method: Schema.String;
|
|
6
|
+
readonly status: Schema.optionalKey<Schema.Number>;
|
|
7
|
+
}>, import("effect/Cause").YieldableError>;
|
|
8
|
+
export declare class ActionApiError extends ActionApiError_base {
|
|
9
|
+
get message(): string;
|
|
10
|
+
get isRateLimited(): boolean;
|
|
11
|
+
}
|
|
12
|
+
export {};
|
|
13
|
+
//# sourceMappingURL=action-api-error.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"action-api-error.d.ts","sourceRoot":"","sources":["../../src/errors/action-api-error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;;;;;;;AAEhC,qBAAa,cAAe,SAAQ,mBAKlC;IACA,IAAa,OAAO,WAInB;IAED,IAAI,aAAa,YAEhB;CACF"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { Schema } from "effect";
|
|
2
|
+
export class ActionApiError extends Schema.TaggedError()("ActionApiError", {
|
|
3
|
+
cause: Schema.optionalKey(Schema.Defect()),
|
|
4
|
+
description: Schema.optionalKey(Schema.String),
|
|
5
|
+
method: Schema.String,
|
|
6
|
+
status: Schema.optionalKey(Schema.Number),
|
|
7
|
+
}) {
|
|
8
|
+
get message() {
|
|
9
|
+
const status = this.status === undefined ? "" : ` (${this.status})`;
|
|
10
|
+
const description = this.description === undefined ? "" : ` - ${this.description}`;
|
|
11
|
+
return `GitHub API error${status}: ${this.method}${description}`;
|
|
12
|
+
}
|
|
13
|
+
get isRateLimited() {
|
|
14
|
+
return this.status === 403 || this.status === 429;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=action-api-error.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"action-api-error.js","sourceRoot":"","sources":["../../src/errors/action-api-error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,MAAM,OAAO,cAAe,SAAQ,MAAM,CAAC,WAAW,EAAkB,CAAC,gBAAgB,EAAE;IACzF,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;IAC1C,WAAW,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC;IAC9C,MAAM,EAAE,MAAM,CAAC,MAAM;IACrB,MAAM,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC;CAC1C,CAAC;IACA,IAAa,OAAO;QAClB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,MAAM,GAAG,CAAC;QACpE,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QACnF,OAAO,mBAAmB,MAAM,KAAK,IAAI,CAAC,MAAM,GAAG,WAAW,EAAE,CAAC;IACnE,CAAC;IAED,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC,MAAM,KAAK,GAAG,CAAC;IACpD,CAAC;CACF"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { Schema } from "effect";
|
|
2
|
+
export declare const ActionContextErrorReason: {
|
|
3
|
+
readonly InvalidPayload: "InvalidPayload";
|
|
4
|
+
readonly InvalidRepo: "InvalidRepo";
|
|
5
|
+
readonly MissingEnv: "MissingEnv";
|
|
6
|
+
};
|
|
7
|
+
declare const ActionContextError_base: Schema.Class<ActionContextError, Schema.TaggedStruct<"ActionContextError", {
|
|
8
|
+
readonly cause: Schema.optionalKey<Schema.Defect>;
|
|
9
|
+
readonly description: Schema.optionalKey<Schema.String>;
|
|
10
|
+
readonly reason: Schema.Literals<("InvalidPayload" | "InvalidRepo" | "MissingEnv")[]>;
|
|
11
|
+
}>, import("effect/Cause").YieldableError>;
|
|
12
|
+
export declare class ActionContextError extends ActionContextError_base {
|
|
13
|
+
get message(): string;
|
|
14
|
+
}
|
|
15
|
+
export {};
|
|
16
|
+
//# sourceMappingURL=action-context-error.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"action-context-error.d.ts","sourceRoot":"","sources":["../../src/errors/action-context-error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,eAAO,MAAM,wBAAwB;aACnC,cAAc,EAAE,gBAAgB;aAChC,WAAW,EAAE,aAAa;aAC1B,UAAU,EAAE,YAAY;CAChB,CAAC;;;;;;AAEX,qBAAa,kBAAmB,SAAQ,uBAOvC;IACC,IAAa,OAAO,WAEnB;CACF"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { Schema } from "effect";
|
|
2
|
+
export const ActionContextErrorReason = {
|
|
3
|
+
InvalidPayload: "InvalidPayload",
|
|
4
|
+
InvalidRepo: "InvalidRepo",
|
|
5
|
+
MissingEnv: "MissingEnv",
|
|
6
|
+
};
|
|
7
|
+
export class ActionContextError extends Schema.TaggedError()("ActionContextError", {
|
|
8
|
+
cause: Schema.optionalKey(Schema.Defect()),
|
|
9
|
+
description: Schema.optionalKey(Schema.String),
|
|
10
|
+
reason: Schema.Literals(Object.values(ActionContextErrorReason)),
|
|
11
|
+
}) {
|
|
12
|
+
get message() {
|
|
13
|
+
return this.description ?? `Context error: ${this.reason}`;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=action-context-error.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"action-context-error.js","sourceRoot":"","sources":["../../src/errors/action-context-error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC,cAAc,EAAE,gBAAgB;IAChC,WAAW,EAAE,aAAa;IAC1B,UAAU,EAAE,YAAY;CAChB,CAAC;AAEX,MAAM,OAAO,kBAAmB,SAAQ,MAAM,CAAC,WAAW,EAAsB,CAC9E,oBAAoB,EACpB;IACE,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;IAC1C,WAAW,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC;IAC9C,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,wBAAwB,CAAC,CAAC;CACjE,CACF;IACC,IAAa,OAAO;QAClB,OAAO,IAAI,CAAC,WAAW,IAAI,kBAAkB,IAAI,CAAC,MAAM,EAAE,CAAC;IAC7D,CAAC;CACF"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Schema } from "effect";
|
|
2
|
+
declare const ActionFailed_base: Schema.Class<ActionFailed, Schema.TaggedStruct<"ActionFailed", {
|
|
3
|
+
readonly cause: Schema.optionalKey<Schema.Defect>;
|
|
4
|
+
readonly message: Schema.String;
|
|
5
|
+
}>, import("effect/Cause").YieldableError>;
|
|
6
|
+
export declare class ActionFailed extends ActionFailed_base {
|
|
7
|
+
get displayMessage(): string;
|
|
8
|
+
}
|
|
9
|
+
export {};
|
|
10
|
+
//# sourceMappingURL=action-failed.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"action-failed.d.ts","sourceRoot":"","sources":["../../src/errors/action-failed.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;;;;;AAEhC,qBAAa,YAAa,SAAQ,iBAGhC;IACA,IAAI,cAAc,WAEjB;CACF"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Schema } from "effect";
|
|
2
|
+
export class ActionFailed extends Schema.TaggedError()("ActionFailed", {
|
|
3
|
+
cause: Schema.optionalKey(Schema.Defect()),
|
|
4
|
+
message: Schema.String,
|
|
5
|
+
}) {
|
|
6
|
+
get displayMessage() {
|
|
7
|
+
return this.message;
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=action-failed.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"action-failed.js","sourceRoot":"","sources":["../../src/errors/action-failed.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,MAAM,OAAO,YAAa,SAAQ,MAAM,CAAC,WAAW,EAAgB,CAAC,cAAc,EAAE;IACnF,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;IAC1C,OAAO,EAAE,MAAM,CAAC,MAAM;CACvB,CAAC;IACA,IAAI,cAAc;QAChB,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;CACF"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { ActionApiError } from "./action-api-error.ts";
|
|
2
|
+
import { ActionContextError } from "./action-context-error.ts";
|
|
3
|
+
import { ActionFailed } from "./action-failed.ts";
|
|
4
|
+
import { ActionInputError } from "./action-input-error.ts";
|
|
5
|
+
import { ActionOIDCError } from "./action-oidc-error.ts";
|
|
6
|
+
import { ActionSummaryError } from "./action-summary-error.ts";
|
|
7
|
+
import { InputValidationFailure } from "./input-validation-failure.ts";
|
|
8
|
+
export type ActionFailure = InputValidationFailure | ActionFailed;
|
|
9
|
+
type NarrowedMember<Member, Target> = Member extends Target ? Member : [Extract<Target, Member>] extends [never] ? Member & Target : Extract<Target, Member>;
|
|
10
|
+
export type Narrowed<E, Target> = E extends unknown ? NarrowedMember<E, Target> : never;
|
|
11
|
+
export declare const isActionFailure: <E>(error: E) => error is Narrowed<E, ActionFailure>;
|
|
12
|
+
export type ActionError = ActionInputError | ActionContextError | ActionApiError | ActionOIDCError | ActionSummaryError | ActionFailure;
|
|
13
|
+
export declare const isActionError: <E>(error: E) => error is Narrowed<E, ActionError>;
|
|
14
|
+
export {};
|
|
15
|
+
//# sourceMappingURL=action-failure.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"action-failure.d.ts","sourceRoot":"","sources":["../../src/errors/action-failure.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAEvE,MAAM,MAAM,aAAa,GAAG,sBAAsB,GAAG,YAAY,CAAC;AAElE,KAAK,cAAc,CAAC,MAAM,EAAE,MAAM,IAAI,MAAM,SAAS,MAAM,GACvD,MAAM,GACN,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GACvC,MAAM,GAAG,MAAM,GACf,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAE9B,MAAM,MAAM,QAAQ,CAAC,CAAC,EAAE,MAAM,IAAI,CAAC,SAAS,OAAO,GAAG,cAAc,CAAC,CAAC,EAAE,MAAM,CAAC,GAAG,KAAK,CAAC;AAExF,eAAO,MAAM,eAAe,GAAI,CAAC,SAAS,CAAC,KAAG,KAAK,IAAI,QAAQ,CAAC,CAAC,EAAE,aAAa,CACN,CAAC;AAE3E,MAAM,MAAM,WAAW,GACnB,gBAAgB,GAChB,kBAAkB,GAClB,cAAc,GACd,eAAe,GACf,kBAAkB,GAClB,aAAa,CAAC;AAElB,eAAO,MAAM,aAAa,GAAI,CAAC,SAAS,CAAC,KAAG,KAAK,IAAI,QAAQ,CAAC,CAAC,EAAE,WAAW,CAMvC,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { ActionApiError } from "./action-api-error.js";
|
|
2
|
+
import { ActionContextError } from "./action-context-error.js";
|
|
3
|
+
import { ActionFailed } from "./action-failed.js";
|
|
4
|
+
import { ActionInputError } from "./action-input-error.js";
|
|
5
|
+
import { ActionOIDCError } from "./action-oidc-error.js";
|
|
6
|
+
import { ActionSummaryError } from "./action-summary-error.js";
|
|
7
|
+
import { InputValidationFailure } from "./input-validation-failure.js";
|
|
8
|
+
export const isActionFailure = (error) => error instanceof InputValidationFailure || error instanceof ActionFailed;
|
|
9
|
+
export const isActionError = (error) => isActionFailure(error) ||
|
|
10
|
+
error instanceof ActionInputError ||
|
|
11
|
+
error instanceof ActionContextError ||
|
|
12
|
+
error instanceof ActionApiError ||
|
|
13
|
+
error instanceof ActionOIDCError ||
|
|
14
|
+
error instanceof ActionSummaryError;
|
|
15
|
+
//# sourceMappingURL=action-failure.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"action-failure.js","sourceRoot":"","sources":["../../src/errors/action-failure.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAYvE,MAAM,CAAC,MAAM,eAAe,GAAG,CAAI,KAAQ,EAAuC,EAAE,CAClF,KAAK,YAAY,sBAAsB,IAAI,KAAK,YAAY,YAAY,CAAC;AAU3E,MAAM,CAAC,MAAM,aAAa,GAAG,CAAI,KAAQ,EAAqC,EAAE,CAC9E,eAAe,CAAC,KAAK,CAAC;IACtB,KAAK,YAAY,gBAAgB;IACjC,KAAK,YAAY,kBAAkB;IACnC,KAAK,YAAY,cAAc;IAC/B,KAAK,YAAY,eAAe;IAChC,KAAK,YAAY,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { Schema } from "effect";
|
|
2
|
+
export declare const ActionInputErrorReason: {
|
|
3
|
+
readonly InvalidType: "InvalidType";
|
|
4
|
+
readonly Missing: "Missing";
|
|
5
|
+
readonly ParseError: "ParseError";
|
|
6
|
+
};
|
|
7
|
+
declare const ActionInputError_base: Schema.Class<ActionInputError, Schema.TaggedStruct<"ActionInputError", {
|
|
8
|
+
readonly cause: Schema.optionalKey<Schema.Defect>;
|
|
9
|
+
readonly name: Schema.String;
|
|
10
|
+
readonly reason: Schema.Literals<("InvalidType" | "Missing" | "ParseError")[]>;
|
|
11
|
+
readonly value: Schema.optionalKey<Schema.Unknown>;
|
|
12
|
+
}>, import("effect/Cause").YieldableError>;
|
|
13
|
+
export declare class ActionInputError extends ActionInputError_base {
|
|
14
|
+
get message(): string;
|
|
15
|
+
}
|
|
16
|
+
export {};
|
|
17
|
+
//# sourceMappingURL=action-input-error.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"action-input-error.d.ts","sourceRoot":"","sources":["../../src/errors/action-input-error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,eAAO,MAAM,sBAAsB;aACjC,WAAW,EAAE,aAAa;aAC1B,OAAO,EAAE,SAAS;aAClB,UAAU,EAAE,YAAY;CAChB,CAAC;;;;;;;AAQX,qBAAa,gBAAiB,SAAQ,qBAKpC;IACA,IAAa,OAAO,WAEnB;CACF"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Schema } from "effect";
|
|
2
|
+
export const ActionInputErrorReason = {
|
|
3
|
+
InvalidType: "InvalidType",
|
|
4
|
+
Missing: "Missing",
|
|
5
|
+
ParseError: "ParseError",
|
|
6
|
+
};
|
|
7
|
+
const messages = {
|
|
8
|
+
[ActionInputErrorReason.InvalidType]: (name) => `Input "${name}" has invalid type`,
|
|
9
|
+
[ActionInputErrorReason.Missing]: (name) => `Input required and not supplied: ${name}`,
|
|
10
|
+
[ActionInputErrorReason.ParseError]: (name) => `Failed to parse input "${name}"`,
|
|
11
|
+
};
|
|
12
|
+
export class ActionInputError extends Schema.TaggedError()("ActionInputError", {
|
|
13
|
+
cause: Schema.optionalKey(Schema.Defect()),
|
|
14
|
+
name: Schema.String,
|
|
15
|
+
reason: Schema.Literals(Object.values(ActionInputErrorReason)),
|
|
16
|
+
value: Schema.optionalKey(Schema.Unknown),
|
|
17
|
+
}) {
|
|
18
|
+
get message() {
|
|
19
|
+
return messages[this.reason](this.name);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=action-input-error.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"action-input-error.js","sourceRoot":"","sources":["../../src/errors/action-input-error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,WAAW,EAAE,aAAa;IAC1B,OAAO,EAAE,SAAS;IAClB,UAAU,EAAE,YAAY;CAChB,CAAC;AAEX,MAAM,QAAQ,GAAG;IACf,CAAC,sBAAsB,CAAC,WAAW,CAAC,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,UAAU,IAAI,oBAAoB;IAC1F,CAAC,sBAAsB,CAAC,OAAO,CAAC,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,oCAAoC,IAAI,EAAE;IAC9F,CAAC,sBAAsB,CAAC,UAAU,CAAC,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,0BAA0B,IAAI,GAAG;CACzF,CAAC;AAEF,MAAM,OAAO,gBAAiB,SAAQ,MAAM,CAAC,WAAW,EAAoB,CAAC,kBAAkB,EAAE;IAC/F,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;IAC1C,IAAI,EAAE,MAAM,CAAC,MAAM;IACnB,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC;IAC9D,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC;CAC1C,CAAC;IACA,IAAa,OAAO;QAClB,OAAO,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1C,CAAC;CACF"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Schema } from "effect";
|
|
2
|
+
export declare const ActionOIDCErrorReason: {
|
|
3
|
+
readonly NotAvailable: "NotAvailable";
|
|
4
|
+
readonly RequestFailed: "RequestFailed";
|
|
5
|
+
};
|
|
6
|
+
declare const ActionOIDCError_base: Schema.Class<ActionOIDCError, Schema.TaggedStruct<"ActionOIDCError", {
|
|
7
|
+
readonly cause: Schema.optionalKey<Schema.Defect>;
|
|
8
|
+
readonly description: Schema.optionalKey<Schema.String>;
|
|
9
|
+
readonly reason: Schema.Literals<("NotAvailable" | "RequestFailed")[]>;
|
|
10
|
+
}>, import("effect/Cause").YieldableError>;
|
|
11
|
+
export declare class ActionOIDCError extends ActionOIDCError_base {
|
|
12
|
+
get message(): string;
|
|
13
|
+
}
|
|
14
|
+
export {};
|
|
15
|
+
//# sourceMappingURL=action-oidc-error.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"action-oidc-error.d.ts","sourceRoot":"","sources":["../../src/errors/action-oidc-error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,eAAO,MAAM,qBAAqB;aAChC,YAAY,EAAE,cAAc;aAC5B,aAAa,EAAE,eAAe;CACtB,CAAC;;;;;;AAEX,qBAAa,eAAgB,SAAQ,oBAInC;IACA,IAAa,OAAO,WAKnB;CACF"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Schema } from "effect";
|
|
2
|
+
export const ActionOIDCErrorReason = {
|
|
3
|
+
NotAvailable: "NotAvailable",
|
|
4
|
+
RequestFailed: "RequestFailed",
|
|
5
|
+
};
|
|
6
|
+
export class ActionOIDCError extends Schema.TaggedError()("ActionOIDCError", {
|
|
7
|
+
cause: Schema.optionalKey(Schema.Defect()),
|
|
8
|
+
description: Schema.optionalKey(Schema.String),
|
|
9
|
+
reason: Schema.Literals(Object.values(ActionOIDCErrorReason)),
|
|
10
|
+
}) {
|
|
11
|
+
get message() {
|
|
12
|
+
if (this.reason === ActionOIDCErrorReason.NotAvailable) {
|
|
13
|
+
return "OIDC token is not available in this environment";
|
|
14
|
+
}
|
|
15
|
+
return `OIDC token request failed${this.description === undefined ? "" : `: ${this.description}`}`;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=action-oidc-error.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"action-oidc-error.js","sourceRoot":"","sources":["../../src/errors/action-oidc-error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,YAAY,EAAE,cAAc;IAC5B,aAAa,EAAE,eAAe;CACtB,CAAC;AAEX,MAAM,OAAO,eAAgB,SAAQ,MAAM,CAAC,WAAW,EAAmB,CAAC,iBAAiB,EAAE;IAC5F,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;IAC1C,WAAW,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC;IAC9C,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;CAC9D,CAAC;IACA,IAAa,OAAO;QAClB,IAAI,IAAI,CAAC,MAAM,KAAK,qBAAqB,CAAC,YAAY,EAAE,CAAC;YACvD,OAAO,iDAAiD,CAAC;QAC3D,CAAC;QACD,OAAO,4BAA4B,IAAI,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;IACrG,CAAC;CACF"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Schema } from "effect";
|
|
2
|
+
export declare const ActionSummaryErrorReason: {
|
|
3
|
+
readonly NotAvailable: "NotAvailable";
|
|
4
|
+
readonly WriteFailed: "WriteFailed";
|
|
5
|
+
};
|
|
6
|
+
declare const ActionSummaryError_base: Schema.Class<ActionSummaryError, Schema.TaggedStruct<"ActionSummaryError", {
|
|
7
|
+
readonly cause: Schema.optionalKey<Schema.Defect>;
|
|
8
|
+
readonly description: Schema.optionalKey<Schema.String>;
|
|
9
|
+
readonly reason: Schema.Literals<("NotAvailable" | "WriteFailed")[]>;
|
|
10
|
+
}>, import("effect/Cause").YieldableError>;
|
|
11
|
+
export declare class ActionSummaryError extends ActionSummaryError_base {
|
|
12
|
+
get message(): string;
|
|
13
|
+
}
|
|
14
|
+
export {};
|
|
15
|
+
//# sourceMappingURL=action-summary-error.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"action-summary-error.d.ts","sourceRoot":"","sources":["../../src/errors/action-summary-error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,eAAO,MAAM,wBAAwB;aACnC,YAAY,EAAE,cAAc;aAC5B,WAAW,EAAE,aAAa;CAClB,CAAC;;;;;;AAEX,qBAAa,kBAAmB,SAAQ,uBAOvC;IACC,IAAa,OAAO,WAKnB;CACF"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Schema } from "effect";
|
|
2
|
+
export const ActionSummaryErrorReason = {
|
|
3
|
+
NotAvailable: "NotAvailable",
|
|
4
|
+
WriteFailed: "WriteFailed",
|
|
5
|
+
};
|
|
6
|
+
export class ActionSummaryError extends Schema.TaggedError()("ActionSummaryError", {
|
|
7
|
+
cause: Schema.optionalKey(Schema.Defect()),
|
|
8
|
+
description: Schema.optionalKey(Schema.String),
|
|
9
|
+
reason: Schema.Literals(Object.values(ActionSummaryErrorReason)),
|
|
10
|
+
}) {
|
|
11
|
+
get message() {
|
|
12
|
+
if (this.reason === ActionSummaryErrorReason.NotAvailable) {
|
|
13
|
+
return "Job summary is not available in this environment";
|
|
14
|
+
}
|
|
15
|
+
return `Failed to write job summary${this.description === undefined ? "" : `: ${this.description}`}`;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=action-summary-error.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"action-summary-error.js","sourceRoot":"","sources":["../../src/errors/action-summary-error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC,YAAY,EAAE,cAAc;IAC5B,WAAW,EAAE,aAAa;CAClB,CAAC;AAEX,MAAM,OAAO,kBAAmB,SAAQ,MAAM,CAAC,WAAW,EAAsB,CAC9E,oBAAoB,EACpB;IACE,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;IAC1C,WAAW,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC;IAC9C,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,wBAAwB,CAAC,CAAC;CACjE,CACF;IACC,IAAa,OAAO;QAClB,IAAI,IAAI,CAAC,MAAM,KAAK,wBAAwB,CAAC,YAAY,EAAE,CAAC;YAC1D,OAAO,kDAAkD,CAAC;QAC5D,CAAC;QACD,OAAO,8BAA8B,IAAI,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;IACvG,CAAC;CACF"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { Schema } from "effect";
|
|
2
|
+
export declare const InputValidationFailureReason: {
|
|
3
|
+
readonly InvalidJson: "InvalidJson";
|
|
4
|
+
readonly InvalidType: "InvalidType";
|
|
5
|
+
readonly MissingRequired: "MissingRequired";
|
|
6
|
+
readonly SchemaValidation: "SchemaValidation";
|
|
7
|
+
};
|
|
8
|
+
declare const InputValidationFailure_base: Schema.Class<InputValidationFailure, Schema.TaggedStruct<"InputValidationFailure", {
|
|
9
|
+
readonly cause: Schema.optionalKey<Schema.Defect>;
|
|
10
|
+
readonly input: Schema.String;
|
|
11
|
+
readonly message: Schema.String;
|
|
12
|
+
readonly reason: Schema.Literals<("InvalidJson" | "InvalidType" | "MissingRequired" | "SchemaValidation")[]>;
|
|
13
|
+
readonly value: Schema.String;
|
|
14
|
+
}>, import("effect/Cause").YieldableError>;
|
|
15
|
+
export declare class InputValidationFailure extends InputValidationFailure_base {
|
|
16
|
+
get displayMessage(): string;
|
|
17
|
+
}
|
|
18
|
+
export {};
|
|
19
|
+
//# sourceMappingURL=input-validation-failure.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"input-validation-failure.d.ts","sourceRoot":"","sources":["../../src/errors/input-validation-failure.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,eAAO,MAAM,4BAA4B;aACvC,WAAW,EAAE,aAAa;aAC1B,WAAW,EAAE,aAAa;aAC1B,eAAe,EAAE,iBAAiB;aAClC,gBAAgB,EAAE,kBAAkB;CAC5B,CAAC;;;;;;;;AAEX,qBAAa,sBAAuB,SAAQ,2BAS3C;IACC,IAAI,cAAc,WAEjB;CACF"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { Schema } from "effect";
|
|
2
|
+
export const InputValidationFailureReason = {
|
|
3
|
+
InvalidJson: "InvalidJson",
|
|
4
|
+
InvalidType: "InvalidType",
|
|
5
|
+
MissingRequired: "MissingRequired",
|
|
6
|
+
SchemaValidation: "SchemaValidation",
|
|
7
|
+
};
|
|
8
|
+
export class InputValidationFailure extends Schema.TaggedError()("InputValidationFailure", {
|
|
9
|
+
cause: Schema.optionalKey(Schema.Defect()),
|
|
10
|
+
input: Schema.String,
|
|
11
|
+
message: Schema.String,
|
|
12
|
+
reason: Schema.Literals(Object.values(InputValidationFailureReason)),
|
|
13
|
+
value: Schema.String,
|
|
14
|
+
}) {
|
|
15
|
+
get displayMessage() {
|
|
16
|
+
return `Input '${this.input}' is invalid: ${this.message}`;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=input-validation-failure.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"input-validation-failure.js","sourceRoot":"","sources":["../../src/errors/input-validation-failure.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,MAAM,CAAC,MAAM,4BAA4B,GAAG;IAC1C,WAAW,EAAE,aAAa;IAC1B,WAAW,EAAE,aAAa;IAC1B,eAAe,EAAE,iBAAiB;IAClC,gBAAgB,EAAE,kBAAkB;CAC5B,CAAC;AAEX,MAAM,OAAO,sBAAuB,SAAQ,MAAM,CAAC,WAAW,EAA0B,CACtF,wBAAwB,EACxB;IACE,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;IAC1C,KAAK,EAAE,MAAM,CAAC,MAAM;IACpB,OAAO,EAAE,MAAM,CAAC,MAAM;IACtB,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,4BAA4B,CAAC,CAAC;IACpE,KAAK,EAAE,MAAM,CAAC,MAAM;CACrB,CACF;IACC,IAAI,cAAc;QAChB,OAAO,UAAU,IAAI,CAAC,KAAK,iBAAiB,IAAI,CAAC,OAAO,EAAE,CAAC;IAC7D,CAAC;CACF"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Schema } from "effect";
|
|
2
|
+
declare const PlatformMissing_base: Schema.Class<PlatformMissing, Schema.TaggedStruct<"PlatformMissing", {
|
|
3
|
+
readonly platform: Schema.String;
|
|
4
|
+
}>, import("effect/Cause").YieldableError>;
|
|
5
|
+
export declare class PlatformMissing extends PlatformMissing_base {
|
|
6
|
+
get message(): string;
|
|
7
|
+
}
|
|
8
|
+
export {};
|
|
9
|
+
//# sourceMappingURL=platform-missing.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"platform-missing.d.ts","sourceRoot":"","sources":["../../src/errors/platform-missing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;;;;AAEhC,qBAAa,eAAgB,SAAQ,oBAEnC;IACA,IAAa,OAAO,WAEnB;CACF"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Schema } from "effect";
|
|
2
|
+
export class PlatformMissing extends Schema.TaggedError()("PlatformMissing", {
|
|
3
|
+
platform: Schema.String,
|
|
4
|
+
}) {
|
|
5
|
+
get message() {
|
|
6
|
+
return `runMain runs on an Effect platform package: install ${this.platform} next to @computis/effect-github.`;
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=platform-missing.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"platform-missing.js","sourceRoot":"","sources":["../../src/errors/platform-missing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,MAAM,OAAO,eAAgB,SAAQ,MAAM,CAAC,WAAW,EAAmB,CAAC,iBAAiB,EAAE;IAC5F,QAAQ,EAAE,MAAM,CAAC,MAAM;CACxB,CAAC;IACA,IAAa,OAAO;QAClB,OAAO,uDAAuD,IAAI,CAAC,QAAQ,mCAAmC,CAAC;IACjH,CAAC;CACF"}
|
package/dist/input.d.ts
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Effect, Schema } from "effect";
|
|
2
|
+
import { ActionRunner } from "./action-runner.ts";
|
|
3
|
+
import { InputValidationFailure } from "./errors/input-validation-failure.ts";
|
|
4
|
+
export declare const YamlBoolean: Schema.Codec<boolean, string>;
|
|
5
|
+
export declare const raw: (name: string) => Effect.Effect<string, never, ActionRunner>;
|
|
6
|
+
export declare const parse: <S extends Schema.Top>(name: string, schema: S) => Effect.Effect<S["Type"], InputValidationFailure, ActionRunner | S["DecodingServices"]>;
|
|
7
|
+
export declare const string: (name: string) => Effect.Effect<string, InputValidationFailure, ActionRunner>;
|
|
8
|
+
export declare const nonEmptyString: (name: string) => Effect.Effect<string, InputValidationFailure, ActionRunner>;
|
|
9
|
+
export declare const integer: (name: string) => Effect.Effect<number, InputValidationFailure, ActionRunner>;
|
|
10
|
+
export declare const number: (name: string) => Effect.Effect<number, InputValidationFailure, ActionRunner>;
|
|
11
|
+
export declare const boolean: (name: string) => Effect.Effect<boolean, InputValidationFailure, ActionRunner>;
|
|
12
|
+
export declare const secret: (name: string) => Effect.Effect<import("effect/Redacted").Redacted<string>, InputValidationFailure, ActionRunner>;
|
|
13
|
+
export declare const json: <S extends Schema.Top>(name: string, schema: S) => Effect.Effect<S["Type"], InputValidationFailure, ActionRunner | S["DecodingServices"]>;
|
|
14
|
+
//# sourceMappingURL=input.d.ts.map
|