@stryke/trpc-next 0.5.24 → 0.5.32
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 +344 -0
- package/README.md +18 -9
- package/dist/action-handler-BZllk1iG.d.cts +25 -0
- package/dist/action-handler-BZllk1iG.d.cts.map +1 -0
- package/dist/action-handler-CVqV5Q9h.mjs +2 -0
- package/dist/action-handler-CVqV5Q9h.mjs.map +1 -0
- package/dist/action-handler-Dbtdj5f6.cjs +1 -0
- package/dist/action-handler-pGD2y48d.d.mts +25 -0
- package/dist/action-handler-pGD2y48d.d.mts.map +1 -0
- package/dist/action-handler.cjs +1 -21
- package/dist/action-handler.d.cts +2 -0
- package/dist/action-handler.d.mts +2 -0
- package/dist/action-handler.mjs +1 -1
- package/dist/base-CqjEnYV3.d.mts +6 -0
- package/dist/base-CqjEnYV3.d.mts.map +1 -0
- package/dist/base-DPgDjFaD.d.cts +6 -0
- package/dist/base-DPgDjFaD.d.cts.map +1 -0
- package/dist/chunk-Bmb41Sf3.cjs +1 -0
- package/dist/client-BGUjlQRG.d.mts +24 -0
- package/dist/client-BGUjlQRG.d.mts.map +1 -0
- package/dist/client-Bc3EmLXQ.cjs +1 -0
- package/dist/client-C6P7IzrW.d.cts +23 -0
- package/dist/client-C6P7IzrW.d.cts.map +1 -0
- package/dist/client-DipC5G1s.d.cts +24 -0
- package/dist/client-DipC5G1s.d.cts.map +1 -0
- package/dist/client-Dx_Z33kd.mjs +2 -0
- package/dist/client-Dx_Z33kd.mjs.map +1 -0
- package/dist/client-Smqp-czo.mjs +2 -0
- package/dist/client-Smqp-czo.mjs.map +1 -0
- package/dist/client-UQMUpxKX.cjs +1 -0
- package/dist/client-og56kPLb.d.mts +23 -0
- package/dist/client-og56kPLb.d.mts.map +1 -0
- package/dist/client.cjs +1 -39
- package/dist/client.d.cts +2 -0
- package/dist/client.d.mts +2 -0
- package/dist/client.mjs +1 -1
- package/dist/constructors-CZJirtLD.d.mts +60 -0
- package/dist/constructors-CZJirtLD.d.mts.map +1 -0
- package/dist/constructors-Ci0KIdpT.cjs +1 -0
- package/dist/constructors-D8jm55QX.d.cts +60 -0
- package/dist/constructors-D8jm55QX.d.cts.map +1 -0
- package/dist/constructors-DS4_VfMY.mjs +2 -0
- package/dist/constructors-DS4_VfMY.mjs.map +1 -0
- package/dist/generator-BMjBxqwW.cjs +1 -0
- package/dist/generator-BUKT1462.mjs +2 -0
- package/dist/generator-BUKT1462.mjs.map +1 -0
- package/dist/index.cjs +1 -82
- package/dist/index.d.cts +8 -0
- package/dist/index.d.mts +8 -0
- package/dist/index.mjs +1 -1
- package/dist/rules-BQG_li3s.d.mts +126 -0
- package/dist/rules-BQG_li3s.d.mts.map +1 -0
- package/dist/rules-Dezfml9a.d.cts +126 -0
- package/dist/rules-Dezfml9a.d.cts.map +1 -0
- package/dist/rules-Pim5ay7H.mjs +2 -0
- package/dist/rules-Pim5ay7H.mjs.map +1 -0
- package/dist/rules-X9N_B4Ng.cjs +1 -0
- package/dist/server-BRyvuuag.d.mts +30 -0
- package/dist/server-BRyvuuag.d.mts.map +1 -0
- package/dist/server-ByfRZWsB.mjs +2 -0
- package/dist/server-ByfRZWsB.mjs.map +1 -0
- package/dist/server-C9MWPumf.d.mts +40 -0
- package/dist/server-C9MWPumf.d.mts.map +1 -0
- package/dist/server-CURNRsUM.cjs +1 -0
- package/dist/server-CtRC7R6W.mjs +2 -0
- package/dist/server-CtRC7R6W.mjs.map +1 -0
- package/dist/server-DX1_jjPM.cjs +1 -0
- package/dist/server-D_Zne9Uo.d.cts +40 -0
- package/dist/server-D_Zne9Uo.d.cts.map +1 -0
- package/dist/server-eqo44H34.d.cts +29 -0
- package/dist/server-eqo44H34.d.cts.map +1 -0
- package/dist/server.cjs +1 -42
- package/dist/server.d.cts +2 -0
- package/dist/server.d.mts +2 -0
- package/dist/server.mjs +1 -1
- package/dist/shared-B2-fZV5o.cjs +1 -0
- package/dist/shared-BF016VSl.d.mts +17 -0
- package/dist/shared-BF016VSl.d.mts.map +1 -0
- package/dist/shared-C056xtsk.d.cts +17 -0
- package/dist/shared-C056xtsk.d.cts.map +1 -0
- package/dist/shared-onIZBajF.mjs +2 -0
- package/dist/shared-onIZBajF.mjs.map +1 -0
- package/dist/shared.cjs +1 -42
- package/dist/shared.d.cts +2 -0
- package/dist/shared.d.mts +2 -0
- package/dist/shared.mjs +1 -1
- package/dist/shield/constructors.cjs +1 -21
- package/dist/shield/constructors.d.cts +2 -0
- package/dist/shield/constructors.d.mts +2 -0
- package/dist/shield/constructors.mjs +1 -1
- package/dist/shield/generator.cjs +1 -31
- package/dist/shield/generator.d.cts +27 -0
- package/dist/shield/generator.d.cts.map +1 -0
- package/dist/shield/generator.d.mts +27 -0
- package/dist/shield/generator.d.mts.map +1 -0
- package/dist/shield/generator.mjs +1 -1
- package/dist/shield/index.cjs +1 -61
- package/dist/shield/index.d.cts +4 -0
- package/dist/shield/index.d.mts +4 -0
- package/dist/shield/index.mjs +1 -1
- package/dist/shield/rules.cjs +1 -135
- package/dist/shield/rules.d.cts +2 -0
- package/dist/shield/rules.d.mts +2 -0
- package/dist/shield/rules.mjs +1 -1
- package/dist/shield/shield.cjs +1 -24
- package/dist/shield/shield.d.cts +2 -0
- package/dist/shield/shield.d.mts +2 -0
- package/dist/shield/shield.mjs +1 -1
- package/dist/shield/types.cjs +0 -1
- package/dist/shield/types.d.cts +2 -0
- package/dist/shield/types.d.mts +2 -0
- package/dist/shield/utils.cjs +1 -33
- package/dist/shield/utils.d.cts +34 -0
- package/dist/shield/utils.d.cts.map +1 -0
- package/dist/shield/utils.d.mts +34 -0
- package/dist/shield/utils.d.mts.map +1 -0
- package/dist/shield/utils.mjs +1 -1
- package/dist/shield/validation.cjs +1 -45
- package/dist/shield/validation.d.cts +21 -0
- package/dist/shield/validation.d.cts.map +1 -0
- package/dist/shield/validation.d.mts +21 -0
- package/dist/shield/validation.d.mts.map +1 -0
- package/dist/shield/validation.mjs +1 -1
- package/dist/shield-C9tsUPil.d.cts +12 -0
- package/dist/shield-C9tsUPil.d.cts.map +1 -0
- package/dist/shield-Ccremha0.d.mts +12 -0
- package/dist/shield-Ccremha0.d.mts.map +1 -0
- package/dist/shield-H5KXWVOc.cjs +1 -0
- package/dist/shield-WlPQDud3.mjs +2 -0
- package/dist/shield-WlPQDud3.mjs.map +1 -0
- package/dist/tanstack-query/client.cjs +1 -44
- package/dist/tanstack-query/client.d.cts +2 -0
- package/dist/tanstack-query/client.d.mts +2 -0
- package/dist/tanstack-query/client.mjs +1 -1
- package/dist/tanstack-query/server.cjs +1 -42
- package/dist/tanstack-query/server.d.cts +2 -0
- package/dist/tanstack-query/server.d.mts +2 -0
- package/dist/tanstack-query/server.mjs +1 -1
- package/dist/types-BtaQZStA.d.cts +54 -0
- package/dist/types-BtaQZStA.d.cts.map +1 -0
- package/dist/types-C91Z3eq9.d.cts +24 -0
- package/dist/types-C91Z3eq9.d.cts.map +1 -0
- package/dist/types-CE6okwNh.d.mts +54 -0
- package/dist/types-CE6okwNh.d.mts.map +1 -0
- package/dist/types-Cw1lFrh8.d.mts +77 -0
- package/dist/types-Cw1lFrh8.d.mts.map +1 -0
- package/dist/types-DAOF6mF0.d.cts +77 -0
- package/dist/types-DAOF6mF0.d.cts.map +1 -0
- package/dist/types-Dph-RPXu.d.mts +24 -0
- package/dist/types-Dph-RPXu.d.mts.map +1 -0
- package/dist/types.cjs +0 -1
- package/dist/types.d.cts +2 -0
- package/dist/types.d.mts +2 -0
- package/dist/utils-EREuzpW1.mjs +2 -0
- package/dist/utils-EREuzpW1.mjs.map +1 -0
- package/dist/utils-ftoOfuuV.cjs +1 -0
- package/dist/validation-B_im4gA8.mjs +2 -0
- package/dist/validation-B_im4gA8.mjs.map +1 -0
- package/dist/validation-D-G5c6i-.cjs +1 -0
- package/package.json +72 -293
- package/dist/action-handler.d.ts +0 -17
- package/dist/client.d.ts +0 -16
- package/dist/index.d.ts +0 -15
- package/dist/server.d.ts +0 -37
- package/dist/shared.d.ts +0 -13
- package/dist/shield/constructors.d.ts +0 -54
- package/dist/shield/generator.d.ts +0 -14
- package/dist/shield/index.d.ts +0 -3
- package/dist/shield/rules.d.ts +0 -121
- package/dist/shield/shield.d.ts +0 -6
- package/dist/shield/types.d.ts +0 -52
- package/dist/shield/utils.d.ts +0 -28
- package/dist/shield/validation.d.ts +0 -15
- package/dist/tanstack-query/client.d.ts +0 -16
- package/dist/tanstack-query/server.d.ts +0 -23
- package/dist/types.d.ts +0 -20
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
import { f as RuleResultInterface, i as LogicRuleInterface, l as RuleFunctionInterface, m as ShieldRule, o as OptionsInterface, u as RuleInterface } from "./types-BtaQZStA.cjs";
|
|
2
|
+
|
|
3
|
+
//#region src/shield/rules.d.ts
|
|
4
|
+
declare class Rule<TContext extends Record<string, any>> implements RuleInterface<TContext> {
|
|
5
|
+
readonly name: string;
|
|
6
|
+
func?: RuleFunctionInterface<TContext>;
|
|
7
|
+
constructor(name: string, func?: RuleFunctionInterface<TContext>);
|
|
8
|
+
resolve(ctx: TContext, type: string, path: string, input: {
|
|
9
|
+
[name: string]: any;
|
|
10
|
+
}, rawInput: unknown, options: OptionsInterface<TContext>): Promise<RuleResultInterface>;
|
|
11
|
+
/**
|
|
12
|
+
*
|
|
13
|
+
* Compares a given rule with the current one
|
|
14
|
+
* and checks whether their functions are equal.
|
|
15
|
+
*
|
|
16
|
+
*/
|
|
17
|
+
equals(rule: Rule<TContext>): boolean;
|
|
18
|
+
executeRule<TContext extends Record<string, any>>(ctx: TContext, type: string, path: string, input: {
|
|
19
|
+
[name: string]: any;
|
|
20
|
+
}, rawInput: unknown, options: OptionsInterface<TContext>): string | boolean | Error | Promise<RuleResultInterface>;
|
|
21
|
+
}
|
|
22
|
+
declare class LogicRule<TContext extends Record<string, any>> extends Rule<TContext> implements LogicRuleInterface<TContext> {
|
|
23
|
+
private rules;
|
|
24
|
+
constructor(rules: ShieldRule<TContext>[]);
|
|
25
|
+
/**
|
|
26
|
+
* By default logic rule resolves to false.
|
|
27
|
+
*/
|
|
28
|
+
resolve(_ctx: TContext, _type: string, _path: string, _input: {
|
|
29
|
+
[name: string]: any;
|
|
30
|
+
}, _rawInput: unknown, _options: OptionsInterface<TContext>): Promise<RuleResultInterface>;
|
|
31
|
+
/**
|
|
32
|
+
* Evaluates all the rules.
|
|
33
|
+
*/
|
|
34
|
+
evaluate(ctx: TContext, type: string, path: string, input: {
|
|
35
|
+
[name: string]: any;
|
|
36
|
+
}, rawInput: unknown, options: OptionsInterface<TContext>): Promise<RuleResultInterface[]>;
|
|
37
|
+
/**
|
|
38
|
+
* Returns rules in a logic rule.
|
|
39
|
+
*/
|
|
40
|
+
getRules(): ShieldRule<TContext>[];
|
|
41
|
+
}
|
|
42
|
+
declare class RuleOr<TContext extends Record<string, any>> extends LogicRule<TContext> {
|
|
43
|
+
constructor(rules: ShieldRule<TContext>[]);
|
|
44
|
+
/**
|
|
45
|
+
* Makes sure that at least one of them has evaluated to true.
|
|
46
|
+
*/
|
|
47
|
+
resolve(ctx: TContext, type: string, path: string, input: {
|
|
48
|
+
[name: string]: any;
|
|
49
|
+
}, rawInput: unknown, options: OptionsInterface<TContext>): Promise<RuleResultInterface>;
|
|
50
|
+
}
|
|
51
|
+
declare class RuleAnd<TContext extends Record<string, any>> extends LogicRule<TContext> {
|
|
52
|
+
constructor(rules: ShieldRule<TContext>[]);
|
|
53
|
+
/**
|
|
54
|
+
* Makes sure that all of them have resolved to true.
|
|
55
|
+
*/
|
|
56
|
+
resolve(ctx: TContext, type: string, path: string, input: {
|
|
57
|
+
[name: string]: any;
|
|
58
|
+
}, rawInput: unknown, options: OptionsInterface<TContext>): Promise<RuleResultInterface>;
|
|
59
|
+
}
|
|
60
|
+
declare class RuleChain<TContext extends Record<string, any>> extends LogicRule<TContext> {
|
|
61
|
+
constructor(rules: ShieldRule<TContext>[]);
|
|
62
|
+
/**
|
|
63
|
+
* Makes sure that all of them have resolved to true.
|
|
64
|
+
*/
|
|
65
|
+
resolve(ctx: TContext, type: string, path: string, input: {
|
|
66
|
+
[name: string]: any;
|
|
67
|
+
}, rawInput: unknown, options: OptionsInterface<TContext>): Promise<RuleResultInterface>;
|
|
68
|
+
/**
|
|
69
|
+
* Evaluates all the rules.
|
|
70
|
+
*/
|
|
71
|
+
evaluate(ctx: TContext, type: string, path: string, input: {
|
|
72
|
+
[name: string]: any;
|
|
73
|
+
}, rawInput: unknown, options: OptionsInterface<TContext>): Promise<RuleResultInterface[]>;
|
|
74
|
+
}
|
|
75
|
+
declare class RuleRace<TContext extends Record<string, any>> extends LogicRule<TContext> {
|
|
76
|
+
constructor(rules: ShieldRule<TContext>[]);
|
|
77
|
+
/**
|
|
78
|
+
* Makes sure that at least one of them resolved to true.
|
|
79
|
+
*/
|
|
80
|
+
resolve(ctx: TContext, type: string, path: string, input: {
|
|
81
|
+
[name: string]: any;
|
|
82
|
+
}, rawInput: unknown, options: OptionsInterface<TContext>): Promise<RuleResultInterface>;
|
|
83
|
+
/**
|
|
84
|
+
* Evaluates all the rules.
|
|
85
|
+
*/
|
|
86
|
+
evaluate(ctx: TContext, type: string, path: string, input: {
|
|
87
|
+
[name: string]: any;
|
|
88
|
+
}, rawInput: unknown, options: OptionsInterface<TContext>): Promise<RuleResultInterface[]>;
|
|
89
|
+
}
|
|
90
|
+
declare class RuleNot<TContext extends Record<string, any>> extends LogicRule<TContext> implements LogicRuleInterface<TContext> {
|
|
91
|
+
error?: Error;
|
|
92
|
+
name: string;
|
|
93
|
+
equals: (rule: RuleInterface<TContext>) => boolean;
|
|
94
|
+
constructor(rule: ShieldRule<TContext>, error?: Error);
|
|
95
|
+
/**
|
|
96
|
+
* Negates the result.
|
|
97
|
+
*/
|
|
98
|
+
resolve(ctx: TContext, type: string, path: string, input: {
|
|
99
|
+
[name: string]: any;
|
|
100
|
+
}, rawInput: unknown, options: OptionsInterface<TContext>): Promise<RuleResultInterface>;
|
|
101
|
+
}
|
|
102
|
+
declare class RuleTrue<TContext extends Record<string, any>> extends LogicRule<TContext> implements LogicRuleInterface<TContext> {
|
|
103
|
+
name: string;
|
|
104
|
+
equals: (rule: RuleInterface<TContext>) => boolean;
|
|
105
|
+
constructor();
|
|
106
|
+
/**
|
|
107
|
+
*
|
|
108
|
+
* Always true.
|
|
109
|
+
*
|
|
110
|
+
*/
|
|
111
|
+
resolve(): Promise<RuleResultInterface>;
|
|
112
|
+
}
|
|
113
|
+
declare class RuleFalse<TContext extends Record<string, any>> extends LogicRule<TContext> implements LogicRuleInterface<TContext> {
|
|
114
|
+
name: string;
|
|
115
|
+
equals: (rule: RuleInterface<TContext>) => boolean;
|
|
116
|
+
constructor();
|
|
117
|
+
/**
|
|
118
|
+
*
|
|
119
|
+
* Always false.
|
|
120
|
+
*
|
|
121
|
+
*/
|
|
122
|
+
resolve(): Promise<RuleResultInterface>;
|
|
123
|
+
}
|
|
124
|
+
//#endregion
|
|
125
|
+
export { RuleFalse as a, RuleRace as c, RuleChain as i, RuleTrue as l, Rule as n, RuleNot as o, RuleAnd as r, RuleOr as s, LogicRule as t };
|
|
126
|
+
//# sourceMappingURL=rules-Dezfml9a.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rules-Dezfml9a.d.cts","names":[],"sources":["../src/shield/rules.ts"],"sourcesContent":[],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
var e=class{name;func;constructor(e,t){this.name=e,this.func=t}async resolve(e,t,n,r,i,a){try{let o=await this.executeRule(e,t,n,r,i,a);return o instanceof Error?o:typeof o==`string`?Error(o):o===!0}catch(e){if(a.debug)throw e;return!1}}equals(e){return this.func===e.func}executeRule(e,t,n,r,i,a){return this.func(e,t,n,r,i,a)}},t=class extends e{rules;constructor(e){super(`LogicRule`),this.rules=e}async resolve(e,t,n,r,i,a){return!1}async evaluate(e,t,n,r,i,a){let o=this.getRules().map(async o=>o.resolve(e,t,n,r,i,a));return Promise.all(o)}getRules(){return this.rules}},n=class extends t{constructor(e){super(e)}async resolve(e,t,n,r,i,a){let o=await this.evaluate(e,t,n,r,i,a);return o.every(e=>e!==!0)?o.find(e=>e instanceof Error)??!1:!0}},r=class extends t{constructor(e){super(e)}async resolve(e,t,n,r,i,a){let o=await this.evaluate(e,t,n,r,i,a);return o.some(e=>e!==!0)?o.find(e=>e instanceof Error)??!1:!0}},i=class extends t{constructor(e){super(e)}async resolve(e,t,n,r,i,a){let o=await this.evaluate(e,t,n,r,i,a);return o.some(e=>e!==!0)?o.find(e=>e instanceof Error)??!1:!0}async evaluate(e,t,n,r,i,a){return o(this.getRules());async function o([s,...c]){return s===void 0?[]:s.resolve(e,t,n,r,i,a).then(async e=>e===!0?o(c).then(t=>t.concat(e)):[e])}}},a=class extends t{constructor(e){super(e)}async resolve(e,t,n,r,i,a){let o=await this.evaluate(e,t,n,r,i,a);return o.includes(!0)?!0:o.find(e=>e instanceof Error)??!1}async evaluate(e,t,n,r,i,a){return o(this.getRules());async function o([s,...c]){return s===void 0?[]:s.resolve(e,t,n,r,i,a).then(async e=>e===!0?[e]:o(c).then(t=>t.concat(e)))}}},o=class extends t{error;name=`RuleNot`;equals;constructor(e,t){super([e]),this.error=t}async resolve(e,t,n,r,i,a){let[o]=await this.evaluate(e,t,n,r,i,a);return o instanceof Error?!0:o===!0?this.error?this.error:!1:!0}},s=class extends t{name=`RuleTrue`;equals;constructor(){super([])}async resolve(){return!0}},c=class extends t{name=`RuleTrue`;equals;constructor(){super([])}async resolve(){return!1}};export{c as a,a as c,i,s as l,e as n,o,r,n as s,t};
|
|
2
|
+
//# sourceMappingURL=rules-Pim5ay7H.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rules-Pim5ay7H.mjs","names":[],"sources":["../src/shield/rules.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 {\n LogicRuleInterface,\n OptionsInterface,\n RuleFunctionInterface,\n RuleInterface,\n RuleResultInterface,\n ShieldRule\n} from \"./types\";\n\nexport class Rule<\n TContext extends Record<string, any>\n> implements RuleInterface<TContext> {\n readonly name: string;\n\n func?: RuleFunctionInterface<TContext>;\n\n constructor(name: string, func?: RuleFunctionInterface<TContext>) {\n this.name = name;\n this.func = func;\n }\n\n async resolve(\n ctx: TContext,\n type: string,\n path: string,\n input: { [name: string]: any },\n rawInput: unknown,\n options: OptionsInterface<TContext>\n ): Promise<RuleResultInterface> {\n try {\n /* Resolve */\n const res = await this.executeRule(\n ctx,\n type,\n path,\n input,\n rawInput,\n options\n );\n\n if (res instanceof Error) {\n return res;\n } else if (typeof res === \"string\") {\n return new Error(res);\n } else if (res === true) {\n return true;\n } else {\n return false;\n }\n } catch (err) {\n if (options.debug) {\n throw err;\n } else {\n return false;\n }\n }\n }\n\n /**\n *\n * Compares a given rule with the current one\n * and checks whether their functions are equal.\n *\n */\n equals(rule: Rule<TContext>): boolean {\n return this.func === rule.func;\n }\n\n executeRule<TContext extends Record<string, any>>(\n ctx: TContext,\n type: string,\n path: string,\n input: { [name: string]: any },\n rawInput: unknown,\n options: OptionsInterface<TContext>\n ): string | boolean | Error | Promise<RuleResultInterface> {\n // @ts-ignore\n return this.func(ctx, type, path, input, rawInput, options);\n }\n}\n\nexport class LogicRule<TContext extends Record<string, any>>\n extends Rule<TContext>\n implements LogicRuleInterface<TContext>\n{\n private rules: ShieldRule<TContext>[];\n\n constructor(rules: ShieldRule<TContext>[]) {\n super(\"LogicRule\");\n\n this.rules = rules;\n }\n\n /**\n * By default logic rule resolves to false.\n */\n override async resolve(\n _ctx: TContext,\n _type: string,\n _path: string,\n _input: { [name: string]: any },\n _rawInput: unknown,\n _options: OptionsInterface<TContext>\n ): Promise<RuleResultInterface> {\n return false;\n }\n\n /**\n * Evaluates all the rules.\n */\n async evaluate(\n ctx: TContext,\n type: string,\n path: string,\n input: { [name: string]: any },\n rawInput: unknown,\n options: OptionsInterface<TContext>\n ): Promise<RuleResultInterface[]> {\n const rules = this.getRules();\n const tasks = rules.map(async rule =>\n rule.resolve(ctx, type, path, input, rawInput, options)\n );\n\n return Promise.all(tasks);\n }\n\n /**\n * Returns rules in a logic rule.\n */\n getRules() {\n return this.rules;\n }\n}\n\n// Extended Types\n\nexport class RuleOr<\n TContext extends Record<string, any>\n> extends LogicRule<TContext> {\n constructor(rules: ShieldRule<TContext>[]) {\n super(rules);\n }\n\n /**\n * Makes sure that at least one of them has evaluated to true.\n */\n override async resolve(\n ctx: TContext,\n type: string,\n path: string,\n input: { [name: string]: any },\n rawInput: unknown,\n options: OptionsInterface<TContext>\n ): Promise<RuleResultInterface> {\n const result = await this.evaluate(\n ctx,\n type,\n path,\n input,\n rawInput,\n options\n );\n\n if (result.every(res => res !== true)) {\n const customError = result.find(res => res instanceof Error);\n\n return customError ?? false;\n } else {\n return true;\n }\n }\n}\n\nexport class RuleAnd<\n TContext extends Record<string, any>\n> extends LogicRule<TContext> {\n constructor(rules: ShieldRule<TContext>[]) {\n super(rules);\n }\n\n /**\n * Makes sure that all of them have resolved to true.\n */\n override async resolve(\n ctx: TContext,\n type: string,\n path: string,\n input: { [name: string]: any },\n rawInput: unknown,\n options: OptionsInterface<TContext>\n ): Promise<RuleResultInterface> {\n const result = await this.evaluate(\n ctx,\n type,\n path,\n input,\n rawInput,\n options\n );\n\n if (result.some(res => res !== true)) {\n const customError = result.find(res => res instanceof Error);\n\n return customError ?? false;\n } else {\n return true;\n }\n }\n}\n\nexport class RuleChain<\n TContext extends Record<string, any>\n> extends LogicRule<TContext> {\n constructor(rules: ShieldRule<TContext>[]) {\n super(rules);\n }\n\n /**\n * Makes sure that all of them have resolved to true.\n */\n override async resolve(\n ctx: TContext,\n type: string,\n path: string,\n input: { [name: string]: any },\n rawInput: unknown,\n options: OptionsInterface<TContext>\n ): Promise<RuleResultInterface> {\n const result = await this.evaluate(\n ctx,\n type,\n path,\n input,\n rawInput,\n options\n );\n\n if (result.some(res => res !== true)) {\n const customError = result.find(res => res instanceof Error);\n\n return customError ?? false;\n } else {\n return true;\n }\n }\n\n /**\n * Evaluates all the rules.\n */\n override async evaluate(\n ctx: TContext,\n type: string,\n path: string,\n input: { [name: string]: any },\n rawInput: unknown,\n options: OptionsInterface<TContext>\n ): Promise<RuleResultInterface[]> {\n const rules = this.getRules();\n\n return iterate(rules);\n\n async function iterate([\n rule,\n ...otherRules\n ]: ShieldRule<TContext>[]): Promise<RuleResultInterface[]> {\n if (rule === undefined) return [];\n return rule\n .resolve(ctx, type, path, input, rawInput, options)\n .then(async res => {\n if (res !== true) {\n return [res];\n } else {\n return iterate(otherRules).then(ress => ress.concat(res));\n }\n });\n }\n }\n}\n\nexport class RuleRace<\n TContext extends Record<string, any>\n> extends LogicRule<TContext> {\n constructor(rules: ShieldRule<TContext>[]) {\n super(rules);\n }\n\n /**\n * Makes sure that at least one of them resolved to true.\n */\n override async resolve(\n ctx: TContext,\n type: string,\n path: string,\n input: { [name: string]: any },\n rawInput: unknown,\n options: OptionsInterface<TContext>\n ): Promise<RuleResultInterface> {\n const result = await this.evaluate(\n ctx,\n type,\n path,\n input,\n rawInput,\n options\n );\n\n if (result.includes(true)) {\n return true;\n } else {\n const customError = result.find(res => res instanceof Error);\n\n return customError ?? false;\n }\n }\n\n /**\n * Evaluates all the rules.\n */\n override async evaluate(\n ctx: TContext,\n type: string,\n path: string,\n input: { [name: string]: any },\n rawInput: unknown,\n options: OptionsInterface<TContext>\n ): Promise<RuleResultInterface[]> {\n const rules = this.getRules();\n\n return iterate(rules);\n\n async function iterate([\n rule,\n ...otherRules\n ]: ShieldRule<TContext>[]): Promise<RuleResultInterface[]> {\n if (rule === undefined) return [];\n return rule\n .resolve(ctx, type, path, input, rawInput, options)\n .then(async res => {\n if (res === true) {\n return [res];\n } else {\n return iterate(otherRules).then(ress => ress.concat(res));\n }\n });\n }\n }\n}\n\nexport class RuleNot<TContext extends Record<string, any>>\n extends LogicRule<TContext>\n implements LogicRuleInterface<TContext>\n{\n error?: Error;\n\n override name: string = \"RuleNot\";\n\n override equals!: (rule: RuleInterface<TContext>) => boolean;\n\n constructor(rule: ShieldRule<TContext>, error?: Error) {\n super([rule]);\n this.error = error;\n }\n\n /**\n * Negates the result.\n */\n override async resolve(\n ctx: TContext,\n type: string,\n path: string,\n input: { [name: string]: any },\n rawInput: unknown,\n options: OptionsInterface<TContext>\n ): Promise<RuleResultInterface> {\n const [res] = await this.evaluate(\n ctx,\n type,\n path,\n input,\n rawInput,\n options\n );\n\n if (res instanceof Error) {\n return true;\n } else if (res !== true) {\n return true;\n } else {\n if (this.error) return this.error;\n return false;\n }\n }\n}\n\nexport class RuleTrue<TContext extends Record<string, any>>\n extends LogicRule<TContext>\n implements LogicRuleInterface<TContext>\n{\n override name: string = \"RuleTrue\";\n\n override equals!: (rule: RuleInterface<TContext>) => boolean;\n\n constructor() {\n super([]);\n }\n\n /**\n *\n * Always true.\n *\n */\n override async resolve(): Promise<RuleResultInterface> {\n return true;\n }\n}\n\nexport class RuleFalse<TContext extends Record<string, any>>\n extends LogicRule<TContext>\n implements LogicRuleInterface<TContext>\n{\n override name: string = \"RuleTrue\";\n\n override equals!: (rule: RuleInterface<TContext>) => boolean;\n\n constructor() {\n super([]);\n }\n\n /**\n *\n * Always false.\n *\n */\n override async resolve(): Promise<RuleResultInterface> {\n return false;\n }\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e=class{name;func;constructor(e,t){this.name=e,this.func=t}async resolve(e,t,n,r,i,a){try{let o=await this.executeRule(e,t,n,r,i,a);return o instanceof Error?o:typeof o==`string`?Error(o):o===!0}catch(e){if(a.debug)throw e;return!1}}equals(e){return this.func===e.func}executeRule(e,t,n,r,i,a){return this.func(e,t,n,r,i,a)}},t=class extends e{rules;constructor(e){super(`LogicRule`),this.rules=e}async resolve(e,t,n,r,i,a){return!1}async evaluate(e,t,n,r,i,a){let o=this.getRules().map(async o=>o.resolve(e,t,n,r,i,a));return Promise.all(o)}getRules(){return this.rules}},n=class extends t{constructor(e){super(e)}async resolve(e,t,n,r,i,a){let o=await this.evaluate(e,t,n,r,i,a);return o.every(e=>e!==!0)?o.find(e=>e instanceof Error)??!1:!0}},r=class extends t{constructor(e){super(e)}async resolve(e,t,n,r,i,a){let o=await this.evaluate(e,t,n,r,i,a);return o.some(e=>e!==!0)?o.find(e=>e instanceof Error)??!1:!0}},i=class extends t{constructor(e){super(e)}async resolve(e,t,n,r,i,a){let o=await this.evaluate(e,t,n,r,i,a);return o.some(e=>e!==!0)?o.find(e=>e instanceof Error)??!1:!0}async evaluate(e,t,n,r,i,a){return o(this.getRules());async function o([s,...c]){return s===void 0?[]:s.resolve(e,t,n,r,i,a).then(async e=>e===!0?o(c).then(t=>t.concat(e)):[e])}}},a=class extends t{constructor(e){super(e)}async resolve(e,t,n,r,i,a){let o=await this.evaluate(e,t,n,r,i,a);return o.includes(!0)?!0:o.find(e=>e instanceof Error)??!1}async evaluate(e,t,n,r,i,a){return o(this.getRules());async function o([s,...c]){return s===void 0?[]:s.resolve(e,t,n,r,i,a).then(async e=>e===!0?[e]:o(c).then(t=>t.concat(e)))}}},o=class extends t{error;name=`RuleNot`;equals;constructor(e,t){super([e]),this.error=t}async resolve(e,t,n,r,i,a){let[o]=await this.evaluate(e,t,n,r,i,a);return o instanceof Error?!0:o===!0?this.error?this.error:!1:!0}},s=class extends t{name=`RuleTrue`;equals;constructor(){super([])}async resolve(){return!0}},c=class extends t{name=`RuleTrue`;equals;constructor(){super([])}async resolve(){return!1}};Object.defineProperty(exports,`a`,{enumerable:!0,get:function(){return c}}),Object.defineProperty(exports,`c`,{enumerable:!0,get:function(){return a}}),Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return i}}),Object.defineProperty(exports,`l`,{enumerable:!0,get:function(){return s}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return e}}),Object.defineProperty(exports,`o`,{enumerable:!0,get:function(){return o}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return r}}),Object.defineProperty(exports,`s`,{enumerable:!0,get:function(){return n}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return t}});
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { t as MaybePromise } from "./base-CqjEnYV3.mjs";
|
|
2
|
+
import { QueryClientConfig } from "@tanstack/react-query";
|
|
3
|
+
import * as _trpc_tanstack_react_query0 from "@trpc/tanstack-react-query";
|
|
4
|
+
import { TRPCQueryOptions } from "@trpc/tanstack-react-query";
|
|
5
|
+
import React from "react";
|
|
6
|
+
import "server-only";
|
|
7
|
+
import { AnyTRPCRouter, inferRouterContext } from "@trpc/server";
|
|
8
|
+
|
|
9
|
+
//#region src/tanstack-query/server.d.ts
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* Create a TRPC Tanstack Query server.
|
|
13
|
+
*
|
|
14
|
+
* @param router - The TRPC router
|
|
15
|
+
* @param createContext - The context creator function
|
|
16
|
+
* @param queryClientConfig - The query client config
|
|
17
|
+
* @returns The TRPC Tanstack Query server
|
|
18
|
+
*/
|
|
19
|
+
declare function createTRPCTanstackQueryServer<TRouter extends AnyTRPCRouter, TContext extends inferRouterContext<TRouter> = inferRouterContext<TRouter>>(headers: () => Promise<Headers>, router: TRouter, createContext?: () => MaybePromise<TContext>, queryClientConfig?: Partial<QueryClientConfig>): {
|
|
20
|
+
trpc: _trpc_tanstack_react_query0.TRPCOptionsProxy<TRouter, {
|
|
21
|
+
keyPrefix: false;
|
|
22
|
+
}>;
|
|
23
|
+
HydrateClient: (props: {
|
|
24
|
+
children: React.ReactNode;
|
|
25
|
+
}) => React.JSX.Element;
|
|
26
|
+
prefetch: <T extends ReturnType<TRPCQueryOptions<any>>>(queryOptions: T) => void;
|
|
27
|
+
};
|
|
28
|
+
//#endregion
|
|
29
|
+
export { createTRPCTanstackQueryServer as t };
|
|
30
|
+
//# sourceMappingURL=server-BRyvuuag.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server-BRyvuuag.d.mts","names":[],"sources":["../src/tanstack-query/server.tsx"],"sourcesContent":[],"mappings":";;;;;;;;;;;;;AAqCA;;;;;AAEiD,iBAFjC,6BAEiC,CAAA,gBAD/B,aAC+B,EAAA,iBAA9B,kBAA8B,CAAX,OAAW,CAAA,GAAA,kBAAA,CAAmB,OAAnB,CAAA,CAAA,CAAA,OAAA,EAAA,GAAA,GAEhC,OAFgC,CAExB,OAFwB,CAAA,EAAA,MAAA,EAGvC,OAHuC,EAAA,aAAA,CAAA,EAAA,GAAA,GAI1B,YAJ0B,CAIb,QAJa,CAAA,EAAA,iBAAA,CAAA,EAK5B,OAL4B,CAKpB,iBALoB,CAAA,CAAA,EAAA;EAExB,IAAA,8CAAA,QAAA,EAAA;IAAR,SAAA,EAAA,KAAA;EACP,CAAA,CAAA;EAC0B,aAAA,EAAA,CAAA,KAAA,EAAA;IAAb,QAAA,EA+BgB,KAAA,CAAM,SA/BtB;EACM,CAAA,EAAA,GA8B2B,KAAA,CAAA,GAAA,CAAA,OA9B3B;EAAR,QAAA,EAAA,CAAA,UAuCI,UAvCJ,CAuCe,gBAvCf,CAAA,GAAA,CAAA,CAAA,CAAA,CAAA,YAAA,EAwCD,CAxCC,EAAA,GAAA,IAAA"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{t as e}from"./shared-onIZBajF.mjs";import t from"defu";import{HydrationBoundary as n,dehydrate as r}from"@tanstack/react-query";import{createTRPCOptionsProxy as i}from"@trpc/tanstack-react-query";import a,{cache as o}from"react";import{jsx as s}from"react/jsx-runtime";import"server-only";function c(a,c,l=()=>({}),u={}){let d=o(async()=>{let e=await Promise.resolve(l()),n=new Headers(await a());return n.set(`x-trpc-source`,`rsc`),t({headers:Object.fromEntries(n)},e)}),f=o(()=>e(u));return{trpc:i({router:c,queryClient:f,ctx:d}),HydrateClient:e=>s(n,{state:r(f()),children:e.children}),prefetch:e=>{let t=f();e.queryKey[1]?.type===`infinite`?t.prefetchInfiniteQuery(e):t.prefetchQuery(e)}}}export{c as t};
|
|
2
|
+
//# sourceMappingURL=server-ByfRZWsB.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server-ByfRZWsB.mjs","names":[],"sources":["../src/tanstack-query/server.tsx"],"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 type { QueryClientConfig } from \"@tanstack/react-query\";\nimport { dehydrate, HydrationBoundary } from \"@tanstack/react-query\";\nimport type { AnyTRPCRouter, inferRouterContext } from \"@trpc/server\";\nimport type { TRPCQueryOptions } from \"@trpc/tanstack-react-query\";\nimport { createTRPCOptionsProxy } from \"@trpc/tanstack-react-query\";\nimport defu from \"defu\";\nimport React, { cache } from \"react\";\nimport \"server-only\";\nimport { createQueryClient } from \"../shared\";\n\n/**\n * Create a TRPC Tanstack Query server.\n *\n * @param router - The TRPC router\n * @param createContext - The context creator function\n * @param queryClientConfig - The query client config\n * @returns The TRPC Tanstack Query server\n */\nexport function createTRPCTanstackQueryServer<\n TRouter extends AnyTRPCRouter,\n TContext extends inferRouterContext<TRouter> = inferRouterContext<TRouter>\n>(\n headers: () => Promise<Headers>,\n router: TRouter,\n createContext: () => MaybePromise<TContext> = () => ({}) as TContext,\n queryClientConfig: Partial<QueryClientConfig> = {}\n) {\n const _createContext = cache(async (): Promise<TContext> => {\n const context = await Promise.resolve(createContext());\n\n const _headers = new Headers(await headers());\n _headers.set(\"x-trpc-source\", \"rsc\");\n\n return defu(\n {\n headers: Object.fromEntries(_headers)\n },\n context\n ) as TContext;\n });\n\n /**\n * Create a stable getter for the query client that\n * will return the same client during the same request.\n */\n const getQueryClient = cache(() => createQueryClient(queryClientConfig));\n\n const trpc = createTRPCOptionsProxy({\n router,\n queryClient: getQueryClient,\n ctx: _createContext\n });\n\n return {\n trpc,\n HydrateClient: (props: { children: React.ReactNode }) => {\n const dehydratedState = dehydrate(getQueryClient());\n\n return (\n <HydrationBoundary state={dehydratedState}>\n {props.children}\n </HydrationBoundary>\n );\n },\n prefetch: <T extends ReturnType<TRPCQueryOptions<any>>>(\n queryOptions: T\n ) => {\n const queryClient = getQueryClient();\n if (queryOptions.queryKey[1]?.type === \"infinite\") {\n void queryClient.prefetchInfiniteQuery(queryOptions as any);\n } else {\n void queryClient.prefetchQuery(queryOptions);\n }\n }\n };\n}\n"],"mappings":"wSAqCA,SAAgB,EAId,EACA,EACA,OAAqD,EAAE,EACvD,EAAgD,EAAE,CAClD,CACA,IAAM,EAAiB,EAAM,SAA+B,CAC1D,IAAM,EAAU,MAAM,QAAQ,QAAQ,GAAe,CAAC,CAEhD,EAAW,IAAI,QAAQ,MAAM,GAAS,CAAC,CAG7C,OAFA,EAAS,IAAI,gBAAiB,MAAM,CAE7B,EACL,CACE,QAAS,OAAO,YAAY,EAAS,CACtC,CACD,EACD,EACD,CAMI,EAAiB,MAAY,EAAkB,EAAkB,CAAC,CAQxE,MAAO,CACL,KAPW,EAAuB,CAClC,SACA,YAAa,EACb,IAAK,EACN,CAAC,CAIA,cAAgB,GAIZ,EAAC,EAAA,CAAkB,MAHG,EAAU,GAAgB,CAAC,UAI9C,EAAM,UACW,CAGxB,SACE,GACG,CACH,IAAM,EAAc,GAAgB,CAChC,EAAa,SAAS,IAAI,OAAS,WAChC,EAAY,sBAAsB,EAAoB,CAEtD,EAAY,cAAc,EAAa,EAGjD"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { t as MaybePromise } from "./base-CqjEnYV3.mjs";
|
|
2
|
+
import { Resolver } from "@trpc/client";
|
|
3
|
+
import { experimental_notFound as notFound, experimental_redirect as redirect } from "@trpc/server/adapters/next-app-dir";
|
|
4
|
+
import { FeatureFlags, ResolverDef } from "@trpc/tanstack-react-query";
|
|
5
|
+
import { AnyTRPCRouter, inferRouterContext } from "@trpc/server";
|
|
6
|
+
import { AnyProcedure, AnyRootTypes, ProcedureType, RouterRecord, inferProcedureInput, inferTransformedProcedureOutput } from "@trpc/server/unstable-core-do-not-import";
|
|
7
|
+
import { ReadonlyRequestCookies } from "next/dist/server/web/spec-extension/adapters/request-cookies";
|
|
8
|
+
|
|
9
|
+
//#region src/server.d.ts
|
|
10
|
+
type DecorateProcedureServer<TType extends ProcedureType, TDef extends ResolverDef> = TType extends "query" ? {
|
|
11
|
+
query: Resolver<TDef>;
|
|
12
|
+
revalidate: (input?: TDef["input"]) => Promise<{
|
|
13
|
+
revalidated: false;
|
|
14
|
+
error: string;
|
|
15
|
+
} | {
|
|
16
|
+
revalidated: true;
|
|
17
|
+
}>;
|
|
18
|
+
} : TType extends "mutation" ? {
|
|
19
|
+
mutate: Resolver<TDef>;
|
|
20
|
+
} : TType extends "subscription" ? {
|
|
21
|
+
subscribe: Resolver<TDef>;
|
|
22
|
+
} : never;
|
|
23
|
+
type NextAppDirDecorateRouterRecord<TRoot extends AnyRootTypes, TRecord extends RouterRecord> = { [TKey in keyof TRecord]: TRecord[TKey] extends infer $Value ? $Value extends AnyProcedure ? DecorateProcedureServer<$Value["_def"]["type"], {
|
|
24
|
+
input: inferProcedureInput<$Value>;
|
|
25
|
+
output: inferTransformedProcedureOutput<TRoot, $Value>;
|
|
26
|
+
errorShape: TRoot["errorShape"];
|
|
27
|
+
transformer: TRoot["transformer"];
|
|
28
|
+
featureFlags: FeatureFlags;
|
|
29
|
+
}> : $Value extends RouterRecord ? NextAppDirDecorateRouterRecord<TRoot, $Value> : never : never };
|
|
30
|
+
/**
|
|
31
|
+
* This client invokes procedures directly on the server without fetching over HTTP.
|
|
32
|
+
*
|
|
33
|
+
* @param cookies - A function that returns the cookies
|
|
34
|
+
* @param router - The router created by the user
|
|
35
|
+
* @param createContext - An optional function to generate a context
|
|
36
|
+
*/
|
|
37
|
+
declare function createTRPCServer<TRouter extends AnyTRPCRouter, TContext extends inferRouterContext<TRouter> = inferRouterContext<TRouter>>(cookies: () => Promise<ReadonlyRequestCookies>, router: TRouter, createContext?: () => MaybePromise<TContext>): NextAppDirDecorateRouterRecord<TRouter["_def"]["_config"]["$types"], TRouter["_def"]["record"]>;
|
|
38
|
+
//#endregion
|
|
39
|
+
export { redirect as a, notFound as i, NextAppDirDecorateRouterRecord as n, createTRPCServer as r, DecorateProcedureServer as t };
|
|
40
|
+
//# sourceMappingURL=server-C9MWPumf.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server-C9MWPumf.d.mts","names":[],"sources":["../src/server.ts"],"sourcesContent":[],"mappings":";;;;;;;;;KAuDY,sCACI,4BACD,eACX;SAES,SAAS;uBAEN,kBACL;IARC,WAAA,EAAA,KAAA;IACI,KAAA,EAAA,MAAA;EACD,CAAA,GAAA;IACX,WAAA,EAAA,IAAA;EAEkB,CAAA,CAAA;CAAT,GAOT,KAPS,SAAA,UAAA,GAAA;EAEG,MAAA,EAOA,QAPA,CAOS,IAPT,CAAA;CACL,GAQL,KARK,SAAA,cAAA,GAAA;EAIP,SAAA,EAMiB,QANjB,CAM0B,IAN1B,CAAA;CAEqB,GAAA,KAAA;AAAT,KAQJ,8BARI,CAAA,cASA,YATA,EAAA,gBAUE,YAVF,CAAA,GAAA,WAEV,MAUW,OAVX,GAUqB,OAVrB,CAU6B,IAV7B,CAAA,SAAA,KAAA,OAAA,GAAA,MAAA,SAWe,YAXf,GAYE,uBAZF,CAaI,MAbJ,CAAA,MAAA,CAAA,CAAA,MAAA,CAAA,EAAA;EAEwB,KAAA,EAaX,mBAbW,CAaS,MAbT,CAAA;EAAT,MAAA,EAcD,+BAdC,CAc+B,KAd/B,EAcsC,MAdtC,CAAA;EAAQ,UAAA,EAeL,KAfK,CAAA,YAAA,CAAA;EAIjB,WAAA,EAYa,KAZb,CAAA,aAA8B,CAAA;EAC1B,YAAA,EAYU,YAZV;AACE,CAAA,CAAA,GAAA,MAAA,SAcK,YAdL,GAeR,8BAfQ,CAeuB,KAfvB,EAe8B,MAf9B,CAAA,GAAA,KAAA,GAAA,KAAA,EAED;;;;;;;;AAM0C,iBAmB3C,gBAnB2C,CAAA,gBAoBzC,aApByC,EAAA,iBAqBxC,kBArBwC,CAqBrB,OArBqB,CAAA,GAqBV,kBArBU,CAqBS,OArBT,CAAA,CAAA,CAAA,OAAA,EAAA,GAAA,GAuB1C,OAvB0C,CAuBlC,sBAvBkC,CAAA,EAAA,MAAA,EAwBjD,OAxBiD,EAAA,aAAA,CAAA,EAAA,GAAA,GAyBpC,YAzBoC,CAyBvB,QAzBuB,CAAA,CAAA,EAoDnD,8BApDmD,CAqDvD,OArDuD,CAAA,MAAA,CAAA,CAAA,SAAA,CAAA,CAAA,QAAA,CAAA,EAsDvD,OAtDuD,CAAA,MAAA,CAAA,CAAA,QAAA,CAAA,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e=require(`./chunk-Bmb41Sf3.cjs`),t=require(`./shared-B2-fZV5o.cjs`);let n=require(`@trpc/next/app-dir/server`),r=require(`@trpc/client`),i=require(`@trpc/next/app-dir/links/nextCache`),a=require(`@trpc/server/adapters/next-app-dir`);function o(e,a,o=()=>({})){return(0,n.experimental_createTRPCNextAppDirServer)({config(){return{links:[(0,r.loggerLink)({enabled:e=>!0}),(0,i.experimental_nextCacheLink)({revalidate:5,router:a,transformer:t.r,createContext:async()=>{let t=await Promise.resolve(o());return t.headers??={},t.headers[`x-trpc-source`]=`rsc-invoke`,t.headers.cookie=(await e()).toString(),t}})]}}})}Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return o}});
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as e}from"./shared-onIZBajF.mjs";import{experimental_createTRPCNextAppDirServer as t}from"@trpc/next/app-dir/server";import{loggerLink as n}from"@trpc/client";import{experimental_nextCacheLink as r}from"@trpc/next/app-dir/links/nextCache";import{experimental_notFound as i,experimental_redirect as a}from"@trpc/server/adapters/next-app-dir";function o(i,a,o=()=>({})){return t({config(){return{links:[n({enabled:e=>!0}),r({revalidate:5,router:a,transformer:e,createContext:async()=>{let e=await Promise.resolve(o());return e.headers??={},e.headers[`x-trpc-source`]=`rsc-invoke`,e.headers.cookie=(await i()).toString(),e}})]}}})}export{i as n,a as r,o as t};
|
|
2
|
+
//# sourceMappingURL=server-CtRC7R6W.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server-CtRC7R6W.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/* eslint-disable camelcase */\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) {\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 }) as NextAppDirDecorateRouterRecord<\n TRouter[\"_def\"][\"_config\"][\"$types\"],\n TRouter[\"_def\"][\"record\"]\n >;\n}\n\nexport {\n experimental_notFound as notFound,\n experimental_redirect as redirect\n} from \"@trpc/server/adapters/next-app-dir\";\n"],"mappings":"8VA0GA,SAAgB,EAId,EACA,EACA,OAAqD,EAAE,EACvD,CACA,OAAO,EAAiD,CACtD,QAAS,CACP,MAAO,CACL,MAAO,CACL,EAAW,CACT,QAAS,GAAO,GACjB,CAAC,CACF,EAA2B,CAEzB,WAAY,EACZ,SACA,cACA,cAAe,SAAY,CACzB,IAAM,EAAU,MAAM,QAAQ,QAAQ,GAAe,CAAC,CAMtD,MAJA,GAAQ,UAAY,EAAE,CACtB,EAAQ,QAAQ,iBAAmB,aACnC,EAAQ,QAAQ,QAAU,MAAM,GAAS,EAAE,UAAU,CAE9C,GAEV,CAAC,CACH,CACF,EAEJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e=require(`./chunk-Bmb41Sf3.cjs`),t=require(`./shared-B2-fZV5o.cjs`);let n=require(`defu`);n=e.t(n);let r=require(`@tanstack/react-query`),i=require(`@trpc/tanstack-react-query`),a=require(`react`);a=e.t(a);let o=require(`react/jsx-runtime`);require(`server-only`);function s(e,s,c=()=>({}),l={}){let u=(0,a.cache)(async()=>{let t=await Promise.resolve(c()),r=new Headers(await e());return r.set(`x-trpc-source`,`rsc`),(0,n.default)({headers:Object.fromEntries(r)},t)}),d=(0,a.cache)(()=>t.t(l));return{trpc:(0,i.createTRPCOptionsProxy)({router:s,queryClient:d,ctx:u}),HydrateClient:e=>(0,o.jsx)(r.HydrationBoundary,{state:(0,r.dehydrate)(d()),children:e.children}),prefetch:e=>{let t=d();e.queryKey[1]?.type===`infinite`?t.prefetchInfiniteQuery(e):t.prefetchQuery(e)}}}Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return s}});
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { t as MaybePromise } from "./base-DPgDjFaD.cjs";
|
|
2
|
+
import { AnyTRPCRouter, inferRouterContext } from "@trpc/server";
|
|
3
|
+
import { AnyProcedure, AnyRootTypes, ProcedureType, RouterRecord, inferProcedureInput, inferTransformedProcedureOutput } from "@trpc/server/unstable-core-do-not-import";
|
|
4
|
+
import { ReadonlyRequestCookies } from "next/dist/server/web/spec-extension/adapters/request-cookies";
|
|
5
|
+
import { Resolver } from "@trpc/client";
|
|
6
|
+
import { FeatureFlags, ResolverDef } from "@trpc/tanstack-react-query";
|
|
7
|
+
import { experimental_notFound as notFound, experimental_redirect as redirect } from "@trpc/server/adapters/next-app-dir";
|
|
8
|
+
|
|
9
|
+
//#region src/server.d.ts
|
|
10
|
+
type DecorateProcedureServer<TType extends ProcedureType, TDef extends ResolverDef> = TType extends "query" ? {
|
|
11
|
+
query: Resolver<TDef>;
|
|
12
|
+
revalidate: (input?: TDef["input"]) => Promise<{
|
|
13
|
+
revalidated: false;
|
|
14
|
+
error: string;
|
|
15
|
+
} | {
|
|
16
|
+
revalidated: true;
|
|
17
|
+
}>;
|
|
18
|
+
} : TType extends "mutation" ? {
|
|
19
|
+
mutate: Resolver<TDef>;
|
|
20
|
+
} : TType extends "subscription" ? {
|
|
21
|
+
subscribe: Resolver<TDef>;
|
|
22
|
+
} : never;
|
|
23
|
+
type NextAppDirDecorateRouterRecord<TRoot extends AnyRootTypes, TRecord extends RouterRecord> = { [TKey in keyof TRecord]: TRecord[TKey] extends infer $Value ? $Value extends AnyProcedure ? DecorateProcedureServer<$Value["_def"]["type"], {
|
|
24
|
+
input: inferProcedureInput<$Value>;
|
|
25
|
+
output: inferTransformedProcedureOutput<TRoot, $Value>;
|
|
26
|
+
errorShape: TRoot["errorShape"];
|
|
27
|
+
transformer: TRoot["transformer"];
|
|
28
|
+
featureFlags: FeatureFlags;
|
|
29
|
+
}> : $Value extends RouterRecord ? NextAppDirDecorateRouterRecord<TRoot, $Value> : never : never };
|
|
30
|
+
/**
|
|
31
|
+
* This client invokes procedures directly on the server without fetching over HTTP.
|
|
32
|
+
*
|
|
33
|
+
* @param cookies - A function that returns the cookies
|
|
34
|
+
* @param router - The router created by the user
|
|
35
|
+
* @param createContext - An optional function to generate a context
|
|
36
|
+
*/
|
|
37
|
+
declare function createTRPCServer<TRouter extends AnyTRPCRouter, TContext extends inferRouterContext<TRouter> = inferRouterContext<TRouter>>(cookies: () => Promise<ReadonlyRequestCookies>, router: TRouter, createContext?: () => MaybePromise<TContext>): NextAppDirDecorateRouterRecord<TRouter["_def"]["_config"]["$types"], TRouter["_def"]["record"]>;
|
|
38
|
+
//#endregion
|
|
39
|
+
export { redirect as a, notFound as i, NextAppDirDecorateRouterRecord as n, createTRPCServer as r, DecorateProcedureServer as t };
|
|
40
|
+
//# sourceMappingURL=server-D_Zne9Uo.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server-D_Zne9Uo.d.cts","names":[],"sources":["../src/server.ts"],"sourcesContent":[],"mappings":";;;;;;;;;KAuDY,sCACI,4BACD,eACX;SAES,SAAS;uBAEN,kBACL;IARC,WAAA,EAAA,KAAA;IACI,KAAA,EAAA,MAAA;EACD,CAAA,GAAA;IACX,WAAA,EAAA,IAAA;EAEkB,CAAA,CAAA;CAAT,GAOT,KAPS,SAAA,UAAA,GAAA;EAEG,MAAA,EAOA,QAPA,CAOS,IAPT,CAAA;CACL,GAQL,KARK,SAAA,cAAA,GAAA;EAIP,SAAA,EAMiB,QANjB,CAM0B,IAN1B,CAAA;CAEqB,GAAA,KAAA;AAAT,KAQJ,8BARI,CAAA,cASA,YATA,EAAA,gBAUE,YAVF,CAAA,GAAA,WAEV,MAUW,OAVX,GAUqB,OAVrB,CAU6B,IAV7B,CAAA,SAAA,KAAA,OAAA,GAAA,MAAA,SAWe,YAXf,GAYE,uBAZF,CAaI,MAbJ,CAAA,MAAA,CAAA,CAAA,MAAA,CAAA,EAAA;EAEwB,KAAA,EAaX,mBAbW,CAaS,MAbT,CAAA;EAAT,MAAA,EAcD,+BAdC,CAc+B,KAd/B,EAcsC,MAdtC,CAAA;EAAQ,UAAA,EAeL,KAfK,CAAA,YAAA,CAAA;EAIjB,WAAA,EAYa,KAZb,CAAA,aAA8B,CAAA;EAC1B,YAAA,EAYU,YAZV;AACE,CAAA,CAAA,GAAA,MAAA,SAcK,YAdL,GAeR,8BAfQ,CAeuB,KAfvB,EAe8B,MAf9B,CAAA,GAAA,KAAA,GAAA,KAAA,EAED;;;;;;;;AAM0C,iBAmB3C,gBAnB2C,CAAA,gBAoBzC,aApByC,EAAA,iBAqBxC,kBArBwC,CAqBrB,OArBqB,CAAA,GAqBV,kBArBU,CAqBS,OArBT,CAAA,CAAA,CAAA,OAAA,EAAA,GAAA,GAuB1C,OAvB0C,CAuBlC,sBAvBkC,CAAA,EAAA,MAAA,EAwBjD,OAxBiD,EAAA,aAAA,CAAA,EAAA,GAAA,GAyBpC,YAzBoC,CAyBvB,QAzBuB,CAAA,CAAA,EAoDnD,8BApDmD,CAqDvD,OArDuD,CAAA,MAAA,CAAA,CAAA,SAAA,CAAA,CAAA,QAAA,CAAA,EAsDvD,OAtDuD,CAAA,MAAA,CAAA,CAAA,QAAA,CAAA,CAAA"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { t as MaybePromise } from "./base-DPgDjFaD.cjs";
|
|
2
|
+
import { AnyTRPCRouter, inferRouterContext } from "@trpc/server";
|
|
3
|
+
import * as _trpc_tanstack_react_query0 from "@trpc/tanstack-react-query";
|
|
4
|
+
import { TRPCQueryOptions } from "@trpc/tanstack-react-query";
|
|
5
|
+
import { QueryClientConfig } from "@tanstack/react-query";
|
|
6
|
+
import React from "react";
|
|
7
|
+
|
|
8
|
+
//#region src/tanstack-query/server.d.ts
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Create a TRPC Tanstack Query server.
|
|
12
|
+
*
|
|
13
|
+
* @param router - The TRPC router
|
|
14
|
+
* @param createContext - The context creator function
|
|
15
|
+
* @param queryClientConfig - The query client config
|
|
16
|
+
* @returns The TRPC Tanstack Query server
|
|
17
|
+
*/
|
|
18
|
+
declare function createTRPCTanstackQueryServer<TRouter extends AnyTRPCRouter, TContext extends inferRouterContext<TRouter> = inferRouterContext<TRouter>>(headers: () => Promise<Headers>, router: TRouter, createContext?: () => MaybePromise<TContext>, queryClientConfig?: Partial<QueryClientConfig>): {
|
|
19
|
+
trpc: _trpc_tanstack_react_query0.TRPCOptionsProxy<TRouter, {
|
|
20
|
+
keyPrefix: false;
|
|
21
|
+
}>;
|
|
22
|
+
HydrateClient: (props: {
|
|
23
|
+
children: React.ReactNode;
|
|
24
|
+
}) => React.JSX.Element;
|
|
25
|
+
prefetch: <T extends ReturnType<TRPCQueryOptions<any>>>(queryOptions: T) => void;
|
|
26
|
+
};
|
|
27
|
+
//#endregion
|
|
28
|
+
export { createTRPCTanstackQueryServer as t };
|
|
29
|
+
//# sourceMappingURL=server-eqo44H34.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server-eqo44H34.d.cts","names":[],"sources":["../src/tanstack-query/server.tsx"],"sourcesContent":[],"mappings":";;;;;;;;;;;AAqCA;;;;;;AAIyB,iBAJT,6BAIS,CAAA,gBAHP,aAGO,EAAA,iBAFN,kBAEM,CAFa,OAEb,CAAA,GAFwB,kBAExB,CAF2C,OAE3C,CAAA,CAAA,CAAA,OAAA,EAAA,GAAA,GAAR,OAAQ,CAAA,OAAA,CAAA,EAAA,MAAA,EACf,OADe,EAAA,aAAA,CAAA,EAAA,GAAA,GAEF,YAFE,CAEW,QAFX,CAAA,EAAA,iBAAA,CAAA,EAGJ,OAHI,CAGI,iBAHJ,CAAA,CAAA,EAAA;EAAR,IAAA,8CAAA,QAAA,EAAA;IACP,SAAA,EAAA,KAAA;EAC0B,CAAA,CAAA;EAAb,aAAA,EAAA,CAAA,KAAA,EAAA;IACM,QAAA,EA8BU,KAAA,CAAM,SA9BhB;EAAR,CAAA,EAAA,GA8BmC,KAAA,CAAA,GAAA,CAAA,OA9BnC;uBAuCI,WAAW,sCAChB"}
|
package/dist/server.cjs
CHANGED
|
@@ -1,42 +1 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.createTRPCServer = createTRPCServer;
|
|
7
|
-
Object.defineProperty(exports, "notFound", {
|
|
8
|
-
enumerable: true,
|
|
9
|
-
get: function () {
|
|
10
|
-
return _nextAppDir.experimental_notFound;
|
|
11
|
-
}
|
|
12
|
-
});
|
|
13
|
-
Object.defineProperty(exports, "redirect", {
|
|
14
|
-
enumerable: true,
|
|
15
|
-
get: function () {
|
|
16
|
-
return _nextAppDir.experimental_redirect;
|
|
17
|
-
}
|
|
18
|
-
});
|
|
19
|
-
var _client = require("@trpc/client");
|
|
20
|
-
var _nextCache = require("@trpc/next/app-dir/links/nextCache");
|
|
21
|
-
var _server = require("@trpc/next/app-dir/server");
|
|
22
|
-
var _shared = require("./shared.cjs");
|
|
23
|
-
var _nextAppDir = require("@trpc/server/adapters/next-app-dir");
|
|
24
|
-
function createTRPCServer(r, t, o = () => ({})) {
|
|
25
|
-
return (0, _server.experimental_createTRPCNextAppDirServer)({
|
|
26
|
-
config() {
|
|
27
|
-
return {
|
|
28
|
-
links: [(0, _client.loggerLink)({
|
|
29
|
-
enabled: e => !0
|
|
30
|
-
}), (0, _nextCache.experimental_nextCacheLink)({
|
|
31
|
-
revalidate: 5,
|
|
32
|
-
router: t,
|
|
33
|
-
transformer: _shared.transformer,
|
|
34
|
-
createContext: async () => {
|
|
35
|
-
const e = await Promise.resolve(o());
|
|
36
|
-
return e.headers ??= {}, e.headers["x-trpc-source"] = "rsc-invoke", e.headers.cookie = (await r()).toString(), e;
|
|
37
|
-
}
|
|
38
|
-
})]
|
|
39
|
-
};
|
|
40
|
-
}
|
|
41
|
-
});
|
|
42
|
-
}
|
|
1
|
+
const e=require(`./chunk-Bmb41Sf3.cjs`);require(`./shared-B2-fZV5o.cjs`);const t=require(`./server-CURNRsUM.cjs`);let n=require(`@trpc/server/adapters/next-app-dir`);exports.createTRPCServer=t.t,Object.defineProperty(exports,`notFound`,{enumerable:!0,get:function(){return n.experimental_notFound}}),Object.defineProperty(exports,`redirect`,{enumerable:!0,get:function(){return n.experimental_redirect}});
|
package/dist/server.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import
|
|
1
|
+
import"./shared-onIZBajF.mjs";import{n as e,r as t,t as n}from"./server-CtRC7R6W.mjs";export{n as createTRPCServer,e as notFound,t as redirect};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e=require(`./chunk-Bmb41Sf3.cjs`);let t=require(`defu`);t=e.t(t);let n=require(`@js-temporal/polyfill`),r=require(`@tanstack/react-query`),i=require(`superjson`);i=e.t(i);const a=/^[A-Z]:\//i,o=/^[A-Z]:$/i,s=/^[/\\]{2}/,c=/^[/\\](?![/\\])|^[/\\]{2}(?!\.)|^~[/\\]|^[A-Z]:[/\\]/i;function l(e){return e.startsWith(`\\\\?\\`)?e:e.replace(/\\/g,`/`)}function u(e){return c.test(l(e))}function d(e){return u(e)}function f(e=``){return e&&e.replace(/\\/g,`/`).replace(a,e=>e.toUpperCase())}function p(e){if(!e||e.length===0)return`.`;e=f(e);let t=e.match(s),n=d(e),r=e[e.length-1]===`/`;return e=h(e,!n),e.length===0?n?`/`:r?`./`:`.`:(r&&(e+=`/`),o.test(e)&&(e+=`/`),t?n?`//${e}`:`//./${e}`:n&&!d(e)?`/${e}`:e)}function m(...e){let t=``;for(let n of e)if(n)if(t.length>0){let e=t[t.length-1]===`/`,r=n[0]===`/`;e&&r?t+=n.slice(1):t+=e||r?n:`/${n}`}else t+=n;return p(t)}function h(e,t){let n=``,r=0,i=-1,a=0,o=null;for(let s=0;s<=e.length;++s){if(s<e.length)o=e[s];else if(o===`/`)break;else o=`/`;if(o===`/`){if(!(i===s-1||a===1))if(a===2){if(n.length<2||r!==2||n[n.length-1]!==`.`||n[n.length-2]!==`.`){if(n.length>2){let e=n.lastIndexOf(`/`);e===-1?(n=``,r=0):(n=n.slice(0,e),r=n.length-1-n.lastIndexOf(`/`)),i=s,a=0;continue}else if(n.length>0){n=``,r=0,i=s,a=0;continue}}t&&(n+=n.length>0?`/..`:`..`,r=2)}else n.length>0?n+=`/${e.slice(i+1,s)}`:n=e.slice(i+1,s),r=s-i-1;i=s,a=0}else o===`.`&&a!==-1?++a:a=-1}return n}function g(e,t=1){return m(typeof e==`string`?e:e.host||``,`api`,t?`v${t}`:``,`trpc`)}i.default.registerCustom({isApplicable:e=>e instanceof n.Temporal.PlainDate,serialize:e=>e.toJSON(),deserialize:e=>n.Temporal.PlainDate.from(e)},`Temporal.PlainDate`),i.default.registerCustom({isApplicable:e=>e instanceof n.Temporal.PlainDateTime,serialize:e=>e.toJSON(),deserialize:e=>n.Temporal.PlainDateTime.from(e)},`Temporal.PlainDateTime`);const _=i.default,v=(e={})=>new r.QueryClient((0,t.default)(e,{defaultOptions:{queries:{staleTime:1e3*30},dehydrate:{shouldDehydrateQuery:e=>(0,r.defaultShouldDehydrateQuery)(e)||e.state.status===`pending`,serializeData:_.serialize},hydrate:{deserializeData:_.deserialize}}}));Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return g}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return _}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return v}});
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { t as StormURLInterface } from "./types-Cw1lFrh8.mjs";
|
|
2
|
+
import { QueryClient, QueryClientConfig } from "@tanstack/react-query";
|
|
3
|
+
import { DataTransformer } from "@trpc/server/unstable-core-do-not-import";
|
|
4
|
+
|
|
5
|
+
//#region src/shared.d.ts
|
|
6
|
+
declare function getTRPCServerUrl(baseUrl: string | StormURLInterface, version?: number | null): string;
|
|
7
|
+
declare const transformer: DataTransformer;
|
|
8
|
+
/**
|
|
9
|
+
* Create a TRPC Tanstack Query client.
|
|
10
|
+
*
|
|
11
|
+
* @param queryClientConfig - The query client config
|
|
12
|
+
* @returns The TRPC Tanstack Query client
|
|
13
|
+
*/
|
|
14
|
+
declare const createQueryClient: (queryClientConfig?: Partial<QueryClientConfig>) => QueryClient;
|
|
15
|
+
//#endregion
|
|
16
|
+
export { getTRPCServerUrl as n, transformer as r, createQueryClient as t };
|
|
17
|
+
//# sourceMappingURL=shared-BF016VSl.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shared-BF016VSl.d.mts","names":[],"sources":["../src/shared.ts"],"sourcesContent":[],"mappings":";;;;;iBA8BgB,gBAAA,mBACI;AADJ,cAgCH,WAhCmB,EAgCQ,eA/BpB;AA+BpB;AAQA;;;;;cAAa,wCACQ,QAAQ,uBAAuB"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { t as StormURLInterface } from "./types-DAOF6mF0.cjs";
|
|
2
|
+
import { DataTransformer } from "@trpc/server/unstable-core-do-not-import";
|
|
3
|
+
import { QueryClient, QueryClientConfig } from "@tanstack/react-query";
|
|
4
|
+
|
|
5
|
+
//#region src/shared.d.ts
|
|
6
|
+
declare function getTRPCServerUrl(baseUrl: string | StormURLInterface, version?: number | null): string;
|
|
7
|
+
declare const transformer: DataTransformer;
|
|
8
|
+
/**
|
|
9
|
+
* Create a TRPC Tanstack Query client.
|
|
10
|
+
*
|
|
11
|
+
* @param queryClientConfig - The query client config
|
|
12
|
+
* @returns The TRPC Tanstack Query client
|
|
13
|
+
*/
|
|
14
|
+
declare const createQueryClient: (queryClientConfig?: Partial<QueryClientConfig>) => QueryClient;
|
|
15
|
+
//#endregion
|
|
16
|
+
export { getTRPCServerUrl as n, transformer as r, createQueryClient as t };
|
|
17
|
+
//# sourceMappingURL=shared-C056xtsk.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shared-C056xtsk.d.cts","names":[],"sources":["../src/shared.ts"],"sourcesContent":[],"mappings":";;;;;iBA8BgB,gBAAA,mBACI;AADJ,cAgCH,WAhCmB,EAgCQ,eA/BpB;AA+BpB;AAQA;;;;;cAAa,wCACQ,QAAQ,uBAAuB"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import e from"defu";import{Temporal as t}from"@js-temporal/polyfill";import{QueryClient as n,defaultShouldDehydrateQuery as r}from"@tanstack/react-query";import i from"superjson";const a=/^[A-Z]:\//i,o=/^[A-Z]:$/i,s=/^[/\\]{2}/,c=/^[/\\](?![/\\])|^[/\\]{2}(?!\.)|^~[/\\]|^[A-Z]:[/\\]/i;function l(e){return e.startsWith(`\\\\?\\`)?e:e.replace(/\\/g,`/`)}function u(e){return c.test(l(e))}function d(e){return u(e)}function f(e=``){return e&&e.replace(/\\/g,`/`).replace(a,e=>e.toUpperCase())}function p(e){if(!e||e.length===0)return`.`;e=f(e);let t=e.match(s),n=d(e),r=e[e.length-1]===`/`;return e=h(e,!n),e.length===0?n?`/`:r?`./`:`.`:(r&&(e+=`/`),o.test(e)&&(e+=`/`),t?n?`//${e}`:`//./${e}`:n&&!d(e)?`/${e}`:e)}function m(...e){let t=``;for(let n of e)if(n)if(t.length>0){let e=t[t.length-1]===`/`,r=n[0]===`/`;e&&r?t+=n.slice(1):t+=e||r?n:`/${n}`}else t+=n;return p(t)}function h(e,t){let n=``,r=0,i=-1,a=0,o=null;for(let s=0;s<=e.length;++s){if(s<e.length)o=e[s];else if(o===`/`)break;else o=`/`;if(o===`/`){if(!(i===s-1||a===1))if(a===2){if(n.length<2||r!==2||n[n.length-1]!==`.`||n[n.length-2]!==`.`){if(n.length>2){let e=n.lastIndexOf(`/`);e===-1?(n=``,r=0):(n=n.slice(0,e),r=n.length-1-n.lastIndexOf(`/`)),i=s,a=0;continue}else if(n.length>0){n=``,r=0,i=s,a=0;continue}}t&&(n+=n.length>0?`/..`:`..`,r=2)}else n.length>0?n+=`/${e.slice(i+1,s)}`:n=e.slice(i+1,s),r=s-i-1;i=s,a=0}else o===`.`&&a!==-1?++a:a=-1}return n}function g(e,t=1){return m(typeof e==`string`?e:e.host||``,`api`,t?`v${t}`:``,`trpc`)}i.registerCustom({isApplicable:e=>e instanceof t.PlainDate,serialize:e=>e.toJSON(),deserialize:e=>t.PlainDate.from(e)},`Temporal.PlainDate`),i.registerCustom({isApplicable:e=>e instanceof t.PlainDateTime,serialize:e=>e.toJSON(),deserialize:e=>t.PlainDateTime.from(e)},`Temporal.PlainDateTime`);const _=i,v=(t={})=>new n(e(t,{defaultOptions:{queries:{staleTime:1e3*30},dehydrate:{shouldDehydrateQuery:e=>r(e)||e.state.status===`pending`,serializeData:_.serialize},hydrate:{deserializeData:_.deserialize}}}));export{g as n,_ as r,v as t};
|
|
2
|
+
//# sourceMappingURL=shared-onIZBajF.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shared-onIZBajF.mjs","names":["char: string | null"],"sources":["../../path/src/regex.ts","../../path/src/slash.ts","../../path/src/is-type.ts","../../path/src/join-paths.ts","../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\nexport const DRIVE_LETTER_START_REGEX = /^[A-Z]:\\//i;\nexport const DRIVE_LETTER_REGEX = /^[A-Z]:$/i;\n\nexport const UNC_REGEX = /^[/\\\\]{2}/;\n\nexport const ABSOLUTE_PATH_REGEX =\n /^[/\\\\](?![/\\\\])|^[/\\\\]{2}(?!\\.)|^~[/\\\\]|^[A-Z]:[/\\\\]/i;\n\nexport const ROOT_FOLDER_REGEX = /^\\/([A-Z]:)?$/i;\n\nexport const FILE_EXTENSION_REGEX = /\\.[0-9a-z]+$/i;\n\nexport const PACKAGE_PATH_REGEX = /^@\\w+\\/.*$/;\nexport const NPM_SCOPED_PACKAGE_REGEX = /^(?:@[\\w-]+\\/)?[\\w-]+$/;\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 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 { isAbsolutePath } from \"./is-type\";\n\n/**\n * Replace backslash to slash\n *\n * @param path - The string to replace\n * @returns The string with replaced backslashes\n */\nexport function slash(path: string) {\n if (path.startsWith(\"\\\\\\\\?\\\\\")) {\n return path;\n }\n\n return path.replace(/\\\\/g, \"/\");\n}\n\n/**\n * Replace backslash to slash and remove unneeded leading and trailing slashes\n *\n * @param path - The string to replace\n * @returns The string with replaced backslashes\n */\nexport function formatSlash(path: string) {\n const formatted = slash(path);\n\n return isAbsolutePath(formatted)\n ? formatted.replace(/\\/+$/g, \"\")\n : formatted.replace(/^\\.\\//g, \"\").replace(/\\/+$/g, \"\");\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 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 { ABSOLUTE_PATH_REGEX, NPM_SCOPED_PACKAGE_REGEX } from \"./regex\";\nimport { slash } from \"./slash\";\n\n/**\n * Check if the path is an absolute path.\n *\n * @param path - The path to check\n * @returns An indicator specifying if the path is an absolute path\n */\nexport function isAbsolutePath(path: string): boolean {\n return ABSOLUTE_PATH_REGEX.test(slash(path));\n}\n\n/**\n * Check if the path is an absolute path.\n *\n * @remarks\n * This is an alias for {@link isAbsolutePath}.\n *\n * @param path - The path to check\n * @returns An indicator specifying if the path is an absolute path\n */\nexport function isAbsolute(path: string): boolean {\n return isAbsolutePath(path);\n}\n\n/**\n * Check if the path is a relative path.\n *\n * @param path - The path to check\n * @returns An indicator specifying if the path is a relative path\n */\nexport function isRelativePath(path: string): boolean {\n return !isAbsolutePath(path);\n}\n\n/**\n * Check if the path is a relative path.\n *\n * @remarks\n * This is an alias for {@link isRelativePath}.\n *\n * @param path - The path to check\n * @returns An indicator specifying if the path is a relative path\n */\nexport function isRelative(path: string): boolean {\n return isRelativePath(path);\n}\n\n/**\n * Check if the path is a npm package path.\n *\n * @remarks\n * This only checks if the path matches the npm namespace scoped package naming convention such as `@scope/package-name`. This is an alias for {@link isNpmScopedPackage}.\n *\n * @example\n * ```ts\n * isNpmScopedPackage(\"@stryke/path\"); // returns true\n * isNpmScopedPackage(\"lodash\"); // returns false\n * isNpmNamespacePackage(\"./src/index.ts\"); // returns false\n * ```\n *\n * @param path - The path to check\n * @returns An indicator specifying if the path is a npm package path\n */\nexport function isNpmScopedPackagePath(path: string): boolean {\n return NPM_SCOPED_PACKAGE_REGEX.test(slash(path));\n}\n\n/**\n * Check if the path is a npm package path.\n *\n * @remarks\n * This only checks if the path matches the npm namespace scoped package naming convention such as `@scope/package-name`. This is an alias for {@link isNpmScopedPackagePath}.\n *\n * @example\n * ```ts\n * isNpmScopedPackagePath(\"@stryke/path\"); // returns true\n * isNpmScopedPackagePath(\"lodash\"); // returns false\n * isNpmScopedPackagePath(\"./src/index.ts\"); // returns false\n * ```\n *\n * @param path - The path to check\n * @returns An indicator specifying if the path is a npm package path\n */\nexport function isNpmScopedPackage(path: string): boolean {\n return isNpmScopedPackagePath(path);\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 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 { isAbsolute } from \"./is-type\";\nimport {\n DRIVE_LETTER_REGEX,\n DRIVE_LETTER_START_REGEX,\n UNC_REGEX\n} from \"./regex\";\n\n// Util to normalize windows paths to posix\nfunction normalizeWindowsPath(input = \"\") {\n if (!input) {\n return input;\n }\n return input\n .replace(/\\\\/g, \"/\")\n .replace(DRIVE_LETTER_START_REGEX, r => r.toUpperCase());\n}\n\nfunction correctPaths(path?: string) {\n if (!path || path.length === 0) {\n return \".\";\n }\n\n // Normalize windows argument\n path = normalizeWindowsPath(path);\n\n const isUNCPath = path.match(UNC_REGEX);\n const isPathAbsolute = isAbsolute(path);\n const trailingSeparator = path[path.length - 1] === \"/\";\n\n // Normalize the path\n path = normalizeString(path, !isPathAbsolute);\n\n if (path.length === 0) {\n if (isPathAbsolute) {\n return \"/\";\n }\n return trailingSeparator ? \"./\" : \".\";\n }\n if (trailingSeparator) {\n path += \"/\";\n }\n if (DRIVE_LETTER_REGEX.test(path)) {\n path += \"/\";\n }\n\n if (isUNCPath) {\n if (!isPathAbsolute) {\n return `//./${path}`;\n }\n return `//${path}`;\n }\n\n return isPathAbsolute && !isAbsolute(path) ? `/${path}` : path;\n}\n\n/**\n * Joins all given path segments together using the platform-specific separator as a delimiter.\n * The resulting path is normalized to remove any redundant or unnecessary segments.\n *\n * @param segments - The path segments to join.\n * @returns The joined and normalized path string.\n */\nexport function joinPaths(...segments: string[]): string {\n let path = \"\";\n\n for (const seg of segments) {\n if (!seg) {\n continue;\n }\n if (path.length > 0) {\n const pathTrailing = path[path.length - 1] === \"/\";\n const segLeading = seg[0] === \"/\";\n const both = pathTrailing && segLeading;\n if (both) {\n path += seg.slice(1);\n } else {\n path += pathTrailing || segLeading ? seg : `/${seg}`;\n }\n } else {\n path += seg;\n }\n }\n\n return correctPaths(path);\n}\n\nexport const join = joinPaths;\n\n/**\n * Resolves a string path, resolving '.' and '.' segments and allowing paths above the root.\n *\n * @param path - The path to normalize.\n * @param allowAboveRoot - Whether to allow the resulting path to be above the root directory.\n * @returns the normalized path string.\n */\nfunction normalizeString(path: string, allowAboveRoot: boolean) {\n let res = \"\";\n let lastSegmentLength = 0;\n let lastSlash = -1;\n let dots = 0;\n let char: string | null = null;\n for (let index = 0; index <= path.length; ++index) {\n if (index < path.length) {\n // casted because we know it exists thanks to the length check\n char = path[index] as string;\n } else if (char === \"/\") {\n break;\n } else {\n char = \"/\";\n }\n if (char === \"/\") {\n if (lastSlash === index - 1 || dots === 1) {\n // NOOP\n } else if (dots === 2) {\n if (\n res.length < 2 ||\n lastSegmentLength !== 2 ||\n res[res.length - 1] !== \".\" ||\n res[res.length - 2] !== \".\"\n ) {\n if (res.length > 2) {\n const lastSlashIndex = res.lastIndexOf(\"/\");\n if (lastSlashIndex === -1) {\n res = \"\";\n lastSegmentLength = 0;\n } else {\n res = res.slice(0, lastSlashIndex);\n lastSegmentLength = res.length - 1 - res.lastIndexOf(\"/\");\n }\n lastSlash = index;\n dots = 0;\n continue;\n } else if (res.length > 0) {\n res = \"\";\n lastSegmentLength = 0;\n lastSlash = index;\n dots = 0;\n continue;\n }\n }\n if (allowAboveRoot) {\n res += res.length > 0 ? \"/..\" : \"..\";\n lastSegmentLength = 2;\n }\n } else {\n if (res.length > 0) {\n res += `/${path.slice(lastSlash + 1, index)}`;\n } else {\n res = path.slice(lastSlash + 1, index);\n }\n lastSegmentLength = index - lastSlash - 1;\n }\n lastSlash = index;\n dots = 0;\n } else if (char === \".\" && dots !== -1) {\n ++dots;\n } else {\n dots = -1;\n }\n }\n return res;\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 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 serializeData: transformer.serialize\n },\n hydrate: {\n deserializeData: transformer.deserialize\n }\n }\n })\n );\n"],"mappings":"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"}
|
package/dist/shared.cjs
CHANGED
|
@@ -1,42 +1 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.createQueryClient = void 0;
|
|
7
|
-
exports.getTRPCServerUrl = getTRPCServerUrl;
|
|
8
|
-
exports.transformer = void 0;
|
|
9
|
-
var _polyfill = require("@js-temporal/polyfill");
|
|
10
|
-
var _joinPaths = require("@stryke/path/join-paths");
|
|
11
|
-
var _reactQuery = require("@tanstack/react-query");
|
|
12
|
-
var _defu = _interopRequireDefault(require("defu"));
|
|
13
|
-
var _superjson = _interopRequireDefault(require("superjson"));
|
|
14
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
15
|
-
function getTRPCServerUrl(e, r = 1) {
|
|
16
|
-
return (0, _joinPaths.joinPaths)(typeof e == "string" ? e : e.host || "", "api", r ? `v${r}` : "", "trpc");
|
|
17
|
-
}
|
|
18
|
-
_superjson.default.registerCustom({
|
|
19
|
-
isApplicable: e => e instanceof _polyfill.Temporal.PlainDate,
|
|
20
|
-
serialize: e => e.toJSON(),
|
|
21
|
-
deserialize: e => _polyfill.Temporal.PlainDate.from(e)
|
|
22
|
-
}, "Temporal.PlainDate"), _superjson.default.registerCustom({
|
|
23
|
-
isApplicable: e => e instanceof _polyfill.Temporal.PlainDateTime,
|
|
24
|
-
serialize: e => e.toJSON(),
|
|
25
|
-
deserialize: e => _polyfill.Temporal.PlainDateTime.from(e)
|
|
26
|
-
}, "Temporal.PlainDateTime");
|
|
27
|
-
const transformer = exports.transformer = _superjson.default,
|
|
28
|
-
createQueryClient = (e = {}) => new _reactQuery.QueryClient((0, _defu.default)(e, {
|
|
29
|
-
defaultOptions: {
|
|
30
|
-
queries: {
|
|
31
|
-
staleTime: 1e3 * 30
|
|
32
|
-
},
|
|
33
|
-
dehydrate: {
|
|
34
|
-
shouldDehydrateQuery: r => (0, _reactQuery.defaultShouldDehydrateQuery)(r) || r.state.status === "pending",
|
|
35
|
-
serializeData: transformer.serialize
|
|
36
|
-
},
|
|
37
|
-
hydrate: {
|
|
38
|
-
deserializeData: transformer.deserialize
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
}));
|
|
42
|
-
exports.createQueryClient = createQueryClient;
|
|
1
|
+
const e=require(`./shared-B2-fZV5o.cjs`);exports.createQueryClient=e.t,exports.getTRPCServerUrl=e.n,exports.transformer=e.r;
|