@stryke/trpc-next 0.5.99 → 0.5.100
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 +20 -0
- package/dist/_virtual/_rolldown/runtime.cjs +0 -14
- package/dist/action-handler.cjs +0 -7
- package/dist/action-handler.mjs +1 -3
- package/dist/action-handler.mjs.map +1 -1
- package/dist/client.cjs +0 -10
- package/dist/client.mjs +1 -6
- package/dist/client.mjs.map +1 -1
- package/dist/index.cjs +0 -22
- package/dist/index.mjs +1 -19
- package/dist/server.cjs +0 -11
- package/dist/server.mjs +1 -7
- package/dist/server.mjs.map +1 -1
- package/dist/shared.cjs +0 -11
- package/dist/shared.mjs +1 -7
- package/dist/shared.mjs.map +1 -1
- package/dist/shield/constructors.cjs +0 -17
- package/dist/shield/constructors.mjs +1 -12
- package/dist/shield/constructors.mjs.map +1 -1
- package/dist/shield/generator.cjs +1 -9
- package/dist/shield/generator.mjs +1 -4
- package/dist/shield/generator.mjs.map +1 -1
- package/dist/shield/index.cjs +1 -22
- package/dist/shield/index.mjs +1 -17
- package/dist/shield/rules.cjs +1 -19
- package/dist/shield/rules.mjs +1 -14
- package/dist/shield/rules.mjs.map +1 -1
- package/dist/shield/shield.cjs +1 -9
- package/dist/shield/shield.mjs +1 -3
- package/dist/shield/shield.mjs.map +1 -1
- package/dist/shield/types.cjs +0 -13
- package/dist/shield/types.mjs +0 -8
- package/dist/shield/utils.cjs +0 -15
- package/dist/shield/utils.mjs +1 -10
- package/dist/shield/utils.mjs.map +1 -1
- package/dist/shield/validation.cjs +1 -12
- package/dist/shield/validation.mjs +1 -6
- package/dist/shield/validation.mjs.map +1 -1
- package/dist/types.cjs +0 -13
- package/dist/types.mjs +0 -8
- package/package.json +10 -66
- package/dist/_virtual/_rolldown/runtime.mjs +0 -18
- package/dist/action-handler.test.cjs +0 -13
- package/dist/action-handler.test.d.cts +0 -1
- package/dist/action-handler.test.d.mts +0 -1
- package/dist/action-handler.test.mjs +0 -13
- package/dist/action-handler.test.mjs.map +0 -1
- package/dist/client.test.cjs +0 -13
- package/dist/client.test.d.cts +0 -1
- package/dist/client.test.d.mts +0 -1
- package/dist/client.test.mjs +0 -13
- package/dist/client.test.mjs.map +0 -1
- package/dist/index.mjs.map +0 -1
- package/dist/index.test.cjs +0 -13
- package/dist/index.test.d.cts +0 -1
- package/dist/index.test.d.mts +0 -1
- package/dist/index.test.mjs +0 -13
- package/dist/index.test.mjs.map +0 -1
- package/dist/server.test.cjs +0 -13
- package/dist/server.test.d.cts +0 -1
- package/dist/server.test.d.mts +0 -1
- package/dist/server.test.mjs +0 -13
- package/dist/server.test.mjs.map +0 -1
- package/dist/shared.test.cjs +0 -13
- package/dist/shared.test.d.cts +0 -1
- package/dist/shared.test.d.mts +0 -1
- package/dist/shared.test.mjs +0 -13
- package/dist/shared.test.mjs.map +0 -1
- package/dist/shield/constructors.test.cjs +0 -13
- package/dist/shield/constructors.test.d.cts +0 -1
- package/dist/shield/constructors.test.d.mts +0 -1
- package/dist/shield/constructors.test.mjs +0 -13
- package/dist/shield/constructors.test.mjs.map +0 -1
- package/dist/shield/generator.test.cjs +0 -13
- package/dist/shield/generator.test.d.cts +0 -1
- package/dist/shield/generator.test.d.mts +0 -1
- package/dist/shield/generator.test.mjs +0 -13
- package/dist/shield/generator.test.mjs.map +0 -1
- package/dist/shield/index.mjs.map +0 -1
- package/dist/shield/index.test.cjs +0 -13
- package/dist/shield/index.test.d.cts +0 -1
- package/dist/shield/index.test.d.mts +0 -1
- package/dist/shield/index.test.mjs +0 -13
- package/dist/shield/index.test.mjs.map +0 -1
- package/dist/shield/rules.test.cjs +0 -13
- package/dist/shield/rules.test.d.cts +0 -1
- package/dist/shield/rules.test.d.mts +0 -1
- package/dist/shield/rules.test.mjs +0 -13
- package/dist/shield/rules.test.mjs.map +0 -1
- package/dist/shield/shield.test.cjs +0 -13
- package/dist/shield/shield.test.d.cts +0 -1
- package/dist/shield/shield.test.d.mts +0 -1
- package/dist/shield/shield.test.mjs +0 -13
- package/dist/shield/shield.test.mjs.map +0 -1
- package/dist/shield/types.mjs.map +0 -1
- package/dist/shield/types.test.cjs +0 -13
- package/dist/shield/types.test.d.cts +0 -1
- package/dist/shield/types.test.d.mts +0 -1
- package/dist/shield/types.test.mjs +0 -13
- package/dist/shield/types.test.mjs.map +0 -1
- package/dist/shield/utils.test.cjs +0 -13
- package/dist/shield/utils.test.d.cts +0 -1
- package/dist/shield/utils.test.d.mts +0 -1
- package/dist/shield/utils.test.mjs +0 -13
- package/dist/shield/utils.test.mjs.map +0 -1
- package/dist/shield/validation.test.cjs +0 -13
- package/dist/shield/validation.test.d.cts +0 -1
- package/dist/shield/validation.test.d.mts +0 -1
- package/dist/shield/validation.test.mjs +0 -13
- package/dist/shield/validation.test.mjs.map +0 -1
- package/dist/types.mjs.map +0 -1
- package/dist/types.test.cjs +0 -13
- package/dist/types.test.d.cts +0 -1
- package/dist/types.test.d.mts +0 -1
- package/dist/types.test.mjs +0 -13
- package/dist/types.test.mjs.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,26 @@
|
|
|
2
2
|
|
|
3
3
|
# Changelog for Stryke - TRPC Next
|
|
4
4
|
|
|
5
|
+
## [0.5.100](https://github.com/storm-software/stryke/releases/tag/trpc-next%400.5.100) (05/30/2026)
|
|
6
|
+
|
|
7
|
+
### Miscellaneous
|
|
8
|
+
|
|
9
|
+
- **monorepo:** Remove remaining `jest` configuration ([1fd3d7d2](https://github.com/storm-software/stryke/commit/1fd3d7d2))
|
|
10
|
+
|
|
11
|
+
### Bug Fixes
|
|
12
|
+
|
|
13
|
+
- **monorepo:** Resolve issue with `.test.ts` exports in `package.json` file ([31d85e19](https://github.com/storm-software/stryke/commit/31d85e19))
|
|
14
|
+
|
|
15
|
+
### Updated Dependencies
|
|
16
|
+
|
|
17
|
+
- Updated **env** to **v0.20.98**
|
|
18
|
+
- Updated **fs** to **v0.33.81**
|
|
19
|
+
- Updated **path** to **v0.29.8**
|
|
20
|
+
- Updated **string-format** to **v0.17.23**
|
|
21
|
+
- Updated **type-checks** to **v0.6.14**
|
|
22
|
+
- Updated **types** to **v0.12.9**
|
|
23
|
+
- Updated **url** to **v0.4.32**
|
|
24
|
+
|
|
5
25
|
## [0.5.99](https://github.com/storm-software/stryke/releases/tag/trpc-next%400.5.99) (05/30/2026)
|
|
6
26
|
|
|
7
27
|
### Miscellaneous
|
|
@@ -5,19 +5,6 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
|
5
5
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
6
|
var __getProtoOf = Object.getPrototypeOf;
|
|
7
7
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
-
var __exportAll = (all, no_symbols) => {
|
|
9
|
-
let target = {};
|
|
10
|
-
for (var name in all) {
|
|
11
|
-
__defProp(target, name, {
|
|
12
|
-
get: all[name],
|
|
13
|
-
enumerable: true
|
|
14
|
-
});
|
|
15
|
-
}
|
|
16
|
-
if (!no_symbols) {
|
|
17
|
-
__defProp(target, Symbol.toStringTag, { value: "Module" });
|
|
18
|
-
}
|
|
19
|
-
return target;
|
|
20
|
-
};
|
|
21
8
|
var __copyProps = (to, from, except, desc) => {
|
|
22
9
|
if (from && typeof from === "object" || typeof from === "function") {
|
|
23
10
|
for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
|
|
@@ -39,5 +26,4 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
39
26
|
|
|
40
27
|
//#endregion
|
|
41
28
|
|
|
42
|
-
exports.__exportAll = __exportAll;
|
|
43
29
|
exports.__toESM = __toESM;
|
package/dist/action-handler.cjs
CHANGED
|
@@ -5,7 +5,6 @@ let defu = require("defu");
|
|
|
5
5
|
defu = require_runtime.__toESM(defu, 1);
|
|
6
6
|
|
|
7
7
|
//#region src/action-handler.ts
|
|
8
|
-
var action_handler_exports = /* @__PURE__ */ require_runtime.__exportAll({ createTRPCServerActionHandler: () => createTRPCServerActionHandler });
|
|
9
8
|
/**
|
|
10
9
|
* This client invokes procedures directly on the server without fetching over HTTP.
|
|
11
10
|
*
|
|
@@ -20,10 +19,4 @@ function createTRPCServerActionHandler(cookies, t, createContext = async () => (
|
|
|
20
19
|
}
|
|
21
20
|
|
|
22
21
|
//#endregion
|
|
23
|
-
Object.defineProperty(exports, 'action_handler_exports', {
|
|
24
|
-
enumerable: true,
|
|
25
|
-
get: function () {
|
|
26
|
-
return action_handler_exports;
|
|
27
|
-
}
|
|
28
|
-
});
|
|
29
22
|
exports.createTRPCServerActionHandler = createTRPCServerActionHandler;
|
package/dist/action-handler.mjs
CHANGED
|
@@ -1,9 +1,7 @@
|
|
|
1
|
-
import { __exportAll } from "./_virtual/_rolldown/runtime.mjs";
|
|
2
1
|
import { experimental_createServerActionHandler } from "@trpc/next/app-dir/server";
|
|
3
2
|
import defu from "defu";
|
|
4
3
|
|
|
5
4
|
//#region src/action-handler.ts
|
|
6
|
-
var action_handler_exports = /* @__PURE__ */ __exportAll({ createTRPCServerActionHandler: () => createTRPCServerActionHandler });
|
|
7
5
|
/**
|
|
8
6
|
* This client invokes procedures directly on the server without fetching over HTTP.
|
|
9
7
|
*
|
|
@@ -18,5 +16,5 @@ function createTRPCServerActionHandler(cookies, t, createContext = async () => (
|
|
|
18
16
|
}
|
|
19
17
|
|
|
20
18
|
//#endregion
|
|
21
|
-
export {
|
|
19
|
+
export { createTRPCServerActionHandler };
|
|
22
20
|
//# sourceMappingURL=action-handler.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"action-handler.mjs","names":[],"sources":["../src/action-handler.ts"],"sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Stryke\n\n This code was released as part of the Stryke project. Stryke\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/stryke.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/stryke\n Documentation: https://docs.stormsoftware.com/projects/stryke\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport type { MaybePromise } from \"@stryke/types\";\nimport { experimental_createServerActionHandler } from \"@trpc/next/app-dir/server\";\nimport type {\n AnyRootTypes,\n RootConfig\n} from \"@trpc/server/unstable-core-do-not-import\";\nimport defu from \"defu\";\nimport type { ReadonlyRequestCookies } from \"next/dist/server/web/spec-extension/adapters/request-cookies\";\nimport type { BaseContext } from \"./types\";\n\n/**\n * This client invokes procedures directly on the server without fetching over HTTP.\n *\n * @param cookies - A function that returns the cookies to be passed to the API\n * @param t - The tRPC instance\n * @param createContext - An optional function to generate a context\n */\nexport function createTRPCServerActionHandler<\n TInstance extends {\n _config: RootConfig<AnyRootTypes>;\n },\n TContext extends BaseContext = BaseContext\n>(\n cookies: () => Promise<ReadonlyRequestCookies>,\n t: TInstance,\n createContext: () => MaybePromise<TContext> = async () => ({}) as TContext\n) {\n return experimental_createServerActionHandler(t, {\n createContext: async () => {\n const context = await Promise.resolve(createContext());\n\n return defu(context, {\n headers: {\n // Pass the cookie header to the API\n cookies: (await cookies()).toString() ?? \"\"\n }\n });\n }\n });\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"action-handler.mjs","names":[],"sources":["../src/action-handler.ts"],"sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Stryke\n\n This code was released as part of the Stryke project. Stryke\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/stryke.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/stryke\n Documentation: https://docs.stormsoftware.com/projects/stryke\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport type { MaybePromise } from \"@stryke/types\";\nimport { experimental_createServerActionHandler } from \"@trpc/next/app-dir/server\";\nimport type {\n AnyRootTypes,\n RootConfig\n} from \"@trpc/server/unstable-core-do-not-import\";\nimport defu from \"defu\";\nimport type { ReadonlyRequestCookies } from \"next/dist/server/web/spec-extension/adapters/request-cookies\";\nimport type { BaseContext } from \"./types\";\n\n/**\n * This client invokes procedures directly on the server without fetching over HTTP.\n *\n * @param cookies - A function that returns the cookies to be passed to the API\n * @param t - The tRPC instance\n * @param createContext - An optional function to generate a context\n */\nexport function createTRPCServerActionHandler<\n TInstance extends {\n _config: RootConfig<AnyRootTypes>;\n },\n TContext extends BaseContext = BaseContext\n>(\n cookies: () => Promise<ReadonlyRequestCookies>,\n t: TInstance,\n createContext: () => MaybePromise<TContext> = async () => ({}) as TContext\n) {\n return experimental_createServerActionHandler(t, {\n createContext: async () => {\n const context = await Promise.resolve(createContext());\n\n return defu(context, {\n headers: {\n // Pass the cookie header to the API\n cookies: (await cookies()).toString() ?? \"\"\n }\n });\n }\n });\n}\n"],"mappings":";;;;;;;;;;;AAmCA,SAAgB,8BAMd,SACA,GACA,gBAA8C,aAAa,EAAE,GAC7D;AACA,QAAO,uCAAuC,GAAG,EAC/C,eAAe,YAAY;AAGzB,SAAO,KAAK,MAFU,QAAQ,QAAQ,eAAe,CAAC,EAEjC,EACnB,SAAS,EAEP,UAAU,MAAM,SAAS,EAAE,UAAU,IAAI,IAC1C,EACF,CAAC;IAEL,CAAC"}
|
package/dist/client.cjs
CHANGED
|
@@ -8,10 +8,6 @@ let _trpc_next_app_dir_client = require("@trpc/next/app-dir/client");
|
|
|
8
8
|
let _trpc_next_app_dir_links_nextHttp = require("@trpc/next/app-dir/links/nextHttp");
|
|
9
9
|
|
|
10
10
|
//#region src/client.ts
|
|
11
|
-
var client_exports = /* @__PURE__ */ require_runtime.__exportAll({
|
|
12
|
-
createTRPCClient: () => createTRPCClient,
|
|
13
|
-
createUseAction: () => createUseAction
|
|
14
|
-
});
|
|
15
11
|
/**
|
|
16
12
|
* Creates a tRPC client for the Next.js app directory.
|
|
17
13
|
*
|
|
@@ -40,11 +36,5 @@ function createUseAction() {
|
|
|
40
36
|
}
|
|
41
37
|
|
|
42
38
|
//#endregion
|
|
43
|
-
Object.defineProperty(exports, 'client_exports', {
|
|
44
|
-
enumerable: true,
|
|
45
|
-
get: function () {
|
|
46
|
-
return client_exports;
|
|
47
|
-
}
|
|
48
|
-
});
|
|
49
39
|
exports.createTRPCClient = createTRPCClient;
|
|
50
40
|
exports.createUseAction = createUseAction;
|
package/dist/client.mjs
CHANGED
|
@@ -1,16 +1,11 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
|
-
import { __exportAll } from "./_virtual/_rolldown/runtime.mjs";
|
|
4
3
|
import { getTRPCServerUrl, transformer } from "./shared.mjs";
|
|
5
4
|
import { loggerLink } from "@trpc/client";
|
|
6
5
|
import { experimental_createActionHook, experimental_createTRPCNextAppDirClient, experimental_serverActionLink } from "@trpc/next/app-dir/client";
|
|
7
6
|
import { experimental_nextHttpLink } from "@trpc/next/app-dir/links/nextHttp";
|
|
8
7
|
|
|
9
8
|
//#region src/client.ts
|
|
10
|
-
var client_exports = /* @__PURE__ */ __exportAll({
|
|
11
|
-
createTRPCClient: () => createTRPCClient,
|
|
12
|
-
createUseAction: () => createUseAction
|
|
13
|
-
});
|
|
14
9
|
/**
|
|
15
10
|
* Creates a tRPC client for the Next.js app directory.
|
|
16
11
|
*
|
|
@@ -39,5 +34,5 @@ function createUseAction() {
|
|
|
39
34
|
}
|
|
40
35
|
|
|
41
36
|
//#endregion
|
|
42
|
-
export {
|
|
37
|
+
export { createTRPCClient, createUseAction };
|
|
43
38
|
//# sourceMappingURL=client.mjs.map
|
package/dist/client.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.mjs","names":[],"sources":["../src/client.ts"],"sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Stryke\n\n This code was released as part of the Stryke project. Stryke\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/stryke.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/stryke\n Documentation: https://docs.stormsoftware.com/projects/stryke\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\n\"use client\";\n\nimport { loggerLink } from \"@trpc/client\";\nimport type { UseTRPCActionResult } from \"@trpc/next/app-dir/client\";\nimport {\n experimental_createActionHook,\n experimental_createTRPCNextAppDirClient,\n experimental_serverActionLink\n} from \"@trpc/next/app-dir/client\";\nimport { experimental_nextHttpLink } from \"@trpc/next/app-dir/links/nextHttp\";\nimport type {\n ActionHandlerDef,\n TRPCActionHandler\n} from \"@trpc/next/app-dir/server\";\nimport type { AnyTRPCRouter } from \"@trpc/server\";\nimport { getTRPCServerUrl, transformer } from \"./shared\";\n\n/**\n * Creates a tRPC client for the Next.js app directory.\n *\n * @param baseUrl - The base URL for the tRPC server. This is typically the URL of the Next.js app.\n * @returns A tRPC client that can be used to make requests to the server.\n */\nexport function createTRPCClient<TRouter extends AnyTRPCRouter>(\n baseUrl: string\n) {\n return experimental_createTRPCNextAppDirClient<TRouter>({\n config() {\n return {\n links: [\n loggerLink({\n enabled: _op => true\n }),\n experimental_nextHttpLink({\n transformer,\n batch: true,\n url: getTRPCServerUrl(baseUrl),\n headers() {\n return {\n \"x-trpc-source\": \"client\"\n };\n }\n } as TRouter[\"_def\"][\"_config\"][\"$types\"])\n ]\n };\n }\n });\n}\n\n/**\n * Creates a tRPC action hook for the Next.js app directory.\n *\n * @returns A function that can be used to create a tRPC action hook.\n */\nexport function createUseAction<TRouter extends AnyTRPCRouter>() {\n return experimental_createActionHook<TRouter>({\n links: [\n loggerLink(),\n experimental_serverActionLink({\n transformer\n } as TRouter[\"_def\"][\"_config\"][\"$types\"])\n ]\n } as TRouter[\"_def\"][\"_config\"][\"$types\"]) as <TDef extends ActionHandlerDef>(\n handler: TRPCActionHandler<TDef>,\n useActionOpts?: any\n ) => UseTRPCActionResult<TDef>;\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"client.mjs","names":[],"sources":["../src/client.ts"],"sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Stryke\n\n This code was released as part of the Stryke project. Stryke\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/stryke.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/stryke\n Documentation: https://docs.stormsoftware.com/projects/stryke\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\n\"use client\";\n\nimport { loggerLink } from \"@trpc/client\";\nimport type { UseTRPCActionResult } from \"@trpc/next/app-dir/client\";\nimport {\n experimental_createActionHook,\n experimental_createTRPCNextAppDirClient,\n experimental_serverActionLink\n} from \"@trpc/next/app-dir/client\";\nimport { experimental_nextHttpLink } from \"@trpc/next/app-dir/links/nextHttp\";\nimport type {\n ActionHandlerDef,\n TRPCActionHandler\n} from \"@trpc/next/app-dir/server\";\nimport type { AnyTRPCRouter } from \"@trpc/server\";\nimport { getTRPCServerUrl, transformer } from \"./shared\";\n\n/**\n * Creates a tRPC client for the Next.js app directory.\n *\n * @param baseUrl - The base URL for the tRPC server. This is typically the URL of the Next.js app.\n * @returns A tRPC client that can be used to make requests to the server.\n */\nexport function createTRPCClient<TRouter extends AnyTRPCRouter>(\n baseUrl: string\n) {\n return experimental_createTRPCNextAppDirClient<TRouter>({\n config() {\n return {\n links: [\n loggerLink({\n enabled: _op => true\n }),\n experimental_nextHttpLink({\n transformer,\n batch: true,\n url: getTRPCServerUrl(baseUrl),\n headers() {\n return {\n \"x-trpc-source\": \"client\"\n };\n }\n } as TRouter[\"_def\"][\"_config\"][\"$types\"])\n ]\n };\n }\n });\n}\n\n/**\n * Creates a tRPC action hook for the Next.js app directory.\n *\n * @returns A function that can be used to create a tRPC action hook.\n */\nexport function createUseAction<TRouter extends AnyTRPCRouter>() {\n return experimental_createActionHook<TRouter>({\n links: [\n loggerLink(),\n experimental_serverActionLink({\n transformer\n } as TRouter[\"_def\"][\"_config\"][\"$types\"])\n ]\n } as TRouter[\"_def\"][\"_config\"][\"$types\"]) as <TDef extends ActionHandlerDef>(\n handler: TRPCActionHandler<TDef>,\n useActionOpts?: any\n ) => UseTRPCActionResult<TDef>;\n}\n"],"mappings":";;;;;;;;;;;;;;AAyCA,SAAgB,iBACd,SACA;AACA,QAAO,wCAAiD,EACtD,SAAS;AACP,SAAO,EACL,OAAO,CACL,WAAW,EACT,UAAS,QAAO,MACjB,CAAC,EACF,0BAA0B;GACxB;GACA,OAAO;GACP,KAAK,iBAAiB,QAAQ;GAC9B,UAAU;AACR,WAAO,EACL,iBAAiB,UAClB;;GAEJ,CAAyC,CAC3C,EACF;IAEJ,CAAC;;;;;;;AAQJ,SAAgB,kBAAiD;AAC/D,QAAO,8BAAuC,EAC5C,OAAO,CACL,YAAY,EACZ,8BAA8B,EAC5B,aACD,CAAyC,CAC3C,EACF,CAAyC"}
|
package/dist/index.cjs
CHANGED
|
@@ -8,22 +8,6 @@ const require_tanstack_query_client = require('./tanstack-query/client.cjs');
|
|
|
8
8
|
const require_tanstack_query_server = require('./tanstack-query/server.cjs');
|
|
9
9
|
let _trpc_server_adapters_next_app_dir = require("@trpc/server/adapters/next-app-dir");
|
|
10
10
|
|
|
11
|
-
//#region src/index.ts
|
|
12
|
-
var src_exports = /* @__PURE__ */ require_runtime.__exportAll({
|
|
13
|
-
createQueryClient: () => require_shared.createQueryClient,
|
|
14
|
-
createTRPCClient: () => require_client.createTRPCClient,
|
|
15
|
-
createTRPCServer: () => require_server.createTRPCServer,
|
|
16
|
-
createTRPCServerActionHandler: () => require_action_handler.createTRPCServerActionHandler,
|
|
17
|
-
createTRPCTanstackQueryClient: () => require_tanstack_query_client.createTRPCTanstackQueryClient,
|
|
18
|
-
createTRPCTanstackQueryServer: () => require_tanstack_query_server.createTRPCTanstackQueryServer,
|
|
19
|
-
createUseAction: () => require_client.createUseAction,
|
|
20
|
-
getTRPCServerUrl: () => require_shared.getTRPCServerUrl,
|
|
21
|
-
notFound: () => _trpc_server_adapters_next_app_dir.experimental_notFound,
|
|
22
|
-
redirect: () => _trpc_server_adapters_next_app_dir.experimental_redirect,
|
|
23
|
-
transformer: () => require_shared.transformer
|
|
24
|
-
});
|
|
25
|
-
|
|
26
|
-
//#endregion
|
|
27
11
|
exports.createQueryClient = require_shared.createQueryClient;
|
|
28
12
|
exports.createTRPCClient = require_client.createTRPCClient;
|
|
29
13
|
exports.createTRPCServer = require_server.createTRPCServer;
|
|
@@ -44,10 +28,4 @@ Object.defineProperty(exports, 'redirect', {
|
|
|
44
28
|
return _trpc_server_adapters_next_app_dir.experimental_redirect;
|
|
45
29
|
}
|
|
46
30
|
});
|
|
47
|
-
Object.defineProperty(exports, 'src_exports', {
|
|
48
|
-
enumerable: true,
|
|
49
|
-
get: function () {
|
|
50
|
-
return src_exports;
|
|
51
|
-
}
|
|
52
|
-
});
|
|
53
31
|
exports.transformer = require_shared.transformer;
|
package/dist/index.mjs
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { __exportAll } from "./_virtual/_rolldown/runtime.mjs";
|
|
2
1
|
import { createTRPCServerActionHandler } from "./action-handler.mjs";
|
|
3
2
|
import { createQueryClient, getTRPCServerUrl, transformer } from "./shared.mjs";
|
|
4
3
|
import { createTRPCClient, createUseAction } from "./client.mjs";
|
|
@@ -6,21 +5,4 @@ import { createTRPCServer, notFound, redirect } from "./server.mjs";
|
|
|
6
5
|
import { createTRPCTanstackQueryClient } from "./tanstack-query/client.mjs";
|
|
7
6
|
import { createTRPCTanstackQueryServer } from "./tanstack-query/server.mjs";
|
|
8
7
|
|
|
9
|
-
|
|
10
|
-
var src_exports = /* @__PURE__ */ __exportAll({
|
|
11
|
-
createQueryClient: () => createQueryClient,
|
|
12
|
-
createTRPCClient: () => createTRPCClient,
|
|
13
|
-
createTRPCServer: () => createTRPCServer,
|
|
14
|
-
createTRPCServerActionHandler: () => createTRPCServerActionHandler,
|
|
15
|
-
createTRPCTanstackQueryClient: () => createTRPCTanstackQueryClient,
|
|
16
|
-
createTRPCTanstackQueryServer: () => createTRPCTanstackQueryServer,
|
|
17
|
-
createUseAction: () => createUseAction,
|
|
18
|
-
getTRPCServerUrl: () => getTRPCServerUrl,
|
|
19
|
-
notFound: () => notFound,
|
|
20
|
-
redirect: () => redirect,
|
|
21
|
-
transformer: () => transformer
|
|
22
|
-
});
|
|
23
|
-
|
|
24
|
-
//#endregion
|
|
25
|
-
export { createQueryClient, createTRPCClient, createTRPCServer, createTRPCServerActionHandler, createTRPCTanstackQueryClient, createTRPCTanstackQueryServer, createUseAction, getTRPCServerUrl, notFound, redirect, src_exports, transformer };
|
|
26
|
-
//# sourceMappingURL=index.mjs.map
|
|
8
|
+
export { createQueryClient, createTRPCClient, createTRPCServer, createTRPCServerActionHandler, createTRPCTanstackQueryClient, createTRPCTanstackQueryServer, createUseAction, getTRPCServerUrl, notFound, redirect, transformer };
|
package/dist/server.cjs
CHANGED
|
@@ -7,11 +7,6 @@ let _trpc_next_app_dir_links_nextCache = require("@trpc/next/app-dir/links/nextC
|
|
|
7
7
|
let _trpc_server_adapters_next_app_dir = require("@trpc/server/adapters/next-app-dir");
|
|
8
8
|
|
|
9
9
|
//#region src/server.ts
|
|
10
|
-
var server_exports = /* @__PURE__ */ require_runtime.__exportAll({
|
|
11
|
-
createTRPCServer: () => createTRPCServer,
|
|
12
|
-
notFound: () => _trpc_server_adapters_next_app_dir.experimental_notFound,
|
|
13
|
-
redirect: () => _trpc_server_adapters_next_app_dir.experimental_redirect
|
|
14
|
-
});
|
|
15
10
|
/**
|
|
16
11
|
* This client invokes procedures directly on the server without fetching over HTTP.
|
|
17
12
|
*
|
|
@@ -49,10 +44,4 @@ Object.defineProperty(exports, 'redirect', {
|
|
|
49
44
|
get: function () {
|
|
50
45
|
return _trpc_server_adapters_next_app_dir.experimental_redirect;
|
|
51
46
|
}
|
|
52
|
-
});
|
|
53
|
-
Object.defineProperty(exports, 'server_exports', {
|
|
54
|
-
enumerable: true,
|
|
55
|
-
get: function () {
|
|
56
|
-
return server_exports;
|
|
57
|
-
}
|
|
58
47
|
});
|
package/dist/server.mjs
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { __exportAll } from "./_virtual/_rolldown/runtime.mjs";
|
|
2
1
|
import { transformer } from "./shared.mjs";
|
|
3
2
|
import { experimental_createTRPCNextAppDirServer } from "@trpc/next/app-dir/server";
|
|
4
3
|
import { loggerLink } from "@trpc/client";
|
|
@@ -6,11 +5,6 @@ import { experimental_nextCacheLink } from "@trpc/next/app-dir/links/nextCache";
|
|
|
6
5
|
import { experimental_notFound as notFound, experimental_redirect as redirect } from "@trpc/server/adapters/next-app-dir";
|
|
7
6
|
|
|
8
7
|
//#region src/server.ts
|
|
9
|
-
var server_exports = /* @__PURE__ */ __exportAll({
|
|
10
|
-
createTRPCServer: () => createTRPCServer,
|
|
11
|
-
notFound: () => notFound,
|
|
12
|
-
redirect: () => redirect
|
|
13
|
-
});
|
|
14
8
|
/**
|
|
15
9
|
* This client invokes procedures directly on the server without fetching over HTTP.
|
|
16
10
|
*
|
|
@@ -36,5 +30,5 @@ function createTRPCServer(cookies, router, createContext = () => ({})) {
|
|
|
36
30
|
}
|
|
37
31
|
|
|
38
32
|
//#endregion
|
|
39
|
-
export { createTRPCServer, notFound, redirect
|
|
33
|
+
export { createTRPCServer, notFound, redirect };
|
|
40
34
|
//# sourceMappingURL=server.mjs.map
|
package/dist/server.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.mjs","names":[],"sources":["../src/server.ts"],"sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Stryke\n\n This code was released as part of the Stryke project. Stryke\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/stryke.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/stryke\n Documentation: https://docs.stormsoftware.com/projects/stryke\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\n/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Stryke\n\n This code was released as part of the Stryke project. Stryke\n is maintained by Storm Software under the Apache-2.0 License, and is\n free for commercial and private use. For more information, please visit\n our licensing page.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/stryke\n Documentation: https://stormsoftware.com/projects/stryke/docs\n Contact: https://stormsoftware.com/contact\n License: https://stormsoftware.com/projects/stryke/license\n\n ------------------------------------------------------------------- */\n\nimport type { MaybePromise } from \"@stryke/types\";\nimport type { Resolver } from \"@trpc/client\";\nimport { loggerLink } from \"@trpc/client\";\nimport { experimental_nextCacheLink } from \"@trpc/next/app-dir/links/nextCache\";\nimport { experimental_createTRPCNextAppDirServer } from \"@trpc/next/app-dir/server\";\nimport type { AnyTRPCRouter, inferRouterContext } from \"@trpc/server\";\nimport type {\n AnyProcedure,\n AnyRootTypes,\n inferProcedureInput,\n inferTransformedProcedureOutput,\n ProcedureType,\n RouterRecord\n} from \"@trpc/server/unstable-core-do-not-import\";\nimport type { FeatureFlags, ResolverDef } from \"@trpc/tanstack-react-query\";\nimport type { ReadonlyRequestCookies } from \"next/dist/server/web/spec-extension/adapters/request-cookies\";\nimport { transformer } from \"./shared\";\n\nexport type DecorateProcedureServer<\n TType extends ProcedureType,\n TDef extends ResolverDef\n> = TType extends \"query\"\n ? {\n query: Resolver<TDef>;\n revalidate: (\n input?: TDef[\"input\"]\n ) => Promise<\n { revalidated: false; error: string } | { revalidated: true }\n >;\n }\n : TType extends \"mutation\"\n ? {\n mutate: Resolver<TDef>;\n }\n : TType extends \"subscription\"\n ? {\n subscribe: Resolver<TDef>;\n }\n : never;\n\nexport type NextAppDirDecorateRouterRecord<\n TRoot extends AnyRootTypes,\n TRecord extends RouterRecord\n> = {\n [TKey in keyof TRecord]: TRecord[TKey] extends infer $Value\n ? $Value extends AnyProcedure\n ? DecorateProcedureServer<\n $Value[\"_def\"][\"type\"],\n {\n input: inferProcedureInput<$Value>;\n output: inferTransformedProcedureOutput<TRoot, $Value>;\n errorShape: TRoot[\"errorShape\"];\n transformer: TRoot[\"transformer\"];\n featureFlags: FeatureFlags;\n }\n >\n : $Value extends RouterRecord\n ? NextAppDirDecorateRouterRecord<TRoot, $Value>\n : never\n : never;\n};\n\n/**\n * This client invokes procedures directly on the server without fetching over HTTP.\n *\n * @param cookies - A function that returns the cookies\n * @param router - The router created by the user\n * @param createContext - An optional function to generate a context\n */\nexport function createTRPCServer<\n TRouter extends AnyTRPCRouter,\n TContext extends inferRouterContext<TRouter> = inferRouterContext<TRouter>\n>(\n cookies: () => Promise<ReadonlyRequestCookies>,\n router: TRouter,\n createContext: () => MaybePromise<TContext> = () => ({}) as TContext\n): NextAppDirDecorateRouterRecord<\n TRouter[\"_def\"][\"_config\"][\"$types\"],\n TRouter[\"_def\"][\"record\"]\n> {\n return experimental_createTRPCNextAppDirServer<TRouter>({\n config() {\n return {\n links: [\n loggerLink({\n enabled: _op => true\n }),\n experimental_nextCacheLink({\n // requests are cached for 5 seconds\n revalidate: 5,\n router,\n transformer,\n createContext: async () => {\n const context = await Promise.resolve(createContext());\n\n context.headers ??= {};\n context.headers[\"x-trpc-source\"] = \"rsc-invoke\";\n context.headers.cookie = (await cookies()).toString();\n\n return context;\n }\n })\n ]\n };\n }\n });\n}\n\nexport {\n experimental_notFound as notFound,\n experimental_redirect as redirect\n} from \"@trpc/server/adapters/next-app-dir\";\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"server.mjs","names":[],"sources":["../src/server.ts"],"sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Stryke\n\n This code was released as part of the Stryke project. Stryke\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/stryke.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/stryke\n Documentation: https://docs.stormsoftware.com/projects/stryke\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\n/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Stryke\n\n This code was released as part of the Stryke project. Stryke\n is maintained by Storm Software under the Apache-2.0 License, and is\n free for commercial and private use. For more information, please visit\n our licensing page.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/stryke\n Documentation: https://stormsoftware.com/projects/stryke/docs\n Contact: https://stormsoftware.com/contact\n License: https://stormsoftware.com/projects/stryke/license\n\n ------------------------------------------------------------------- */\n\nimport type { MaybePromise } from \"@stryke/types\";\nimport type { Resolver } from \"@trpc/client\";\nimport { loggerLink } from \"@trpc/client\";\nimport { experimental_nextCacheLink } from \"@trpc/next/app-dir/links/nextCache\";\nimport { experimental_createTRPCNextAppDirServer } from \"@trpc/next/app-dir/server\";\nimport type { AnyTRPCRouter, inferRouterContext } from \"@trpc/server\";\nimport type {\n AnyProcedure,\n AnyRootTypes,\n inferProcedureInput,\n inferTransformedProcedureOutput,\n ProcedureType,\n RouterRecord\n} from \"@trpc/server/unstable-core-do-not-import\";\nimport type { FeatureFlags, ResolverDef } from \"@trpc/tanstack-react-query\";\nimport type { ReadonlyRequestCookies } from \"next/dist/server/web/spec-extension/adapters/request-cookies\";\nimport { transformer } from \"./shared\";\n\nexport type DecorateProcedureServer<\n TType extends ProcedureType,\n TDef extends ResolverDef\n> = TType extends \"query\"\n ? {\n query: Resolver<TDef>;\n revalidate: (\n input?: TDef[\"input\"]\n ) => Promise<\n { revalidated: false; error: string } | { revalidated: true }\n >;\n }\n : TType extends \"mutation\"\n ? {\n mutate: Resolver<TDef>;\n }\n : TType extends \"subscription\"\n ? {\n subscribe: Resolver<TDef>;\n }\n : never;\n\nexport type NextAppDirDecorateRouterRecord<\n TRoot extends AnyRootTypes,\n TRecord extends RouterRecord\n> = {\n [TKey in keyof TRecord]: TRecord[TKey] extends infer $Value\n ? $Value extends AnyProcedure\n ? DecorateProcedureServer<\n $Value[\"_def\"][\"type\"],\n {\n input: inferProcedureInput<$Value>;\n output: inferTransformedProcedureOutput<TRoot, $Value>;\n errorShape: TRoot[\"errorShape\"];\n transformer: TRoot[\"transformer\"];\n featureFlags: FeatureFlags;\n }\n >\n : $Value extends RouterRecord\n ? NextAppDirDecorateRouterRecord<TRoot, $Value>\n : never\n : never;\n};\n\n/**\n * This client invokes procedures directly on the server without fetching over HTTP.\n *\n * @param cookies - A function that returns the cookies\n * @param router - The router created by the user\n * @param createContext - An optional function to generate a context\n */\nexport function createTRPCServer<\n TRouter extends AnyTRPCRouter,\n TContext extends inferRouterContext<TRouter> = inferRouterContext<TRouter>\n>(\n cookies: () => Promise<ReadonlyRequestCookies>,\n router: TRouter,\n createContext: () => MaybePromise<TContext> = () => ({}) as TContext\n): NextAppDirDecorateRouterRecord<\n TRouter[\"_def\"][\"_config\"][\"$types\"],\n TRouter[\"_def\"][\"record\"]\n> {\n return experimental_createTRPCNextAppDirServer<TRouter>({\n config() {\n return {\n links: [\n loggerLink({\n enabled: _op => true\n }),\n experimental_nextCacheLink({\n // requests are cached for 5 seconds\n revalidate: 5,\n router,\n transformer,\n createContext: async () => {\n const context = await Promise.resolve(createContext());\n\n context.headers ??= {};\n context.headers[\"x-trpc-source\"] = \"rsc-invoke\";\n context.headers.cookie = (await cookies()).toString();\n\n return context;\n }\n })\n ]\n };\n }\n });\n}\n\nexport {\n experimental_notFound as notFound,\n experimental_redirect as redirect\n} from \"@trpc/server/adapters/next-app-dir\";\n"],"mappings":";;;;;;;;;;;;;;AAwGA,SAAgB,iBAId,SACA,QACA,uBAAqD,EAAE,GAIvD;AACA,QAAO,wCAAiD,EACtD,SAAS;AACP,SAAO,EACL,OAAO,CACL,WAAW,EACT,UAAS,QAAO,MACjB,CAAC,EACF,2BAA2B;GAEzB,YAAY;GACZ;GACA;GACA,eAAe,YAAY;IACzB,MAAM,UAAU,MAAM,QAAQ,QAAQ,eAAe,CAAC;AAEtD,YAAQ,YAAY,EAAE;AACtB,YAAQ,QAAQ,mBAAmB;AACnC,YAAQ,QAAQ,UAAU,MAAM,SAAS,EAAE,UAAU;AAErD,WAAO;;GAEV,CAAC,CACH,EACF;IAEJ,CAAC"}
|
package/dist/shared.cjs
CHANGED
|
@@ -9,11 +9,6 @@ let superjson = require("superjson");
|
|
|
9
9
|
superjson = require_runtime.__toESM(superjson, 1);
|
|
10
10
|
|
|
11
11
|
//#region src/shared.ts
|
|
12
|
-
var shared_exports = /* @__PURE__ */ require_runtime.__exportAll({
|
|
13
|
-
createQueryClient: () => createQueryClient,
|
|
14
|
-
getTRPCServerUrl: () => getTRPCServerUrl,
|
|
15
|
-
transformer: () => transformer
|
|
16
|
-
});
|
|
17
12
|
function getTRPCServerUrl(baseUrl, version = 1) {
|
|
18
13
|
return (0, _stryke_path_join_paths.joinPaths)(typeof baseUrl === "string" ? baseUrl : baseUrl.host || "", "api", version ? `v${version}` : "", "trpc");
|
|
19
14
|
}
|
|
@@ -46,10 +41,4 @@ const createQueryClient = (queryClientConfig = {}) => new _tanstack_react_query.
|
|
|
46
41
|
//#endregion
|
|
47
42
|
exports.createQueryClient = createQueryClient;
|
|
48
43
|
exports.getTRPCServerUrl = getTRPCServerUrl;
|
|
49
|
-
Object.defineProperty(exports, 'shared_exports', {
|
|
50
|
-
enumerable: true,
|
|
51
|
-
get: function () {
|
|
52
|
-
return shared_exports;
|
|
53
|
-
}
|
|
54
|
-
});
|
|
55
44
|
exports.transformer = transformer;
|
package/dist/shared.mjs
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { __exportAll } from "./_virtual/_rolldown/runtime.mjs";
|
|
2
1
|
import defu from "defu";
|
|
3
2
|
import { Temporal } from "@js-temporal/polyfill";
|
|
4
3
|
import { joinPaths } from "@stryke/path/join-paths";
|
|
@@ -6,11 +5,6 @@ import { QueryClient, defaultShouldDehydrateQuery } from "@tanstack/react-query"
|
|
|
6
5
|
import superjson from "superjson";
|
|
7
6
|
|
|
8
7
|
//#region src/shared.ts
|
|
9
|
-
var shared_exports = /* @__PURE__ */ __exportAll({
|
|
10
|
-
createQueryClient: () => createQueryClient,
|
|
11
|
-
getTRPCServerUrl: () => getTRPCServerUrl,
|
|
12
|
-
transformer: () => transformer
|
|
13
|
-
});
|
|
14
8
|
function getTRPCServerUrl(baseUrl, version = 1) {
|
|
15
9
|
return joinPaths(typeof baseUrl === "string" ? baseUrl : baseUrl.host || "", "api", version ? `v${version}` : "", "trpc");
|
|
16
10
|
}
|
|
@@ -41,5 +35,5 @@ const createQueryClient = (queryClientConfig = {}) => new QueryClient(defu(query
|
|
|
41
35
|
} }));
|
|
42
36
|
|
|
43
37
|
//#endregion
|
|
44
|
-
export { createQueryClient, getTRPCServerUrl,
|
|
38
|
+
export { createQueryClient, getTRPCServerUrl, transformer };
|
|
45
39
|
//# sourceMappingURL=shared.mjs.map
|
package/dist/shared.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared.mjs","names":[],"sources":["../src/shared.ts"],"sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Stryke\n\n This code was released as part of the Stryke project. Stryke\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/stryke.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/stryke\n Documentation: https://docs.stormsoftware.com/projects/stryke\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport { Temporal } from \"@js-temporal/polyfill\";\nimport { joinPaths } from \"@stryke/path/join-paths\";\nimport type { StormURLInterface } from \"@stryke/url/types\";\nimport type { QueryClientConfig } from \"@tanstack/react-query\";\nimport {\n defaultShouldDehydrateQuery,\n QueryClient\n} from \"@tanstack/react-query\";\nimport type { DataTransformer } from \"@trpc/server/unstable-core-do-not-import\";\nimport defu from \"defu\";\nimport superjson from \"superjson\";\n\nexport function getTRPCServerUrl(\n baseUrl: string | StormURLInterface,\n version: number | null = 1\n) {\n return joinPaths(\n typeof baseUrl === \"string\" ? baseUrl : baseUrl.host || \"\",\n \"api\",\n version ? `v${version}` : \"\",\n \"trpc\"\n );\n}\n\nsuperjson.registerCustom(\n {\n isApplicable: (v): v is Temporal.PlainDate =>\n v instanceof Temporal.PlainDate,\n serialize: v => v.toJSON(),\n deserialize: v => Temporal.PlainDate.from(v)\n },\n \"Temporal.PlainDate\"\n);\n\nsuperjson.registerCustom(\n {\n isApplicable: (v): v is Temporal.PlainDateTime =>\n v instanceof Temporal.PlainDateTime,\n serialize: v => v.toJSON(),\n deserialize: v => Temporal.PlainDateTime.from(v)\n },\n \"Temporal.PlainDateTime\"\n);\n\nexport const transformer = superjson as DataTransformer;\n\n/**\n * Create a TRPC Tanstack Query client.\n *\n * @param queryClientConfig - The query client config\n * @returns The TRPC Tanstack Query client\n */\nexport const createQueryClient = (\n queryClientConfig: Partial<QueryClientConfig> = {}\n) =>\n new QueryClient(\n defu(queryClientConfig, {\n defaultOptions: {\n queries: {\n // Since queries are prefetched on the server, we set a stale time so that\n // queries aren't immediately re-fetched on the client\n staleTime: 1000 * 30\n },\n dehydrate: {\n // include pending queries in dehydration\n // this allows us to prefetch in RSC and\n // send promises over the RSC boundary\n shouldDehydrateQuery: (query: any) =>\n defaultShouldDehydrateQuery(query) ||\n query.state.status === \"pending\",\n // eslint-disable-next-line ts/unbound-method\n serializeData: transformer.serialize\n },\n hydrate: {\n // eslint-disable-next-line ts/unbound-method\n deserializeData: transformer.deserialize\n }\n }\n })\n );\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"shared.mjs","names":[],"sources":["../src/shared.ts"],"sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Stryke\n\n This code was released as part of the Stryke project. Stryke\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/stryke.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/stryke\n Documentation: https://docs.stormsoftware.com/projects/stryke\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport { Temporal } from \"@js-temporal/polyfill\";\nimport { joinPaths } from \"@stryke/path/join-paths\";\nimport type { StormURLInterface } from \"@stryke/url/types\";\nimport type { QueryClientConfig } from \"@tanstack/react-query\";\nimport {\n defaultShouldDehydrateQuery,\n QueryClient\n} from \"@tanstack/react-query\";\nimport type { DataTransformer } from \"@trpc/server/unstable-core-do-not-import\";\nimport defu from \"defu\";\nimport superjson from \"superjson\";\n\nexport function getTRPCServerUrl(\n baseUrl: string | StormURLInterface,\n version: number | null = 1\n) {\n return joinPaths(\n typeof baseUrl === \"string\" ? baseUrl : baseUrl.host || \"\",\n \"api\",\n version ? `v${version}` : \"\",\n \"trpc\"\n );\n}\n\nsuperjson.registerCustom(\n {\n isApplicable: (v): v is Temporal.PlainDate =>\n v instanceof Temporal.PlainDate,\n serialize: v => v.toJSON(),\n deserialize: v => Temporal.PlainDate.from(v)\n },\n \"Temporal.PlainDate\"\n);\n\nsuperjson.registerCustom(\n {\n isApplicable: (v): v is Temporal.PlainDateTime =>\n v instanceof Temporal.PlainDateTime,\n serialize: v => v.toJSON(),\n deserialize: v => Temporal.PlainDateTime.from(v)\n },\n \"Temporal.PlainDateTime\"\n);\n\nexport const transformer = superjson as DataTransformer;\n\n/**\n * Create a TRPC Tanstack Query client.\n *\n * @param queryClientConfig - The query client config\n * @returns The TRPC Tanstack Query client\n */\nexport const createQueryClient = (\n queryClientConfig: Partial<QueryClientConfig> = {}\n) =>\n new QueryClient(\n defu(queryClientConfig, {\n defaultOptions: {\n queries: {\n // Since queries are prefetched on the server, we set a stale time so that\n // queries aren't immediately re-fetched on the client\n staleTime: 1000 * 30\n },\n dehydrate: {\n // include pending queries in dehydration\n // this allows us to prefetch in RSC and\n // send promises over the RSC boundary\n shouldDehydrateQuery: (query: any) =>\n defaultShouldDehydrateQuery(query) ||\n query.state.status === \"pending\",\n // eslint-disable-next-line ts/unbound-method\n serializeData: transformer.serialize\n },\n hydrate: {\n // eslint-disable-next-line ts/unbound-method\n deserializeData: transformer.deserialize\n }\n }\n })\n );\n"],"mappings":";;;;;;;AA8BA,SAAgB,iBACd,SACA,UAAyB,GACzB;AACA,QAAO,UACL,OAAO,YAAY,WAAW,UAAU,QAAQ,QAAQ,IACxD,OACA,UAAU,IAAI,YAAY,IAC1B,OACD;;AAGH,UAAU,eACR;CACE,eAAe,MACb,aAAa,SAAS;CACxB,YAAW,MAAK,EAAE,QAAQ;CAC1B,cAAa,MAAK,SAAS,UAAU,KAAK,EAAE;CAC7C,EACD,qBACD;AAED,UAAU,eACR;CACE,eAAe,MACb,aAAa,SAAS;CACxB,YAAW,MAAK,EAAE,QAAQ;CAC1B,cAAa,MAAK,SAAS,cAAc,KAAK,EAAE;CACjD,EACD,yBACD;AAED,MAAa,cAAc;;;;;;;AAQ3B,MAAa,qBACX,oBAAgD,EAAE,KAElD,IAAI,YACF,KAAK,mBAAmB,EACtB,gBAAgB;CACd,SAAS,EAGP,WAAW,MAAO,IACnB;CACD,WAAW;EAIT,uBAAuB,UACrB,4BAA4B,MAAM,IAClC,MAAM,MAAM,WAAW;EAEzB,eAAe,YAAY;EAC5B;CACD,SAAS,EAEP,iBAAiB,YAAY,aAC9B;CACF,EACF,CAAC,CACH"}
|
|
@@ -1,18 +1,7 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
2
|
-
const require_runtime = require('../_virtual/_rolldown/runtime.cjs');
|
|
3
2
|
const require_shield_rules = require('./rules.cjs');
|
|
4
3
|
|
|
5
4
|
//#region src/shield/constructors.ts
|
|
6
|
-
var constructors_exports = /* @__PURE__ */ require_runtime.__exportAll({
|
|
7
|
-
allow: () => allow,
|
|
8
|
-
and: () => and,
|
|
9
|
-
chain: () => chain,
|
|
10
|
-
deny: () => deny,
|
|
11
|
-
not: () => not,
|
|
12
|
-
or: () => or,
|
|
13
|
-
race: () => race,
|
|
14
|
-
rule: () => rule
|
|
15
|
-
});
|
|
16
5
|
/**
|
|
17
6
|
* Wraps a function into a Rule class. This way we can identify rules
|
|
18
7
|
* once we start generating middleware from our ruleTree.
|
|
@@ -91,12 +80,6 @@ const deny = new require_shield_rules.RuleFalse();
|
|
|
91
80
|
exports.allow = allow;
|
|
92
81
|
exports.and = and;
|
|
93
82
|
exports.chain = chain;
|
|
94
|
-
Object.defineProperty(exports, 'constructors_exports', {
|
|
95
|
-
enumerable: true,
|
|
96
|
-
get: function () {
|
|
97
|
-
return constructors_exports;
|
|
98
|
-
}
|
|
99
|
-
});
|
|
100
83
|
exports.deny = deny;
|
|
101
84
|
exports.not = not;
|
|
102
85
|
exports.or = or;
|
|
@@ -1,17 +1,6 @@
|
|
|
1
|
-
import { __exportAll } from "../_virtual/_rolldown/runtime.mjs";
|
|
2
1
|
import { Rule, RuleAnd, RuleChain, RuleFalse, RuleNot, RuleOr, RuleRace, RuleTrue } from "./rules.mjs";
|
|
3
2
|
|
|
4
3
|
//#region src/shield/constructors.ts
|
|
5
|
-
var constructors_exports = /* @__PURE__ */ __exportAll({
|
|
6
|
-
allow: () => allow,
|
|
7
|
-
and: () => and,
|
|
8
|
-
chain: () => chain,
|
|
9
|
-
deny: () => deny,
|
|
10
|
-
not: () => not,
|
|
11
|
-
or: () => or,
|
|
12
|
-
race: () => race,
|
|
13
|
-
rule: () => rule
|
|
14
|
-
});
|
|
15
4
|
/**
|
|
16
5
|
* Wraps a function into a Rule class. This way we can identify rules
|
|
17
6
|
* once we start generating middleware from our ruleTree.
|
|
@@ -87,5 +76,5 @@ const allow = new RuleTrue();
|
|
|
87
76
|
const deny = new RuleFalse();
|
|
88
77
|
|
|
89
78
|
//#endregion
|
|
90
|
-
export { allow, and, chain,
|
|
79
|
+
export { allow, and, chain, deny, not, or, race, rule };
|
|
91
80
|
//# sourceMappingURL=constructors.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constructors.mjs","names":[],"sources":["../../src/shield/constructors.ts"],"sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Stryke\n\n This code was released as part of the Stryke project. Stryke\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/stryke.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/stryke\n Documentation: https://docs.stormsoftware.com/projects/stryke\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport {\n Rule,\n RuleAnd,\n RuleChain,\n RuleFalse,\n RuleNot,\n RuleOr,\n RuleRace,\n RuleTrue\n} from \"./rules\";\nimport type {\n RuleConstructorOptionsInterface,\n RuleFunctionInterface,\n ShieldRule\n} from \"./types\";\n\n/**\n * Wraps a function into a Rule class. This way we can identify rules\n * once we start generating middleware from our ruleTree.\n *\n * ```\n * // 1.\n * const auth = rule()(async (ctx, type, path, input, rawInput, options) => {\n * return true\n * })\n *\n * // 2.\n * const auth = rule('name')(async (ctx, type, path, input, rawInput, options) => {\n * return true\n * })\n *\n * // 3.\n * const auth = rule({\n * name: 'name',\n * })(async (ctx, type, path, input, rawInput, options) => {\n * return true\n * })\n * ```\n */\nexport const rule =\n <TContext extends Record<string, any>>(\n name?: string,\n options?: RuleConstructorOptionsInterface\n ) =>\n (func: RuleFunctionInterface<TContext>): Rule<TContext> => {\n if (typeof name === \"object\") {\n options = name;\n name = Math.random().toString();\n } else if (typeof name === \"string\") {\n options = options ?? {};\n } else {\n name = Math.random().toString();\n options = {};\n }\n\n // @ts-ignore\n return new Rule(name, func, {});\n };\n\n/**\n * Logical operator and serves as a wrapper for and operation.\n */\nexport const and = <TContext extends Record<string, any>>(\n ...rules: ShieldRule<TContext>[]\n): RuleAnd<TContext> => {\n return new RuleAnd(rules);\n};\n\n/**\n * Logical operator and serves as a wrapper for and operation.\n */\nexport const chain = <TContext extends Record<string, any>>(\n ...rules: ShieldRule<TContext>[]\n): RuleChain<TContext> => {\n return new RuleChain(rules);\n};\n\n/**\n * Logical operator and serves as a wrapper for and operation.\n */\nexport const race = <TContext extends Record<string, any>>(\n ...rules: ShieldRule<TContext>[]\n): RuleRace<TContext> => {\n return new RuleRace(rules);\n};\n\n/**\n * Logical operator or serves as a wrapper for or operation.\n */\nexport const or = <TContext extends Record<string, any>>(\n ...rules: ShieldRule<TContext>[]\n): RuleOr<TContext> => {\n return new RuleOr(rules);\n};\n\n/**\n * Logical operator not serves as a wrapper for not operation.\n */\nexport const not = <TContext extends Record<string, any>>(\n rule: ShieldRule<TContext>,\n error?: string | Error\n): RuleNot<TContext> => {\n if (typeof error === \"string\") return new RuleNot(rule, new Error(error));\n return new RuleNot(rule, error);\n};\n\n/**\n * Allow queries.\n */\nexport const allow = new RuleTrue();\n\n/**\n * Deny queries.\n */\nexport const deny = new RuleFalse();\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"constructors.mjs","names":[],"sources":["../../src/shield/constructors.ts"],"sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Stryke\n\n This code was released as part of the Stryke project. Stryke\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/stryke.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/stryke\n Documentation: https://docs.stormsoftware.com/projects/stryke\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport {\n Rule,\n RuleAnd,\n RuleChain,\n RuleFalse,\n RuleNot,\n RuleOr,\n RuleRace,\n RuleTrue\n} from \"./rules\";\nimport type {\n RuleConstructorOptionsInterface,\n RuleFunctionInterface,\n ShieldRule\n} from \"./types\";\n\n/**\n * Wraps a function into a Rule class. This way we can identify rules\n * once we start generating middleware from our ruleTree.\n *\n * ```\n * // 1.\n * const auth = rule()(async (ctx, type, path, input, rawInput, options) => {\n * return true\n * })\n *\n * // 2.\n * const auth = rule('name')(async (ctx, type, path, input, rawInput, options) => {\n * return true\n * })\n *\n * // 3.\n * const auth = rule({\n * name: 'name',\n * })(async (ctx, type, path, input, rawInput, options) => {\n * return true\n * })\n * ```\n */\nexport const rule =\n <TContext extends Record<string, any>>(\n name?: string,\n options?: RuleConstructorOptionsInterface\n ) =>\n (func: RuleFunctionInterface<TContext>): Rule<TContext> => {\n if (typeof name === \"object\") {\n options = name;\n name = Math.random().toString();\n } else if (typeof name === \"string\") {\n options = options ?? {};\n } else {\n name = Math.random().toString();\n options = {};\n }\n\n // @ts-ignore\n return new Rule(name, func, {});\n };\n\n/**\n * Logical operator and serves as a wrapper for and operation.\n */\nexport const and = <TContext extends Record<string, any>>(\n ...rules: ShieldRule<TContext>[]\n): RuleAnd<TContext> => {\n return new RuleAnd(rules);\n};\n\n/**\n * Logical operator and serves as a wrapper for and operation.\n */\nexport const chain = <TContext extends Record<string, any>>(\n ...rules: ShieldRule<TContext>[]\n): RuleChain<TContext> => {\n return new RuleChain(rules);\n};\n\n/**\n * Logical operator and serves as a wrapper for and operation.\n */\nexport const race = <TContext extends Record<string, any>>(\n ...rules: ShieldRule<TContext>[]\n): RuleRace<TContext> => {\n return new RuleRace(rules);\n};\n\n/**\n * Logical operator or serves as a wrapper for or operation.\n */\nexport const or = <TContext extends Record<string, any>>(\n ...rules: ShieldRule<TContext>[]\n): RuleOr<TContext> => {\n return new RuleOr(rules);\n};\n\n/**\n * Logical operator not serves as a wrapper for not operation.\n */\nexport const not = <TContext extends Record<string, any>>(\n rule: ShieldRule<TContext>,\n error?: string | Error\n): RuleNot<TContext> => {\n if (typeof error === \"string\") return new RuleNot(rule, new Error(error));\n return new RuleNot(rule, error);\n};\n\n/**\n * Allow queries.\n */\nexport const allow = new RuleTrue();\n\n/**\n * Deny queries.\n */\nexport const deny = new RuleFalse();\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAyDA,MAAa,QAET,MACA,aAED,SAA0D;AACzD,KAAI,OAAO,SAAS,UAAU;AAC5B,YAAU;AACV,SAAO,KAAK,QAAQ,CAAC,UAAU;YACtB,OAAO,SAAS,SACzB,WAAU,WAAW,EAAE;MAClB;AACL,SAAO,KAAK,QAAQ,CAAC,UAAU;AAC/B,YAAU,EAAE;;AAId,QAAO,IAAI,KAAK,MAAM,MAAM,EAAE,CAAC;;;;;AAMnC,MAAa,OACX,GAAG,UACmB;AACtB,QAAO,IAAI,QAAQ,MAAM;;;;;AAM3B,MAAa,SACX,GAAG,UACqB;AACxB,QAAO,IAAI,UAAU,MAAM;;;;;AAM7B,MAAa,QACX,GAAG,UACoB;AACvB,QAAO,IAAI,SAAS,MAAM;;;;;AAM5B,MAAa,MACX,GAAG,UACkB;AACrB,QAAO,IAAI,OAAO,MAAM;;;;;AAM1B,MAAa,OACX,MACA,UACsB;AACtB,KAAI,OAAO,UAAU,SAAU,QAAO,IAAI,QAAQ,MAAM,IAAI,MAAM,MAAM,CAAC;AACzE,QAAO,IAAI,QAAQ,MAAM,MAAM;;;;;AAMjC,MAAa,QAAQ,IAAI,UAAU;;;;AAKnC,MAAa,OAAO,IAAI,WAAW"}
|
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
2
|
-
const require_runtime = require('../_virtual/_rolldown/runtime.cjs');
|
|
3
2
|
|
|
4
3
|
//#region src/shield/generator.ts
|
|
5
|
-
var generator_exports = /* @__PURE__ */ require_runtime.__exportAll({ generateMiddlewareFromRuleTree: () => generateMiddlewareFromRuleTree });
|
|
6
4
|
/**
|
|
7
5
|
* Generates middleware from given rules.
|
|
8
6
|
*/
|
|
@@ -28,10 +26,4 @@ function generateMiddlewareFromRuleTree(ruleTree, options) {
|
|
|
28
26
|
}
|
|
29
27
|
|
|
30
28
|
//#endregion
|
|
31
|
-
exports.generateMiddlewareFromRuleTree = generateMiddlewareFromRuleTree;
|
|
32
|
-
Object.defineProperty(exports, 'generator_exports', {
|
|
33
|
-
enumerable: true,
|
|
34
|
-
get: function () {
|
|
35
|
-
return generator_exports;
|
|
36
|
-
}
|
|
37
|
-
});
|
|
29
|
+
exports.generateMiddlewareFromRuleTree = generateMiddlewareFromRuleTree;
|
|
@@ -1,7 +1,4 @@
|
|
|
1
|
-
import { __exportAll } from "../_virtual/_rolldown/runtime.mjs";
|
|
2
|
-
|
|
3
1
|
//#region src/shield/generator.ts
|
|
4
|
-
var generator_exports = /* @__PURE__ */ __exportAll({ generateMiddlewareFromRuleTree: () => generateMiddlewareFromRuleTree });
|
|
5
2
|
/**
|
|
6
3
|
* Generates middleware from given rules.
|
|
7
4
|
*/
|
|
@@ -27,5 +24,5 @@ function generateMiddlewareFromRuleTree(ruleTree, options) {
|
|
|
27
24
|
}
|
|
28
25
|
|
|
29
26
|
//#endregion
|
|
30
|
-
export { generateMiddlewareFromRuleTree
|
|
27
|
+
export { generateMiddlewareFromRuleTree };
|
|
31
28
|
//# sourceMappingURL=generator.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generator.mjs","names":[],"sources":["../../src/shield/generator.ts"],"sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Stryke\n\n This code was released as part of the Stryke project. Stryke\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/stryke.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/stryke\n Documentation: https://docs.stormsoftware.com/projects/stryke\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport type { IRules, OptionsInterface, ShieldRule } from \"./types\";\n\n/**\n * Generates middleware from given rules.\n */\nexport function generateMiddlewareFromRuleTree<\n TContext extends Record<string, unknown>\n>(ruleTree: IRules<TContext>, options: OptionsInterface<TContext>) {\n return async ({\n next,\n ctx,\n type,\n path,\n input,\n rawInput\n }: {\n next: () => Promise<any>;\n ctx: TContext;\n type: string;\n path: string;\n input: { [name: string]: any };\n rawInput: unknown;\n }) => {\n const opWithPath: Array<string> = path.split(\".\");\n const opName: string = opWithPath[opWithPath.length - 1]!;\n const keys = Object.keys(ruleTree);\n let rule: ShieldRule<TContext> | undefined;\n if (keys.includes(\"query\") || keys.includes(\"mutation\")) {\n // @ts-ignore\n rule = ruleTree?.[type]?.[opName];\n } else {\n const namespace = opWithPath[0];\n\n const tree = (ruleTree as Record<string, any>)[namespace!];\n if (tree?.[type]?.[opName]) {\n rule = tree?.[type]?.[opName];\n }\n }\n rule = rule ?? options.fallbackRule;\n\n if (rule) {\n return rule\n ?.resolve(ctx, type, path, input, rawInput, options)\n .then(async result => {\n if (result instanceof Error) {\n throw result;\n }\n if (!result) {\n throw options.fallbackError;\n }\n\n return next();\n });\n }\n\n return next();\n };\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"generator.mjs","names":[],"sources":["../../src/shield/generator.ts"],"sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Stryke\n\n This code was released as part of the Stryke project. Stryke\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/stryke.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/stryke\n Documentation: https://docs.stormsoftware.com/projects/stryke\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport type { IRules, OptionsInterface, ShieldRule } from \"./types\";\n\n/**\n * Generates middleware from given rules.\n */\nexport function generateMiddlewareFromRuleTree<\n TContext extends Record<string, unknown>\n>(ruleTree: IRules<TContext>, options: OptionsInterface<TContext>) {\n return async ({\n next,\n ctx,\n type,\n path,\n input,\n rawInput\n }: {\n next: () => Promise<any>;\n ctx: TContext;\n type: string;\n path: string;\n input: { [name: string]: any };\n rawInput: unknown;\n }) => {\n const opWithPath: Array<string> = path.split(\".\");\n const opName: string = opWithPath[opWithPath.length - 1]!;\n const keys = Object.keys(ruleTree);\n let rule: ShieldRule<TContext> | undefined;\n if (keys.includes(\"query\") || keys.includes(\"mutation\")) {\n // @ts-ignore\n rule = ruleTree?.[type]?.[opName];\n } else {\n const namespace = opWithPath[0];\n\n const tree = (ruleTree as Record<string, any>)[namespace!];\n if (tree?.[type]?.[opName]) {\n rule = tree?.[type]?.[opName];\n }\n }\n rule = rule ?? options.fallbackRule;\n\n if (rule) {\n return rule\n ?.resolve(ctx, type, path, input, rawInput, options)\n .then(async result => {\n if (result instanceof Error) {\n throw result;\n }\n if (!result) {\n throw options.fallbackError;\n }\n\n return next();\n });\n }\n\n return next();\n };\n}\n"],"mappings":";;;;AAuBA,SAAgB,+BAEd,UAA4B,SAAqC;AACjE,QAAO,OAAO,EACZ,MACA,KACA,MACA,MACA,OACA,eAQI;EACJ,MAAM,aAA4B,KAAK,MAAM,IAAI;EACjD,MAAM,SAAiB,WAAW,WAAW,SAAS;EACtD,MAAM,OAAO,OAAO,KAAK,SAAS;EAClC,IAAI;AACJ,MAAI,KAAK,SAAS,QAAQ,IAAI,KAAK,SAAS,WAAW,CAErD,QAAO,WAAW,QAAQ;OACrB;GAGL,MAAM,OAAQ,SAFI,WAAW;AAG7B,OAAI,OAAO,QAAQ,QACjB,QAAO,OAAO,QAAQ;;AAG1B,SAAO,QAAQ,QAAQ;AAEvB,MAAI,KACF,QAAO,MACH,QAAQ,KAAK,MAAM,MAAM,OAAO,UAAU,QAAQ,CACnD,KAAK,OAAM,WAAU;AACpB,OAAI,kBAAkB,MACpB,OAAM;AAER,OAAI,CAAC,OACH,OAAM,QAAQ;AAGhB,UAAO,MAAM;IACb;AAGN,SAAO,MAAM"}
|
package/dist/shield/index.cjs
CHANGED
|
@@ -1,22 +1,7 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
2
|
-
const require_runtime = require('../_virtual/_rolldown/runtime.cjs');
|
|
3
2
|
const require_shield_constructors = require('./constructors.cjs');
|
|
4
3
|
const require_shield_shield = require('./shield.cjs');
|
|
5
4
|
|
|
6
|
-
//#region src/shield/index.ts
|
|
7
|
-
var shield_exports = /* @__PURE__ */ require_runtime.__exportAll({
|
|
8
|
-
allow: () => require_shield_constructors.allow,
|
|
9
|
-
and: () => require_shield_constructors.and,
|
|
10
|
-
chain: () => require_shield_constructors.chain,
|
|
11
|
-
deny: () => require_shield_constructors.deny,
|
|
12
|
-
not: () => require_shield_constructors.not,
|
|
13
|
-
or: () => require_shield_constructors.or,
|
|
14
|
-
race: () => require_shield_constructors.race,
|
|
15
|
-
rule: () => require_shield_constructors.rule,
|
|
16
|
-
shield: () => require_shield_shield.shield
|
|
17
|
-
});
|
|
18
|
-
|
|
19
|
-
//#endregion
|
|
20
5
|
exports.allow = require_shield_constructors.allow;
|
|
21
6
|
exports.and = require_shield_constructors.and;
|
|
22
7
|
exports.chain = require_shield_constructors.chain;
|
|
@@ -25,10 +10,4 @@ exports.not = require_shield_constructors.not;
|
|
|
25
10
|
exports.or = require_shield_constructors.or;
|
|
26
11
|
exports.race = require_shield_constructors.race;
|
|
27
12
|
exports.rule = require_shield_constructors.rule;
|
|
28
|
-
exports.shield = require_shield_shield.shield;
|
|
29
|
-
Object.defineProperty(exports, 'shield_exports', {
|
|
30
|
-
enumerable: true,
|
|
31
|
-
get: function () {
|
|
32
|
-
return shield_exports;
|
|
33
|
-
}
|
|
34
|
-
});
|
|
13
|
+
exports.shield = require_shield_shield.shield;
|
package/dist/shield/index.mjs
CHANGED
|
@@ -1,20 +1,4 @@
|
|
|
1
|
-
import { __exportAll } from "../_virtual/_rolldown/runtime.mjs";
|
|
2
1
|
import { allow, and, chain, deny, not, or, race, rule } from "./constructors.mjs";
|
|
3
2
|
import { shield } from "./shield.mjs";
|
|
4
3
|
|
|
5
|
-
|
|
6
|
-
var shield_exports = /* @__PURE__ */ __exportAll({
|
|
7
|
-
allow: () => allow,
|
|
8
|
-
and: () => and,
|
|
9
|
-
chain: () => chain,
|
|
10
|
-
deny: () => deny,
|
|
11
|
-
not: () => not,
|
|
12
|
-
or: () => or,
|
|
13
|
-
race: () => race,
|
|
14
|
-
rule: () => rule,
|
|
15
|
-
shield: () => shield
|
|
16
|
-
});
|
|
17
|
-
|
|
18
|
-
//#endregion
|
|
19
|
-
export { allow, and, chain, deny, not, or, race, rule, shield, shield_exports };
|
|
20
|
-
//# sourceMappingURL=index.mjs.map
|
|
4
|
+
export { allow, and, chain, deny, not, or, race, rule, shield };
|
package/dist/shield/rules.cjs
CHANGED
|
@@ -1,18 +1,6 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
2
|
-
const require_runtime = require('../_virtual/_rolldown/runtime.cjs');
|
|
3
2
|
|
|
4
3
|
//#region src/shield/rules.ts
|
|
5
|
-
var rules_exports = /* @__PURE__ */ require_runtime.__exportAll({
|
|
6
|
-
LogicRule: () => LogicRule,
|
|
7
|
-
Rule: () => Rule,
|
|
8
|
-
RuleAnd: () => RuleAnd,
|
|
9
|
-
RuleChain: () => RuleChain,
|
|
10
|
-
RuleFalse: () => RuleFalse,
|
|
11
|
-
RuleNot: () => RuleNot,
|
|
12
|
-
RuleOr: () => RuleOr,
|
|
13
|
-
RuleRace: () => RuleRace,
|
|
14
|
-
RuleTrue: () => RuleTrue
|
|
15
|
-
});
|
|
16
4
|
var Rule = class {
|
|
17
5
|
name;
|
|
18
6
|
func;
|
|
@@ -210,10 +198,4 @@ exports.RuleFalse = RuleFalse;
|
|
|
210
198
|
exports.RuleNot = RuleNot;
|
|
211
199
|
exports.RuleOr = RuleOr;
|
|
212
200
|
exports.RuleRace = RuleRace;
|
|
213
|
-
exports.RuleTrue = RuleTrue;
|
|
214
|
-
Object.defineProperty(exports, 'rules_exports', {
|
|
215
|
-
enumerable: true,
|
|
216
|
-
get: function () {
|
|
217
|
-
return rules_exports;
|
|
218
|
-
}
|
|
219
|
-
});
|
|
201
|
+
exports.RuleTrue = RuleTrue;
|
package/dist/shield/rules.mjs
CHANGED
|
@@ -1,17 +1,4 @@
|
|
|
1
|
-
import { __exportAll } from "../_virtual/_rolldown/runtime.mjs";
|
|
2
|
-
|
|
3
1
|
//#region src/shield/rules.ts
|
|
4
|
-
var rules_exports = /* @__PURE__ */ __exportAll({
|
|
5
|
-
LogicRule: () => LogicRule,
|
|
6
|
-
Rule: () => Rule,
|
|
7
|
-
RuleAnd: () => RuleAnd,
|
|
8
|
-
RuleChain: () => RuleChain,
|
|
9
|
-
RuleFalse: () => RuleFalse,
|
|
10
|
-
RuleNot: () => RuleNot,
|
|
11
|
-
RuleOr: () => RuleOr,
|
|
12
|
-
RuleRace: () => RuleRace,
|
|
13
|
-
RuleTrue: () => RuleTrue
|
|
14
|
-
});
|
|
15
2
|
var Rule = class {
|
|
16
3
|
name;
|
|
17
4
|
func;
|
|
@@ -201,5 +188,5 @@ var RuleFalse = class extends LogicRule {
|
|
|
201
188
|
};
|
|
202
189
|
|
|
203
190
|
//#endregion
|
|
204
|
-
export { LogicRule, Rule, RuleAnd, RuleChain, RuleFalse, RuleNot, RuleOr, RuleRace, RuleTrue
|
|
191
|
+
export { LogicRule, Rule, RuleAnd, RuleChain, RuleFalse, RuleNot, RuleOr, RuleRace, RuleTrue };
|
|
205
192
|
//# sourceMappingURL=rules.mjs.map
|