@orpc/openapi 0.0.0-next.e361acd → 0.0.0-next.e563486

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/README.md +95 -0
  2. package/dist/adapters/fetch/index.d.mts +15 -0
  3. package/dist/adapters/fetch/index.d.ts +15 -0
  4. package/dist/adapters/fetch/index.mjs +11 -0
  5. package/dist/adapters/hono/index.d.mts +8 -0
  6. package/dist/adapters/hono/index.d.ts +8 -0
  7. package/dist/adapters/hono/index.mjs +11 -0
  8. package/dist/adapters/next/index.d.mts +8 -0
  9. package/dist/adapters/next/index.d.ts +8 -0
  10. package/dist/adapters/next/index.mjs +11 -0
  11. package/dist/adapters/node/index.d.mts +15 -0
  12. package/dist/adapters/node/index.d.ts +15 -0
  13. package/dist/adapters/node/index.mjs +35 -0
  14. package/dist/adapters/standard/index.d.mts +35 -0
  15. package/dist/adapters/standard/index.d.ts +35 -0
  16. package/dist/adapters/standard/index.mjs +7 -0
  17. package/dist/index.d.mts +120 -0
  18. package/dist/index.d.ts +120 -0
  19. package/dist/index.mjs +303 -0
  20. package/dist/shared/openapi.BNHmrMe2.mjs +145 -0
  21. package/dist/shared/openapi.DZzpQAb-.mjs +231 -0
  22. package/dist/shared/openapi.Dv-KT_Bx.mjs +33 -0
  23. package/dist/shared/openapi.IfmmOyba.d.mts +8 -0
  24. package/dist/shared/openapi.IfmmOyba.d.ts +8 -0
  25. package/package.json +38 -23
  26. package/dist/chunk-CMRY2Z4J.js +0 -54
  27. package/dist/fetch.js +0 -697
  28. package/dist/index.js +0 -4585
  29. package/dist/src/fetch/base-handler.d.ts +0 -13
  30. package/dist/src/fetch/index.d.ts +0 -4
  31. package/dist/src/fetch/server-handler.d.ts +0 -3
  32. package/dist/src/fetch/serverless-handler.d.ts +0 -3
  33. package/dist/src/generator.d.ts +0 -24
  34. package/dist/src/index.d.ts +0 -3
  35. package/dist/src/utils.d.ts +0 -17
  36. package/dist/src/zod-to-json-schema.d.ts +0 -43
@@ -0,0 +1,33 @@
1
+ import { StandardOpenAPIJsonSerializer, StandardBracketNotationSerializer, StandardOpenAPISerializer } from '@orpc/openapi-client/standard';
2
+ import { StandardHandler } from '@orpc/server/standard';
3
+ import { toStandardLazyRequest, toFetchResponse } from '@orpc/standard-server-fetch';
4
+ import { a as StandardOpenAPIMatcher, S as StandardOpenAPICodec } from './openapi.BNHmrMe2.mjs';
5
+ import '@orpc/shared';
6
+ import 'json-schema-typed/draft-2020-12';
7
+
8
+ class OpenAPIHandler {
9
+ standardHandler;
10
+ constructor(router, options = {}) {
11
+ const jsonSerializer = new StandardOpenAPIJsonSerializer(options);
12
+ const bracketNotationSerializer = new StandardBracketNotationSerializer();
13
+ const serializer = new StandardOpenAPISerializer(jsonSerializer, bracketNotationSerializer);
14
+ const matcher = new StandardOpenAPIMatcher();
15
+ const codec = new StandardOpenAPICodec(serializer);
16
+ this.standardHandler = new StandardHandler(router, matcher, codec, options);
17
+ }
18
+ async handle(request, ...[
19
+ options = {}
20
+ ]) {
21
+ const standardRequest = toStandardLazyRequest(request);
22
+ const result = await this.standardHandler.handle(standardRequest, options);
23
+ if (!result.matched) {
24
+ return result;
25
+ }
26
+ return {
27
+ matched: true,
28
+ response: toFetchResponse(result.response, options)
29
+ };
30
+ }
31
+ }
32
+
33
+ export { OpenAPIHandler as O };
@@ -0,0 +1,8 @@
1
+ import { StandardOpenAPIJsonSerializerOptions } from '@orpc/openapi-client/standard';
2
+ import { Context } from '@orpc/server';
3
+ import { StandardHandlerOptions } from '@orpc/server/standard';
4
+
5
+ interface StandardOpenAPIHandlerOptions<T extends Context> extends StandardHandlerOptions<T>, StandardOpenAPIJsonSerializerOptions {
6
+ }
7
+
8
+ export type { StandardOpenAPIHandlerOptions as S };
@@ -0,0 +1,8 @@
1
+ import { StandardOpenAPIJsonSerializerOptions } from '@orpc/openapi-client/standard';
2
+ import { Context } from '@orpc/server';
3
+ import { StandardHandlerOptions } from '@orpc/server/standard';
4
+
5
+ interface StandardOpenAPIHandlerOptions<T extends Context> extends StandardHandlerOptions<T>, StandardOpenAPIJsonSerializerOptions {
6
+ }
7
+
8
+ export type { StandardOpenAPIHandlerOptions as S };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@orpc/openapi",
3
3
  "type": "module",
4
- "version": "0.0.0-next.e361acd",
4
+ "version": "0.0.0-next.e563486",
5
5
  "license": "MIT",
6
6
  "homepage": "https://orpc.unnoq.com",
7
7
  "repository": {
@@ -15,42 +15,57 @@
15
15
  ],
