@absolutejs/absolute 0.19.0-beta.1022 → 0.19.0-beta.1024

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 (38) hide show
  1. package/dist/angular/browser.js +13 -17
  2. package/dist/angular/browser.js.map +3 -3
  3. package/dist/angular/components/core/streamingSlotRegistrar.js +1 -1
  4. package/dist/angular/components/core/streamingSlotRegistry.js +2 -2
  5. package/dist/angular/index.js +595 -267
  6. package/dist/angular/index.js.map +11 -8
  7. package/dist/angular/server.js +577 -249
  8. package/dist/angular/server.js.map +11 -8
  9. package/dist/build.js +865 -755
  10. package/dist/build.js.map +12 -11
  11. package/dist/cli/config/server.js +49 -42
  12. package/dist/client/index.js +34 -20
  13. package/dist/client/index.js.map +6 -6
  14. package/dist/index.js +922 -805
  15. package/dist/index.js.map +13 -12
  16. package/dist/islands/index.js +416 -95
  17. package/dist/islands/index.js.map +10 -7
  18. package/dist/react/browser.js +13 -17
  19. package/dist/react/browser.js.map +3 -3
  20. package/dist/react/index.js +484 -156
  21. package/dist/react/index.js.map +12 -9
  22. package/dist/react/server.js +69 -62
  23. package/dist/react/server.js.map +5 -5
  24. package/dist/src/client/preserveIslandMarkup.d.ts +4 -1
  25. package/dist/src/core/angularServerModule.d.ts +1 -0
  26. package/dist/svelte/index.js +389 -61
  27. package/dist/svelte/index.js.map +11 -8
  28. package/dist/svelte/server.js +50 -43
  29. package/dist/svelte/server.js.map +3 -3
  30. package/dist/types/angular.d.ts +3 -0
  31. package/dist/types/globals.d.ts +0 -1
  32. package/dist/vue/browser.js +13 -17
  33. package/dist/vue/browser.js.map +3 -3
  34. package/dist/vue/index.js +477 -153
  35. package/dist/vue/index.js.map +12 -9
  36. package/dist/vue/server.js +50 -43
  37. package/dist/vue/server.js.map +3 -3
  38. package/package.json +1 -1
