xypriss 9.12.48 → 9.12.49

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.
@@ -12,59 +12,67 @@ function handleGroup(parentRouter, childRouter, options, callback, internalState
12
12
  options.middleware.forEach((m) => childRouter.use(m));
13
13
  }
14
14
  callback(childRouter);
15
- let prefix = options.prefix ?? "";
16
- if (options.version) {
17
- const ver = `v${options.version.replace(/^v/, "")}`;
18
- prefix = prefix ? path.joinPaths(prefix, ver) : `/${ver}`;
19
- }
20
- prefix = prefix ? path.normalizePath(prefix) : "/";
15
+ const rawPrefixes = Array.isArray(options.prefix)
16
+ ? (options.prefix.length > 0 ? options.prefix : [""])
17
+ : [options.prefix ?? ""];
18
+ const computedPrefixes = rawPrefixes.map((p) => {
19
+ let prefix = p ?? "";
20
+ if (options.version) {
21
+ const ver = `v${options.version.replace(/^v/, "")}`;
22
+ prefix = prefix ? path.joinPaths(prefix, ver) : `/${ver}`;
23
+ }
24
+ return prefix ? path.normalizePath(prefix) : "/";
25
+ });
21
26
  let groupRateLimitMiddleware;
22
27
  if (options.rateLimit) {
23
28
  groupRateLimitMiddleware = middleware.createRateLimitMiddleware(options.rateLimit);
24
29
  }
25
- childRouter.getRoutes().forEach((route) => {
26
- const fullPath = path.joinPaths(prefix, route.originalPath);
27
- const { pattern, paramNames, paramConstraints } = path.compileRoutePattern(fullPath, internalState.options);
28
- const mergedMeta = {
29
- ...(options.meta ?? {}),
30
- ...(route.meta ?? {}),
31
- version: route.meta?.version ?? options.version,
32
- };
33
- const groupGuards = options.guards;
34
- let groupGuardMiddleware;
35
- if (groupGuards) {
36
- groupGuardMiddleware = helpers.createGuardMiddleware(groupGuards, internalState.logger);
37
- }
38
- const rateLimit = route.rateLimit ?? options.rateLimit;
39
- const active = helpers.resolveCondition(options.active, internalState.featureResolver) &&
40
- route.active;
41
- const routeMiddleware = [...route.middleware];
42
- if (groupGuardMiddleware) {
43
- routeMiddleware.unshift({ handler: groupGuardMiddleware });
44
- }
45
- if (!route.rateLimit && groupRateLimitMiddleware) {
46
- routeMiddleware.unshift({ handler: groupRateLimitMiddleware });
47
- }
48
- const mounted = {
49
- ...route,
50
- path: fullPath,
51
- originalPath: fullPath,
52
- pattern,
53
- paramNames,
54
- paramConstraints,
55
- serverId: route.serverId ?? options.serverId,
56
- meta: Object.keys(mergedMeta).length ? mergedMeta : undefined,
57
- guards: groupGuards ?? route.guards,
58
- rateLimit,
59
- groupPrefix: prefix,
60
- groupRateLimit: options.rateLimit,
61
- active,
62
- version: mergedMeta.version,
63
- middleware: [...internalState.middleware, ...routeMiddleware],
64
- };
65
- internalState.routes.push(mounted);
66
- internalState.logger.debug("router", `Group mounted: ${route.method} ${fullPath}`);
67
- });
30
+ const groupGuards = options.guards;
31
+ let groupGuardMiddleware;
32
+ if (groupGuards) {
33
+ groupGuardMiddleware = helpers.createGuardMiddleware(groupGuards, internalState.logger);
34
+ }
35
+ const childRoutes = childRouter.getRoutes();
36
+ for (const prefix of computedPrefixes) {
37
+ childRoutes.forEach((route) => {
38
+ const fullPath = path.joinPaths(prefix, route.originalPath);
39
+ const { pattern, paramNames, paramConstraints } = path.compileRoutePattern(fullPath, internalState.options);
40
+ const mergedMeta = {
41
+ ...(options.meta ?? {}),
42
+ ...(route.meta ?? {}),
43
+ version: route.meta?.version ?? options.version,
44
+ };
45
+ const rateLimit = route.rateLimit ?? options.rateLimit;
46
+ const active = helpers.resolveCondition(options.active, internalState.featureResolver) &&
47
+ route.active;
48
+ const routeMiddleware = [...route.middleware];
49
+ if (groupGuardMiddleware) {
50
+ routeMiddleware.unshift({ handler: groupGuardMiddleware });
51
+ }
52
+ if (!route.rateLimit && groupRateLimitMiddleware) {
53
+ routeMiddleware.unshift({ handler: groupRateLimitMiddleware });
54
+ }
55
+ const mounted = {
56
+ ...route,
57
+ path: fullPath,
58
+ originalPath: fullPath,
59
+ pattern,
60
+ paramNames,
61
+ paramConstraints,
62
+ serverId: route.serverId ?? options.serverId,
63
+ meta: Object.keys(mergedMeta).length ? mergedMeta : undefined,
64
+ guards: groupGuards ?? route.guards,
65
+ rateLimit,
66
+ groupPrefix: prefix,
67
+ groupRateLimit: options.rateLimit,
68
+ active,
69
+ version: mergedMeta.version,
70
+ middleware: [...internalState.middleware, ...routeMiddleware],
71
+ };
72
+ internalState.routes.push(mounted);
73
+ internalState.logger.debug("router", `Group mounted: ${route.method} ${fullPath}`);
74
+ });
75
+ }
68
76
  }