16
16
  "exports": {
17
17
  ".": {
18
- "types": "./dist/src/index.d.ts",
19
- "import": "./dist/index.js",
20
- "default": "./dist/index.js"
18
+ "types": "./dist/index.d.mts",
19
+ "import": "./dist/index.mjs",
20
+ "default": "./dist/index.mjs"
21
+ },
22
+ "./standard": {
23
+ "types": "./dist/adapters/standard/index.d.mts",
24
+ "import": "./dist/adapters/standard/index.mjs",
25
+ "default": "./dist/adapters/standard/index.mjs"
21
26
  },
22
27
  "./fetch": {
23
- "types": "./dist/src/fetch/index.d.ts",
24
- "import": "./dist/fetch.js",
25
- "default": "./dist/fetch.js"
28
+ "types": "./dist/adapters/fetch/index.d.mts",
29
+ "import": "./dist/adapters/fetch/index.mjs",
30
+ "default": "./dist/adapters/fetch/index.mjs"
31
+ },
32
+ "./hono": {
33
+ "types": "./dist/adapters/hono/index.d.mts",
34
+ "import": "./dist/adapters/hono/index.mjs",
35
+ "default": "./dist/adapters/hono/index.mjs"
36
+ },
37
+ "./next": {
38
+ "types": "./dist/adapters/next/index.d.mts",
39
+ "import": "./dist/adapters/next/index.mjs",
40
+ "default": "./dist/adapters/next/index.mjs"
26
41
  },
27
- "./🔒/*": {
28
- "types": "./dist/src/*.d.ts"
42
+ "./node": {
43
+ "types": "./dist/adapters/node/index.d.mts",
44
+ "import": "./dist/adapters/node/index.mjs",
45
+ "default": "./dist/adapters/node/index.mjs"
29
46
  }
30
47
  },
31
48
  "files": [
32
- "!**/*.map",
33
- "!**/*.tsbuildinfo",
34
49
  "dist"
35
50
  ],
36
51
  "dependencies": {
37
- "@standard-schema/spec": "1.0.0-beta.4",
38
- "escape-string-regexp": "^5.0.0",
39
52
  "json-schema-typed": "^8.0.1",
40
- "openapi3-ts": "^4.4.0",
41
- "@orpc/contract": "0.0.0-next.e361acd",
42
- "@orpc/shared": "0.0.0-next.e361acd",
43
- "@orpc/transformer": "0.0.0-next.e361acd",
44
- "@orpc/server": "0.0.0-next.e361acd",
45
- "@orpc/zod": "0.0.0-next.e361acd"
53
+ "openapi-types": "^12.1.3",
54
+ "rou3": "^0.5.1",
55
+ "@orpc/client": "0.0.0-next.e563486",
56
+ "@orpc/contract": "0.0.0-next.e563486",
57
+ "@orpc/openapi-client": "0.0.0-next.e563486",
58
+ "@orpc/standard-server": "0.0.0-next.e563486",
59
+ "@orpc/server": "0.0.0-next.e563486",
60
+ "@orpc/standard-server-fetch": "0.0.0-next.e563486",
61
+ "@orpc/standard-server-node": "0.0.0-next.e563486",
62
+ "@orpc/shared": "0.0.0-next.e563486"
46
63
  },
47
64
  "devDependencies": {
48
- "@readme/openapi-parser": "^2.6.0",
49
- "hono": "^4.6.12",
50
- "zod": "^3.24.1"
65
+ "zod": "^3.24.2"
51
66
  },
52
67
  "scripts": {
53
- "build": "tsup --clean --sourcemap --entry.index=src/index.ts --entry.fetch=src/fetch/index.ts --format=esm --onSuccess='tsc -b --noCheck'",
68
+ "build": "unbuild",
54
69
  "build:watch": "pnpm run build --watch",
55
70
  "type:check": "tsc -b"
56
71
  }
@@ -1,54 +0,0 @@
1
- // src/utils.ts
2
- import { isContractProcedure } from "@orpc/contract";
3
- import { flatLazy, getRouterContract, isLazy, isProcedure } from "@orpc/server";
4
- function eachContractProcedureLeaf(options, callback, result = [], isCurrentRouterContract = false) {
5
- const hiddenContract = getRouterContract(options.router);
6
- if (!isCurrentRouterContract && hiddenContract) {
7
- return eachContractProcedureLeaf(
8
- {
9
- path: options.path,
10
- router: hiddenContract
11
- },
12
- callback,
13
- result,
14
- true
15
- );
16
- }
17
- if (isLazy(options.router)) {
18
- result.push({
19
- lazy: flatLazy(options.router),
20
- path: options.path
21
- });
22
- } else if (isProcedure(options.router)) {
23
- callback({
24
- contract: options.router["~orpc"].contract,
25
- path: options.path
26
- });
27
- } else if (isContractProcedure(options.router)) {
28
- callback({
29
- contract: options.router,
30
- path: options.path
31
- });
32
- } else {
33
- for (const key in options.router) {
34
- eachContractProcedureLeaf(
35
- {
36
- router: options.router[key],
37
- path: [...options.path, key]
38
- },
39
- callback,
40
- result
41
- );
42
- }
43
- }
44
- return result;
45
- }
46
- function standardizeHTTPPath(path) {
47
- return `/${path.replace(/\/{2,}/g, "/").replace(/^\/|\/$/g, "")}`;
48
- }
49
-
50
- export {
51
- eachContractProcedureLeaf,
52
- standardizeHTTPPath
53
- };
54
- //# sourceMappingURL=chunk-CMRY2Z4J.js.map