@modern-js/utils 2.22.1-alpha.0 → 2.22.1-alpha.2

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.
@@ -13,6 +13,9 @@ _export(exports, {
13
13
  ROUTE_SPEC_FILE: function() {
14
14
  return ROUTE_SPEC_FILE;
15
15
  },
16
+ NESTED_ROUTE_SPEC_FILE: function() {
17
+ return NESTED_ROUTE_SPEC_FILE;
18
+ },
16
19
  MAIN_ENTRY_NAME: function() {
17
20
  return MAIN_ENTRY_NAME;
18
21
  },
@@ -107,6 +110,7 @@ _export(exports, {
107
110
  const _export_star = require("@swc/helpers/_/_export_star");
108
111
  _export_star._(require("./chainId"), exports);
109
112
  const ROUTE_SPEC_FILE = "route.json";
113
+ const NESTED_ROUTE_SPEC_FILE = "nestedRoutes.json";
110
114
  const MAIN_ENTRY_NAME = "main";
111
115
  const SERVER_BUNDLE_DIRECTORY = "bundles";
112
116
  const SERVER_WORKER_BUNDLE_DIRECTORY = "worker";
@@ -20,6 +20,8 @@ _export(exports, {
20
20
  return _serialize.serializeJson;
21
21
  }
22
22
  });
23
+ const _export_star = require("@swc/helpers/_/_export_star");
23
24
  const _storage = require("./storage");
24
25
  const _serialize = require("./serialize");
26
+ _export_star._(require("./nestedRoutes"), exports);
25
27
  const { run, useContext: useHeaders } = (0, _storage.createStorage)();
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "matchEntry", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return matchEntry;
9
+ }
10
+ });
11
+ function sortByUrlPath(entries) {
12
+ entries.sort(function(a, b) {
13
+ const length1 = a.urlPath.length;
14
+ const length2 = b.urlPath.length;
15
+ if (length1 < length2) {
16
+ return 1;
17
+ }
18
+ if (length1 > length2) {
19
+ return -1;
20
+ }
21
+ return 0;
22
+ });
23
+ return entries;
24
+ }
25
+ const matchEntry = (pathname, entries) => {
26
+ sortByUrlPath(entries);
27
+ return entries.find((entry) => pathname.startsWith(entry.urlPath));
28
+ };
@@ -15,7 +15,11 @@ _export(exports, {
15
15
  },
16
16
  HMR_SOCK_PATH: function() {
17
17
  return HMR_SOCK_PATH;
18
+ },
19
+ HTML_CHUNKSMAP_SEPARATOR: function() {
20
+ return HTML_CHUNKSMAP_SEPARATOR;
18
21
  }
19
22
  });
20
23
  const ROUTE_MANIFEST = `_MODERNJS_ROUTE_MANIFEST`;
21
24
  const HMR_SOCK_PATH = "/webpack-hmr";
25
+ const HTML_CHUNKSMAP_SEPARATOR = "<!--<?- chunksMap.js ?>-->";
@@ -1,4 +1,5 @@
1
1
  export const ROUTE_SPEC_FILE = "route.json";
2
+ export const NESTED_ROUTE_SPEC_FILE = "nestedRoutes.json";
2
3
  export const MAIN_ENTRY_NAME = "main";
3
4
  export const SERVER_BUNDLE_DIRECTORY = "bundles";
4
5
  export const SERVER_WORKER_BUNDLE_DIRECTORY = "worker";
@@ -2,3 +2,4 @@ import { createStorage } from "./storage";
2
2
  const { run, useContext: useHeaders } = createStorage();
3
3
  export { run, useHeaders };
4
4
  export { serializeJson } from "./serialize";
5
+ export * from "./nestedRoutes";
@@ -0,0 +1,18 @@
1
+ function sortByUrlPath(entries) {
2
+ entries.sort(function(a, b) {
3
+ const length1 = a.urlPath.length;
4
+ const length2 = b.urlPath.length;
5
+ if (length1 < length2) {
6
+ return 1;
7
+ }
8
+ if (length1 > length2) {
9
+ return -1;
10
+ }
11
+ return 0;
12
+ });
13
+ return entries;
14
+ }
15
+ export const matchEntry = (pathname, entries) => {
16
+ sortByUrlPath(entries);
17
+ return entries.find((entry) => pathname.startsWith(entry.urlPath));
18
+ };
@@ -1,2 +1,3 @@
1
1
  export const ROUTE_MANIFEST = `_MODERNJS_ROUTE_MANIFEST`;
2
2
  export const HMR_SOCK_PATH = "/webpack-hmr";
3
+ export const HTML_CHUNKSMAP_SEPARATOR = "<!--<?- chunksMap.js ?>-->";
@@ -3,6 +3,10 @@ import { InternalPlugins } from '@modern-js/types';
3
3
  * route specification file
4
4
  */
5
5
  export declare const ROUTE_SPEC_FILE = "route.json";
