@swoff/cli 0.4.4 → 0.4.6
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/index.js +26 -2
- package/dist/index.js.map +1 -1
- package/dist/lib/commands/generate-guide.js +1 -1
- package/dist/lib/commands/generate-guide.js.map +1 -1
- package/dist/lib/commands/init.js +122 -26
- package/dist/lib/commands/init.js.map +1 -1
- package/dist/lib/config/minimal-config.js +9 -3
- package/dist/lib/config/minimal-config.js.map +1 -1
- package/dist/lib/config/validator.js +1 -6
- package/dist/lib/config/validator.js.map +1 -1
- package/dist/lib/generators/file-generators/client-injector-bundle.js +1 -1
- package/dist/lib/generators/file-generators/client-injector-bundle.js.map +1 -1
- package/dist/lib/generators/file-generators/context.js +1 -1
- package/dist/lib/generators/file-generators/context.js.map +1 -1
- package/dist/lib/generators/file-generators/generate-framework-adapters.js +2 -1
- package/dist/lib/generators/file-generators/generate-framework-adapters.js.map +1 -1
- package/dist/lib/generators/file-generators/sw-build-utils.js +93 -0
- package/dist/lib/generators/file-generators/sw-build-utils.js.map +1 -0
- package/dist/lib/generators/file-generators/sw-generator-build.js +7 -78
- package/dist/lib/generators/file-generators/sw-generator-build.js.map +1 -1
- package/dist/lib/generators/file-generators/sw-injector.js +0 -1
- package/dist/lib/generators/file-generators/sw-injector.js.map +1 -1
- package/dist/lib/generators/sw-generator.js +1 -2
- package/dist/lib/generators/sw-generator.js.map +1 -1
- package/dist/lib/generators/sw-sections/assemble-sw.js +1 -2
- package/dist/lib/generators/sw-sections/assemble-sw.js.map +1 -1
- package/dist/lib/generators/sw-sections/background-precache.js +4 -1
- package/dist/lib/generators/sw-sections/background-precache.js.map +1 -1
- package/dist/lib/generators/sw-sections/fetch-handler.js +44 -8
- package/dist/lib/generators/sw-sections/fetch-handler.js.map +1 -1
- package/dist/lib/generators/swoff-files-generator.js +5 -1
- package/dist/lib/generators/swoff-files-generator.js.map +1 -1
- package/dist/lib/shared/config-types.js +1 -116
- package/dist/lib/shared/config-types.js.map +1 -1
- package/dist/lib/utils/detect-framework.js +2 -1
- package/dist/lib/utils/detect-framework.js.map +1 -1
- package/dist/runtime/client-injector-bundle.js +6 -7
- package/dist/runtime/client-injector-bundle.js.map +1 -1
- package/dist/runtime/client-injector.js +7 -11
- package/dist/runtime/client-injector.js.map +1 -1
- package/dist/runtime/sw-injector.js +2 -2
- package/dist/runtime/sw-injector.js.map +1 -1
- package/dist/runtime/swoff-api-bundle.js +66 -882
- package/dist/runtime/swoff-api-bundle.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate-framework-adapters.js","sourceRoot":"","sources":["../../../../src/lib/generators/file-generators/generate-framework-adapters.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"generate-framework-adapters.js","sourceRoot":"","sources":["../../../../src/lib/generators/file-generators/generate-framework-adapters.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import { writeFile } from "./context.js";
|
|
2
|
+
export function generateSwBuildUtils(ctx) {
|
|
3
|
+
const code = `/**
|
|
4
|
+
* Swoff SW Build Utilities
|
|
5
|
+
* Shared functions used by generator.mjs at build time.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
import { readdirSync, existsSync } from 'fs';
|
|
9
|
+
import { join, relative, extname } from 'path';
|
|
10
|
+
|
|
11
|
+
export function collectAssets(dir, baseDir, excludeDirs) {
|
|
12
|
+
if (!existsSync(dir)) return [];
|
|
13
|
+
const entries = readdirSync(dir, { withFileTypes: true });
|
|
14
|
+
const assets = [];
|
|
15
|
+
for (const entry of entries) {
|
|
16
|
+
const fullPath = join(dir, entry.name);
|
|
17
|
+
if (entry.isDirectory()) {
|
|
18
|
+
if (excludeDirs && excludeDirs.indexOf(entry.name) !== -1) continue;
|
|
19
|
+
assets.push(...collectAssets(fullPath, baseDir, excludeDirs));
|
|
20
|
+
} else {
|
|
21
|
+
assets.push('/' + relative(baseDir, fullPath));
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
return assets;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
export function buildFallbackList(config) {
|
|
28
|
+
const fallback = [];
|
|
29
|
+
if (config.features?.pwa?.enabled) fallback.push('/manifest.json');
|
|
30
|
+
const nav = config.features?.serviceWorker?.navigation || {};
|
|
31
|
+
if (nav.fallback && fallback.indexOf(nav.fallback) === -1) {
|
|
32
|
+
fallback.push(nav.fallback);
|
|
33
|
+
}
|
|
34
|
+
if (nav.precacheRoutes) {
|
|
35
|
+
for (const route of nav.precacheRoutes) {
|
|
36
|
+
if (fallback.indexOf(route) === -1) fallback.push(route);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
if (nav.rules) {
|
|
40
|
+
for (const rule of nav.rules) {
|
|
41
|
+
if (rule.fallback && fallback.indexOf(rule.fallback) === -1) {
|
|
42
|
+
fallback.push(rule.fallback);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
return fallback;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
export function scanPrecacheAssets(config, projectRoot, swFile) {
|
|
50
|
+
const dirs = config.build?.precacheDirs || {};
|
|
51
|
+
const scanned = [];
|
|
52
|
+
for (const [dir, cfg] of Object.entries(dirs)) {
|
|
53
|
+
const dirPath = join(projectRoot, dir);
|
|
54
|
+
if (!existsSync(dirPath)) continue;
|
|
55
|
+
const normPrefix = cfg.prefix.replace(/\\/+$/, '');
|
|
56
|
+
for (const a of collectAssets(dirPath, dirPath, cfg.excludeDirs)) {
|
|
57
|
+
if (cfg.matchExtensions?.length && cfg.matchExtensions.indexOf(extname(a)) === -1) continue;
|
|
58
|
+
if (cfg.excludeFiles?.length) {
|
|
59
|
+
const basename = a.split('/').pop() || '';
|
|
60
|
+
let excluded = false;
|
|
61
|
+
for (const pat of cfg.excludeFiles) {
|
|
62
|
+
if (pat.startsWith('*.') ? basename.endsWith(pat.slice(1)) : basename === pat) {
|
|
63
|
+
excluded = true;
|
|
64
|
+
break;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
if (excluded) continue;
|
|
68
|
+
}
|
|
69
|
+
let url = normPrefix + '/' + a.slice(1);
|
|
70
|
+
if (cfg.stripExtensions?.indexOf(extname(a)) !== -1) {
|
|
71
|
+
url = url.replace(/\\.[^/.]+$/, '');
|
|
72
|
+
}
|
|
73
|
+
if (cfg.stripSuffixes) {
|
|
74
|
+
for (const suffix of cfg.stripSuffixes) {
|
|
75
|
+
if (url.endsWith('/' + suffix)) {
|
|
76
|
+
url = url.slice(0, -suffix.length - 1) + '/';
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
if (url !== '/' && url.endsWith('/')) {
|
|
81
|
+
url = url.slice(0, -1);
|
|
82
|
+
}
|
|
83
|
+
if (url !== '/' + swFile) {
|
|
84
|
+
scanned.push(url);
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
return scanned;
|
|
89
|
+
}
|
|
90
|
+
`;
|
|
91
|
+
writeFile(ctx, "sw/build-utils.mjs", code);
|
|
92
|
+
}
|
|
93
|
+
//# sourceMappingURL=sw-build-utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sw-build-utils.js","sourceRoot":"","sources":["../../../../src/lib/generators/file-generators/sw-build-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,SAAS,EAAE,MAAM,cAAc,CAAC;AAE3D,MAAM,UAAU,oBAAoB,CAAC,GAAqB;IACxD,MAAM,IAAI,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuFd,CAAC;IAEA,SAAS,CAAC,GAAG,EAAE,oBAAoB,EAAE,IAAI,CAAC,CAAC;AAC7C,CAAC"}
|
|
@@ -9,10 +9,11 @@ export function generateSwGeneratorBuild(ctx) {
|
|
|
9
9
|
* "build": "your-build && node swoff/sw/generator.mjs"
|
|
10
10
|
*/
|
|
11
11
|
|
|
12
|
-
import { readFileSync, writeFileSync, existsSync, mkdirSync
|
|
13
|
-
import { join, dirname
|
|
12
|
+
import { readFileSync, writeFileSync, existsSync, mkdirSync } from 'fs';
|
|
13
|
+
import { join, dirname } from 'path';
|
|
14
14
|
import { fileURLToPath } from 'url';
|
|
15
15
|
import { createRequire } from 'module';
|
|
16
|
+
import { collectAssets, buildFallbackList, scanPrecacheAssets } from './build-utils.mjs';
|
|
16
17
|
|
|
17
18
|
const __dirname = dirname(fileURLToPath(import.meta.url));
|
|
18
19
|
const projectRoot = process.cwd();
|
|
@@ -72,88 +73,16 @@ if (config.features?.serverPush?.enabled) {
|
|
|
72
73
|
}
|
|
73
74
|
|
|
74
75
|
const swOutput = config.build?.swOutput || 'dist';
|
|
75
|
-
const swFilename = config.build?.swFilename || 'sw';
|
|
76
76
|
|
|
77
77
|
const outDir = join(projectRoot, swOutput);
|
|
78
78
|
if (!existsSync(outDir)) {
|
|
79
79
|
mkdirSync(outDir, { recursive: true });
|
|
80
80
|
}
|
|
81
81
|
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
for (const entry of entries) {
|
|
87
|
-
const fullPath = join(dir, entry.name);
|
|
88
|
-
if (entry.isDirectory()) {
|
|
89
|
-
if (excludeDirs && excludeDirs.indexOf(entry.name) !== -1) continue;
|
|
90
|
-
assets.push(...collectAssets(fullPath, baseDir, excludeDirs));
|
|
91
|
-
} else {
|
|
92
|
-
assets.push('/' + relative(baseDir, fullPath));
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
return assets;
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
const dirsRaw = config.build?.precacheDirs || {};
|
|
99
|
-
const dirs = dirsRaw;
|
|
100
|
-
const allAssets = [];
|
|
101
|
-
for (const [dir, raw] of Object.entries(dirs)) {
|
|
102
|
-
const dirPath = join(projectRoot, dir);
|
|
103
|
-
if (existsSync(dirPath)) {
|
|
104
|
-
const cfg = raw;
|
|
105
|
-
const normPrefix = cfg.prefix.replace(/\\/+$/, '');
|
|
106
|
-
const matchExtensions = cfg.matchExtensions;
|
|
107
|
-
const stripExtensions = cfg.stripExtensions;
|
|
108
|
-
const stripSuffixes = cfg.stripSuffixes;
|
|
109
|
-
const excludeDirs = cfg.excludeDirs;
|
|
110
|
-
const excludeFiles = cfg.excludeFiles;
|
|
111
|
-
for (const a of collectAssets(dirPath, dirPath, excludeDirs)) {
|
|
112
|
-
if (matchExtensions?.length && !matchExtensions.includes(extname(a))) continue;
|
|
113
|
-
if (excludeFiles?.length) {
|
|
114
|
-
var basename = a.split('/').pop() || '';
|
|
115
|
-
var excluded = false;
|
|
116
|
-
for (var pi = 0; pi < excludeFiles.length; pi++) {
|
|
117
|
-
var pat = excludeFiles[pi];
|
|
118
|
-
if (pat.startsWith('*.') ? basename.endsWith(pat.slice(1)) : basename === pat) {
|
|
119
|
-
excluded = true;
|
|
120
|
-
break;
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
if (excluded) continue;
|
|
124
|
-
}
|
|
125
|
-
let url = normPrefix + '/' + a.slice(1);
|
|
126
|
-
if (stripExtensions?.includes(extname(a))) url = url.replace(/\\.[^/.]+$/, '');
|
|
127
|
-
if (stripSuffixes) {
|
|
128
|
-
for (const suffix of stripSuffixes) {
|
|
129
|
-
if (url.endsWith('/' + suffix)) {
|
|
130
|
-
url = url.slice(0, -suffix.length - 1) + '/';
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
}
|
|
134
|
-
if (url !== '/' && url.endsWith('/')) {
|
|
135
|
-
url = url.slice(0, -1);
|
|
136
|
-
}
|
|
137
|
-
allAssets.push(url);
|
|
138
|
-
}
|
|
139
|
-
}
|
|
140
|
-
}
|
|
141
|
-
const swFile = \`\${swFilename}.js\`;
|
|
142
|
-
const filtered = allAssets.filter(a => a !== \`/\${swFile}\`);
|
|
143
|
-
const nav = config.features?.serviceWorker?.navigation || {};
|
|
144
|
-
const fallback = [];
|
|
145
|
-
if (nav.fallback) fallback.push(nav.fallback);
|
|
146
|
-
if (config.features?.pwa?.enabled) fallback.push('/manifest.json');
|
|
147
|
-
if (nav.precacheRoutes) {
|
|
148
|
-
for (const route of nav.precacheRoutes) {
|
|
149
|
-
if (!fallback.includes(route)) fallback.push(route);
|
|
150
|
-
}
|
|
151
|
-
}
|
|
152
|
-
if (nav.rules) {
|
|
153
|
-
for (const rule of nav.rules) {
|
|
154
|
-
if (rule.fallback && !fallback.includes(rule.fallback)) fallback.push(rule.fallback);
|
|
155
|
-
}
|
|
156
|
-
}
|
|
82
|
+
const swFile = "swoff.sw.js";
|
|
83
|
+
const scanned = scanPrecacheAssets(config, projectRoot, swFile);
|
|
84
|
+
const fallback = buildFallbackList(config);
|
|
85
|
+
const filtered = scanned.filter(a => a !== "/" + swFile);
|
|
157
86
|
const assetsToCache = [...new Set([...fallback, ...filtered])];
|
|
158
87
|
|
|
159
88
|
const swConfig = config.features?.serviceWorker || {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sw-generator-build.js","sourceRoot":"","sources":["../../../../src/lib/generators/file-generators/sw-generator-build.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,SAAS,EAAE,MAAM,cAAc,CAAC;AAE3D,MAAM,UAAU,wBAAwB,CAAC,GAAqB;IAC5D,MAAM,IAAI,GAAG
|
|
1
|
+
{"version":3,"file":"sw-generator-build.js","sourceRoot":"","sources":["../../../../src/lib/generators/file-generators/sw-generator-build.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,SAAS,EAAE,MAAM,cAAc,CAAC;AAE3D,MAAM,UAAU,wBAAwB,CAAC,GAAqB;IAC5D,MAAM,IAAI,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsGd,CAAC;IAEA,SAAS,CAAC,GAAG,EAAE,kBAAkB,EAAE,IAAI,CAAC,CAAC;AAC3C,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sw-injector.js","sourceRoot":"","sources":["../../../../src/lib/generators/file-generators/sw-injector.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAoB,SAAS,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAEzE,MAAM,UAAU,kBAAkB,CAAC,GAAqB;IACtD,SAAS,CACP,GAAG,EACH,eAAe,GAAG,CAAC,GAAG,EAAE,EACxB,sBAAsB,CAAC;QACrB,EAAE,EAAE,GAAG,CAAC,GAAG,KAAK,IAAI;QACpB,GAAG,EAAE,GAAG,CAAC,GAAG;QACZ,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,YAAY;QAC5D,
|
|
1
|
+
{"version":3,"file":"sw-injector.js","sourceRoot":"","sources":["../../../../src/lib/generators/file-generators/sw-injector.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAoB,SAAS,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAEzE,MAAM,UAAU,kBAAkB,CAAC,GAAqB;IACtD,SAAS,CACP,GAAG,EACH,eAAe,GAAG,CAAC,GAAG,EAAE,EACxB,sBAAsB,CAAC;QACrB,EAAE,EAAE,GAAG,CAAC,GAAG,KAAK,IAAI;QACpB,GAAG,EAAE,GAAG,CAAC,GAAG;QACZ,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,YAAY;QAC5D,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK;KAC/B,CAAC,CACH,CAAC;AACJ,CAAC"}
|
|
@@ -35,8 +35,7 @@ export async function generateSW(options = {}) {
|
|
|
35
35
|
if (!existsSync(swOutput)) {
|
|
36
36
|
mkdirSync(swOutput, { recursive: true });
|
|
37
37
|
}
|
|
38
|
-
const
|
|
39
|
-
const outputFile = `${swFilename}.js`;
|
|
38
|
+
const outputFile = "swoff.sw.js";
|
|
40
39
|
try {
|
|
41
40
|
writeFileSync(join(swOutput, outputFile), sw);
|
|
42
41
|
console.log(`${swOutput}/${outputFile}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sw-generator.js","sourceRoot":"","sources":["../../../src/lib/generators/sw-generator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAOvC,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,UAA4B,EAAE;IAC7D,MAAM,cAAc,GAAG,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IAC5D,MAAM,aAAa,GAAG,OAAO,CAAC,UAAU,CAAC;IAEzC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,eAAe,CAAC,cAAc,EAAE,aAAa,CAAC,CAAC;IAExE,IAAI,EAAE,GAAG,UAAU,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAC5C,IAAI,OAAO,GAAG,EAAE,CAAC;IACjB,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;IAChE,IAAI,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QAC7B,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAChD,MAAM,SAAS,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC;YACzC,OAAO,GAAG,SAAS,CAAC,QAAQ,IAAI,EAAE,CAAC;QACrC,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;IACZ,CAAC;SAAM,CAAC;QACN,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;QAChE,IAAI,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;YAC7B,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;YACrD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAC;YACzE,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAClC,CAAC;IACH,CAAC;IACD,IAAI,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC;QAClC,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;IAC9C,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAE7D,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC1B,SAAS,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3C,CAAC;IAED,MAAM,UAAU,GAAG,
|
|
1
|
+
{"version":3,"file":"sw-generator.js","sourceRoot":"","sources":["../../../src/lib/generators/sw-generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,8 +4,7 @@ import { generateConfigHeader } from "./config-header.js";
|
|
|
4
4
|
import { applySwSections, shouldIncludeBackgroundSync, generateBackgroundSyncCode } from "./shared.js";
|
|
5
5
|
export function assembleSW(config, projectRoot, debug) {
|
|
6
6
|
const { serviceWorker } = config.features;
|
|
7
|
-
const
|
|
8
|
-
const swFile = `${swFilename}.js`;
|
|
7
|
+
const swFile = "swoff.sw.js";
|
|
9
8
|
const fallback = buildFallbackList(config);
|
|
10
9
|
const scanned = projectRoot ? scanPrecacheAssets(config, projectRoot, swFile) : [];
|
|
11
10
|
const assetsToCache = [...new Set([...fallback, ...scanned])];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assemble-sw.js","sourceRoot":"","sources":["../../../../src/lib/generators/sw-sections/assemble-sw.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,2BAA2B,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC;AAEvG,MAAM,UAAU,UAAU,CAAC,MAAmB,EAAE,WAAoB,EAAE,KAAe;IACnF,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"assemble-sw.js","sourceRoot":"","sources":["../../../../src/lib/generators/sw-sections/assemble-sw.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,2BAA2B,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC;AAEvG,MAAM,UAAU,UAAU,CAAC,MAAmB,EAAE,WAAoB,EAAE,KAAe;IACnF,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC;IAE1C,MAAM,MAAM,GAAG,aAAa,CAAC;IAC7B,MAAM,QAAQ,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAC3C,MAAM,OAAO,GAAG,WAAW,CAAC,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACnF,MAAM,aAAa,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,QAAQ,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAC9D,MAAM,WAAW,GAAG,aAAa,CAAC,QAAQ,EAAE,WAAW,IAAI,CAAC,CAAC;IAC7D,MAAM,OAAO,GAAG,aAAa,CAAC,QAAQ,EAAE,OAAO,IAAI,CAAC,CAAC;IAErD,IAAI,EAAE,GAAG,kBAAkB,EAAE,CAAC;IAE9B,EAAE,GAAG,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IAE9C,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,8BAA8B,EAAE,GAAG,EAAE,CAAC,yBAAyB,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;IAC1H,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,kCAAkC,EAAE,GAAG,EAAE,CAAC,8BAA8B,WAAW,GAAG,CAAC,CAAC;IACxG,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,+BAA+B,EAAE,GAAG,EAAE,CAAC,2BAA2B,OAAO,GAAG,CAAC,CAAC;IAC9F,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,0CAA0C,EAAE,GAAG,EAAE,CAAC,2BAA2B,aAAa,CAAC,YAAY,GAAG,CAAC,CAAC;IAC5H,EAAE,IAAI,0BAA0B,CAAC;IACjC,EAAE,GAAG,GAAG,oBAAoB,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC;IAEhD,IAAI,2BAA2B,CAAC,MAAM,CAAC,EAAE,CAAC;QACxC,EAAE,IAAI,0BAA0B,CAAC,MAAM,CAAC,CAAC;IAC3C,CAAC;IAED,OAAO,EAAE,CAAC;AACZ,CAAC"}
|
|
@@ -81,8 +81,11 @@ async function startBackgroundPrecache() {
|
|
|
81
81
|
if (_precachingActive) return;
|
|
82
82
|
_precachingActive = true;
|
|
83
83
|
try {
|
|
84
|
-
await ensurePrecacheVersion();
|
|
85
84
|
var cache = await caches.open("precache");
|
|
85
|
+
var keys = await cache.keys();
|
|
86
|
+
await Promise.all(keys.map(function(req) { return cache.delete(req); }));
|
|
87
|
+
await resetPrecacheCheckpoint();
|
|
88
|
+
await ensurePrecacheVersion();
|
|
86
89
|
var total = ASSETS_TO_CACHE.length;
|
|
87
90
|
if (total === 0) return;
|
|
88
91
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"background-precache.js","sourceRoot":"","sources":["../../../../src/lib/generators/sw-sections/background-precache.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,0BAA0B;IACxC,OAAO
|
|
1
|
+
{"version":3,"file":"background-precache.js","sourceRoot":"","sources":["../../../../src/lib/generators/sw-sections/background-precache.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,0BAA0B;IACxC,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwJR,CAAC;AACF,CAAC"}
|
|
@@ -87,6 +87,14 @@ function matchRouteFallback(url) {
|
|
|
87
87
|
' { status: 503, headers: { "Content-Type": "text/html", "Cache-Control": "no-store" } }\n' +
|
|
88
88
|
" );\n" +
|
|
89
89
|
"}\n";
|
|
90
|
+
const safeResponse = "function safeResponse(res) {\n" +
|
|
91
|
+
" if (!res || !res.redirected) return res;\n" +
|
|
92
|
+
" return new Response(res.body, {\n" +
|
|
93
|
+
" status: res.status,\n" +
|
|
94
|
+
" statusText: res.statusText,\n" +
|
|
95
|
+
" headers: res.headers,\n" +
|
|
96
|
+
" });\n" +
|
|
97
|
+
"}\n";
|
|
90
98
|
const tagCode = tagInvalidation
|
|
91
99
|
? `
|
|
92
100
|
const tagsHeader = request.headers.get("X-SW-Cache-Tags");
|
|
@@ -136,6 +144,17 @@ function isNavRequest(request) {
|
|
|
136
144
|
);
|
|
137
145
|
}
|
|
138
146
|
|
|
147
|
+
function isSsrClientNav(request) {
|
|
148
|
+
const accept = (request.headers.get("Accept") || "").toLowerCase();
|
|
149
|
+
// Next.js RSC — full-page HTML reload on failure
|
|
150
|
+
if (accept.includes("text/x-component")) return true;
|
|
151
|
+
// Remix data requests — same URL-based pattern as full nav
|
|
152
|
+
if (request.url.includes("?_data")) return true;
|
|
153
|
+
// SvelteKit data requests
|
|
154
|
+
if (request.url.includes("__data.json")) return true;
|
|
155
|
+
return false;
|
|
156
|
+
}
|
|
157
|
+
|
|
139
158
|
// --- Cache Key ---
|
|
140
159
|
|
|
141
160
|
function cacheKey(request) {
|
|
@@ -316,26 +335,26 @@ async function cacheResponse(response, request) {
|
|
|
316
335
|
}${tagCode}
|
|
317
336
|
}
|
|
318
337
|
|
|
319
|
-
// --- Fallback ---
|
|
338
|
+
// --- Navigation Fallback (HTML chain, nav requests only) ---
|
|
320
339
|
|
|
321
340
|
/*
|
|
322
|
-
*
|
|
341
|
+
* navFallback hierarchy for when a strategy cannot serve a response:
|
|
323
342
|
* SSR / Default: precache → runtime-html → per-route → global → inline 503
|
|
324
343
|
* SPA: per-route → inline 503
|
|
325
344
|
*/
|
|
326
|
-
async function
|
|
345
|
+
async function navFallback(request) {
|
|
327
346
|
swLog("fallback", "ENTER", request.url, 3);
|
|
328
347
|
const pc = await fromPrecache(request);
|
|
329
348
|
if (pc) {
|
|
330
349
|
swLog("fallback", "HIT precache", request.url, 3);
|
|
331
|
-
return pc;
|
|
350
|
+
return safeResponse(pc);
|
|
332
351
|
}
|
|
333
352
|
if (NAV_MODE !== "spa") {
|
|
334
353
|
const htmlCache = await caches.open("swoff-runtime-html");
|
|
335
354
|
const htmlMatch = await htmlCache.match(cacheKey(request));
|
|
336
355
|
if (htmlMatch) {
|
|
337
356
|
swLog("fallback", "HIT runtime-html", request.url, 3);
|
|
338
|
-
return htmlMatch;
|
|
357
|
+
return safeResponse(htmlMatch);
|
|
339
358
|
}
|
|
340
359
|
}${hasRules
|
|
341
360
|
? `
|
|
@@ -346,7 +365,7 @@ async function fallback(request) {
|
|
|
346
365
|
if (match) {
|
|
347
366
|
swLog("fallback", "HIT per-route fallback", request.url, 3);
|
|
348
367
|
broadcastToClients("OFFLINE_FALLBACK_ACTIVATED", { detail: { route: new URL(request.url).pathname, fallbackLevel: "route-fallback", timestamp: Date.now() } });
|
|
349
|
-
return match;
|
|
368
|
+
return safeResponse(match);
|
|
350
369
|
}
|
|
351
370
|
}`
|
|
352
371
|
: ""}
|
|
@@ -357,7 +376,7 @@ async function fallback(request) {
|
|
|
357
376
|
if (match) {
|
|
358
377
|
swLog("fallback", "HIT global fallback", request.url, 3);
|
|
359
378
|
broadcastToClients("OFFLINE_FALLBACK_ACTIVATED", { detail: { route: new URL(request.url).pathname, fallbackLevel: "offline-page", timestamp: Date.now() } });
|
|
360
|
-
return match;
|
|
379
|
+
return safeResponse(match);
|
|
361
380
|
}
|
|
362
381
|
}
|
|
363
382
|
}
|
|
@@ -366,7 +385,24 @@ async function fallback(request) {
|
|
|
366
385
|
return inline503Response();
|
|
367
386
|
}
|
|
368
387
|
|
|
369
|
-
|
|
388
|
+
// --- Fallback Dispatcher ---
|
|
389
|
+
|
|
390
|
+
/*
|
|
391
|
+
* fallback dispatches to either navFallback (HTML chain) or a 502 error
|
|
392
|
+
* depending on the request type:
|
|
393
|
+
* - isNavRequest → navFallback (true document navigation)
|
|
394
|
+
* - SSR mode + isSsrClientNav → navFallback (framework client-nav fetches that accept HTML)
|
|
395
|
+
* - Everything else → 502 Bad Gateway
|
|
396
|
+
*/
|
|
397
|
+
async function fallback(request) {
|
|
398
|
+
if (isNavRequest(request)) return navFallback(request);
|
|
399
|
+
if (NAV_MODE === "ssr" && isSsrClientNav(request)) return navFallback(request);
|
|
400
|
+
return new Response(null, { status: 502, statusText: "Bad Gateway" });
|
|
401
|
+
}
|
|
402
|
+
|
|
403
|
+
${inline503}
|
|
404
|
+
${safeResponse}
|
|
405
|
+
// --- Response Helpers ---
|
|
370
406
|
|
|
371
407
|
function markFromCache(response) {
|
|
372
408
|
swLog("markFromCache", "ENTER", response.url, 4);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetch-handler.js","sourceRoot":"","sources":["../../../../src/lib/generators/sw-sections/fetch-handler.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"fetch-handler.js","sourceRoot":"","sources":["../../../../src/lib/generators/sw-sections/fetch-handler.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,6 +20,7 @@ import { generateAuthStore } from "./file-generators/auth-store.js";
|
|
|
20
20
|
import { generateAuthAdapter } from "./file-generators/auth-adapter.js";
|
|
21
21
|
import { generateAuthState } from "./file-generators/auth-state.js";
|
|
22
22
|
import { generateSwGeneratorBuild } from "./file-generators/sw-generator-build.js";
|
|
23
|
+
import { generateSwBuildUtils } from "./file-generators/sw-build-utils.js";
|
|
23
24
|
import { generateGqlWrapper } from "./file-generators/gql-wrapper.js";
|
|
24
25
|
import { generateTypeDefinitions } from "./file-generators/type-definitions.js";
|
|
25
26
|
import { generateFrameworkAdapters } from "./file-generators/generate-framework-adapters.js";
|
|
@@ -61,6 +62,7 @@ export function generateFiles(ctx) {
|
|
|
61
62
|
const hasApiFeatures = f.tagInvalidation || f.auth || f.mutationQueue || f.graphql || f.push;
|
|
62
63
|
const bundleSteps = [
|
|
63
64
|
{ name: "sw-template", gen: () => generateSwTemplate(ctx), enabled: true },
|
|
65
|
+
{ name: "sw-build-utils", gen: () => generateSwBuildUtils(ctx), enabled: true },
|
|
64
66
|
{ name: "sw-generator", gen: () => generateSwGeneratorBuild(ctx), enabled: true },
|
|
65
67
|
{
|
|
66
68
|
name: "client-injector-bundle",
|
|
@@ -84,6 +86,7 @@ export function generateFiles(ctx) {
|
|
|
84
86
|
{ name: "api-config", gen: () => generateApiConfig(ctx), enabled: f.serverPush },
|
|
85
87
|
{ name: "sw-template", gen: () => generateSwTemplate(ctx), enabled: true },
|
|
86
88
|
{ name: "sw-injector", gen: () => generateSwInjector(ctx), enabled: true },
|
|
89
|
+
{ name: "sw-build-utils", gen: () => generateSwBuildUtils(ctx), enabled: true },
|
|
87
90
|
{
|
|
88
91
|
name: "client-injector",
|
|
89
92
|
gen: () => generateClientInjector(ctx),
|
|
@@ -181,11 +184,12 @@ export function generateFiles(ctx) {
|
|
|
181
184
|
name: "framework-adapters",
|
|
182
185
|
gen: () => generateFrameworkAdapters(ctx),
|
|
183
186
|
enabled: [
|
|
184
|
-
"react
|
|
187
|
+
"react",
|
|
185
188
|
"nextjs",
|
|
186
189
|
"remix",
|
|
187
190
|
"tanstack-start-react",
|
|
188
191
|
"astro",
|
|
192
|
+
"vike",
|
|
189
193
|
].includes(ctx.frameworkName),
|
|
190
194
|
},
|
|
191
195
|
];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"swoff-files-generator.js","sourceRoot":"","sources":["../../../src/lib/generators/swoff-files-generator.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"swoff-files-generator.js","sourceRoot":"","sources":["../../../src/lib/generators/swoff-files-generator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAGtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAC9E,OAAO,EAAE,4BAA4B,EAAE,MAAM,6CAA6C,CAAC;AAC3F,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAC5E,OAAO,EAAE,2BAA2B,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAC/F,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAC9E,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AAClF,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAC5E,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,wBAAwB,EAAE,MAAM,yCAAyC,CAAC;AACnF,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,uBAAuB,EAAE,MAAM,uCAAuC,CAAC;AAChF,OAAO,EAAE,yBAAyB,EAAE,MAAM,kDAAkD,CAAC;AAC7F,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAqB1D,SAAS,eAAe,CAAC,MAAmB;IAC1C,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC;IAC1C,MAAM,aAAa,GAAG,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC;IAC5D,MAAM,eAAe,GAAG,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAC,OAAO,IAAI,aAAa,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC;IACpH,MAAM,YAAY,GAAG,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,OAAO,IAAI,IAAI,CAAC;IAClE,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAC;IAC/C,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC;IAChD,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC;IACxC,MAAM,UAAU,GAAG,uBAAuB,CAAC,MAAM,CAAC,CAAC;IACnD,MAAM,cAAc,GAAG,2BAA2B,CAAC,MAAM,CAAC,CAAC;IAE3D,OAAO;QACL,YAAY;QACZ,eAAe;QACf,IAAI;QACJ,aAAa;QACb,cAAc;QACd,IAAI;QACJ,OAAO;QACP,GAAG;QACH,UAAU;QACV,MAAM,EAAE,IAAI,IAAI,aAAa,IAAI,IAAI;KACtC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,GAAqB;IACjD,MAAM,OAAO,GAAG,GAAG,CAAC,UAAU,CAAC;IAC/B,MAAM,CAAC,GAAG,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAEtC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,GAAG,CAAC,UAAU,GAAG,KAAK,CAAC;QACvB,MAAM,cAAc,GAAG,CAAC,CAAC,eAAe,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,aAAa,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,IAAI,CAAC;QAC7F,MAAM,WAAW,GAAW;YAC1B,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE;YAC1E,EAAE,IAAI,EAAE,gBAAgB,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,oBAAoB,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE;YAC/E,EAAE,IAAI,EAAE,cAAc,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,wBAAwB,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE;YACjF;gBACE,IAAI,EAAE,wBAAwB;gBAC9B,GAAG,EAAE,GAAG,EAAE,CAAC,4BAA4B,CAAC,GAAG,CAAC;gBAC5C,OAAO,EAAE,IAAI;aACd;YACD;gBACE,IAAI,EAAE,kBAAkB;gBACxB,GAAG,EAAE,GAAG,EAAE,CAAC,sBAAsB,CAAC,GAAG,CAAC;gBACtC,OAAO,EAAE,cAAc;aACxB;SACF,CAAC;QACF,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;YAC/B,IAAI,CAAC,IAAI,CAAC,OAAO;gBAAE,SAAS;YAC5B,IAAI,CAAC,GAAG,EAAE,CAAC;QACb,CAAC;QACD,OAAO,GAAG,CAAC,cAAc,CAAC;IAC5B,CAAC;IAED,MAAM,KAAK,GAAW;QACpB,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,UAAU,EAAE;QAChF,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE;QAC1E,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE;QAC1E,EAAE,IAAI,EAAE,gBAAgB,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,oBAAoB,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE;QAC/E;YACE,IAAI,EAAE,iBAAiB;YACvB,GAAG,EAAE,GAAG,EAAE,CAAC,sBAAsB,CAAC,GAAG,CAAC;YACtC,OAAO,EAAE,IAAI;SACd;QACD;YACE,IAAI,EAAE,cAAc;YACpB,GAAG,EAAE,GAAG,EAAE,CAAC,oBAAoB,CAAC,GAAG,CAAC;YACpC,OAAO,EAAE,CAAC,CAAC,YAAY;SACxB;QACD,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE;QACnE,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE;QAC/D,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;QACjE;YACE,IAAI,EAAE,YAAY;YAClB,GAAG,EAAE,GAAG,EAAE,CAAC,oBAAoB,CAAC,GAAG,CAAC;YACpC,OAAO,EAAE,CAAC,CAAC,eAAe;SAC3B;QACD;YACE,IAAI,EAAE,YAAY;YAClB,GAAG,EAAE,GAAG,EAAE,CAAC,wBAAwB,CAAC,GAAG,CAAC;YACxC,OAAO,EAAE,CAAC,CAAC,eAAe;SAC3B;QACD;YACE,IAAI,EAAE,kBAAkB;YACxB,GAAG,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC;YAC7B,OAAO,EAAE,CAAC,CAAC,eAAe;SAC3B;QACD;YACE,IAAI,EAAE,gBAAgB;YACtB,GAAG,EAAE,GAAG,EAAE,CAAC,qBAAqB,CAAC,GAAG,CAAC;YACrC,OAAO,EAAE,CAAC,CAAC,aAAa;SACzB;QACD;YACE,IAAI,EAAE,gBAAgB;YACtB,GAAG,EAAE,GAAG,EAAE,CAAC,qBAAqB,CAAC,GAAG,CAAC;YACrC,OAAO,EAAE,CAAC,CAAC,aAAa;SACzB;QACD;YACE,IAAI,EAAE,eAAe;YACrB,GAAG,EAAE,GAAG,EAAE,CAAC,sBAAsB,CAAC,GAAG,CAAC;YACtC,OAAO,EAAE,CAAC,CAAC,cAAc;SAC1B;QACD;YACE,IAAI,EAAE,cAAc;YACpB,GAAG,EAAE,GAAG,EAAE,CAAC,mBAAmB,CAAC,GAAG,CAAC;YACnC,OAAO,EAAE,CAAC,CAAC,IAAI;SAChB;QACD;YACE,IAAI,EAAE,YAAY;YAClB,GAAG,EAAE,GAAG,EAAE,CAAC,iBAAiB,CAAC,GAAG,CAAC;YACjC,OAAO,EAAE,CAAC,CAAC,IAAI;SAChB;QACD;YACE,IAAI,EAAE,YAAY;YAClB,GAAG,EAAE,GAAG,EAAE,CAAC,iBAAiB,CAAC,GAAG,CAAC;YACjC,OAAO,EAAE,CAAC,CAAC,IAAI;SAChB;QACD;YACE,IAAI,EAAE,YAAY;YAClB,GAAG,EAAE,GAAG,EAAE,CAAC,iBAAiB,CAAC,GAAG,CAAC;YACjC,OAAO,EAAE,CAAC,CAAC,IAAI;SAChB;QACD;YACE,IAAI,EAAE,cAAc;YACpB,GAAG,EAAE,GAAG,EAAE,CAAC,wBAAwB,CAAC,GAAG,CAAC;YACxC,OAAO,EAAE,IAAI;SACd;QACD;YACE,IAAI,EAAE,YAAY;YAClB,GAAG,EAAE,GAAG,EAAE,CAAC,uBAAuB,CAAC,GAAG,CAAC;YACvC,OAAO,EAAE,GAAG,CAAC,GAAG,KAAK,IAAI;SAC1B;QACD;YACE,IAAI,EAAE,YAAY;YAClB,GAAG,EAAE,GAAG,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC;YAClC,OAAO,EAAE,CAAC,CAAC,GAAG;SACf;QACD;YACE,IAAI,EAAE,eAAe;YACrB,GAAG,EAAE,GAAG,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC;YAClC,OAAO,EAAE,CAAC,CAAC,OAAO;SACnB;QACD;YACE,IAAI,EAAE,yBAAyB;YAC/B,GAAG,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC;YAC5B,OAAO,EAAE,CAAC,CAAC,IAAI;SAChB;QACD;YACE,IAAI,EAAE,oBAAoB;YAC1B,GAAG,EAAE,GAAG,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC;YAClC,OAAO,EAAE,CAAC,CAAC,UAAU;SACtB;QACD;YACE,IAAI,EAAE,oBAAoB;YAC1B,GAAG,EAAE,GAAG,EAAE,CAAC,yBAAyB,CAAC,GAAG,CAAC;YACzC,OAAO,EAAE;gBACP,OAAO;gBACP,QAAQ;gBACR,OAAO;gBACP,sBAAsB;gBACtB,OAAO;gBACP,MAAM;aACP,CAAC,QAAQ,CAAC,GAAG,CAAC,aAAa,CAAC;SAC9B;KACF,CAAC;IAEF,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,SAAS;QAC5B,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,CAAC;IAED,OAAO,GAAG,CAAC,cAAc,CAAC;AAC5B,CAAC;AAED,0BAA0B;AAC1B,IACE,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;IAC9B,aAAa,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,EAChD,CAAC;IACD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACnC,MAAM,MAAM,GAAG,CAAC,IAAY,EAAiB,EAAE;QAC7C,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;QACtC,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC3C,CAAC,CAAC;IAEF,MAAM,WAAW,GAAG,MAAM,CAAC,cAAc,CAAC,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IAC5D,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC;IAC5C,MAAM,UAAU,GACd,MAAM,CAAC,aAAa,CAAC,IAAI,IAAI,CAAC,WAAW,EAAE,mBAAmB,CAAC,CAAC;IAClE,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,MAAM,CAAC;IAEzC,eAAe,CAAC,WAAW,EAAE,UAAU,CAAC;SACrC,IAAI,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;QACnB,MAAM,GAAG,GAAG,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;QAC5C,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,KAAK,EAAE,SAAS,IAAI,OAAO,CAAC,CAAC;QACvE,MAAM,cAAc,GAAa,EAAE,CAAC;QAEpC,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,IAAI,YAAY,CAAC;QAChD,MAAM,GAAG,GAAqB;YAC5B,MAAM;YACN,WAAW;YACX,QAAQ;YACR,GAAG;YACH,cAAc;YACd,aAAa,EAAE,MAAM;YACrB,UAAU,EAAE,UAAU,CAAC,MAAM,CAAC;YAC9B,KAAK;SACN,CAAC;QAEF,OAAO,CAAC,GAAG,CAAC,2BAA2B,QAAQ,MAAM,CAAC,CAAC;QAEvD,aAAa,CAAC,GAAG,CAAC,CAAC;QAEnB,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;QAChC,cAAc,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC;QAC3D,OAAO,CAAC,GAAG,CAAC,YAAY,cAAc,CAAC,MAAM,QAAQ,CAAC,CAAC;QAEvD,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YACjC,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;YAC3C,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;YACpC,OAAO,CAAC,GAAG,CAAC,mBAAmB,QAAQ,EAAE,CAAC,CAAC;YAC3C,OAAO,CAAC,GAAG,CAAC,wDAAwD,CAAC,CAAC;YACtE,IAAI,QAAQ,KAAK,QAAQ,IAAI,QAAQ,KAAK,QAAQ,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;gBAC5E,OAAO,CAAC,GAAG,CAAC,6DAA6D,CAAC,CAAC;gBAC3E,OAAO,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAC;gBACjE,OAAO,CAAC,GAAG,CAAC,qDAAqD,CAAC,CAAC;YACrE,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,oEAAoE,CAAC,CAAC;YACpF,CAAC;YACD,OAAO,CAAC,GAAG,CACT,sEAAsE,CACvE,CAAC;YACF,OAAO,CAAC,GAAG,CACT,4EAA4E,CAC7E,CAAC;QACJ,CAAC;IACH,CAAC,CAAC;SACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;QACb,OAAO,CAAC,KAAK,CACX,wBAAwB,EACxB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CACjD,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACP,CAAC"}
|