mnfst 0.5.244 → 0.5.246
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/lib/manifest.charts.js
CHANGED
|
@@ -190,7 +190,7 @@
|
|
|
190
190
|
function normalize(raw, el, typeFromModifier) {
|
|
191
191
|
const cfg = Object.assign({}, raw || {});
|
|
192
192
|
cfg.type = (cfg.type || typeFromModifier || 'line').toLowerCase();
|
|
193
|
-
cfg.height = num(cfg.height || el.getAttribute('height'), 240);
|
|
193
|
+
cfg.height = num(cfg.height || el.getAttribute('height') || undefined, cfg.type === 'map' ? 0 : 240); // maps size from width
|
|
194
194
|
cfg.stacked = !!cfg.stacked;
|
|
195
195
|
cfg.legend = cfg.legend !== false;
|
|
196
196
|
cfg.axis = cfg.axis !== false;
|
|
@@ -199,6 +199,7 @@
|
|
|
199
199
|
cfg.dataLabels = !!cfg.dataLabels; // static value labels off by default
|
|
200
200
|
cfg.gap = num(cfg.gap, 1); // heatmap tile gutter in px
|
|
201
201
|
cfg.labels = Array.isArray(cfg.labels) ? cfg.labels : [];
|
|
202
|
+
cfg.tickAnchor = cfg.tickAnchor === 'end' ? 'end' : 'start';
|
|
202
203
|
|
|
203
204
|
// Series may be omitted in favor of a single `data` array. (A map's
|
|
204
205
|
// `data` is a region→value object, left untouched for drawMap.)
|
|
@@ -507,9 +508,23 @@
|
|
|
507
508
|
function drawCartesian(state, root, width, height) {
|
|
508
509
|
const cfg = state.config, d3 = state.d3;
|
|
509
510
|
const m = { top: 10, right: 14, bottom: 26, left: 40 };
|
|
510
|
-
const iw = width - m.left - m.right;
|
|
511
|
-
const ih = height - m.top - m.bottom;
|
|
512
511
|
const labels = cfg.labels.length ? cfg.labels : cfg.series[0].data.map((_, i) => i + 1);
|
|
512
|
+
const marks = cfg.axis ? axisMarks(cfg, labels) : [];
|
|
513
|
+
let iw = width - m.left - m.right;
|
|
514
|
+
// Widen margins (each side capped at 20% of width) so end labels sit
|
|
515
|
+
// centred on their points; past the cap, ends clamp inside the frame.
|
|
516
|
+
if (marks.length) {
|
|
517
|
+
const f = marks[0], l = marks[marks.length - 1];
|
|
518
|
+
const hf = labelWidth(root, [f.label]) / 2, hl = labelWidth(root, [l.label]) / 2;
|
|
519
|
+
const base = { left: m.left, right: m.right }, cap = width * 0.2;
|
|
520
|
+
for (let pass = 0; pass < 2; pass++) {
|
|
521
|
+
const c = xScheme(cfg, d3, labels.length, iw).x;
|
|
522
|
+
m.left = Math.max(base.left, Math.min(cap, Math.ceil(hf - c(f.at)) + 1));
|
|
523
|
+
m.right = Math.max(base.right, Math.min(cap, Math.ceil(hl - (iw - c(l.at))) + 1));
|
|
524
|
+
iw = width - m.left - m.right;
|
|
525
|
+
}
|
|
526
|
+
}
|
|
527
|
+
const ih = height - m.top - m.bottom;
|
|
513
528
|
const locale = (() => { try { return Alpine.store('locale')?.current || document.documentElement.lang || 'en'; } catch (_) { return 'en'; } })();
|
|
514
529
|
const nf = (() => { try { return new Intl.NumberFormat(locale, { notation: 'compact', maximumFractionDigits: 1 }); } catch (_) { return { format: String }; } })();
|
|
515
530
|
|
|
@@ -551,41 +566,73 @@
|
|
|
551
566
|
else if (cfg.type === 'scatter') drawScatter(state, plot, labels, iw, ih, y);
|
|
552
567
|
else drawLines(state, plot, labels, iw, ih, y); // line + area
|
|
553
568
|
|
|
554
|
-
// x axis labels
|
|
569
|
+
// x axis labels, thinned by a whole step so they never overlap
|
|
555
570
|
if (cfg.axis) {
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
text(plot, labels[i], { x: cx, y: ih + 16, 'text-anchor': 'middle' });
|
|
571
|
+
xAxisTicks(root, marks, xScheme(cfg, d3, labels.length, iw).x, iw, m, cfg.tickAnchor).forEach(([t, cx]) => {
|
|
572
|
+
text(plot, t.label, { x: cx, y: ih + 16, 'text-anchor': 'middle' });
|
|
559
573
|
});
|
|
560
574
|
}
|
|
561
575
|
if (cfg.legend && cfg.series.length > 1) drawLegend(state);
|
|
562
576
|
}
|
|
563
577
|
|
|
564
|
-
//
|
|
565
|
-
//
|
|
566
|
-
function
|
|
578
|
+
// One index-keyed x scheme per chart (duplicate labels stay distinct), shared
|
|
579
|
+
// by marks and axis. Bars (and combo lines over bars) use band centres.
|
|
580
|
+
function xScheme(cfg, d3, n, w) {
|
|
581
|
+
const idx = Array.from({ length: n }, (_, i) => i);
|
|
582
|
+
const candle = cfg.type === 'candlestick' || cfg.type === 'ohlc';
|
|
583
|
+
const banded = candle || cfg.type === 'bar' || (cfg.type === 'combo' && cfg.series.some(s => { const t = seriesType(cfg, s); return t !== 'line' && t !== 'area'; }));
|
|
584
|
+
if (banded) {
|
|
585
|
+
const band = d3.scaleBand().domain(idx).range([0, w]).padding(candle ? 0.3 : 0.2);
|
|
586
|
+
const bw = band.bandwidth();
|
|
587
|
+
return { band, step: band.step(), x: i => band(i) + bw / 2 };
|
|
588
|
+
}
|
|
589
|
+
const p = d3.scalePoint().domain(idx).range([0, w]).padding(0.5);
|
|
590
|
+
return { step: typeof p.step === 'function' ? p.step() : w / Math.max(1, n), x: i => p(i) };
|
|
591
|
+
}
|
|
592
|
+
|
|
593
|
+
// Axis label candidates: author `ticks` ([index] or [{ at, label }]) or every label.
|
|
594
|
+
function axisMarks(cfg, labels) {
|
|
567
595
|
const n = labels.length;
|
|
568
|
-
if (!
|
|
569
|
-
const
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
596
|
+
if (!Array.isArray(cfg.ticks)) return labels.map((l, i) => ({ at: i, label: l }));
|
|
597
|
+
const seen = new Set();
|
|
598
|
+
return cfg.ticks
|
|
599
|
+
.map(t => t && typeof t === 'object' && !Array.isArray(t) ? { at: tickIndex(t.at), label: t.label } : { at: tickIndex(t) })
|
|
600
|
+
.filter(t => t.at >= 0 && t.at < n && !seen.has(t.at) && seen.add(t.at))
|
|
601
|
+
.map(t => ({ at: t.at, label: t.label != null ? t.label : labels[t.at] }))
|
|
602
|
+
.sort((a, b) => a.at - b.at);
|
|
603
|
+
}
|
|
604
|
+
|
|
605
|
+
function tickIndex(v) {
|
|
606
|
+
const ok = (typeof v === 'number' && isFinite(v)) || (typeof v === 'string' && v.trim() !== '' && isFinite(+v));
|
|
607
|
+
return ok ? Math.round(+v) : -1;
|
|
608
|
+
}
|
|
609
|
+
|
|
610
|
+
// Marks + x to draw: every s-th mark for the smallest whole step s whose
|
|
611
|
+
// measured labels don't overlap, counted from `tickAnchor` ('start' | 'end'); ends clamped inside the svg.
|
|
612
|
+
function xAxisTicks(root, marks, xc, iw, m, anchor) {
|
|
613
|
+
const N = marks.length;
|
|
614
|
+
if (!N) return [];
|
|
615
|
+
const GAP = 6;
|
|
616
|
+
let half;
|
|
617
|
+
if (N <= 60) {
|
|
618
|
+
const ws = labelWidths(root, marks.map(t => t.label));
|
|
619
|
+
half = k => ws[k] / 2;
|
|
620
|
+
} else {
|
|
621
|
+
const sample = [marks[0], marks[N - 1]].concat(marks.slice().sort((a, b) => String(b.label).length - String(a.label).length).slice(0, 30));
|
|
622
|
+
const w = labelWidth(root, sample.map(t => t.label));
|
|
623
|
+
half = () => w / 2;
|
|
624
|
+
}
|
|
625
|
+
const center = k => xc(marks[k].at);
|
|
626
|
+
const xAt = k => Math.min(Math.max(center(k), -m.left + half(k)), iw + m.right - half(k));
|
|
627
|
+
const end = anchor === 'end';
|
|
628
|
+
const pick = s => { const ks = []; for (let k = end ? N - 1 : 0; k >= 0 && k < N; k += end ? -s : s) ks.push(k); return end ? ks.reverse() : ks; };
|
|
629
|
+
const fits = ks => ks.every((k, j) => !j || xAt(k) - xAt(ks[j - 1]) >= half(k) + half(ks[j - 1]) + GAP);
|
|
630
|
+
for (let s = 1; s < N; s++) {
|
|
631
|
+
const ks = pick(s);
|
|
632
|
+
if (fits(ks)) return ks.map(k => [marks[k], xAt(k)]);
|
|
633
|
+
}
|
|
634
|
+
const k = end ? N - 1 : 0;
|
|
635
|
+
return [[marks[k], xAt(k)]];
|
|
589
636
|
}
|
|
590
637
|
|
|
591
638
|
// `list` lets combo pass a subset of series with their original indices
|
|
@@ -593,15 +640,14 @@
|
|
|
593
640
|
// bar rects per index, highlighted from the dense hover columns.
|
|
594
641
|
function drawLines(state, plot, labels, iw, ih, y, list, barsAt) {
|
|
595
642
|
const cfg = state.config, d3 = state.d3;
|
|
596
|
-
const
|
|
643
|
+
const X = xScheme(cfg, d3, labels.length, iw), x = X.x, step = X.step;
|
|
597
644
|
const curve = curveFor(d3, cfg.curve);
|
|
598
645
|
const items = list || cfg.series.map((s, i) => ({ s, i, area: cfg.type === 'area' }));
|
|
599
646
|
// Dense: no per-point dots; hover columns carry the tooltip instead.
|
|
600
|
-
const step = typeof x.step === 'function' ? x.step() : iw / Math.max(1, labels.length);
|
|
601
647
|
const dense = labels.length > 1 && step < 10;
|
|
602
648
|
items.forEach(({ s, i: si, area }) => {
|
|
603
649
|
const color = seriesColorVar(si, s.color);
|
|
604
|
-
const points = labels.map((l, i) => [x(
|
|
650
|
+
const points = labels.map((l, i) => [x(i), y(num(s.data[i], 0))]);
|
|
605
651
|
if (area) {
|
|
606
652
|
const areaGen = d3.area().x(p => p[0]).y0(ih).y1(p => p[1]).curve(curve);
|
|
607
653
|
const ap = svg('path', { class: 'area', d: areaGen(points), style: `--color-chart-color:${color}` }, plot);
|
|
@@ -623,7 +669,7 @@
|
|
|
623
669
|
const g = svg('g', { class: 'hover' }, plot);
|
|
624
670
|
const focus = items.map(({ s, i: si }) => svg('circle', { class: 'focus', r: 3, display: 'none', style: `--color-chart-color:${seriesColorVar(si, s.color)}` }, g));
|
|
625
671
|
labels.forEach((l, i) => {
|
|
626
|
-
const cx = x(
|
|
672
|
+
const cx = x(i);
|
|
627
673
|
const hit = svg('rect', { class: 'hit', x: cx - step / 2, y: 0, width: step, height: ih, style: 'fill:transparent' }, g);
|
|
628
674
|
applyTip(hit, cfg.series.map(s => (s.name ? s.name + ': ' : '') + num(s.data[i], 0)), cfg, tipHead(cfg, l));
|
|
629
675
|
const bars = (barsAt && barsAt[i]) || [];
|
|
@@ -643,17 +689,17 @@
|
|
|
643
689
|
// only applies to the full-series bar chart, not combo.
|
|
644
690
|
function drawBars(state, plot, labels, iw, ih, y, list) {
|
|
645
691
|
const cfg = state.config, d3 = state.d3;
|
|
646
|
-
const x0 = d3
|
|
692
|
+
const x0 = xScheme(cfg, d3, labels.length, iw).band;
|
|
647
693
|
if (cfg.stacked && !list) {
|
|
648
694
|
labels.forEach((l, i) => {
|
|
649
695
|
let acc = 0;
|
|
650
696
|
cfg.series.forEach((s, si) => {
|
|
651
697
|
const v = num(s.data[i], 0);
|
|
652
698
|
const yTop = y(acc + v), yBot = y(acc);
|
|
653
|
-
const rect = svg('rect', { x: x0(
|
|
699
|
+
const rect = svg('rect', { x: x0(i), y: yTop, width: x0.bandwidth(), height: Math.max(0, yBot - yTop), style: `--color-chart-color:${seriesColorVar(si, s.color)}` }, plot);
|
|
654
700
|
applyTip(rect, (s.name ? s.name + ': ' : '') + v, cfg, tipHead(cfg, l));
|
|
655
701
|
animateBar(rect, ih);
|
|
656
|
-
if (cfg.dataLabels && (yBot - yTop) > 14) dataLabel(plot, v, x0(
|
|
702
|
+
if (cfg.dataLabels && (yBot - yTop) > 14) dataLabel(plot, v, x0(i) + x0.bandwidth() / 2, (yTop + yBot) / 2, 'middle', 'central', 'inverse');
|
|
657
703
|
acc += v;
|
|
658
704
|
});
|
|
659
705
|
});
|
|
@@ -666,11 +712,11 @@
|
|
|
666
712
|
const s = o.s, si = o.i;
|
|
667
713
|
const v = num(s.data[i], 0);
|
|
668
714
|
const yy = y(Math.max(0, v));
|
|
669
|
-
const rect = svg('rect', { x: x0(
|
|
715
|
+
const rect = svg('rect', { x: x0(i) + x1(String(k)), y: yy, width: x1.bandwidth(), height: Math.abs(y(v) - y(0)), style: `--color-chart-color:${seriesColorVar(si, s.color)}` }, plot);
|
|
670
716
|
byIndex[i].push(rect);
|
|
671
717
|
applyTip(rect, (s.name ? s.name + ': ' : '') + v, cfg, tipHead(cfg, l));
|
|
672
718
|
animateBar(rect, ih);
|
|
673
|
-
if (cfg.dataLabels) dataLabel(plot, v, x0(
|
|
719
|
+
if (cfg.dataLabels) dataLabel(plot, v, x0(i) + x1(String(k)) + x1.bandwidth() / 2, yy - 4);
|
|
674
720
|
});
|
|
675
721
|
});
|
|
676
722
|
return byIndex;
|
|
@@ -694,10 +740,9 @@
|
|
|
694
740
|
function drawCandles(state, plot, labels, iw, ih, y) {
|
|
695
741
|
const cfg = state.config, d3 = state.d3;
|
|
696
742
|
const cs = candleData(cfg.series[0].data);
|
|
697
|
-
const
|
|
698
|
-
const bw = x0.bandwidth();
|
|
743
|
+
const X = xScheme(cfg, d3, labels.length, iw), bw = X.band.bandwidth();
|
|
699
744
|
cs.forEach((c, i) => {
|
|
700
|
-
const cx =
|
|
745
|
+
const cx = X.x(i);
|
|
701
746
|
const up = c.c >= c.o;
|
|
702
747
|
const g = svg('g', { class: up ? 'positive' : 'negative' }, plot);
|
|
703
748
|
svg('line', { x1: cx, x2: cx, y1: y(c.h), y2: y(c.l) }, g);
|
|
@@ -715,14 +760,14 @@
|
|
|
715
760
|
|
|
716
761
|
function drawScatter(state, plot, labels, iw, ih, y) {
|
|
717
762
|
const cfg = state.config, d3 = state.d3;
|
|
718
|
-
const x = d3
|
|
763
|
+
const x = xScheme(cfg, d3, labels.length, iw).x;
|
|
719
764
|
cfg.series.forEach((s, si) => {
|
|
720
765
|
labels.forEach((l, i) => {
|
|
721
766
|
const v = num(s.data[i], 0);
|
|
722
|
-
const dot = svg('circle', { class: 'scatter', cx: x(
|
|
767
|
+
const dot = svg('circle', { class: 'scatter', cx: x(i), cy: y(v), r: 5, style: `--color-chart-color:${seriesColorVar(si, s.color)}` }, plot);
|
|
723
768
|
applyTip(dot, (s.name ? s.name + ': ' : '') + v, cfg, tipHead(cfg, l));
|
|
724
769
|
animate(dot, [{ opacity: 0, transform: 'scale(0)' }, { opacity: 1, transform: 'scale(1)' }], { duration: 350, delay: i * 25 });
|
|
725
|
-
if (cfg.dataLabels) dataLabel(plot, v, x(
|
|
770
|
+
if (cfg.dataLabels) dataLabel(plot, v, x(i), y(v) - 9);
|
|
726
771
|
});
|
|
727
772
|
});
|
|
728
773
|
}
|
|
@@ -752,11 +797,13 @@
|
|
|
752
797
|
// fallback). Sizes axis gutters to their content so charts sit balanced.
|
|
753
798
|
function labelWidth(root, items, cls) {
|
|
754
799
|
if (!items || !items.length) return 0;
|
|
800
|
+
return Math.max(...labelWidths(root, items, cls));
|
|
801
|
+
}
|
|
802
|
+
function labelWidths(root, items, cls) {
|
|
755
803
|
const probe = svg('text', cls ? { class: cls, x: -9999, y: -9999 } : { x: -9999, y: -9999 }, root);
|
|
756
|
-
let
|
|
757
|
-
for (const s of items) { probe.textContent = String(s); let w = 0; try { w = probe.getComputedTextLength(); } catch (_) { } if (!w) w = String(s).length * 7; if (w > max) max = w; }
|
|
804
|
+
const out = items.map(s => { probe.textContent = String(s == null ? '' : s); let w = 0; try { w = probe.getComputedTextLength(); } catch (_) { } return Math.ceil(w || String(s == null ? '' : s).length * 7); });
|
|
758
805
|
root.removeChild(probe);
|
|
759
|
-
return
|
|
806
|
+
return out;
|
|
760
807
|
}
|
|
761
808
|
|
|
762
809
|
function drawGauge(state, root, width, height) {
|
package/lib/manifest.data.js
CHANGED
|
@@ -444,6 +444,21 @@
|
|
|
444
444
|
const d = iso ? D.fromISO(iso) : null;
|
|
445
445
|
if (d) { this.selected = d; this.view = { y: d.getFullYear(), m: d.getMonth() + 1 }; }
|
|
446
446
|
}
|
|
447
|
+
this.fitView();
|
|
448
|
+
},
|
|
449
|
+
|
|
450
|
+
// Initial view: shift so no panel lies past max's month (max last) or before min's.
|
|
451
|
+
fitView() {
|
|
452
|
+
const c = Math.max(1, Math.min(4, this.monthCount || 1));
|
|
453
|
+
const mi = d => d.getFullYear() * 12 + d.getMonth();
|
|
454
|
+
const sel = this.selectionMode === 'range' ? [this.rangeStart, this.rangeEnd || this.rangeStart]
|
|
455
|
+
: this.selectionMode === 'multiple' ? [this.selectedDates[0], this.selectedDates[this.selectedDates.length - 1]]
|
|
456
|
+
: [this.selected, this.selected];
|
|
457
|
+
const lo = sel[0] ? mi(sel[0]) : null, hi = sel[1] ? mi(sel[1]) : null;
|
|
458
|
+
let first = this.view.y * 12 + this.view.m - 1;
|
|
459
|
+
if (this.max) { const mx = mi(this.max); if (first + c - 1 > mx && (hi == null || hi <= mx)) first = mx - c + 1; }
|
|
460
|
+
if (this.min) { const mn = mi(this.min); if (first < mn && (lo == null || lo >= mn)) first = mn; }
|
|
461
|
+
this.view = { y: Math.floor(first / 12), m: first % 12 + 1 };
|
|
447
462
|
},
|
|
448
463
|
|
|
449
464
|
// Only the plugin-generated dropdown opens here; native showPopover() rides
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"manifest.appwrite.auth.js": "sha384-dsIWnH0qCAGSzAXMGrd8fvOrVl4tOIE6j5tC35JPTrQXZ56qLD36ARyvhR7vi3Id",
|
|
3
|
-
"manifest.appwrite.data.js": "sha384-
|
|
3
|
+
"manifest.appwrite.data.js": "sha384-jeOzobMZv42WhbZ48jzse5PHLexYXx7VhHR59IyT5E7e+On+O5zLHBje0D0mMRS3",
|
|
4
4
|
"manifest.appwrite.presences.js": "sha384-JyVDWFT69b7Svq8J8p9tNWe2v9PZNQBY5UyhtOl1vnuHFAX0CRQ3MA9SiKq5wzNh",
|
|
5
5
|
"manifest.bindings.js": "sha384-lPtMf8Ykaic9gNVZKq8Scia1881ZeMAyxer3WCIkUNwwrgzGBWto1OXADUwjvORF",
|
|
6
|
-
"manifest.charts.js": "sha384-
|
|
6
|
+
"manifest.charts.js": "sha384-G+huD7UvjF9zDovdVVlh4I5X1Mq4oNnJfoFg4NnGdP3R/4Skq9hy5cGuHNYLxDYm",
|
|
7
7
|
"manifest.chat.js": "sha384-88DfMfJLoi2oxclVD2iIMDkIGAExMXq5k47mekUredlicLaP3oZY5bwtwqs+TqDF",
|
|
8
8
|
"manifest.code.js": "sha384-WGPlZE5Sp9GygUzJSmCdpLyYQTgvmEKc9BQS9Hmq1VTQwkqYJzPSWibHvPekcres",
|
|
9
9
|
"manifest.color.js": "sha384-6Rv3LxyTcZNjrhtayQfqRdCx0uSZ4BiEbgEI98I62eTvp8Aw7LBIoNJ0Je1oktwL",
|
|
@@ -11,8 +11,8 @@
|
|
|
11
11
|
"manifest.combobox.js": "sha384-MILTkrgsTzsYUjGo4ZuADqV85Xs4GmfB4xexfe9vbJMIoQTZ42W4zs+DTaVSPEsx",
|
|
12
12
|
"manifest.components.js": "sha384-BUFA8h+G5Plr82sV7bKzO42pPoiRZwRQcKj1lt2ROFiKjjlkayU/vmkAFqEsdBA+",
|
|
13
13
|
"manifest.computed.js": "sha384-GYML/e81gQfN+iDbqhPUgny8bINCyL+SrbTofoGk4hlCnLLjv51mCv42JMqq+ku5",
|
|
14
|
-
"manifest.data.js": "sha384-
|
|
15
|
-
"manifest.datepicker.js": "sha384-
|
|
14
|
+
"manifest.data.js": "sha384-j9OVEFvsLbMITqA9Fu8f3KcvcGjNO2HE5FgW1tjxMwwUikRoubaEj8XhFH01aR4s",
|
|
15
|
+
"manifest.datepicker.js": "sha384-2XwFFnS4Bg5FDvG/v8x6KUvrjcBQEOYyTxynX2K/D/Qb3PI6+Y04lEwCnVDJLzwL",
|
|
16
16
|
"manifest.defer.js": "sha384-pMRGqQKiEoJhpUcD40QeM4jEHau7sz9Xn/YCpiUamT1T4xJBZDSiYX+xnVrSWoq+",
|
|
17
17
|
"manifest.device.js": "sha384-g+txmrEszYtuOvRelTp/c1wSNR2AtllVI9rx5NPPD7DzhVUnMNughonZykv2xlBW",
|
|
18
18
|
"manifest.dropdowns.js": "sha384-acufUps7R9WjqB4XXW5JLACqniuHJGM4CNTb2rF4B2Q/jv7ZRmsAwfr2McanOz3s",
|
|
@@ -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-
|
|
31
|
+
"manifest.sw.js": "sha384-4xhlg8+MN2W32Yh+pz7Ns5wYZ6qo6Tq6yWCneEFpiUepjwpMOA4AOI5yTsxQqQ7X",
|
|
32
32
|
"manifest.tabs.js": "sha384-OIIcyaQnGS0eNYk4zgAFEDboNYect7THvUd9D0V6nqCeDOxQcoiqLrBEmmWVTTet",
|
|
33
33
|
"manifest.tailwind.js": "sha384-r/Jvqb+Piz21jUts10BbVAJoKkShOdJRVFpywyi4HPIi/OfOJq5CtPyWAPbdkMgt",
|
|
34
34
|
"manifest.toasts.js": "sha384-3zkWxzw693pxg3QDFsoYCA3CqYaLKmBaMArULXODD66Utolpewl0OAeTB92aWUVv",
|
package/lib/manifest.sw.js
CHANGED
|
@@ -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.
|
|
19
|
+
const BUILD_VERSION = '0.5.246';
|
|
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)
|