mage-obsidian 2.7.2 → 2.9.0
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/dist/cli/criticalCss.js +26 -7
- package/dist/cli/criticalCss.js.map +1 -1
- package/dist/core/criticalCss.d.ts +11 -1
- package/dist/core/criticalCss.d.ts.map +1 -1
- package/dist/core/criticalCss.js +48 -1
- package/dist/core/criticalCss.js.map +1 -1
- package/dist/runtime/sectionStoreCore.d.ts +16 -0
- package/dist/runtime/sectionStoreCore.d.ts.map +1 -1
- package/dist/runtime/sectionStoreCore.js +25 -0
- package/dist/runtime/sectionStoreCore.js.map +1 -1
- package/package.json +1 -1
package/dist/cli/criticalCss.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { readFileSync, writeFileSync } from "node:fs";
|
|
2
|
-
import { extractCritical } from "../core/criticalCss.js";
|
|
2
|
+
import { extractCritical, mergeDocuments, classCoverage } from "../core/criticalCss.js";
|
|
3
3
|
// Internal bin the PHP `mage-obsidian:frontend:critical-css` command shells out
|
|
4
4
|
// to: it takes the rendered page HTML and the built stylesheet and writes the
|
|
5
5
|
// critical CSS. Kept argv-only (no commander) because it is machine-invoked.
|
|
@@ -7,16 +7,35 @@ function arg(name) {
|
|
|
7
7
|
const i = process.argv.indexOf(name);
|
|
8
8
|
return i > -1 ? process.argv[i + 1] : undefined;
|
|
9
9
|
}
|
|
10
|
-
|
|
10
|
+
function args(name) {
|
|
11
|
+
const found = [];
|
|
12
|
+
process.argv.forEach((value, i) => {
|
|
13
|
+
if (value === name && process.argv[i + 1] !== undefined) {
|
|
14
|
+
found.push(process.argv[i + 1]);
|
|
15
|
+
}
|
|
16
|
+
});
|
|
17
|
+
return found;
|
|
18
|
+
}
|
|
19
|
+
const htmlFiles = args("--html");
|
|
11
20
|
const cssFile = arg("--css");
|
|
12
21
|
const outFile = arg("--out");
|
|
13
|
-
|
|
14
|
-
|
|
22
|
+
const minCoverage = Number(arg("--min-coverage") ?? "0");
|
|
23
|
+
if (htmlFiles.length === 0 || !cssFile || !outFile) {
|
|
24
|
+
console.error("usage: criticalCss --html <file> [--html <file>…] --css <file> --out <file> [--min-coverage <0..1>]");
|
|
15
25
|
process.exit(1);
|
|
16
26
|
}
|
|
17
|
-
const
|
|
27
|
+
const htmls = htmlFiles.map((file) => readFileSync(file, "utf8"));
|
|
18
28
|
const css = readFileSync(cssFile, "utf8");
|
|
19
|
-
const critical = await extractCritical({ html, css });
|
|
29
|
+
const critical = await extractCritical({ html: htmls, css });
|
|
20
30
|
writeFileSync(outFile, critical);
|
|
21
|
-
|
|
31
|
+
const coverage = classCoverage(mergeDocuments(htmls), css, critical);
|
|
32
|
+
console.log(`critical: ${critical.length} bytes -> ${outFile} ` +
|
|
33
|
+
`(coverage ${(coverage.ratio * 100).toFixed(1)}%, ${coverage.covered}/${coverage.total} classes)`);
|
|
34
|
+
if (coverage.ratio < minCoverage) {
|
|
35
|
+
console.error(`critical CSS covers ${(coverage.ratio * 100).toFixed(1)}% of the styled classes, ` +
|
|
36
|
+
`below the required ${(minCoverage * 100).toFixed(1)}%. Missing: ` +
|
|
37
|
+
coverage.missing.slice(0, 20).join(", ") +
|
|
38
|
+
(coverage.missing.length > 20 ? `, and ${coverage.missing.length - 20} more` : ""));
|
|
39
|
+
process.exit(2);
|
|
40
|
+
}
|
|
22
41
|
//# sourceMappingURL=criticalCss.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"criticalCss.js","sourceRoot":"","sources":["../../src/cli/criticalCss.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"criticalCss.js","sourceRoot":"","sources":["../../src/cli/criticalCss.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,16 @@
|
|
|
1
1
|
export declare function extractFontFaces(css: string): string;
|
|
2
|
+
export declare function mergeDocuments(htmls: string[]): string;
|
|
3
|
+
export declare function classesInHtml(html: string): Set<string>;
|
|
4
|
+
export declare function classesInCss(css: string): Set<string>;
|
|
5
|
+
export interface CoverageReport {
|
|
6
|
+
total: number;
|
|
7
|
+
covered: number;
|
|
8
|
+
ratio: number;
|
|
9
|
+
missing: string[];
|
|
10
|
+
}
|
|
11
|
+
export declare function classCoverage(html: string, css: string, critical: string): CoverageReport;
|
|
2
12
|
export interface ExtractCriticalOptions {
|
|
3
|
-
html: string;
|
|
13
|
+
html: string | string[];
|
|
4
14
|
css: string;
|
|
5
15
|
}
|
|
6
16
|
export declare function extractCritical({ html, css }: ExtractCriticalOptions): Promise<string>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"criticalCss.d.ts","sourceRoot":"","sources":["../../src/core/criticalCss.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"criticalCss.d.ts","sourceRoot":"","sources":["../../src/core/criticalCss.ts"],"names":[],"mappings":"AA+BA,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEpD;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,CAUtD;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CAUvD;AAED,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CAMrD;AAED,MAAM,WAAW,cAAc;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,EAAE,CAAC;CACrB;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,cAAc,CAYzF;AAED,MAAM,WAAW,sBAAsB;IACnC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACxB,GAAG,EAAE,MAAM,CAAC;CACf;AASD,wBAAsB,eAAe,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,sBAAsB,GAAG,OAAO,CAAC,MAAM,CAAC,CA2B5F;AAED,eAAe,eAAe,CAAC"}
|
package/dist/core/criticalCss.js
CHANGED
|
@@ -6,6 +6,10 @@ const BeastiesClass = Beasties;
|
|
|
6
6
|
const FONT_FACE_RE = /@font-face\s*\{[^}]*\}/g;
|
|
7
7
|
const STYLE_RE = /<style[^>]*>([\s\S]*?)<\/style>/i;
|
|
8
8
|
const SHEET_LINK_RE = /<link\b[^>]*\bhref="[^"]*\.css"[^>]*>/i;
|
|
9
|
+
const BODY_RE = /<body\b[^>]*>([\s\S]*)<\/body>/i;
|
|
10
|
+
const BODY_CLOSE_RE = /<\/body>/i;
|
|
11
|
+
const CLASS_ATTR_RE = /\bclass\s*=\s*("([^"]*)"|'([^']*)')/gi;
|
|
12
|
+
const CSS_CLASS_RE = /\.((?:[A-Za-z0-9_-]|\\[^\n])+)/g;
|
|
9
13
|
// Pull the @font-face blocks out of a stylesheet verbatim. They must live in the
|
|
10
14
|
// inlined critical CSS so the families are declared before the deferred sheet
|
|
11
15
|
// loads — Beasties drops them from the critical subset (inlineFonts is off so it
|
|
@@ -13,6 +17,48 @@ const SHEET_LINK_RE = /<link\b[^>]*\bhref="[^"]*\.css"[^>]*>/i;
|
|
|
13
17
|
export function extractFontFaces(css) {
|
|
14
18
|
return (css.match(FONT_FACE_RE) ?? []).join("");
|
|
15
19
|
}
|
|
20
|
+
export function mergeDocuments(htmls) {
|
|
21
|
+
const docs = htmls.filter((html) => html.trim() !== "");
|
|
22
|
+
if (docs.length <= 1) {
|
|
23
|
+
return docs[0] ?? "";
|
|
24
|
+
}
|
|
25
|
+
const [shell, ...rest] = docs;
|
|
26
|
+
const extra = rest.map((html) => BODY_RE.exec(html)?.[1] ?? html).join("\n");
|
|
27
|
+
return BODY_CLOSE_RE.test(shell)
|
|
28
|
+
? shell.replace(BODY_CLOSE_RE, () => `${extra}</body>`)
|
|
29
|
+
: `${shell}\n${extra}`;
|
|
30
|
+
}
|
|
31
|
+
export function classesInHtml(html) {
|
|
32
|
+
const found = new Set();
|
|
33
|
+
for (const match of html.matchAll(CLASS_ATTR_RE)) {
|
|
34
|
+
for (const name of (match[2] ?? match[3] ?? "").split(/\s+/)) {
|
|
35
|
+
if (name !== "") {
|
|
36
|
+
found.add(name);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
return found;
|
|
41
|
+
}
|
|
42
|
+
export function classesInCss(css) {
|
|
43
|
+
const found = new Set();
|
|
44
|
+
for (const match of css.matchAll(CSS_CLASS_RE)) {
|
|
45
|
+
found.add(match[1].replace(/\\(.)/g, "$1"));
|
|
46
|
+
}
|
|
47
|
+
return found;
|
|
48
|
+
}
|
|
49
|
+
export function classCoverage(html, css, critical) {
|
|
50
|
+
const styled = classesInCss(css);
|
|
51
|
+
const inCritical = classesInCss(critical);
|
|
52
|
+
const used = [...classesInHtml(html)].filter((name) => styled.has(name));
|
|
53
|
+
const missing = used.filter((name) => !inCritical.has(name)).sort();
|
|
54
|
+
const covered = used.length - missing.length;
|
|
55
|
+
return {
|
|
56
|
+
total: used.length,
|
|
57
|
+
covered,
|
|
58
|
+
ratio: used.length === 0 ? 1 : covered / used.length,
|
|
59
|
+
missing,
|
|
60
|
+
};
|
|
61
|
+
}
|
|
16
62
|
// Run Beasties over the real rendered HTML against the full stylesheet and
|
|
17
63
|
// return the critical CSS it would inline. The PHP side does the actual inlining
|
|
18
64
|
// and sheet-deferring, so we only need the text; @font-face is prepended because
|
|
@@ -21,6 +67,7 @@ export function extractFontFaces(css) {
|
|
|
21
67
|
// Beasties resolves <link> hrefs from disk, so the sheet is written to a temp
|
|
22
68
|
// dir and the page's stylesheet link is repointed at it.
|
|
23
69
|
export async function extractCritical({ html, css }) {
|
|
70
|
+
const merged = mergeDocuments(Array.isArray(html) ? html : [html]);
|
|
24
71
|
const dir = mkdtempSync(join(tmpdir(), "mo-critical-"));
|
|
25
72
|
try {
|
|
26
73
|
const sheet = "sheet.css";
|
|
@@ -28,7 +75,7 @@ export async function extractCritical({ html, css }) {
|
|
|
28
75
|
// Strip any already-inlined critical <style> (a re-run sees the prior
|
|
29
76
|
// output in the page) and repoint the sheet link so Beasties extracts
|
|
30
77
|
// afresh from the full stylesheet only.
|
|
31
|
-
const wired =
|
|
78
|
+
const wired = merged
|
|
32
79
|
.replace(/<style\b[^>]*>[\s\S]*?<\/style>/gi, "")
|
|
33
80
|
.replace(SHEET_LINK_RE, `<link rel="stylesheet" href="${sheet}">`);
|
|
34
81
|
const beasties = new BeastiesClass({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"criticalCss.js","sourceRoot":"","sources":["../../src/core/criticalCss.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAcjC,MAAM,aAAa,GAAG,QAAmC,CAAC;AAE1D,MAAM,YAAY,GAAG,yBAAyB,CAAC;AAC/C,MAAM,QAAQ,GAAG,kCAAkC,CAAC;AACpD,MAAM,aAAa,GAAG,wCAAwC,CAAC;
|
|
1
|
+
{"version":3,"file":"criticalCss.js","sourceRoot":"","sources":["../../src/core/criticalCss.ts"],"names":[],"mappings":"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"}
|
|
@@ -27,12 +27,20 @@ interface SectionRuntimeScope {
|
|
|
27
27
|
expirable?: unknown;
|
|
28
28
|
};
|
|
29
29
|
}
|
|
30
|
+
export interface SectionPrefetch {
|
|
31
|
+
sections?: unknown;
|
|
32
|
+
data?: unknown;
|
|
33
|
+
}
|
|
34
|
+
interface SectionPrefetchScope {
|
|
35
|
+
__MAGE_OBSIDIAN_SECTION_PREFETCH__?: SectionPrefetch;
|
|
36
|
+
}
|
|
30
37
|
declare global {
|
|
31
38
|
interface Window {
|
|
32
39
|
__MAGE_OBSIDIAN_SECTIONS__?: {
|
|
33
40
|
lifetime?: unknown;
|
|
34
41
|
expirable?: unknown;
|
|
35
42
|
};
|
|
43
|
+
__MAGE_OBSIDIAN_SECTION_PREFETCH__?: SectionPrefetch;
|
|
36
44
|
}
|
|
37
45
|
}
|
|
38
46
|
/**
|
|
@@ -105,5 +113,13 @@ export declare function expiredSectionNames(sections: SectionMap | null | undefi
|
|
|
105
113
|
* (e.g. `window`) — so it is testable without a DOM, like `readI18nConfig`.
|
|
106
114
|
*/
|
|
107
115
|
export declare function readSectionRuntimeConfig(scope?: SectionRuntimeScope | undefined): SectionRuntimeConfig;
|
|
116
|
+
/**
|
|
117
|
+
* Claim the response a page put in flight for these sections before the ESM
|
|
118
|
+
* runtime existed, so a page whose content IS the private section (checkout)
|
|
119
|
+
* does not wait for the island graph to load, mount and only then start asking.
|
|
120
|
+
* Returns null when nothing matches, which leaves the caller on its normal
|
|
121
|
+
* network path. Consumed once: a response body cannot be read twice.
|
|
122
|
+
*/
|
|
123
|
+
export declare function takeSectionPrefetch(sectionNames: string[], scope?: SectionPrefetchScope | undefined): Promise<unknown> | null;
|
|
108
124
|
export {};
|
|
109
125
|
//# sourceMappingURL=sectionStoreCore.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sectionStoreCore.d.ts","sourceRoot":"","sources":["../../src/runtime/sectionStoreCore.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAClD,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;AAErD,MAAM,WAAW,kBAAkB;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED,MAAM,WAAW,oBAAoB;IACjC,eAAe,EAAE,MAAM,CAAC;IACxB,iBAAiB,EAAE,MAAM,EAAE,CAAC;CAC/B;AAED,UAAU,mBAAmB;IACzB,0BAA0B,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;QAAC,SAAS,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;CAC5E;AAGD,OAAO,CAAC,MAAM,CAAC;IACX,UAAU,MAAM;QACZ,0BAA0B,CAAC,EAAE;YAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;YAAC,SAAS,CAAC,EAAE,OAAO,CAAA;SAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"sectionStoreCore.d.ts","sourceRoot":"","sources":["../../src/runtime/sectionStoreCore.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAClD,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;AAErD,MAAM,WAAW,kBAAkB;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED,MAAM,WAAW,oBAAoB;IACjC,eAAe,EAAE,MAAM,CAAC;IACxB,iBAAiB,EAAE,MAAM,EAAE,CAAC;CAC/B;AAED,UAAU,mBAAmB;IACzB,0BAA0B,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;QAAC,SAAS,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;CAC5E;AAED,MAAM,WAAW,eAAe;IAC5B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,UAAU,oBAAoB;IAC1B,kCAAkC,CAAC,EAAE,eAAe,CAAC;CACxD;AAGD,OAAO,CAAC,MAAM,CAAC;IACX,UAAU,MAAM;QACZ,0BAA0B,CAAC,EAAE;YAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;YAAC,SAAS,CAAC,EAAE,OAAO,CAAA;SAAE,CAAC;QACzE,kCAAkC,CAAC,EAAE,eAAe,CAAC;KACxD;CACJ;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,UAAU,CAa9E;AAED;;GAEG;AACH,wBAAgB,aAAa,CACzB,QAAQ,EAAE,UAAU,GAAG,IAAI,GAAG,SAAS,EACvC,IAAI,EAAE,MAAM,GACb,WAAW,GAAG,IAAI,CAQpB;AAED;;;GAGG;AACH,wBAAgB,aAAa,CACzB,OAAO,EAAE,UAAU,GAAG,IAAI,GAAG,SAAS,EACtC,QAAQ,EAAE,UAAU,GAAG,IAAI,GAAG,SAAS,GACxC,UAAU,CAEZ;AAED,wBAAgB,YAAY,CACxB,QAAQ,EAAE,UAAU,GAAG,IAAI,GAAG,SAAS,EACvC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,WAAW,GACrB,UAAU,CAMZ;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAC1B,OAAO,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,EACvC,eAAe,EAAE,MAAM,EACvB,UAAU,EAAE,MAAM,GACnB,OAAO,CAcT;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAC/B,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,EAAE,EACtB,OAAO,GAAE,kBAAuB,GACjC,MAAM,CAaR;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAcxF;AAED;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAC1B,QAAQ,EAAE,UAAU,GAAG,IAAI,GAAG,SAAS,EACvC,aAAa,EAAE,MAAM,EACrB,cAAc,EAAE,MAAM,GACvB,OAAO,CAKT;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAC9B,YAAY,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EACvC,iBAAiB,EAAE,MAAM,GAC1B,OAAO,CAKT;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,mBAAmB,CAC/B,QAAQ,EAAE,UAAU,GAAG,IAAI,GAAG,SAAS,EACvC,eAAe,EAAE,MAAM,EACvB,cAAc,EAAE,MAAM,EAAE,EACxB,UAAU,EAAE,MAAM,GACnB,MAAM,EAAE,CAiBV;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CACpC,KAAK,GAAE,mBAAmB,GAAG,SAA8D,GAC5F,oBAAoB,CAUtB;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAC/B,YAAY,EAAE,MAAM,EAAE,EACtB,KAAK,GAAE,oBAAoB,GAAG,SAA8D,GAC7F,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI,CAoBzB"}
|
|
@@ -181,6 +181,31 @@ export function readSectionRuntimeConfig(scope = typeof window !== "undefined" ?
|
|
|
181
181
|
: [],
|
|
182
182
|
};
|
|
183
183
|
}
|
|
184
|
+
/**
|
|
185
|
+
* Claim the response a page put in flight for these sections before the ESM
|
|
186
|
+
* runtime existed, so a page whose content IS the private section (checkout)
|
|
187
|
+
* does not wait for the island graph to load, mount and only then start asking.
|
|
188
|
+
* Returns null when nothing matches, which leaves the caller on its normal
|
|
189
|
+
* network path. Consumed once: a response body cannot be read twice.
|
|
190
|
+
*/
|
|
191
|
+
export function takeSectionPrefetch(sectionNames, scope = typeof window !== "undefined" ? window : undefined) {
|
|
192
|
+
const pending = scope && scope.__MAGE_OBSIDIAN_SECTION_PREFETCH__;
|
|
193
|
+
if (!pending || !(pending.data instanceof Promise) || !Array.isArray(pending.sections)) {
|
|
194
|
+
return null;
|
|
195
|
+
}
|
|
196
|
+
const wanted = [...sectionNames].sort();
|
|
197
|
+
const offered = pending.sections
|
|
198
|
+
.filter((name) => typeof name === "string")
|
|
199
|
+
.sort();
|
|
200
|
+
if (wanted.length === 0 || wanted.length !== offered.length) {
|
|
201
|
+
return null;
|
|
202
|
+
}
|
|
203
|
+
if (wanted.some((name, index) => name !== offered[index])) {
|
|
204
|
+
return null;
|
|
205
|
+
}
|
|
206
|
+
delete scope.__MAGE_OBSIDIAN_SECTION_PREFETCH__;
|
|
207
|
+
return pending.data;
|
|
208
|
+
}
|
|
184
209
|
function pickObjectEntries(value) {
|
|
185
210
|
if (!value || typeof value !== "object" || Array.isArray(value)) {
|
|
186
211
|
return {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sectionStoreCore.js","sourceRoot":"","sources":["../../src/runtime/sectionStoreCore.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;
|
|
1
|
+
{"version":3,"file":"sectionStoreCore.js","sourceRoot":"","sources":["../../src/runtime/sectionStoreCore.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "mage-obsidian",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.9.0",
|
|
4
4
|
"description": "The MageObsidian JS build engine for Magento 2 frontends: theme inheritance resolution, precompilation and JS interceptors for Vite builds.",
|
|
5
5
|
"homepage": "https://mage-obsidian.jeanmarcos.dev/",
|
|
6
6
|
"bugs": {
|