mnfst 0.5.222 → 0.5.223

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.
@@ -2,7 +2,7 @@
2
2
 
3
3
  (function () {
4
4
 
5
- const MANIFEST_BUILD_VERSION = '0.5.222';
5
+ const MANIFEST_BUILD_VERSION = '0.5.223';
6
6
 
7
7
  /* Manifest Data Sources - Appwrite Integration */
8
8
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  (function () {
4
4
 
5
- const MANIFEST_BUILD_VERSION = '0.5.222';
5
+ const MANIFEST_BUILD_VERSION = '0.5.223';
6
6
 
7
7
  /* Manifest Data Sources - Configuration */
8
8
 
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "manifest.appwrite.auth.js": "sha384-X30RFvbwT9qEIaMsMUumnW54ZzcnY5aY9QQeXPG8/0sI6VAbAw3+FZ6iuZb6b4cu",
3
- "manifest.appwrite.data.js": "sha384-dSnLE73aoJkrLXQ3EYSNgmMLJ8WZn6dGcZOKx6bY007Qnl/vY2JK75q/leiZXe7s",
3
+ "manifest.appwrite.data.js": "sha384-LQT0LcTMaZ6YmXfs2V3lwC6BEUeLPSvPmjrKrjBPReQYQIzZX6Pu6+BUdgbus852",
4
4
  "manifest.appwrite.presences.js": "sha384-JyVDWFT69b7Svq8J8p9tNWe2v9PZNQBY5UyhtOl1vnuHFAX0CRQ3MA9SiKq5wzNh",
5
5
  "manifest.bindings.js": "sha384-lPtMf8Ykaic9gNVZKq8Scia1881ZeMAyxer3WCIkUNwwrgzGBWto1OXADUwjvORF",
6
6
  "manifest.charts.js": "sha384-gEAv/98+29RbhvNkiNWTNyBPbLTFr2Ld15wLu29FLCL57j1cwGChRrL9Pfk7dBtT",
@@ -11,7 +11,7 @@
11
11
  "manifest.combobox.js": "sha384-MILTkrgsTzsYUjGo4ZuADqV85Xs4GmfB4xexfe9vbJMIoQTZ42W4zs+DTaVSPEsx",
12
12
  "manifest.components.js": "sha384-4bc3HgPvF9DHMiOG08w+nWXI7Hho01RuAPAUL9xyLxOiS2igeZpulCVcvr5aT9v6",
13
13
  "manifest.computed.js": "sha384-GYML/e81gQfN+iDbqhPUgny8bINCyL+SrbTofoGk4hlCnLLjv51mCv42JMqq+ku5",
14
- "manifest.data.js": "sha384-ixpU7pvJhlPBvT7in0HonHQLdNOabbpqik6IVsMNNzAY3UhCVAf8BRno2niTkZK1",
14
+ "manifest.data.js": "sha384-dMDM5N62wVqo217yh5VAsMdE0ZiGuo2J4QSPK7LDEAoAOGFRPV2LUldIlL18bMfD",
15
15
  "manifest.datepicker.js": "sha384-XnbeURni2X91ozVzatQcSjYYIS4MoW12dBRJnYAGBr0nCQ624heH5s+xtQSpLZX6",
16
16
  "manifest.defer.js": "sha384-WcCf8YQ1bKIXCLSZ24a0bJwepbYntYc8TzQM50hklo5VMIH8AtzDnwl6WU4prRv1",
17
17
  "manifest.device.js": "sha384-g+txmrEszYtuOvRelTp/c1wSNR2AtllVI9rx5NPPD7DzhVUnMNughonZykv2xlBW",
@@ -28,7 +28,7 @@
28
28
  "manifest.slides.js": "sha384-3uRTkyK9XPLmnxI2+igZlpi4EyPlU/7IHj5j3BZJJ2KN455vXyk99fiXV3feO/XY",
29
29
  "manifest.status.js": "sha384-MBO345ab7H6Uq1X2dZLt4Ge1Gcra+Z2qYApvlAeIV8CJhDDJrz2FPXpp+Kcp8zcM",
30
30
  "manifest.svg.js": "sha384-qr/8H9+2cIhSXNbRWRtIdrDlTOxKlNJqwEefHvCYoiBNW/kKhPTFa109Orv/EBnb",
31
- "manifest.sw.js": "sha384-P5M9kT06bquAyIK8aLQK6ujNn5rnaJ2Lw8f/ZsDx1yLVPWYeIOwa6Y06eEWmc5ry",
31
+ "manifest.sw.js": "sha384-P34Bp+1ckjkZfyO6eWJHvVTUi+bRU0iSuHo9v7YbzHv1WhkOG2vrEswZmG4MwOAU",
32
32
  "manifest.tabs.js": "sha384-OIIcyaQnGS0eNYk4zgAFEDboNYect7THvUd9D0V6nqCeDOxQcoiqLrBEmmWVTTet",
33
33
  "manifest.tailwind.js": "sha384-r/Jvqb+Piz21jUts10BbVAJoKkShOdJRVFpywyi4HPIi/OfOJq5CtPyWAPbdkMgt",
34
34
  "manifest.text.edit.js": "sha384-RzOvLQE8GbmI6gntAwiotDewYT/08OHcd7sJ5hLon8e8u1Xbq1D7VfEGuaRVd2CE",
@@ -16,7 +16,7 @@
16
16
 
17
17
  // Build stamps the published version here; unstamped (dev) falls back to the
18
18
  // registration URL's `v`, then 'dev'.
19
- const BUILD_VERSION = '0.5.222';
19
+ const BUILD_VERSION = '0.5.223';
20
20
  const CACHE_PREFIX = 'mnfst-sw:';
21
21
  const META_CACHE = CACHE_PREFIX + 'meta';
22
22
  // Sized to hold a full precache.json warm-up (PRECACHE_MAX_ENTRIES server-side)
@@ -28,6 +28,8 @@ const PRECACHE_CONCURRENCY = 4;
28
28
  const STATIC_EXT = /\.(css|js|mjs|json|csv|tsv|ya?ml|md|txt|xml|svg|png|jpe?g|gif|webp|avif|ico|bmp|woff2?|ttf|otf|eot|mp3|mp4|webm|ogg|wav|flac|m4a|wasm|webmanifest|map)$/i;
29
29
  const SKIP_PATH = /^\/(sw\.js$|precache\.json$|v1\/|_appwrite\/|_ai\/|__mnfst|__edit)/;
30
30
  const CDN_HOST = /^(cdn\.manifestx\.dev|cdn\.jsdelivr\.net|unpkg\.com|esm\.run)$/;
31
+ const PRIMARY_CDN = 'https://cdn.manifestx.dev/npm/';
32
+ const MIRROR_CDN = 'https://cdn.jsdelivr.net/npm/';
31
33
  const ICONIFY_HOST = /^api\.(iconify\.design|simplesvg\.com|unisvg\.com)$/;
32
34
  const EXACT_PIN = /@\d+\.\d+\.\d+[^/]*(\/|$)/;
33
35
  const ANY_PIN = /@[^/]+(\/|$)/;
@@ -127,10 +129,20 @@ function cacheable(response) {
127
129
 
128
130
  // Cross-origin script tags fetch no-cors (opaque, uncheckable); refetch with
129
131
  // CORS so only real 200s are cached. A CORS failure falls back to pass-through.
132
+ // Primary-CDN requests that reject or come back non-ok retry once against the
133
+ // jsDelivr mirror (same /npm/ path), so a blocked or wedged cdn host can't
134
+ // dead-end the boot assets; a good mirror response caches under the original URL.
130
135
  function cacheFetch(request) {
131
136
  const url = new URL(request.url);
132
- if (url.origin === self.location.origin || request.mode === 'cors') return fetch(request);
133
- return fetch(new Request(request.url, { mode: 'cors', credentials: 'omit', redirect: 'follow' }));
137
+ const direct = url.origin === self.location.origin || request.mode === 'cors'
138
+ ? fetch(request)
139
+ : fetch(new Request(request.url, { mode: 'cors', credentials: 'omit', redirect: 'follow' }));
140
+ if (request.url.indexOf(PRIMARY_CDN) !== 0) return direct;
141
+ const mirror = () => fetch(new Request(MIRROR_CDN + request.url.slice(PRIMARY_CDN.length), { mode: 'cors', credentials: 'omit', redirect: 'follow' }));
142
+ return direct.then(
143
+ (res) => (res.ok ? res : mirror().then((alt) => (alt.ok ? alt : res)).catch(() => res)),
144
+ () => mirror(),
145
+ );
134
146
  }
135
147
 
136
148
  async function trimSwr(cache) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mnfst",
3
- "version": "0.5.222",
3
+ "version": "0.5.223",
4
4
  "private": false,
5
5
  "workspaces": [
6
6
  "templates/starter",