@absolutejs/absolute 0.20.0-beta.84 → 0.20.0-beta.85

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.
@@ -1,7 +1,7 @@
1
1
  // @bun
2
2
  var __require = import.meta.require;
3
3
 
4
- // .angular-partial-tmp-wrP0vo/src/core/streamingSlotRegistrar.ts
4
+ // .angular-partial-tmp-UibQSn/src/core/streamingSlotRegistrar.ts
5
5
  var STREAMING_SLOT_REGISTRAR_KEY = Symbol.for("absolutejs.streamingSlotRegistrar");
6
6
  var STREAMING_SLOT_WARNING_STORAGE_KEY = Symbol.for("absolutejs.streamingSlotWarningController");
7
7
  var STREAMING_SLOT_COLLECTION_STORAGE_KEY = Symbol.for("absolutejs.streamingSlotCollectionController");
@@ -1,7 +1,7 @@
1
1
  // @bun
2
2
  var __require = import.meta.require;
3
3
 
4
- // .angular-partial-tmp-wrP0vo/src/core/streamingSlotRegistrar.ts
4
+ // .angular-partial-tmp-UibQSn/src/core/streamingSlotRegistrar.ts
5
5
  var STREAMING_SLOT_REGISTRAR_KEY = Symbol.for("absolutejs.streamingSlotRegistrar");
6
6
  var STREAMING_SLOT_WARNING_STORAGE_KEY = Symbol.for("absolutejs.streamingSlotWarningController");
7
7
  var STREAMING_SLOT_COLLECTION_STORAGE_KEY = Symbol.for("absolutejs.streamingSlotCollectionController");
@@ -48,7 +48,7 @@ var warnMissingStreamingSlotCollector = (primitiveName) => {
48
48
  getWarningController()?.maybeWarn(primitiveName);
49
49
  };
50
50
 
51
- // .angular-partial-tmp-wrP0vo/src/core/streamingSlotRegistry.ts
51
+ // .angular-partial-tmp-UibQSn/src/core/streamingSlotRegistry.ts
52
52
  var STREAMING_SLOT_STORAGE_KEY = Symbol.for("absolutejs.streamingSlotAsyncLocalStorage");
53
53
  var isObjectRecord2 = (value) => Boolean(value) && typeof value === "object";
54
54
  var isAsyncLocalStorage = (value) => isObjectRecord2(value) && ("getStore" in value) && typeof value.getStore === "function" && ("run" in value) && typeof value.run === "function";
package/dist/build.js CHANGED
@@ -29270,14 +29270,18 @@ var MOBILE_UPDATE_REGISTRY_FORMAT = 1, DEFAULT_PREFIX = "absolutejs/mobile-updat
29270
29270
  const expoCodeSigning = resolveExpoCodeSigning(options.expoCodeSigning);
29271
29271
  return async (request) => {
29272
29272
  const origin = request.headers.get("origin");
29273
- const cors = origin && allowedOrigins.has(origin) ? { "access-control-allow-origin": origin, vary: "Origin" } : {};
29273
+ const cors = origin && allowedOrigins.has(origin) ? {
29274
+ "access-control-allow-origin": origin,
29275
+ "access-control-expose-headers": "content-range,etag",
29276
+ vary: "Origin"
29277
+ } : {};
29274
29278
  if (request.method === "OPTIONS") {
29275
29279
  if (!origin || !allowedOrigins.has(origin))
29276
29280
  return new Response(null, { status: 403 });
29277
29281
  return new Response(null, {
29278
29282
  headers: {
29279
29283
  ...cors,
29280
- "access-control-allow-headers": "x-absolute-mobile-app,x-absolute-mobile-channel,x-absolute-mobile-installation,x-absolute-mobile-release,x-absolute-mobile-runtime",
29284
+ "access-control-allow-headers": "if-range,range,x-absolute-mobile-app,x-absolute-mobile-channel,x-absolute-mobile-installation,x-absolute-mobile-release,x-absolute-mobile-runtime",
29281
29285
  "access-control-allow-methods": "GET,OPTIONS",
29282
29286
  "access-control-max-age": "600"
29283
29287
  },
@@ -29405,14 +29409,42 @@ var MOBILE_UPDATE_REGISTRY_FORMAT = 1, DEFAULT_PREFIX = "absolutejs/mobile-updat
29405
29409
  });
29406
29410
  if (!file5)
29407
29411
  return new Response(null, { status: 404 });
29408
- return new Response(new Blob([new Uint8Array(file5.bytes).buffer]), {
29412
+ const etag = `"${file5.file.sha256}"`;
29413
+ const range = request.headers.get("range");
29414
+ const useRange = range !== null && (!request.headers.has("if-range") || request.headers.get("if-range") === etag);
29415
+ let contents = file5.bytes;
29416
+ let status = 200;
29417
+ let contentRange;
29418
+ if (useRange) {
29419
+ const parsed = /^bytes=(\d+)-(\d*)$/.exec(range);
29420
+ const start = parsed?.[1] === undefined ? NaN : Number(parsed[1]);
29421
+ const requestedEnd = parsed?.[2] === undefined || parsed[2] === "" ? file5.bytes.byteLength - 1 : Number(parsed[2]);
29422
+ if (!Number.isSafeInteger(start) || !Number.isSafeInteger(requestedEnd) || start < 0 || start >= file5.bytes.byteLength || requestedEnd < start)
29423
+ return new Response(null, {
29424
+ headers: {
29425
+ ...cors,
29426
+ "accept-ranges": "bytes",
29427
+ "content-range": `bytes */${file5.bytes.byteLength}`,
29428
+ etag
29429
+ },
29430
+ status: 416
29431
+ });
29432
+ const end = Math.min(requestedEnd, file5.bytes.byteLength - 1);
29433
+ contents = file5.bytes.slice(start, end + 1);
29434
+ status = 206;
29435
+ contentRange = `bytes ${start}-${end}/${file5.bytes.byteLength}`;
29436
+ }
29437
+ return new Response(new Blob([new Uint8Array(contents).buffer]), {
29409
29438
  headers: {
29410
29439
  ...cors,
29440
+ "accept-ranges": "bytes",
29411
29441
  "cache-control": "public, max-age=31536000, immutable",
29412
- "content-length": String(file5.file.bytes),
29442
+ "content-length": String(contents.byteLength),
29443
+ ...contentRange ? { "content-range": contentRange } : {},
29413
29444
  "content-type": expoContentType(file5.file.path.includes(".") ? file5.file.path.slice(file5.file.path.lastIndexOf(".") + 1) : undefined, false),
29414
- etag: `"${file5.file.sha256}"`
29415
- }
29445
+ etag
29446
+ },
29447
+ status
29416
29448
  });
29417
29449
  };
29418
29450
  };
@@ -37246,5 +37278,5 @@ export {
37246
37278
  devBuild
37247
37279
  };
37248
37280
 
37249
- //# debugId=5BE2EBFD6FC5145B64756E2164756E21
37281
+ //# debugId=51C2CE65BFD2E24164756E2164756E21
37250
37282
  //# sourceMappingURL=build.js.map