69
77
 
70
78
  exports.handleGroup = handleGroup;
@@ -1 +1 @@
1
- {"version":3,"file":"groups.js","sources":["../../../../../../src/server/routing/modules/groups.ts"],"sourcesContent":[null],"names":["joinPaths","normalizePath","createRateLimitMiddleware","compileRoutePattern","createGuardMiddleware","resolveCondition"],"mappings":"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"}
1
+ {"version":3,"file":"groups.js","sources":["../../../../../../src/server/routing/modules/groups.ts"],"sourcesContent":[null],"names":["joinPaths","normalizePath","createRateLimitMiddleware","createGuardMiddleware","compileRoutePattern","resolveCondition"],"mappings":"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"}
@@ -10,59 +10,67 @@ function handleGroup(parentRouter, childRouter, options, callback, internalState
10
10
  options.middleware.forEach((m) => childRouter.use(m));
11
11
  }
12
12
  callback(childRouter);
13
- let prefix = options.prefix ?? "";
14
- if (options.version) {
15
- const ver = `v${options.version.replace(/^v/, "")}`;
16
- prefix = prefix ? joinPaths(prefix, ver) : `/${ver}`;
17
- }
18
- prefix = prefix ? normalizePath(prefix) : "/";
13
+ const rawPrefixes = Array.isArray(options.prefix)
14
+ ? (options.prefix.length > 0 ? options.prefix : [""])
15
+ : [options.prefix ?? ""];
16
+ const computedPrefixes = rawPrefixes.map((p) => {
17
+ let prefix = p ?? "";
18
+ if (options.version) {
19
+ const ver = `v${options.version.replace(/^v/, "")}`;
20
+ prefix = prefix ? joinPaths(prefix, ver) : `/${ver}`;
21
+ }
22
+ return prefix ? normalizePath(prefix) : "/";
23
+ });
19
24
  let groupRateLimitMiddleware;
20
25
  if (options.rateLimit) {
21
26
  groupRateLimitMiddleware = createRateLimitMiddleware(options.rateLimit);
22
27
  }
