@trebired/result 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 +5 -0
- package/LICENSE +21 -0
- package/README.md +184 -0
- package/dist/index.d.ts +6 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +5 -0
- package/dist/index.js.map +1 -0
- package/dist/presets.d.ts +6 -0
- package/dist/presets.d.ts.map +1 -0
- package/dist/presets.js +156 -0
- package/dist/presets.js.map +1 -0
- package/dist/responder.d.ts +4 -0
- package/dist/responder.d.ts.map +1 -0
- package/dist/responder.js +116 -0
- package/dist/responder.js.map +1 -0
- package/dist/responder_support.d.ts +10 -0
- package/dist/responder_support.d.ts.map +1 -0
- package/dist/responder_support.js +88 -0
- package/dist/responder_support.js.map +1 -0
- package/dist/result.d.ts +23 -0
- package/dist/result.d.ts.map +1 -0
- package/dist/result.js +89 -0
- package/dist/result.js.map +1 -0
- package/dist/shared.d.ts +19 -0
- package/dist/shared.d.ts.map +1 -0
- package/dist/shared.js +175 -0
- package/dist/shared.js.map +1 -0
- package/dist/src/index.d.ts +6 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.js +5 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/presets.d.ts +6 -0
- package/dist/src/presets.d.ts.map +1 -0
- package/dist/src/presets.js +156 -0
- package/dist/src/presets.js.map +1 -0
- package/dist/src/responder.d.ts +4 -0
- package/dist/src/responder.d.ts.map +1 -0
- package/dist/src/responder.js +116 -0
- package/dist/src/responder.js.map +1 -0
- package/dist/src/responder_support.d.ts +10 -0
- package/dist/src/responder_support.d.ts.map +1 -0
- package/dist/src/responder_support.js +88 -0
- package/dist/src/responder_support.js.map +1 -0
- package/dist/src/result.d.ts +23 -0
- package/dist/src/result.d.ts.map +1 -0
- package/dist/src/result.js +89 -0
- package/dist/src/result.js.map +1 -0
- package/dist/src/shared.d.ts +19 -0
- package/dist/src/shared.d.ts.map +1 -0
- package/dist/src/shared.js +175 -0
- package/dist/src/shared.js.map +1 -0
- package/dist/src/types.d.ts +105 -0
- package/dist/src/types.d.ts.map +1 -0
- package/dist/src/types.js +2 -0
- package/dist/src/types.js.map +1 -0
- package/dist/types.d.ts +105 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/package.json +71 -0
package/dist/result.d.ts
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { ResultInit, ResultLike, ResultMetadata } from "./types.js";
|
|
2
|
+
declare function ok<TData = unknown, TDetails = unknown, TMeta extends ResultMetadata = ResultMetadata>(message?: string, meta?: ResultInit<TData, TDetails, TMeta>): ResultLike<TData, TDetails, TMeta>;
|
|
3
|
+
declare function noop<TData = unknown, TDetails = unknown, TMeta extends ResultMetadata = ResultMetadata>(code?: string, message?: string, meta?: ResultInit<TData, TDetails, TMeta>): ResultLike<TData, TDetails, TMeta>;
|
|
4
|
+
declare function error<TData = unknown, TDetails = unknown, TMeta extends ResultMetadata = ResultMetadata>(status?: number, code?: string, message?: string, meta?: ResultInit<TData, TDetails, TMeta>): ResultLike<TData, TDetails, TMeta>;
|
|
5
|
+
declare function badRequest<TData = unknown, TDetails = unknown, TMeta extends ResultMetadata = ResultMetadata>(code?: string, message?: string, meta?: ResultInit<TData, TDetails, TMeta>): ResultLike<TData, TDetails, TMeta>;
|
|
6
|
+
declare function unauthorized<TData = unknown, TDetails = unknown, TMeta extends ResultMetadata = ResultMetadata>(code?: string, message?: string, meta?: ResultInit<TData, TDetails, TMeta>): ResultLike<TData, TDetails, TMeta>;
|
|
7
|
+
declare function forbidden<TData = unknown, TDetails = unknown, TMeta extends ResultMetadata = ResultMetadata>(code?: string, message?: string, meta?: ResultInit<TData, TDetails, TMeta>): ResultLike<TData, TDetails, TMeta>;
|
|
8
|
+
declare function notFound<TData = unknown, TDetails = unknown, TMeta extends ResultMetadata = ResultMetadata>(code?: string, message?: string, meta?: ResultInit<TData, TDetails, TMeta>): ResultLike<TData, TDetails, TMeta>;
|
|
9
|
+
declare function conflict<TData = unknown, TDetails = unknown, TMeta extends ResultMetadata = ResultMetadata>(code?: string, message?: string, meta?: ResultInit<TData, TDetails, TMeta>): ResultLike<TData, TDetails, TMeta>;
|
|
10
|
+
declare function internal<TData = unknown, TDetails = unknown, TMeta extends ResultMetadata = ResultMetadata>(code?: string, message?: string, meta?: ResultInit<TData, TDetails, TMeta>): ResultLike<TData, TDetails, TMeta>;
|
|
11
|
+
declare const result: {
|
|
12
|
+
readonly ok: typeof ok;
|
|
13
|
+
readonly noop: typeof noop;
|
|
14
|
+
readonly error: typeof error;
|
|
15
|
+
readonly badRequest: typeof badRequest;
|
|
16
|
+
readonly unauthorized: typeof unauthorized;
|
|
17
|
+
readonly forbidden: typeof forbidden;
|
|
18
|
+
readonly notFound: typeof notFound;
|
|
19
|
+
readonly conflict: typeof conflict;
|
|
20
|
+
readonly internal: typeof internal;
|
|
21
|
+
};
|
|
22
|
+
export { badRequest, conflict, error, forbidden, internal, noop, notFound, ok, result, unauthorized, };
|
|
23
|
+
//# sourceMappingURL=result.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"result.d.ts","sourceRoot":"","sources":["../../src/result.ts"],"names":[],"mappings":"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"}
|
package/dist/result.js
ADDED
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import { hasOwn, normalizeResultErrorCode, toResultStatus } from "./shared.js";
|
|
2
|
+
function ok(message = "Success.", meta) {
|
|
3
|
+
return createResult({
|
|
4
|
+
ok: true,
|
|
5
|
+
error: false,
|
|
6
|
+
noop: false,
|
|
7
|
+
status: 200,
|
|
8
|
+
error_code: "",
|
|
9
|
+
message,
|
|
10
|
+
meta,
|
|
11
|
+
});
|
|
12
|
+
}
|
|
13
|
+
function noop(code = "noop", message = "No changes.", meta) {
|
|
14
|
+
return createResult({
|
|
15
|
+
ok: true,
|
|
16
|
+
error: false,
|
|
17
|
+
noop: true,
|
|
18
|
+
status: 200,
|
|
19
|
+
error_code: normalizeResultErrorCode(code) || "noop",
|
|
20
|
+
message,
|
|
21
|
+
meta,
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
function error(status = 400, code = "failed", message = "Request failed.", meta) {
|
|
25
|
+
return createResult({
|
|
26
|
+
ok: false,
|
|
27
|
+
error: typeof meta?.error === "boolean" ? meta.error : true,
|
|
28
|
+
noop: false,
|
|
29
|
+
status: toResultStatus(status, 400),
|
|
30
|
+
error_code: normalizeResultErrorCode(code) || "failed",
|
|
31
|
+
message,
|
|
32
|
+
meta,
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
function badRequest(code = "bad-request", message = "Bad request.", meta) {
|
|
36
|
+
return error(400, code, message, meta);
|
|
37
|
+
}
|
|
38
|
+
function unauthorized(code = "unauthorized", message = "Unauthorized.", meta) {
|
|
39
|
+
return error(401, code, message, meta);
|
|
40
|
+
}
|
|
41
|
+
function forbidden(code = "forbidden", message = "Forbidden.", meta) {
|
|
42
|
+
return error(403, code, message, meta);
|
|
43
|
+
}
|
|
44
|
+
function notFound(code = "not-found", message = "Not found.", meta) {
|
|
45
|
+
return error(404, code, message, meta);
|
|
46
|
+
}
|
|
47
|
+
function conflict(code = "conflict", message = "Conflict.", meta) {
|
|
48
|
+
return error(409, code, message, meta);
|
|
49
|
+
}
|
|
50
|
+
function internal(code = "internal-error", message = "Internal error.", meta) {
|
|
51
|
+
return error(500, code, message, {
|
|
52
|
+
...meta,
|
|
53
|
+
error: typeof meta?.error === "boolean" ? meta.error : true,
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
const result = {
|
|
57
|
+
ok,
|
|
58
|
+
noop,
|
|
59
|
+
error,
|
|
60
|
+
badRequest,
|
|
61
|
+
unauthorized,
|
|
62
|
+
forbidden,
|
|
63
|
+
notFound,
|
|
64
|
+
conflict,
|
|
65
|
+
internal,
|
|
66
|
+
};
|
|
67
|
+
function createResult({ ok, error, noop, status, error_code, message, meta, }) {
|
|
68
|
+
const out = {
|
|
69
|
+
ok,
|
|
70
|
+
error,
|
|
71
|
+
noop,
|
|
72
|
+
status,
|
|
73
|
+
error_code,
|
|
74
|
+
message,
|
|
75
|
+
data: hasOwn(meta, "data") ? (meta?.data ?? null) : null,
|
|
76
|
+
};
|
|
77
|
+
if (hasOwn(meta, "details") && meta?.details !== undefined) {
|
|
78
|
+
out.details = meta.details;
|
|
79
|
+
}
|
|
80
|
+
if (typeof meta?.redirect === "string" && meta.redirect.length > 0) {
|
|
81
|
+
out.redirect = meta.redirect;
|
|
82
|
+
}
|
|
83
|
+
if (meta?.meta && Object.keys(meta.meta).length > 0) {
|
|
84
|
+
out.meta = meta.meta;
|
|
85
|
+
}
|
|
86
|
+
return out;
|
|
87
|
+
}
|
|
88
|
+
export { badRequest, conflict, error, forbidden, internal, noop, notFound, ok, result, unauthorized, };
|
|
89
|
+
//# sourceMappingURL=result.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"result.js","sourceRoot":"","sources":["../../src/result.ts"],"names":[],"mappings":"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"}
|
package/dist/shared.d.ts
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { ResultLevel, ResultLike, ResultMetadata } from "./types.js";
|
|
2
|
+
declare function isObject(value: unknown): value is Record<string, unknown>;
|
|
3
|
+
declare function hasOwn(value: unknown, key: string): boolean;
|
|
4
|
+
declare function toResultStatus(input: unknown, fallback: number): number;
|
|
5
|
+
declare function normalizeResultErrorCode(input: unknown): string;
|
|
6
|
+
declare function getResultLevel(resultLike: unknown): ResultLevel;
|
|
7
|
+
declare function normalizeResultLike(resultLike: ResultLike | null | undefined): ResultLike;
|
|
8
|
+
declare function mergeMetadata(...items: Array<unknown>): ResultMetadata;
|
|
9
|
+
declare function extractResultExtras(resultLike: ResultLike): ResultMetadata;
|
|
10
|
+
declare function typeHierarchy(type: string | null | undefined): string[];
|
|
11
|
+
declare function buildResultRenderModePath(basePath: string | null | undefined, level: ResultLevel): string;
|
|
12
|
+
declare function defaultResultStatus(level: ResultLevel): number;
|
|
13
|
+
declare function defaultResultTitle(level: ResultLevel, status: number): string;
|
|
14
|
+
declare function defaultResultMessage(level: ResultLevel, status: number): string;
|
|
15
|
+
declare function defaultTextFallback(level: ResultLevel, status: number, title: string): string;
|
|
16
|
+
declare function formatErrorMessage(error: unknown): string;
|
|
17
|
+
declare function isPromiseLike<T = unknown>(value: unknown): value is PromiseLike<T>;
|
|
18
|
+
export { buildResultRenderModePath, defaultResultMessage, defaultResultStatus, defaultResultTitle, defaultTextFallback, extractResultExtras, formatErrorMessage, getResultLevel, hasOwn, isObject, isPromiseLike, mergeMetadata, normalizeResultErrorCode, normalizeResultLike, toResultStatus, typeHierarchy, };
|
|
19
|
+
//# sourceMappingURL=shared.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/shared.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAetE,iBAAS,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAElE;AAED,iBAAS,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAEpD;AAED,iBAAS,cAAc,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAQhE;AAED,iBAAS,wBAAwB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAWxD;AAED,iBAAS,cAAc,CAAC,UAAU,EAAE,OAAO,GAAG,WAAW,CAMxD;AAED,iBAAS,mBAAmB,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI,GAAG,SAAS,GAAG,UAAU,CAclF;AAED,iBAAS,aAAa,CAAC,GAAG,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,cAAc,CAY/D;AAED,iBAAS,mBAAmB,CAAC,UAAU,EAAE,UAAU,GAAG,cAAc,CAYnE;AAED,iBAAS,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,EAAE,CAehE;AAED,iBAAS,yBAAyB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,KAAK,EAAE,WAAW,GAAG,MAAM,CAKlG;AAED,iBAAS,mBAAmB,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM,CAMvD;AAED,iBAAS,kBAAkB,CAAC,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CA8BtE;AAED,iBAAS,oBAAoB,CAAC,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CA8BxE;AAED,iBAAS,mBAAmB,CAAC,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAsBtF;AAED,iBAAS,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAMlD;AAED,iBAAS,aAAa,CAAC,CAAC,GAAG,OAAO,EAAE,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,WAAW,CAAC,CAAC,CAAC,CAE3E;AAED,OAAO,EACL,yBAAyB,EACzB,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EAClB,cAAc,EACd,MAAM,EACN,QAAQ,EACR,aAAa,EACb,aAAa,EACb,wBAAwB,EACxB,mBAAmB,EACnB,cAAc,EACd,aAAa,GACd,CAAC"}
|
package/dist/shared.js
ADDED
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
const RESULT_CORE_KEYS = new Set([
|
|
2
|
+
"ok",
|
|
3
|
+
"error",
|
|
4
|
+
"noop",
|
|
5
|
+
"status",
|
|
6
|
+
"error_code",
|
|
7
|
+
"message",
|
|
8
|
+
"data",
|
|
9
|
+
"details",
|
|
10
|
+
"redirect",
|
|
11
|
+
"meta",
|
|
12
|
+
]);
|
|
13
|
+
function isObject(value) {
|
|
14
|
+
return value != null && typeof value === "object" && !Array.isArray(value);
|
|
15
|
+
}
|
|
16
|
+
function hasOwn(value, key) {
|
|
17
|
+
return isObject(value) && Object.prototype.hasOwnProperty.call(value, key);
|
|
18
|
+
}
|
|
19
|
+
function toResultStatus(input, fallback) {
|
|
20
|
+
const current = Number(input);
|
|
21
|
+
if (Number.isFinite(current) && current >= 100 && current <= 599) {
|
|
22
|
+
return current;
|
|
23
|
+
}
|
|
24
|
+
return fallback;
|
|
25
|
+
}
|
|
26
|
+
function normalizeResultErrorCode(input) {
|
|
27
|
+
const current = typeof input === "string" ? input.trim().toLowerCase() : "";
|
|
28
|
+
if (!current) {
|
|
29
|
+
return "";
|
|
30
|
+
}
|
|
31
|
+
return current
|
|
32
|
+
.replace(/[^a-z0-9-]+/gu, "-")
|
|
33
|
+
.replace(/-+/gu, "-")
|
|
34
|
+
.replace(/^-+|-+$/gu, "");
|
|
35
|
+
}
|
|
36
|
+
function getResultLevel(resultLike) {
|
|
37
|
+
if (isObject(resultLike) && resultLike.ok === true) {
|
|
38
|
+
return resultLike.noop === true ? "noop" : "ok";
|
|
39
|
+
}
|
|
40
|
+
return "error";
|
|
41
|
+
}
|
|
42
|
+
function normalizeResultLike(resultLike) {
|
|
43
|
+
if (isObject(resultLike)) {
|
|
44
|
+
return resultLike;
|
|
45
|
+
}
|
|
46
|
+
return {
|
|
47
|
+
ok: false,
|
|
48
|
+
error: true,
|
|
49
|
+
noop: false,
|
|
50
|
+
status: 500,
|
|
51
|
+
error_code: "invalid-result",
|
|
52
|
+
message: "Result payload is invalid.",
|
|
53
|
+
data: null,
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
function mergeMetadata(...items) {
|
|
57
|
+
const out = {};
|
|
58
|
+
for (const item of items) {
|
|
59
|
+
if (!isObject(item)) {
|
|
60
|
+
continue;
|
|
61
|
+
}
|
|
62
|
+
Object.assign(out, item);
|
|
63
|
+
}
|
|
64
|
+
return out;
|
|
65
|
+
}
|
|
66
|
+
function extractResultExtras(resultLike) {
|
|
67
|
+
const out = {};
|
|
68
|
+
for (const [key, value] of Object.entries(resultLike)) {
|
|
69
|
+
if (RESULT_CORE_KEYS.has(key)) {
|
|
70
|
+
continue;
|
|
71
|
+
}
|
|
72
|
+
out[key] = value;
|
|
73
|
+
}
|
|
74
|
+
return out;
|
|
75
|
+
}
|
|
76
|
+
function typeHierarchy(type) {
|
|
77
|
+
const current = typeof type === "string" ? type.trim() : "";
|
|
78
|
+
if (!current) {
|
|
79
|
+
return [];
|
|
80
|
+
}
|
|
81
|
+
const parts = current.split(".").filter(Boolean);
|
|
82
|
+
const out = [];
|
|
83
|
+
for (let index = 0; index < parts.length; index += 1) {
|
|
84
|
+
out.push(parts.slice(0, index + 1).join("."));
|
|
85
|
+
}
|
|
86
|
+
return out;
|
|
87
|
+
}
|
|
88
|
+
function buildResultRenderModePath(basePath, level) {
|
|
89
|
+
const suffix = level === "ok" ? "success" : level;
|
|
90
|
+
const current = typeof basePath === "string" ? basePath.trim() : "";
|
|
91
|
+
return current ? `${current}.${suffix}` : suffix;
|
|
92
|
+
}
|
|
93
|
+
function defaultResultStatus(level) {
|
|
94
|
+
if (level === "error") {
|
|
95
|
+
return 500;
|
|
96
|
+
}
|
|
97
|
+
return 200;
|
|
98
|
+
}
|
|
99
|
+
function defaultResultTitle(level, status) {
|
|
100
|
+
if (level === "ok") {
|
|
101
|
+
return "Success";
|
|
102
|
+
}
|
|
103
|
+
if (level === "noop") {
|
|
104
|
+
return "No changes";
|
|
105
|
+
}
|
|
106
|
+
if (status === 400) {
|
|
107
|
+
return "Bad request";
|
|
108
|
+
}
|
|
109
|
+
if (status === 401) {
|
|
110
|
+
return "Unauthorized";
|
|
111
|
+
}
|
|
112
|
+
if (status === 403) {
|
|
113
|
+
return "Forbidden";
|
|
114
|
+
}
|
|
115
|
+
if (status === 404) {
|
|
116
|
+
return "Not Found";
|
|
117
|
+
}
|
|
118
|
+
if (status === 409) {
|
|
119
|
+
return "Conflict";
|
|
120
|
+
}
|
|
121
|
+
return "Oops..";
|
|
122
|
+
}
|
|
123
|
+
function defaultResultMessage(level, status) {
|
|
124
|
+
if (level === "ok") {
|
|
125
|
+
return "The request completed successfully.";
|
|
126
|
+
}
|
|
127
|
+
if (level === "noop") {
|
|
128
|
+
return "No changes were needed.";
|
|
129
|
+
}
|
|
130
|
+
if (status === 400) {
|
|
131
|
+
return "The request could not be completed.";
|
|
132
|
+
}
|
|
133
|
+
if (status === 401) {
|
|
134
|
+
return "You must sign in to continue.";
|
|
135
|
+
}
|
|
136
|
+
if (status === 403) {
|
|
137
|
+
return "You do not have access to this resource.";
|
|
138
|
+
}
|
|
139
|
+
if (status === 404) {
|
|
140
|
+
return "The requested resource does not exist.";
|
|
141
|
+
}
|
|
142
|
+
if (status === 409) {
|
|
143
|
+
return "The request conflicts with the current resource state.";
|
|
144
|
+
}
|
|
145
|
+
return "Something went wrong.";
|
|
146
|
+
}
|
|
147
|
+
function defaultTextFallback(level, status, title) {
|
|
148
|
+
if (level === "ok") {
|
|
149
|
+
return title || "Success";
|
|
150
|
+
}
|
|
151
|
+
if (level === "noop") {
|
|
152
|
+
return title || "No changes";
|
|
153
|
+
}
|
|
154
|
+
if (status === 404) {
|
|
155
|
+
return "Not Found";
|
|
156
|
+
}
|
|
157
|
+
if (status === 403) {
|
|
158
|
+
return "Forbidden";
|
|
159
|
+
}
|
|
160
|
+
if (status === 401) {
|
|
161
|
+
return "Unauthorized";
|
|
162
|
+
}
|
|
163
|
+
return title || "Internal Server Error";
|
|
164
|
+
}
|
|
165
|
+
function formatErrorMessage(error) {
|
|
166
|
+
if (error instanceof Error && error.message) {
|
|
167
|
+
return error.message;
|
|
168
|
+
}
|
|
169
|
+
return typeof error === "string" ? error : String(error);
|
|
170
|
+
}
|
|
171
|
+
function isPromiseLike(value) {
|
|
172
|
+
return typeof value === "object" && value != null && typeof value.then === "function";
|
|
173
|
+
}
|
|
174
|
+
export { buildResultRenderModePath, defaultResultMessage, defaultResultStatus, defaultResultTitle, defaultTextFallback, extractResultExtras, formatErrorMessage, getResultLevel, hasOwn, isObject, isPromiseLike, mergeMetadata, normalizeResultErrorCode, normalizeResultLike, toResultStatus, typeHierarchy, };
|
|
175
|
+
//# sourceMappingURL=shared.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/shared.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export { badRequest, conflict, error, forbidden, internal, noop, notFound, ok, result, unauthorized, } from "../result.js";
|
|
2
|
+
export { createResultResponder } from "../responder.js";
|
|
3
|
+
export { DEFAULT_RESULT_PRESETS, mergeResultPresets, resolveResultPreset, } from "../presets.js";
|
|
4
|
+
export { buildResultRenderModePath, getResultLevel, normalizeResultErrorCode, toResultStatus, } from "../shared.js";
|
|
5
|
+
export type * from "../types.js";
|
|
6
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,QAAQ,EACR,KAAK,EACL,SAAS,EACT,QAAQ,EACR,IAAI,EACJ,QAAQ,EACR,EAAE,EACF,MAAM,EACN,YAAY,GACb,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,EACL,sBAAsB,EACtB,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,UAAU,CAAC;AAClB,OAAO,EACL,yBAAyB,EACzB,cAAc,EACd,wBAAwB,EACxB,cAAc,GACf,MAAM,SAAS,CAAC;AAEjB,mBAAmB,QAAQ,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export { badRequest, conflict, error, forbidden, internal, noop, notFound, ok, result, unauthorized, } from "../result.js";
|
|
2
|
+
export { createResultResponder } from "../responder.js";
|
|
3
|
+
export { DEFAULT_RESULT_PRESETS, mergeResultPresets, resolveResultPreset, } from "../presets.js";
|
|
4
|
+
export { buildResultRenderModePath, getResultLevel, normalizeResultErrorCode, toResultStatus, } from "../shared.js";
|
|
5
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,QAAQ,EACR,KAAK,EACL,SAAS,EACT,QAAQ,EACR,IAAI,EACJ,QAAQ,EACR,EAAE,EACF,MAAM,EACN,YAAY,GACb,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,EACL,sBAAsB,EACtB,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,UAAU,CAAC;AAClB,OAAO,EACL,yBAAyB,EACzB,cAAc,EACd,wBAAwB,EACxB,cAAc,GACf,MAAM,SAAS,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { ResolveResultPresetInput, ResultPreset, ResultPresetMap } from "../types.js";
|
|
2
|
+
declare const DEFAULT_RESULT_PRESETS: ResultPresetMap;
|
|
3
|
+
declare function mergeResultPresets<TType extends string = string>(base: ResultPresetMap<TType> | null | undefined, override: ResultPresetMap<TType> | null | undefined): ResultPresetMap<TType>;
|
|
4
|
+
declare function resolveResultPreset<TType extends string = string>({ presets, level, status, type, }: ResolveResultPresetInput<TType>): ResultPreset;
|
|
5
|
+
export { DEFAULT_RESULT_PRESETS, mergeResultPresets, resolveResultPreset, };
|
|
6
|
+
//# sourceMappingURL=presets.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"presets.d.ts","sourceRoot":"","sources":["../../src/presets.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EACV,wBAAwB,EAGxB,YAAY,EAEZ,eAAe,EAChB,MAAM,QAAQ,CAAC;AAEhB,QAAA,MAAM,sBAAsB,EAAE,eAiD7B,CAAC;AAEF,iBAAS,kBAAkB,CAAC,KAAK,SAAS,MAAM,GAAG,MAAM,EACvD,IAAI,EAAE,eAAe,CAAC,KAAK,CAAC,GAAG,IAAI,GAAG,SAAS,EAC/C,QAAQ,EAAE,eAAe,CAAC,KAAK,CAAC,GAAG,IAAI,GAAG,SAAS,GAClD,eAAe,CAAC,KAAK,CAAC,CAaxB;AAED,iBAAS,mBAAmB,CAAC,KAAK,SAAS,MAAM,GAAG,MAAM,EAAE,EAC1D,OAAO,EACP,KAAK,EACL,MAAM,EACN,IAAI,GACL,EAAE,wBAAwB,CAAC,KAAK,CAAC,GAAG,YAAY,CAUhD;AA0HD,OAAO,EACL,sBAAsB,EACtB,kBAAkB,EAClB,mBAAmB,GACpB,CAAC"}
|
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
import { defaultResultMessage, defaultResultStatus, defaultResultTitle, isObject, mergeMetadata, toResultStatus, typeHierarchy, } from "../shared.js";
|
|
2
|
+
const DEFAULT_RESULT_PRESETS = {
|
|
3
|
+
ok: {
|
|
4
|
+
default: {
|
|
5
|
+
status: 200,
|
|
6
|
+
title: "Success",
|
|
7
|
+
message: "The request completed successfully.",
|
|
8
|
+
},
|
|
9
|
+
},
|
|
10
|
+
noop: {
|
|
11
|
+
default: {
|
|
12
|
+
status: 200,
|
|
13
|
+
title: "No changes",
|
|
14
|
+
message: "No changes were needed.",
|
|
15
|
+
},
|
|
16
|
+
},
|
|
17
|
+
error: {
|
|
18
|
+
default: {
|
|
19
|
+
status: 500,
|
|
20
|
+
title: "Oops..",
|
|
21
|
+
message: "Something went wrong.",
|
|
22
|
+
},
|
|
23
|
+
statuses: {
|
|
24
|
+
"400": {
|
|
25
|
+
status: 400,
|
|
26
|
+
title: "Bad request",
|
|
27
|
+
message: "The request could not be completed.",
|
|
28
|
+
},
|
|
29
|
+
"401": {
|
|
30
|
+
status: 401,
|
|
31
|
+
title: "Unauthorized",
|
|
32
|
+
message: "You must sign in to continue.",
|
|
33
|
+
},
|
|
34
|
+
"403": {
|
|
35
|
+
status: 403,
|
|
36
|
+
title: "Forbidden",
|
|
37
|
+
message: "You do not have access to this resource.",
|
|
38
|
+
},
|
|
39
|
+
"404": {
|
|
40
|
+
status: 404,
|
|
41
|
+
title: "Not Found",
|
|
42
|
+
message: "The requested resource does not exist.",
|
|
43
|
+
},
|
|
44
|
+
"409": {
|
|
45
|
+
status: 409,
|
|
46
|
+
title: "Conflict",
|
|
47
|
+
message: "The request conflicts with the current resource state.",
|
|
48
|
+
},
|
|
49
|
+
},
|
|
50
|
+
},
|
|
51
|
+
};
|
|
52
|
+
function mergeResultPresets(base, override) {
|
|
53
|
+
const levels = ["ok", "noop", "error"];
|
|
54
|
+
const out = {};
|
|
55
|
+
for (const level of levels) {
|
|
56
|
+
const merged = mergePresetGroup(base?.[level], override?.[level]);
|
|
57
|
+
if (merged) {
|
|
58
|
+
out[level] = merged;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
return out;
|
|
62
|
+
}
|
|
63
|
+
function resolveResultPreset({ presets, level, status, type, }) {
|
|
64
|
+
const merged = mergeResultPresets(DEFAULT_RESULT_PRESETS, presets);
|
|
65
|
+
const group = merged[level];
|
|
66
|
+
const resolvedStatus = toResultStatus(status, defaultResultStatus(level));
|
|
67
|
+
const fallback = createFallbackPreset(level, resolvedStatus);
|
|
68
|
+
const resolved = group
|
|
69
|
+
? resolvePresetFromGroup(group, resolvedStatus, type)
|
|
70
|
+
: {};
|
|
71
|
+
return mergePresetEntries(fallback, resolved);
|
|
72
|
+
}
|
|
73
|
+
function mergePresetGroup(base, override) {
|
|
74
|
+
if (!base && !override) {
|
|
75
|
+
return undefined;
|
|
76
|
+
}
|
|
77
|
+
const baseTypes = base?.types || {};
|
|
78
|
+
const overrideTypes = override?.types || {};
|
|
79
|
+
const typeKeys = new Set([
|
|
80
|
+
...Object.keys(baseTypes),
|
|
81
|
+
...Object.keys(overrideTypes),
|
|
82
|
+
]);
|
|
83
|
+
const types = Object.fromEntries(Array.from(typeKeys)
|
|
84
|
+
.map((key) => [key, mergePresetGroup(baseTypes[key], overrideTypes[key])])
|
|
85
|
+
.filter((entry) => Boolean(entry[1])));
|
|
86
|
+
const statuses = {
|
|
87
|
+
...(base?.statuses || {}),
|
|
88
|
+
...(override?.statuses || {}),
|
|
89
|
+
};
|
|
90
|
+
const out = {};
|
|
91
|
+
const mergedDefault = mergePresetEntries(base?.default, override?.default);
|
|
92
|
+
if (Object.keys(mergedDefault).length > 0) {
|
|
93
|
+
out.default = mergedDefault;
|
|
94
|
+
}
|
|
95
|
+
if (Object.keys(statuses).length > 0) {
|
|
96
|
+
out.statuses = statuses;
|
|
97
|
+
}
|
|
98
|
+
if (Object.keys(types).length > 0) {
|
|
99
|
+
out.types = types;
|
|
100
|
+
}
|
|
101
|
+
return out;
|
|
102
|
+
}
|
|
103
|
+
function resolvePresetFromGroup(group, status, type) {
|
|
104
|
+
let resolved = mergePresetEntries(group.default, readStatusPreset(group.statuses, status));
|
|
105
|
+
for (const candidate of typeHierarchy(type)) {
|
|
106
|
+
const typeGroup = group.types?.[candidate];
|
|
107
|
+
if (!typeGroup) {
|
|
108
|
+
continue;
|
|
109
|
+
}
|
|
110
|
+
resolved = mergePresetEntries(resolved, typeGroup.default, readStatusPreset(typeGroup.statuses, status));
|
|
111
|
+
}
|
|
112
|
+
return resolved;
|
|
113
|
+
}
|
|
114
|
+
function readStatusPreset(statuses, status) {
|
|
115
|
+
if (!statuses) {
|
|
116
|
+
return undefined;
|
|
117
|
+
}
|
|
118
|
+
return statuses[String(status)];
|
|
119
|
+
}
|
|
120
|
+
function createFallbackPreset(level, status) {
|
|
121
|
+
return {
|
|
122
|
+
status,
|
|
123
|
+
title: defaultResultTitle(level, status),
|
|
124
|
+
message: defaultResultMessage(level, status),
|
|
125
|
+
};
|
|
126
|
+
}
|
|
127
|
+
function mergePresetEntries(...items) {
|
|
128
|
+
const out = {};
|
|
129
|
+
let mergedMeta = null;
|
|
130
|
+
for (const item of items) {
|
|
131
|
+
if (!item) {
|
|
132
|
+
continue;
|
|
133
|
+
}
|
|
134
|
+
if (typeof item.status === "number") {
|
|
135
|
+
out.status = item.status;
|
|
136
|
+
}
|
|
137
|
+
if (typeof item.title === "string") {
|
|
138
|
+
out.title = item.title;
|
|
139
|
+
}
|
|
140
|
+
if (typeof item.message === "string") {
|
|
141
|
+
out.message = item.message;
|
|
142
|
+
}
|
|
143
|
+
if (typeof item.view === "string") {
|
|
144
|
+
out.view = item.view;
|
|
145
|
+
}
|
|
146
|
+
if (isObject(item.meta)) {
|
|
147
|
+
mergedMeta = mergeMetadata(mergedMeta, item.meta);
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
if (mergedMeta && Object.keys(mergedMeta).length > 0) {
|
|
151
|
+
out.meta = mergedMeta;
|
|
152
|
+
}
|
|
153
|
+
return out;
|
|
154
|
+
}
|
|
155
|
+
export { DEFAULT_RESULT_PRESETS, mergeResultPresets, resolveResultPreset, };
|
|
156
|
+
//# sourceMappingURL=presets.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"presets.js","sourceRoot":"","sources":["../../src/presets.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { ResultResponder, ResultResponderConfig } from "../types.js";
|
|
2
|
+
declare function createResultResponder<Req = unknown, Res = unknown, TType extends string = string>(config: ResultResponderConfig<Req, Res, TType>): ResultResponder<Req, Res, TType>;
|
|
3
|
+
export { createResultResponder, };
|
|
4
|
+
//# sourceMappingURL=responder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"responder.d.ts","sourceRoot":"","sources":["../../src/responder.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAKV,eAAe,EACf,qBAAqB,EAGtB,MAAM,QAAQ,CAAC;AAEhB,iBAAS,qBAAqB,CAC5B,GAAG,GAAG,OAAO,EACb,GAAG,GAAG,OAAO,EACb,KAAK,SAAS,MAAM,GAAG,MAAM,EAC7B,MAAM,EAAE,qBAAqB,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,CAoBlF;AAoJD,OAAO,EACL,qBAAqB,GACtB,CAAC"}
|