@highstate/designer 0.7.2 → 0.7.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (131) hide show
  1. package/package.json +14 -7
  2. package/.output/nitro.json +0 -15
  3. package/.output/public/_nuxt/1_b4y8eQ.js +0 -1
  4. package/.output/public/_nuxt/BjOhMR1f.js +0 -242
  5. package/.output/public/_nuxt/CPAAHz3G.js +0 -1
  6. package/.output/public/_nuxt/CmGpyJTe.js +0 -1
  7. package/.output/public/_nuxt/builds/latest.json +0 -1
  8. package/.output/public/_nuxt/builds/meta/f777d22c-e958-4e7c-865d-11bb8a560858.json +0 -1
  9. package/.output/public/_nuxt/entry.Vs8IncyG.css +0 -5
  10. package/.output/public/_nuxt/error-404.BJkSn6RI.css +0 -1
  11. package/.output/public/_nuxt/error-500.TOCKLquH.css +0 -1
  12. package/.output/public/_nuxt/materialdesignicons-webfont.B6OSyW2I.woff2 +0 -0
  13. package/.output/public/_nuxt/materialdesignicons-webfont.BpRar1d5.ttf +0 -0
  14. package/.output/public/_nuxt/materialdesignicons-webfont.Bvl3VxMs.woff +0 -0
  15. package/.output/public/_nuxt/materialdesignicons-webfont.TEmAk13K.eot +0 -0
  16. package/.output/public/favicon.ico +0 -0
  17. package/.output/public/libavoid.wasm +0 -0
  18. package/.output/public/robots.txt +0 -1
  19. package/.output/server/index.mjs +0 -11426
  20. package/.output/server/index.mjs.map +0 -1
  21. package/.output/server/node_modules/@babel/parser/lib/index.js +0 -14246
  22. package/.output/server/node_modules/@babel/parser/package.json +0 -50
  23. package/.output/server/node_modules/@trpc/server/dist/adapters/fetch/fetchRequestHandler.mjs +0 -74
  24. package/.output/server/node_modules/@trpc/server/dist/adapters/fetch/index.mjs +0 -1
  25. package/.output/server/node_modules/@trpc/server/dist/adapters/node-http/incomingMessageToRequest.mjs +0 -119
  26. package/.output/server/node_modules/@trpc/server/dist/adapters/node-http/index.mjs +0 -2
  27. package/.output/server/node_modules/@trpc/server/dist/adapters/node-http/nodeHTTPRequestHandler.mjs +0 -92
  28. package/.output/server/node_modules/@trpc/server/dist/adapters/node-http/writeResponse.mjs +0 -79
  29. package/.output/server/node_modules/@trpc/server/dist/index.mjs +0 -12
  30. package/.output/server/node_modules/@trpc/server/dist/observable/observable.mjs +0 -175
  31. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/createProxy.mjs +0 -73
  32. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/error/TRPCError.mjs +0 -79
  33. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/error/formatter.mjs +0 -5
  34. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/error/getErrorShape.mjs +0 -29
  35. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/http/abortError.mjs +0 -10
  36. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/http/contentType.mjs +0 -229
  37. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/http/getHTTPStatusCode.mjs +0 -76
  38. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/http/parseConnectionParams.mjs +0 -39
  39. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/http/resolveResponse.mjs +0 -570
  40. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/initTRPC.mjs +0 -80
  41. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/middleware.mjs +0 -90
  42. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/parser.mjs +0 -52
  43. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/procedureBuilder.mjs +0 -198
  44. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/rootConfig.mjs +0 -6
  45. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/router.mjs +0 -278
  46. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/rpc/codes.mjs +0 -54
  47. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/stream/jsonl.mjs +0 -603
  48. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/stream/sse.mjs +0 -369
  49. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/stream/tracked.mjs +0 -25
  50. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/stream/utils/asyncIterable.mjs +0 -165
  51. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/stream/utils/createDeferred.mjs +0 -15
  52. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/stream/utils/disposable.mjs +0 -43
  53. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/stream/utils/mergeAsyncIterables.mjs +0 -239
  54. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/stream/utils/readableStreamFrom.mjs +0 -23
  55. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/stream/utils/timerResource.mjs +0 -23
  56. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/stream/utils/withPing.mjs +0 -127
  57. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/transformer.mjs +0 -101
  58. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/utils.mjs +0 -83
  59. package/.output/server/node_modules/@trpc/server/dist/vendor/standard-schema-v1/error.mjs +0 -26
  60. package/.output/server/node_modules/@trpc/server/dist/vendor/unpromise/unpromise.mjs +0 -289
  61. package/.output/server/node_modules/@trpc/server/package.json +0 -156
  62. package/.output/server/node_modules/@vue/compiler-core/dist/compiler-core.cjs.prod.js +0 -6690
  63. package/.output/server/node_modules/@vue/compiler-core/package.json +0 -58
  64. package/.output/server/node_modules/@vue/compiler-dom/dist/compiler-dom.cjs.prod.js +0 -686
  65. package/.output/server/node_modules/@vue/compiler-dom/package.json +0 -57
  66. package/.output/server/node_modules/@vue/compiler-ssr/dist/compiler-ssr.cjs.js +0 -1404
  67. package/.output/server/node_modules/@vue/compiler-ssr/package.json +0 -34
  68. package/.output/server/node_modules/@vue/reactivity/dist/reactivity.cjs.prod.js +0 -1789
  69. package/.output/server/node_modules/@vue/reactivity/package.json +0 -55
  70. package/.output/server/node_modules/@vue/runtime-core/dist/runtime-core.cjs.prod.js +0 -6654
  71. package/.output/server/node_modules/@vue/runtime-core/package.json +0 -52
  72. package/.output/server/node_modules/@vue/runtime-dom/dist/runtime-dom.cjs.prod.js +0 -1669
  73. package/.output/server/node_modules/@vue/runtime-dom/package.json +0 -60
  74. package/.output/server/node_modules/@vue/server-renderer/dist/server-renderer.cjs.prod.js +0 -857
  75. package/.output/server/node_modules/@vue/server-renderer/package.json +0 -55
  76. package/.output/server/node_modules/@vue/shared/dist/shared.cjs.prod.js +0 -594
  77. package/.output/server/node_modules/@vue/shared/package.json +0 -47
  78. package/.output/server/node_modules/devalue/index.js +0 -3
  79. package/.output/server/node_modules/devalue/package.json +0 -34
  80. package/.output/server/node_modules/devalue/src/base64.js +0 -110
  81. package/.output/server/node_modules/devalue/src/constants.js +0 -6
  82. package/.output/server/node_modules/devalue/src/parse.js +0 -160
  83. package/.output/server/node_modules/devalue/src/stringify.js +0 -232
  84. package/.output/server/node_modules/devalue/src/uneval.js +0 -351
  85. package/.output/server/node_modules/devalue/src/utils.js +0 -113
  86. package/.output/server/node_modules/entities/lib/decode.js +0 -536
  87. package/.output/server/node_modules/entities/lib/decode_codepoint.js +0 -76
  88. package/.output/server/node_modules/entities/lib/generated/decode-data-html.js +0 -9
  89. package/.output/server/node_modules/entities/lib/generated/decode-data-xml.js +0 -9
  90. package/.output/server/node_modules/entities/package.json +0 -90
  91. package/.output/server/node_modules/estree-walker/dist/umd/estree-walker.js +0 -344
  92. package/.output/server/node_modules/estree-walker/package.json +0 -37
  93. package/.output/server/node_modules/hookable/dist/index.mjs +0 -290
  94. package/.output/server/node_modules/hookable/package.json +0 -49
  95. package/.output/server/node_modules/source-map-js/lib/array-set.js +0 -121
  96. package/.output/server/node_modules/source-map-js/lib/base64-vlq.js +0 -140
  97. package/.output/server/node_modules/source-map-js/lib/base64.js +0 -67
  98. package/.output/server/node_modules/source-map-js/lib/binary-search.js +0 -111
  99. package/.output/server/node_modules/source-map-js/lib/mapping-list.js +0 -79
  100. package/.output/server/node_modules/source-map-js/lib/quick-sort.js +0 -132
  101. package/.output/server/node_modules/source-map-js/lib/source-map-consumer.js +0 -1188
  102. package/.output/server/node_modules/source-map-js/lib/source-map-generator.js +0 -444
  103. package/.output/server/node_modules/source-map-js/lib/source-node.js +0 -413
  104. package/.output/server/node_modules/source-map-js/lib/util.js +0 -594
  105. package/.output/server/node_modules/source-map-js/package.json +0 -71
  106. package/.output/server/node_modules/source-map-js/source-map.js +0 -8
  107. package/.output/server/node_modules/ufo/dist/index.mjs +0 -630
  108. package/.output/server/node_modules/ufo/package.json +0 -47
  109. package/.output/server/node_modules/unhead/dist/plugins.mjs +0 -94
  110. package/.output/server/node_modules/unhead/dist/server.mjs +0 -220
  111. package/.output/server/node_modules/unhead/dist/shared/unhead.C13swrCa.mjs +0 -48
  112. package/.output/server/node_modules/unhead/dist/shared/unhead.CApf5sj3.mjs +0 -148
  113. package/.output/server/node_modules/unhead/dist/shared/unhead.Cp0iF6eN.mjs +0 -177
  114. package/.output/server/node_modules/unhead/dist/shared/unhead.DQc16pHI.mjs +0 -196
  115. package/.output/server/node_modules/unhead/dist/shared/unhead.DZbvapt-.mjs +0 -70
  116. package/.output/server/node_modules/unhead/dist/shared/unhead.DeCxexjU.mjs +0 -166
  117. package/.output/server/node_modules/unhead/dist/shared/unhead.Txd0XTIP.mjs +0 -172
  118. package/.output/server/node_modules/unhead/dist/shared/unhead.yem5I2v_.mjs +0 -38
  119. package/.output/server/node_modules/unhead/dist/utils.mjs +0 -5
  120. package/.output/server/node_modules/unhead/package.json +0 -101
  121. package/.output/server/node_modules/vue/dist/vue.cjs.js +0 -80
  122. package/.output/server/node_modules/vue/dist/vue.cjs.prod.js +0 -66
  123. package/.output/server/node_modules/vue/index.js +0 -7
  124. package/.output/server/node_modules/vue/index.mjs +0 -1
  125. package/.output/server/node_modules/vue/package.json +0 -112
  126. package/.output/server/node_modules/vue/server-renderer/index.mjs +0 -1
  127. package/.output/server/node_modules/vue-bundle-renderer/dist/runtime.mjs +0 -196
  128. package/.output/server/node_modules/vue-bundle-renderer/package.json +0 -50
  129. package/.output/server/node_modules/zod/lib/index.mjs +0 -4405
  130. package/.output/server/node_modules/zod/package.json +0 -122
  131. package/.output/server/package.json +0 -1