6
+ /**
7
+ * Front-end routing metadata
8
+ */
9
+ export declare const NESTED_ROUTE_SPEC_FILE = "nestedRoutes.json";
6
10
  /**
7
11
  * main entry name
8
12
  */
@@ -5,4 +5,5 @@
5
5
  import type { IncomingHttpHeaders } from 'http';
6
6
  declare const run: <O>(context: IncomingHttpHeaders, cb: () => O | Promise<O>) => Promise<O>, useHeaders: () => IncomingHttpHeaders;
7
7
  export { run, useHeaders };
8
- export { serializeJson } from './serialize';
8
+ export { serializeJson } from './serialize';
9
+ export * from './nestedRoutes';
@@ -0,0 +1,3 @@
1
+ import type { ModernServerContext, ServerRoute } from '@modern-js/types';
2
+ export type ServerContext = Pick<ModernServerContext, 'logger' | 'req' | 'res' | 'params' | 'headers' | 'method' | 'url' | 'host' | 'protocol' | 'origin' | 'href' | 'path' | 'query'>;
3
+ export declare const matchEntry: (pathname: string, entries: ServerRoute[]) => ServerRoute | undefined;
@@ -5,4 +5,8 @@ export declare const ROUTE_MANIFEST = "_MODERNJS_ROUTE_MANIFEST";
5
5
  /**
6
6
  * hmr socket connect path
7
7
  */
8
- export declare const HMR_SOCK_PATH = "/webpack-hmr";
8
+ export declare const HMR_SOCK_PATH = "/webpack-hmr";
9
+ /**
10
+ * html placeholder
11
+ */
12
+ export declare const HTML_CHUNKSMAP_SEPARATOR = "<!--<?- chunksMap.js ?>-->";
package/package.json CHANGED
@@ -15,7 +15,7 @@
15
15
  "modern",
16
16
  "modern.js"
17
17
  ],
18
- "version": "2.22.1-alpha.0",
18
+ "version": "2.22.1-alpha.2",
19
19
  "jsnext:source": "./src/index.ts",
20
20
  "types": "./dist/types/index.d.ts",
21
21
  "main": "./dist/cjs/index.js",
@@ -36,41 +36,50 @@
36
36
  },
37
37
  "./runtime/router": {
38
38
  "types": "./dist/types/runtime/router.d.ts",
39
+ "require": "./dist/cjs/runtime/router.js",
39
40
  "default": "./dist/esm/runtime/router.js"
40
41
  },
41
42
  "./runtime/remix-router": {
42
43
  "types": "./dist/types/runtime/remixRouter.d.ts",
44
+ "require": "./dist/cjs/runtime/remixRouter.js",
43
45
  "default": "./dist/esm/runtime/remixRouter.js"
44
46
  },
45
47
  "./runtime/nested-routes": {
46
48
  "types": "./dist/types/runtime/nestedRoutes.d.ts",
49
+ "require": "./dist/cjs/runtime/nestedRoutes.js",
47
50
  "default": "./dist/esm/runtime/nestedRoutes.js"
48
51
  },
49
52
  "./runtime-browser": {
50
53
  "jsnext:source": "./src/runtime-browser/index.d.ts",
54
+ "require": "./dist/cjs/runtime-browser/index.js",
51
55
  "default": "./dist/esm/runtime-browser/index.js"
52
56
  },
53
57
  "./runtime-node": {
54
58
  "types": "./dist/types/runtime-node/index.d.ts",
59
+ "require": "./dist/cjs/runtime-node/index.js",
55
60
  "default": "./dist/esm/runtime-node/index.js"
56
61
  },
57
62
  "./runtime-node/router": {
58
63
  "types": "./dist/types/runtime-node/router.d.ts",
64
+ "require": "./dist/cjs/runtime-node/router.js",
59
65
  "default": "./dist/esm/runtime-node/router.js"
60
66
  },
61
67
  "./universal/constants": {
62
68
  "types": "./dist/types/universal/constants.d.ts",
63
69
  "import": "./dist/esm/universal/constants.js",
70
+ "require": "./dist/cjs/universal/constants.js",
64
71
  "default": "./dist/cjs/universal/constants.js"
65
72
  },
66
73
  "./universal/format-webpack": {
67
74
  "types": "./dist/types/universal/format-webpack.d.ts",
68
75
  "import": "./dist/esm/universal/formatWebpack.js",
76
+ "require": "./dist/cjs/universal/formatWebpack.js",
69
77
  "default": "./dist/cjs/universal/formatWebpack.js"
70
78
  },
71
79
  "./universal/plugin-dag-sort": {
72
80
  "types": "./dist/types/universal/pluginDagSort.d.ts",
73
81
  "import": "./dist/esm/universal/pluginDagSort.js",
82
+ "require": "./dist/cjs/universal/pluginDagSort.js",
74
83
  "default": "./dist/cjs/universal/pluginDagSort.js"
75
84
  },
76
85
  "./ajv": "./dist/compiled/ajv/index.js",