@@ -2224,7 +2224,6 @@ var runWithStreamingSlotRegistry = async (task) => {
2224
2224
  init_svelteServerModule();
2225
2225
 
2226
2226
  // src/core/islandPageContext.ts
2227
- init_constants();
2228
2227
  var BOOTSTRAP_MANIFEST_KEY = "BootstrapClient";
2229
2228
  var ISLAND_MARKER = 'data-island="true"';
2230
2229
  var MANIFEST_MARKER = "__ABSOLUTE_MANIFEST__";
@@ -2345,61 +2344,69 @@ var pipeStreamWithHeadInjection = (stream, markup) => {
2345
2344
  var pipeStreamWithIslandMarkerDetection = (stream, markup) => {
2346
2345
  const encoder = new TextEncoder;
2347
2346
  const decoder = new TextDecoder;
2348
- const lookbehind = Math.max(ISLAND_MARKER.length, BYTES_PER_KILOBYTE);
2349
- const processPending = (controller, pending, injected) => {
2350
- if (injected) {
2351
- controller.enqueue(encoder.encode(pending));
2352
- return { injected, pending: "" };
2347
+ const headLookbehind = CLOSING_HEAD_TAG.length - 1;
2348
+ const enqueue = (controller, text) => {
2349
+ if (text.length > 0) {
2350
+ controller.enqueue(encoder.encode(text));
2353
2351
  }
2354
- const markerIndex = pending.indexOf(ISLAND_MARKER);
2355
- if (markerIndex >= 0) {
2356
- const tagStart = pending.lastIndexOf("<", markerIndex);
2357
- const injectAt = tagStart >= 0 ? tagStart : markerIndex;
2358
- const next = `${pending.slice(0, injectAt)}${markup}${pending.slice(injectAt)}`;
2359
- controller.enqueue(encoder.encode(next));
2360
- return { injected: true, pending: "" };
2352
+ };
2353
+ const processHolding = (controller, held) => {
2354
+ if (!held.includes(ISLAND_MARKER)) {
2355
+ return { held, injected: false, pending: "", sawHead: true };
2361
2356
  }
2362
- return {
2363
- injected,
2364
- pending: flushSafePendingText(controller, encoder, pending, lookbehind)
2365
- };
2357
+ enqueue(controller, `${markup}${held}`);
2358
+ return { held: "", injected: true, pending: "", sawHead: true };
2366
2359
  };
2367
- const finishIslandMarkerStream = (controller, pending) => {
2368
- const finalPending = pending + decoder.decode();
2369
- if (finalPending.length > 0) {
2370
- controller.enqueue(encoder.encode(finalPending));
2360
+ const processHead = (controller, pending) => {
2361
+ const headIndex = pending.indexOf(CLOSING_HEAD_TAG);
2362
+ if (headIndex < 0) {
2363
+ return {
2364
+ held: "",
2365
+ injected: false,
2366
+ pending: flushSafePendingText(controller, encoder, pending, headLookbehind),
2367
+ sawHead: false
2368
+ };
2371
2369
  }
2372
- controller.close();
2370
+ enqueue(controller, pending.slice(0, headIndex));
2371
+ return processHolding(controller, pending.slice(headIndex));
2373
2372
  };
2374
- const consumeIslandChunk = async (controller, reader, pending, injected) => {
2375
- const { done, value } = await readStreamChunk(reader);
2376
- if (done || !value) {
2377
- return { done, injected, pending };
2373
+ const processChunk = (controller, state, chunk) => {
2374
+ if (state.injected) {
2375
+ enqueue(controller, chunk);
2376
+ return state;
2378
2377
  }
2379
- const processed = processPending(controller, pending + streamChunkToString(value, decoder), injected);
2380
- return {
2381
- done,
2382
- injected: processed.injected,
2383
- pending: processed.pending
2384
- };
2378
+ if (!state.sawHead) {
2379
+ return processHead(controller, state.pending + chunk);
2380
+ }
2381
+ return processHolding(controller, state.held + chunk);
2385
2382
  };
2386
- const runIslandMarkerLoop = async (controller, reader) => {
2387
- const consumeNextIslandChunk = async (injected, pending) => {
2388
- const consumed = await consumeIslandChunk(controller, reader, pending, injected);
2389
- const nextState = updateInjectedState(consumed, injected, pending);
2390
- if (nextState.done) {
2391
- return { injected, pending };
2383
+ const finishMarkerStream = (controller, state) => {
2384
+ const tail = decoder.decode();
2385
+ const remainder = state.injected ? tail : (state.sawHead ? state.held : state.pending) + tail;
2386
+ enqueue(controller, remainder);
2387
+ controller.close();
2388
+ };
2389
+ const runMarkerLoop = (controller, reader) => {
2390
+ const consumeNext = async (state) => {
2391
+ const { done, value } = await readStreamChunk(reader);
2392
+ if (done || !value) {
2393
+ return state;
2392
2394
  }
2393
- return consumeNextIslandChunk(nextState.injected, nextState.pending);
2395
+ return consumeNext(processChunk(controller, state, streamChunkToString(value, decoder)));
2394
2396
  };
2395
- return consumeNextIslandChunk(false, "");
2397
+ return consumeNext({
2398
+ held: "",
2399
+ injected: false,
2400
+ pending: "",
2401
+ sawHead: false
2402
+ });
2396
2403
  };
2397
2404
  return new ReadableStream({
2398
2405
  async start(controller) {
2399
2406
  const reader = stream.getReader();
2400
2407
  try {
2401
- const { pending } = await runIslandMarkerLoop(controller, reader);
2402
- finishIslandMarkerStream(controller, pending);
2408
+ const finalState = await runMarkerLoop(controller, reader);
2409
+ finishMarkerStream(controller, finalState);
2403
2410
  } catch (error) {
2404
2411
  controller.error(error);
2405
2412
  }
@@ -2985,5 +2992,5 @@ export {
2985
2992
  handleSveltePageRequest
2986
2993
  };
2987
2994
 
2988
- //# debugId=0B246AF7B0F9185264756E2164756E21
2995
+ //# debugId=200C89226B8C4C5764756E2164756E21
2989
2996
  //# sourceMappingURL=server.js.map