@modern-js/runtime-utils 0.0.0-nightly-20230920160608 → 0.0.0-nightly-20230922160540

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 (35) hide show
  1. package/dist/cjs/browser/index.js +22 -5
  2. package/dist/cjs/browser/nestedRoutes.js +59 -45
  3. package/dist/cjs/browser/parsed.js +26 -8
  4. package/dist/cjs/node/index.js +35 -24
  5. package/dist/cjs/node/loaderContext/createLoaderCtx.js +25 -15
  6. package/dist/cjs/node/loaderContext/createRequestCtx.js +25 -15
  7. package/dist/cjs/node/loaderContext/index.js +28 -18
  8. package/dist/cjs/node/nestedRoutes.js +24 -7
  9. package/dist/cjs/node/router.js +20 -4
  10. package/dist/cjs/node/serialize.js +36 -10
  11. package/dist/cjs/node/storage.js +37 -11
  12. package/dist/cjs/remixRouter.js +20 -4
  13. package/dist/cjs/router.js +20 -4
  14. package/dist/cjs/time.js +24 -7
  15. package/dist/esm/browser/nestedRoutes.js +20 -11
  16. package/dist/esm/browser/parsed.js +6 -2
  17. package/dist/esm/node/index.js +6 -2
  18. package/dist/esm/node/loaderContext/createLoaderCtx.js +6 -2
  19. package/dist/esm/node/loaderContext/createRequestCtx.js +6 -2
  20. package/dist/esm/node/loaderContext/index.js +6 -2
  21. package/dist/esm/node/nestedRoutes.js +4 -1
  22. package/dist/esm/node/serialize.js +4 -1
  23. package/dist/esm/node/storage.js +5 -3
  24. package/dist/esm/time.js +4 -1
  25. package/dist/esm-node/browser/nestedRoutes.js +17 -8
  26. package/dist/esm-node/browser/parsed.js +6 -2
  27. package/dist/esm-node/node/index.js +6 -2
  28. package/dist/esm-node/node/loaderContext/createLoaderCtx.js +6 -2
  29. package/dist/esm-node/node/loaderContext/createRequestCtx.js +6 -2
  30. package/dist/esm-node/node/loaderContext/index.js +6 -2
  31. package/dist/esm-node/node/nestedRoutes.js +4 -1
  32. package/dist/esm-node/node/serialize.js +4 -1
  33. package/dist/esm-node/node/storage.js +3 -1
  34. package/dist/esm-node/time.js +4 -1
  35. package/package.json +5 -5
