@modern-js/prod-server 2.42.2 → 2.43.0

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 (82) hide show
  1. package/dist/cjs/libs/render/index.js +3 -11
  2. package/dist/cjs/libs/render/ssr.js +2 -2
  3. package/dist/cjs/libs/render/{cache/page-caches/lru.js → ssrCache/cacheMod.js} +21 -31
  4. package/dist/cjs/libs/render/ssrCache/index.js +81 -0
  5. package/dist/cjs/libs/render/ssrCache/manager.js +104 -0
  6. package/dist/cjs/libs/render/static.js +5 -5
  7. package/dist/cjs/server/index.js +2 -0
  8. package/dist/cjs/server/modernServer.js +2 -9
  9. package/dist/esm/libs/render/index.js +3 -11
  10. package/dist/esm/libs/render/ssr.js +2 -2
  11. package/dist/esm/libs/render/ssrCache/cacheMod.js +33 -0
  12. package/dist/esm/libs/render/ssrCache/index.js +146 -0
  13. package/dist/esm/libs/render/ssrCache/manager.js +159 -0
  14. package/dist/esm/libs/render/static.js +5 -5
  15. package/dist/esm/server/index.js +14 -4
  16. package/dist/esm/server/modernServer.js +32 -42
  17. package/dist/esm-node/libs/render/index.js +3 -11
  18. package/dist/esm-node/libs/render/ssr.js +2 -2
  19. package/dist/esm-node/libs/render/ssrCache/cacheMod.js +22 -0
  20. package/dist/esm-node/libs/render/ssrCache/index.js +57 -0
  21. package/dist/esm-node/libs/render/ssrCache/manager.js +80 -0
  22. package/dist/esm-node/libs/render/static.js +5 -5
  23. package/dist/esm-node/server/index.js +2 -0
  24. package/dist/esm-node/server/modernServer.js +2 -9
  25. package/dist/types/libs/context/index.d.ts +2 -0
  26. package/dist/types/libs/preload/flushServerHeader.d.ts +2 -0
  27. package/dist/types/libs/proxy.d.ts +2 -0
  28. package/dist/types/libs/render/ssrCache/cacheMod.d.ts +8 -0
  29. package/dist/types/libs/render/ssrCache/index.d.ts +7 -0
  30. package/dist/types/libs/render/ssrCache/manager.d.ts +14 -0
  31. package/dist/types/renderHtml.d.ts +2 -0
  32. package/dist/types/server/index.d.ts +2 -0
  33. package/dist/types/server/modernServer.d.ts +2 -3
  34. package/dist/types/type.d.ts +2 -0
  35. package/package.json +8 -11
  36. package/dist/cjs/libs/render/cache/__tests__/cache.fun.test.js +0 -95
  37. package/dist/cjs/libs/render/cache/__tests__/cache.test.js +0 -223
  38. package/dist/cjs/libs/render/cache/__tests__/cacheable.js +0 -93
  39. package/dist/cjs/libs/render/cache/__tests__/error-configuration.js +0 -71
  40. package/dist/cjs/libs/render/cache/__tests__/matched-cache.js +0 -173
  41. package/dist/cjs/libs/render/cache/index.js +0 -92
  42. package/dist/cjs/libs/render/cache/page-caches/index.js +0 -36
  43. package/dist/cjs/libs/render/cache/spr.js +0 -247
  44. package/dist/cjs/libs/render/cache/type.js +0 -16
  45. package/dist/cjs/libs/render/cache/util.js +0 -121
  46. package/dist/cjs/libs/render/reader.js +0 -131
  47. package/dist/esm/libs/render/cache/__tests__/cache.fun.test.js +0 -124
  48. package/dist/esm/libs/render/cache/__tests__/cache.test.js +0 -612
  49. package/dist/esm/libs/render/cache/__tests__/cacheable.js +0 -69
  50. package/dist/esm/libs/render/cache/__tests__/error-configuration.js +0 -47
  51. package/dist/esm/libs/render/cache/__tests__/matched-cache.js +0 -149
  52. package/dist/esm/libs/render/cache/index.js +0 -204
  53. package/dist/esm/libs/render/cache/page-caches/index.js +0 -34
  54. package/dist/esm/libs/render/cache/page-caches/lru.js +0 -57
  55. package/dist/esm/libs/render/cache/spr.js +0 -345
  56. package/dist/esm/libs/render/cache/type.js +0 -0
  57. package/dist/esm/libs/render/cache/util.js +0 -105
  58. package/dist/esm/libs/render/reader.js +0 -196
  59. package/dist/esm-node/libs/render/cache/__tests__/cache.fun.test.js +0 -72
  60. package/dist/esm-node/libs/render/cache/__tests__/cache.test.js +0 -222
  61. package/dist/esm-node/libs/render/cache/__tests__/cacheable.js +0 -69
  62. package/dist/esm-node/libs/render/cache/__tests__/error-configuration.js +0 -47
  63. package/dist/esm-node/libs/render/cache/__tests__/matched-cache.js +0 -149
  64. package/dist/esm-node/libs/render/cache/index.js +0 -72
  65. package/dist/esm-node/libs/render/cache/page-caches/index.js +0 -12
  66. package/dist/esm-node/libs/render/cache/page-caches/lru.js +0 -32
  67. package/dist/esm-node/libs/render/cache/spr.js +0 -212
  68. package/dist/esm-node/libs/render/cache/type.js +0 -0
  69. package/dist/esm-node/libs/render/cache/util.js +0 -80
  70. package/dist/esm-node/libs/render/reader.js +0 -93
  71. package/dist/types/libs/render/cache/__tests__/cache.fun.test.d.ts +0 -1
  72. package/dist/types/libs/render/cache/__tests__/cache.test.d.ts +0 -1
  73. package/dist/types/libs/render/cache/__tests__/cacheable.d.ts +0 -62
  74. package/dist/types/libs/render/cache/__tests__/error-configuration.d.ts +0 -28
  75. package/dist/types/libs/render/cache/__tests__/matched-cache.d.ts +0 -124
  76. package/dist/types/libs/render/cache/index.d.ts +0 -6
  77. package/dist/types/libs/render/cache/page-caches/index.d.ts +0 -2
  78. package/dist/types/libs/render/cache/page-caches/lru.d.ts +0 -15
  79. package/dist/types/libs/render/cache/spr.d.ts +0 -22
  80. package/dist/types/libs/render/cache/type.d.ts +0 -48
  81. package/dist/types/libs/render/cache/util.d.ts +0 -18
  82. package/dist/types/libs/render/reader.d.ts +0 -20
