rip-lang 3.13.14 → 3.13.16

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.
package/README.md CHANGED
@@ -9,7 +9,7 @@
9
9
  </p>
10
10
 
11
11
  <p align="center">
12
- <a href="CHANGELOG.md"><img src="https://img.shields.io/badge/version-3.13.14-blue.svg" alt="Version"></a>
12
+ <a href="CHANGELOG.md"><img src="https://img.shields.io/badge/version-3.13.16-blue.svg" alt="Version"></a>
13
13
  <a href="#zero-dependencies"><img src="https://img.shields.io/badge/dependencies-ZERO-brightgreen.svg" alt="Dependencies"></a>
14
14
  <a href="#"><img src="https://img.shields.io/badge/tests-1%2C255%2F1%2C255-brightgreen.svg" alt="Tests"></a>
15
15
  <a href="LICENSE"><img src="https://img.shields.io/badge/license-MIT-green.svg" alt="License"></a>
package/docs/dist/rip.js CHANGED
@@ -8352,8 +8352,8 @@ globalThis.zip ??= (...a) => a[0].map((_, i) => a.map(b => b[i]));
8352
8352
  return new CodeGenerator({}).getComponentRuntime();
8353
8353
  }
8354
8354
  // src/browser.js
8355
- var VERSION = "3.13.13";
8356
- var BUILD_DATE = "2026-02-25@05:34:54GMT";
8355
+ var VERSION = "3.13.15";
8356
+ var BUILD_DATE = "2026-02-25@06:33:14GMT";
8357
8357
  if (typeof globalThis !== "undefined") {
8358
8358
  if (!globalThis.__rip)
8359
8359
  new Function(getReactiveRuntime())();
@@ -9519,7 +9519,7 @@ ${indented}`);
9519
9519
  return renderer;
9520
9520
  };
9521
9521
  var launch = async function(appBase = "", opts = {}) {
9522
- let _save, _storage, _storageKey, app, appComponents, bundle, classesKey, compile2, el, hash, persist, renderer, res, resolver, router, saved, savedData, target;
9522
+ let _save, _storage, _storageKey, app, appComponents, bundle, cached, classesKey, compile2, el, etag, etagKey, hash, headers, persist, renderer, res, resolver, router, saved, savedData, target;
9523
9523
  globalThis.__ripLaunched = true;
9524
9524
  if (typeof appBase === "object") {
9525
9525
  opts = appBase;
@@ -9541,11 +9541,24 @@ ${indented}`);
9541
9541
  if (opts.bundle) {
9542
9542
  bundle = opts.bundle;
9543
9543
  } else if (opts.bundleUrl) {
9544
- res = await fetch(opts.bundleUrl, { cache: "no-cache" });
9545
- if (!res.ok) {
9544
+ headers = {};
9545
+ etagKey = `__rip_etag_${opts.bundleUrl}`;
9546
+ cached = sessionStorage.getItem(etagKey);
9547
+ if (cached)
9548
+ headers["If-None-Match"] = cached;
9549
+ res = await fetch(opts.bundleUrl, { headers });
9550
+ if (res.status === 304) {
9551
+ bundle = JSON.parse(sessionStorage.getItem(`${etagKey}_data`));
9552
+ } else if (res.ok) {
9553
+ bundle = await res.json();
9554
+ etag = res.headers.get("etag");
9555
+ if (etag) {
9556
+ sessionStorage.setItem(etagKey, etag);
9557
+ sessionStorage.setItem(`${etagKey}_data`, JSON.stringify(bundle));
9558
+ }
9559
+ } else {
9546
9560
  throw new Error(`launch: ${opts.bundleUrl} (${res.status})`);
9547
9561
  }
9548
- bundle = await res.json();
9549
9562
  } else {
9550
9563
  throw new Error("launch: no bundle or bundleUrl provided");
9551
9564
  }