@@ -1,19 +1,41 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- Object.defineProperty(exports, "createStorage", {
6
- enumerable: true,
7
- get: function() {
8
- return createStorage;
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
9
17
  }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var storage_exports = {};
30
+ __export(storage_exports, {
31
+ createStorage: () => createStorage
10
32
  });
11
- const _interop_require_wildcard = require("@swc/helpers/_/_interop_require_wildcard");
12
- const _async_hooks = /* @__PURE__ */ _interop_require_wildcard._(require("async_hooks"));
33
+ module.exports = __toCommonJS(storage_exports);
34
+ var ah = __toESM(require("async_hooks"));
13
35
  const createStorage = () => {
14
36
  let storage;
15
- if (typeof _async_hooks.AsyncLocalStorage !== "undefined") {
16
- storage = new _async_hooks.AsyncLocalStorage();
37
+ if (typeof ah.AsyncLocalStorage !== "undefined") {
38
+ storage = new ah.AsyncLocalStorage();
17
39
  }
18
40
  const run = (context, cb) => {
19
41
  if (!storage) {
@@ -46,3 +68,7 @@ const createStorage = () => {
46
68
  useContext
47
69
  };
48
70
  };
71
+ // Annotate the CommonJS export names for ESM import in node:
72
+ 0 && (module.exports = {
73
+ createStorage
74
+ });
@@ -1,6 +1,22 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __copyProps = (to, from, except, desc) => {
7
+ if (from && typeof from === "object" || typeof from === "function") {
8
+ for (let key of __getOwnPropNames(from))
9
+ if (!__hasOwnProp.call(to, key) && key !== except)
10
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
11
+ }
12
+ return to;
13
+ };
14
+ var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
15
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
16
+ var remixRouter_exports = {};
17
+ module.exports = __toCommonJS(remixRouter_exports);
18
+ __reExport(remixRouter_exports, require("@remix-run/router"), module.exports);
19
+ // Annotate the CommonJS export names for ESM import in node:
20
+ 0 && (module.exports = {
21
+ ...require("@remix-run/router")
4
22
  });
5
- const _export_star = require("@swc/helpers/_/_export_star");
6
- _export_star._(require("@remix-run/router"), exports);
@@ -1,6 +1,22 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __copyProps = (to, from, except, desc) => {
7
+ if (from && typeof from === "object" || typeof from === "function") {
8
+ for (let key of __getOwnPropNames(from))
9
+ if (!__hasOwnProp.call(to, key) && key !== except)
10
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
11
+ }
12
+ return to;
13
+ };
14
+ var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
15
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
16
+ var router_exports = {};
17
+ module.exports = __toCommonJS(router_exports);
18
+ __reExport(router_exports, require("react-router-dom"), module.exports);
19
+ // Annotate the CommonJS export names for ESM import in node:
20
+ 0 && (module.exports = {
21
+ ...require("react-router-dom")
4
22
  });
5
- const _export_star = require("@swc/helpers/_/_export_star");
6
- _export_star._(require("react-router-dom"), exports);
package/dist/cjs/time.js CHANGED
@@ -1,13 +1,26 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- Object.defineProperty(exports, "time", {
6
- enumerable: true,
7
- get: function() {
8
- return time;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
9
15
  }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var time_exports = {};
20
+ __export(time_exports, {
21
+ time: () => time
10
22
  });
23
+ module.exports = __toCommonJS(time_exports);
11
24
  function processHrtime(previousTimestamp) {
12
25
  const now = (/* @__PURE__ */ new Date()).getTime();
13
26
  const clocktime = now * 1e-3;
@@ -36,3 +49,7 @@ const time = () => {
36
49
  return getLatency(hrtime);
37
50
  };
38
51
  };
52
+ // Annotate the CommonJS export names for ESM import in node:
53
+ 0 && (module.exports = {
54
+ time
55
+ });
@@ -7,14 +7,14 @@ import { Suspense } from "react";
7
7
  import { createRoutesFromElements, Outlet, Route } from "react-router-dom";
8
8
  import { LOADER_REPORTER_NAME } from "@modern-js/utils/universal/constants";
9
9
  import { time } from "../time";
10
- export var transformNestedRoutes = function(routes, reporter) {
10
+ var transformNestedRoutes = function(routes, reporter) {
11
11
  var routeElements = [];
12
12
  var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;
13
13
  try {
14
14
  for (var _iterator = routes[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
15
15
  var route = _step.value;
16
16
  var routeElement = renderNestedRoute(route, {
17
- reporter: reporter
17
+ reporter
18
18
  });
19
19
  routeElements.push(routeElement);
20
20
  }
@@ -34,8 +34,9 @@ export var transformNestedRoutes = function(routes, reporter) {
34
34
  }
35
35
  return createRoutesFromElements(routeElements);
36
36
  };
37
- export var renderNestedRoute = function(nestedRoute) {
37
+ var renderNestedRoute = function(nestedRoute) {
38
38
  var options = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
39
+ var _config, _children;
39
40
  var children = nestedRoute.children, index = nestedRoute.index, id = nestedRoute.id, component = nestedRoute.component, isRoot = nestedRoute.isRoot, lazyImport = nestedRoute.lazyImport, config = nestedRoute.config, handle = nestedRoute.handle;
40
41
  var Component = component;
41
42
  var parent = options.parent, DeferredDataComponent = options.DeferredDataComponent, _options_props = options.props, props = _options_props === void 0 ? {} : _options_props, reporter = options.reporter;
@@ -47,7 +48,7 @@ export var renderNestedRoute = function(nestedRoute) {
47
48
  action: nestedRoute.action,
48
49
  hasErrorBoundary: nestedRoute.hasErrorBoundary,
49
50
  shouldRevalidate: nestedRoute.shouldRevalidate,
50
- handle: _object_spread({}, handle, typeof config === "object" ? config === null || config === void 0 ? void 0 : config.handle : {}),
51
+ handle: _object_spread({}, handle, typeof config === "object" ? (_config = config) === null || _config === void 0 ? void 0 : _config.handle : {}),
51
52
  index: nestedRoute.index,
52
53
  element: nestedRoute.element,
53
54
  errorElement: nestedRoute.errorElement
@@ -58,7 +59,8 @@ export var renderNestedRoute = function(nestedRoute) {
58
59
  }
59
60
  var element;
60
61
  if (Component) {
61
- if ((parent === null || parent === void 0 ? void 0 : parent.loading) && lazyImport) {
62
+ var _parent;
63
+ if (((_parent = parent) === null || _parent === void 0 ? void 0 : _parent.loading) && lazyImport) {
62
64
  var Loading = parent.loading;
63
65
  if (isLoadableComponent(Component)) {
64
66
  element = /* @__PURE__ */ _jsx(Component, {
@@ -73,11 +75,12 @@ export var renderNestedRoute = function(nestedRoute) {
73
75
  } else if (isLoadableComponent(Component) && lazyImport) {
74
76
  element = /* @__PURE__ */ _jsx(Component, {});
75
77
  } else if (isRoot) {
78
+ var _props;
76
79
  element = /* @__PURE__ */ _jsxs(_Fragment, {
77
80
  children: [
78
81
  /* @__PURE__ */ _jsx(Component, _object_spread({}, props)),
79
82
  typeof document === "undefined" && DeferredDataComponent && /* @__PURE__ */ _jsx(DeferredDataComponent, {
80
- nonce: props === null || props === void 0 ? void 0 : props.nonce
83
+ nonce: (_props = props) === null || _props === void 0 ? void 0 : _props.nonce
81
84
  })
82
85
  ]
83
86
  });
@@ -90,16 +93,17 @@ export var renderNestedRoute = function(nestedRoute) {
90
93
  element = /* @__PURE__ */ _jsx(Component, {});
91
94
  }
92
95
  } else {
93
- nestedRoute.loading = parent === null || parent === void 0 ? void 0 : parent.loading;
96
+ var _parent1;
97
+ nestedRoute.loading = (_parent1 = parent) === null || _parent1 === void 0 ? void 0 : _parent1.loading;
94
98
  routeProps.element = /* @__PURE__ */ _jsx(Outlet, {});
95
99
  }
96
100
  if (element) {
97
101
  routeProps.element = element;
98
102
  }
99
- var childElements = children === null || children === void 0 ? void 0 : children.map(function(childRoute) {
103
+ var childElements = (_children = children) === null || _children === void 0 ? void 0 : _children.map(function(childRoute) {
100
104
  return renderNestedRoute(childRoute, {
101
105
  parent: nestedRoute,
102
- reporter: reporter
106
+ reporter
103
107
  });
104
108
  });
105
109
  var routeElement = index ? /* @__PURE__ */ _jsx(Route, _object_spread_props(_object_spread({}, routeProps), {
@@ -115,7 +119,7 @@ function createLoader(route, reporter) {
115
119
  if (loader) {
116
120
  return function() {
117
121
  var _ref = _async_to_generator(function(args) {
118
- var end, res, cost;
122
+ var end, res, cost, _reporter;
119
123
  return _ts_generator(this, function(_state) {
120
124
  switch (_state.label) {
121
125
  case 0:
@@ -131,7 +135,8 @@ function createLoader(route, reporter) {
131
135
  res = _state.sent();
132
136
  cost = end();
133
137
  if (typeof document === "undefined" && reporter) {
134
- reporter === null || reporter === void 0 ? void 0 : reporter.reportTiming("".concat(LOADER_REPORTER_NAME, "-").concat(route.id), cost);
138
+ ;
139
+ (_reporter = reporter) === null || _reporter === void 0 ? void 0 : _reporter.reportTiming("".concat(LOADER_REPORTER_NAME, "-").concat(route.id), cost);
135
140
  }
136
141
  return [
137
142
  2,
@@ -156,3 +161,7 @@ function createLoader(route, reporter) {
156
161
  function isLoadableComponent(component) {
157
162
  return component && component.displayName === "Loadable" && component.preload && typeof component.preload === "function";
158
163
  }
164
+ export {
165
+ renderNestedRoute,
166
+ transformNestedRoutes
167
+ };
@@ -1,4 +1,4 @@
1
- export var parsedJSONFromElement = function(id) {
1
+ var parsedJSONFromElement = function(id) {
2
2
  var elements = document.querySelectorAll("#".concat(id));
3
3
  if (elements.length === 0) {
4
4
  return void 0;
@@ -6,7 +6,8 @@ export var parsedJSONFromElement = function(id) {
6
6
  var element = elements[elements.length - 1];
7
7
  if (element) {
8
8
  try {
9
- var parsed = JSON.parse((element === null || element === void 0 ? void 0 : element.textContent) || "");
9
+ var _element;
10
+ var parsed = JSON.parse(((_element = element) === null || _element === void 0 ? void 0 : _element.textContent) || "");
10
11
  return parsed;
11
12
  } catch (e) {
12
13
  console.error("parse ".concat(id, " error"), e);
@@ -15,3 +16,6 @@ export var parsedJSONFromElement = function(id) {
15
16
  }
16
17
  return void 0;
17
18
  };
19
+ export {
20
+ parsedJSONFromElement
21
+ };
@@ -1,6 +1,10 @@
1
1
  import { createStorage } from "./storage";
2
2
  var _createStorage = createStorage(), run = _createStorage.run, useHeaders = _createStorage.useContext;
3
- export { run, useHeaders };
4
- export { serializeJson } from "./serialize";
3
+ import { serializeJson } from "./serialize";
5
4
  export * from "./nestedRoutes";
6
5
  export * from "./loaderContext";
6
+ export {
7
+ run,
8
+ serializeJson,
9
+ useHeaders
10
+ };
@@ -1,5 +1,5 @@
1
1
  import { _ as _class_call_check } from "@swc/helpers/_/_class_call_check";
2
- export var LoaderContext = /* @__PURE__ */ function() {
2
+ var LoaderContext = /* @__PURE__ */ function() {
3
3
  "use strict";
4
4
  function LoaderContext2(defaultValue) {
5
5
  _class_call_check(this, LoaderContext2);
@@ -15,6 +15,10 @@ export var LoaderContext = /* @__PURE__ */ function() {
15
15
  };
16
16
  return LoaderContext2;
17
17
  }();
18
- export function createLoaderContext(defaultValue) {
18
+ function createLoaderContext(defaultValue) {
19
19
  return new LoaderContext(defaultValue);
20
20
  }
21
+ export {
22
+ LoaderContext,
23
+ createLoaderContext
24
+ };
@@ -1,5 +1,5 @@
1
1
  import { _ as _class_call_check } from "@swc/helpers/_/_class_call_check";
2
- export var RequestContext = /* @__PURE__ */ function() {
2
+ var RequestContext = /* @__PURE__ */ function() {
3
3
  "use strict";
4
4
  function RequestContext2() {
5
5
  _class_call_check(this, RequestContext2);
@@ -19,6 +19,10 @@ export var RequestContext = /* @__PURE__ */ function() {
19
19
  };
20
20
  return RequestContext2;
21
21
  }();
22
- export function createRequestContext() {
22
+ function createRequestContext() {
23
23
  return new RequestContext();
24
24
  }
25
+ export {
26
+ RequestContext,
27
+ createRequestContext
28
+ };
@@ -1,3 +1,7 @@
1
1
  import { createLoaderContext } from "./createLoaderCtx";
2
- export { createRequestContext } from "./createRequestCtx";
3
- export var reporterCtx = createLoaderContext();
2
+ import { createRequestContext } from "./createRequestCtx";
3
+ var reporterCtx = createLoaderContext();
4
+ export {
5
+ createRequestContext,
6
+ reporterCtx
7
+ };
@@ -12,9 +12,12 @@ function sortByUrlPath(entries) {
12
12
  });
13
13
  return entries;
14
14
  }
15
- export var matchEntry = function(pathname, entries) {
15
+ var matchEntry = function(pathname, entries) {
16
16
  sortByUrlPath(entries);
17
17
  return entries.find(function(entry) {
18
18
  return pathname.startsWith(entry.urlPath);
19
19
  });
20
20
  };
21
+ export {
22
+ matchEntry
23
+ };
@@ -1,6 +1,9 @@
1
1
  import serialize from "serialize-javascript";
2
- export var serializeJson = function(data) {
2
+ var serializeJson = function(data) {
3
3
  return serialize(data, {
4
4
  isJSON: true
5
5
  });
6
6
  };
7
+ export {
8
+ serializeJson
9
+ };
@@ -29,8 +29,10 @@ var createStorage = function() {
29
29
  return context;
30
30
  };
31
31
  return {
32
- run: run,
33
- useContext: useContext
32
+ run,
33
+ useContext
34
34
  };
35
35
  };
36
- export { createStorage };
36
+ export {
37
+ createStorage
38
+ };
package/dist/esm/time.js CHANGED
@@ -21,9 +21,12 @@ var getLatency = function(hrtime) {
21
21
  var _processHrtime = _sliced_to_array(processHrtime(hrtime), 2), s = _processHrtime[0], ns = _processHrtime[1];
22
22
  return s * 1e3 + ns / 1e6;
23
23
  };
24
- export var time = function() {
24
+ var time = function() {
25
25
  var hrtime = processHrtime();
26
26
  return function() {
27
27
  return getLatency(hrtime);
28
28
  };
29
29
  };
30
+ export {
31
+ time
32
+ };
@@ -3,7 +3,7 @@ import { Suspense } from "react";
3
3
  import { createRoutesFromElements, Outlet, Route } from "react-router-dom";
4
4
  import { LOADER_REPORTER_NAME } from "@modern-js/utils/universal/constants";
5
5
  import { time } from "../time";
6
- export const transformNestedRoutes = (routes, reporter) => {
6
+ const transformNestedRoutes = (routes, reporter) => {
7
7
  const routeElements = [];
8
8
  for (const route of routes) {
9
9
  const routeElement = renderNestedRoute(route, {
@@ -13,7 +13,8 @@ export const transformNestedRoutes = (routes, reporter) => {
13
13
  }
14
14
  return createRoutesFromElements(routeElements);
15
15
  };
16
- export const renderNestedRoute = (nestedRoute, options = {}) => {
16
+ const renderNestedRoute = (nestedRoute, options = {}) => {
17
+ var _config, _children;
17
18
  const { children, index, id, component, isRoot, lazyImport, config, handle } = nestedRoute;
18
19
  const Component = component;
19
20
  const { parent, DeferredDataComponent, props = {}, reporter } = options;
@@ -27,7 +28,7 @@ export const renderNestedRoute = (nestedRoute, options = {}) => {
27
28
  shouldRevalidate: nestedRoute.shouldRevalidate,
28
29
  handle: {
29
30
  ...handle,
30
- ...typeof config === "object" ? config === null || config === void 0 ? void 0 : config.handle : {}
31
+ ...typeof config === "object" ? (_config = config) === null || _config === void 0 ? void 0 : _config.handle : {}
31
32
  },
32
33
  index: nestedRoute.index,
33
34
  element: nestedRoute.element,
@@ -39,7 +40,8 @@ export const renderNestedRoute = (nestedRoute, options = {}) => {
39
40
  }
40
41
  let element;
41
42
  if (Component) {
42
- if ((parent === null || parent === void 0 ? void 0 : parent.loading) && lazyImport) {
43
+ var _parent;
44
+ if (((_parent = parent) === null || _parent === void 0 ? void 0 : _parent.loading) && lazyImport) {
43
45
  const Loading = parent.loading;
44
46
  if (isLoadableComponent(Component)) {
45
47
  element = /* @__PURE__ */ _jsx(Component, {
@@ -54,13 +56,14 @@ export const renderNestedRoute = (nestedRoute, options = {}) => {
54
56
  } else if (isLoadableComponent(Component) && lazyImport) {
55
57
  element = /* @__PURE__ */ _jsx(Component, {});
56
58
  } else if (isRoot) {
59
+ var _props;
57
60
  element = /* @__PURE__ */ _jsxs(_Fragment, {
58
61
  children: [
59
62
  /* @__PURE__ */ _jsx(Component, {
60
63
  ...props
61
64
  }),
62
65
  typeof document === "undefined" && DeferredDataComponent && /* @__PURE__ */ _jsx(DeferredDataComponent, {
63
- nonce: props === null || props === void 0 ? void 0 : props.nonce
66
+ nonce: (_props = props) === null || _props === void 0 ? void 0 : _props.nonce
64
67
  })
65
68
  ]
66
69
  });
@@ -73,13 +76,14 @@ export const renderNestedRoute = (nestedRoute, options = {}) => {
73
76
  element = /* @__PURE__ */ _jsx(Component, {});
74
77
  }
75
78
  } else {
76
- nestedRoute.loading = parent === null || parent === void 0 ? void 0 : parent.loading;
79
+ var _parent1;
80
+ nestedRoute.loading = (_parent1 = parent) === null || _parent1 === void 0 ? void 0 : _parent1.loading;
77
81
  routeProps.element = /* @__PURE__ */ _jsx(Outlet, {});
78
82
  }
79
83
  if (element) {
80
84
  routeProps.element = element;
81
85
  }
82
- const childElements = children === null || children === void 0 ? void 0 : children.map((childRoute) => {
86
+ const childElements = (_children = children) === null || _children === void 0 ? void 0 : _children.map((childRoute) => {
83
87
  return renderNestedRoute(childRoute, {
84
88
  parent: nestedRoute,
85
89
  reporter
@@ -106,7 +110,8 @@ function createLoader(route, reporter) {
106
110
  const res = await loader(args);
107
111
  const cost = end();
108
112
  if (typeof document === "undefined" && reporter) {
109
- reporter === null || reporter === void 0 ? void 0 : reporter.reportTiming(`${LOADER_REPORTER_NAME}-${route.id}`, cost);
113
+ var _reporter;
114
+ (_reporter = reporter) === null || _reporter === void 0 ? void 0 : _reporter.reportTiming(`${LOADER_REPORTER_NAME}-${route.id}`, cost);
110
115
  }
111
116
  return res;
112
117
  };
@@ -122,3 +127,7 @@ function createLoader(route, reporter) {
122
127
  function isLoadableComponent(component) {
123
128
  return component && component.displayName === "Loadable" && component.preload && typeof component.preload === "function";
124
129
  }
130
+ export {
131
+ renderNestedRoute,
132
+ transformNestedRoutes
133
+ };
@@ -1,4 +1,4 @@
1
- export const parsedJSONFromElement = (id) => {
1
+ const parsedJSONFromElement = (id) => {
2
2
  const elements = document.querySelectorAll(`#${id}`);
3
3
  if (elements.length === 0) {
4
4
  return void 0;
@@ -6,7 +6,8 @@ export const parsedJSONFromElement = (id) => {
6
6
  const element = elements[elements.length - 1];
7
7
  if (element) {
8
8
  try {
9
- const parsed = JSON.parse((element === null || element === void 0 ? void 0 : element.textContent) || "");
9
+ var _element;
10
+ const parsed = JSON.parse(((_element = element) === null || _element === void 0 ? void 0 : _element.textContent) || "");
10
11
  return parsed;
11
12
  } catch (e) {
12
13
  console.error(`parse ${id} error`, e);
@@ -15,3 +16,6 @@ export const parsedJSONFromElement = (id) => {
15
16
  }
16
17
  return void 0;
17
18
  };
19
+ export {
20
+ parsedJSONFromElement
21
+ };
@@ -1,6 +1,10 @@
1
1
  import { createStorage } from "./storage";
2
2
  const { run, useContext: useHeaders } = createStorage();
3
- export { run, useHeaders };
4
- export { serializeJson } from "./serialize";
3
+ import { serializeJson } from "./serialize";
5
4
  export * from "./nestedRoutes";
6
5
  export * from "./loaderContext";
6
+ export {
7
+ run,
8
+ serializeJson,
9
+ useHeaders
10
+ };
@@ -1,4 +1,4 @@
1
- export class LoaderContext {
1
+ class LoaderContext {
2
2
  getDefaultValue() {
3
3
  if (!this.defaultValue) {
4
4
  throw new Error("Can't get defaultValue before initialed");
@@ -10,6 +10,10 @@ export class LoaderContext {
10
10
  this.symbol = Symbol("loaderContext");
11
11
  }
12
12
  }
13
- export function createLoaderContext(defaultValue) {
13
+ function createLoaderContext(defaultValue) {
14
14
  return new LoaderContext(defaultValue);
15
15
  }
16
+ export {
17
+ LoaderContext,
18
+ createLoaderContext
19
+ };
@@ -1,4 +1,4 @@
1
- export class RequestContext {
1
+ class RequestContext {
2
2
  get(loaderCtx) {
3
3
  const { symbol } = loaderCtx;
4
4
  if (this.store.get(symbol)) {
@@ -14,6 +14,10 @@ export class RequestContext {
14
14
  this.store = /* @__PURE__ */ new Map();
15
15
  }
16
16
  }
17
- export function createRequestContext() {
17
+ function createRequestContext() {
18
18
  return new RequestContext();
19
19
  }
20
+ export {
21
+ RequestContext,
22
+ createRequestContext
23
+ };
@@ -1,3 +1,7 @@
1
1
  import { createLoaderContext } from "./createLoaderCtx";
2
- export { createRequestContext } from "./createRequestCtx";
3
- export const reporterCtx = createLoaderContext();
2
+ import { createRequestContext } from "./createRequestCtx";
3
+ const reporterCtx = createLoaderContext();
4
+ export {
5
+ createRequestContext,
6
+ reporterCtx
7
+ };
@@ -12,7 +12,10 @@ function sortByUrlPath(entries) {
12
12
  });
13
13
  return entries;
14
14
  }
15
- export const matchEntry = (pathname, entries) => {
15
+ const matchEntry = (pathname, entries) => {
16
16
  sortByUrlPath(entries);
17
17
  return entries.find((entry) => pathname.startsWith(entry.urlPath));
18
18
  };
19
+ export {
20
+ matchEntry
21
+ };
@@ -1,6 +1,9 @@
1
1
  import serialize from "serialize-javascript";
2
- export const serializeJson = (data) => {
2
+ const serializeJson = (data) => {
3
3
  return serialize(data, {
4
4
  isJSON: true
5
5
  });
6
6
  };
7
+ export {
8
+ serializeJson
9
+ };
@@ -35,4 +35,6 @@ const createStorage = () => {
35
35
  useContext
36
36
  };
37
37
  };
38
- export { createStorage };
38
+ export {
39
+ createStorage
40
+ };
@@ -20,9 +20,12 @@ const getLatency = (hrtime) => {
20
20
  const [s, ns] = processHrtime(hrtime);
21
21
  return s * 1e3 + ns / 1e6;
22
22
  };
23
- export const time = () => {
23
+ const time = () => {
24
24
  const hrtime = processHrtime();
25
25
  return () => {
26
26
  return getLatency(hrtime);
27
27
  };
28
28
  };
29
+ export {
30
+ time
31
+ };
package/package.json CHANGED
@@ -15,7 +15,7 @@
15
15
  "modern",
16
16
  "modern.js"
17
17
  ],
18
- "version": "0.0.0-nightly-20230920160608",
18
+ "version": "0.0.0-nightly-20230922160540",
19
19
  "_comment": "Provide ESM and CJS exports, ESM is used by runtime package, for treeshaking",
20
20
  "exports": {
21
21
  "./router": {
@@ -81,7 +81,7 @@
81
81
  "react-router-dom": "6.15.0",
82
82
  "@remix-run/router": "1.8.0",
83
83
  "@swc/helpers": "0.5.1",
84
- "@modern-js/utils": "0.0.0-nightly-20230920160608"
84
+ "@modern-js/utils": "0.0.0-nightly-20230922160540"
85
85
  },
86
86
  "peerDependencies": {
87
87
  "react": ">=17.0.0",
@@ -103,9 +103,9 @@
103
103
  "jest": "^29",
104
104
  "typescript": "^5",
105
105
  "@types/serialize-javascript": "^5.0.1",
106
- "@modern-js/types": "0.0.0-nightly-20230920160608",
107
- "@scripts/build": "0.0.0-nightly-20230920160608",
108
- "@scripts/jest-config": "0.0.0-nightly-20230920160608"
106
+ "@modern-js/types": "0.0.0-nightly-20230922160540",
107
+ "@scripts/build": "0.0.0-nightly-20230922160540",
108
+ "@scripts/jest-config": "0.0.0-nightly-20230922160540"
109
109
  },
110
110
  "sideEffects": false,
111
111
  "scripts": {