@modern-js/plugin-data-loader 2.4.0 → 2.5.0-alpha.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 (33) hide show
  1. package/dist/{js/node → cjs}/cli/create-request.js +17 -26
  2. package/dist/cjs/cli/data.js +162 -0
  3. package/dist/{js/node → cjs}/cli/generate-client.js +1 -1
  4. package/dist/{js/node → cjs}/cli/loader.js +12 -34
  5. package/dist/{js/node → cjs}/common/constants.js +0 -0
  6. package/dist/cjs/runtime/index.js +159 -0
  7. package/dist/cjs/runtime/response.js +102 -0
  8. package/dist/cjs/server/index.js +64 -0
  9. package/dist/{js/treeshaking → esm}/cli/create-request.js +41 -2
  10. package/dist/esm/cli/data.js +820 -0
  11. package/dist/{js/treeshaking → esm}/cli/generate-client.js +1 -1
  12. package/dist/{js/treeshaking → esm}/cli/loader.js +2 -2
  13. package/dist/{js/treeshaking → esm}/common/constants.js +0 -0
  14. package/dist/{js/treeshaking/server → esm/runtime}/index.js +69 -225
  15. package/dist/esm/runtime/response.js +284 -0
  16. package/dist/esm/server/index.js +176 -0
  17. package/dist/{js/modern → esm-node}/cli/create-request.js +17 -26
  18. package/dist/esm-node/cli/data.js +142 -0
  19. package/dist/{js/modern → esm-node}/cli/generate-client.js +1 -1
  20. package/dist/esm-node/cli/loader.js +18 -0
  21. package/dist/{js/modern → esm-node}/common/constants.js +0 -0
  22. package/dist/esm-node/runtime/index.js +143 -0
  23. package/dist/esm-node/runtime/response.js +79 -0
  24. package/dist/esm-node/server/index.js +40 -0
  25. package/dist/types/cli/create-request.d.ts +2 -1
  26. package/dist/types/cli/data.d.ts +6 -0
  27. package/dist/types/runtime/index.d.ts +15 -0
  28. package/dist/types/runtime/response.d.ts +2 -0
  29. package/dist/types/server/index.d.ts +0 -15
  30. package/package.json +24 -14
  31. package/dist/js/modern/cli/loader.js +0 -40
  32. package/dist/js/modern/server/index.js +0 -237
  33. package/dist/js/node/server/index.js +0 -261
@@ -125,6 +125,7 @@ var __generator = this && this.__generator || function(thisArg, body) {
125
125
  import { compile } from "path-to-regexp";
126
126
  import { redirect } from "react-router-dom";
127
127
  import { LOADER_ID_PARAM, DIRECT_PARAM } from "../common/constants";
128
+ import { parseDeferredReadableStream } from "./data";
128
129
  var getRequestUrl = function(param) {
129
130
  var params = param.params, request = param.request, routeId = param.routeId;
130
131
  var url = new URL(request.url);
@@ -141,10 +142,41 @@ var handleRedirectResponse = function(res) {
141
142
  var headers = res.headers;
142
143
  var location = headers.get("X-Modernjs-Redirect");
143
144
  if (location) {
144
- return redirect(location);
145
+ throw redirect(location);
145
146
  }
146
147
  return res;
147
148
  };
149
+ var handleDeferredResponse = function() {
150
+ var _ref = _asyncToGenerator(function(res) {
151
+ var _res_headers_get;
152
+ return __generator(this, function(_state) {
153
+ switch(_state.label){
154
+ case 0:
155
+ if (!(((_res_headers_get = res.headers.get("Content-Type")) === null || _res_headers_get === void 0 ? void 0 : _res_headers_get.match(/text\/modernjs-deferred/)) && res.body)) return [
156
+ 3,
157
+ 2
158
+ ];
159
+ return [
160
+ 4,
161
+ parseDeferredReadableStream(res.body)
162
+ ];
163
+ case 1:
164
+ return [
165
+ 2,
166
+ _state.sent()
167
+ ];
168
+ case 2:
169
+ return [
170
+ 2,
171
+ res
172
+ ];
173
+ }
174
+ });
175
+ });
176
+ return function handleDeferredResponse(res) {
177
+ return _ref.apply(this, arguments);
178
+ };
179
+ }();
148
180
  var createRequest = function(routeId) {
149
181
  var method = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : "get";
150
182
  return function() {
@@ -171,9 +203,16 @@ var createRequest = function(routeId) {
171
203
  if (!res.ok) {
172
204
  throw res;
173
205
  }
206
+ res = handleRedirectResponse(res);
207
+ return [
208
+ 4,
209
+ handleDeferredResponse(res)
210
+ ];
211
+ case 2:
212
+ res = _state.sent();
174
213
  return [
175
214
  2,
176
- handleRedirectResponse(res)
215
+ res
177
216
  ];
178
217
  }
179
218
  });