@based/server 9.2.2 → 9.2.4

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.
@@ -59,7 +59,11 @@ export class BasedFunctions {
59
59
  route = this.getRoute(path);
60
60
  }
61
61
  // deprecate this.routes[this.paths['/']]
62
- return route || this.routes[path] || this.routes['404'] || this.routes[this.paths['/']] || null;
62
+ return (route ||
63
+ this.routes[path] ||
64
+ this.routes['404'] ||
65
+ this.routes[this.paths['/']] ||
66
+ null);
63
67
  };
64
68
  }
65
69
  if (this.config.install === undefined) {
@@ -338,34 +342,22 @@ export class BasedFunctions {
338
342
  return s;
339
343
  }
340
344
  getRoute(path) {
341
- let i = 0;
342
- let removeNameFromTokens = false;
343
- let tokens = [];
344
345
  const bufferPath = Buffer.from(path);
345
- const routesKeys = Object.keys(this.routes);
346
- while (i < routesKeys.length) {
347
- tokens = [...this.routes[routesKeys[i]].tokens];
348
- if (removeNameFromTokens && !this.routes[routesKeys[i]].nameOnPath) {
349
- if (tokens.length > 1) {
350
- tokens.shift();
351
- }
352
- else {
353
- i++;
354
- continue;
355
- }
356
- }
357
- if (pathMatcher(tokens, bufferPath)) {
358
- return this.routes[routesKeys[i]];
359
- }
360
- i++;
361
- if (i === routesKeys.length && !removeNameFromTokens) {
362
- removeNameFromTokens = true;
363
- i = 0;
346
+ for (const key in this.routes) {
347
+ const route = this.routes[key];
348
+ if (pathMatcher(route.tokens, bufferPath)) {
349
+ return route;
364
350
  }
365
- if (i === routesKeys.length && removeNameFromTokens) {
366
- return null;
351
+ }
352
+ for (const key in this.routes) {
353
+ const route = this.routes[key];
354
+ if (!route.nameOnPath) {
355
+ if (pathMatcher(route.tokens.slice(1), bufferPath)) {
356
+ return route;
357
+ }
367
358
  }
368
359
  }
360
+ return null;
369
361
  }
370
362
  getFromStore(name) {
371
363
  const spec = this.specs[name];
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/functions/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/functions/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { HttpSession } from '@based/functions';
2
+ import { IsAuthorizedHandler } from '../../authorize.js';
3
+ export declare const basicFunction: IsAuthorizedHandler<HttpSession>;
@@ -0,0 +1,75 @@
1
+ import { sendHttpResponse } from '../../sendHttpResponse.js';
2
+ import { BasedErrorCode } from '@based/errors';
3
+ import { sendError } from '../../sendError.js';
4
+ export const basicFunction = async (route, spec, server, ctx, payload) => {
5
+ if (spec.relay) {
6
+ const client = server.clients[spec.relay.client];
7
+ if (!client) {
8
+ sendError(server, ctx, BasedErrorCode.FunctionError, {
9
+ err: new Error('Cannot find client ' + spec.relay),
10
+ route,
11
+ });
12
+ return;
13
+ }
14
+ client
15
+ .call(spec.relay.target ?? spec.name, payload)
16
+ .then(async (result) => {
17
+ if (!ctx.session) {
18
+ return;
19
+ }
20
+ if (spec.httpResponse) {
21
+ const send = (responseData, headers, status) => {
22
+ if (!ctx.session) {
23
+ return;
24
+ }
25
+ if (!status) {
26
+ sendHttpResponse(ctx, responseData, headers);
27
+ }
28
+ else {
29
+ sendHttpResponse(ctx, responseData, headers, typeof status === 'string' ? status : String(status));
30
+ }
31
+ };
32
+ await spec.httpResponse(server.client, payload, result, send, ctx);
33
+ return;
34
+ }
35
+ sendHttpResponse(ctx, result);
36
+ })
37
+ .catch((err) => {
38
+ sendError(server, ctx, BasedErrorCode.FunctionError, {
39
+ err,
40
+ route,
41
+ });
42
+ });
43
+ return;
44
+ }
45
+ spec
46
+ .fn(server.client, payload, ctx)
47
+ .then(async (result) => {
48
+ if (!ctx.session) {
49
+ return;
50
+ }
51
+ if (spec.httpResponse) {
52
+ const send = (responseData, headers, status) => {
53
+ if (!ctx.session) {
54
+ return;
55
+ }
56
+ if (!status) {
57
+ sendHttpResponse(ctx, responseData, headers);
58
+ }
59
+ else {
60
+ sendHttpResponse(ctx, responseData, headers, typeof status === 'string' ? status : String(status));
61
+ }
62
+ };
63
+ await spec.httpResponse(server.client, payload, result, send, ctx);
64
+ return;
65
+ }
66
+ sendHttpResponse(ctx, result);
67
+ })
68
+ .catch((err) => {
69
+ sendError(server, ctx, BasedErrorCode.FunctionError, {
70
+ err,
71
+ route,
72
+ });
73
+ });
74
+ };
75
+ //# sourceMappingURL=basicFunction%20copy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"basicFunction copy.js","sourceRoot":"","sources":["../../../src/incoming/http/basicFunction copy.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { HttpSession } from '@based/functions';
2
+ import { IsAuthorizedHandler } from '../../authorize.js';
3
+ export declare const httpFunction: IsAuthorizedHandler<HttpSession>;
@@ -0,0 +1,75 @@
1
+ import { sendHttpResponse } from '../../sendHttpResponse.js';
2
+ import { BasedErrorCode } from '@based/errors';
3
+ import { sendError } from '../../sendError.js';
4
+ export const httpFunction = async (route, spec, server, ctx, payload) => {
5
+ if (spec.relay) {
6
+ const client = server.clients[spec.relay.client];
7
+ if (!client) {
8
+ sendError(server, ctx, BasedErrorCode.FunctionError, {
9
+ err: new Error('Cannot find client ' + spec.relay),
10
+ route,
11
+ });
12
+ return;
13
+ }
14
+ client
15
+ .call(spec.relay.target ?? spec.name, payload)
16
+ .then(async (result) => {
17
+ if (!ctx.session) {
18
+ return;
19
+ }
20
+ if (spec.httpResponse) {
21
+ const send = (responseData, headers, status) => {
22
+ if (!ctx.session) {
23
+ return;
24
+ }
25
+ if (!status) {
26
+ sendHttpResponse(ctx, responseData, headers);
27
+ }
28
+ else {
29
+ sendHttpResponse(ctx, responseData, headers, typeof status === 'string' ? status : String(status));
30
+ }
31
+ };
32
+ await spec.httpResponse(server.client, payload, result, send, ctx);
33
+ return;
34
+ }
35
+ sendHttpResponse(ctx, result);
36
+ })
37
+ .catch((err) => {
38
+ sendError(server, ctx, BasedErrorCode.FunctionError, {
39
+ err,
40
+ route,
41
+ });
42
+ });
43
+ return;
44
+ }
45
+ spec
46
+ .fn(server.client, payload, ctx)
47
+ .then(async (result) => {
48
+ if (!ctx.session) {
49
+ return;
50
+ }
51
+ if (spec.httpResponse) {
52
+ const send = (responseData, headers, status) => {
53
+ if (!ctx.session) {
54
+ return;
55
+ }
56
+ if (!status) {
57
+ sendHttpResponse(ctx, responseData, headers);
58
+ }
59
+ else {
60
+ sendHttpResponse(ctx, responseData, headers, typeof status === 'string' ? status : String(status));
61
+ }
62
+ };
63
+ await spec.httpResponse(server.client, payload, result, send, ctx);
64
+ return;
65
+ }
66
+ sendHttpResponse(ctx, result);
67
+ })
68
+ .catch((err) => {
69
+ sendError(server, ctx, BasedErrorCode.FunctionError, {
70
+ err,
71
+ route,
72
+ });
73
+ });
74
+ };
75
+ //# sourceMappingURL=function.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"function.js","sourceRoot":"","sources":["../../../src/incoming/http/function.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Matches a route with a path, always returning an object with the keys defined in the route.
3
+ * If a value isn't found or doesn't pass validation (custom regex), it'll be null.
4
+ * For repeatable params with '*', the default value is an empty array.
5
+ *
6
+ * Rules:
7
+ * - Required params: if missing, returns null.
8
+ * - Custom regex params: if it doesn't match, returns null.
9
+ * - Repeatable params with '+': if missing, returns null; otherwise, returns an array.
10
+ * - Repeatable params with '*': if missing, returns an empty array; otherwise, returns an array.
11
+ * - Optional params ('?'): if missing, returns null.
12
+ * - Malformed parameters: '+' or '*' cannot be combined with '?' in the same parameter, will returns null.
13
+ *
14
+ * @param route E.g., '/users/:userId(\\d+)?'
15
+ * @param path E.g., '/users/123'
16
+ * @param sensitive If true, matching is case-sensitive.
17
+ * @param strict If true, trailing slashes (and other details) are considered.
18
+ * @returns An object with the route keys and their values (never returns null).
19
+ */
20
+ export declare function parsePath(route: string, path: string, sensitive: boolean, strict: boolean): {
21
+ [key: string]: string | string[] | null;
22
+ };
@@ -0,0 +1,126 @@
1
+ function escapeRegExp(str) {
2
+ return str.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
3
+ }
4
+ /**
5
+ * Compiles the route into a regex and extracts the parameter keys.
6
+ *
7
+ * @param route The route string, e.g., '/users/:userId(\\d+)?'
8
+ * @param strict If true, matching strictly respects slashes (trailing slash matters).
9
+ * @param sensitive If true, matching is case-sensitive.
10
+ * @returns An object containing the compiled regex and the array of keys.
11
+ */
12
+ function compileRoute(route, strict, sensitive) {
13
+ const keys = [];
14
+ let regexStr = '^';
15
+ let lastIndex = 0;
16
+ const paramRegex = /:([a-zA-Z0-9_]+)(?:\(([^)]+)\))?([+*?])?/g;
17
+ let match;
18
+ while ((match = paramRegex.exec(route)) !== null) {
19
+ const [full, name, customPattern, modifier] = match;
20
+ let staticPart = route.slice(lastIndex, match.index);
21
+ if ((modifier === '?' || modifier === '*') && match.index + full.length === route.length && staticPart.endsWith('/')) {
22
+ staticPart = staticPart.slice(0, -1);
23
+ }
24
+ regexStr += escapeRegExp(staticPart);
25
+ lastIndex = match.index + full.length;
26
+ const pattern = '[^/]+';
27
+ keys.push({
28
+ name,
29
+ modifier: modifier || '',
30
+ repeat: modifier === '*' || modifier === '+',
31
+ customPattern,
32
+ });
33
+ let prefix = staticPart.endsWith('/') ? '' : '/';
34
+ if ((modifier === '?' || modifier === '*') && match.index + full.length === route.length) {
35
+ prefix = '/?';
36
+ }
37
+ if (modifier === '?') {
38
+ regexStr += `(?:${prefix}(${pattern}))?`;
39
+ }
40
+ else if (modifier === '*') {
41
+ regexStr += `(?:${prefix}(${pattern}(?:/${pattern})*))?`;
42
+ }
43
+ else if (modifier === '+') {
44
+ regexStr += `${prefix}(${pattern}(?:/${pattern})*)`;
45
+ }
46
+ else {
47
+ regexStr += `${prefix}(${pattern})`;
48
+ }
49
+ }
50
+ regexStr += escapeRegExp(route.slice(lastIndex));
51
+ if (!strict) {
52
+ if (!regexStr.endsWith('/')) {
53
+ regexStr += '/?';
54
+ }
55
+ else {
56
+ regexStr += '?';
57
+ }
58
+ }
59
+ regexStr += '$';
60
+ const flags = sensitive ? '' : 'i';
61
+ const regex = new RegExp(regexStr, flags);
62
+ return { regex, keys };
63
+ }
64
+ /**
65
+ * Matches a route with a path, always returning an object with the keys defined in the route.
66
+ * If a value isn't found or doesn't pass validation (custom regex), it'll be null.
67
+ * For repeatable params with '*', the default value is an empty array.
68
+ *
69
+ * Rules:
70
+ * - Required params: if missing, returns null.
71
+ * - Custom regex params: if it doesn't match, returns null.
72
+ * - Repeatable params with '+': if missing, returns null; otherwise, returns an array.
73
+ * - Repeatable params with '*': if missing, returns an empty array; otherwise, returns an array.
74
+ * - Optional params ('?'): if missing, returns null.
75
+ * - Malformed parameters: '+' or '*' cannot be combined with '?' in the same parameter, will returns null.
76
+ *
77
+ * @param route E.g., '/users/:userId(\\d+)?'
78
+ * @param path E.g., '/users/123'
79
+ * @param sensitive If true, matching is case-sensitive.
80
+ * @param strict If true, trailing slashes (and other details) are considered.
81
+ * @returns An object with the route keys and their values (never returns null).
82
+ */
83
+ export function parsePath(route, path, sensitive, strict) {
84
+ const { regex, keys } = compileRoute(route, strict, sensitive);
85
+ const m = regex.exec(path);
86
+ const params = {};
87
+ for (const key of keys) {
88
+ if (key.repeat) {
89
+ params[key.name] = key.modifier === '*' ? [] : null;
90
+ }
91
+ else {
92
+ params[key.name] = null;
93
+ }
94
+ }
95
+ if (!m) {
96
+ return params;
97
+ }
98
+ for (let i = 0; i < keys.length; i++) {
99
+ const key = keys[i];
100
+ let value = m[i + 1];
101
+ if (value === undefined) {
102
+ continue;
103
+ }
104
+ if (key.repeat) {
105
+ const parts = value.split('/');
106
+ if (key.customPattern) {
107
+ const customRegex = new RegExp('^' + key.customPattern + '$');
108
+ params[key.name] = parts.every(p => customRegex.test(p)) ? parts : null;
109
+ }
110
+ else {
111
+ params[key.name] = parts;
112
+ }
113
+ }
114
+ else {
115
+ if (key.customPattern) {
116
+ const customRegex = new RegExp('^' + key.customPattern + '$');
117
+ params[key.name] = customRegex.test(value) ? value : null;
118
+ }
119
+ else {
120
+ params[key.name] = value;
121
+ }
122
+ }
123
+ }
124
+ return params;
125
+ }
126
+ //# sourceMappingURL=parsePath.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parsePath.js","sourceRoot":"","sources":["../../../src/incoming/http/parsePath.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { PathToken } from "@based/functions";
1
+ import { PathToken } from '@based/functions';
2
2
  /**
3
3
  * Splits the Buffer using "/" (47) in an array of tokens, empty's as ignored.
4
4
  *
@@ -1,4 +1,4 @@
1
- import { NUMBER_ZERO, NUMBER_NINE, LETTER_UPPER_A, LETTER_UPPER_Z, LETTER_LOWER_A, LETTER_LOWER_Z, UNDERSCORE, HYPHEN, DOT, PLUS, ASTERISK, QUESTION_MARK, REQUIRED_MODIFIER, STATIC, COLON, PARAM, INVALID, SLASH, EQUALS_SIGN, AMPERSAND } from "./types.js";
1
+ import { NUMBER_ZERO, NUMBER_NINE, LETTER_UPPER_A, LETTER_UPPER_Z, LETTER_LOWER_A, LETTER_LOWER_Z, UNDERSCORE, HYPHEN, DOT, PLUS, ASTERISK, QUESTION_MARK, REQUIRED_MODIFIER, STATIC, COLON, PARAM, INVALID, SLASH, EQUALS_SIGN, AMPERSAND, } from './types.js';
2
2
  /**
3
3
  * Checks if the byte represents a character for a parameter name.
4
4
  * Valid characters are 0-9 / A-Z / a-z / _ / - / .
@@ -13,6 +13,23 @@ function isValidParamChar(code) {
13
13
  code === HYPHEN ||
14
14
  code === DOT);
15
15
  }
16
+ /**
17
+ * Checks if the byte represents a character from a reserved function.
18
+ * Reserved functions are represented by 'db' or 'based'
19
+ *
20
+ * @param code - The ASCII code of the character.
21
+ */
22
+ function isReservedName(value) {
23
+ return ((value[0] === 0x64 && // 'd'
24
+ value[1] === 0x62 // 'b'
25
+ ) ||
26
+ (value[0] === 0x62 && // 'b'
27
+ value[1] === 0x61 && // 'a'
28
+ value[2] === 0x73 && // 's'
29
+ value[3] === 0x65 && // 'e'
30
+ value[4] === 0x64) // 'd'
31
+ );
32
+ }
16
33
  /**
17
34
  * Checks if the byte represents a modifier for a parameter name.
18
35
  * Valid modifiers are + / * / ?
@@ -20,9 +37,7 @@ function isValidParamChar(code) {
20
37
  * @param code - The ASCII code of the character.
21
38
  */
22
39
  function isValidParamModifier(code) {
23
- return (code === PLUS ||
24
- code === ASTERISK ||
25
- code === QUESTION_MARK);
40
+ return code === PLUS || code === ASTERISK || code === QUESTION_MARK;
26
41
  }
27
42
  /**
28
43
  * Splits a Buffer using a delimiter (byte) and returns the pieces.
@@ -32,6 +47,9 @@ function isValidParamModifier(code) {
32
47
  */
33
48
  function splitBuffer(buffer, delimiter) {
34
49
  const parts = [];
50
+ if (!buffer?.length) {
51
+ return parts;
52
+ }
35
53
  let start = 0;
36
54
  for (let i = 0; i < buffer.length; i++) {
37
55
  if (buffer[i] === delimiter) {
@@ -56,7 +74,7 @@ function splitBuffer(buffer, delimiter) {
56
74
  */
57
75
  function parseToken(segment) {
58
76
  let modifier = REQUIRED_MODIFIER;
59
- let value = Buffer.allocUnsafe(segment.length);
77
+ let value = Buffer.allocUnsafe(segment?.length);
60
78
  let type = STATIC;
61
79
  let i = 0;
62
80
  let j = 0;
@@ -72,12 +90,12 @@ function parseToken(segment) {
72
90
  }
73
91
  while (i < len) {
74
92
  if (isValidParamChar(segment[i]) ||
75
- (segment[i] === COLON &&
76
- value[0] === 0x64 &&
77
- value[1] === 0x62)) {
93
+ (segment[i] === COLON && isReservedName(value))) {
78
94
  value[j++] = segment[i];
79
95
  }
80
- else if (isValidParamModifier(segment[i]) && type === PARAM && i === len - 1) {
96
+ else if (isValidParamModifier(segment[i]) &&
97
+ type === PARAM &&
98
+ i === len - 1) {
81
99
  modifier = segment[i];
82
100
  }
83
101
  else {
@@ -99,6 +117,9 @@ function parseToken(segment) {
99
117
  export function tokenizePattern(pattern) {
100
118
  const parts = splitBuffer(pattern, SLASH);
101
119
  const tokens = [];
120
+ if (!parts.length) {
121
+ return tokens;
122
+ }
102
123
  for (const part of parts) {
103
124
  tokens.push(parseToken(part));
104
125
  }
@@ -111,7 +132,7 @@ export function tokenizePattern(pattern) {
111
132
  * @param path - The path to test ("/users/123")
112
133
  */
113
134
  export function pathMatcher(tokens, path) {
114
- if (!tokens?.length || path.byteLength === 0 || path[0] !== SLASH) {
135
+ if (!tokens?.length || path?.byteLength === 0 || path?.[0] !== SLASH) {
115
136
  return false;
116
137
  }
117
138
  let tokenIndex = 0;
@@ -121,58 +142,40 @@ export function pathMatcher(tokens, path) {
121
142
  let lastIndex = 1;
122
143
  let tokenSize = token.value.length;
123
144
  let tokenValueIndex = 0;
145
+ if (token.type === STATIC && len <= tokenSize && path !== token.value) {
146
+ return false;
147
+ }
124
148
  while (i < len) {
125
149
  if (path[i] === SLASH) {
126
150
  tokenIndex++;
127
151
  i++;
128
152
  lastIndex = i;
129
153
  token = tokens[tokenIndex];
130
- if (token?.type === STATIC) {
131
- if (tokenSize) {
132
- return false;
133
- }
134
- tokenSize = token.value.length;
135
- tokenValueIndex = 0;
136
- }
137
- if (i === len && !token) {
138
- return true;
139
- }
140
- if (!token) {
141
- const previousModifier = tokens[tokenIndex - 1].modifier;
142
- if (previousModifier === ASTERISK ||
143
- previousModifier === PLUS) {
144
- return true;
145
- }
146
- if (path[i] === QUESTION_MARK) {
147
- return true;
148
- }
154
+ if (path[i] === SLASH) {
149
155
  return false;
150
156
  }
151
157
  }
152
- if (token.type === INVALID) {
153
- return false;
158
+ if (i === len && !token) {
159
+ return true;
154
160
  }
155
- else if (token.type === STATIC) {
156
- if (path[i] !== token.value[i - lastIndex]) {
157
- return false;
158
- }
159
- else if (path[i] === token.value[tokenValueIndex] && tokenSize) {
160
- tokenSize--;
161
- tokenValueIndex++;
161
+ if (i < len && !token) {
162
+ const previousModifier = tokens[tokenIndex - 1].modifier;
163
+ if (previousModifier === ASTERISK || previousModifier === PLUS) {
164
+ return true;
162
165
  }
163
- else {
164
- return false;
166
+ if (path[i] === QUESTION_MARK) {
167
+ return true;
165
168
  }
169
+ return false;
166
170
  }
167
- else if (i === len && token.type === PARAM) {
171
+ if (i === len && token?.type === PARAM) {
168
172
  if (token.modifier === QUESTION_MARK || token.modifier === ASTERISK) {
169
173
  return true;
170
174
  }
171
- else if (token.modifier === PLUS) {
175
+ if (token.modifier === PLUS || token.modifier === REQUIRED_MODIFIER) {
172
176
  return false;
173
177
  }
174
178
  }
175
- i++;
176
179
  if (i === len - 1 && tokens.length - 1 > tokenIndex) {
177
180
  const nextModifier = tokens[tokenIndex + 1]?.modifier;
178
181
  if (nextModifier === undefined ||
@@ -181,8 +184,23 @@ export function pathMatcher(tokens, path) {
181
184
  return false;
182
185
  }
183
186
  }
187
+ if (token?.type === INVALID) {
188
+ return false;
189
+ }
190
+ if (token?.type === STATIC) {
191
+ if (path[i] !== token.value[i - lastIndex]) {
192
+ return false;
193
+ }
194
+ if (path[i] === token.value[tokenValueIndex] && tokenSize) {
195
+ tokenSize--;
196
+ tokenValueIndex++;
197
+ i++;
198
+ continue;
199
+ }
200
+ }
201
+ i++;
184
202
  }
185
- if (tokenSize && token.type === STATIC) {
203
+ if (tokenSize && token?.type === STATIC) {
186
204
  return false;
187
205
  }
188
206
  return true;
@@ -194,8 +212,8 @@ export function pathMatcher(tokens, path) {
194
212
  * @param path - The path to test ("/users/123")
195
213
  */
196
214
  export function pathExtractor(tokens, path) {
197
- if (!tokens.length || path.byteLength === 0 || path[0] !== SLASH) {
198
- return {};
215
+ if (!tokens?.length || path?.byteLength === 0 || path?.[0] !== SLASH) {
216
+ return null;
199
217
  }
200
218
  let tokenIndex = 0;
201
219
  let i = 1;
@@ -211,11 +229,24 @@ export function pathExtractor(tokens, path) {
211
229
  extractions[tokenValue] = '';
212
230
  return extractions;
213
231
  }
232
+ for (const { type, value, modifier } of tokens) {
233
+ if (type === PARAM) {
234
+ tokenValue = value.toString();
235
+ if (modifier === PLUS || modifier === ASTERISK) {
236
+ extractions[tokenValue] = [];
237
+ }
238
+ else {
239
+ extractions[tokenValue] = '';
240
+ }
241
+ }
242
+ }
214
243
  while (i < len) {
215
244
  if (i === 1 && path[i] === QUESTION_MARK) {
216
245
  extractions[tokenValue] = '';
217
246
  }
218
- collected += String.fromCharCode(path[i]) || '';
247
+ if (path[i] !== SLASH) {
248
+ collected += String.fromCharCode(path[i]) || '';
249
+ }
219
250
  if (query) {
220
251
  if (i === len - 1 && collected && !queryValue) {
221
252
  extractions[collected] = true;
@@ -230,7 +261,7 @@ export function pathExtractor(tokens, path) {
230
261
  queryValue = collected;
231
262
  collected = '';
232
263
  }
233
- if (path[i + 1] === AMPERSAND || i === len - 1 && collected) {
264
+ if (path[i + 1] === AMPERSAND || (i === len - 1 && collected)) {
234
265
  i++;
235
266
  extractions[queryValue] = collected;
236
267
  collected = '';
@@ -256,6 +287,7 @@ export function pathExtractor(tokens, path) {
256
287
  isToCollect = false;
257
288
  if (token.type === PARAM) {
258
289
  if (token.modifier === PLUS || token.modifier === ASTERISK) {
290
+ ;
259
291
  extractions[tokenValue].push(collected);
260
292
  }
261
293
  else {
@@ -267,17 +299,6 @@ export function pathExtractor(tokens, path) {
267
299
  if (!collected && tokenIndex + 1 < tokens.length) {
268
300
  tokenIndex++;
269
301
  token = tokens[tokenIndex];
270
- if (token) {
271
- tokenValue = token.value.toString();
272
- if (token.type === PARAM && extractions[tokenValue] === undefined) {
273
- if (token.modifier === PLUS || token.modifier === ASTERISK) {
274
- extractions[tokenValue] = [];
275
- }
276
- else {
277
- extractions[tokenValue] = '';
278
- }
279
- }
280
- }
281
302
  }
282
303
  }
283
304
  return extractions;
@@ -1 +1 @@
1
- {"version":3,"file":"pathMatcher.js","sourceRoot":"","sources":["../../../src/incoming/http/pathMatcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pathMatcher.js","sourceRoot":"","sources":["../../../src/incoming/http/pathMatcher.ts"],"names":[],"mappings":"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"}
@@ -7,8 +7,11 @@ export default (ctx, route) => {
7
7
  url += '/';
8
8
  }
9
9
  url += query;
10
+ if (!url.startsWith(`/${route.name}`)) {
11
+ url = `/${route.name}${url}`;
12
+ }
10
13
  const payload = pathExtractor(route.tokens, Buffer.from(url));
11
- if ('token' in payload) {
14
+ if (payload && 'token' in payload) {
12
15
  ctx.session.authState = parseAuthState(payload.token);
13
16
  if (route.type === 'query') {
14
17
  delete payload.token;
@@ -1 +1 @@
1
- {"version":3,"file":"payloadParser.js","sourceRoot":"","sources":["../../../src/incoming/http/payloadParser.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAEhD,eAAe,CACb,GAAyB,EACzB,KAAyB,EACzB,EAAE;IACF,IAAI,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAA;IACzB,MAAM,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAA;IAE9D,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE,IAAI,KAAK,EAAE,CAAC;QACnD,GAAG,IAAI,GAAG,CAAA;IACZ,CAAC;IAED,GAAG,IAAI,KAAK,CAAA;IACZ,MAAM,OAAO,GAAG,aAAa,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;IAE7D,IAAI,OAAO,IAAI,OAAO,EAAE,CAAC;QACvB,GAAG,CAAC,OAAO,CAAC,SAAS,GAAG,cAAc,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;QAErD,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC3B,OAAO,OAAO,CAAC,KAAK,CAAA;QACtB,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA"}
1
+ {"version":3,"file":"payloadParser.js","sourceRoot":"","sources":["../../../src/incoming/http/payloadParser.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAEhD,eAAe,CAAC,GAAyB,EAAE,KAAyB,EAAE,EAAE;IACtE,IAAI,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAA;IACzB,MAAM,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAA;IAE9D,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE,IAAI,KAAK,EAAE,CAAC;QACnD,GAAG,IAAI,GAAG,CAAA;IACZ,CAAC;IAED,GAAG,IAAI,KAAK,CAAA;IAEZ,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;QACtC,GAAG,GAAG,IAAI,KAAK,CAAC,IAAI,GAAG,GAAG,EAAE,CAAA;IAC9B,CAAC;IAED,MAAM,OAAO,GAAG,aAAa,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;IAE7D,IAAI,OAAO,IAAI,OAAO,IAAI,OAAO,EAAE,CAAC;QAClC,GAAG,CAAC,OAAO,CAAC,SAAS,GAAG,cAAc,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;QAErD,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC3B,OAAO,OAAO,CAAC,KAAK,CAAA;QACtB,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@based/server",
3
- "version": "9.2.2",
3
+ "version": "9.2.4",
4
4
  "license": "MIT",
5
5
  "main": "./dist/index.js",
6
6
  "type": "module",