@@ -1,79 +0,0 @@
1
- import { isObject } from '../utils.mjs';
2
-
3
- function _define_property(obj, key, value) {
4
- if (key in obj) {
5
- Object.defineProperty(obj, key, {
6
- value: value,
7
- enumerable: true,
8
- configurable: true,
9
- writable: true
10
- });
11
- } else {
12
- obj[key] = value;
13
- }
14
- return obj;
15
- }
16
- class UnknownCauseError extends Error {
17
- }
18
- function getCauseFromUnknown(cause) {
19
- if (cause instanceof Error) {
20
- return cause;
21
- }
22
- const type = typeof cause;
23
- if (type === 'undefined' || type === 'function' || cause === null) {
24
- return undefined;
25
- }
26
- // Primitive types just get wrapped in an error
27
- if (type !== 'object') {
28
- // eslint-disable-next-line @typescript-eslint/no-base-to-string
29
- return new Error(String(cause));
30
- }
31
- // If it's an object, we'll create a synthetic error
32
- if (isObject(cause)) {
33
- const err = new UnknownCauseError();
34
- for(const key in cause){
35
- err[key] = cause[key];
36
- }
37
- return err;
38
- }
39
- return undefined;
40
- }
41
- function getTRPCErrorFromUnknown(cause) {
42
- if (cause instanceof TRPCError) {
43
- return cause;
44
- }
45
- if (cause instanceof Error && cause.name === 'TRPCError') {
46
- // https://github.com/trpc/trpc/pull/4848
47
- return cause;
48
- }
49
- const trpcError = new TRPCError({
50
- code: 'INTERNAL_SERVER_ERROR',
51
- cause
52
- });
53
- // Inherit stack from error
54
- if (cause instanceof Error && cause.stack) {
55
- trpcError.stack = cause.stack;
56
- }
57
- return trpcError;
58
- }
59
- class TRPCError extends Error {
60
- constructor(opts){
61
- const cause = getCauseFromUnknown(opts.cause);
62
- const message = opts.message ?? cause?.message ?? opts.code;
63
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
64
- // @ts-ignore https://github.com/tc39/proposal-error-cause
65
- super(message, {
66
- cause
67
- }), // eslint-disable-next-line @typescript-eslint/ban-ts-comment
68
- // @ts-ignore override doesn't work in all environments due to "This member cannot have an 'override' modifier because it is not declared in the base class 'Error'"
69
- _define_property(this, "cause", void 0), _define_property(this, "code", void 0);
70
- this.code = opts.code;
71
- this.name = 'TRPCError';
72
- if (!this.cause) {
73
- // < ES2022 / < Node 16.9.0 compatability
74
- this.cause = cause;
75
- }
76
- }
77
- }
78
-
79
- export { TRPCError, getCauseFromUnknown, getTRPCErrorFromUnknown };
@@ -1,5 +0,0 @@
1
- const defaultFormatter = ({ shape })=>{
2
- return shape;
3
- };
4
-
5
- export { defaultFormatter };
@@ -1,29 +0,0 @@
1
- import { getHTTPStatusCodeFromError } from '../http/getHTTPStatusCode.mjs';
2
- import { TRPC_ERROR_CODES_BY_KEY } from '../rpc/codes.mjs';
3
-
4
- /**
5
- * @internal
6
- */ function getErrorShape(opts) {
7
- const { path, error, config } = opts;
8
- const { code } = opts.error;
9
- const shape = {
10
- message: error.message,
11
- code: TRPC_ERROR_CODES_BY_KEY[code],
12
- data: {
13
- code,
14
- httpStatus: getHTTPStatusCodeFromError(error)
15
- }
16
- };
17
- if (config.isDev && typeof opts.error.stack === 'string') {
18
- shape.data.stack = opts.error.stack;
19
- }
20
- if (typeof path === 'string') {
21
- shape.data.path = path;
22
- }
23
- return config.errorFormatter({
24
- ...opts,
25
- shape
26
- });
27
- }
28
-
29
- export { getErrorShape };
@@ -1,10 +0,0 @@
1
- import { isObject } from '../utils.mjs';
2
-
3
- function isAbortError(error) {
4
- return isObject(error) && error['name'] === 'AbortError';
5
- }
6
- function throwAbortError(message = 'AbortError') {
7
- throw new DOMException(message, 'AbortError');
8
- }
9
-
10
- export { isAbortError, throwAbortError };
@@ -1,229 +0,0 @@
1
- import { TRPCError } from '../error/TRPCError.mjs';
2
- import { getProcedureAtPath } from '../router.mjs';
3
- import { isObject, unsetMarker } from '../utils.mjs';
4
- import { parseConnectionParamsFromString } from './parseConnectionParams.mjs';
5
-
6
- /**
7
- * Memoize a function that takes no arguments
8
- * @internal
9
- */ function memo(fn) {
10
- let promise = null;
11
- let value = unsetMarker;
12
- return {
13
- /**
14
- * Lazily read the value
15
- */ read: async ()=>{
16
- if (value !== unsetMarker) {
17
- return value;
18
- }
19
- if (promise === null) {
20
- // dedupes promises and catches errors
21
- promise = fn().catch((cause)=>{
22
- if (cause instanceof TRPCError) {
23
- throw cause;
24
- }
25
- throw new TRPCError({
26
- code: 'BAD_REQUEST',
27
- message: cause instanceof Error ? cause.message : 'Invalid input',
28
- cause
29
- });
30
- });
31
- }
32
- value = await promise;
33
- promise = null;
34
- return value;
35
- },
36
- /**
37
- * Get an already stored result
38
- */ result: ()=>{
39
- return value !== unsetMarker ? value : undefined;
40
- }
41
- };
42
- }
43
- const jsonContentTypeHandler = {
44
- isMatch (req) {
45
- return !!req.headers.get('content-type')?.startsWith('application/json');
46
- },
47
- async parse (opts) {
48
- const { req } = opts;
49
- const isBatchCall = opts.searchParams.get('batch') === '1';
50
- const paths = isBatchCall ? opts.path.split(',') : [
51
- opts.path
52
- ];
53
- const getInputs = memo(async ()=>{
54
- let inputs = undefined;
55
- if (req.method === 'GET') {
56
- const queryInput = opts.searchParams.get('input');
57
- if (queryInput) {
58
- inputs = JSON.parse(queryInput);
59
- }
60
- } else {
61
- inputs = await req.json();
62
- }
63
- if (inputs === undefined) {
64
- return {};
65
- }
66
- if (!isBatchCall) {
67
- return {
68
- 0: opts.router._def._config.transformer.input.deserialize(inputs)
69
- };
70
- }
71
- if (!isObject(inputs)) {
72
- throw new TRPCError({
73
- code: 'BAD_REQUEST',
74
- message: '"input" needs to be an object when doing a batch call'
75
- });
76
- }
77
- const acc = {};
78
- for (const index of paths.keys()){
79
- const input = inputs[index];
80
- if (input !== undefined) {
81
- acc[index] = opts.router._def._config.transformer.input.deserialize(input);
82
- }
83
- }
84
- return acc;
85
- });
86
- const calls = await Promise.all(paths.map(async (path, index)=>{
87
- const procedure = await getProcedureAtPath(opts.router, path);
88
- return {
89
- path,
90
- procedure,
91
- getRawInput: async ()=>{
92
- const inputs = await getInputs.read();
93
- let input = inputs[index];
94
- if (procedure?._def.type === 'subscription') {
95
- const lastEventId = opts.headers.get('last-event-id') ?? opts.searchParams.get('lastEventId') ?? opts.searchParams.get('Last-Event-Id');
96
- if (lastEventId) {
97
- if (isObject(input)) {
98
- input = {
99
- ...input,
100
- lastEventId: lastEventId
101
- };
102
- } else {
103
- input ?? (input = {
104
- lastEventId: lastEventId
105
- });
106
- }
107
- }
108
- }
109
- return input;
110
- },
111
- result: ()=>{
112
- return getInputs.result()?.[index];
113
- }
114
- };
115
- }));
116
- const types = new Set(calls.map((call)=>call.procedure?._def.type).filter(Boolean));
117
- /* istanbul ignore if -- @preserve */ if (types.size > 1) {
118
- throw new TRPCError({
119
- code: 'BAD_REQUEST',
120
- message: `Cannot mix procedure types in call: ${Array.from(types).join(', ')}`
121
- });
122
- }
123
- const type = types.values().next().value ?? 'unknown';
124
- const connectionParamsStr = opts.searchParams.get('connectionParams');
125
- const info = {
126
- isBatchCall,
127
- accept: req.headers.get('trpc-accept'),
128
- calls,
129
- type,
130
- connectionParams: connectionParamsStr === null ? null : parseConnectionParamsFromString(connectionParamsStr),
131
- signal: req.signal,
132
- url: opts.url
133
- };
134
- return info;
135
- }
136
- };
137
- const formDataContentTypeHandler = {
138
- isMatch (req) {
139
- return !!req.headers.get('content-type')?.startsWith('multipart/form-data');
140
- },
141
- async parse (opts) {
142
- const { req } = opts;
143
- if (req.method !== 'POST') {
144
- throw new TRPCError({
145
- code: 'METHOD_NOT_SUPPORTED',
146
- message: 'Only POST requests are supported for multipart/form-data requests'
147
- });
148
- }
149
- const getInputs = memo(async ()=>{
150
- const fd = await req.formData();
151
- return fd;
152
- });
153
- const procedure = await getProcedureAtPath(opts.router, opts.path);
154
- return {
155
- accept: null,
156
- calls: [
157
- {
158
- path: opts.path,
159
- getRawInput: getInputs.read,
160
- result: getInputs.result,
161
- procedure
162
- }
163
- ],
164
- isBatchCall: false,
165
- type: 'mutation',
166
- connectionParams: null,
167
- signal: req.signal,
168
- url: opts.url
169
- };
170
- }
171
- };
172
- const octetStreamContentTypeHandler = {
173
- isMatch (req) {
174
- return !!req.headers.get('content-type')?.startsWith('application/octet-stream');
175
- },
176
- async parse (opts) {
177
- const { req } = opts;
178
- if (req.method !== 'POST') {
179
- throw new TRPCError({
180
- code: 'METHOD_NOT_SUPPORTED',
181
- message: 'Only POST requests are supported for application/octet-stream requests'
182
- });
183
- }
184
- const getInputs = memo(async ()=>{
185
- return req.body;
186
- });
187
- return {
188
- calls: [
189
- {
190
- path: opts.path,
191
- getRawInput: getInputs.read,
192
- result: getInputs.result,
193
- procedure: await getProcedureAtPath(opts.router, opts.path)
194
- }
195
- ],
196
- isBatchCall: false,
197
- accept: null,
198
- type: 'mutation',
199
- connectionParams: null,
200
- signal: req.signal,
201
- url: opts.url
202
- };
203
- }
204
- };
205
- const handlers = [
206
- jsonContentTypeHandler,
207
- formDataContentTypeHandler,
208
- octetStreamContentTypeHandler
209
- ];
210
- function getContentTypeHandler(req) {
211
- const handler = handlers.find((handler)=>handler.isMatch(req));
212
- if (handler) {
213
- return handler;
214
- }
215
- if (!handler && req.method === 'GET') {
216
- // fallback to JSON for get requests so GET-requests can be opened in browser easily
217
- return jsonContentTypeHandler;
218
- }
219
- throw new TRPCError({
220
- code: 'UNSUPPORTED_MEDIA_TYPE',
221
- message: req.headers.has('content-type') ? `Unsupported content-type "${req.headers.get('content-type')}` : 'Missing content-type header'
222
- });
223
- }
224
- async function getRequestInfo(opts) {
225
- const handler = getContentTypeHandler(opts.req);
226
- return await handler.parse(opts);
227
- }
228
-
229
- export { getRequestInfo };
@@ -1,76 +0,0 @@
1
- import { TRPC_ERROR_CODES_BY_NUMBER } from '../rpc/codes.mjs';
2
- import { isObject } from '../utils.mjs';
3
-
4
- const JSONRPC2_TO_HTTP_CODE = {
5
- PARSE_ERROR: 400,
6
- BAD_REQUEST: 400,
7
- UNAUTHORIZED: 401,
8
- FORBIDDEN: 403,
9
- NOT_FOUND: 404,
10
- METHOD_NOT_SUPPORTED: 405,
11
- TIMEOUT: 408,
12
- CONFLICT: 409,
13
- PRECONDITION_FAILED: 412,
14
- PAYLOAD_TOO_LARGE: 413,
15
- UNSUPPORTED_MEDIA_TYPE: 415,
16
- UNPROCESSABLE_CONTENT: 422,
17
- TOO_MANY_REQUESTS: 429,
18
- CLIENT_CLOSED_REQUEST: 499,
19
- INTERNAL_SERVER_ERROR: 500,
20
- NOT_IMPLEMENTED: 501,
21
- BAD_GATEWAY: 502,
22
- SERVICE_UNAVAILABLE: 503,
23
- GATEWAY_TIMEOUT: 504
24
- };
25
- const HTTP_CODE_TO_JSONRPC2 = {
26
- 400: 'BAD_REQUEST',
27
- 401: 'UNAUTHORIZED',
28
- 403: 'FORBIDDEN',
29
- 404: 'NOT_FOUND',
30
- 405: 'METHOD_NOT_SUPPORTED',
31
- 408: 'TIMEOUT',
32
- 409: 'CONFLICT',
33
- 412: 'PRECONDITION_FAILED',
34
- 413: 'PAYLOAD_TOO_LARGE',
35
- 415: 'UNSUPPORTED_MEDIA_TYPE',
36
- 422: 'UNPROCESSABLE_CONTENT',
37
- 429: 'TOO_MANY_REQUESTS',
38
- 499: 'CLIENT_CLOSED_REQUEST',
39
- 500: 'INTERNAL_SERVER_ERROR',
40
- 501: 'NOT_IMPLEMENTED',
41
- 502: 'BAD_GATEWAY',
42
- 503: 'SERVICE_UNAVAILABLE',
43
- 504: 'GATEWAY_TIMEOUT'
44
- };
45
- function getStatusCodeFromKey(code) {
46
- return JSONRPC2_TO_HTTP_CODE[code] ?? 500;
47
- }
48
- function getStatusKeyFromCode(code) {
49
- return HTTP_CODE_TO_JSONRPC2[code] ?? 'INTERNAL_SERVER_ERROR';
50
- }
51
- function getHTTPStatusCode(json) {
52
- const arr = Array.isArray(json) ? json : [
53
- json
54
- ];
55
- const httpStatuses = new Set(arr.map((res)=>{
56
- if ('error' in res && isObject(res.error.data)) {
57
- if (typeof res.error.data?.['httpStatus'] === 'number') {
58
- return res.error.data['httpStatus'];
59
- }
60
- const code = TRPC_ERROR_CODES_BY_NUMBER[res.error.code];
61
- return getStatusCodeFromKey(code);
62
- }
63
- return 200;
64
- }));
65
- if (httpStatuses.size !== 1) {
66
- return 207;
67
- }
68
- const httpStatus = httpStatuses.values().next().value;
69
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
70
- return httpStatus;
71
- }
72
- function getHTTPStatusCodeFromError(error) {
73
- return getStatusCodeFromKey(error.code);
74
- }
75
-
76
- export { HTTP_CODE_TO_JSONRPC2, JSONRPC2_TO_HTTP_CODE, getHTTPStatusCode, getHTTPStatusCodeFromError, getStatusCodeFromKey, getStatusKeyFromCode };
@@ -1,39 +0,0 @@
1
- import { TRPCError } from '../error/TRPCError.mjs';
2
- import { isObject } from '../utils.mjs';
3
-
4
- function parseConnectionParamsFromUnknown(parsed) {
5
- try {
6
- if (parsed === null) {
7
- return null;
8
- }
9
- if (!isObject(parsed)) {
10
- throw new Error('Expected object');
11
- }
12
- const nonStringValues = Object.entries(parsed).filter(([_key, value])=>typeof value !== 'string');
13
- if (nonStringValues.length > 0) {
14
- throw new Error(`Expected connectionParams to be string values. Got ${nonStringValues.map(([key, value])=>`${key}: ${typeof value}`).join(', ')}`);
15
- }
16
- return parsed;
17
- } catch (cause) {
18
- throw new TRPCError({
19
- code: 'PARSE_ERROR',
20
- message: 'Invalid connection params shape',
21
- cause
22
- });
23
- }
24
- }
25
- function parseConnectionParamsFromString(str) {
26
- let parsed;
27
- try {
28
- parsed = JSON.parse(str);
29
- } catch (cause) {
30
- throw new TRPCError({
31
- code: 'PARSE_ERROR',
32
- message: 'Not JSON-parsable query params',
33
- cause
34
- });
35
- }
36
- return parseConnectionParamsFromUnknown(parsed);
37
- }
38
-
39
- export { parseConnectionParamsFromString, parseConnectionParamsFromUnknown };