@@ -1,149 +0,0 @@
1
- var matchedCacheableAry = [
2
- [
3
- {
4
- requestOpt: {
5
- url: "/level-one",
6
- headers: {},
7
- query: {
8
- name: "byted"
9
- }
10
- },
11
- cacheConfig: {
12
- level: 1,
13
- includes: {
14
- query: [
15
- "name"
16
- ]
17
- },
18
- matches: {
19
- query: {
20
- name: {
21
- weixin: "^byted"
22
- }
23
- }
24
- }
25
- },
26
- content: "level1"
27
- },
28
- {
29
- url: "/level-one",
30
- headers: {},
31
- query: {
32
- name: "byted_likely"
33
- }
34
- },
35
- {
36
- url: "/level-one",
37
- headers: {},
38
- query: {
39
- name: "not_byted"
40
- }
41
- }
42
- ],
43
- [
44
- {
45
- requestOpt: {
46
- url: "/level-two",
47
- query: {},
48
- headers: {
49
- age: "17"
50
- }
51
- },
52
- cacheConfig: {
53
- level: 2,
54
- includes: {
55
- header: [
56
- "age"
57
- ]
58
- },
59
- matches: {
60
- header: {
61
- age: {
62
- one: "^1"
63
- }
64
- }
65
- }
66
- },
67
- content: "level2"
68
- },
69
- {
70
- url: "/level-two",
71
- query: {},
72
- headers: {
73
- age: "11"
74
- }
75
- },
76
- {
77
- url: "/level-two",
78
- query: {},
79
- headers: {
80
- age: "22"
81
- }
82
- }
83
- ],
84
- [
85
- {
86
- requestOpt: {
87
- url: "/level-three",
88
- headers: {
89
- age: "17"
90
- },
91
- query: {
92
- name: "byted"
93
- }
94
- },
95
- cacheConfig: {
96
- level: 3,
97
- includes: {
98
- query: [
99
- "name"
100
- ],
101
- header: [
102
- "age"
103
- ]
104
- },
105
- matches: {
106
- query: {
107
- name: {
108
- weixin: "^byted"
109
- }
110
- },
111
- header: {
112
- age: {
113
- one: "^1"
114
- }
115
- }
116
- }
117
- },
118
- content: "level3"
119
- },
120
- {
121
- url: "/level-three",
122
- query: {
123
- name: "byted_likely"
124
- },
125
- headers: {
126
- age: "19"
127
- }
128
- },
129
- {
130
- url: "/level-three",
131
- query: {
132
- name: "byted_likely"
133
- },
134
- headers: {}
135
- },
136
- {
137
- url: "/level-three",
138
- query: {
139
- name: "not_byted"
140
- },
141
- headers: {
142
- age: "19"
143
- }
144
- }
145
- ]
146
- ];
147
- export {
148
- matchedCacheableAry
149
- };
@@ -1,204 +0,0 @@
1
- import { _ as _async_to_generator } from "@swc/helpers/_/_async_to_generator";
2
- import { _ as _object_spread } from "@swc/helpers/_/_object_spread";
3
- import { _ as _ts_generator } from "@swc/helpers/_/_ts_generator";
4
- import { Transform } from "stream";
5
- import { ERROR_DIGEST } from "../../../constants";
6
- import { createCache } from "./spr";
7
- import { namespaceHash, withCoalescedInvoke } from "./util";
8
- function cache_default(renderFn, ctx) {
9
- var sprCache = createCache();
10
- var doRender = function() {
11
- var _ref = _async_to_generator(function(context) {
12
- var cacheContext, cacheFile, renderResult, cacheHash, renderResult1, render;
13
- function afterRender(source, onAfterRender) {
14
- return _afterRender.apply(this, arguments);
15
- }
16
- function _afterRender() {
17
- _afterRender = _async_to_generator(function(source, onAfterRender) {
18
- var htmlForStream, cacheStream;
19
- return _ts_generator(this, function(_state) {
20
- switch (_state.label) {
21
- case 0:
22
- if (!source) {
23
- return [
24
- 2,
25
- ""
26
- ];
27
- }
28
- if (!(typeof source === "string"))
29
- return [
30
- 3,
31
- 2
32
- ];
33
- return [
34
- 4,
35
- onAfterRender(source)
36
- ];
37
- case 1:
38
- _state.sent();
39
- return [
40
- 2,
41
- source
42
- ];
43
- case 2:
44
- htmlForStream = "";
45
- cacheStream = new Transform({
46
- write: function write(chunk, _, callback) {
47
- htmlForStream += chunk.toString();
48
- this.push(chunk);
49
- callback();
50
- }
51
- });
52
- cacheStream.on("close", function() {
53
- return onAfterRender(htmlForStream);
54
- });
55
- return [
56
- 2,
57
- source(cacheStream)
58
- ];
59
- case 3:
60
- return [
61
- 2
62
- ];
63
- }
64
- });
65
- });
66
- return _afterRender.apply(this, arguments);
67
- }
68
- function saveHtmlIntoCache(html) {
69
- return _saveHtmlIntoCache.apply(this, arguments);
70
- }
71
- function _saveHtmlIntoCache() {
72
- _saveHtmlIntoCache = _async_to_generator(function(html) {
73
- var cacheConfig;
74
- return _ts_generator(this, function(_state) {
75
- switch (_state.label) {
76
- case 0:
77
- cacheConfig = context.cacheConfig;
78
- if (!(html && cacheConfig))
79
- return [
80
- 3,
81
- 2
82
- ];
83
- return [
84
- 4,
85
- sprCache.set(cacheContext, html, cacheConfig)
86
- ];
87
- case 1:
88
- _state.sent();
89
- _state.label = 2;
90
- case 2:
91
- return [
92
- 2
93
- ];
94
- }
95
- });
96
- });
97
- return _saveHtmlIntoCache.apply(this, arguments);
98
- }
99
- return _ts_generator(this, function(_state) {
100
- switch (_state.label) {
101
- case 0:
102
- cacheContext = _object_spread({
103
- entry: context.entryName
104
- }, context.request);
105
- return [
106
- 4,
107
- sprCache.get(cacheContext)
108
- ];
109
- case 1:
110
- cacheFile = _state.sent();
111
- if (!!cacheFile)
112
- return [
113
- 3,
114
- 3
115
- ];
116
- return [
117
- 4,
118
- renderFn(context)
119
- ];
120
- case 2:
121
- renderResult = _state.sent();
122
- return [
123
- 2,
124
- afterRender(renderResult, saveHtmlIntoCache)
125
- ];
126
- case 3:
127
- cacheHash = cacheFile === null || cacheFile === void 0 ? void 0 : cacheFile.hash;
128
- if (!cacheFile.isGarbage)
129
- return [
130
- 3,
131
- 5
132
- ];
133
- return [
134
- 4,
135
- renderFn(context)
136
- ];
137
- case 4:
138
- renderResult1 = _state.sent();
139
- return [
140
- 2,
141
- afterRender(renderResult1, saveHtmlIntoCache)
142
- ];
143
- case 5:
144
- if (cacheFile.isStale) {
145
- render = withCoalescedInvoke(function() {
146
- return renderFn(context);
147
- }).bind(null, namespaceHash("render", cacheFile.hash), []);
148
- render().then(function() {
149
- var _ref2 = _async_to_generator(function(res) {
150
- var cacheConfig;
151
- return _ts_generator(this, function(_state2) {
152
- if (res.value && res.isOrigin) {
153
- cacheConfig = context.cacheConfig;
154
- if (cacheConfig) {
155
- afterRender(res.value, function() {
156
- var _ref3 = _async_to_generator(function(html) {
157
- return _ts_generator(this, function(_state3) {
158
- sprCache.set(cacheContext, html, cacheConfig);
159
- return [
160
- 2
161
- ];
162
- });
163
- });
164
- return function(html) {
165
- return _ref3.apply(this, arguments);
166
- };
167
- }());
168
- } else {
169
- sprCache.del(cacheContext, cacheHash);
170
- }
171
- }
172
- return [
173
- 2
174
- ];
175
- });
176
- });
177
- return function(res) {
178
- return _ref2.apply(this, arguments);
179
- };
180
- }()).catch(function(e) {
181
- sprCache.del(cacheContext, cacheHash);
182
- ctx.error(ERROR_DIGEST.ERENDER, e);
183
- });
184
- }
185
- _state.label = 6;
186
- case 6:
187
- ctx.res.setHeader("x-modern-spr", "1");
188
- return [
189
- 2,
190
- cacheFile.content
191
- ];
192
- }
193
- });
194
- });
195
- return function doRender2(context) {
196
- return _ref.apply(this, arguments);
197
- };
198
- }();
199
- return doRender;
200
- }
201
- ;
202
- export {
203
- cache_default as default
204
- };
@@ -1,34 +0,0 @@
1
- import { _ as _async_to_generator } from "@swc/helpers/_/_async_to_generator";
2
- import { _ as _ts_generator } from "@swc/helpers/_/_ts_generator";
3
- import { LRUCaches } from "./lru";
4
- function createPageCaches(max) {
5
- return _createPageCaches.apply(this, arguments);
6
- }
7
- function _createPageCaches() {
8
- _createPageCaches = _async_to_generator(function(max) {
9
- var constructorOptions, cacheInstance;
10
- return _ts_generator(this, function(_state) {
11
- switch (_state.label) {
12
- case 0:
13
- constructorOptions = {
14
- max
15
- };
16
- cacheInstance = new LRUCaches(constructorOptions);
17
- return [
18
- 4,
19
- cacheInstance.init()
20
- ];
21
- case 1:
22
- _state.sent();
23
- return [
24
- 2,
25
- cacheInstance
26
- ];
27
- }
28
- });
29
- });
30
- return _createPageCaches.apply(this, arguments);
31
- }
32
- export {
33
- createPageCaches
34
- };
@@ -1,57 +0,0 @@
1
- import { _ as _class_call_check } from "@swc/helpers/_/_class_call_check";
2
- import { _ as _create_class } from "@swc/helpers/_/_create_class";
3
- import { _ as _define_property } from "@swc/helpers/_/_define_property";
4
- import LRU from "lru-cache";
5
- var LRUCaches = /* @__PURE__ */ function() {
6
- "use strict";
7
- function LRUCaches2(options) {
8
- _class_call_check(this, LRUCaches2);
9
- _define_property(this, "caches", void 0);
10
- _define_property(this, "max", void 0);
11
- this.max = options.max;
12
- this.caches = new LRU(this.max);
13
- }
14
- _create_class(LRUCaches2, [
15
- {
16
- key: "init",
17
- value: function init() {
18
- return Promise.resolve();
19
- }
20
- },
21
- {
22
- key: "keys",
23
- value: function keys() {
24
- return this.caches.keys();
25
- }
26
- },
27
- {
28
- key: "get",
29
- value: function get(key) {
30
- return Promise.resolve(this.caches.get(key) || null);
31
- }
32
- },
33
- {
34
- key: "peek",
35
- value: function peek(key) {
36
- return this.caches.peek(key) || null;
37
- }
38
- },
39
- {
40
- key: "set",
41
- value: function set(key, cache) {
42
- this.caches.set(key, cache);
43
- return Promise.resolve();
44
- }
45
- },
46
- {
47
- key: "del",
48
- value: function del(key) {
49
- this.caches.del(key);
50
- }
51
- }
52
- ]);
53
- return LRUCaches2;
54
- }();
55
- export {
56
- LRUCaches
57
- };