23
- childRouter.getRoutes().forEach((route) => {
24
- const fullPath = joinPaths(prefix, route.originalPath);
25
- const { pattern, paramNames, paramConstraints } = compileRoutePattern(fullPath, internalState.options);
26
- const mergedMeta = {
27
- ...(options.meta ?? {}),
28
- ...(route.meta ?? {}),
29
- version: route.meta?.version ?? options.version,
30
- };
31
- const groupGuards = options.guards;
32
- let groupGuardMiddleware;
33
- if (groupGuards) {
34
- groupGuardMiddleware = createGuardMiddleware(groupGuards, internalState.logger);
35
- }
36
- const rateLimit = route.rateLimit ?? options.rateLimit;
37
- const active = resolveCondition(options.active, internalState.featureResolver) &&
38
- route.active;
39
- const routeMiddleware = [...route.middleware];
40
- if (groupGuardMiddleware) {
41
- routeMiddleware.unshift({ handler: groupGuardMiddleware });
42
- }
43
- if (!route.rateLimit && groupRateLimitMiddleware) {
44
- routeMiddleware.unshift({ handler: groupRateLimitMiddleware });
45
- }
46
- const mounted = {
47
- ...route,
48
- path: fullPath,
49
- originalPath: fullPath,
50
- pattern,
51
- paramNames,
52
- paramConstraints,
53
- serverId: route.serverId ?? options.serverId,
54
- meta: Object.keys(mergedMeta).length ? mergedMeta : undefined,
55
- guards: groupGuards ?? route.guards,
56
- rateLimit,
57
- groupPrefix: prefix,
58
- groupRateLimit: options.rateLimit,
59
- active,
60
- version: mergedMeta.version,
61
- middleware: [...internalState.middleware, ...routeMiddleware],
62
- };
63
- internalState.routes.push(mounted);
64
- internalState.logger.debug("router", `Group mounted: ${route.method} ${fullPath}`);
65
- });
28
+ const groupGuards = options.guards;
29
+ let groupGuardMiddleware;
30
+ if (groupGuards) {
31
+ groupGuardMiddleware = createGuardMiddleware(groupGuards, internalState.logger);
32
+ }
33
+ const childRoutes = childRouter.getRoutes();
34
+ for (const prefix of computedPrefixes) {
35
+ childRoutes.forEach((route) => {
36
+ const fullPath = joinPaths(prefix, route.originalPath);
37
+ const { pattern, paramNames, paramConstraints } = compileRoutePattern(fullPath, internalState.options);
38
+ const mergedMeta = {
39
+ ...(options.meta ?? {}),
40
+ ...(route.meta ?? {}),
41
+ version: route.meta?.version ?? options.version,
42
+ };
43
+ const rateLimit = route.rateLimit ?? options.rateLimit;
44
+ const active = resolveCondition(options.active, internalState.featureResolver) &&
45
+ route.active;
46
+ const routeMiddleware = [...route.middleware];
47
+ if (groupGuardMiddleware) {
48
+ routeMiddleware.unshift({ handler: groupGuardMiddleware });
49
+ }
50
+ if (!route.rateLimit && groupRateLimitMiddleware) {
51
+ routeMiddleware.unshift({ handler: groupRateLimitMiddleware });
52
+ }
53
+ const mounted = {
54
+ ...route,
55
+ path: fullPath,
56
+ originalPath: fullPath,
57
+ pattern,
58
+ paramNames,
59
+ paramConstraints,
60
+ serverId: route.serverId ?? options.serverId,
61
+ meta: Object.keys(mergedMeta).length ? mergedMeta : undefined,
62
+ guards: groupGuards ?? route.guards,
63
+ rateLimit,
64
+ groupPrefix: prefix,
65
+ groupRateLimit: options.rateLimit,
66
+ active,
67
+ version: mergedMeta.version,
68
+ middleware: [...internalState.middleware, ...routeMiddleware],
69
+ };
70
+ internalState.routes.push(mounted);
71
+ internalState.logger.debug("router", `Group mounted: ${route.method} ${fullPath}`);
72
+ });
73
+ }
66
74
  }
67
75
 
68
76
  export { handleGroup };
@@ -1 +1 @@
1
- {"version":3,"file":"groups.js","sources":["../../../../../../src/server/routing/modules/groups.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"groups.js","sources":["../../../../../../src/server/routing/modules/groups.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -10036,7 +10036,8 @@ interface ParamConstraint {
10036
10036
  }
10037
10037
  /** Group config passed to router.group() */
10038
10038
  interface RouteGroupOptions {
10039
- prefix?: string;
10039
+ /** Route prefix string or list of prefixes for multiple route aliases */
10040
+ prefix?: string | string[];
10040
10041
  /** Specific server ID or list of server IDs this group should strictly bind to */
10041
10042
  serverId?: string | string[];
10042
10043
  middleware?: MiddlewareFunction$1[];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "xypriss",
3
- "version": "9.12.48",
3
+ "version": "9.12.49",
4
4
  "description": "XyPriss is a high-performance, TypeScript-first hyper-system web framework powered by a native Go core (XHSC), featuring robust multi-tenant sandboxing, secure native file streaming, and zero Express dependencies.",
5
5
  "author": {
6
6
  "DEV.to": "https://dev.to/nehonix",