@readme/cli 0.0.27 → 0.0.30
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/package.json +5 -5
- package/src/cli.js +3 -3
- package/src/commands/import-oas.test.js +277 -0
- package/src/commands/import.classify.test.js +172 -0
- package/src/commands/import.js +2848 -443
- package/src/commands/import.landing.test.js +217 -0
- package/src/commands/import.slug-planner.test.js +86 -0
- package/src/commands/import.staging.test.js +158 -0
- package/src/commands/import.test.js +382 -0
- package/src/commands/oas-sync.js +362 -92
- package/src/prompts/index.js +101 -13
- package/src/utils/lint.js +2 -2
- package/src/utils/llms.js +224 -0
- package/src/utils/llms.test.js +302 -0
- package/src/utils/reporter.js +2 -1
- package/src/utils/slug-for-entry.js +16 -0
- package/src/utils/url-segs.js +124 -0
- package/src/utils/url-segs.test.js +239 -0
- package/src/validators/components.js +11 -7
- package/src/validators/duplicates.js +8 -8
- package/src/validators/frontmatter.js +11 -0
- package/src/validators/links.js +2 -8
- package/src/validators/oas-reference.js +13 -38
- package/src/validators/ordering.js +169 -83
- package/vendor/TOOLS.md +1 -1
- package/src/dev/.next/app-build-manifest.json +0 -20
- package/src/dev/.next/build-manifest.json +0 -31
- package/src/dev/.next/cache/.rscinfo +0 -1
- package/src/dev/.next/cache/next-devtools-config.json +0 -1
- package/src/dev/.next/cache/webpack/client-development/0.pack.gz +0 -0
- package/src/dev/.next/cache/webpack/client-development/1.pack.gz +0 -0
- package/src/dev/.next/cache/webpack/client-development/10.pack.gz +0 -0
- package/src/dev/.next/cache/webpack/client-development/11.pack.gz +0 -0
- package/src/dev/.next/cache/webpack/client-development/2.pack.gz +0 -0
- package/src/dev/.next/cache/webpack/client-development/3.pack.gz +0 -0
- package/src/dev/.next/cache/webpack/client-development/3.pack.gz_ +0 -0
- package/src/dev/.next/cache/webpack/client-development/4.pack.gz +0 -0
- package/src/dev/.next/cache/webpack/client-development/5.pack.gz +0 -0
- package/src/dev/.next/cache/webpack/client-development/5.pack.gz_ +0 -0
- package/src/dev/.next/cache/webpack/client-development/6.pack.gz +0 -0
- package/src/dev/.next/cache/webpack/client-development/7.pack.gz +0 -0
- package/src/dev/.next/cache/webpack/client-development/7.pack.gz_ +0 -0
- package/src/dev/.next/cache/webpack/client-development/8.pack.gz +0 -0
- package/src/dev/.next/cache/webpack/client-development/9.pack.gz +0 -0
- package/src/dev/.next/cache/webpack/client-development/index.pack.gz.old +0 -0
- package/src/dev/.next/cache/webpack/client-development-fallback/0.pack.gz +0 -0
- package/src/dev/.next/cache/webpack/client-development-fallback/1.pack.gz +0 -0
- package/src/dev/.next/cache/webpack/client-development-fallback/index.pack.gz +0 -0
- package/src/dev/.next/cache/webpack/client-development-fallback/index.pack.gz.old +0 -0
- package/src/dev/.next/cache/webpack/edge-server-development/0.pack.gz +0 -0
- package/src/dev/.next/cache/webpack/edge-server-development/1.pack.gz +0 -0
- package/src/dev/.next/cache/webpack/edge-server-development/index.pack.gz +0 -0
- package/src/dev/.next/cache/webpack/edge-server-development/index.pack.gz.old +0 -0
- package/src/dev/.next/cache/webpack/server-development/0.pack.gz +0 -0
- package/src/dev/.next/cache/webpack/server-development/1.pack.gz +0 -0
- package/src/dev/.next/cache/webpack/server-development/10.pack.gz +0 -0
- package/src/dev/.next/cache/webpack/server-development/11.pack.gz +0 -0
- package/src/dev/.next/cache/webpack/server-development/12.pack.gz +0 -0
- package/src/dev/.next/cache/webpack/server-development/13.pack.gz +0 -0
- package/src/dev/.next/cache/webpack/server-development/14.pack.gz +0 -0
- package/src/dev/.next/cache/webpack/server-development/15.pack.gz +0 -0
- package/src/dev/.next/cache/webpack/server-development/2.pack.gz +0 -0
- package/src/dev/.next/cache/webpack/server-development/2.pack.gz_ +0 -0
- package/src/dev/.next/cache/webpack/server-development/3.pack.gz +0 -0
- package/src/dev/.next/cache/webpack/server-development/3.pack.gz_ +0 -0
- package/src/dev/.next/cache/webpack/server-development/4.pack.gz +0 -0
- package/src/dev/.next/cache/webpack/server-development/5.pack.gz +0 -0
- package/src/dev/.next/cache/webpack/server-development/6.pack.gz +0 -0
- package/src/dev/.next/cache/webpack/server-development/6.pack.gz_ +0 -0
- package/src/dev/.next/cache/webpack/server-development/7.pack.gz +0 -0
- package/src/dev/.next/cache/webpack/server-development/7.pack.gz_ +0 -0
- package/src/dev/.next/cache/webpack/server-development/8.pack.gz +0 -0
- package/src/dev/.next/cache/webpack/server-development/9.pack.gz +0 -0
- package/src/dev/.next/cache/webpack/server-development/9.pack.gz_ +0 -0
- package/src/dev/.next/cache/webpack/server-development/index.pack.gz +0 -0
- package/src/dev/.next/cache/webpack/server-development/index.pack.gz.old +0 -0
- package/src/dev/.next/package.json +0 -1
- package/src/dev/.next/prerender-manifest.json +0 -11
- package/src/dev/.next/react-loadable-manifest.json +0 -1
- package/src/dev/.next/routes-manifest.json +0 -1
- package/src/dev/.next/server/app/[...slug]/page.js +0 -360
- package/src/dev/.next/server/app/[...slug]/page_client-reference-manifest.js +0 -1
- package/src/dev/.next/server/app/page.js +0 -349
- package/src/dev/.next/server/app/page_client-reference-manifest.js +0 -1
- package/src/dev/.next/server/app-paths-manifest.json +0 -3
- package/src/dev/.next/server/edge-runtime-webpack.js +0 -1151
- package/src/dev/.next/server/interception-route-rewrite-manifest.js +0 -1
- package/src/dev/.next/server/middleware-build-manifest.js +0 -33
- package/src/dev/.next/server/middleware-manifest.json +0 -32
- package/src/dev/.next/server/middleware-react-loadable-manifest.js +0 -1
- package/src/dev/.next/server/middleware.js +0 -1113
- package/src/dev/.next/server/next-font-manifest.js +0 -1
- package/src/dev/.next/server/next-font-manifest.json +0 -1
- package/src/dev/.next/server/pages-manifest.json +0 -5
- package/src/dev/.next/server/server-reference-manifest.js +0 -1
- package/src/dev/.next/server/server-reference-manifest.json +0 -5
- package/src/dev/.next/server/static/webpack/633457081244afec._.hot-update.json +0 -1
- package/src/dev/.next/server/vendor-chunks/@readme.js +0 -25
- package/src/dev/.next/server/vendor-chunks/@swc.js +0 -55
- package/src/dev/.next/server/vendor-chunks/next.js +0 -3659
- package/src/dev/.next/server/webpack-runtime.js +0 -209
- package/src/dev/.next/static/chunks/app/[...slug]/loading.js +0 -28
- package/src/dev/.next/static/chunks/app/[...slug]/page.js +0 -28
- package/src/dev/.next/static/chunks/app/layout.js +0 -171
- package/src/dev/.next/static/chunks/app/page.js +0 -28
- package/src/dev/.next/static/chunks/app-pages-internals.js +0 -182
- package/src/dev/.next/static/chunks/main-app.js +0 -1882
- package/src/dev/.next/static/chunks/polyfills.js +0 -1
- package/src/dev/.next/static/chunks/webpack.js +0 -1393
- package/src/dev/.next/static/css/app/layout.css +0 -559
- package/src/dev/.next/static/development/_buildManifest.js +0 -1
- package/src/dev/.next/static/development/_ssgManifest.js +0 -1
- package/src/dev/.next/static/webpack/633457081244afec._.hot-update.json +0 -1
- package/src/dev/.next/static/webpack/ec52a3fce0f78db0.webpack.hot-update.json +0 -1
- package/src/dev/.next/static/webpack/webpack.ec52a3fce0f78db0.hot-update.js +0 -12
- package/src/dev/.next/trace +0 -21
- package/src/dev/.next/types/app/[...slug]/page.ts +0 -84
- package/src/dev/.next/types/app/layout.ts +0 -84
- package/src/dev/.next/types/app/page.ts +0 -84
- package/src/dev/.next/types/cache-life.d.ts +0 -141
- package/src/dev/.next/types/package.json +0 -1
- package/src/dev/.next/types/routes.d.ts +0 -55
- package/src/validators/numbering.js +0 -134
|
@@ -3,8 +3,13 @@ import path from 'node:path';
|
|
|
3
3
|
|
|
4
4
|
export const name = 'ordering';
|
|
5
5
|
|
|
6
|
-
//
|
|
7
|
-
const
|
|
6
|
+
// Top-level content directories that use _order.yaml.
|
|
7
|
+
const CONTENT_DIRS = ['docs', 'reference', 'recipes', 'custom_pages'];
|
|
8
|
+
|
|
9
|
+
// Of those, the dirs that must list every page/folder. reference ordering is
|
|
10
|
+
// OAS-managed, so we never flag pages "missing from" a reference _order.yaml —
|
|
11
|
+
// but stale entries are flagged everywhere.
|
|
12
|
+
const REQUIRE_ORDER = new Set(['docs', 'recipes', 'custom_pages']);
|
|
8
13
|
|
|
9
14
|
// Values that YAML interprets as non-strings and need quoting in _order.yaml.
|
|
10
15
|
const YAML_UNSAFE = /^(?:\d+\.?\d*|true|false|yes|no|on|off|null|~)$/i;
|
|
@@ -12,110 +17,191 @@ function yamlSafeSlug(slug) {
|
|
|
12
17
|
return YAML_UNSAFE.test(slug) ? `"${slug}"` : slug;
|
|
13
18
|
}
|
|
14
19
|
|
|
15
|
-
|
|
16
|
-
|
|
20
|
+
// Returns the slug a "- entry" line refers to, or null for any other line.
|
|
21
|
+
// Handles quoted slugs and trailing inline comments (`- overview # comment`).
|
|
22
|
+
function parseOrderEntry(line) {
|
|
23
|
+
const trimmed = line.trim();
|
|
24
|
+
if (!trimmed.startsWith('- ')) return null;
|
|
25
|
+
const value = trimmed.slice(2).trim();
|
|
26
|
+
const quoted = value.match(/^(['"])(.*)\1\s*(?:#.*)?$/);
|
|
27
|
+
if (quoted) return quoted[2];
|
|
28
|
+
const slug = value.replace(/(?:^|\s)#.*$/, '').trim();
|
|
29
|
+
return slug === '' ? null : slug;
|
|
17
30
|
}
|
|
18
31
|
|
|
19
32
|
function parseOrderYaml(content) {
|
|
20
33
|
return content
|
|
21
34
|
.split('\n')
|
|
22
|
-
.map(
|
|
23
|
-
.filter((
|
|
24
|
-
|
|
35
|
+
.map(parseOrderEntry)
|
|
36
|
+
.filter((entry) => entry !== null);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
function isIndex(name) {
|
|
40
|
+
return name === 'index' || name === 'index.md' || name === 'index.mdx';
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
/**
|
|
44
|
+
* Walk a content directory tree once. For every directory, capture the on-disk
|
|
45
|
+
* slug set (child pages + child folders) and its _order.yaml entries (or null
|
|
46
|
+
* when absent), so the caller can diff the two in a single pass.
|
|
47
|
+
*/
|
|
48
|
+
function collectDirs(gitRoot, topDir) {
|
|
49
|
+
const base = path.join(gitRoot, topDir);
|
|
50
|
+
if (!fs.existsSync(base)) return [];
|
|
51
|
+
|
|
52
|
+
const dirs = [];
|
|
53
|
+
const stack = [base];
|
|
54
|
+
while (stack.length) {
|
|
55
|
+
const cur = stack.pop();
|
|
56
|
+
const onDisk = new Set();
|
|
57
|
+
let orderEntries = null;
|
|
58
|
+
|
|
59
|
+
for (const entry of fs.readdirSync(cur, { withFileTypes: true })) {
|
|
60
|
+
if (entry.isDirectory()) {
|
|
61
|
+
onDisk.add(entry.name);
|
|
62
|
+
stack.push(path.join(cur, entry.name));
|
|
63
|
+
} else if (entry.name === '_order.yaml') {
|
|
64
|
+
orderEntries = parseOrderYaml(fs.readFileSync(path.join(cur, entry.name), 'utf-8'));
|
|
65
|
+
} else if (/\.(md|mdx)$/.test(entry.name) && !isIndex(entry.name)) {
|
|
66
|
+
onDisk.add(entry.name.replace(/\.(md|mdx)$/, ''));
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
dirs.push({ dir: cur, onDisk, orderEntries });
|
|
71
|
+
}
|
|
72
|
+
return dirs;
|
|
25
73
|
}
|
|
26
74
|
|
|
27
75
|
/**
|
|
28
|
-
*
|
|
76
|
+
* Validate every _order.yaml against the files and folders next to it:
|
|
77
|
+
* - on disk but missing from _order.yaml → "Missing from _order.yaml" (required dirs only)
|
|
78
|
+
* - in _order.yaml but missing on disk → "Stale entry"
|
|
79
|
+
* - an index entry that shouldn't be listed → "Invalid entry"
|
|
29
80
|
*/
|
|
30
81
|
export function validateAll(files, gitRoot, { fix } = {}) {
|
|
31
82
|
const results = [];
|
|
32
83
|
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
const
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
84
|
+
for (const topDir of CONTENT_DIRS) {
|
|
85
|
+
const requireOrder = REQUIRE_ORDER.has(topDir);
|
|
86
|
+
|
|
87
|
+
for (const { dir, onDisk, orderEntries } of collectDirs(gitRoot, topDir)) {
|
|
88
|
+
const orderPath = path.join(dir, '_order.yaml');
|
|
89
|
+
const relOrder = path.relative(gitRoot, orderPath);
|
|
90
|
+
|
|
91
|
+
// No _order.yaml at all: only required dirs need one.
|
|
92
|
+
if (orderEntries === null) {
|
|
93
|
+
if (requireOrder && onDisk.size > 0) {
|
|
94
|
+
const missing = [...onDisk].sort();
|
|
95
|
+
results.push({
|
|
96
|
+
file: relOrder,
|
|
97
|
+
rule: name,
|
|
98
|
+
severity: 'warning',
|
|
99
|
+
fixable: true,
|
|
100
|
+
message: `Missing order: _order.yaml not found (${missing.length} ${missing.length === 1 ? 'entry needs' : 'entries need'} ordering)`,
|
|
101
|
+
_fixAdd: { orderPath, missing },
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
continue;
|
|
105
|
+
}
|
|
54
106
|
|
|
55
|
-
|
|
56
|
-
|
|
107
|
+
const ordered = new Set(orderEntries);
|
|
108
|
+
|
|
109
|
+
// On disk but not ordered.
|
|
110
|
+
if (requireOrder) {
|
|
111
|
+
const missing = [...onDisk].filter((slug) => !ordered.has(slug)).sort();
|
|
112
|
+
if (missing.length > 0) {
|
|
113
|
+
results.push({
|
|
114
|
+
file: relOrder,
|
|
115
|
+
rule: name,
|
|
116
|
+
severity: 'warning',
|
|
117
|
+
fixable: true,
|
|
118
|
+
message: `Missing from _order.yaml: ${missing.join(', ')}`,
|
|
119
|
+
_fixAdd: { orderPath, missing },
|
|
120
|
+
});
|
|
121
|
+
}
|
|
122
|
+
}
|
|
57
123
|
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
124
|
+
// Ordered but not on disk (or an index entry that shouldn't be listed).
|
|
125
|
+
for (const entry of orderEntries) {
|
|
126
|
+
if (isIndex(entry)) {
|
|
127
|
+
results.push({
|
|
128
|
+
file: relOrder,
|
|
129
|
+
rule: name,
|
|
130
|
+
severity: 'warning',
|
|
131
|
+
fixable: true,
|
|
132
|
+
message: `Invalid entry: "${entry}" should not be listed in _order.yaml`,
|
|
133
|
+
_fixRemove: { orderPath, entry },
|
|
134
|
+
});
|
|
135
|
+
} else if (!onDisk.has(entry)) {
|
|
136
|
+
results.push({
|
|
137
|
+
file: relOrder,
|
|
138
|
+
rule: name,
|
|
139
|
+
severity: 'warning',
|
|
140
|
+
fixable: true,
|
|
141
|
+
message: `Stale entry: "${entry}" in _order.yaml has no matching file or folder`,
|
|
142
|
+
_fixRemove: { orderPath, entry },
|
|
143
|
+
});
|
|
144
|
+
}
|
|
145
|
+
}
|
|
66
146
|
}
|
|
147
|
+
}
|
|
67
148
|
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
149
|
+
if (!fix) return strip(results);
|
|
150
|
+
|
|
151
|
+
// Additions: append missing slugs to the _order.yaml.
|
|
152
|
+
for (const r of results) {
|
|
153
|
+
if (!r._fixAdd) continue;
|
|
154
|
+
const { orderPath, missing } = r._fixAdd;
|
|
155
|
+
const newEntries = missing.map((slug) => `- ${yamlSafeSlug(slug)}`).join('\n');
|
|
156
|
+
|
|
157
|
+
if (fs.existsSync(orderPath)) {
|
|
158
|
+
const existing = fs.readFileSync(orderPath, 'utf-8');
|
|
159
|
+
const sep = existing.endsWith('\n') ? '' : '\n';
|
|
160
|
+
fs.writeFileSync(orderPath, `${existing}${sep}${newEntries}\n`);
|
|
161
|
+
} else {
|
|
162
|
+
fs.mkdirSync(path.dirname(orderPath), { recursive: true });
|
|
163
|
+
fs.writeFileSync(orderPath, `${newEntries}\n`);
|
|
80
164
|
}
|
|
165
|
+
r.message += ' (fixed)';
|
|
166
|
+
}
|
|
81
167
|
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
168
|
+
// Removals: group stale/index entries by order file, then rewrite each once.
|
|
169
|
+
const removalsByPath = new Map();
|
|
170
|
+
for (const r of results) {
|
|
171
|
+
if (!r._fixRemove) continue;
|
|
172
|
+
const { orderPath, entry } = r._fixRemove;
|
|
173
|
+
if (!removalsByPath.has(orderPath)) removalsByPath.set(orderPath, new Set());
|
|
174
|
+
removalsByPath.get(orderPath).add(entry);
|
|
175
|
+
}
|
|
176
|
+
for (const [orderPath, toRemove] of removalsByPath) {
|
|
177
|
+
if (!fs.existsSync(orderPath)) continue;
|
|
178
|
+
// Drop only the targeted entry lines, keeping comments, blank lines, and
|
|
179
|
+
// untouched entries exactly as written.
|
|
180
|
+
const kept = fs
|
|
181
|
+
.readFileSync(orderPath, 'utf-8')
|
|
182
|
+
.split('\n')
|
|
183
|
+
.filter((line) => {
|
|
184
|
+
const entry = parseOrderEntry(line);
|
|
185
|
+
return entry === null || !toRemove.has(entry);
|
|
94
186
|
});
|
|
187
|
+
if (kept.some((line) => parseOrderEntry(line) !== null)) {
|
|
188
|
+
fs.writeFileSync(orderPath, kept.join('\n'));
|
|
189
|
+
} else {
|
|
190
|
+
fs.unlinkSync(orderPath);
|
|
95
191
|
}
|
|
96
192
|
}
|
|
193
|
+
for (const r of results) {
|
|
194
|
+
if (r._fixRemove) r.message += ' (fixed)';
|
|
195
|
+
}
|
|
97
196
|
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
for (const r of results) {
|
|
101
|
-
if (!r._fix) continue;
|
|
102
|
-
const { orderPath, missing } = r._fix;
|
|
103
|
-
const newEntries = missing.map((slug) => `- ${yamlSafeSlug(slug)}`).join('\n');
|
|
104
|
-
|
|
105
|
-
if (fs.existsSync(orderPath)) {
|
|
106
|
-
const existing = fs.readFileSync(orderPath, 'utf-8');
|
|
107
|
-
const sep = existing.endsWith('\n') ? '' : '\n';
|
|
108
|
-
fs.writeFileSync(orderPath, `${existing}${sep}${newEntries}\n`);
|
|
109
|
-
} else {
|
|
110
|
-
fs.mkdirSync(path.dirname(orderPath), { recursive: true });
|
|
111
|
-
fs.writeFileSync(orderPath, `${newEntries}\n`);
|
|
112
|
-
}
|
|
197
|
+
return strip(results);
|
|
198
|
+
}
|
|
113
199
|
|
|
114
|
-
|
|
115
|
-
|
|
200
|
+
// Remove internal fix descriptors before returning results to the reporter.
|
|
201
|
+
function strip(results) {
|
|
202
|
+
for (const r of results) {
|
|
203
|
+
delete r._fixAdd;
|
|
204
|
+
delete r._fixRemove;
|
|
116
205
|
}
|
|
117
|
-
|
|
118
|
-
// Strip internal _fix data before returning.
|
|
119
|
-
for (const r of results) delete r._fix;
|
|
120
206
|
return results;
|
|
121
207
|
}
|
package/vendor/TOOLS.md
CHANGED
|
@@ -4,7 +4,7 @@ The ReadMe CLI (`npx @readme/cli`) has several commands that can help fix issues
|
|
|
4
4
|
|
|
5
5
|
## `npx @readme/cli lint --fix`
|
|
6
6
|
|
|
7
|
-
Automatically fixes common linting issues: ordering problems, frontmatter cleanup,
|
|
7
|
+
Automatically fixes common linting issues: ordering problems, frontmatter cleanup, etc. Always try this first.
|
|
8
8
|
|
|
9
9
|
## `npx @readme/cli oas:sync`
|
|
10
10
|
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"pages": {
|
|
3
|
-
"/layout": [
|
|
4
|
-
"static/chunks/webpack.js",
|
|
5
|
-
"static/chunks/main-app.js",
|
|
6
|
-
"static/css/app/layout.css",
|
|
7
|
-
"static/chunks/app/layout.js"
|
|
8
|
-
],
|
|
9
|
-
"/[...slug]/loading": [
|
|
10
|
-
"static/chunks/webpack.js",
|
|
11
|
-
"static/chunks/main-app.js",
|
|
12
|
-
"static/chunks/app/[...slug]/loading.js"
|
|
13
|
-
],
|
|
14
|
-
"/[...slug]/page": [
|
|
15
|
-
"static/chunks/webpack.js",
|
|
16
|
-
"static/chunks/main-app.js",
|
|
17
|
-
"static/chunks/app/[...slug]/page.js"
|
|
18
|
-
]
|
|
19
|
-
}
|
|
20
|
-
}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"polyfillFiles": [
|
|
3
|
-
"static/chunks/polyfills.js"
|
|
4
|
-
],
|
|
5
|
-
"devFiles": [
|
|
6
|
-
"static/chunks/react-refresh.js"
|
|
7
|
-
],
|
|
8
|
-
"ampDevFiles": [],
|
|
9
|
-
"lowPriorityFiles": [
|
|
10
|
-
"static/development/_buildManifest.js",
|
|
11
|
-
"static/development/_ssgManifest.js"
|
|
12
|
-
],
|
|
13
|
-
"rootMainFiles": [
|
|
14
|
-
"static/chunks/webpack.js",
|
|
15
|
-
"static/chunks/main-app.js"
|
|
16
|
-
],
|
|
17
|
-
"rootMainFilesTree": {},
|
|
18
|
-
"pages": {
|
|
19
|
-
"/_app": [
|
|
20
|
-
"static/chunks/webpack.js",
|
|
21
|
-
"static/chunks/main.js",
|
|
22
|
-
"static/chunks/pages/_app.js"
|
|
23
|
-
],
|
|
24
|
-
"/_error": [
|
|
25
|
-
"static/chunks/webpack.js",
|
|
26
|
-
"static/chunks/main.js",
|
|
27
|
-
"static/chunks/pages/_error.js"
|
|
28
|
-
]
|
|
29
|
-
},
|
|
30
|
-
"ampFirstPages": []
|
|
31
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"encryption.key":"3SIKRvTdjH2KvDXOUMwtVkaVmj4v5oCsYq33R2HYXtM=","encryption.expire_at":1772814750891}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{}
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"type": "commonjs"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 4,
|
|
3
|
-
"routes": {},
|
|
4
|
-
"dynamicRoutes": {},
|
|
5
|
-
"notFoundRoutes": [],
|
|
6
|
-
"preview": {
|
|
7
|
-
"previewModeId": "b628b03ee18bb42bb63fcc51ca49946f",
|
|
8
|
-
"previewModeSigningKey": "f82f45cc5833fe189f9cc960b8dd1be2c6c51a3c05cf345f3497ced03b8c7b0d",
|
|
9
|
-
"previewModeEncryptionKey": "ab192619b9dd28eb198eda117db9c62df8ca0dba79469500b34cdcdf2b290da3"
|
|
10
|
-
}
|
|
11
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"caseSensitive":false,"basePath":"","rewrites":{"beforeFiles":[],"afterFiles":[],"fallback":[]},"redirects":[{"source":"/:path+/","destination":"/:path+","permanent":true,"internal":true,"regex":"^(?:\\/((?:[^\\/]+?)(?:\\/(?:[^\\/]+?))*))\\/$"}],"headers":[]}
|