@modern-js/plugin-data-loader 2.68.18 → 2.68.20

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.
@@ -19,6 +19,7 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
19
19
  var runtime_exports = {};
20
20
  __export(runtime_exports, {
21
21
  handleRequest: () => handleRequest,
22
+ hasFileExtension: () => hasFileExtension,
22
23
  isRedirectResponse: () => isRedirectResponse,
23
24
  isResponse: () => isResponse
24
25
  });
@@ -61,9 +62,21 @@ function convertModernRedirectResponse(headers, basename) {
61
62
  headers: newHeaders
62
63
  });
63
64
  }
65
+ function hasFileExtension(pathname) {
66
+ const lastSegment = pathname.split("/").pop() || "";
67
+ const dotIndex = lastSegment.lastIndexOf(".");
68
+ if (dotIndex === -1) {
69
+ return false;
70
+ }
71
+ const extension = lastSegment.substring(dotIndex).toLowerCase();
72
+ return extension !== ".html";
73
+ }
64
74
  const handleRequest = async ({ request, serverRoutes, routes: routesConfig, context, onTiming }) => {
65
75
  const url = new URL(request.url);
66
76
  const routeId = url.searchParams.get(import_constants2.LOADER_ID_PARAM);
77
+ if (hasFileExtension(url.pathname)) {
78
+ return;
79
+ }
67
80
  const entry = (0, import_server.matchEntry)(url.pathname, serverRoutes);
68
81
  if (!routeId || !entry) {
69
82
  return;
@@ -150,6 +163,7 @@ const handleRequest = async ({ request, serverRoutes, routes: routesConfig, cont
150
163
  // Annotate the CommonJS export names for ESM import in node:
151
164
  0 && (module.exports = {
152
165
  handleRequest,
166
+ hasFileExtension,
153
167
  isRedirectResponse,
154
168
  isResponse
155
169
  });
@@ -40,6 +40,15 @@ function convertModernRedirectResponse(headers, basename) {
40
40
  headers: newHeaders
41
41
  });
42
42
  }
43
+ function hasFileExtension(pathname) {
44
+ var lastSegment = pathname.split("/").pop() || "";
45
+ var dotIndex = lastSegment.lastIndexOf(".");
46
+ if (dotIndex === -1) {
47
+ return false;
48
+ }
49
+ var extension = lastSegment.substring(dotIndex).toLowerCase();
50
+ return extension !== ".html";
51
+ }
43
52
  var handleRequest = function() {
44
53
  var _ref = _async_to_generator(function(param) {
45
54
  var request, serverRoutes, routesConfig, context, onTiming, url, routeId, entry, basename, end, reporter, loaderContext, monitors, headersData, activeDeferreds;
@@ -47,6 +56,11 @@ var handleRequest = function() {
47
56
  request = param.request, serverRoutes = param.serverRoutes, routesConfig = param.routes, context = param.context, onTiming = param.onTiming;
48
57
  url = new URL(request.url);
49
58
  routeId = url.searchParams.get(LOADER_ID_PARAM);
59
+ if (hasFileExtension(url.pathname)) {
60
+ return [
61
+ 2
62
+ ];
63
+ }
50
64
  entry = matchEntry(url.pathname, serverRoutes);
51
65
  if (!routeId || !entry) {
52
66
  return [
@@ -171,6 +185,7 @@ var handleRequest = function() {
171
185
  }();
172
186
  export {
173
187
  handleRequest,
188
+ hasFileExtension,
174
189
  isRedirectResponse,
175
190
  isResponse
176
191
  };
@@ -36,9 +36,21 @@ function convertModernRedirectResponse(headers, basename) {
36
36
  headers: newHeaders
37
37
  });
38
38
  }
39
+ function hasFileExtension(pathname) {
40
+ const lastSegment = pathname.split("/").pop() || "";
41
+ const dotIndex = lastSegment.lastIndexOf(".");
42
+ if (dotIndex === -1) {
43
+ return false;
44
+ }
45
+ const extension = lastSegment.substring(dotIndex).toLowerCase();
46
+ return extension !== ".html";
47
+ }
39
48
  const handleRequest = async ({ request, serverRoutes, routes: routesConfig, context, onTiming }) => {
40
49
  const url = new URL(request.url);
41
50
  const routeId = url.searchParams.get(LOADER_ID_PARAM);
51
+ if (hasFileExtension(url.pathname)) {
52
+ return;
53
+ }
42
54
  const entry = matchEntry(url.pathname, serverRoutes);
43
55
  if (!routeId || !entry) {
44
56
  return;
@@ -124,6 +136,7 @@ const handleRequest = async ({ request, serverRoutes, routes: routesConfig, cont
124
136
  };
125
137
  export {
126
138
  handleRequest,
139
+ hasFileExtension,
127
140
  isRedirectResponse,
128
141
  isResponse
129
142
  };
@@ -1,4 +1,5 @@
1
1
  import type { ServerLoaderBundle } from '@modern-js/server-core';
2
2
  export declare function isRedirectResponse(status: number): boolean;
3
3
  export declare function isResponse(value: any): value is Response;
4
+ export declare function hasFileExtension(pathname: string): boolean;
4
5
  export declare const handleRequest: ServerLoaderBundle['handleRequest'];
package/package.json CHANGED
@@ -15,7 +15,7 @@
15
15
  "modern",
16
16
  "modern.js"
17
17
  ],
18
- "version": "2.68.18",
18
+ "version": "2.68.20",
19
19
  "engines": {
20
20
  "node": ">=16.2.0"
21
21
  },
@@ -49,8 +49,8 @@
49
49
  "@babel/core": "^7.26.0",
50
50
  "@swc/helpers": "^0.5.17",
51
51
  "path-to-regexp": "^6.3.0",
52
- "@modern-js/runtime-utils": "2.68.18",
53
- "@modern-js/utils": "2.68.18"
52
+ "@modern-js/runtime-utils": "2.68.20",
53
+ "@modern-js/utils": "2.68.20"
54
54
  },
55
55
  "devDependencies": {
56
56
  "@types/babel__core": "^7.20.5",
@@ -66,11 +66,11 @@
66
66
  "ts-jest": "^29.1.0",
67
67
  "typescript": "^5",
68
68
  "webpack": "^5.102.1",
69
- "@modern-js/core": "2.68.18",
70
- "@modern-js/server-core": "2.68.18",
71
- "@modern-js/types": "2.68.18",
72
- "@scripts/jest-config": "2.66.0",
73
- "@scripts/build": "2.66.0"
69
+ "@modern-js/core": "2.68.20",
70
+ "@modern-js/server-core": "2.68.20",
71
+ "@modern-js/types": "2.68.20",
72
+ "@scripts/build": "2.66.0",
73
+ "@scripts/jest-config": "2.66.0"
74
74
  },
75
75
  "peerDependencies": {
76
76
  "react": ">=17.0.0"