From e3d4f10a142991cf1bc64824016bdae3efa0f6c5 Mon Sep 17 00:00:00 2001 From: Puru Vijay Date: Mon, 19 Jun 2023 01:24:31 +0530 Subject: [PATCH 01/47] Push --- .../docs/20-core-concepts/10-routing.md | 16 +- .../docs/20-core-concepts/20-load.md | 12 +- .../docs/20-core-concepts/30-form-actions.md | 12 +- .../20-core-concepts/50-state-management.md | 6 +- .../25-build-and-deploy/90-adapter-vercel.md | 2 +- .../docs/30-advanced/10-advanced-routing.md | 2 +- documentation/docs/30-advanced/25-errors.md | 2 +- .../docs/30-advanced/65-snapshots.md | 2 +- .../40-best-practices/10-accessibility.md | 2 +- pnpm-lock.yaml | 51 +- sites/kit.svelte.dev/.gitignore | 2 +- sites/kit.svelte.dev/package.json | 4 +- sites/kit.svelte.dev/scripts/types/index.js | 15 +- sites/kit.svelte.dev/src/constants.js | 6 + .../src/lib/docs/Contents.svelte | 158 ----- .../src/lib/docs/server/index.js | 628 ------------------ .../src/lib/docs/server/index.spec.js | 228 ------- .../src/lib/docs/server/markdown.js | 187 ------ .../src/lib/docs/server/render.js | 136 ---- .../src/lib/docs/server/types.d.ts | 13 - .../src/lib/server/docs/index.js | 128 ++++ .../src/lib/server/docs/types.d.ts | 23 + .../src/lib/server/twoslash-banner.js | 65 ++ sites/kit.svelte.dev/src/routes/+layout.js | 1 - .../src/routes/+layout.server.js | 23 + .../kit.svelte.dev/src/routes/+layout.svelte | 91 ++- .../src/routes/content.json/content.server.js | 16 +- .../src/routes/docs/+layout.server.js | 34 +- .../src/routes/docs/+layout.svelte | 24 +- sites/kit.svelte.dev/src/routes/docs/+page.js | 2 - .../src/routes/docs/[slug]/+page.server.js | 20 +- .../src/routes/docs/[slug]/+page.svelte | 6 +- .../src/routes/docs/[slug]/OnThisPage.svelte | 137 ---- .../src/routes/faq/+page.server.js | 13 - .../src/routes/faq/+page.svelte | 49 -- .../src/routes/home/Deployment.svelte | 20 +- .../src/routes/nav.json/+server.js | 28 + sites/kit.svelte.dev/tsconfig.json | 7 +- 38 files changed, 409 insertions(+), 1762 deletions(-) create mode 100644 sites/kit.svelte.dev/src/constants.js delete mode 100644 sites/kit.svelte.dev/src/lib/docs/Contents.svelte delete mode 100644 sites/kit.svelte.dev/src/lib/docs/server/index.js delete mode 100644 sites/kit.svelte.dev/src/lib/docs/server/index.spec.js delete mode 100644 sites/kit.svelte.dev/src/lib/docs/server/markdown.js delete mode 100644 sites/kit.svelte.dev/src/lib/docs/server/render.js delete mode 100644 sites/kit.svelte.dev/src/lib/docs/server/types.d.ts create mode 100644 sites/kit.svelte.dev/src/lib/server/docs/index.js create mode 100644 sites/kit.svelte.dev/src/lib/server/docs/types.d.ts create mode 100644 sites/kit.svelte.dev/src/lib/server/twoslash-banner.js delete mode 100644 sites/kit.svelte.dev/src/routes/+layout.js create mode 100644 sites/kit.svelte.dev/src/routes/+layout.server.js delete mode 100644 sites/kit.svelte.dev/src/routes/docs/[slug]/OnThisPage.svelte delete mode 100644 sites/kit.svelte.dev/src/routes/faq/+page.server.js delete mode 100644 sites/kit.svelte.dev/src/routes/faq/+page.svelte create mode 100644 sites/kit.svelte.dev/src/routes/nav.json/+server.js diff --git a/documentation/docs/20-core-concepts/10-routing.md b/documentation/docs/20-core-concepts/10-routing.md index 4f10d26c36f0..babd94691c68 100644 --- a/documentation/docs/20-core-concepts/10-routing.md +++ b/documentation/docs/20-core-concepts/10-routing.md @@ -19,20 +19,20 @@ Each route directory contains one or more _route files_, which can be identified A `+page.svelte` component defines a page of your app. By default, pages are rendered both on the server ([SSR](glossary#ssr)) for the initial request and in the browser ([CSR](glossary#csr)) for subsequent navigation. ```svelte -/// file: src/routes/+page.svelte +

Hello and welcome to my site!

About my site ``` ```svelte -/// file: src/routes/about/+page.svelte +

About this site

TODO...

Home ``` ```svelte -/// file: src/routes/blog/[slug]/+page.svelte + @@ -188,7 +188,7 @@ Layouts can be _nested_. Suppose we don't just have a single `/settings` page, b We can create a layout that only applies to pages below `/settings` (while inheriting the root layout with the top-level nav): ```svelte -/// file: src/routes/settings/+layout.svelte + @@ -330,7 +330,7 @@ export async function load({ parent }) { ``` ```svelte -/// file: src/routes/abc/+page.svelte + diff --git a/documentation/docs/30-advanced/65-snapshots.md b/documentation/docs/30-advanced/65-snapshots.md index fff0a2e372a0..2ea91be8b357 100644 --- a/documentation/docs/30-advanced/65-snapshots.md +++ b/documentation/docs/30-advanced/65-snapshots.md @@ -9,7 +9,7 @@ For example, if the user fills out a form but clicks a link before submitting, t To do this, export a `snapshot` object with `capture` and `restore` methods from a `+page.svelte` or `+layout.svelte`: ```svelte -/// file: +page.svelte + - - - - diff --git a/sites/kit.svelte.dev/src/lib/docs/server/index.js b/sites/kit.svelte.dev/src/lib/docs/server/index.js deleted file mode 100644 index cb6f23129aea..000000000000 --- a/sites/kit.svelte.dev/src/lib/docs/server/index.js +++ /dev/null @@ -1,628 +0,0 @@ -import * as fs from 'fs'; -import * as path from 'path'; -import { renderCodeToHTML, runTwoSlash, createShikiHighlighter } from 'shiki-twoslash'; -import PrismJS from 'prismjs'; -import 'prismjs/components/prism-bash.js'; -import 'prismjs/components/prism-diff.js'; -import 'prismjs/components/prism-typescript.js'; -import 'prism-svelte'; -import { escape, extract_frontmatter, transform } from './markdown.js'; -import { modules } from './type-info.js'; -import { replace_placeholders } from './render.js'; -import { parse_route_id } from '../../../../../../packages/kit/src/utils/routing.js'; -import ts from 'typescript'; -import MagicString from 'magic-string'; -import { fileURLToPath } from 'url'; -import { createHash } from 'crypto'; - -const snippet_cache = fileURLToPath(new URL('../../../../.snippets', import.meta.url)); -if (!fs.existsSync(snippet_cache)) { - fs.mkdirSync(snippet_cache, { recursive: true }); -} - -const languages = { - bash: 'bash', - env: 'bash', - html: 'markup', - svelte: 'svelte', - js: 'javascript', - css: 'css', - diff: 'diff', - ts: 'typescript', - '': '' -}; - -const base = '../../documentation'; - -const type_regex = new RegExp( - `(import\\('@sveltejs\\/kit'\\)\\.)?\\b(${modules - .flatMap((module) => module.types) - .map((type) => type.name) - .join('|')})\\b`, - 'g' -); - -const type_links = new Map(); - -const slugs = { - '@sveltejs/kit': 'public-types' -}; - -modules.forEach((module) => { - const slug = slugs[module.name] || slugify(module.name); - - module.types.forEach((type) => { - const link = `/docs/types#${slug}-${slugify(type.name)}`; - type_links.set(type.name, link); - }); -}); - -/** @param {string} html */ -function replace_blank_lines(html) { - // preserve blank lines in output (maybe there's a more correct way to do this?) - return html.replaceAll(/
( )?<\/div>/g, '
\n
'); -} - -function dynamic_extensions(text) { - if (text === 'svelte.config.js') return text; - - return text.replace(/^(\S+)\.(js|ts)$/, (match, $1) => { - if (match.endsWith('.d.ts')) return match; - if ($1 === 'svelte.config') return match; - return `${$1}.js.ts`; - }); -} - -/** - * @param {string} file - */ -export async function read_file(file) { - const match = /\d{2}-(.+)\.md/.exec(path.basename(file)); - if (!match) return null; - - const markdown = replace_placeholders(fs.readFileSync(`${base}/${file}`, 'utf-8')); - - const highlighter = await createShikiHighlighter({ theme: 'css-variables' }); - - const { metadata, body } = extract_frontmatter(markdown); - - const { content, sections } = parse({ - file, - body: generate_ts_from_js(body), - code: (source, language, current) => { - const hash = createHash('sha256'); - - hash.update(source + language + current); - const digest = hash.digest().toString('base64').replace(/\//g, '-'); - - if (fs.existsSync(`${snippet_cache}/${digest}.html`)) { - return fs.readFileSync(`${snippet_cache}/${digest}.html`, 'utf-8'); - } - - /** @type {Record} */ - const options = {}; - - let html = ''; - - source = source - .replace(/^\/\/\/ (.+?): (.+)\n/gm, (match, key, value) => { - options[key] = value; - return ''; - }) - .replace(/^([\-\+])?((?: )+)/gm, (match, prefix = '', spaces) => { - if (prefix && language !== 'diff') return match; - - // for no good reason at all, marked replaces tabs with spaces - let tabs = ''; - for (let i = 0; i < spaces.length; i += 4) { - tabs += ' '; - } - - return prefix + tabs; - }) - .replace(/\*\\\//g, '*/'); - - let version_class = ''; - if (language === 'generated-ts' || language === 'generated-svelte') { - language = language.replace('generated-', ''); - version_class = 'ts-version'; - } else if (language === 'original-js' || language === 'original-svelte') { - language = language.replace('original-', ''); - version_class = 'js-version'; - } - - if (language === 'dts' || language === 'yaml') { - html = renderCodeToHTML( - source, - language === 'dts' ? 'ts' : language, - { twoslash: false }, - { themeName: 'css-variables' }, - highlighter - ); - html = replace_blank_lines(html); - } else if (language === 'js' || language === 'ts') { - try { - const injected = []; - if ( - source.includes('$app/') || - source.includes('$service-worker') || - source.includes('@sveltejs/kit/') - ) { - injected.push( - `// @filename: ambient-kit.d.ts`, - `/// ` - ); - } - - if (source.includes('$env/')) { - // TODO we're hardcoding static env vars that are used in code examples - // in the types, which isn't... totally ideal, but will do for now - injected.push( - `declare module '$env/dynamic/private' { export const env: Record }`, - `declare module '$env/dynamic/public' { export const env: Record }`, - `declare module '$env/static/private' { export const API_KEY: string }`, - `declare module '$env/static/public' { export const PUBLIC_BASE_URL: string }` - ); - } - - if (source.includes('./$types') && !source.includes('@filename: $types.d.ts')) { - const params = parse_route_id(options.file || `+page.${language}`) - .params.map((param) => `${param.name}: string`) - .join(', '); - - injected.push( - `// @filename: $types.d.ts`, - `import type * as Kit from '@sveltejs/kit';`, - `export type PageLoad = Kit.Load<{${params}}>;`, - `export type PageServerLoad = Kit.ServerLoad<{${params}}>;`, - `export type LayoutLoad = Kit.Load<{${params}}>;`, - `export type LayoutServerLoad = Kit.ServerLoad<{${params}}>;`, - `export type RequestHandler = Kit.RequestHandler<{${params}}>;`, - `export type Action = Kit.Action<{${params}}>;`, - `export type Actions = Kit.Actions<{${params}}>;`, - `export type EntryGenerator = () => Promise> | Array<{${params}}>;` - ); - } - - // special case — we need to make allowances for code snippets coming - // from e.g. ambient.d.ts - if (file.endsWith('30-modules.md')) { - injected.push('// @errors: 7006 7031'); - } - - if (file.endsWith('10-configuration.md')) { - injected.push('// @errors: 2307'); - } - - // another special case - if (source.includes('$lib/types')) { - injected.push(`declare module '$lib/types' { export interface User {} }`); - } - - if (injected.length) { - const injected_str = injected.join('\n'); - if (source.includes('// @filename:')) { - source = source.replace('// @filename:', `${injected_str}\n\n// @filename:`); - } else { - source = source.replace( - /^(?!\/\/ @)/m, - `${injected_str}\n\n// @filename: index.${language}\n// ---cut---\n` - ); - } - } - - const twoslash = runTwoSlash(source, language, { - defaultCompilerOptions: { - allowJs: true, - checkJs: true, - target: ts.ScriptTarget.ES2022 - } - }); - - html = renderCodeToHTML( - twoslash.code, - 'ts', - { twoslash: true }, - { themeName: 'css-variables' }, - highlighter, - twoslash - ); - } catch (e) { - console.error(`Error compiling snippet in ${file}`); - console.error(e.code); - throw e; - } - - // we need to be able to inject the LSP attributes as HTML, not text, so we - // turn < into &lt; - html = html.replace( - /]*)>(\w+)<\/data-lsp>/g, - (match, lsp, attrs, name) => { - if (!lsp) return name; - return `${name}`; - } - ); - - html = replace_blank_lines(html); - } else if (language === 'diff') { - const lines = source.split('\n').map((content) => { - let type = null; - if (/^[\+\-]/.test(content)) { - type = content[0] === '+' ? 'inserted' : 'deleted'; - content = content.slice(1); - } - - return { - type, - content: escape(content) - }; - }); - - html = `
${lines
-					.map((line) => {
-						if (line.type) return `${line.content}\n`;
-						return line.content + '\n';
-					})
-					.join('')}
`; - } else { - const plang = languages[language]; - - const highlighted = plang - ? PrismJS.highlight(source, PrismJS.languages[plang], language) - : source.replace(/[&<>]/g, (c) => ({ '&': '&', '<': '<', '>': '>' }[c])); - - html = `
${highlighted}
`; - } - - if (options.file) { - html = `
${options.file}${html}
`; - } - - if (version_class) { - html = html.replace(/class=('|")/, `class=$1${version_class} `); - } - - type_regex.lastIndex = 0; - - html = html - .replace(type_regex, (match, prefix, name) => { - if (options.link === 'false' || name === current) { - // we don't want e.g. RequestHandler to link to RequestHandler - return match; - } - - const link = `${name}`; - return `${prefix || ''}${link}`; - }) - .replace( - /^(\s+)([\s\S]+?)<\/span>\n/gm, - (match, intro_whitespace, content) => { - // we use some CSS trickery to make comments break onto multiple lines while preserving indentation - const lines = (intro_whitespace + content).split('\n'); - return lines - .map((line) => { - const match = /^(\s*)(.*)/.exec(line); - const indent = (match[1] ?? '').replace(/\t/g, ' ').length; - - return `${ - line ?? '' - }`; - }) - .join(''); - } - ) - .replace(/\/\*…\*\//g, '…'); - - fs.writeFileSync(`${snippet_cache}/${digest}.html`, html); - return html; - }, - codespan: (text) => { - return ( - '' + - dynamic_extensions(text).replace(type_regex, (match, prefix, name) => { - const link = `${name}`; - return `${prefix || ''}${link}`; - }) + - '' - ); - } - }); - - return { - file, - slug: match[1], - title: metadata.title, - content, - sections - }; -} - -/** - * @param {{ - * file: string; - * body: string; - * code: (source: string, language: string, current: string) => string; - * codespan: (source: string) => string; - * }} opts - */ -function parse({ file, body, code, codespan }) { - const headings = []; - - /** @type {import('./types').Section[]} */ - const sections = []; - - /** @type {import('./types').Section} */ - let section; - - // this is a bit hacky, but it allows us to prevent type declarations - // from linking to themselves - let current = ''; - - /** @type {string} */ - const content = transform(body, { - /** - * @param {string} html - * @param {number} level - */ - heading(html, level) { - const title = html - .replace(/<\/?code>/g, '') - .replace(/"/g, '"') - .replace(/</g, '<') - .replace(/>/g, '>'); - - current = title; - - const normalized = slugify(title); - - headings[level - 1] = normalized; - headings.length = level; - - const slug = headings.filter(Boolean).join('-'); - - if (level === 2) { - section = { - title, - slug, - sections: [] - }; - - sections.push(section); - } else if (level === 3) { - (section?.sections ?? sections).push({ - title, - slug - }); - } else { - throw new Error(`Unexpected in ${file}`); - } - - return `${dynamic_extensions(html)} - `; - }, - code: (source, language) => code(source, language, current), - codespan - }); - - return { - sections, - content - }; -} - -/** @param {string} title */ -export function slugify(title) { - return title - .toLowerCase() - .replace(/</g, '') - .replace(/>/g, '') - .replace(/[^a-z0-9-$]/g, '-') - .replace(/-{2,}/g, '-') - .replace(/^-/, '') - .replace(/-$/, ''); -} - -/** - * Appends a JS->TS / Svelte->Svelte-TS code block after each JS/Svelte code block. - * The language is `generated-js`/`generated-svelte` which can be used to detect this in later steps. - * @param {string} markdown - */ -export function generate_ts_from_js(markdown) { - return markdown - .replaceAll(/```js\n([\s\S]+?)\n```/g, (match, code) => { - if (!code.includes('/// file:')) { - // No named file -> assume that the code is not meant to be shown in two versions - return match; - } - if (code.includes('/// file: svelte.config.js')) { - // svelte.config.js has no TS equivalent - return match; - } - - const ts = convert_to_ts(code); - - if (!ts) { - // No changes -> don't show TS version - return match; - } - - return match.replace('js', 'original-js') + '\n```generated-ts\n' + ts + '\n```'; - }) - .replaceAll(/```svelte\n([\s\S]+?)\n```/g, (match, code) => { - if (!code.includes('/// file:')) { - // No named file -> assume that the code is not meant to be shown in two versions - return match; - } - - // Assumption: no context="module" blocks - const script = code.match(/`) + - '\n```' - ); - }); -} - -/** - * Transforms a JS code block into a TS code block by turning JSDoc into type annotations. - * Due to pragmatism only the cases currently used in the docs are implemented. - * @param {string} js_code - * @param {string} [indent] - * @param {string} [offset] - * */ -function convert_to_ts(js_code, indent = '', offset = '') { - js_code = js_code - .replaceAll('// @filename: index.js', '// @filename: index.ts') - .replace(/(\/\/\/ .+?\.)js/, '$1ts') - // *\/ appears in some JsDoc comments in d.ts files due to the JSDoc-in-JSDoc problem - .replace(/\*\\\//g, '*/'); - - const ast = ts.createSourceFile( - 'filename.ts', - js_code, - ts.ScriptTarget.Latest, - true, - ts.ScriptKind.TS - ); - const code = new MagicString(js_code); - const imports = new Map(); - - function walk(node) { - // @ts-ignore - if (node.jsDoc) { - // @ts-ignore - for (const comment of node.jsDoc) { - let modified = false; - - for (const tag of comment.tags ?? []) { - if (ts.isJSDocTypeTag(tag)) { - const [name, generics] = get_type_info(tag); - - if (ts.isFunctionDeclaration(node)) { - const is_export = - ts.canHaveModifiers(node) && - ts - .getModifiers(node) - ?.some((modifier) => modifier.kind === ts.SyntaxKind.ExportKeyword) - ? 'export ' - : ''; - const is_async = - ts.canHaveModifiers(node) && - ts - .getModifiers(node) - ?.some((modifier) => modifier.kind === ts.SyntaxKind.AsyncKeyword); - code.overwrite( - node.getStart(), - node.name.getEnd(), - `${is_export ? 'export ' : ''}const ${node.name.getText()} = (${ - is_async ? 'async ' : '' - }` - ); - code.appendLeft(node.body.getStart(), '=> '); - const type = generics !== undefined ? `${name}${generics}` : name; - code.appendLeft(node.body.getEnd(), `) satisfies ${type};`); - - modified = true; - } else if ( - ts.isVariableStatement(node) && - node.declarationList.declarations.length === 1 - ) { - const variable_statement = node.declarationList.declarations[0]; - - if (variable_statement.name.getText() === 'actions') { - code.appendLeft(variable_statement.getEnd(), ` satisfies ${name}`); - } else { - code.appendLeft(variable_statement.name.getEnd(), `: ${name}`); - } - - modified = true; - } else { - throw new Error('Unhandled @type JsDoc->TS conversion: ' + js_code); - } - } else if (ts.isJSDocParameterTag(tag) && ts.isFunctionDeclaration(node)) { - if (node.parameters.length !== 1) { - throw new Error( - 'Unhandled @type JsDoc->TS conversion; needs more params logic: ' + node.getText() - ); - } - const [name] = get_type_info(tag); - code.appendLeft(node.parameters[0].getEnd(), `: ${name}`); - - modified = true; - } - } - - if (modified) { - code.overwrite(comment.getStart(), comment.getEnd(), ''); - } - } - } - - ts.forEachChild(node, walk); - } - - walk(ast); - - if (imports.size) { - const import_statements = Array.from(imports.entries()) - .map(([from, names]) => { - return `${indent}import type { ${Array.from(names).join(', ')} } from '${from}';`; - }) - .join('\n'); - const idxOfLastImport = [...ast.statements] - .reverse() - .find((statement) => ts.isImportDeclaration(statement)) - ?.getEnd(); - const insertion_point = Math.max( - idxOfLastImport ? idxOfLastImport + 1 : 0, - js_code.includes('---cut---') - ? js_code.indexOf('\n', js_code.indexOf('---cut---')) + 1 - : js_code.includes('/// file:') - ? js_code.indexOf('\n', js_code.indexOf('/// file:')) + 1 - : 0 - ); - code.appendLeft(insertion_point, offset + import_statements + '\n'); - } - - const transformed = code.toString(); - return transformed === js_code ? undefined : transformed.replace(/\n\s*\n\s*\n/g, '\n\n'); - - /** @param {ts.JSDocTypeTag | ts.JSDocParameterTag} tag */ - function get_type_info(tag) { - const type_text = tag.typeExpression.getText(); - let name = type_text.slice(1, -1); // remove { } - - const import_match = /import\('(.+?)'\)\.(\w+)(<{?[\n\* \w:;,]+}?>)?/.exec(type_text); - if (import_match) { - const [, from, _name, generics] = import_match; - name = _name; - const existing = imports.get(from); - if (existing) { - existing.add(name); - } else { - imports.set(from, new Set([name])); - } - if (generics !== undefined) { - return [ - name, - generics - .replaceAll('*', '') // get rid of JSDoc asterisks - .replace(' }>', '}>') // unindent closing brace - ]; - } - } - return [name]; - } -} diff --git a/sites/kit.svelte.dev/src/lib/docs/server/index.spec.js b/sites/kit.svelte.dev/src/lib/docs/server/index.spec.js deleted file mode 100644 index a5f12d630eea..000000000000 --- a/sites/kit.svelte.dev/src/lib/docs/server/index.spec.js +++ /dev/null @@ -1,228 +0,0 @@ -import { assert, test } from 'vitest'; -import { generate_ts_from_js } from './index.js'; - -/** - * @param {string} input - * @param {string} expected - */ -function test_ts_transformation(input, expected) { - const output = generate_ts_from_js(input); - assert.equal(output, expected); -} - -test('Creates TS from JS', () => { - test_ts_transformation( - ` -### sub heading - -etc -\`\`\`js -// @errors: 2461 -/// file: src/routes/what-is-my-user-agent/+server.js -import { json } from '@sveltejs/kit'; - -/** @type {import('./$types').RequestHandler} */ -export function GET(event) { - // log all headers - console.log(...event.request.headers); - - return json({ - // retrieve a specific header - userAgent: event.request.headers.get('user-agent') - }); -} -\`\`\` - -etc etc -`, - ` -### sub heading - -etc -\`\`\`original-js -// @errors: 2461 -/// file: src/routes/what-is-my-user-agent/+server.js -import { json } from '@sveltejs/kit'; - -/** @type {import('./$types').RequestHandler} */ -export function GET(event) { - // log all headers - console.log(...event.request.headers); - - return json({ - // retrieve a specific header - userAgent: event.request.headers.get('user-agent') - }); -} -\`\`\` -\`\`\`generated-ts -// @errors: 2461 -/// file: src/routes/what-is-my-user-agent/+server.ts -import { json } from '@sveltejs/kit'; -import type { RequestHandler } from './$types'; - -export const GET = ((event) => { - // log all headers - console.log(...event.request.headers); - - return json({ - // retrieve a specific header - userAgent: event.request.headers.get('user-agent') - }); -}) satisfies RequestHandler; -\`\`\` - -etc etc -` - ); -}); - -test('Creates Svelte-TS from Svelte-JS', () => { - test_ts_transformation( - ` -### sub heading - -etc -\`\`\`svelte -/// file: src/routes/+page.svelte - - -

{data.title}

-
{@html data.content}
-\`\`\` - -etc etc -`, - ` -### sub heading - -etc -\`\`\`original-svelte -/// file: src/routes/+page.svelte - - -

{data.title}

-
{@html data.content}
-\`\`\` -\`\`\`generated-svelte -/// file: src/routes/+page.svelte - - -

{data.title}

-
{@html data.content}
-\`\`\` - -etc etc -` - ); -}); - -test('Leaves JS file as-is if no transformation needed', () => { - test_ts_transformation( - ` -\`\`\`js -/// file: src/routes/+server.js -let foo = true; -\`\`\` - -etc etc -`, - ` -\`\`\`js -/// file: src/routes/+server.js -let foo = true; -\`\`\` - -etc etc -` - ); -}); - -test('Leaves Svelte file as-is if no transformation needed', () => { - test_ts_transformation( - ` -\`\`\`svelte -/// file: src/routes/+page.svelte - - -

{foo}

-\`\`\` - -etc etc -`, - ` -\`\`\`svelte -/// file: src/routes/+page.svelte - - -

{foo}

-\`\`\` - -etc etc -` - ); -}); - -test('Leaves JS file as-is if no named file', () => { - test_ts_transformation( - ` -\`\`\`js -/** @type {boolean} */ -let foo = true; -\`\`\` - -etc etc -`, - ` -\`\`\`js -/** @type {boolean} */ -let foo = true; -\`\`\` - -etc etc -` - ); -}); - -test('Leaves Svelte file as-is if no named file', () => { - test_ts_transformation( - ` -\`\`\`svelte - - -

{foo}

-\`\`\` - -etc etc -`, - ` -\`\`\`svelte - - -

{foo}

-\`\`\` - -etc etc -` - ); -}); diff --git a/sites/kit.svelte.dev/src/lib/docs/server/markdown.js b/sites/kit.svelte.dev/src/lib/docs/server/markdown.js deleted file mode 100644 index 9482233c3663..000000000000 --- a/sites/kit.svelte.dev/src/lib/docs/server/markdown.js +++ /dev/null @@ -1,187 +0,0 @@ -import { marked } from 'marked'; - -const escapeTest = /[&<>"']/; -const escapeReplace = /[&<>"']/g; -const escapeTestNoEncode = /[<>"']|&(?!#?\w+;)/; -const escapeReplaceNoEncode = /[<>"']|&(?!#?\w+;)/g; -const escapeReplacements = { - '&': '&', - '<': '<', - '>': '>', - '"': '"', - "'": ''' -}; -const getEscapeReplacement = (ch) => escapeReplacements[ch]; - -/** - * @param {string} html - * @param {boolean} [encode] - */ -export function escape(html, encode = false) { - if (encode) { - if (escapeTest.test(html)) { - return html.replace(escapeReplace, getEscapeReplacement); - } - } else { - if (escapeTestNoEncode.test(html)) { - return html.replace(escapeReplaceNoEncode, getEscapeReplacement); - } - } - - return html; -} - -/** @type {Partial} */ -const default_renderer = { - code(code, infostring, escaped) { - const lang = (infostring || '').match(/\S*/)[0]; - - code = code.replace(/\n$/, '') + '\n'; - - if (!lang) { - return '
' + (escaped ? code : escape(code, true)) + '
\n'; - } - - return ( - '
' +
-			(escaped ? code : escape(code, true)) +
-			'
\n' - ); - }, - - blockquote(quote) { - return '
\n' + quote + '
\n'; - }, - - html(html) { - return html; - }, - - heading(text, level) { - return '' + text + '\n'; - }, - - hr() { - return '
\n'; - }, - - list(body, ordered, start) { - const type = ordered ? 'ol' : 'ul', - startatt = ordered && start !== 1 ? ' start="' + start + '"' : ''; - return '<' + type + startatt + '>\n' + body + '\n'; - }, - - listitem(text) { - return '
  • ' + text + '
  • \n'; - }, - - checkbox(checked) { - return ' '; - }, - - paragraph(text) { - return '

    ' + text + '

    \n'; - }, - - table(header, body) { - if (body) body = '' + body + ''; - - return '\n' + '\n' + header + '\n' + body + '
    \n'; - }, - - tablerow(content) { - return '\n' + content + '\n'; - }, - - tablecell(content, flags) { - const type = flags.header ? 'th' : 'td'; - const tag = flags.align ? '<' + type + ' align="' + flags.align + '">' : '<' + type + '>'; - return tag + content + '\n'; - }, - - // span level renderer - strong(text) { - return '' + text + ''; - }, - - em(text) { - return '' + text + ''; - }, - - codespan(text) { - return '' + text + ''; - }, - - br() { - return '
    '; - }, - - del(text) { - return '' + text + ''; - }, - - link(href, title, text) { - if (href === null) { - return text; - } - let out = ''; - return out; - }, - - image(href, title, text) { - if (href === null) { - return text; - } - - let out = '' + text + '} renderer - */ -export function transform(markdown, renderer = {}) { - marked.use({ - renderer: { - // we have to jump through these hoops because of marked's API design choices — - // options are global, and merged in confusing ways. You can't do e.g. - // `new Marked(options).parse(markdown)` - ...default_renderer, - ...renderer - } - }); - - return marked(markdown); -} - -/** @param {string} markdown */ -export function extract_frontmatter(markdown) { - const match = /---\r?\n([\s\S]+?)\r?\n---/.exec(markdown); - const frontmatter = match[1]; - const body = markdown.slice(match[0].length); - - /** @type {Record} */ - const metadata = {}; - frontmatter.split('\n').forEach((pair) => { - const i = pair.indexOf(':'); - metadata[pair.slice(0, i).trim()] = pair.slice(i + 1).trim(); - }); - - return { metadata, body }; -} diff --git a/sites/kit.svelte.dev/src/lib/docs/server/render.js b/sites/kit.svelte.dev/src/lib/docs/server/render.js deleted file mode 100644 index cfe1c80bbfec..000000000000 --- a/sites/kit.svelte.dev/src/lib/docs/server/render.js +++ /dev/null @@ -1,136 +0,0 @@ -import { modules } from './type-info.js'; - -/** @param {string} content */ -export function replace_placeholders(content) { - return content - .replace(/> EXPANDED_TYPES: (.+?)#(.+)$/gm, (_, name, id) => { - const module = modules.find((module) => module.name === name); - if (!module) throw new Error(`Could not find module ${name}`); - - const type = module.types.find((t) => t.name === id); - - return ( - type.comment + - type.children - .map((child) => { - let section = `### ${child.name}`; - - if (child.bullets) { - section += `\n\n
    \n\n${child.bullets.join( - '\n' - )}\n\n
    `; - } - - section += `\n\n${child.comment}`; - - if (child.children) { - section += `\n\n
    \n\n${child.children - .map(stringify) - .join('\n')}\n\n
    `; - } - - return section; - }) - .join('\n\n') - ); - }) - .replace(/> TYPES: (.+?)(?:#(.+))?$/gm, (_, name, id) => { - const module = modules.find((module) => module.name === name); - if (!module) throw new Error(`Could not find module ${name}`); - - if (id) { - const type = module.types.find((t) => t.name === id); - - return ( - `
    ${fence(type.snippet)}` + - type.children.map(stringify).join('\n\n') + - `
    ` - ); - } - - return `${module.comment}\n\n${module.types - .map((t) => { - let children = t.children.map(stringify).join('\n\n'); - if (t.name === 'Config' || t.name === 'KitConfig') { - // special case — we want these to be on a separate page - children = - '
    \n\nSee the [configuration reference](/docs/configuration) for details.
    '; - } - - const markdown = `
    ${fence(t.snippet)}` + children + `
    `; - return `### ${t.name}\n\n${t.comment}\n\n${markdown}\n\n`; - }) - .join('')}`; - }) - .replace('> MODULES', () => { - return modules - .map((module) => { - if (module.exports.length === 0 && !module.exempt) return ''; - if (module.name === 'Private types') return; - - let import_block = ''; - - if (module.exports.length > 0) { - // deduplication is necessary for now, because of `error()` overload - const exports = Array.from(new Set(module.exports.map((x) => x.name))); - - let declaration = `import { ${exports.join(', ')} } from '${module.name}';`; - if (declaration.length > 80) { - declaration = `import {\n\t${exports.join(',\n\t')}\n} from '${module.name}';`; - } - - import_block = fence(declaration, 'js'); - } - - return `## ${module.name}\n\n${import_block}\n\n${module.comment}\n\n${module.exports - .map((type) => { - const markdown = - `
    ${fence(type.snippet)}` + - type.children.map(stringify).join('\n\n') + - `
    `; - return `### ${type.name}\n\n${type.comment}\n\n${markdown}`; - }) - .join('\n\n')}`; - }) - .join('\n\n'); - }); -} - -/** - * @param {string} code - * @param {string} lang - */ -function fence(code, lang = 'dts') { - return '\n\n```' + lang + '\n' + code + '\n```\n\n'; -} - -/** - * @param {import('./types').Type} member - */ -function stringify(member) { - const bullet_block = - member.bullets.length > 0 - ? `\n\n
    \n\n${member.bullets.join('\n')}
    ` - : ''; - - const child_block = - member.children.length > 0 - ? `\n\n
    ${member.children - .map(stringify) - .join('\n')}
    ` - : ''; - - return ( - `
    ${fence(member.snippet)}` + - `
    \n\n` + - bullet_block + - '\n\n' + - member.comment - .replace(/\/\/\/ type: (.+)/g, '/** @type {$1} */') - .replace(/^( )+/gm, (match, spaces) => { - return '\t'.repeat(match.length / 2); - }) + - child_block + - '\n
    ' - ); -} diff --git a/sites/kit.svelte.dev/src/lib/docs/server/types.d.ts b/sites/kit.svelte.dev/src/lib/docs/server/types.d.ts deleted file mode 100644 index c627e1b68ba7..000000000000 --- a/sites/kit.svelte.dev/src/lib/docs/server/types.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -export interface Section { - title: string; - slug: string; - sections?: Section[]; -} - -export interface Type { - name: string; - comment: string; - snippet: string; - bullets: string[]; - children: Type[]; -} diff --git a/sites/kit.svelte.dev/src/lib/server/docs/index.js b/sites/kit.svelte.dev/src/lib/server/docs/index.js new file mode 100644 index 000000000000..19aefe2107ca --- /dev/null +++ b/sites/kit.svelte.dev/src/lib/server/docs/index.js @@ -0,0 +1,128 @@ +import { base as app_base } from '$app/paths'; +import { modules } from '$lib/generated/type-info.js'; +import { + escape, + extractFrontmatter, + markedTransform, + normalizeSlugify, + removeMarkdown, + renderContentMarkdown +} from '@sveltejs/site-kit/markdown'; +import fs from 'node:fs'; +import { CONTENT_BASE_PATHS } from '../../../constants.js'; +import { kit_twoslash_banner } from '../twoslash-banner.js'; + +/** + * @param {import('./types').DocsData} docs_data + * @param {string} slug + */ +export async function get_parsed_docs(docs_data, slug) { + const page = docs_data + .find(({ pages }) => pages.find((page) => slug === page.slug)) + ?.pages.find((page) => slug === page.slug); + + if (!page) return null; + + return { + ...page, + content: await renderContentMarkdown(page.file, page.content, { + modules, + twoslashBanner: kit_twoslash_banner, + cacheCodeSnippets: false + }) + }; +} + +/** @return {import('./types').DocsData} */ +export function get_docs_data(base = CONTENT_BASE_PATHS.DOCS) { + /** @type {import('./types').DocsData} */ + const docs_data = []; + + for (const category_dir of fs.readdirSync(base)) { + const match = /\d{2}-(.+)/.exec(category_dir); + if (!match) continue; + + const category_slug = match[1]; + + // Read the meta.json + const { title: category_title, draft = 'false' } = JSON.parse( + fs.readFileSync(`${base}/${category_dir}/meta.json`, 'utf-8') + ); + + if (draft === 'true') continue; + + /** @type {import('./types').Category} */ + const category = { + title: category_title, + slug: category_slug, + pages: [] + }; + + for (const page_md of fs + .readdirSync(`${base}/${category_dir}`) + .filter((filename) => filename !== 'meta.json')) { + const match = /\d{2}-(.+)/.exec(page_md); + if (!match) continue; + + const page_slug = match[1].replace('.md', ''); + + const page_data = extractFrontmatter( + fs.readFileSync(`${base}/${category_dir}/${page_md}`, 'utf-8') + ); + + if (page_data.metadata.draft === 'true') continue; + + const page_title = page_data.metadata.title; + const page_content = page_data.body; + + category.pages.push({ + title: page_title, + slug: page_slug, + content: page_content, + sections: get_sections(page_content), + path: `${app_base}/docs/${page_slug}`, + file: `${category_dir}/${page_md}` + }); + } + + docs_data.push(category); + } + + return docs_data; +} + +/** @param {import('./types').DocsData} docs_data */ +export function get_docs_list(docs_data) { + return docs_data.map((category) => ({ + title: category.title, + pages: category.pages.map((page) => ({ + title: page.title, + path: page.path + })) + })); +} + +/** @param {string} markdown */ +function get_sections(markdown) { + const headingRegex = /^##\s+(.*)$/gm; + /** @type {import('./types').Section[]} */ + const secondLevelHeadings = []; + let match; + + while ((match = headingRegex.exec(markdown)) !== null) { + secondLevelHeadings.push({ + title: removeMarkdown( + escape(markedTransform(match[1], { paragraph: (txt) => txt })) + .replace(/<\/?code>/g, '') + .replace(/'/g, "'") + .replace(/"/g, '"') + .replace(/</g, '<') + .replace(/>/g, '>') + .replace(/<(\/)?(em|b|strong|code)>/g, '') + ), + slug: normalizeSlugify(match[1]) + }); + } + + return secondLevelHeadings; +} diff --git a/sites/kit.svelte.dev/src/lib/server/docs/types.d.ts b/sites/kit.svelte.dev/src/lib/server/docs/types.d.ts new file mode 100644 index 000000000000..12160a1c4ab1 --- /dev/null +++ b/sites/kit.svelte.dev/src/lib/server/docs/types.d.ts @@ -0,0 +1,23 @@ +export type DocsData = Category[]; + +export interface Section { + title: string; + slug: string; + // Currently, we are only going with 2 level headings, so this will be undefined. In future, we may want to support 3 levels, in which case this will be a list of sections + sections?: Section[]; +} + +export type Category = { + title: string; + slug: string; + pages: Page[]; +}; + +export type Page = { + title: string; + slug: string; + file: string; + path: string; + content: string; + sections: Section[]; +}; diff --git a/sites/kit.svelte.dev/src/lib/server/twoslash-banner.js b/sites/kit.svelte.dev/src/lib/server/twoslash-banner.js new file mode 100644 index 000000000000..7258f52e833d --- /dev/null +++ b/sites/kit.svelte.dev/src/lib/server/twoslash-banner.js @@ -0,0 +1,65 @@ +import { parse_route_id } from '../../../../../packages/kit/src/utils/routing.js'; + +/** + * @type {Parameters['2']['twoslashBanner']} + */ +export const kit_twoslash_banner = (filename, source, language, options) => { + const injected = []; + + if ( + source.includes('$app/') || + source.includes('$service-worker') || + source.includes('@sveltejs/kit/') + ) { + injected.push(`// @filename: ambient-kit.d.ts`, `/// `); + } + + if (source.includes('$env/')) { + // TODO we're hardcoding static env vars that are used in code examples + // in the types, which isn't... totally ideal, but will do for now + injected.push( + `declare module '$env/dynamic/private' { export const env: Record }`, + `declare module '$env/dynamic/public' { export const env: Record }`, + `declare module '$env/static/private' { export const API_KEY: string }`, + `declare module '$env/static/public' { export const PUBLIC_BASE_URL: string }` + ); + } + + if (source.includes('./$types') && !source.includes('@filename: $types.d.ts')) { + const params = parse_route_id(options.file || `+page.${language}`) + .params.map((param) => `${param.name}: string`) + .join(', '); + + console.log(options); + + injected.push( + `// @filename: $types.d.ts`, + `import type * as Kit from '@sveltejs/kit';`, + `export type PageLoad = Kit.Load<{${params}}>;`, + `export type PageServerLoad = Kit.ServerLoad<{${params}}>;`, + `export type LayoutLoad = Kit.Load<{${params}}>;`, + `export type LayoutServerLoad = Kit.ServerLoad<{${params}}>;`, + `export type RequestHandler = Kit.RequestHandler<{${params}}>;`, + `export type Action = Kit.Action<{${params}}>;`, + `export type Actions = Kit.Actions<{${params}}>;`, + `export type EntryGenerator = () => Promise> | Array<{${params}}>;` + ); + } + + // special case — we need to make allowances for code snippets coming + // from e.g. ambient.d.ts + if (filename.endsWith('30-modules.md')) { + injected.push('// @errors: 7006 7031'); + } + + if (filename.endsWith('10-configuration.md')) { + injected.push('// @errors: 2307'); + } + + // another special case + if (source.includes('$lib/types')) { + injected.push(`declare module '$lib/types' { export interface User {} }`); + } + + return injected.join('\n'); +}; diff --git a/sites/kit.svelte.dev/src/routes/+layout.js b/sites/kit.svelte.dev/src/routes/+layout.js deleted file mode 100644 index 189f71e2e1b3..000000000000 --- a/sites/kit.svelte.dev/src/routes/+layout.js +++ /dev/null @@ -1 +0,0 @@ -export const prerender = true; diff --git a/sites/kit.svelte.dev/src/routes/+layout.server.js b/sites/kit.svelte.dev/src/routes/+layout.server.js new file mode 100644 index 000000000000..625e73326af7 --- /dev/null +++ b/sites/kit.svelte.dev/src/routes/+layout.server.js @@ -0,0 +1,23 @@ +export const prerender = true; + +export const load = async ({ url, fetch }) => { + const nav_list = await fetch('/nav.json').then((r) => r.json()); + + return { + nav_title: get_nav_title(url), + nav_links: nav_list + }; +}; + +/** @param {URL} url */ +function get_nav_title(url) { + const list = new Map([[/^docs/, 'Docs']]); + + for (const [regex, title] of list) { + if (regex.test(url.pathname.replace(/^\/(.+)/, '$1'))) { + return title; + } + } + + return ''; +} diff --git a/sites/kit.svelte.dev/src/routes/+layout.svelte b/sites/kit.svelte.dev/src/routes/+layout.svelte index 7e2131f3a82e..b10fc08d1b5c 100644 --- a/sites/kit.svelte.dev/src/routes/+layout.svelte +++ b/sites/kit.svelte.dev/src/routes/+layout.svelte @@ -1,55 +1,51 @@ - - - + export let data; + - - +
    {#if browser} @@ -74,11 +70,6 @@ } } - li { - display: flex; - align-items: center; - } - :global(.examples-container, .repl-outer, .tutorial-outer) { height: calc(100vh - var(--sk-nav-height)) !important; } diff --git a/sites/kit.svelte.dev/src/routes/content.json/content.server.js b/sites/kit.svelte.dev/src/routes/content.json/content.server.js index e98af0bae165..114748c724b9 100644 --- a/sites/kit.svelte.dev/src/routes/content.json/content.server.js +++ b/sites/kit.svelte.dev/src/routes/content.json/content.server.js @@ -1,9 +1,13 @@ +import { modules } from '$lib/generated/type-info.js'; +import { + extractFrontmatter, + markedTransform, + replaceExportTypePlaceholders, + slugify +} from '@sveltejs/site-kit/markdown'; import fs from 'node:fs'; import path from 'node:path'; import glob from 'tiny-glob/sync.js'; -import { slugify } from '$lib/docs/server'; -import { extract_frontmatter, transform } from '$lib/docs/server/markdown.js'; -import { replace_placeholders } from '$lib/docs/server/render.js'; const categories = [ { @@ -34,9 +38,9 @@ export function content() { const slug = match[1]; const filepath = `../../documentation/${category.slug}/${file}`; - const markdown = replace_placeholders(fs.readFileSync(filepath, 'utf-8')); + const markdown = replaceExportTypePlaceholders(fs.readFileSync(filepath, 'utf-8'), modules); - const { body, metadata } = extract_frontmatter(markdown); + const { body, metadata } = extractFrontmatter(markdown); const sections = body.trim().split(/^## /m); const intro = sections.shift().trim(); @@ -87,7 +91,7 @@ function plaintext(markdown) { const block = (text) => `${text}\n`; const inline = (text) => text; - return transform(markdown, { + return markedTransform(markdown, { code: (source) => source .split('// ---cut---\n') diff --git a/sites/kit.svelte.dev/src/routes/docs/+layout.server.js b/sites/kit.svelte.dev/src/routes/docs/+layout.server.js index 8e76530226be..ff3acad12540 100644 --- a/sites/kit.svelte.dev/src/routes/docs/+layout.server.js +++ b/sites/kit.svelte.dev/src/routes/docs/+layout.server.js @@ -1,39 +1,9 @@ -import fs from 'fs'; -import { base } from '$app/paths'; -import { extract_frontmatter } from '$lib/docs/server/markdown'; +import { get_docs_data, get_docs_list } from '$lib/server/docs/index.js'; export const prerender = true; -const base_dir = '../../documentation/docs'; -const pattern = /^\d\d-/; - -/** @type {import('./$types').LayoutServerLoad} */ export function load() { - const sections = fs - .readdirSync(base_dir) - .filter((subdir) => pattern.test(subdir)) - .map((subdir) => { - const meta = JSON.parse(fs.readFileSync(`${base_dir}/${subdir}/meta.json`, 'utf-8')); - return { - title: meta.title, - pages: fs - .readdirSync(`${base_dir}/${subdir}`) - .filter((file) => pattern.test(file)) - .map((file) => { - const markdown = fs.readFileSync(`${base_dir}/${subdir}/${file}`, 'utf-8'); - const { metadata } = extract_frontmatter(markdown); - - const slug = file.slice(3, -3); - - return { - title: metadata.title, - path: `${base}/docs/${slug}` - }; - }) - }; - }); - return { - sections + sections: get_docs_list(get_docs_data()) }; } diff --git a/sites/kit.svelte.dev/src/routes/docs/+layout.svelte b/sites/kit.svelte.dev/src/routes/docs/+layout.svelte index d5a7108e7df5..c016f3f683b1 100644 --- a/sites/kit.svelte.dev/src/routes/docs/+layout.svelte +++ b/sites/kit.svelte.dev/src/routes/docs/+layout.svelte @@ -1,6 +1,5 @@ @@ -11,11 +10,7 @@
    - -
    - -
    - +
    @@ -35,12 +30,6 @@ background: var(--sk-back-3); } - .ts-toggle { - width: 100%; - border-top: 1px solid var(--sk-back-4); - background-color: var(--sk-back-3); - } - @media (min-width: 832px) { .toc-container { width: var(--sidebar-width); @@ -67,15 +56,6 @@ .page { padding-left: calc(var(--sidebar-width) + var(--sk-page-padding-side)); } - - .ts-toggle { - position: fixed; - width: var(--sidebar-width); - bottom: var(--sk-banner-bottom-height); - z-index: 1; - margin-right: 0; - border-right: 1px solid var(--sk-back-5); - } } @media (min-width: 1200px) { diff --git a/sites/kit.svelte.dev/src/routes/docs/+page.js b/sites/kit.svelte.dev/src/routes/docs/+page.js index b5521ff494c6..ba2ed3ac9607 100644 --- a/sites/kit.svelte.dev/src/routes/docs/+page.js +++ b/sites/kit.svelte.dev/src/routes/docs/+page.js @@ -1,7 +1,5 @@ import { redirect } from '@sveltejs/kit'; -import { base } from '$app/paths'; -/** @type {import('./$types').Load} */ export function load() { throw redirect(307, `./docs/introduction`); } diff --git a/sites/kit.svelte.dev/src/routes/docs/[slug]/+page.server.js b/sites/kit.svelte.dev/src/routes/docs/[slug]/+page.server.js index f32014245600..9419befee573 100644 --- a/sites/kit.svelte.dev/src/routes/docs/[slug]/+page.server.js +++ b/sites/kit.svelte.dev/src/routes/docs/[slug]/+page.server.js @@ -1,22 +1,12 @@ -import fs from 'fs'; -import { read_file } from '$lib/docs/server'; +import { get_docs_data, get_parsed_docs } from '$lib/server/docs/index.js'; import { error } from '@sveltejs/kit'; -const base = '../../documentation/docs'; +export const prerender = true; -/** @type {import('./$types').PageServerLoad} */ export async function load({ params }) { - for (const subdir of fs.readdirSync(base)) { - if (!fs.statSync(`${base}/${subdir}`).isDirectory()) continue; + const processed_page = get_parsed_docs(get_docs_data(), params.slug); - for (const file of fs.readdirSync(`${base}/${subdir}`)) { - if (file.slice(3, -3) === params.slug) { - return { - page: await read_file(`docs/${subdir}/${file}`) - }; - } - } - } + if (!processed_page) throw error(404); - throw error(404); + return { page: processed_page }; } diff --git a/sites/kit.svelte.dev/src/routes/docs/[slug]/+page.svelte b/sites/kit.svelte.dev/src/routes/docs/[slug]/+page.svelte index 0a0720893626..bd9e74cebbb0 100644 --- a/sites/kit.svelte.dev/src/routes/docs/[slug]/+page.svelte +++ b/sites/kit.svelte.dev/src/routes/docs/[slug]/+page.svelte @@ -1,8 +1,8 @@ - - select($page.url)} /> - - - - diff --git a/sites/kit.svelte.dev/src/routes/faq/+page.server.js b/sites/kit.svelte.dev/src/routes/faq/+page.server.js deleted file mode 100644 index a0d26e883b10..000000000000 --- a/sites/kit.svelte.dev/src/routes/faq/+page.server.js +++ /dev/null @@ -1,13 +0,0 @@ -import fs from 'fs'; -import { read_file } from '$lib/docs/server'; - -export async function load() { - const sections = []; - - for (const file of fs.readdirSync(`../../documentation/faq`)) { - const section = await read_file(`faq/${file}`); - if (section) sections.push(section); - } - - return { sections }; -} diff --git a/sites/kit.svelte.dev/src/routes/faq/+page.svelte b/sites/kit.svelte.dev/src/routes/faq/+page.svelte deleted file mode 100644 index 4666c5870203..000000000000 --- a/sites/kit.svelte.dev/src/routes/faq/+page.svelte +++ /dev/null @@ -1,49 +0,0 @@ - - - - FAQ • SvelteKit - - - - - - -
    -

    Frequently Asked Questions

    -
    -
    - {#each data.sections as faq} - - {/each} -
    -
    -
    - - diff --git a/sites/kit.svelte.dev/src/routes/home/Deployment.svelte b/sites/kit.svelte.dev/src/routes/home/Deployment.svelte index 37e3fd7c2d4e..ff6dec0ce38c 100644 --- a/sites/kit.svelte.dev/src/routes/home/Deployment.svelte +++ b/sites/kit.svelte.dev/src/routes/home/Deployment.svelte @@ -1,16 +1,18 @@
    diff --git a/sites/kit.svelte.dev/src/routes/nav.json/+server.js b/sites/kit.svelte.dev/src/routes/nav.json/+server.js new file mode 100644 index 000000000000..ab717d3fd743 --- /dev/null +++ b/sites/kit.svelte.dev/src/routes/nav.json/+server.js @@ -0,0 +1,28 @@ +import { get_docs_data, get_docs_list } from '$lib/server/docs/index.js'; +import { json } from '@sveltejs/kit'; + +export const prerender = true; + +export const GET = async () => { + return json(await get_nav_list()); +}; + +/** + * @returns {Promise} + */ +async function get_nav_list() { + const docs_list = get_docs_list(get_docs_data()); + const processed_docs_list = docs_list.map(({ title, pages }) => ({ + title, + sections: pages.map(({ title, path }) => ({ title, path })) + })); + + return [ + { + title: 'Docs', + prefix: 'docs', + pathname: '/docs/introduction', + sections: processed_docs_list + } + ]; +} diff --git a/sites/kit.svelte.dev/tsconfig.json b/sites/kit.svelte.dev/tsconfig.json index aec59b8b3396..db9370bd28e1 100644 --- a/sites/kit.svelte.dev/tsconfig.json +++ b/sites/kit.svelte.dev/tsconfig.json @@ -1,9 +1,10 @@ { + "extends": "./.svelte-kit/tsconfig.json", "compilerOptions": { "allowJs": true, "checkJs": true, "allowSyntheticDefaultImports": true, - "moduleResolution": "bundler" - }, - "extends": "./.svelte-kit/tsconfig.json" + "moduleResolution": "bundler", + "outDir": "build" + } } From d4acf2ce9b29bb690c449ed98afd3bd66bc03cf4 Mon Sep 17 00:00:00 2001 From: Puru Vijay Date: Mon, 19 Jun 2023 01:27:43 +0530 Subject: [PATCH 02/47] meh --- sites/kit.svelte.dev/src/routes/+layout.svelte | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sites/kit.svelte.dev/src/routes/+layout.svelte b/sites/kit.svelte.dev/src/routes/+layout.svelte index b10fc08d1b5c..48f0dad089c0 100644 --- a/sites/kit.svelte.dev/src/routes/+layout.svelte +++ b/sites/kit.svelte.dev/src/routes/+layout.svelte @@ -17,7 +17,7 @@ - svelte + kit From 8a7aea4acbcc885aabc1dc72cd3820373092b284 Mon Sep 17 00:00:00 2001 From: Puru Vijay Date: Mon, 19 Jun 2023 14:50:04 +0530 Subject: [PATCH 03/47] Delete hovers, use sitekit --- sites/kit.svelte.dev/src/app.html | 4 +- .../src/lib/docs/client/Tooltip.svelte | 67 ------------------- .../src/lib/docs/client/hovers.js | 60 ----------------- .../src/routes/docs/[slug]/+page.svelte | 5 +- 4 files changed, 4 insertions(+), 132 deletions(-) delete mode 100644 sites/kit.svelte.dev/src/lib/docs/client/Tooltip.svelte delete mode 100644 sites/kit.svelte.dev/src/lib/docs/client/hovers.js diff --git a/sites/kit.svelte.dev/src/app.html b/sites/kit.svelte.dev/src/app.html index 8d9bc3c1300f..6f92491d2279 100644 --- a/sites/kit.svelte.dev/src/app.html +++ b/sites/kit.svelte.dev/src/app.html @@ -20,10 +20,10 @@ .ts-version { display: none; } - .prefers-ts .js-version { + body.prefers-ts .js-version { display: none; } - .prefers-ts .ts-version { + body.prefers-ts .ts-version { display: inline; } .no-js .ts-toggle { diff --git a/sites/kit.svelte.dev/src/lib/docs/client/Tooltip.svelte b/sites/kit.svelte.dev/src/lib/docs/client/Tooltip.svelte deleted file mode 100644 index 56ecc6f5383a..000000000000 --- a/sites/kit.svelte.dev/src/lib/docs/client/Tooltip.svelte +++ /dev/null @@ -1,67 +0,0 @@ - - - -
    -
    - {@html html} -
    -
    - - diff --git a/sites/kit.svelte.dev/src/lib/docs/client/hovers.js b/sites/kit.svelte.dev/src/lib/docs/client/hovers.js deleted file mode 100644 index f0a079f2a557..000000000000 --- a/sites/kit.svelte.dev/src/lib/docs/client/hovers.js +++ /dev/null @@ -1,60 +0,0 @@ -import { onMount } from 'svelte'; -import Tooltip from './Tooltip.svelte'; - -export function setup() { - onMount(() => { - let tooltip; - let timeout; - - function over(event) { - if (event.target.tagName === 'DATA-LSP') { - clearTimeout(timeout); - - if (!tooltip) { - tooltip = new Tooltip({ - target: document.body - }); - - tooltip.$on('mouseenter', () => { - clearTimeout(timeout); - }); - - tooltip.$on('mouseleave', () => { - clearTimeout(timeout); - tooltip.$destroy(); - tooltip = null; - }); - } - - const rect = event.target.getBoundingClientRect(); - const html = event.target.getAttribute('lsp'); - - const x = (rect.left + rect.right) / 2 + window.scrollX; - const y = rect.top + window.scrollY; - - tooltip.$set({ - html, - x, - y - }); - } - } - - function out(event) { - if (event.target.tagName === 'DATA-LSP') { - timeout = setTimeout(() => { - tooltip.$destroy(); - tooltip = null; - }, 200); - } - } - - window.addEventListener('mouseover', over); - window.addEventListener('mouseout', out); - - return () => { - window.removeEventListener('mouseover', over); - window.removeEventListener('mouseout', out); - }; - }); -} diff --git a/sites/kit.svelte.dev/src/routes/docs/[slug]/+page.svelte b/sites/kit.svelte.dev/src/routes/docs/[slug]/+page.svelte index bd9e74cebbb0..6ada8594ba21 100644 --- a/sites/kit.svelte.dev/src/routes/docs/[slug]/+page.svelte +++ b/sites/kit.svelte.dev/src/routes/docs/[slug]/+page.svelte @@ -1,8 +1,7 @@ From 63fd2e0c2819b937921a3e32225d3c32c7748efa Mon Sep 17 00:00:00 2001 From: Puru Vijay Date: Mon, 19 Jun 2023 15:17:26 +0530 Subject: [PATCH 04/47] Remove logs, enable caching --- sites/kit.svelte.dev/src/lib/server/docs/index.js | 2 +- sites/kit.svelte.dev/src/lib/server/twoslash-banner.js | 2 -- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/sites/kit.svelte.dev/src/lib/server/docs/index.js b/sites/kit.svelte.dev/src/lib/server/docs/index.js index 19aefe2107ca..44d2a6363b11 100644 --- a/sites/kit.svelte.dev/src/lib/server/docs/index.js +++ b/sites/kit.svelte.dev/src/lib/server/docs/index.js @@ -28,7 +28,7 @@ export async function get_parsed_docs(docs_data, slug) { content: await renderContentMarkdown(page.file, page.content, { modules, twoslashBanner: kit_twoslash_banner, - cacheCodeSnippets: false + cacheCodeSnippets: true }) }; } diff --git a/sites/kit.svelte.dev/src/lib/server/twoslash-banner.js b/sites/kit.svelte.dev/src/lib/server/twoslash-banner.js index 7258f52e833d..d5a30229ba0a 100644 --- a/sites/kit.svelte.dev/src/lib/server/twoslash-banner.js +++ b/sites/kit.svelte.dev/src/lib/server/twoslash-banner.js @@ -30,8 +30,6 @@ export const kit_twoslash_banner = (filename, source, language, options) => { .params.map((param) => `${param.name}: string`) .join(', '); - console.log(options); - injected.push( `// @filename: $types.d.ts`, `import type * as Kit from '@sveltejs/kit';`, From b8398eb2beb1d481eaaa11583d4af47eab88e315 Mon Sep 17 00:00:00 2001 From: Puru Vijay Date: Mon, 19 Jun 2023 15:33:17 +0530 Subject: [PATCH 05/47] Move FAQ to docs --- .../20-creating-a-project.md | 2 +- .../70-adapter-cloudflare-workers.md | 2 +- .../01-frequently-asked-questions.md} | 45 ++++++++++++++++++- .../docs/60-appendix/05-integrations.md | 2 +- .../docs/60-appendix/10-migrating.md | 2 +- .../60-appendix/20-additional-resources.md | 2 +- documentation/faq/00-other-resources.md | 5 --- documentation/faq/20-hmr.md | 5 --- documentation/faq/60-read-package-json.md | 19 -------- documentation/faq/70-packages.md | 16 ------- .../src/routes/content.json/content.server.js | 5 --- .../kit.svelte.dev/src/routes/faq/+server.js | 5 +++ 12 files changed, 54 insertions(+), 56 deletions(-) rename documentation/{faq/80-integrations.md => docs/60-appendix/01-frequently-asked-questions.md} (61%) delete mode 100644 documentation/faq/00-other-resources.md delete mode 100644 documentation/faq/20-hmr.md delete mode 100644 documentation/faq/60-read-package-json.md delete mode 100644 documentation/faq/70-packages.md create mode 100644 sites/kit.svelte.dev/src/routes/faq/+server.js diff --git a/documentation/docs/10-getting-started/20-creating-a-project.md b/documentation/docs/10-getting-started/20-creating-a-project.md index 57070bcc0692..094d51d117ee 100644 --- a/documentation/docs/10-getting-started/20-creating-a-project.md +++ b/documentation/docs/10-getting-started/20-creating-a-project.md @@ -11,7 +11,7 @@ npm install npm run dev ``` -The first command will scaffold a new project in the `my-app` directory asking you if you'd like to set up some basic tooling such as TypeScript. See the FAQ for [pointers on setting up additional tooling](../faq#integrations). The subsequent commands will then install its dependencies and start a server on [localhost:5173](http://localhost:5173). +The first command will scaffold a new project in the `my-app` directory asking you if you'd like to set up some basic tooling such as TypeScript. See the FAQ for [pointers on setting up additional tooling](/docs/faq#integrations). The subsequent commands will then install its dependencies and start a server on [localhost:5173](http://localhost:5173). There are two basic concepts: diff --git a/documentation/docs/25-build-and-deploy/70-adapter-cloudflare-workers.md b/documentation/docs/25-build-and-deploy/70-adapter-cloudflare-workers.md index cecba1559f53..1ae6b7282e49 100644 --- a/documentation/docs/25-build-and-deploy/70-adapter-cloudflare-workers.md +++ b/documentation/docs/25-build-and-deploy/70-adapter-cloudflare-workers.md @@ -114,7 +114,7 @@ export {}; ### Worker size limits -When deploying to workers, the server generated by SvelteKit is bundled into a single file. Wrangler will fail to publish your worker if it exceeds [the size limits](https://developers.cloudflare.com/workers/platform/limits/#worker-size) after minification. You're unlikely to hit this limit usually, but some large libraries can cause this to happen. In that case, you can try to reduce the size of your worker by only importing such libraries on the client side. See [the FAQ](../faq#how-do-i-use-a-client-side-only-library-that-depends-on-document-or-window) for more information. +When deploying to workers, the server generated by SvelteKit is bundled into a single file. Wrangler will fail to publish your worker if it exceeds [the size limits](https://developers.cloudflare.com/workers/platform/limits/#worker-size) after minification. You're unlikely to hit this limit usually, but some large libraries can cause this to happen. In that case, you can try to reduce the size of your worker by only importing such libraries on the client side. See [the FAQ](/docs/faq#how-do-i-use-a-client-side-only-library-that-depends-on-document-or-window) for more information. ### Accessing the file system diff --git a/documentation/faq/80-integrations.md b/documentation/docs/60-appendix/01-frequently-asked-questions.md similarity index 61% rename from documentation/faq/80-integrations.md rename to documentation/docs/60-appendix/01-frequently-asked-questions.md index 32d5619d754d..8b34c73e1153 100644 --- a/documentation/faq/80-integrations.md +++ b/documentation/docs/60-appendix/01-frequently-asked-questions.md @@ -1,7 +1,50 @@ --- -title: How do I use X with SvelteKit? +title: Frequently asked questions --- +## Other resources + +Please see [the Svelte FAQ](https://svelte.dev/faq) and [`vite-plugin-svelte` FAQ](https://github.com/sveltejs/vite-plugin-svelte/blob/main/docs/faq.md) as well for the answers to questions deriving from those libraries. + +## How do I use HMR with SvelteKit? + +SvelteKit has HMR enabled by default powered by [svelte-hmr](https://github.com/sveltejs/svelte-hmr). If you saw [Rich's presentation at the 2020 Svelte Summit](https://svelte.dev/blog/whats-the-deal-with-sveltekit), you may have seen a more powerful-looking version of HMR presented. This demo had `svelte-hmr`'s `preserveLocalState` flag on. This flag is now off by default because it may lead to unexpected behaviour and edge cases. But don't worry, you are still getting HMR with SvelteKit! If you'd like to preserve local state you can use the `@hmr:keep` or `@hmr:keep-all` directives as documented on the [svelte-hmr](https://github.com/sveltejs/svelte-hmr) page. + +## How do I include details from package.json in my application? + +You cannot directly require JSON files, since SvelteKit expects [`svelte.config.js`](docs/configuration) to be an ES module. If you'd like to include your application's version number or other information from `package.json` in your application, you can load JSON like so: + +```js +/// file: svelte.config.js +// @filename: index.js +/// +import { URL } from 'url'; +// ---cut--- +import { readFileSync } from 'fs'; +import { fileURLToPath } from 'url'; + +const file = fileURLToPath(new URL('package.json', import.meta.url)); +const json = readFileSync(file, 'utf8'); +const pkg = JSON.parse(json); +``` + +## How do I fix the error I'm getting trying to include a package? + +Most issues related to including a library are due to incorrect packaging. You can check if a library's packaging is compatible with Node.js by entering it into [the publint website](https://publint.dev/). + +Here are a few things to keep in mind when checking if a library is packaged correctly: + +- `exports` takes precedence over the other entry point fields such as `main` and `module`. Adding an `exports` field may not be backwards-compatible as it prevents deep imports. +- ESM files should end with `.mjs` unless `"type": "module"` is set in which any case CommonJS files should end with `.cjs`. +- `main` should be defined if `exports` is not. It should be either a CommonJS or ESM file and adhere to the previous bullet. If a `module` field is defined, it should refer to an ESM file. +- Svelte components should be distributed as uncompiled `.svelte` files with any JS in the package written as ESM only. Custom script and style languages, like TypeScript and SCSS, should be preprocessed as vanilla JS and CSS respectively. We recommend using [`svelte-package`](docs/packaging) for packaging Svelte libraries, which will do this for you. + +Libraries work best in the browser with Vite when they distribute an ESM version, especially if they are dependencies of a Svelte component library. You may wish to suggest to library authors that they provide an ESM version. However, CommonJS (CJS) dependencies should work as well since, by default, [`vite-plugin-svelte` will ask Vite to pre-bundle them](https://github.com/sveltejs/vite-plugin-svelte/blob/main/docs/faq.md#what-is-going-on-with-vite-and-pre-bundling-dependencies) using `esbuild` to convert them to ESM. + +If you are still encountering issues we recommend searching both [the Vite issue tracker](https://github.com/vitejs/vite/issues) and the issue tracker of the library in question. Sometimes issues can be worked around by fiddling with the [`optimizeDeps`](https://vitejs.dev/config/#dep-optimization-options) or [`ssr`](https://vitejs.dev/config/#ssr-options) config values though we recommend this as only a short-term workaround in favor of fixing the library in question. + +## How do I use X with SvelteKit? + Make sure you've read the [documentation section on integrations](docs/integrations). If you're still having trouble, solutions to common issues are listed below. ### How do I setup a database? diff --git a/documentation/docs/60-appendix/05-integrations.md b/documentation/docs/60-appendix/05-integrations.md index bbf456872f3c..f87b06c2b51c 100644 --- a/documentation/docs/60-appendix/05-integrations.md +++ b/documentation/docs/60-appendix/05-integrations.md @@ -31,4 +31,4 @@ You will need to install `svelte-preprocess` with `npm install --save-dev svelte ## Integration FAQs -The SvelteKit FAQ has a [section on integrations](../faq#integrations), which may be helpful if you still have questions. +The SvelteKit FAQ has a [section on integrations](/docs/faq#integrations), which may be helpful if you still have questions. diff --git a/documentation/docs/60-appendix/10-migrating.md b/documentation/docs/60-appendix/10-migrating.md index 5335f7a7d24c..358b74deb783 100644 --- a/documentation/docs/60-appendix/10-migrating.md +++ b/documentation/docs/60-appendix/10-migrating.md @@ -146,7 +146,7 @@ To support this environment-agnostic behavior, `fetch` is now available in the g ## Integrations -See [the FAQ](../faq#integrations) for detailed information about integrations. +See [the FAQ](/docs/faq#integrations) for detailed information about integrations. ### HTML minifier diff --git a/documentation/docs/60-appendix/20-additional-resources.md b/documentation/docs/60-appendix/20-additional-resources.md index 4877ef984568..00c21dc25e68 100644 --- a/documentation/docs/60-appendix/20-additional-resources.md +++ b/documentation/docs/60-appendix/20-additional-resources.md @@ -4,7 +4,7 @@ title: Additional resources ## FAQs -Please see the [SvelteKit FAQ](../faq) for solutions to common issues and helpful tips and tricks. +Please see the [SvelteKit FAQ](/docs/faq) for solutions to common issues and helpful tips and tricks. The [Svelte FAQ](https://svelte.dev/faq) and [`vite-plugin-svelte` FAQ](https://github.com/sveltejs/vite-plugin-svelte/blob/main/docs/faq.md) may also be helpful for questions deriving from those libraries. diff --git a/documentation/faq/00-other-resources.md b/documentation/faq/00-other-resources.md deleted file mode 100644 index 859253c7b869..000000000000 --- a/documentation/faq/00-other-resources.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Other resources ---- - -Please see [the Svelte FAQ](https://svelte.dev/faq) and [`vite-plugin-svelte` FAQ](https://github.com/sveltejs/vite-plugin-svelte/blob/main/docs/faq.md) as well for the answers to questions deriving from those libraries. diff --git a/documentation/faq/20-hmr.md b/documentation/faq/20-hmr.md deleted file mode 100644 index 6c79489b9925..000000000000 --- a/documentation/faq/20-hmr.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: How do I use HMR with SvelteKit? ---- - -SvelteKit has HMR enabled by default powered by [svelte-hmr](https://github.com/sveltejs/svelte-hmr). If you saw [Rich's presentation at the 2020 Svelte Summit](https://svelte.dev/blog/whats-the-deal-with-sveltekit), you may have seen a more powerful-looking version of HMR presented. This demo had `svelte-hmr`'s `preserveLocalState` flag on. This flag is now off by default because it may lead to unexpected behaviour and edge cases. But don't worry, you are still getting HMR with SvelteKit! If you'd like to preserve local state you can use the `@hmr:keep` or `@hmr:keep-all` directives as documented on the [svelte-hmr](https://github.com/sveltejs/svelte-hmr) page. diff --git a/documentation/faq/60-read-package-json.md b/documentation/faq/60-read-package-json.md deleted file mode 100644 index f99dca9d0f7b..000000000000 --- a/documentation/faq/60-read-package-json.md +++ /dev/null @@ -1,19 +0,0 @@ ---- -title: How do I include details from package.json in my application? ---- - -You cannot directly require JSON files, since SvelteKit expects [`svelte.config.js`](docs/configuration) to be an ES module. If you'd like to include your application's version number or other information from `package.json` in your application, you can load JSON like so: - -```js -/// file: svelte.config.js -// @filename: index.js -/// -import { URL } from 'url'; -// ---cut--- -import { readFileSync } from 'fs'; -import { fileURLToPath } from 'url'; - -const file = fileURLToPath(new URL('package.json', import.meta.url)); -const json = readFileSync(file, 'utf8'); -const pkg = JSON.parse(json); -``` diff --git a/documentation/faq/70-packages.md b/documentation/faq/70-packages.md deleted file mode 100644 index 5a8d1ebe3c95..000000000000 --- a/documentation/faq/70-packages.md +++ /dev/null @@ -1,16 +0,0 @@ ---- -title: How do I fix the error I'm getting trying to include a package? ---- - -Most issues related to including a library are due to incorrect packaging. You can check if a library's packaging is compatible with Node.js by entering it into [the publint website](https://publint.dev/). - -Here are a few things to keep in mind when checking if a library is packaged correctly: - -- `exports` takes precedence over the other entry point fields such as `main` and `module`. Adding an `exports` field may not be backwards-compatible as it prevents deep imports. -- ESM files should end with `.mjs` unless `"type": "module"` is set in which any case CommonJS files should end with `.cjs`. -- `main` should be defined if `exports` is not. It should be either a CommonJS or ESM file and adhere to the previous bullet. If a `module` field is defined, it should refer to an ESM file. -- Svelte components should be distributed as uncompiled `.svelte` files with any JS in the package written as ESM only. Custom script and style languages, like TypeScript and SCSS, should be preprocessed as vanilla JS and CSS respectively. We recommend using [`svelte-package`](docs/packaging) for packaging Svelte libraries, which will do this for you. - -Libraries work best in the browser with Vite when they distribute an ESM version, especially if they are dependencies of a Svelte component library. You may wish to suggest to library authors that they provide an ESM version. However, CommonJS (CJS) dependencies should work as well since, by default, [`vite-plugin-svelte` will ask Vite to pre-bundle them](https://github.com/sveltejs/vite-plugin-svelte/blob/main/docs/faq.md#what-is-going-on-with-vite-and-pre-bundling-dependencies) using `esbuild` to convert them to ESM. - -If you are still encountering issues we recommend searching both [the Vite issue tracker](https://github.com/vitejs/vite/issues) and the issue tracker of the library in question. Sometimes issues can be worked around by fiddling with the [`optimizeDeps`](https://vitejs.dev/config/#dep-optimization-options) or [`ssr`](https://vitejs.dev/config/#ssr-options) config values though we recommend this as only a short-term workaround in favor of fixing the library in question. diff --git a/sites/kit.svelte.dev/src/routes/content.json/content.server.js b/sites/kit.svelte.dev/src/routes/content.json/content.server.js index 114748c724b9..fe8cddf6c264 100644 --- a/sites/kit.svelte.dev/src/routes/content.json/content.server.js +++ b/sites/kit.svelte.dev/src/routes/content.json/content.server.js @@ -15,11 +15,6 @@ const categories = [ label: null, href: (parts) => parts.length > 1 ? `/docs/${parts[0]}#${parts.slice(1).join('-')}` : `/docs/${parts[0]}` - }, - { - slug: 'faq', - label: 'FAQ', - href: (parts) => `/faq#${parts.join('-')}` } ]; diff --git a/sites/kit.svelte.dev/src/routes/faq/+server.js b/sites/kit.svelte.dev/src/routes/faq/+server.js new file mode 100644 index 000000000000..e8a4620a5740 --- /dev/null +++ b/sites/kit.svelte.dev/src/routes/faq/+server.js @@ -0,0 +1,5 @@ +import { redirect } from '@sveltejs/kit'; + +export const GET = ({}) => { + throw redirect(301, '/docs/frequently-asked-questions'); +}; From 905bbc9e2da89fd53f942959a1c494f62fb77bb8 Mon Sep 17 00:00:00 2001 From: Puru Vijay Date: Tue, 20 Jun 2023 02:13:49 +0530 Subject: [PATCH 06/47] Load of fixes --- .../docs/20-core-concepts/30-form-actions.md | 2 +- documentation/docs/50-reference/40-types.md | 10 +-- pnpm-lock.yaml | 5 +- sites/kit.svelte.dev/package.json | 2 +- sites/kit.svelte.dev/scripts/types/index.js | 65 ++++++++++++--- .../src/lib/server/docs/index.js | 18 ++--- .../kit.svelte.dev/src/lib/server/renderer.js | 79 +++++++++++++++++++ .../src/lib/server/twoslash-banner.js | 63 --------------- .../src/routes/docs/[slug]/+page.svelte | 1 - 9 files changed, 151 insertions(+), 94 deletions(-) create mode 100644 sites/kit.svelte.dev/src/lib/server/renderer.js delete mode 100644 sites/kit.svelte.dev/src/lib/server/twoslash-banner.js diff --git a/documentation/docs/20-core-concepts/30-form-actions.md b/documentation/docs/20-core-concepts/30-form-actions.md index 8b271abb9852..5998a710285c 100644 --- a/documentation/docs/20-core-concepts/30-form-actions.md +++ b/documentation/docs/20-core-concepts/30-form-actions.md @@ -469,7 +469,7 @@ Form actions are the preferred way to send data to the server, since they can be ``` ```js -// @errors: 2355 1360 +// @errors: 2355 1360 2322. /// file: api/ci/+server.js /** @type {import('./$types').RequestHandler} */ diff --git a/documentation/docs/50-reference/40-types.md b/documentation/docs/50-reference/40-types.md index e5eb27e89b68..ba34e6543cb1 100644 --- a/documentation/docs/50-reference/40-types.md +++ b/documentation/docs/50-reference/40-types.md @@ -22,10 +22,10 @@ The `RequestHandler` and `Load` types both accept a `Params` argument allowing y /// file: src/routes/[foo]/[bar]/[baz]/+page.server.js // @errors: 2355 2322 1360 /** @type {import('@sveltejs/kit').RequestHandler<{ - * foo: string; - * bar: string; - * baz: string - * }>} */ + foo: string; + bar: string; + baz: string + }>} */ export async function GET({ params }) { // ... } @@ -98,7 +98,7 @@ export async function load({ params, fetch }) { > For this to work, your own `tsconfig.json` or `jsconfig.json` should extend from the generated `.svelte-kit/tsconfig.json` (where `.svelte-kit` is your [`outDir`](configuration#outdir)): > -> { "extends": "./.svelte-kit/tsconfig.json" } +> `{ "extends": "./.svelte-kit/tsconfig.json" }` ### Default tsconfig.json diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index c48dcf536639..306f4f0eb20c 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1041,8 +1041,8 @@ importers: specifier: ^0.2.9 version: 0.2.9 typescript: - specifier: ^5.1.3 - version: 5.1.3 + specifier: ^5.0.4 + version: 5.0.4 vite: specifier: ^4.3.6 version: 4.3.6(@types/node@16.18.6) @@ -6128,7 +6128,6 @@ packages: resolution: {integrity: sha512-cW9T5W9xY37cc+jfEnaUvX91foxtHkza3Nw3wkoF4sSlKn0MONdkdEndig/qPBWXNkmplh3NzayQzCiHM4/hqw==} engines: {node: '>=12.20'} hasBin: true - dev: false /typescript@5.1.3: resolution: {integrity: sha512-XH627E9vkeqhlZFQuL+UsyAXEnibT0kWR2FWONlr4sTjvxyJYnyefgrkyECLzM5NenmKzRAy2rR/OlYLA1HkZw==} diff --git a/sites/kit.svelte.dev/package.json b/sites/kit.svelte.dev/package.json index c4e108c11b9c..b478913a5eac 100644 --- a/sites/kit.svelte.dev/package.json +++ b/sites/kit.svelte.dev/package.json @@ -25,7 +25,7 @@ "shiki-twoslash": "^3.1.0", "svelte": "^3.56.0", "tiny-glob": "^0.2.9", - "typescript": "^5.1.3", + "typescript": "^5.0.4", "vite": "^4.3.6", "vite-imagetools": "^4.0.19", "vitest": "^0.31.0" diff --git a/sites/kit.svelte.dev/scripts/types/index.js b/sites/kit.svelte.dev/scripts/types/index.js index 674c7302db6d..fb568f06dd70 100644 --- a/sites/kit.svelte.dev/scripts/types/index.js +++ b/sites/kit.svelte.dev/scripts/types/index.js @@ -5,7 +5,14 @@ import prettier from 'prettier'; import { mkdirp } from '../../../../packages/kit/src/utils/filesystem.js'; import { fileURLToPath } from 'url'; -/** @typedef {{ name: string; comment: string; markdown: string; }} Extracted */ +/** @typedef {{ + * name: string; + * comment: string; + * markdown?: string; + * snippet: string; + * deprecated: string | null; + * children: Extracted[] } + * } Extracted */ /** @type {Array<{ name: string; comment: string; exports: Extracted[]; types: Extracted[]; exempt?: boolean; }>} */ const modules = []; @@ -28,6 +35,7 @@ function get_types(code, statements) { const export_modifier = modifiers?.find( (modifier) => modifier.kind === ts.SyntaxKind.ExportKeyword ); + if (!export_modifier) continue; if ( @@ -47,29 +55,41 @@ function get_types(code, statements) { let start = statement.pos; let comment = ''; + /** @type {string | null} */ + let deprecated_notice = null; // @ts-ignore i think typescript is bad at typescript if (statement.jsDoc) { // @ts-ignore - comment = statement.jsDoc[0].comment; + const jsDoc = statement.jsDoc[0]; + + comment = jsDoc.comment; + + if (jsDoc?.tags?.[0]?.tagName?.escapedText === 'deprecated') { + deprecated_notice = jsDoc.tags[0].comment; + } + // @ts-ignore - start = statement.jsDoc[0].end; + start = jsDoc.end; } const i = code.indexOf('export', start); start = i + 6; - /** @type {string[]} */ - const children = []; + /** @type {Extracted[]} */ + let children = []; let snippet_unformatted = code.slice(start, statement.end).trim(); - if (ts.isInterfaceDeclaration(statement)) { + if (ts.isInterfaceDeclaration(statement) || ts.isClassDeclaration(statement)) { if (statement.members.length > 0) { for (const member of statement.members) { + // @ts-ignore children.push(munge_type_element(member)); } + children = children.filter(Boolean); + // collapse `interface Foo {/* lots of stuff*/}` into `interface Foo {…}` const first = statement.members.at(0); const last = statement.members.at(-1); @@ -90,7 +110,7 @@ function get_types(code, statements) { const snippet = prettier .format(snippet_unformatted, { parser: 'typescript', - printWidth: 80, + printWidth: 60, useTabs: true, singleQuote: true, trailingComma: 'none' @@ -103,7 +123,13 @@ function get_types(code, statements) { ? exports : types; - collection.push({ name, comment, snippet, children }); + collection.push({ + name, + comment, + snippet, + children, + deprecated: deprecated_notice + }); } } @@ -121,13 +147,15 @@ function munge_type_element(member, depth = 1) { // @ts-ignore const doc = member.jsDoc?.[0]; - /** @type {string} */ + if (/private api/i.test(doc?.comment)) return; + + /** @type {string[]} */ const children = []; const name = member.name?.escapedText; let snippet = member.getText(); - for (let i = 0; i < depth; i += 1) { + for (let i = -1; i < depth; i += 1) { snippet = snippet.replace(/^\t/gm, ''); } @@ -153,6 +181,14 @@ function munge_type_element(member, depth = 1) { const type = tag.tagName.escapedText; switch (tag.tagName.escapedText) { + case 'private': + bullets.push(`- private ${tag.comment}`); + break; + + case 'readonly': + bullets.push(`- readonly ${tag.comment}`); + break; + case 'param': bullets.push(`- \`${tag.name.getText()}\` ${tag.comment}`); break; @@ -165,11 +201,17 @@ function munge_type_element(member, depth = 1) { bullets.push(`- returns ${tag.comment}`); break; + case 'deprecated': + bullets.push(`- deprecated ${tag.comment}`); + break; + default: console.log(`unhandled JSDoc tag: ${type}`); // TODO indicate deprecated stuff } } + if (name?.includes('alias')) console.log(member?.jsDoc[0].tags); + return { name, snippet, @@ -204,9 +246,12 @@ function read_d_ts_file(file) { // we didn't ignore this error specifically for `/// file:` code examples const str = fs.readFileSync(resolved, 'utf-8'); + //! For some reason, typescript is reading this @errors as a jsdoc tag, and splitting it into separate pieces return str.replace(/(\s*\*\s*)```js([\s\S]+?)```/g, (match, prefix, code) => { return `${prefix}\`\`\`js${prefix}// @errors: 7031${code}\`\`\``; }); + + return str; } { diff --git a/sites/kit.svelte.dev/src/lib/server/docs/index.js b/sites/kit.svelte.dev/src/lib/server/docs/index.js index 44d2a6363b11..92499088ae0f 100644 --- a/sites/kit.svelte.dev/src/lib/server/docs/index.js +++ b/sites/kit.svelte.dev/src/lib/server/docs/index.js @@ -1,16 +1,16 @@ import { base as app_base } from '$app/paths'; -import { modules } from '$lib/generated/type-info.js'; import { escape, extractFrontmatter, markedTransform, normalizeSlugify, removeMarkdown, - renderContentMarkdown + replaceExportTypePlaceholders } from '@sveltejs/site-kit/markdown'; import fs from 'node:fs'; import { CONTENT_BASE_PATHS } from '../../../constants.js'; -import { kit_twoslash_banner } from '../twoslash-banner.js'; +import { render_content } from '../renderer'; +import { modules } from '$lib/generated/type-info.js'; /** * @param {import('./types').DocsData} docs_data @@ -25,11 +25,7 @@ export async function get_parsed_docs(docs_data, slug) { return { ...page, - content: await renderContentMarkdown(page.file, page.content, { - modules, - twoslashBanner: kit_twoslash_banner, - cacheCodeSnippets: true - }) + content: await render_content(page.file, page.content) }; } @@ -104,12 +100,14 @@ export function get_docs_list(docs_data) { /** @param {string} markdown */ function get_sections(markdown) { - const headingRegex = /^##\s+(.*)$/gm; + const headingRegex = /^###?\s+(.*)$/gm; /** @type {import('./types').Section[]} */ const secondLevelHeadings = []; let match; - while ((match = headingRegex.exec(markdown)) !== null) { + const placeholders_rendered = replaceExportTypePlaceholders(markdown, modules); + + while ((match = headingRegex.exec(placeholders_rendered)) !== null) { secondLevelHeadings.push({ title: removeMarkdown( escape(markedTransform(match[1], { paragraph: (txt) => txt })) diff --git a/sites/kit.svelte.dev/src/lib/server/renderer.js b/sites/kit.svelte.dev/src/lib/server/renderer.js new file mode 100644 index 000000000000..8195cbfba65d --- /dev/null +++ b/sites/kit.svelte.dev/src/lib/server/renderer.js @@ -0,0 +1,79 @@ +import { modules } from '$lib/generated/type-info.js'; +import { renderContentMarkdown, slugify } from '@sveltejs/site-kit/markdown'; +import { parse_route_id } from '../../../../../packages/kit/src/utils/routing.js'; + +/** + * @param {string} filename + * @param {string} body + * @returns + */ +export const render_content = (filename, body) => + renderContentMarkdown(filename, body, { + cacheCodeSnippets: true, + modules, + + resolveTypeLinks: (module_name, type_name) => { + if (module_name === '@sveltejs/kit') module_name = 'Public Types'; + + return `/docs/types#${slugify(module_name)}-${slugify(type_name)}`; + }, + + twoslashBanner: (filename, source, language, options) => { + const injected = []; + + if ( + source.includes('$app/') || + source.includes('$service-worker') || + source.includes('@sveltejs/kit/') + ) { + injected.push(`// @filename: ambient-kit.d.ts`, `/// `); + } + + if (source.includes('$env/')) { + // TODO we're hardcoding static env vars that are used in code examples + // in the types, which isn't... totally ideal, but will do for now + injected.push( + `declare module '$env/dynamic/private' { export const env: Record }`, + `declare module '$env/dynamic/public' { export const env: Record }`, + `declare module '$env/static/private' { export const API_KEY: string }`, + `declare module '$env/static/public' { export const PUBLIC_BASE_URL: string }` + ); + } + + if (source.includes('./$types') && !source.includes('@filename: $types.d.ts')) { + const params = parse_route_id(options.file || `+page.${language}`) + .params.map((param) => `${param.name}: string`) + .join(', '); + + injected.push( + `// @filename: $types.d.ts`, + `import type * as Kit from '@sveltejs/kit';`, + `export type PageLoad = Kit.Load<{${params}}>;`, + `export type PageServerLoad = Kit.ServerLoad<{${params}}>;`, + `export type LayoutLoad = Kit.Load<{${params}}>;`, + `export type LayoutServerLoad = Kit.ServerLoad<{${params}}>;`, + `export type RequestHandler = Kit.RequestHandler<{${params}}>;`, + `export type Action = Kit.Action<{${params}}>;`, + `export type Actions = Kit.Actions<{${params}}>;`, + `export type EntryGenerator = () => Promise> | Array<{${params}}>;` + ); + } + + // special case — we need to make allowances for code snippets coming + // from e.g. ambient.d.ts + if (filename.endsWith('30-modules.md')) { + injected.push('// @errors: 7006 7031'); + } + + if (filename.endsWith('10-configuration.md')) { + injected.push('// @errors: 2307'); + } + + // another special case + if (source.includes('$lib/types')) { + injected.push(`declare module '$lib/types' { export interface User {} }`); + } + + return injected.join('\n'); + } + }); diff --git a/sites/kit.svelte.dev/src/lib/server/twoslash-banner.js b/sites/kit.svelte.dev/src/lib/server/twoslash-banner.js deleted file mode 100644 index d5a30229ba0a..000000000000 --- a/sites/kit.svelte.dev/src/lib/server/twoslash-banner.js +++ /dev/null @@ -1,63 +0,0 @@ -import { parse_route_id } from '../../../../../packages/kit/src/utils/routing.js'; - -/** - * @type {Parameters['2']['twoslashBanner']} - */ -export const kit_twoslash_banner = (filename, source, language, options) => { - const injected = []; - - if ( - source.includes('$app/') || - source.includes('$service-worker') || - source.includes('@sveltejs/kit/') - ) { - injected.push(`// @filename: ambient-kit.d.ts`, `/// `); - } - - if (source.includes('$env/')) { - // TODO we're hardcoding static env vars that are used in code examples - // in the types, which isn't... totally ideal, but will do for now - injected.push( - `declare module '$env/dynamic/private' { export const env: Record }`, - `declare module '$env/dynamic/public' { export const env: Record }`, - `declare module '$env/static/private' { export const API_KEY: string }`, - `declare module '$env/static/public' { export const PUBLIC_BASE_URL: string }` - ); - } - - if (source.includes('./$types') && !source.includes('@filename: $types.d.ts')) { - const params = parse_route_id(options.file || `+page.${language}`) - .params.map((param) => `${param.name}: string`) - .join(', '); - - injected.push( - `// @filename: $types.d.ts`, - `import type * as Kit from '@sveltejs/kit';`, - `export type PageLoad = Kit.Load<{${params}}>;`, - `export type PageServerLoad = Kit.ServerLoad<{${params}}>;`, - `export type LayoutLoad = Kit.Load<{${params}}>;`, - `export type LayoutServerLoad = Kit.ServerLoad<{${params}}>;`, - `export type RequestHandler = Kit.RequestHandler<{${params}}>;`, - `export type Action = Kit.Action<{${params}}>;`, - `export type Actions = Kit.Actions<{${params}}>;`, - `export type EntryGenerator = () => Promise> | Array<{${params}}>;` - ); - } - - // special case — we need to make allowances for code snippets coming - // from e.g. ambient.d.ts - if (filename.endsWith('30-modules.md')) { - injected.push('// @errors: 7006 7031'); - } - - if (filename.endsWith('10-configuration.md')) { - injected.push('// @errors: 2307'); - } - - // another special case - if (source.includes('$lib/types')) { - injected.push(`declare module '$lib/types' { export interface User {} }`); - } - - return injected.join('\n'); -}; diff --git a/sites/kit.svelte.dev/src/routes/docs/[slug]/+page.svelte b/sites/kit.svelte.dev/src/routes/docs/[slug]/+page.svelte index 6ada8594ba21..973c563e82ec 100644 --- a/sites/kit.svelte.dev/src/routes/docs/[slug]/+page.svelte +++ b/sites/kit.svelte.dev/src/routes/docs/[slug]/+page.svelte @@ -3,7 +3,6 @@ import { Icon } from '@sveltejs/site-kit/components'; import { DocsOnThisPage, setupDocsHovers } from '@sveltejs/site-kit/docs'; - /** @type {import('./$types').PageData} */ export let data; $: pages = data.sections.flatMap((section) => section.pages); From 96cf8431d7e2b7241a64cccea52adc7fb3b4381f Mon Sep 17 00:00:00 2001 From: Puru Vijay Date: Tue, 20 Jun 2023 02:18:59 +0530 Subject: [PATCH 07/47] Somewhat satisfactory --- documentation/docs/10-getting-started/20-creating-a-project.md | 2 +- .../docs/25-build-and-deploy/70-adapter-cloudflare-workers.md | 2 +- documentation/docs/60-appendix/05-integrations.md | 2 +- documentation/docs/60-appendix/10-migrating.md | 2 +- documentation/docs/60-appendix/20-additional-resources.md | 2 +- sites/kit.svelte.dev/src/routes/+layout.svelte | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/documentation/docs/10-getting-started/20-creating-a-project.md b/documentation/docs/10-getting-started/20-creating-a-project.md index 094d51d117ee..56c05c8b8c2c 100644 --- a/documentation/docs/10-getting-started/20-creating-a-project.md +++ b/documentation/docs/10-getting-started/20-creating-a-project.md @@ -11,7 +11,7 @@ npm install npm run dev ``` -The first command will scaffold a new project in the `my-app` directory asking you if you'd like to set up some basic tooling such as TypeScript. See the FAQ for [pointers on setting up additional tooling](/docs/faq#integrations). The subsequent commands will then install its dependencies and start a server on [localhost:5173](http://localhost:5173). +The first command will scaffold a new project in the `my-app` directory asking you if you'd like to set up some basic tooling such as TypeScript. See the FAQ for [pointers on setting up additional tooling](/docs/frequently-asked-questions#integrations). The subsequent commands will then install its dependencies and start a server on [localhost:5173](http://localhost:5173). There are two basic concepts: diff --git a/documentation/docs/25-build-and-deploy/70-adapter-cloudflare-workers.md b/documentation/docs/25-build-and-deploy/70-adapter-cloudflare-workers.md index 1ae6b7282e49..eec7037fbf57 100644 --- a/documentation/docs/25-build-and-deploy/70-adapter-cloudflare-workers.md +++ b/documentation/docs/25-build-and-deploy/70-adapter-cloudflare-workers.md @@ -114,7 +114,7 @@ export {}; ### Worker size limits -When deploying to workers, the server generated by SvelteKit is bundled into a single file. Wrangler will fail to publish your worker if it exceeds [the size limits](https://developers.cloudflare.com/workers/platform/limits/#worker-size) after minification. You're unlikely to hit this limit usually, but some large libraries can cause this to happen. In that case, you can try to reduce the size of your worker by only importing such libraries on the client side. See [the FAQ](/docs/faq#how-do-i-use-a-client-side-only-library-that-depends-on-document-or-window) for more information. +When deploying to workers, the server generated by SvelteKit is bundled into a single file. Wrangler will fail to publish your worker if it exceeds [the size limits](https://developers.cloudflare.com/workers/platform/limits/#worker-size) after minification. You're unlikely to hit this limit usually, but some large libraries can cause this to happen. In that case, you can try to reduce the size of your worker by only importing such libraries on the client side. See [the FAQ](/docs/frequently-asked-questions#how-do-i-use-a-client-side-only-library-that-depends-on-document-or-window) for more information. ### Accessing the file system diff --git a/documentation/docs/60-appendix/05-integrations.md b/documentation/docs/60-appendix/05-integrations.md index f87b06c2b51c..05ad9677e178 100644 --- a/documentation/docs/60-appendix/05-integrations.md +++ b/documentation/docs/60-appendix/05-integrations.md @@ -31,4 +31,4 @@ You will need to install `svelte-preprocess` with `npm install --save-dev svelte ## Integration FAQs -The SvelteKit FAQ has a [section on integrations](/docs/faq#integrations), which may be helpful if you still have questions. +The SvelteKit FAQ has a [section on integrations](/docs/frequently-asked-questions#integrations), which may be helpful if you still have questions. diff --git a/documentation/docs/60-appendix/10-migrating.md b/documentation/docs/60-appendix/10-migrating.md index 358b74deb783..a4d5a1a1007c 100644 --- a/documentation/docs/60-appendix/10-migrating.md +++ b/documentation/docs/60-appendix/10-migrating.md @@ -146,7 +146,7 @@ To support this environment-agnostic behavior, `fetch` is now available in the g ## Integrations -See [the FAQ](/docs/faq#integrations) for detailed information about integrations. +See [the FAQ](/docs/frequently-asked-questions#integrations) for detailed information about integrations. ### HTML minifier diff --git a/documentation/docs/60-appendix/20-additional-resources.md b/documentation/docs/60-appendix/20-additional-resources.md index 00c21dc25e68..e50bd22492a5 100644 --- a/documentation/docs/60-appendix/20-additional-resources.md +++ b/documentation/docs/60-appendix/20-additional-resources.md @@ -4,7 +4,7 @@ title: Additional resources ## FAQs -Please see the [SvelteKit FAQ](/docs/faq) for solutions to common issues and helpful tips and tricks. +Please see the [SvelteKit FAQ](/docs/frequently-asked-questions) for solutions to common issues and helpful tips and tricks. The [Svelte FAQ](https://svelte.dev/faq) and [`vite-plugin-svelte` FAQ](https://github.com/sveltejs/vite-plugin-svelte/blob/main/docs/faq.md) may also be helpful for questions deriving from those libraries. diff --git a/sites/kit.svelte.dev/src/routes/+layout.svelte b/sites/kit.svelte.dev/src/routes/+layout.svelte index 48f0dad089c0..94c2bd70d117 100644 --- a/sites/kit.svelte.dev/src/routes/+layout.svelte +++ b/sites/kit.svelte.dev/src/routes/+layout.svelte @@ -31,7 +31,7 @@ > Svelte - + Discord From d0c545a48804df44689f33382dac068166cf60a3 Mon Sep 17 00:00:00 2001 From: Puru Vijay Date: Thu, 22 Jun 2023 02:35:30 +0530 Subject: [PATCH 08/47] Fix type links --- .../src/lib/server/docs/index.js | 28 ++++++++++--------- .../kit.svelte.dev/src/lib/server/renderer.js | 6 ++-- 2 files changed, 19 insertions(+), 15 deletions(-) diff --git a/sites/kit.svelte.dev/src/lib/server/docs/index.js b/sites/kit.svelte.dev/src/lib/server/docs/index.js index 92499088ae0f..d395c4a7d52c 100644 --- a/sites/kit.svelte.dev/src/lib/server/docs/index.js +++ b/sites/kit.svelte.dev/src/lib/server/docs/index.js @@ -17,16 +17,16 @@ import { modules } from '$lib/generated/type-info.js'; * @param {string} slug */ export async function get_parsed_docs(docs_data, slug) { - const page = docs_data - .find(({ pages }) => pages.find((page) => slug === page.slug)) - ?.pages.find((page) => slug === page.slug); - - if (!page) return null; - - return { - ...page, - content: await render_content(page.file, page.content) - }; + for (const { pages } of docs_data) { + for (const page of pages) { + if (page.slug === slug) { + return { + ...page, + content: await render_content(page.file, page.content) + }; + } + } + } } /** @return {import('./types').DocsData} */ @@ -100,7 +100,7 @@ export function get_docs_list(docs_data) { /** @param {string} markdown */ function get_sections(markdown) { - const headingRegex = /^###?\s+(.*)$/gm; + const headingRegex = /^##\s+(.*)$/gm; /** @type {import('./types').Section[]} */ const secondLevelHeadings = []; let match; @@ -108,9 +108,11 @@ function get_sections(markdown) { const placeholders_rendered = replaceExportTypePlaceholders(markdown, modules); while ((match = headingRegex.exec(placeholders_rendered)) !== null) { + const unTYPED = match[1].startsWith('[TYPE]:') ? match[1].replace('[TYPE]: ', '') : match[1]; + secondLevelHeadings.push({ title: removeMarkdown( - escape(markedTransform(match[1], { paragraph: (txt) => txt })) + escape(markedTransform(unTYPED, { paragraph: (txt) => txt })) .replace(/<\/?code>/g, '') .replace(/'/g, "'") .replace(/"/g, '"') @@ -118,7 +120,7 @@ function get_sections(markdown) { .replace(/>/g, '>') .replace(/<(\/)?(em|b|strong|code)>/g, '') ), - slug: normalizeSlugify(match[1]) + slug: normalizeSlugify(unTYPED) }); } diff --git a/sites/kit.svelte.dev/src/lib/server/renderer.js b/sites/kit.svelte.dev/src/lib/server/renderer.js index 8195cbfba65d..31ce2713e24c 100644 --- a/sites/kit.svelte.dev/src/lib/server/renderer.js +++ b/sites/kit.svelte.dev/src/lib/server/renderer.js @@ -5,7 +5,6 @@ import { parse_route_id } from '../../../../../packages/kit/src/utils/routing.js /** * @param {string} filename * @param {string} body - * @returns */ export const render_content = (filename, body) => renderContentMarkdown(filename, body, { @@ -15,7 +14,10 @@ export const render_content = (filename, body) => resolveTypeLinks: (module_name, type_name) => { if (module_name === '@sveltejs/kit') module_name = 'Public Types'; - return `/docs/types#${slugify(module_name)}-${slugify(type_name)}`; + return { + page: `/docs/types`, + slug: `${slugify(module_name)}-${slugify(type_name)}` + }; }, twoslashBanner: (filename, source, language, options) => { From d12fee56d252b4766cb41c2cdfc4b162d03a4cdc Mon Sep 17 00:00:00 2001 From: Puru Vijay <47742487+PuruVJ@users.noreply.github.com> Date: Thu, 22 Jun 2023 02:48:35 +0530 Subject: [PATCH 09/47] Apply suggestions from code review Co-authored-by: Ben McCann <322311+benmccann@users.noreply.github.com> --- .../docs/10-getting-started/20-creating-a-project.md | 2 +- documentation/docs/20-core-concepts/30-form-actions.md | 2 +- .../25-build-and-deploy/70-adapter-cloudflare-workers.md | 2 +- documentation/docs/60-appendix/05-integrations.md | 2 +- documentation/docs/60-appendix/10-migrating.md | 2 +- documentation/docs/60-appendix/20-additional-resources.md | 2 +- sites/kit.svelte.dev/scripts/types/index.js | 6 ++++-- 7 files changed, 10 insertions(+), 8 deletions(-) diff --git a/documentation/docs/10-getting-started/20-creating-a-project.md b/documentation/docs/10-getting-started/20-creating-a-project.md index 56c05c8b8c2c..9e356a8f1e8b 100644 --- a/documentation/docs/10-getting-started/20-creating-a-project.md +++ b/documentation/docs/10-getting-started/20-creating-a-project.md @@ -11,7 +11,7 @@ npm install npm run dev ``` -The first command will scaffold a new project in the `my-app` directory asking you if you'd like to set up some basic tooling such as TypeScript. See the FAQ for [pointers on setting up additional tooling](/docs/frequently-asked-questions#integrations). The subsequent commands will then install its dependencies and start a server on [localhost:5173](http://localhost:5173). +The first command will scaffold a new project in the `my-app` directory asking you if you'd like to set up some basic tooling such as TypeScript. See the FAQ for [pointers on setting up additional tooling](../frequently-asked-questions#integrations). The subsequent commands will then install its dependencies and start a server on [localhost:5173](http://localhost:5173). There are two basic concepts: diff --git a/documentation/docs/20-core-concepts/30-form-actions.md b/documentation/docs/20-core-concepts/30-form-actions.md index 5998a710285c..e726d53f3abc 100644 --- a/documentation/docs/20-core-concepts/30-form-actions.md +++ b/documentation/docs/20-core-concepts/30-form-actions.md @@ -469,7 +469,7 @@ Form actions are the preferred way to send data to the server, since they can be ``` ```js -// @errors: 2355 1360 2322. +// @errors: 2355 1360 2322 /// file: api/ci/+server.js /** @type {import('./$types').RequestHandler} */ diff --git a/documentation/docs/25-build-and-deploy/70-adapter-cloudflare-workers.md b/documentation/docs/25-build-and-deploy/70-adapter-cloudflare-workers.md index eec7037fbf57..a30d683bb8c6 100644 --- a/documentation/docs/25-build-and-deploy/70-adapter-cloudflare-workers.md +++ b/documentation/docs/25-build-and-deploy/70-adapter-cloudflare-workers.md @@ -114,7 +114,7 @@ export {}; ### Worker size limits -When deploying to workers, the server generated by SvelteKit is bundled into a single file. Wrangler will fail to publish your worker if it exceeds [the size limits](https://developers.cloudflare.com/workers/platform/limits/#worker-size) after minification. You're unlikely to hit this limit usually, but some large libraries can cause this to happen. In that case, you can try to reduce the size of your worker by only importing such libraries on the client side. See [the FAQ](/docs/frequently-asked-questions#how-do-i-use-a-client-side-only-library-that-depends-on-document-or-window) for more information. +When deploying to workers, the server generated by SvelteKit is bundled into a single file. Wrangler will fail to publish your worker if it exceeds [the size limits](https://developers.cloudflare.com/workers/platform/limits/#worker-size) after minification. You're unlikely to hit this limit usually, but some large libraries can cause this to happen. In that case, you can try to reduce the size of your worker by only importing such libraries on the client side. See [the FAQ](../frequently-asked-questions#how-do-i-use-a-client-side-only-library-that-depends-on-document-or-window) for more information. ### Accessing the file system diff --git a/documentation/docs/60-appendix/05-integrations.md b/documentation/docs/60-appendix/05-integrations.md index 05ad9677e178..a27e897270b1 100644 --- a/documentation/docs/60-appendix/05-integrations.md +++ b/documentation/docs/60-appendix/05-integrations.md @@ -31,4 +31,4 @@ You will need to install `svelte-preprocess` with `npm install --save-dev svelte ## Integration FAQs -The SvelteKit FAQ has a [section on integrations](/docs/frequently-asked-questions#integrations), which may be helpful if you still have questions. +The SvelteKit FAQ has a [section on integrations](../frequently-asked-questions#integrations), which may be helpful if you still have questions. diff --git a/documentation/docs/60-appendix/10-migrating.md b/documentation/docs/60-appendix/10-migrating.md index a4d5a1a1007c..4a58ad84ac16 100644 --- a/documentation/docs/60-appendix/10-migrating.md +++ b/documentation/docs/60-appendix/10-migrating.md @@ -146,7 +146,7 @@ To support this environment-agnostic behavior, `fetch` is now available in the g ## Integrations -See [the FAQ](/docs/frequently-asked-questions#integrations) for detailed information about integrations. +See [the FAQ](../frequently-asked-questions#integrations) for detailed information about integrations. ### HTML minifier diff --git a/documentation/docs/60-appendix/20-additional-resources.md b/documentation/docs/60-appendix/20-additional-resources.md index e50bd22492a5..a24573da38ef 100644 --- a/documentation/docs/60-appendix/20-additional-resources.md +++ b/documentation/docs/60-appendix/20-additional-resources.md @@ -4,7 +4,7 @@ title: Additional resources ## FAQs -Please see the [SvelteKit FAQ](/docs/frequently-asked-questions) for solutions to common issues and helpful tips and tricks. +Please see the [SvelteKit FAQ](../frequently-asked-questions) for solutions to common issues and helpful tips and tricks. The [Svelte FAQ](https://svelte.dev/faq) and [`vite-plugin-svelte` FAQ](https://github.com/sveltejs/vite-plugin-svelte/blob/main/docs/faq.md) may also be helpful for questions deriving from those libraries. diff --git a/sites/kit.svelte.dev/scripts/types/index.js b/sites/kit.svelte.dev/scripts/types/index.js index fb568f06dd70..a1a851e2d057 100644 --- a/sites/kit.svelte.dev/scripts/types/index.js +++ b/sites/kit.svelte.dev/scripts/types/index.js @@ -5,14 +5,16 @@ import prettier from 'prettier'; import { mkdirp } from '../../../../packages/kit/src/utils/filesystem.js'; import { fileURLToPath } from 'url'; -/** @typedef {{ +/** + * @typedef {{ * name: string; * comment: string; * markdown?: string; * snippet: string; * deprecated: string | null; * children: Extracted[] } - * } Extracted */ + * } Extracted + */ /** @type {Array<{ name: string; comment: string; exports: Extracted[]; types: Extracted[]; exempt?: boolean; }>} */ const modules = []; From 4f7bd7e8fb1045eed14146e97ce116c3f324cb9f Mon Sep 17 00:00:00 2001 From: Puru Vijay Date: Thu, 22 Jun 2023 06:59:07 +0530 Subject: [PATCH 10/47] Bump site-kit --- pnpm-lock.yaml | 26 +++++++++++++++++++++++--- sites/kit.svelte.dev/package.json | 2 +- sites/kit.svelte.dev/src/app.html | 3 ++- 3 files changed, 26 insertions(+), 5 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 306f4f0eb20c..5b8e2fb2bac4 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1008,8 +1008,8 @@ importers: specifier: workspace:^ version: link:../../packages/kit '@sveltejs/site-kit': - specifier: 6.0.0-next.6 - version: link:../../../site-kit/packages/site-kit + specifier: 6.0.0-next.12 + version: 6.0.0-next.12(@sveltejs/kit@packages+kit)(svelte@3.56.0) '@types/d3-geo': specifier: ^3.0.2 version: 3.0.2 @@ -1763,6 +1763,18 @@ packages: typescript: 4.9.4 dev: true + /@sveltejs/site-kit@6.0.0-next.12(@sveltejs/kit@packages+kit)(svelte@3.56.0): + resolution: {integrity: sha512-RB/OEh4Mqv33Rz+kQpdLEDCNKdag0aHhmedtTFHNNlqv6+JwOIRrQfq6DqWACFKe5ZaRLuHDDVXTM7bMJ6fq2g==} + peerDependencies: + '@sveltejs/kit': ^1.0.0 + svelte: ^3.54.0 || ^4.0.0-next.1 || ^4.0.0 + dependencies: + '@sveltejs/kit': link:packages/kit + esm-env: 1.0.0 + svelte: 3.56.0 + svelte-local-storage-store: 0.5.0(svelte@3.56.0) + dev: true + /@sveltejs/vite-plugin-svelte-inspector@1.0.2(@sveltejs/vite-plugin-svelte@2.4.1)(svelte@3.56.0)(vite@4.3.6): resolution: {integrity: sha512-Cy1dUMcYCnDVV/hPLXa43YZJ2jGKVW5rA0xuNL9dlmYhT0yoS1g7+FOFSRlgk0BXKk/Oc7grs+8BVA5Iz2fr8A==} engines: {node: ^14.18.0 || >= 16} @@ -3359,7 +3371,6 @@ packages: /esm-env@1.0.0: resolution: {integrity: sha512-Cf6VksWPsTuW01vU9Mk/3vRue91Zevka5SjyNf3nEpokFRuqt/KjUQoGAwq9qMmhpLTHmXzSIrFRw8zxWzmFBA==} - dev: false /espree@9.5.2: resolution: {integrity: sha512-7OASN1Wma5fum5SrNhFMAMJxOUAbhyfQ8dQ//PJaJbNw0URTPWqIghHWt1MmAANKhHZIYOHruW4Kw4ruUWOdGw==} @@ -5779,6 +5790,15 @@ packages: svelte: 3.56.0 dev: false + /svelte-local-storage-store@0.5.0(svelte@3.56.0): + resolution: {integrity: sha512-SEDrpapeia6fUqta+r1NvSLlJYPkZ4pBcl15EYIOSPNzy6vhpoXu8cnzUDmZxsWl7fZGAHxrVH9UyZCbyO4W+g==} + engines: {node: '>=0.14'} + peerDependencies: + svelte: ^3.48.0 || ^4.0.0 + dependencies: + svelte: 3.56.0 + dev: true + /svelte-preprocess@5.0.3(postcss@8.4.23)(svelte@3.56.0)(typescript@4.9.4): resolution: {integrity: sha512-GrHF1rusdJVbOZOwgPWtpqmaexkydznKzy5qIC2FabgpFyKN57bjMUUUqPRfbBXK5igiEWn1uO/DXsa2vJ5VHA==} engines: {node: '>= 14.10.0'} diff --git a/sites/kit.svelte.dev/package.json b/sites/kit.svelte.dev/package.json index b478913a5eac..afe0ff02589a 100644 --- a/sites/kit.svelte.dev/package.json +++ b/sites/kit.svelte.dev/package.json @@ -14,7 +14,7 @@ "@sveltejs/adapter-vercel": "workspace:^", "@sveltejs/amp": "workspace:^", "@sveltejs/kit": "workspace:^", - "@sveltejs/site-kit": "6.0.0-next.6", + "@sveltejs/site-kit": "6.0.0-next.12", "@types/d3-geo": "^3.0.2", "@types/node": "^16.18.6", "flexsearch": "^0.7.31", diff --git a/sites/kit.svelte.dev/src/app.html b/sites/kit.svelte.dev/src/app.html index 6f92491d2279..6a8749f7449b 100644 --- a/sites/kit.svelte.dev/src/app.html +++ b/sites/kit.svelte.dev/src/app.html @@ -48,6 +48,7 @@ document.body.classList.remove('light', 'dark'); document.body.classList.add(themeValue ?? systemPreferredTheme); -
    %sveltekit.body%
    + +
    %sveltekit.body%
    From 61b7c8cd0d18474c12af0cfff1eca625e8a3d90d Mon Sep 17 00:00:00 2001 From: Puru Vijay Date: Thu, 22 Jun 2023 07:13:35 +0530 Subject: [PATCH 11/47] Don't use check-doc-links --- .../docs/10-getting-started/20-creating-a-project.md | 2 +- .../70-adapter-cloudflare-workers.md | 2 +- .../{01-frequently-asked-questions.md => 01-faq.md} | 12 ++++++------ documentation/docs/60-appendix/05-integrations.md | 2 +- documentation/docs/60-appendix/10-migrating.md | 2 +- .../docs/60-appendix/20-additional-resources.md | 2 +- sites/kit.svelte.dev/package.json | 4 ++-- sites/kit.svelte.dev/scripts/check-doc-links.js | 2 ++ sites/kit.svelte.dev/scripts/types/index.js | 6 +----- 9 files changed, 16 insertions(+), 18 deletions(-) rename documentation/docs/60-appendix/{01-frequently-asked-questions.md => 01-faq.md} (86%) diff --git a/documentation/docs/10-getting-started/20-creating-a-project.md b/documentation/docs/10-getting-started/20-creating-a-project.md index 9e356a8f1e8b..57070bcc0692 100644 --- a/documentation/docs/10-getting-started/20-creating-a-project.md +++ b/documentation/docs/10-getting-started/20-creating-a-project.md @@ -11,7 +11,7 @@ npm install npm run dev ``` -The first command will scaffold a new project in the `my-app` directory asking you if you'd like to set up some basic tooling such as TypeScript. See the FAQ for [pointers on setting up additional tooling](../frequently-asked-questions#integrations). The subsequent commands will then install its dependencies and start a server on [localhost:5173](http://localhost:5173). +The first command will scaffold a new project in the `my-app` directory asking you if you'd like to set up some basic tooling such as TypeScript. See the FAQ for [pointers on setting up additional tooling](../faq#integrations). The subsequent commands will then install its dependencies and start a server on [localhost:5173](http://localhost:5173). There are two basic concepts: diff --git a/documentation/docs/25-build-and-deploy/70-adapter-cloudflare-workers.md b/documentation/docs/25-build-and-deploy/70-adapter-cloudflare-workers.md index a30d683bb8c6..cecba1559f53 100644 --- a/documentation/docs/25-build-and-deploy/70-adapter-cloudflare-workers.md +++ b/documentation/docs/25-build-and-deploy/70-adapter-cloudflare-workers.md @@ -114,7 +114,7 @@ export {}; ### Worker size limits -When deploying to workers, the server generated by SvelteKit is bundled into a single file. Wrangler will fail to publish your worker if it exceeds [the size limits](https://developers.cloudflare.com/workers/platform/limits/#worker-size) after minification. You're unlikely to hit this limit usually, but some large libraries can cause this to happen. In that case, you can try to reduce the size of your worker by only importing such libraries on the client side. See [the FAQ](../frequently-asked-questions#how-do-i-use-a-client-side-only-library-that-depends-on-document-or-window) for more information. +When deploying to workers, the server generated by SvelteKit is bundled into a single file. Wrangler will fail to publish your worker if it exceeds [the size limits](https://developers.cloudflare.com/workers/platform/limits/#worker-size) after minification. You're unlikely to hit this limit usually, but some large libraries can cause this to happen. In that case, you can try to reduce the size of your worker by only importing such libraries on the client side. See [the FAQ](../faq#how-do-i-use-a-client-side-only-library-that-depends-on-document-or-window) for more information. ### Accessing the file system diff --git a/documentation/docs/60-appendix/01-frequently-asked-questions.md b/documentation/docs/60-appendix/01-faq.md similarity index 86% rename from documentation/docs/60-appendix/01-frequently-asked-questions.md rename to documentation/docs/60-appendix/01-faq.md index 8b34c73e1153..14bdbc73c0f4 100644 --- a/documentation/docs/60-appendix/01-frequently-asked-questions.md +++ b/documentation/docs/60-appendix/01-faq.md @@ -12,7 +12,7 @@ SvelteKit has HMR enabled by default powered by [svelte-hmr](https://github.com/ ## How do I include details from package.json in my application? -You cannot directly require JSON files, since SvelteKit expects [`svelte.config.js`](docs/configuration) to be an ES module. If you'd like to include your application's version number or other information from `package.json` in your application, you can load JSON like so: +You cannot directly require JSON files, since SvelteKit expects [`svelte.config.js`](./configuration) to be an ES module. If you'd like to include your application's version number or other information from `package.json` in your application, you can load JSON like so: ```js /// file: svelte.config.js @@ -37,7 +37,7 @@ Here are a few things to keep in mind when checking if a library is packaged cor - `exports` takes precedence over the other entry point fields such as `main` and `module`. Adding an `exports` field may not be backwards-compatible as it prevents deep imports. - ESM files should end with `.mjs` unless `"type": "module"` is set in which any case CommonJS files should end with `.cjs`. - `main` should be defined if `exports` is not. It should be either a CommonJS or ESM file and adhere to the previous bullet. If a `module` field is defined, it should refer to an ESM file. -- Svelte components should be distributed as uncompiled `.svelte` files with any JS in the package written as ESM only. Custom script and style languages, like TypeScript and SCSS, should be preprocessed as vanilla JS and CSS respectively. We recommend using [`svelte-package`](docs/packaging) for packaging Svelte libraries, which will do this for you. +- Svelte components should be distributed as uncompiled `.svelte` files with any JS in the package written as ESM only. Custom script and style languages, like TypeScript and SCSS, should be preprocessed as vanilla JS and CSS respectively. We recommend using [`svelte-package`](./packaging) for packaging Svelte libraries, which will do this for you. Libraries work best in the browser with Vite when they distribute an ESM version, especially if they are dependencies of a Svelte component library. You may wish to suggest to library authors that they provide an ESM version. However, CommonJS (CJS) dependencies should work as well since, by default, [`vite-plugin-svelte` will ask Vite to pre-bundle them](https://github.com/sveltejs/vite-plugin-svelte/blob/main/docs/faq.md#what-is-going-on-with-vite-and-pre-bundling-dependencies) using `esbuild` to convert them to ESM. @@ -45,11 +45,11 @@ If you are still encountering issues we recommend searching both [the Vite issue ## How do I use X with SvelteKit? -Make sure you've read the [documentation section on integrations](docs/integrations). If you're still having trouble, solutions to common issues are listed below. +Make sure you've read the [documentation section on integrations](./integrations). If you're still having trouble, solutions to common issues are listed below. ### How do I setup a database? -Put the code to query your database in a [server route](docs/routing#server) - don't query the database in .svelte files. You can create a `db.js` or similar that sets up a connection immediately and makes the client accessible throughout the app as a singleton. You can execute any one-time setup code in `hooks.js` and import your database helpers into any endpoint that needs them. +Put the code to query your database in a [server route](./routing#server) - don't query the database in .svelte files. You can create a `db.js` or similar that sets up a connection immediately and makes the client accessible throughout the app as a singleton. You can execute any one-time setup code in `hooks.js` and import your database helpers into any endpoint that needs them. ### How do I use a client-side only library that depends on `document` or `window`? @@ -118,11 +118,11 @@ onMount(() => { ### How do I use a different backend API server? -You can use [`event.fetch`](docs/load#making-fetch-requests) to request data from an external API server, but be aware that you would need to deal with [CORS](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS), which will result in complications such as generally requiring requests to be preflighted resulting in higher latency. Requests to a separate subdomain may also increase latency due to an additional DNS lookup, TLS setup, etc. If you wish to use this method, you may find [`handleFetch`](docs/hooks#server-hooks-handlefetch) helpful. +You can use [`event.fetch`](./load#making-fetch-requests) to request data from an external API server, but be aware that you would need to deal with [CORS](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS), which will result in complications such as generally requiring requests to be preflighted resulting in higher latency. Requests to a separate subdomain may also increase latency due to an additional DNS lookup, TLS setup, etc. If you wish to use this method, you may find [`handleFetch`](./hooks#server-hooks-handlefetch) helpful. Another approach is to set up a proxy to bypass CORS headaches. In production, you would rewrite a path like `/api` to the API server; for local development, use Vite's [`server.proxy`](https://vitejs.dev/config/server-options.html#server-proxy) option. -How to setup rewrites in production will depend on your deployment platform. If rewrites aren't an option, you could alternatively add an [API route](https://kit.svelte.dev/docs/routing#server): +How to setup rewrites in production will depend on your deployment platform. If rewrites aren't an option, you could alternatively add an [API route](./routing#server): ```js /// file: src/routes/api/[...path]/+server.js diff --git a/documentation/docs/60-appendix/05-integrations.md b/documentation/docs/60-appendix/05-integrations.md index a27e897270b1..bbf456872f3c 100644 --- a/documentation/docs/60-appendix/05-integrations.md +++ b/documentation/docs/60-appendix/05-integrations.md @@ -31,4 +31,4 @@ You will need to install `svelte-preprocess` with `npm install --save-dev svelte ## Integration FAQs -The SvelteKit FAQ has a [section on integrations](../frequently-asked-questions#integrations), which may be helpful if you still have questions. +The SvelteKit FAQ has a [section on integrations](../faq#integrations), which may be helpful if you still have questions. diff --git a/documentation/docs/60-appendix/10-migrating.md b/documentation/docs/60-appendix/10-migrating.md index 4a58ad84ac16..5335f7a7d24c 100644 --- a/documentation/docs/60-appendix/10-migrating.md +++ b/documentation/docs/60-appendix/10-migrating.md @@ -146,7 +146,7 @@ To support this environment-agnostic behavior, `fetch` is now available in the g ## Integrations -See [the FAQ](../frequently-asked-questions#integrations) for detailed information about integrations. +See [the FAQ](../faq#integrations) for detailed information about integrations. ### HTML minifier diff --git a/documentation/docs/60-appendix/20-additional-resources.md b/documentation/docs/60-appendix/20-additional-resources.md index a24573da38ef..4877ef984568 100644 --- a/documentation/docs/60-appendix/20-additional-resources.md +++ b/documentation/docs/60-appendix/20-additional-resources.md @@ -4,7 +4,7 @@ title: Additional resources ## FAQs -Please see the [SvelteKit FAQ](../frequently-asked-questions) for solutions to common issues and helpful tips and tricks. +Please see the [SvelteKit FAQ](../faq) for solutions to common issues and helpful tips and tricks. The [Svelte FAQ](https://svelte.dev/faq) and [`vite-plugin-svelte` FAQ](https://github.com/sveltejs/vite-plugin-svelte/blob/main/docs/faq.md) may also be helpful for questions deriving from those libraries. diff --git a/sites/kit.svelte.dev/package.json b/sites/kit.svelte.dev/package.json index df473e5f4ab8..bd06a8662cc1 100644 --- a/sites/kit.svelte.dev/package.json +++ b/sites/kit.svelte.dev/package.json @@ -3,7 +3,7 @@ "private": true, "version": "0.0.1", "scripts": { - "update": "node scripts/check-doc-links.js && node scripts/types", + "update": "node scripts/types", "dev": "vite dev", "build": "npm run update && vite build", "prebuild": "test \"$CI\" = true && npx pnpm install --store=node_modules/.pnpm-store || echo skipping pnpm install", @@ -36,4 +36,4 @@ "d3-geo-projection": "^4.0.0", "topojson-client": "^3.1.0" } -} \ No newline at end of file +} diff --git a/sites/kit.svelte.dev/scripts/check-doc-links.js b/sites/kit.svelte.dev/scripts/check-doc-links.js index f98997087318..ae7cb341d4c1 100644 --- a/sites/kit.svelte.dev/scripts/check-doc-links.js +++ b/sites/kit.svelte.dev/scripts/check-doc-links.js @@ -46,6 +46,8 @@ for (const doc of doc_filenames) { for (const link of links) { let url = link.slice(2, -1); + console.log(url); + if (url.startsWith('http')) continue; if (url.startsWith('/faq')) continue; if (url.startsWith('/docs/')) url = url.slice(6); diff --git a/sites/kit.svelte.dev/scripts/types/index.js b/sites/kit.svelte.dev/scripts/types/index.js index a1a851e2d057..16fb6967a721 100644 --- a/sites/kit.svelte.dev/scripts/types/index.js +++ b/sites/kit.svelte.dev/scripts/types/index.js @@ -212,8 +212,6 @@ function munge_type_element(member, depth = 1) { } } - if (name?.includes('alias')) console.log(member?.jsDoc[0].tags); - return { name, snippet, @@ -248,12 +246,10 @@ function read_d_ts_file(file) { // we didn't ignore this error specifically for `/// file:` code examples const str = fs.readFileSync(resolved, 'utf-8'); - //! For some reason, typescript is reading this @errors as a jsdoc tag, and splitting it into separate pieces + //! For some reason, typescript 5.1> is reading this @errors as a jsdoc tag, and splitting it into separate pieces return str.replace(/(\s*\*\s*)```js([\s\S]+?)```/g, (match, prefix, code) => { return `${prefix}\`\`\`js${prefix}// @errors: 7031${code}\`\`\``; }); - - return str; } { From d0c466e6f480d7e7be0bd1300df658f38b79d949 Mon Sep 17 00:00:00 2001 From: Puru Vijay <47742487+PuruVJ@users.noreply.github.com> Date: Thu, 22 Jun 2023 08:07:36 +0530 Subject: [PATCH 12/47] Update sites/kit.svelte.dev/scripts/check-doc-links.js Co-authored-by: Ben McCann <322311+benmccann@users.noreply.github.com> --- sites/kit.svelte.dev/scripts/check-doc-links.js | 2 -- 1 file changed, 2 deletions(-) diff --git a/sites/kit.svelte.dev/scripts/check-doc-links.js b/sites/kit.svelte.dev/scripts/check-doc-links.js index ae7cb341d4c1..f98997087318 100644 --- a/sites/kit.svelte.dev/scripts/check-doc-links.js +++ b/sites/kit.svelte.dev/scripts/check-doc-links.js @@ -46,8 +46,6 @@ for (const doc of doc_filenames) { for (const link of links) { let url = link.slice(2, -1); - console.log(url); - if (url.startsWith('http')) continue; if (url.startsWith('/faq')) continue; if (url.startsWith('/docs/')) url = url.slice(6); From 845cfc47c47243adf4b78cd15490b32573bcb8d6 Mon Sep 17 00:00:00 2001 From: Puru Vijay Date: Thu, 22 Jun 2023 08:31:24 +0530 Subject: [PATCH 13/47] Bump site-kit --- pnpm-lock.yaml | 8 ++++---- sites/kit.svelte.dev/package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index cd6974dfabb4..ef2bc1a2448b 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1002,8 +1002,8 @@ importers: specifier: workspace:^ version: link:../../packages/kit '@sveltejs/site-kit': - specifier: 6.0.0-next.12 - version: 6.0.0-next.12(@sveltejs/kit@packages+kit)(svelte@3.56.0) + specifier: 6.0.0-next.14 + version: 6.0.0-next.14(@sveltejs/kit@packages+kit)(svelte@3.56.0) '@types/d3-geo': specifier: ^3.0.2 version: 3.0.2 @@ -1753,8 +1753,8 @@ packages: typescript: 4.9.4 dev: true - /@sveltejs/site-kit@6.0.0-next.12(@sveltejs/kit@packages+kit)(svelte@3.56.0): - resolution: {integrity: sha512-RB/OEh4Mqv33Rz+kQpdLEDCNKdag0aHhmedtTFHNNlqv6+JwOIRrQfq6DqWACFKe5ZaRLuHDDVXTM7bMJ6fq2g==} + /@sveltejs/site-kit@6.0.0-next.14(@sveltejs/kit@packages+kit)(svelte@3.56.0): + resolution: {integrity: sha512-KAQlX47fAL1LC1OCC/mQFDmSZyfX7zEK6/B1BEF6i265SN1OBwE1ZG4yrlQa5EaUVz8MIyjcvLqbikiqAWesTA==} peerDependencies: '@sveltejs/kit': ^1.0.0 svelte: ^3.54.0 || ^4.0.0-next.1 || ^4.0.0 diff --git a/sites/kit.svelte.dev/package.json b/sites/kit.svelte.dev/package.json index bd06a8662cc1..1da942124a57 100644 --- a/sites/kit.svelte.dev/package.json +++ b/sites/kit.svelte.dev/package.json @@ -14,7 +14,7 @@ "@sveltejs/adapter-vercel": "workspace:^", "@sveltejs/amp": "workspace:^", "@sveltejs/kit": "workspace:^", - "@sveltejs/site-kit": "6.0.0-next.12", + "@sveltejs/site-kit": "6.0.0-next.14", "@types/d3-geo": "^3.0.2", "@types/node": "^16.18.6", "flexsearch": "^0.7.31", From 980e346d15c065853dbc780eca4c95cf4dbbf1d3 Mon Sep 17 00:00:00 2001 From: Puru Vijay Date: Thu, 22 Jun 2023 17:45:56 +0530 Subject: [PATCH 14/47] Bump site-kit --- pnpm-lock.yaml | 8 ++++---- sites/kit.svelte.dev/package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index ef2bc1a2448b..83c79dd8bcbe 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1002,8 +1002,8 @@ importers: specifier: workspace:^ version: link:../../packages/kit '@sveltejs/site-kit': - specifier: 6.0.0-next.14 - version: 6.0.0-next.14(@sveltejs/kit@packages+kit)(svelte@3.56.0) + specifier: 6.0.0-next.17 + version: 6.0.0-next.17(@sveltejs/kit@packages+kit)(svelte@3.56.0) '@types/d3-geo': specifier: ^3.0.2 version: 3.0.2 @@ -1753,8 +1753,8 @@ packages: typescript: 4.9.4 dev: true - /@sveltejs/site-kit@6.0.0-next.14(@sveltejs/kit@packages+kit)(svelte@3.56.0): - resolution: {integrity: sha512-KAQlX47fAL1LC1OCC/mQFDmSZyfX7zEK6/B1BEF6i265SN1OBwE1ZG4yrlQa5EaUVz8MIyjcvLqbikiqAWesTA==} + /@sveltejs/site-kit@6.0.0-next.17(@sveltejs/kit@packages+kit)(svelte@3.56.0): + resolution: {integrity: sha512-+2AlkIwKtwrfcsvoxSXkRZ5EFI1Rz/8ZZVMi6qmLhPgX0CYm+yyyCslaASmAB+Ztq3JYVwNx+4eQ6Mafeitjiw==} peerDependencies: '@sveltejs/kit': ^1.0.0 svelte: ^3.54.0 || ^4.0.0-next.1 || ^4.0.0 diff --git a/sites/kit.svelte.dev/package.json b/sites/kit.svelte.dev/package.json index 1da942124a57..0bdcd5bd1b7b 100644 --- a/sites/kit.svelte.dev/package.json +++ b/sites/kit.svelte.dev/package.json @@ -14,7 +14,7 @@ "@sveltejs/adapter-vercel": "workspace:^", "@sveltejs/amp": "workspace:^", "@sveltejs/kit": "workspace:^", - "@sveltejs/site-kit": "6.0.0-next.14", + "@sveltejs/site-kit": "6.0.0-next.17", "@types/d3-geo": "^3.0.2", "@types/node": "^16.18.6", "flexsearch": "^0.7.31", From 06070ffb7732fd1bc8e93d5dd58fcb2cf127f158 Mon Sep 17 00:00:00 2001 From: Puru Vijay Date: Thu, 22 Jun 2023 17:48:45 +0530 Subject: [PATCH 15/47] Bump site-kit --- pnpm-lock.yaml | 2 +- sites/kit.svelte.dev/package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 83c79dd8bcbe..ea0cd6c6c4c9 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1002,7 +1002,7 @@ importers: specifier: workspace:^ version: link:../../packages/kit '@sveltejs/site-kit': - specifier: 6.0.0-next.17 + specifier: ^6.0.0-next.17 version: 6.0.0-next.17(@sveltejs/kit@packages+kit)(svelte@3.56.0) '@types/d3-geo': specifier: ^3.0.2 diff --git a/sites/kit.svelte.dev/package.json b/sites/kit.svelte.dev/package.json index 0bdcd5bd1b7b..80b61ba0a0e4 100644 --- a/sites/kit.svelte.dev/package.json +++ b/sites/kit.svelte.dev/package.json @@ -14,7 +14,7 @@ "@sveltejs/adapter-vercel": "workspace:^", "@sveltejs/amp": "workspace:^", "@sveltejs/kit": "workspace:^", - "@sveltejs/site-kit": "6.0.0-next.17", + "@sveltejs/site-kit": "^6.0.0-next.17", "@types/d3-geo": "^3.0.2", "@types/node": "^16.18.6", "flexsearch": "^0.7.31", From 6e107b70776f6ce2bde5382009269147793b3915 Mon Sep 17 00:00:00 2001 From: Puru Vijay Date: Thu, 22 Jun 2023 19:18:49 +0530 Subject: [PATCH 16/47] Fix FAQ redirect --- sites/kit.svelte.dev/src/routes/faq/+server.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sites/kit.svelte.dev/src/routes/faq/+server.js b/sites/kit.svelte.dev/src/routes/faq/+server.js index e8a4620a5740..f570389e2359 100644 --- a/sites/kit.svelte.dev/src/routes/faq/+server.js +++ b/sites/kit.svelte.dev/src/routes/faq/+server.js @@ -1,5 +1,5 @@ import { redirect } from '@sveltejs/kit'; export const GET = ({}) => { - throw redirect(301, '/docs/frequently-asked-questions'); + throw redirect(301, '/docs/faq'); }; From 472abf2e85cc39ddd58b55fe093bc63ff2ef6a28 Mon Sep 17 00:00:00 2001 From: Ben McCann <322311+benmccann@users.noreply.github.com> Date: Fri, 23 Jun 2023 14:27:46 -0700 Subject: [PATCH 17/47] update dts-buddy --- packages/kit/package.json | 2 +- pnpm-lock.yaml | 24 +++++++++++++++++------- 2 files changed, 18 insertions(+), 8 deletions(-) diff --git a/packages/kit/package.json b/packages/kit/package.json index 0dd25bbe40c7..c25c4f4f1699 100644 --- a/packages/kit/package.json +++ b/packages/kit/package.json @@ -32,7 +32,7 @@ "@types/node": "^16.18.6", "@types/sade": "^1.7.4", "@types/set-cookie-parser": "^2.4.2", - "dts-buddy": "^0.0.10", + "dts-buddy": "^0.1.7", "marked": "^4.2.3", "rollup": "^3.7.0", "svelte": "^3.56.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index ea0cd6c6c4c9..9738733d57db 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -432,8 +432,8 @@ importers: specifier: ^2.4.2 version: 2.4.2 dts-buddy: - specifier: ^0.0.10 - version: 0.0.10 + specifier: ^0.1.7 + version: 0.1.7 marked: specifier: ^4.2.3 version: 4.2.3 @@ -2931,18 +2931,19 @@ packages: engines: {node: '>=12'} dev: true - /dts-buddy@0.0.10: - resolution: {integrity: sha512-jkaVtzEAgTUmyjRmDl6t5+nOaaBT7N9nJJ/FGkPBxNBj3Ah4qjeZOZm3xk6HuIlIiy9oZNR9UzDYG2hpeWHBOA==} + /dts-buddy@0.1.7: + resolution: {integrity: sha512-zqKumjFt/RXVTPV3DT/L7NBDuc763NeAZEIJATicoSvxDnOnCFzV0WUc4JV8KZB3cwMCAktmEtL6ERXz+jJMrA==} hasBin: true dependencies: '@jridgewell/source-map': 0.3.3 '@jridgewell/sourcemap-codec': 1.4.15 globrex: 0.1.2 kleur: 4.1.5 - locate-character: 2.0.5 + locate-character: 3.0.0 magic-string: 0.30.0 sade: 1.8.1 tiny-glob: 0.2.9 + ts-api-utils: 0.0.46(typescript@5.1.3) typescript: 5.1.3 dev: true @@ -4079,8 +4080,8 @@ packages: engines: {node: '>=14'} dev: true - /locate-character@2.0.5: - resolution: {integrity: sha512-n2GmejDXtOPBAZdIiEFy5dJ5N38xBCXLNOtw2WpB9kGh6pnrEuKlwYI+Tkpofc4wDtVXHtoAOJaMRlYG/oYaxg==} + /locate-character@3.0.0: + resolution: {integrity: sha512-SW13ws7BjaeJ6p7Q6CO2nchbYEc3X3J6WrmTTDto7yMPqVSZTUyY5Tjbid+Ab8gLnATtygYtiDIJGQRRn2ZOiA==} dev: true /locate-path@2.0.0: @@ -5844,6 +5845,15 @@ packages: regexparam: 1.3.0 dev: true + /ts-api-utils@0.0.46(typescript@5.1.3): + resolution: {integrity: sha512-YKJeSx39n0mMk+hrpyHKyTgxA3s7Pz/j1cXYR+t8HcwwZupzOR5xDGKnOEw3gmLaUeFUQt3FJD39AH9Ajn/mdA==} + engines: {node: '>=16.13.0'} + peerDependencies: + typescript: '>=4.2.0' + dependencies: + typescript: 5.1.3 + dev: true + /ts-interface-checker@0.1.13: resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} dev: true From 6679f515a52af0b3182aabc88a8f9b4c8bc4846d Mon Sep 17 00:00:00 2001 From: Ben McCann <322311+benmccann@users.noreply.github.com> Date: Fri, 23 Jun 2023 14:37:53 -0700 Subject: [PATCH 18/47] update lockfile --- pnpm-lock.yaml | 60 ++++++++++++++++++++++++++++---------------------- 1 file changed, 34 insertions(+), 26 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 63132aba5465..7e2700b43451 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -22,13 +22,13 @@ importers: version: 15.0.1(rollup@3.7.0) '@sveltejs/eslint-config': specifier: ^6.0.4 - version: 6.0.4(@typescript-eslint/eslint-plugin@5.53.0)(@typescript-eslint/parser@5.59.8)(eslint-config-prettier@8.8.0)(eslint-plugin-svelte@2.31.0)(eslint-plugin-unicorn@47.0.0)(eslint@8.40.0)(typescript@4.9.4) + version: 6.0.4(@typescript-eslint/eslint-plugin@5.53.0)(@typescript-eslint/parser@5.60.0)(eslint-config-prettier@8.8.0)(eslint-plugin-svelte@2.31.0)(eslint-plugin-unicorn@47.0.0)(eslint@8.40.0)(typescript@4.9.4) '@svitejs/changesets-changelog-github-compact': specifier: ^1.1.0 version: 1.1.0 '@typescript-eslint/eslint-plugin': specifier: ^5.53.0 - version: 5.53.0(@typescript-eslint/parser@5.59.8)(eslint@8.40.0)(typescript@4.9.4) + version: 5.53.0(@typescript-eslint/parser@5.60.0)(eslint@8.40.0)(typescript@4.9.4) eslint: specifier: ^8.40.0 version: 8.40.0 @@ -1740,7 +1740,7 @@ packages: picomatch: 2.3.1 rollup: 3.7.0 - /@sveltejs/eslint-config@6.0.4(@typescript-eslint/eslint-plugin@5.53.0)(@typescript-eslint/parser@5.59.8)(eslint-config-prettier@8.8.0)(eslint-plugin-svelte@2.31.0)(eslint-plugin-unicorn@47.0.0)(eslint@8.40.0)(typescript@4.9.4): + /@sveltejs/eslint-config@6.0.4(@typescript-eslint/eslint-plugin@5.53.0)(@typescript-eslint/parser@5.60.0)(eslint-config-prettier@8.8.0)(eslint-plugin-svelte@2.31.0)(eslint-plugin-unicorn@47.0.0)(eslint@8.40.0)(typescript@4.9.4): resolution: {integrity: sha512-U9pwmDs+DbmsnCgTfu6Bacdwqn0DuI1IQNSiQqTgzVyYfaaj+zy9ZoQCiJfxFBGXHkklyXuRHp0KMx346N0lcQ==} peerDependencies: '@typescript-eslint/eslint-plugin': '>= 5' @@ -1751,8 +1751,8 @@ packages: eslint-plugin-unicorn: '>= 47' typescript: '>= 4' dependencies: - '@typescript-eslint/eslint-plugin': 5.53.0(@typescript-eslint/parser@5.59.8)(eslint@8.40.0)(typescript@4.9.4) - '@typescript-eslint/parser': 5.59.8(eslint@8.40.0)(typescript@4.9.4) + '@typescript-eslint/eslint-plugin': 5.53.0(@typescript-eslint/parser@5.60.0)(eslint@8.40.0)(typescript@4.9.4) + '@typescript-eslint/parser': 5.60.0(eslint@8.40.0)(typescript@4.9.4) eslint: 8.40.0 eslint-config-prettier: 8.8.0(eslint@8.40.0) eslint-plugin-svelte: 2.31.0(eslint@8.40.0)(svelte@4.0.0) @@ -1952,7 +1952,7 @@ packages: '@types/node': 16.18.6 dev: true - /@typescript-eslint/eslint-plugin@5.53.0(@typescript-eslint/parser@5.59.8)(eslint@8.40.0)(typescript@4.9.4): + /@typescript-eslint/eslint-plugin@5.53.0(@typescript-eslint/parser@5.60.0)(eslint@8.40.0)(typescript@4.9.4): resolution: {integrity: sha512-alFpFWNucPLdUOySmXCJpzr6HKC3bu7XooShWM+3w/EL6J2HIoB2PFxpLnq4JauWVk6DiVeNKzQlFEaE+X9sGw==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: @@ -1963,7 +1963,7 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/parser': 5.59.8(eslint@8.40.0)(typescript@4.9.4) + '@typescript-eslint/parser': 5.60.0(eslint@8.40.0)(typescript@4.9.4) '@typescript-eslint/scope-manager': 5.53.0 '@typescript-eslint/type-utils': 5.53.0(eslint@8.40.0)(typescript@4.9.4) '@typescript-eslint/utils': 5.53.0(eslint@8.40.0)(typescript@4.9.4) @@ -1980,8 +1980,8 @@ packages: - supports-color dev: true - /@typescript-eslint/parser@5.59.8(eslint@8.40.0)(typescript@4.9.4): - resolution: {integrity: sha512-AnR19RjJcpjoeGojmwZtCwBX/RidqDZtzcbG3xHrmz0aHHoOcbWnpDllenRDmDvsV0RQ6+tbb09/kyc+UT9Orw==} + /@typescript-eslint/parser@5.60.0(eslint@8.40.0)(typescript@4.9.4): + resolution: {integrity: sha512-jBONcBsDJ9UoTWrARkRRCgDz6wUggmH5RpQVlt7BimSwaTkTjwypGzKORXbR4/2Hqjk9hgwlon2rVQAjWNpkyQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 @@ -1990,9 +1990,9 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/scope-manager': 5.59.8 - '@typescript-eslint/types': 5.59.8 - '@typescript-eslint/typescript-estree': 5.59.8(typescript@4.9.4) + '@typescript-eslint/scope-manager': 5.60.0 + '@typescript-eslint/types': 5.60.0 + '@typescript-eslint/typescript-estree': 5.60.0(typescript@4.9.4) debug: 4.3.4 eslint: 8.40.0 typescript: 4.9.4 @@ -2008,12 +2008,12 @@ packages: '@typescript-eslint/visitor-keys': 5.53.0 dev: true - /@typescript-eslint/scope-manager@5.59.8: - resolution: {integrity: sha512-/w08ndCYI8gxGf+9zKf1vtx/16y8MHrZs5/tnjHhMLNSixuNcJavSX4wAiPf4aS5x41Es9YPCn44MIe4cxIlig==} + /@typescript-eslint/scope-manager@5.60.0: + resolution: {integrity: sha512-hakuzcxPwXi2ihf9WQu1BbRj1e/Pd8ZZwVTG9kfbxAMZstKz8/9OoexIwnmLzShtsdap5U/CoQGRCWlSuPbYxQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: - '@typescript-eslint/types': 5.59.8 - '@typescript-eslint/visitor-keys': 5.59.8 + '@typescript-eslint/types': 5.60.0 + '@typescript-eslint/visitor-keys': 5.60.0 dev: true /@typescript-eslint/type-utils@5.53.0(eslint@8.40.0)(typescript@4.9.4): @@ -2041,8 +2041,8 @@ packages: engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dev: true - /@typescript-eslint/types@5.59.8: - resolution: {integrity: sha512-+uWuOhBTj/L6awoWIg0BlWy0u9TyFpCHrAuQ5bNfxDaZ1Ppb3mx6tUigc74LHcbHpOHuOTOJrBoAnhdHdaea1w==} + /@typescript-eslint/types@5.60.0: + resolution: {integrity: sha512-ascOuoCpNZBccFVNJRSC6rPq4EmJ2NkuoKnd6LDNyAQmdDnziAtxbCGWCbefG1CNzmDvd05zO36AmB7H8RzKPA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dev: true @@ -2067,8 +2067,8 @@ packages: - supports-color dev: true - /@typescript-eslint/typescript-estree@5.59.8(typescript@4.9.4): - resolution: {integrity: sha512-Jy/lPSDJGNow14vYu6IrW790p7HIf/SOV1Bb6lZ7NUkLc2iB2Z9elESmsaUtLw8kVqogSbtLH9tut5GCX1RLDg==} + /@typescript-eslint/typescript-estree@5.60.0(typescript@4.9.4): + resolution: {integrity: sha512-R43thAuwarC99SnvrBmh26tc7F6sPa2B3evkXp/8q954kYL6Ro56AwASYWtEEi+4j09GbiNAHqYwNNZuNlARGQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: typescript: '*' @@ -2076,12 +2076,12 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/types': 5.59.8 - '@typescript-eslint/visitor-keys': 5.59.8 + '@typescript-eslint/types': 5.60.0 + '@typescript-eslint/visitor-keys': 5.60.0 debug: 4.3.4 globby: 11.1.0 is-glob: 4.0.3 - semver: 7.5.1 + semver: 7.5.3 tsutils: 3.21.0(typescript@4.9.4) typescript: 4.9.4 transitivePeerDependencies: @@ -2116,11 +2116,11 @@ packages: eslint-visitor-keys: 3.4.1 dev: true - /@typescript-eslint/visitor-keys@5.59.8: - resolution: {integrity: sha512-pJhi2ms0x0xgloT7xYabil3SGGlojNNKjK/q6dB3Ey0uJLMjK2UDGJvHieiyJVW/7C3KI+Z4Q3pEHkm4ejA+xQ==} + /@typescript-eslint/visitor-keys@5.60.0: + resolution: {integrity: sha512-wm9Uz71SbCyhUKgcaPRauBdTegUyY/ZWl8gLwD/i/ybJqscrrdVSFImpvUz16BLPChIeKBK5Fa9s6KDQjsjyWw==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: - '@typescript-eslint/types': 5.59.8 + '@typescript-eslint/types': 5.60.0 eslint-visitor-keys: 3.4.1 dev: true @@ -5245,6 +5245,14 @@ packages: dependencies: lru-cache: 6.0.0 + /semver@7.5.3: + resolution: {integrity: sha512-QBlUtyVk/5EeHbi7X0fw6liDZc7BBmEaSYn01fMU1OUYbf6GPsbTtd8WmnqbI20SeycoHSeiybkE/q1Q+qlThQ==} + engines: {node: '>=10'} + hasBin: true + dependencies: + lru-cache: 6.0.0 + dev: true + /set-blocking@2.0.0: resolution: {integrity: sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==} From 8156378f8c5b4e562a00efc8faa18f2b3df8a5c0 Mon Sep 17 00:00:00 2001 From: Ben McCann <322311+benmccann@users.noreply.github.com> Date: Wed, 19 Jul 2023 15:35:53 -0700 Subject: [PATCH 19/47] upgrade dts-buddy --- packages/kit/package.json | 2 +- pnpm-lock.yaml | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/kit/package.json b/packages/kit/package.json index de3efff7718d..b9481911d2cf 100644 --- a/packages/kit/package.json +++ b/packages/kit/package.json @@ -32,7 +32,7 @@ "@types/node": "^16.18.6", "@types/sade": "^1.7.4", "@types/set-cookie-parser": "^2.4.2", - "dts-buddy": "^0.1.7", + "dts-buddy": "^0.1.8", "marked": "^4.2.3", "rollup": "^3.7.0", "svelte": "^4.0.5", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index ca5e7ec6fa2b..8c48de58b619 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -429,8 +429,8 @@ importers: specifier: ^2.4.2 version: 2.4.2 dts-buddy: - specifier: ^0.1.7 - version: 0.1.7 + specifier: ^0.1.8 + version: 0.1.8 marked: specifier: ^4.2.3 version: 4.2.3 @@ -3171,8 +3171,8 @@ packages: engines: {node: '>=12'} dev: true - /dts-buddy@0.1.7: - resolution: {integrity: sha512-zqKumjFt/RXVTPV3DT/L7NBDuc763NeAZEIJATicoSvxDnOnCFzV0WUc4JV8KZB3cwMCAktmEtL6ERXz+jJMrA==} + /dts-buddy@0.1.8: + resolution: {integrity: sha512-mc08Jzv9ooU3ZL6lR7knE1iajQ58LS1AfACo5lIm+besbGTWd0N4t6AKzk5WbmVf8eFuhcZDz1t5B3Gl6hi3FQ==} hasBin: true dependencies: '@jridgewell/source-map': 0.3.3 From 83b3c33b636606a725a2b887bf6250960a53eb86 Mon Sep 17 00:00:00 2001 From: Puru Vijay Date: Sat, 22 Jul 2023 16:14:59 +0530 Subject: [PATCH 20/47] Push, asyncify --- pnpm-lock.yaml | 751 +++++++++++++++--- sites/kit.svelte.dev/package.json | 26 +- .../src/lib/server/docs/index.js | 20 +- .../src/routes/content.json/+server.js | 4 +- .../src/routes/content.json/content.server.js | 10 +- .../src/routes/docs/+layout.server.js | 4 +- .../src/routes/docs/[slug]/+page.server.js | 2 +- .../src/routes/docs/[slug]/+page.svelte | 7 +- .../src/routes/nav.json/+server.js | 2 +- 9 files changed, 695 insertions(+), 131 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 8c48de58b619..0fd8b921f0c8 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -992,8 +992,8 @@ importers: sites/kit.svelte.dev: dependencies: d3-geo: - specifier: ^3.0.1 - version: 3.0.1 + specifier: ^3.1.0 + version: 3.1.0 d3-geo-projection: specifier: ^4.0.0 version: 4.0.0 @@ -1011,23 +1011,23 @@ importers: specifier: workspace:^ version: link:../../packages/kit '@sveltejs/site-kit': - specifier: ^6.0.0-next.17 - version: 6.0.0-next.17(@sveltejs/kit@packages+kit)(svelte@4.0.5) + specifier: 6.0.0-next.21 + version: 6.0.0-next.21(@sveltejs/kit@packages+kit)(svelte@4.1.1) '@types/d3-geo': - specifier: ^3.0.2 - version: 3.0.2 + specifier: ^3.0.3 + version: 3.0.3 '@types/node': - specifier: ^16.18.6 - version: 16.18.6 + specifier: ^20.4.3 + version: 20.4.3 flexsearch: specifier: ^0.7.31 version: 0.7.31 magic-string: - specifier: ^0.30.0 - version: 0.30.0 + specifier: ^0.30.1 + version: 0.30.1 marked: - specifier: ^4.2.3 - version: 4.2.3 + specifier: ^5.1.1 + version: 5.1.1 prism-svelte: specifier: ^0.5.0 version: 0.5.0 @@ -1035,26 +1035,26 @@ importers: specifier: ^1.29.0 version: 1.29.0 shiki-twoslash: - specifier: ^3.1.0 - version: 3.1.0 + specifier: ^3.1.2 + version: 3.1.2(typescript@5.1.6) svelte: - specifier: ^4.0.5 - version: 4.0.5 + specifier: ^4.1.1 + version: 4.1.1 tiny-glob: specifier: ^0.2.9 version: 0.2.9 typescript: - specifier: ^5.0.4 - version: 5.0.4 + specifier: ^5.1.6 + version: 5.1.6 vite: - specifier: ^4.4.2 - version: 4.4.2(@types/node@16.18.6) + specifier: ^4.4.6 + version: 4.4.6(@types/node@20.4.3) vite-imagetools: specifier: ^5.0.5 version: 5.0.5(rollup@3.7.0) vitest: - specifier: ^0.32.2 - version: 0.32.2(playwright@1.30.0) + specifier: ^0.33.0 + version: 0.33.0(playwright@1.30.0) packages: @@ -1323,6 +1323,7 @@ packages: cpu: [arm64] os: [android] requiresBuild: true + dev: false optional: true /@esbuild/android-arm64@0.18.14: @@ -1333,12 +1334,22 @@ packages: requiresBuild: true optional: true + /@esbuild/android-arm64@0.18.15: + resolution: {integrity: sha512-NI/gnWcMl2kXt1HJKOn2H69SYn4YNheKo6NZt1hyfKWdMbaGadxjZIkcj4Gjk/WPxnbFXs9/3HjGHaknCqjrww==} + engines: {node: '>=12'} + cpu: [arm64] + os: [android] + requiresBuild: true + dev: true + optional: true + /@esbuild/android-arm@0.18.11: resolution: {integrity: sha512-q4qlUf5ucwbUJZXF5tEQ8LF7y0Nk4P58hOsGk3ucY0oCwgQqAnqXVbUuahCddVHfrxmpyewRpiTHwVHIETYu7Q==} engines: {node: '>=12'} cpu: [arm] os: [android] requiresBuild: true + dev: false optional: true /@esbuild/android-arm@0.18.14: @@ -1349,12 +1360,22 @@ packages: requiresBuild: true optional: true + /@esbuild/android-arm@0.18.15: + resolution: {integrity: sha512-wlkQBWb79/jeEEoRmrxt/yhn5T1lU236OCNpnfRzaCJHZ/5gf82uYx1qmADTBWE0AR/v7FiozE1auk2riyQd3w==} + engines: {node: '>=12'} + cpu: [arm] + os: [android] + requiresBuild: true + dev: true + optional: true + /@esbuild/android-x64@0.18.11: resolution: {integrity: sha512-iPuoxQEV34+hTF6FT7om+Qwziv1U519lEOvekXO9zaMMlT9+XneAhKL32DW3H7okrCOBQ44BMihE8dclbZtTuw==} engines: {node: '>=12'} cpu: [x64] os: [android] requiresBuild: true + dev: false optional: true /@esbuild/android-x64@0.18.14: @@ -1365,12 +1386,22 @@ packages: requiresBuild: true optional: true + /@esbuild/android-x64@0.18.15: + resolution: {integrity: sha512-FM9NQamSaEm/IZIhegF76aiLnng1kEsZl2eve/emxDeReVfRuRNmvT28l6hoFD9TsCxpK+i4v8LPpEj74T7yjA==} + engines: {node: '>=12'} + cpu: [x64] + os: [android] + requiresBuild: true + dev: true + optional: true + /@esbuild/darwin-arm64@0.18.11: resolution: {integrity: sha512-Gm0QkI3k402OpfMKyQEEMG0RuW2LQsSmI6OeO4El2ojJMoF5NLYb3qMIjvbG/lbMeLOGiW6ooU8xqc+S0fgz2w==} engines: {node: '>=12'} cpu: [arm64] os: [darwin] requiresBuild: true + dev: false optional: true /@esbuild/darwin-arm64@0.18.14: @@ -1381,12 +1412,22 @@ packages: requiresBuild: true optional: true + /@esbuild/darwin-arm64@0.18.15: + resolution: {integrity: sha512-XmrFwEOYauKte9QjS6hz60FpOCnw4zaPAb7XV7O4lx1r39XjJhTN7ZpXqJh4sN6q60zbP6QwAVVA8N/wUyBH/w==} + engines: {node: '>=12'} + cpu: [arm64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + /@esbuild/darwin-x64@0.18.11: resolution: {integrity: sha512-N15Vzy0YNHu6cfyDOjiyfJlRJCB/ngKOAvoBf1qybG3eOq0SL2Lutzz9N7DYUbb7Q23XtHPn6lMDF6uWbGv9Fw==} engines: {node: '>=12'} cpu: [x64] os: [darwin] requiresBuild: true + dev: false optional: true /@esbuild/darwin-x64@0.18.14: @@ -1397,12 +1438,22 @@ packages: requiresBuild: true optional: true + /@esbuild/darwin-x64@0.18.15: + resolution: {integrity: sha512-bMqBmpw1e//7Fh5GLetSZaeo9zSC4/CMtrVFdj+bqKPGJuKyfNJ5Nf2m3LknKZTS+Q4oyPiON+v3eaJ59sLB5A==} + engines: {node: '>=12'} + cpu: [x64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + /@esbuild/freebsd-arm64@0.18.11: resolution: {integrity: sha512-atEyuq6a3omEY5qAh5jIORWk8MzFnCpSTUruBgeyN9jZq1K/QI9uke0ATi3MHu4L8c59CnIi4+1jDKMuqmR71A==} engines: {node: '>=12'} cpu: [arm64] os: [freebsd] requiresBuild: true + dev: false optional: true /@esbuild/freebsd-arm64@0.18.14: @@ -1413,12 +1464,22 @@ packages: requiresBuild: true optional: true + /@esbuild/freebsd-arm64@0.18.15: + resolution: {integrity: sha512-LoTK5N3bOmNI9zVLCeTgnk5Rk0WdUTrr9dyDAQGVMrNTh9EAPuNwSTCgaKOKiDpverOa0htPcO9NwslSE5xuLA==} + engines: {node: '>=12'} + cpu: [arm64] + os: [freebsd] + requiresBuild: true + dev: true + optional: true + /@esbuild/freebsd-x64@0.18.11: resolution: {integrity: sha512-XtuPrEfBj/YYYnAAB7KcorzzpGTvOr/dTtXPGesRfmflqhA4LMF0Gh/n5+a9JBzPuJ+CGk17CA++Hmr1F/gI0Q==} engines: {node: '>=12'} cpu: [x64] os: [freebsd] requiresBuild: true + dev: false optional: true /@esbuild/freebsd-x64@0.18.14: @@ -1429,12 +1490,22 @@ packages: requiresBuild: true optional: true + /@esbuild/freebsd-x64@0.18.15: + resolution: {integrity: sha512-62jX5n30VzgrjAjOk5orYeHFq6sqjvsIj1QesXvn5OZtdt5Gdj0vUNJy9NIpjfdNdqr76jjtzBJKf+h2uzYuTQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [freebsd] + requiresBuild: true + dev: true + optional: true + /@esbuild/linux-arm64@0.18.11: resolution: {integrity: sha512-c6Vh2WS9VFKxKZ2TvJdA7gdy0n6eSy+yunBvv4aqNCEhSWVor1TU43wNRp2YLO9Vng2G+W94aRz+ILDSwAiYog==} engines: {node: '>=12'} cpu: [arm64] os: [linux] requiresBuild: true + dev: false optional: true /@esbuild/linux-arm64@0.18.14: @@ -1445,12 +1516,22 @@ packages: requiresBuild: true optional: true + /@esbuild/linux-arm64@0.18.15: + resolution: {integrity: sha512-BWncQeuWDgYv0jTNzJjaNgleduV4tMbQjmk/zpPh/lUdMcNEAxy+jvneDJ6RJkrqloG7tB9S9rCrtfk/kuplsQ==} + engines: {node: '>=12'} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true + optional: true + /@esbuild/linux-arm@0.18.11: resolution: {integrity: sha512-Idipz+Taso/toi2ETugShXjQ3S59b6m62KmLHkJlSq/cBejixmIydqrtM2XTvNCywFl3VC7SreSf6NV0i6sRyg==} engines: {node: '>=12'} cpu: [arm] os: [linux] requiresBuild: true + dev: false optional: true /@esbuild/linux-arm@0.18.14: @@ -1461,12 +1542,22 @@ packages: requiresBuild: true optional: true + /@esbuild/linux-arm@0.18.15: + resolution: {integrity: sha512-dT4URUv6ir45ZkBqhwZwyFV6cH61k8MttIwhThp2BGiVtagYvCToF+Bggyx2VI57RG4Fbt21f9TmXaYx0DeUJg==} + engines: {node: '>=12'} + cpu: [arm] + os: [linux] + requiresBuild: true + dev: true + optional: true + /@esbuild/linux-ia32@0.18.11: resolution: {integrity: sha512-S3hkIF6KUqRh9n1Q0dSyYcWmcVa9Cg+mSoZEfFuzoYXXsk6196qndrM+ZiHNwpZKi3XOXpShZZ+9dfN5ykqjjw==} engines: {node: '>=12'} cpu: [ia32] os: [linux] requiresBuild: true + dev: false optional: true /@esbuild/linux-ia32@0.18.14: @@ -1477,12 +1568,22 @@ packages: requiresBuild: true optional: true + /@esbuild/linux-ia32@0.18.15: + resolution: {integrity: sha512-JPXORvgHRHITqfms1dWT/GbEY89u848dC08o0yK3fNskhp0t2TuNUnsrrSgOdH28ceb1hJuwyr8R/1RnyPwocw==} + engines: {node: '>=12'} + cpu: [ia32] + os: [linux] + requiresBuild: true + dev: true + optional: true + /@esbuild/linux-loong64@0.18.11: resolution: {integrity: sha512-MRESANOoObQINBA+RMZW+Z0TJWpibtE7cPFnahzyQHDCA9X9LOmGh68MVimZlM9J8n5Ia8lU773te6O3ILW8kw==} engines: {node: '>=12'} cpu: [loong64] os: [linux] requiresBuild: true + dev: false optional: true /@esbuild/linux-loong64@0.18.14: @@ -1493,12 +1594,22 @@ packages: requiresBuild: true optional: true + /@esbuild/linux-loong64@0.18.15: + resolution: {integrity: sha512-kArPI0DopjJCEplsVj/H+2Qgzz7vdFSacHNsgoAKpPS6W/Ndh8Oe24HRDQ5QCu4jHgN6XOtfFfLpRx3TXv/mEg==} + engines: {node: '>=12'} + cpu: [loong64] + os: [linux] + requiresBuild: true + dev: true + optional: true + /@esbuild/linux-mips64el@0.18.11: resolution: {integrity: sha512-qVyPIZrXNMOLYegtD1u8EBccCrBVshxMrn5MkuFc3mEVsw7CCQHaqZ4jm9hbn4gWY95XFnb7i4SsT3eflxZsUg==} engines: {node: '>=12'} cpu: [mips64el] os: [linux] requiresBuild: true + dev: false optional: true /@esbuild/linux-mips64el@0.18.14: @@ -1509,12 +1620,22 @@ packages: requiresBuild: true optional: true + /@esbuild/linux-mips64el@0.18.15: + resolution: {integrity: sha512-b/tmngUfO02E00c1XnNTw/0DmloKjb6XQeqxaYuzGwHe0fHVgx5/D6CWi+XH1DvkszjBUkK9BX7n1ARTOst59w==} + engines: {node: '>=12'} + cpu: [mips64el] + os: [linux] + requiresBuild: true + dev: true + optional: true + /@esbuild/linux-ppc64@0.18.11: resolution: {integrity: sha512-T3yd8vJXfPirZaUOoA9D2ZjxZX4Gr3QuC3GztBJA6PklLotc/7sXTOuuRkhE9W/5JvJP/K9b99ayPNAD+R+4qQ==} engines: {node: '>=12'} cpu: [ppc64] os: [linux] requiresBuild: true + dev: false optional: true /@esbuild/linux-ppc64@0.18.14: @@ -1525,12 +1646,22 @@ packages: requiresBuild: true optional: true + /@esbuild/linux-ppc64@0.18.15: + resolution: {integrity: sha512-KXPY69MWw79QJkyvUYb2ex/OgnN/8N/Aw5UDPlgoRtoEfcBqfeLodPr42UojV3NdkoO4u10NXQdamWm1YEzSKw==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [linux] + requiresBuild: true + dev: true + optional: true + /@esbuild/linux-riscv64@0.18.11: resolution: {integrity: sha512-evUoRPWiwuFk++snjH9e2cAjF5VVSTj+Dnf+rkO/Q20tRqv+644279TZlPK8nUGunjPAtQRCj1jQkDAvL6rm2w==} engines: {node: '>=12'} cpu: [riscv64] os: [linux] requiresBuild: true + dev: false optional: true /@esbuild/linux-riscv64@0.18.14: @@ -1541,12 +1672,22 @@ packages: requiresBuild: true optional: true + /@esbuild/linux-riscv64@0.18.15: + resolution: {integrity: sha512-komK3NEAeeGRnvFEjX1SfVg6EmkfIi5aKzevdvJqMydYr9N+pRQK0PGJXk+bhoPZwOUgLO4l99FZmLGk/L1jWg==} + engines: {node: '>=12'} + cpu: [riscv64] + os: [linux] + requiresBuild: true + dev: true + optional: true + /@esbuild/linux-s390x@0.18.11: resolution: {integrity: sha512-/SlRJ15XR6i93gRWquRxYCfhTeC5PdqEapKoLbX63PLCmAkXZHY2uQm2l9bN0oPHBsOw2IswRZctMYS0MijFcg==} engines: {node: '>=12'} cpu: [s390x] os: [linux] requiresBuild: true + dev: false optional: true /@esbuild/linux-s390x@0.18.14: @@ -1557,12 +1698,22 @@ packages: requiresBuild: true optional: true + /@esbuild/linux-s390x@0.18.15: + resolution: {integrity: sha512-632T5Ts6gQ2WiMLWRRyeflPAm44u2E/s/TJvn+BP6M5mnHSk93cieaypj3VSMYO2ePTCRqAFXtuYi1yv8uZJNA==} + engines: {node: '>=12'} + cpu: [s390x] + os: [linux] + requiresBuild: true + dev: true + optional: true + /@esbuild/linux-x64@0.18.11: resolution: {integrity: sha512-xcncej+wF16WEmIwPtCHi0qmx1FweBqgsRtEL1mSHLFR6/mb3GEZfLQnx+pUDfRDEM4DQF8dpXIW7eDOZl1IbA==} engines: {node: '>=12'} cpu: [x64] os: [linux] requiresBuild: true + dev: false optional: true /@esbuild/linux-x64@0.18.14: @@ -1573,12 +1724,22 @@ packages: requiresBuild: true optional: true + /@esbuild/linux-x64@0.18.15: + resolution: {integrity: sha512-MsHtX0NgvRHsoOtYkuxyk4Vkmvk3PLRWfA4okK7c+6dT0Fu4SUqXAr9y4Q3d8vUf1VWWb6YutpL4XNe400iQ1g==} + engines: {node: '>=12'} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + /@esbuild/netbsd-x64@0.18.11: resolution: {integrity: sha512-aSjMHj/F7BuS1CptSXNg6S3M4F3bLp5wfFPIJM+Km2NfIVfFKhdmfHF9frhiCLIGVzDziggqWll0B+9AUbud/Q==} engines: {node: '>=12'} cpu: [x64] os: [netbsd] requiresBuild: true + dev: false optional: true /@esbuild/netbsd-x64@0.18.14: @@ -1589,12 +1750,22 @@ packages: requiresBuild: true optional: true + /@esbuild/netbsd-x64@0.18.15: + resolution: {integrity: sha512-djST6s+jQiwxMIVQ5rlt24JFIAr4uwUnzceuFL7BQT4CbrRtqBPueS4GjXSiIpmwVri1Icj/9pFRJ7/aScvT+A==} + engines: {node: '>=12'} + cpu: [x64] + os: [netbsd] + requiresBuild: true + dev: true + optional: true + /@esbuild/openbsd-x64@0.18.11: resolution: {integrity: sha512-tNBq+6XIBZtht0xJGv7IBB5XaSyvYPCm1PxJ33zLQONdZoLVM0bgGqUrXnJyiEguD9LU4AHiu+GCXy/Hm9LsdQ==} engines: {node: '>=12'} cpu: [x64] os: [openbsd] requiresBuild: true + dev: false optional: true /@esbuild/openbsd-x64@0.18.14: @@ -1605,12 +1776,22 @@ packages: requiresBuild: true optional: true + /@esbuild/openbsd-x64@0.18.15: + resolution: {integrity: sha512-naeRhUIvhsgeounjkF5mvrNAVMGAm6EJWiabskeE5yOeBbLp7T89tAEw0j5Jm/CZAwyLe3c67zyCWH6fsBLCpw==} + engines: {node: '>=12'} + cpu: [x64] + os: [openbsd] + requiresBuild: true + dev: true + optional: true + /@esbuild/sunos-x64@0.18.11: resolution: {integrity: sha512-kxfbDOrH4dHuAAOhr7D7EqaYf+W45LsAOOhAet99EyuxxQmjbk8M9N4ezHcEiCYPaiW8Dj3K26Z2V17Gt6p3ng==} engines: {node: '>=12'} cpu: [x64] os: [sunos] requiresBuild: true + dev: false optional: true /@esbuild/sunos-x64@0.18.14: @@ -1621,12 +1802,22 @@ packages: requiresBuild: true optional: true + /@esbuild/sunos-x64@0.18.15: + resolution: {integrity: sha512-qkT2+WxyKbNIKV1AEhI8QiSIgTHMcRctzSaa/I3kVgMS5dl3fOeoqkb7pW76KwxHoriImhx7Mg3TwN/auMDsyQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [sunos] + requiresBuild: true + dev: true + optional: true + /@esbuild/win32-arm64@0.18.11: resolution: {integrity: sha512-Sh0dDRyk1Xi348idbal7lZyfSkjhJsdFeuC13zqdipsvMetlGiFQNdO+Yfp6f6B4FbyQm7qsk16yaZk25LChzg==} engines: {node: '>=12'} cpu: [arm64] os: [win32] requiresBuild: true + dev: false optional: true /@esbuild/win32-arm64@0.18.14: @@ -1637,12 +1828,22 @@ packages: requiresBuild: true optional: true + /@esbuild/win32-arm64@0.18.15: + resolution: {integrity: sha512-HC4/feP+pB2Vb+cMPUjAnFyERs+HJN7E6KaeBlFdBv799MhD+aPJlfi/yk36SED58J9TPwI8MAcVpJgej4ud0A==} + engines: {node: '>=12'} + cpu: [arm64] + os: [win32] + requiresBuild: true + dev: true + optional: true + /@esbuild/win32-ia32@0.18.11: resolution: {integrity: sha512-o9JUIKF1j0rqJTFbIoF4bXj6rvrTZYOrfRcGyL0Vm5uJ/j5CkBD/51tpdxe9lXEDouhRgdr/BYzUrDOvrWwJpg==} engines: {node: '>=12'} cpu: [ia32] os: [win32] requiresBuild: true + dev: false optional: true /@esbuild/win32-ia32@0.18.14: @@ -1653,12 +1854,22 @@ packages: requiresBuild: true optional: true + /@esbuild/win32-ia32@0.18.15: + resolution: {integrity: sha512-ovjwoRXI+gf52EVF60u9sSDj7myPixPxqzD5CmkEUmvs+W9Xd0iqISVBQn8xcx4ciIaIVlWCuTbYDOXOnOL44Q==} + engines: {node: '>=12'} + cpu: [ia32] + os: [win32] + requiresBuild: true + dev: true + optional: true + /@esbuild/win32-x64@0.18.11: resolution: {integrity: sha512-rQI4cjLHd2hGsM1LqgDI7oOCYbQ6IBOVsX9ejuRMSze0GqXUG2ekwiKkiBU1pRGSeCqFFHxTrcEydB2Hyoz9CA==} engines: {node: '>=12'} cpu: [x64] os: [win32] requiresBuild: true + dev: false optional: true /@esbuild/win32-x64@0.18.14: @@ -1669,6 +1880,15 @@ packages: requiresBuild: true optional: true + /@esbuild/win32-x64@0.18.15: + resolution: {integrity: sha512-imUxH9a3WJARyAvrG7srLyiK73XdX83NXQkjKvQ+7vPh3ZxoLrzvPkQKKw2DwZ+RV2ZB6vBfNHP8XScAmQC3aA==} + engines: {node: '>=12'} + cpu: [x64] + os: [win32] + requiresBuild: true + dev: true + optional: true + /@eslint-community/eslint-utils@4.4.0(eslint@8.40.0): resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -1739,6 +1959,13 @@ packages: engines: {node: '>=8'} dev: true + /@jest/schemas@29.6.0: + resolution: {integrity: sha512-rxLjXyJBTL4LQeJW3aKo0M/+GkCOXsO+8i9Iu7eDb6KwtP65ayoDsitrdPBtujxQ88k4wI2FNYfa6TOGwSn6cQ==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + '@sinclair/typebox': 0.27.8 + dev: true + /@jridgewell/gen-mapping@0.3.3: resolution: {integrity: sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==} engines: {node: '>=6.0.0'} @@ -1923,11 +2150,15 @@ packages: rollup: optional: true dependencies: - '@types/estree': 1.0.0 + '@types/estree': 1.0.1 estree-walker: 2.0.2 picomatch: 2.3.1 rollup: 3.7.0 + /@sinclair/typebox@0.27.8: + resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==} + dev: true + /@sveltejs/eslint-config@6.0.4(@typescript-eslint/eslint-plugin@6.0.0)(@typescript-eslint/parser@6.1.0)(eslint-config-prettier@8.8.0)(eslint-plugin-svelte@2.31.0)(eslint-plugin-unicorn@48.0.0)(eslint@8.40.0)(typescript@4.9.4): resolution: {integrity: sha512-U9pwmDs+DbmsnCgTfu6Bacdwqn0DuI1IQNSiQqTgzVyYfaaj+zy9ZoQCiJfxFBGXHkklyXuRHp0KMx346N0lcQ==} peerDependencies: @@ -1948,16 +2179,16 @@ packages: typescript: 4.9.4 dev: true - /@sveltejs/site-kit@6.0.0-next.17(@sveltejs/kit@packages+kit)(svelte@4.0.5): - resolution: {integrity: sha512-+2AlkIwKtwrfcsvoxSXkRZ5EFI1Rz/8ZZVMi6qmLhPgX0CYm+yyyCslaASmAB+Ztq3JYVwNx+4eQ6Mafeitjiw==} + /@sveltejs/site-kit@6.0.0-next.21(@sveltejs/kit@packages+kit)(svelte@4.1.1): + resolution: {integrity: sha512-Zt0rrgVnpDAe0bX5xKbjfxM3EoiVL+cfr5WFuDpTnUHWqPfgLu2FMxnMWY6fyFurNh/Q4UfDwVF68eQUdXLDWg==} peerDependencies: - '@sveltejs/kit': ^1.0.0 - svelte: ^3.54.0 || ^4.0.0-next.1 || ^4.0.0 + '@sveltejs/kit': ^1.20.0 + svelte: ^4.0.0 dependencies: '@sveltejs/kit': link:packages/kit esm-env: 1.0.0 - svelte: 4.0.5 - svelte-local-storage-store: 0.5.0(svelte@4.0.5) + svelte: 4.1.1 + svelte-local-storage-store: 0.5.0(svelte@4.1.1) dev: true /@sveltejs/vite-plugin-svelte-inspector@1.0.2(@sveltejs/vite-plugin-svelte@2.4.1)(svelte@4.0.5)(vite@4.4.2): @@ -2028,15 +2259,15 @@ packages: /@types/connect@3.4.35: resolution: {integrity: sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==} dependencies: - '@types/node': 18.11.11 + '@types/node': 16.18.6 dev: true /@types/cookie@0.5.1: resolution: {integrity: sha512-COUnqfB2+ckwXXSFInsFdOAWQzCCx+a5hq2ruyj+Vjund94RJQd4LG2u9hnvJrTgunKAaax7ancBYlDrNYxA0g==} dev: false - /@types/d3-geo@3.0.2: - resolution: {integrity: sha512-DbqK7MLYA8LpyHQfv6Klz0426bQEf7bRTvhMy44sNGVyZoWn//B0c+Qbeg8Osi2Obdc9BLLXYAKpyWege2/7LQ==} + /@types/d3-geo@3.0.3: + resolution: {integrity: sha512-bK9uZJS3vuDCNeeXQ4z3u0E7OeJZXjUgzFdSOtNtMCJCLvDtWDwfpRVWlyt3y8EvRzI0ccOu9xlMVirawolSCw==} dependencies: '@types/geojson': 7946.0.10 dev: true @@ -2044,6 +2275,9 @@ packages: /@types/estree@1.0.0: resolution: {integrity: sha512-WulqXMDUTYAXCjZnk6JtIHPigp55cVtDgDrO2gHRwhyJto21+1zbVCtOYB2L1F9w4qCQ0rOGWBnBe0FNTiEJIQ==} + /@types/estree@1.0.1: + resolution: {integrity: sha512-LG4opVs2ANWZ1TJoKc937iMmNstM/d0ae1vNbnBvBhqCSezgVUOzcLCqbI5elV8Vy6WKwKjaqR+zO9VKirBBCA==} + /@types/geojson@7946.0.10: resolution: {integrity: sha512-Nmh0K3iWQJzniTuPRcJn5hxXkfB1T1pgB89SBig5PlJQU5yocazeu4jATJlaA0GYFKWMqDdvYemoSnF2pXgLVA==} dev: true @@ -2089,8 +2323,8 @@ packages: /@types/node@16.18.6: resolution: {integrity: sha512-vmYJF0REqDyyU0gviezF/KHq/fYaUbFhkcNbQCuPGFQj6VTbXuHZoxs/Y7mutWe73C8AC6l9fFu8mSYiBAqkGA==} - /@types/node@18.11.11: - resolution: {integrity: sha512-KJ021B1nlQUBLopzZmPBVuGU9un7WJd/W4ya7Ih02B4Uwky5Nja0yGYav2EfYIk0RR2Q9oVhf60S2XR1BCWJ2g==} + /@types/node@20.4.3: + resolution: {integrity: sha512-Yu3+r4Mn/iY6Mf0aihncZQ1qOjOUrCiodbHHY1hds5O+7BbKp9t+Li7zLO13zO8j9L2C6euz8xsYQP0rjGvVXw==} dev: true /@types/normalize-package-data@2.4.1: @@ -2104,7 +2338,7 @@ packages: /@types/prompts@2.4.1: resolution: {integrity: sha512-1Mqzhzi9W5KlooNE4o0JwSXGUDeQXKldbGn9NO4tpxwZbHXYd+WcKpCksG2lbhH7U9I9LigfsdVsP2QAY0lNPA==} dependencies: - '@types/node': 18.11.11 + '@types/node': 16.18.6 dev: true /@types/pug@2.0.6: @@ -2131,7 +2365,7 @@ packages: /@types/set-cookie-parser@2.4.2: resolution: {integrity: sha512-fBZgytwhYAUkj/jC/FAV4RQ5EerRup1YQsXQCh8rZfiHkc4UahC192oH0smGwsXol3cL3A5oETuAHeQHmhXM4w==} dependencies: - '@types/node': 18.11.11 + '@types/node': 16.18.6 dev: true /@types/ws@8.5.3: @@ -2321,7 +2555,7 @@ packages: dependencies: '@typescript/vfs': 1.3.5 debug: 4.3.4 - lz-string: 1.4.4 + lz-string: 1.5.0 transitivePeerDependencies: - supports-color dev: true @@ -2371,6 +2605,14 @@ packages: chai: 4.3.7 dev: true + /@vitest/expect@0.33.0: + resolution: {integrity: sha512-sVNf+Gla3mhTCxNJx+wJLDPp/WcstOe0Ksqz4Vec51MmgMth/ia0MGFEkIZmVGeTL5HtjYR4Wl/ZxBxBXZJTzQ==} + dependencies: + '@vitest/spy': 0.33.0 + '@vitest/utils': 0.33.0 + chai: 4.3.7 + dev: true + /@vitest/runner@0.32.2: resolution: {integrity: sha512-06vEL0C1pomOEktGoLjzZw+1Fb+7RBRhmw/06WkDrd1akkT9i12su0ku+R/0QM69dfkIL/rAIDTG+CSuQVDcKw==} dependencies: @@ -2380,20 +2622,42 @@ packages: pathe: 1.1.0 dev: true + /@vitest/runner@0.33.0: + resolution: {integrity: sha512-UPfACnmCB6HKRHTlcgCoBh6ppl6fDn+J/xR8dTufWiKt/74Y9bHci5CKB8tESSV82zKYtkBJo9whU3mNvfaisg==} + dependencies: + '@vitest/utils': 0.33.0 + p-limit: 4.0.0 + pathe: 1.1.1 + dev: true + /@vitest/snapshot@0.32.2: resolution: {integrity: sha512-JwhpeH/PPc7GJX38vEfCy9LtRzf9F4er7i4OsAJyV7sjPwjj+AIR8cUgpMTWK4S3TiamzopcTyLsZDMuldoi5A==} dependencies: - magic-string: 0.30.0 + magic-string: 0.30.1 pathe: 1.1.0 pretty-format: 27.5.1 dev: true + /@vitest/snapshot@0.33.0: + resolution: {integrity: sha512-tJjrl//qAHbyHajpFvr8Wsk8DIOODEebTu7pgBrP07iOepR5jYkLFiqLq2Ltxv+r0uptUb4izv1J8XBOwKkVYA==} + dependencies: + magic-string: 0.30.1 + pathe: 1.1.1 + pretty-format: 29.6.1 + dev: true + /@vitest/spy@0.32.2: resolution: {integrity: sha512-Q/ZNILJ4ca/VzQbRM8ur3Si5Sardsh1HofatG9wsJY1RfEaw0XKP8IVax2lI1qnrk9YPuG9LA2LkZ0EI/3d4ug==} dependencies: tinyspy: 2.1.0 dev: true + /@vitest/spy@0.33.0: + resolution: {integrity: sha512-Kv+yZ4hnH1WdiAkPUQTpRxW8kGtH8VRTnus7ZTGovFYM1ZezJpvGtb9nPIjPnptHbsyIAxYZsEpVPYgtpjGnrg==} + dependencies: + tinyspy: 2.1.1 + dev: true + /@vitest/utils@0.32.2: resolution: {integrity: sha512-lnJ0T5i03j0IJaeW73hxe2AuVnZ/y1BhhCOuIcl9LIzXnbpXJT9Lrt6brwKHXLOiA7MZ6N5hSJjt0xE1dGNCzQ==} dependencies: @@ -2402,6 +2666,14 @@ packages: pretty-format: 27.5.1 dev: true + /@vitest/utils@0.33.0: + resolution: {integrity: sha512-pF1w22ic965sv+EN6uoePkAOTkAPWM03Ri/jXNyMIKBb/XHLDPfhLvf/Fa9g0YECevAIz56oVYXhodLvLQ/awA==} + dependencies: + diff-sequences: 29.4.3 + loupe: 2.3.6 + pretty-format: 29.6.1 + dev: true + /abbrev@1.1.1: resolution: {integrity: sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==} dev: false @@ -2569,6 +2841,10 @@ packages: dependencies: dequal: 2.0.3 + /b4a@1.6.4: + resolution: {integrity: sha512-fpWrvyVHEKyeEvbKZTVOeZF3VSKKWtJxFIxX/jaVPf+cLbGUSitjb49pHLqPV2BUNNZ0LcoeEGfE/YCpyDYHIw==} + dev: true + /balanced-match@1.0.2: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} @@ -2598,7 +2874,7 @@ packages: dependencies: buffer: 5.7.1 inherits: 2.0.4 - readable-stream: 3.6.0 + readable-stream: 3.6.2 dev: true /blueimp-md5@2.19.0: @@ -2836,7 +3112,7 @@ packages: resolution: {integrity: sha512-kVwJELqiILQyG5aeuyKFbdsI1fmQy1Cmf7dQ8eGmVuJoaRVdwey7WaMknr2ZFeVSYSKT0rExsa8EGw0aoI/1QQ==} dependencies: '@jridgewell/sourcemap-codec': 1.4.15 - '@types/estree': 1.0.0 + '@types/estree': 1.0.1 acorn: 8.10.0 estree-walker: 3.0.3 periscopic: 3.1.0 @@ -3007,8 +3283,8 @@ packages: stream-transform: 2.1.3 dev: true - /d3-array@3.2.0: - resolution: {integrity: sha512-3yXFQo0oG3QCxbF06rMPFyGRMGJNS7NvsV1+2joOjbBE+9xvWQ8+GcMJAjRCzw06zQ3/arXeJgbPYcjUCuC+3g==} + /d3-array@3.2.4: + resolution: {integrity: sha512-tdQAmyA18i4J7wprpYq8ClcxZy3SC31QMeByyCFyRt7BVHdREQZ5lpzoe5mFEYZUWe+oq8HBvk9JjpibyEV4Jg==} engines: {node: '>=12'} dependencies: internmap: 2.0.3 @@ -3020,15 +3296,15 @@ packages: hasBin: true dependencies: commander: 7.2.0 - d3-array: 3.2.0 - d3-geo: 3.0.1 + d3-array: 3.2.4 + d3-geo: 3.1.0 dev: false - /d3-geo@3.0.1: - resolution: {integrity: sha512-Wt23xBych5tSy9IYAM1FR2rWIBFWa52B/oF/GYe5zbdHrg08FU8+BuI6X4PvTwPDdqdAdq04fuWJpELtsaEjeA==} + /d3-geo@3.1.0: + resolution: {integrity: sha512-JEo5HxXDdDYXCaWdwLRt79y7giK8SbhZJbFWXqbRTolCHFI5jRqteLzCsq51NKbUoX0PjBVSohxrx+NoOUujYA==} engines: {node: '>=12'} dependencies: - d3-array: 3.2.0 + d3-array: 3.2.4 dev: false /dataloader@1.4.0: @@ -3137,6 +3413,12 @@ packages: /detect-libc@2.0.1: resolution: {integrity: sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w==} engines: {node: '>=8'} + dev: false + + /detect-libc@2.0.2: + resolution: {integrity: sha512-UX6sGumvvqSaXgdKGUsgZWqcUyIXZ/vZTrlRT/iobiKhGL0zL4d3osHj3uqllWJK+i+sixDS/3COVEOFbupFyw==} + engines: {node: '>=8'} + dev: true /devalue@4.3.1: resolution: {integrity: sha512-Kc0TSP9IUU9eg55au5Q3YtqaYI2cgntVpunJV9Exbm9nvlBeTE5p2NqYHfpuXK6+VF2hF5PI+BPFPUti7e2N1g==} @@ -3183,8 +3465,8 @@ packages: magic-string: 0.30.0 sade: 1.8.1 tiny-glob: 0.2.9 - ts-api-utils: 0.0.46(typescript@5.1.3) - typescript: 5.1.3 + ts-api-utils: 0.0.46(typescript@5.1.6) + typescript: 5.1.6 dev: true /emoji-regex@8.0.0: @@ -3286,6 +3568,7 @@ packages: '@esbuild/win32-arm64': 0.18.11 '@esbuild/win32-ia32': 0.18.11 '@esbuild/win32-x64': 0.18.11 + dev: false /esbuild@0.18.14: resolution: {integrity: sha512-uNPj5oHPYmj+ZhSQeYQVFZ+hAlJZbAGOmmILWIqrGvPVlNLbyOvU5Bu6Woi8G8nskcx0vwY0iFoMPrzT86Ko+w==} @@ -3316,6 +3599,36 @@ packages: '@esbuild/win32-ia32': 0.18.14 '@esbuild/win32-x64': 0.18.14 + /esbuild@0.18.15: + resolution: {integrity: sha512-3WOOLhrvuTGPRzQPU6waSDWrDTnQriia72McWcn6UCi43GhCHrXH4S59hKMeez+IITmdUuUyvbU9JIp+t3xlPQ==} + engines: {node: '>=12'} + hasBin: true + requiresBuild: true + optionalDependencies: + '@esbuild/android-arm': 0.18.15 + '@esbuild/android-arm64': 0.18.15 + '@esbuild/android-x64': 0.18.15 + '@esbuild/darwin-arm64': 0.18.15 + '@esbuild/darwin-x64': 0.18.15 + '@esbuild/freebsd-arm64': 0.18.15 + '@esbuild/freebsd-x64': 0.18.15 + '@esbuild/linux-arm': 0.18.15 + '@esbuild/linux-arm64': 0.18.15 + '@esbuild/linux-ia32': 0.18.15 + '@esbuild/linux-loong64': 0.18.15 + '@esbuild/linux-mips64el': 0.18.15 + '@esbuild/linux-ppc64': 0.18.15 + '@esbuild/linux-riscv64': 0.18.15 + '@esbuild/linux-s390x': 0.18.15 + '@esbuild/linux-x64': 0.18.15 + '@esbuild/netbsd-x64': 0.18.15 + '@esbuild/openbsd-x64': 0.18.15 + '@esbuild/sunos-x64': 0.18.15 + '@esbuild/win32-arm64': 0.18.15 + '@esbuild/win32-ia32': 0.18.15 + '@esbuild/win32-x64': 0.18.15 + dev: true + /escalade@3.1.1: resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} engines: {node: '>=6'} @@ -3509,7 +3822,7 @@ packages: /estree-walker@3.0.3: resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==} dependencies: - '@types/estree': 1.0.0 + '@types/estree': 1.0.1 /esutils@2.0.3: resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} @@ -3555,6 +3868,10 @@ packages: resolution: {integrity: sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==} dev: true + /fast-fifo@1.3.0: + resolution: {integrity: sha512-IgfweLvEpwyA4WgiQe9Nx6VV2QkML2NkvZnk1oKnIzXgXdWxuhF7zw4DvLTPZJn6PIUneiAXPF24QmoEqHTjyw==} + dev: true + /fast-glob@3.2.12: resolution: {integrity: sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==} engines: {node: '>=8.6.0'} @@ -3578,6 +3895,11 @@ packages: dependencies: reusify: 1.0.4 + /fenceparser@1.1.1: + resolution: {integrity: sha512-VdkTsK7GWLT0VWMK5S5WTAPn61wJ98WPFwJiRHumhg4ESNUO/tnkU8bzzzc62o6Uk1SVhuZFLnakmDA4SGV7wA==} + engines: {node: '>=12'} + dev: true + /file-entry-cache@6.0.1: resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} engines: {node: ^10.12.0 || >=12.0.0} @@ -3760,7 +4082,7 @@ packages: dev: true /github-from-package@0.0.0: - resolution: {integrity: sha1-l/tdlr/eiXMxPyDoKI75oWf6ZM4=} + resolution: {integrity: sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==} dev: true /gitignore-parser@0.0.2: @@ -3952,7 +4274,7 @@ packages: resolution: {integrity: sha512-Cn+xuuRiA2UC5XzSWKWaRBJGA9iFhwtaVLUIgujfv6SM4TF/wOAwAqWeZkbv/yyhmapdhFR5stsKE9owUge0jQ==} engines: {node: '>=12.0.0'} dependencies: - sharp: 0.32.1 + sharp: 0.32.4 dev: true /import-fresh@3.3.0: @@ -4141,7 +4463,7 @@ packages: /is-reference@3.0.1: resolution: {integrity: sha512-baJJdQLiYaJdvFbJqXrcGv3WU3QCzBlUcI5QhbesIm6/xPsvmO+2CDoi/GMOFBQEQm+PXkwOPrp9KK5ozZsp2w==} dependencies: - '@types/estree': 1.0.0 + '@types/estree': 1.0.1 /is-regex@1.1.4: resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==} @@ -4420,8 +4742,8 @@ packages: engines: {node: '>=16.14'} dev: true - /lz-string@1.4.4: - resolution: {integrity: sha512-0ckx7ZHRPqb0oUm8zNr+90mtf9DQB60H1wMCjBtfi62Kl3a7JbHob6gA2bC+xRvZoOL+1hzUK8jeuEIQE8svEQ==} + /lz-string@1.5.0: + resolution: {integrity: sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ==} hasBin: true dev: true @@ -4437,6 +4759,12 @@ packages: dependencies: '@jridgewell/sourcemap-codec': 1.4.14 + /magic-string@0.30.1: + resolution: {integrity: sha512-mbVKXPmS0z0G4XqFDCTllmDQ6coZzn94aMlb0o/A4HEHJCKcanlDZwYJgwnkmgD3jyWhUgj9VsPrfd972yPffA==} + engines: {node: '>=12'} + dependencies: + '@jridgewell/sourcemap-codec': 1.4.15 + /make-dir@3.1.0: resolution: {integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==} engines: {node: '>=8'} @@ -4459,6 +4787,12 @@ packages: hasBin: true dev: true + /marked@5.1.1: + resolution: {integrity: sha512-bTmmGdEINWmOMDjnPWDxGPQ4qkDLeYorpYbEtFOXzOruTwUE671q4Guiuchn4N8h/v6NGd7916kXsm3Iz4iUSg==} + engines: {node: '>= 18'} + hasBin: true + dev: true + /md5-hex@3.0.1: resolution: {integrity: sha512-BUiRtTtV39LIJwinWBjqVsU9xhdnz7/i889V859IBFpuqGAj6LuOvHv5XLbgZ2R7ptJoJaEcxkv88/h25T7Ciw==} engines: {node: '>=8'} @@ -4619,6 +4953,15 @@ packages: ufo: 1.1.2 dev: true + /mlly@1.4.0: + resolution: {integrity: sha512-ua8PAThnTwpprIaU47EPeZ/bPUVp2QYBbWMphUQpVdBI3Lgqzm5KZQ45Agm3YJedHXaIHl6pBGabaLSUPPSptg==} + dependencies: + acorn: 8.10.0 + pathe: 1.1.1 + pkg-types: 1.0.3 + ufo: 1.1.2 + dev: true + /mri@1.2.0: resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==} engines: {node: '>=4'} @@ -4662,11 +5005,11 @@ packages: tslib: 2.4.1 dev: false - /node-abi@3.40.0: - resolution: {integrity: sha512-zNy02qivjjRosswoYmPi8hIKJRr8MpQyeKT6qlcq/OnOgA3Rhoae+IYOqsM9V5+JnHWmxKnWOT2GxvtqdtOCXA==} + /node-abi@3.45.0: + resolution: {integrity: sha512-iwXuFrMAcFVi/ZoZiqq8BzAdsLw9kxDfTC0HMyjXfSL/6CSDAGD5UmR7azrAgWV1zKYq7dUUMj4owusBWKLsiQ==} engines: {node: '>=10'} dependencies: - semver: 7.5.3 + semver: 7.5.4 dev: true /node-addon-api@6.1.0: @@ -4951,6 +5294,10 @@ packages: resolution: {integrity: sha512-ODbEPR0KKHqECXW1GoxdDb+AZvULmXjVPy4rt+pGo2+TnjJTIPJQSVS6N63n8T2Ip+syHhbn52OewKicV0373w==} dev: true + /pathe@1.1.1: + resolution: {integrity: sha512-d+RQGp0MAYTIaDBIMmOfMwz3E+LOZnxx1HZd5R18mmCZY0QBlK0LDZfPc8FW8Ed2DlvsuE6PRjroDY+wg4+j/Q==} + dev: true + /pathval@1.1.1: resolution: {integrity: sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==} dev: true @@ -4958,7 +5305,7 @@ packages: /periscopic@3.1.0: resolution: {integrity: sha512-vKiQ8RRtkl9P+r/+oefh25C3fhybptkHKCZSPlcXiJux2tJF55GnEj3BVn4A5gKfq9NWWXXrxkHBwVPUfH0opw==} dependencies: - '@types/estree': 1.0.0 + '@types/estree': 1.0.1 estree-walker: 3.0.3 is-reference: 3.0.1 @@ -4995,8 +5342,8 @@ packages: resolution: {integrity: sha512-nN7pYi0AQqJnoLPC9eHFQ8AcyaixBUOwvqc5TDnIKCMEE6I0y8P7OKA7fPexsXGCGxQDl/cmrLAp26LhcwxZ4A==} dependencies: jsonc-parser: 3.2.0 - mlly: 1.2.0 - pathe: 1.1.0 + mlly: 1.4.0 + pathe: 1.1.1 dev: true /playwright-core@1.30.0: @@ -5087,18 +5434,27 @@ packages: picocolors: 1.0.0 source-map-js: 1.0.2 + /postcss@8.4.27: + resolution: {integrity: sha512-gY/ACJtJPSmUFPDCHtX78+01fHa64FaU4zaaWfuh1MhGJISufJAH4cun6k/8fwsHYeK4UQmENQK+tRLCFJE8JQ==} + engines: {node: ^10 || ^12 || >=14} + dependencies: + nanoid: 3.3.6 + picocolors: 1.0.0 + source-map-js: 1.0.2 + dev: true + /prebuild-install@7.1.1: resolution: {integrity: sha512-jAXscXWMcCK8GgCoHOfIr0ODh5ai8mj63L2nWrjuAgXE6tDyYGnx4/8o/rCgU+B4JSyZBKbeZqzhtwtC3ovxjw==} engines: {node: '>=10'} hasBin: true dependencies: - detect-libc: 2.0.1 + detect-libc: 2.0.2 expand-template: 2.0.3 github-from-package: 0.0.0 minimist: 1.2.8 mkdirp-classic: 0.5.3 napi-build-utils: 1.0.2 - node-abi: 3.40.0 + node-abi: 3.45.0 pump: 3.0.0 rc: 1.2.8 simple-get: 4.0.1 @@ -5146,6 +5502,15 @@ packages: react-is: 17.0.2 dev: true + /pretty-format@29.6.1: + resolution: {integrity: sha512-7jRj+yXO0W7e4/tSJKoR7HRIHLPPjtNaUGG2xxKQnGvPNRkgWcQ0AZX6P4KBRJN4FcTBWb3sa7DVUJmocYuoog==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + '@jest/schemas': 29.6.0 + ansi-styles: 5.2.0 + react-is: 18.2.0 + dev: true + /prism-svelte@0.5.0: resolution: {integrity: sha512-db91Bf3pRGKDPz1lAqLFSJXeW13mulUJxhycysFpfXV5MIK7RgWWK2E5aPAa71s8TCzQUXxF5JOV42/iOs6QkA==} dev: true @@ -5193,6 +5558,10 @@ packages: /queue-microtask@1.2.3: resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} + /queue-tick@1.0.1: + resolution: {integrity: sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag==} + dev: true + /quick-lru@4.0.1: resolution: {integrity: sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==} engines: {node: '>=8'} @@ -5212,6 +5581,10 @@ packages: resolution: {integrity: sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==} dev: true + /react-is@18.2.0: + resolution: {integrity: sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==} + dev: true + /read-pkg-up@2.0.0: resolution: {integrity: sha512-1orxQfbWGUiTn9XsPlChs6rLie/AV9jwZTGmu2NZw/CUDJQchXJFYE0Fq5j7+n558T1JhDWLdhyd1Zj+wLY//w==} engines: {node: '>=4'} @@ -5265,6 +5638,16 @@ packages: inherits: 2.0.4 string_decoder: 1.3.0 util-deprecate: 1.0.2 + dev: false + + /readable-stream@3.6.2: + resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==} + engines: {node: '>= 6'} + dependencies: + inherits: 2.0.4 + string_decoder: 1.3.0 + util-deprecate: 1.0.2 + dev: true /readdirp@3.6.0: resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} @@ -5467,18 +5850,18 @@ packages: resolution: {integrity: sha512-RVnVQxTXuerk653XfuliOxBP81Sf0+qfQE73LIYKcyMYHG94AuH0kgrQpRDuTZnSmjpysHmzxJXKNfa6PjFhyQ==} dev: false - /sharp@0.32.1: - resolution: {integrity: sha512-kQTFtj7ldpUqSe8kDxoGLZc1rnMFU0AO2pqbX6pLy3b7Oj8ivJIdoKNwxHVQG2HN6XpHPJqCSM2nsma2gOXvOg==} + /sharp@0.32.4: + resolution: {integrity: sha512-exUnZewqVZC6UXqXuQ8fyJJv0M968feBi04jb9GcUHrWtkRoAKnbJt8IfwT4NJs7FskArbJ14JAFGVuooszoGg==} engines: {node: '>=14.15.0'} requiresBuild: true dependencies: color: 4.2.3 - detect-libc: 2.0.1 + detect-libc: 2.0.2 node-addon-api: 6.1.0 prebuild-install: 7.1.1 - semver: 7.5.3 + semver: 7.5.4 simple-get: 4.0.1 - tar-fs: 2.1.1 + tar-fs: 3.0.4 tunnel-agent: 0.6.0 dev: true @@ -5506,13 +5889,16 @@ packages: engines: {node: '>=8'} dev: true - /shiki-twoslash@3.1.0: - resolution: {integrity: sha512-uDqrTutOIZzyHbo103GsK7Vvc10saK1XCCivnOQ1NHJzgp3FBilEpftGeVzVSMOJs+JyhI7whkvhXV7kXQ5zCg==} + /shiki-twoslash@3.1.2(typescript@5.1.6): + resolution: {integrity: sha512-JBcRIIizi+exIA/OUhYkV6jtyeZco0ykCkIRd5sgwIt1Pm4pz+maoaRZpm6SkhPwvif4fCA7xOtJOykhpIV64Q==} + peerDependencies: + typescript: '>3' dependencies: '@typescript/twoslash': 3.1.0 '@typescript/vfs': 1.3.4 + fenceparser: 1.1.1 shiki: 0.10.1 - typescript: 5.1.3 + typescript: 5.1.6 transitivePeerDependencies: - supports-color dev: true @@ -5521,7 +5907,7 @@ packages: resolution: {integrity: sha512-VsY7QJVzU51j5o1+DguUd+6vmCmZ5v/6gYu4vyYAhzjuNQU6P/vmSy4uQaOhvje031qQMiW0d2BwgMH52vqMng==} dependencies: jsonc-parser: 3.2.0 - vscode-oniguruma: 1.6.2 + vscode-oniguruma: 1.7.0 vscode-textmate: 5.2.0 dev: true @@ -5700,6 +6086,13 @@ packages: engines: {node: '>=10.0.0'} dev: false + /streamx@2.15.0: + resolution: {integrity: sha512-HcxY6ncGjjklGs1xsP1aR71INYcsXFJet5CU1CHqihQ2J5nOsbd4OjgjHO42w/4QNv9gZb3BueV+Vxok5pLEXg==} + dependencies: + fast-fifo: 1.3.0 + queue-tick: 1.0.1 + dev: true + /string-width@1.0.2: resolution: {integrity: sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw==} engines: {node: '>=0.10.0'} @@ -5796,7 +6189,7 @@ packages: /strip-literal@1.0.1: resolution: {integrity: sha512-QZTsipNpa2Ppr6v1AmJHESqJ3Uz247MUS0OjrnnZjFAvEoWqxuyFuXn2xLgMtRnijJShAa1HL0gtJyUs7u7n3Q==} dependencies: - acorn: 8.8.2 + acorn: 8.10.0 dev: true /sucrase@3.29.0: @@ -5843,8 +6236,8 @@ packages: picocolors: 1.0.0 sade: 1.8.1 svelte: 4.0.5 - svelte-preprocess: 5.0.4(postcss@8.4.23)(svelte@4.0.5)(typescript@5.1.3) - typescript: 5.1.3 + svelte-preprocess: 5.0.4(postcss@8.4.23)(svelte@4.0.5)(typescript@5.1.6) + typescript: 5.1.6 transitivePeerDependencies: - '@babel/core' - coffeescript @@ -5883,13 +6276,13 @@ packages: svelte: 4.0.5 dev: false - /svelte-local-storage-store@0.5.0(svelte@4.0.5): + /svelte-local-storage-store@0.5.0(svelte@4.1.1): resolution: {integrity: sha512-SEDrpapeia6fUqta+r1NvSLlJYPkZ4pBcl15EYIOSPNzy6vhpoXu8cnzUDmZxsWl7fZGAHxrVH9UyZCbyO4W+g==} engines: {node: '>=0.14'} peerDependencies: svelte: ^3.48.0 || ^4.0.0 dependencies: - svelte: 4.0.5 + svelte: 4.1.1 dev: true /svelte-preprocess@5.0.4(postcss@8.4.23)(svelte@4.0.5)(typescript@4.9.4): @@ -5940,7 +6333,7 @@ packages: typescript: 4.9.4 dev: true - /svelte-preprocess@5.0.4(postcss@8.4.23)(svelte@4.0.5)(typescript@5.1.3): + /svelte-preprocess@5.0.4(postcss@8.4.23)(svelte@4.0.5)(typescript@5.1.6): resolution: {integrity: sha512-ABia2QegosxOGsVlsSBJvoWeXy1wUKSfF7SWJdTjLAbx/Y3SrVevvvbFNQqrSJw89+lNSsM58SipmZJ5SRi5iw==} engines: {node: '>= 14.10.0'} requiresBuild: true @@ -5985,7 +6378,7 @@ packages: sorcery: 0.11.0 strip-indent: 3.0.0 svelte: 4.0.5 - typescript: 5.1.3 + typescript: 5.1.6 dev: true /svelte2tsx@0.6.19(svelte@4.0.5)(typescript@4.9.4): @@ -6015,9 +6408,28 @@ packages: estree-walker: 3.0.3 is-reference: 3.0.1 locate-character: 3.0.0 - magic-string: 0.30.0 + magic-string: 0.30.1 periscopic: 3.1.0 + /svelte@4.1.1: + resolution: {integrity: sha512-Enick5fPFISLoVy0MFK45cG+YlQt6upw8skEK9zzTpJnH1DqEv8xOZwizCGSo3Q6HZ7KrZTM0J18poF7aQg5zw==} + engines: {node: '>=16'} + dependencies: + '@ampproject/remapping': 2.2.1 + '@jridgewell/sourcemap-codec': 1.4.15 + '@jridgewell/trace-mapping': 0.3.18 + acorn: 8.10.0 + aria-query: 5.3.0 + axobject-query: 3.2.1 + code-red: 1.0.3 + css-tree: 2.3.1 + estree-walker: 3.0.3 + is-reference: 3.0.1 + locate-character: 3.0.0 + magic-string: 0.30.1 + periscopic: 3.1.0 + dev: true + /tar-fs@2.1.1: resolution: {integrity: sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==} dependencies: @@ -6027,6 +6439,14 @@ packages: tar-stream: 2.2.0 dev: true + /tar-fs@3.0.4: + resolution: {integrity: sha512-5AFQU8b9qLfZCX9zp2duONhPmZv0hGYiBPJsyUdqMjzq/mqVpy/rEUSeHk1+YitmxugaptgBh5oDGU3VsAJq4w==} + dependencies: + mkdirp-classic: 0.5.3 + pump: 3.0.0 + tar-stream: 3.1.6 + dev: true + /tar-stream@2.2.0: resolution: {integrity: sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==} engines: {node: '>=6'} @@ -6035,7 +6455,15 @@ packages: end-of-stream: 1.4.4 fs-constants: 1.0.0 inherits: 2.0.4 - readable-stream: 3.6.0 + readable-stream: 3.6.2 + dev: true + + /tar-stream@3.1.6: + resolution: {integrity: sha512-B/UyjYwPpMBv+PaFSWAmtYjwdrlEaZQEhMIBFNC5oEG8lpiW8XjcSdmEaClj28ArfKScKHs2nshz3k2le6crsg==} + dependencies: + b4a: 1.6.4 + fast-fifo: 1.3.0 + streamx: 2.15.0 dev: true /tar@6.1.12: @@ -6106,11 +6534,21 @@ packages: engines: {node: '>=14.0.0'} dev: true + /tinypool@0.6.0: + resolution: {integrity: sha512-FdswUUo5SxRizcBc6b1GSuLpLjisa8N8qMyYoP3rl+bym+QauhtJP5bvZY1ytt8krKGmMLYIRl36HBZfeAoqhQ==} + engines: {node: '>=14.0.0'} + dev: true + /tinyspy@2.1.0: resolution: {integrity: sha512-7eORpyqImoOvkQJCSkL0d0mB4NHHIFAy4b1u8PHdDa7SjGS2njzl6/lyGoZLm+eyYEtlUmFGE0rFj66SWxZgQQ==} engines: {node: '>=14.0.0'} dev: true + /tinyspy@2.1.1: + resolution: {integrity: sha512-XPJL2uSzcOyBMky6OFrusqWlzfFrXtE0hPuMgW8A2HmaqrPo4ZQHRN/V0QXN3FSjKxpsbRrFc5LI7KOwBsT1/w==} + engines: {node: '>=14.0.0'} + dev: true + /tmp@0.0.33: resolution: {integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==} engines: {node: '>=0.6.0'} @@ -6150,13 +6588,13 @@ packages: regexparam: 1.3.0 dev: true - /ts-api-utils@0.0.46(typescript@5.1.3): + /ts-api-utils@0.0.46(typescript@5.1.6): resolution: {integrity: sha512-YKJeSx39n0mMk+hrpyHKyTgxA3s7Pz/j1cXYR+t8HcwwZupzOR5xDGKnOEw3gmLaUeFUQt3FJD39AH9Ajn/mdA==} engines: {node: '>=16.13.0'} peerDependencies: typescript: '>=4.2.0' dependencies: - typescript: 5.1.3 + typescript: 5.1.6 dev: true /ts-api-utils@1.0.1(typescript@4.9.4): @@ -6250,9 +6688,10 @@ packages: resolution: {integrity: sha512-cW9T5W9xY37cc+jfEnaUvX91foxtHkza3Nw3wkoF4sSlKn0MONdkdEndig/qPBWXNkmplh3NzayQzCiHM4/hqw==} engines: {node: '>=12.20'} hasBin: true + dev: false - /typescript@5.1.3: - resolution: {integrity: sha512-XH627E9vkeqhlZFQuL+UsyAXEnibT0kWR2FWONlr4sTjvxyJYnyefgrkyECLzM5NenmKzRAy2rR/OlYLA1HkZw==} + /typescript@5.1.6: + resolution: {integrity: sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==} engines: {node: '>=14.17'} hasBin: true dev: true @@ -6349,7 +6788,29 @@ packages: mlly: 1.2.0 pathe: 1.1.0 picocolors: 1.0.0 - vite: 4.4.4(@types/node@16.18.6) + vite: 4.4.6(@types/node@16.18.6) + transitivePeerDependencies: + - '@types/node' + - less + - lightningcss + - sass + - stylus + - sugarss + - supports-color + - terser + dev: true + + /vite-node@0.33.0(@types/node@20.4.3): + resolution: {integrity: sha512-19FpHYbwWWxDr73ruNahC+vtEdza52kA90Qb3La98yZ0xULqV8A5JLNPUff0f5zID4984tW7l3DH2przTJUZSw==} + engines: {node: '>=v14.18.0'} + hasBin: true + dependencies: + cac: 6.7.14 + debug: 4.3.4 + mlly: 1.4.0 + pathe: 1.1.1 + picocolors: 1.0.0 + vite: 4.4.6(@types/node@20.4.3) transitivePeerDependencies: - '@types/node' - less @@ -6396,8 +6857,8 @@ packages: optionalDependencies: fsevents: 2.3.2 - /vite@4.4.4(@types/node@16.18.6): - resolution: {integrity: sha512-4mvsTxjkveWrKDJI70QmelfVqTm+ihFAb6+xf4sjEU2TmUCTlVX87tmg/QooPEMQb/lM9qGHT99ebqPziEd3wg==} + /vite@4.4.6(@types/node@16.18.6): + resolution: {integrity: sha512-EY6Mm8vJ++S3D4tNAckaZfw3JwG3wa794Vt70M6cNJ6NxT87yhq7EC8Rcap3ahyHdo8AhCmV9PTk+vG1HiYn1A==} engines: {node: ^14.18.0 || >=16.0.0} hasBin: true peerDependencies: @@ -6425,8 +6886,44 @@ packages: optional: true dependencies: '@types/node': 16.18.6 - esbuild: 0.18.11 - postcss: 8.4.26 + esbuild: 0.18.15 + postcss: 8.4.27 + rollup: 3.26.3 + optionalDependencies: + fsevents: 2.3.2 + dev: true + + /vite@4.4.6(@types/node@20.4.3): + resolution: {integrity: sha512-EY6Mm8vJ++S3D4tNAckaZfw3JwG3wa794Vt70M6cNJ6NxT87yhq7EC8Rcap3ahyHdo8AhCmV9PTk+vG1HiYn1A==} + engines: {node: ^14.18.0 || >=16.0.0} + hasBin: true + peerDependencies: + '@types/node': '>= 14' + less: '*' + lightningcss: ^1.21.0 + sass: '*' + stylus: '*' + sugarss: '*' + terser: ^5.4.0 + peerDependenciesMeta: + '@types/node': + optional: true + less: + optional: true + lightningcss: + optional: true + sass: + optional: true + stylus: + optional: true + sugarss: + optional: true + terser: + optional: true + dependencies: + '@types/node': 20.4.3 + esbuild: 0.18.15 + postcss: 8.4.27 rollup: 3.26.3 optionalDependencies: fsevents: 2.3.2 @@ -6489,7 +6986,7 @@ packages: concordance: 5.0.4 debug: 4.3.4 local-pkg: 0.4.3 - magic-string: 0.30.0 + magic-string: 0.30.1 pathe: 1.1.0 picocolors: 1.0.0 playwright: 1.30.0 @@ -6497,7 +6994,7 @@ packages: strip-literal: 1.0.1 tinybench: 2.5.0 tinypool: 0.5.0 - vite: 4.4.4(@types/node@16.18.6) + vite: 4.4.6(@types/node@16.18.6) vite-node: 0.32.2(@types/node@16.18.6) why-is-node-running: 2.2.2 transitivePeerDependencies: @@ -6510,8 +7007,74 @@ packages: - terser dev: true - /vscode-oniguruma@1.6.2: - resolution: {integrity: sha512-KH8+KKov5eS/9WhofZR8M8dMHWN2gTxjMsG4jd04YhpbPR91fUj7rYQ2/XjeHCJWbg7X++ApRIU9NUwM2vTvLA==} + /vitest@0.33.0(playwright@1.30.0): + resolution: {integrity: sha512-1CxaugJ50xskkQ0e969R/hW47za4YXDUfWJDxip1hwbnhUjYolpfUn2AMOulqG/Dtd9WYAtkHmM/m3yKVrEejQ==} + engines: {node: '>=v14.18.0'} + hasBin: true + peerDependencies: + '@edge-runtime/vm': '*' + '@vitest/browser': '*' + '@vitest/ui': '*' + happy-dom: '*' + jsdom: '*' + playwright: '*' + safaridriver: '*' + webdriverio: '*' + peerDependenciesMeta: + '@edge-runtime/vm': + optional: true + '@vitest/browser': + optional: true + '@vitest/ui': + optional: true + happy-dom: + optional: true + jsdom: + optional: true + playwright: + optional: true + safaridriver: + optional: true + webdriverio: + optional: true + dependencies: + '@types/chai': 4.3.5 + '@types/chai-subset': 1.3.3 + '@types/node': 20.4.3 + '@vitest/expect': 0.33.0 + '@vitest/runner': 0.33.0 + '@vitest/snapshot': 0.33.0 + '@vitest/spy': 0.33.0 + '@vitest/utils': 0.33.0 + acorn: 8.10.0 + acorn-walk: 8.2.0 + cac: 6.7.14 + chai: 4.3.7 + debug: 4.3.4 + local-pkg: 0.4.3 + magic-string: 0.30.1 + pathe: 1.1.1 + picocolors: 1.0.0 + playwright: 1.30.0 + std-env: 3.3.3 + strip-literal: 1.0.1 + tinybench: 2.5.0 + tinypool: 0.6.0 + vite: 4.4.6(@types/node@20.4.3) + vite-node: 0.33.0(@types/node@20.4.3) + why-is-node-running: 2.2.2 + transitivePeerDependencies: + - less + - lightningcss + - sass + - stylus + - sugarss + - supports-color + - terser + dev: true + + /vscode-oniguruma@1.7.0: + resolution: {integrity: sha512-L9WMGRfrjOhgHSdOYgCt/yRMsXzLDJSL7BPrOZt73gU0iWO4mpqzqQzOz5srxqTvMBaR0XZTSrVWo4j55Rc6cA==} dev: true /vscode-textmate@5.2.0: diff --git a/sites/kit.svelte.dev/package.json b/sites/kit.svelte.dev/package.json index 6dcf0a9fd1bd..1c0ce2ae34bd 100644 --- a/sites/kit.svelte.dev/package.json +++ b/sites/kit.svelte.dev/package.json @@ -4,8 +4,8 @@ "version": "0.0.1", "scripts": { "update": "node scripts/check-doc-links.js && node scripts/types", - "dev": "pnpm update && vite dev", - "build": "pnpm update && vite build", + "dev": "vite dev", + "build": "pnpm run update && vite build", "prebuild": "test \"$CI\" = true && npx pnpm install --store=node_modules/.pnpm-store || echo skipping pnpm install", "preview": "vite preview", "test": "vitest run" @@ -14,25 +14,25 @@ "@sveltejs/adapter-vercel": "workspace:^", "@sveltejs/amp": "workspace:^", "@sveltejs/kit": "workspace:^", - "@sveltejs/site-kit": "^6.0.0-next.17", - "@types/d3-geo": "^3.0.2", - "@types/node": "^16.18.6", + "@sveltejs/site-kit": "6.0.0-next.21", + "@types/d3-geo": "^3.0.3", + "@types/node": "^20.4.3", "flexsearch": "^0.7.31", - "magic-string": "^0.30.0", - "marked": "^4.2.3", + "magic-string": "^0.30.1", + "marked": "^5.1.1", "prism-svelte": "^0.5.0", "prismjs": "^1.29.0", - "shiki-twoslash": "^3.1.0", - "svelte": "^4.0.5", + "shiki-twoslash": "^3.1.2", + "svelte": "^4.1.1", "tiny-glob": "^0.2.9", - "typescript": "^5.0.4", - "vite": "^4.4.2", + "typescript": "^5.1.6", + "vite": "^4.4.6", "vite-imagetools": "^5.0.5", - "vitest": "^0.32.2" + "vitest": "^0.33.0" }, "type": "module", "dependencies": { - "d3-geo": "^3.0.1", + "d3-geo": "^3.1.0", "d3-geo-projection": "^4.0.0", "topojson-client": "^3.1.0" } diff --git a/sites/kit.svelte.dev/src/lib/server/docs/index.js b/sites/kit.svelte.dev/src/lib/server/docs/index.js index d395c4a7d52c..9510cca1db8a 100644 --- a/sites/kit.svelte.dev/src/lib/server/docs/index.js +++ b/sites/kit.svelte.dev/src/lib/server/docs/index.js @@ -1,4 +1,5 @@ import { base as app_base } from '$app/paths'; +import { modules } from '$lib/generated/type-info.js'; import { escape, extractFrontmatter, @@ -7,10 +8,9 @@ import { removeMarkdown, replaceExportTypePlaceholders } from '@sveltejs/site-kit/markdown'; -import fs from 'node:fs'; +import { readFile, readdir } from 'node:fs/promises'; import { CONTENT_BASE_PATHS } from '../../../constants.js'; import { render_content } from '../renderer'; -import { modules } from '$lib/generated/type-info.js'; /** * @param {import('./types').DocsData} docs_data @@ -29,12 +29,12 @@ export async function get_parsed_docs(docs_data, slug) { } } -/** @return {import('./types').DocsData} */ -export function get_docs_data(base = CONTENT_BASE_PATHS.DOCS) { +/** @return {Promise} */ +export async function get_docs_data(base = CONTENT_BASE_PATHS.DOCS) { /** @type {import('./types').DocsData} */ const docs_data = []; - for (const category_dir of fs.readdirSync(base)) { + for (const category_dir of await readdir(base)) { const match = /\d{2}-(.+)/.exec(category_dir); if (!match) continue; @@ -42,7 +42,7 @@ export function get_docs_data(base = CONTENT_BASE_PATHS.DOCS) { // Read the meta.json const { title: category_title, draft = 'false' } = JSON.parse( - fs.readFileSync(`${base}/${category_dir}/meta.json`, 'utf-8') + await readFile(`${base}/${category_dir}/meta.json`, 'utf-8') ); if (draft === 'true') continue; @@ -54,16 +54,16 @@ export function get_docs_data(base = CONTENT_BASE_PATHS.DOCS) { pages: [] }; - for (const page_md of fs - .readdirSync(`${base}/${category_dir}`) - .filter((filename) => filename !== 'meta.json')) { + for (const page_md of (await readdir(`${base}/${category_dir}`)).filter( + (filename) => filename !== 'meta.json' + )) { const match = /\d{2}-(.+)/.exec(page_md); if (!match) continue; const page_slug = match[1].replace('.md', ''); const page_data = extractFrontmatter( - fs.readFileSync(`${base}/${category_dir}/${page_md}`, 'utf-8') + await readFile(`${base}/${category_dir}/${page_md}`, 'utf-8') ); if (page_data.metadata.draft === 'true') continue; diff --git a/sites/kit.svelte.dev/src/routes/content.json/+server.js b/sites/kit.svelte.dev/src/routes/content.json/+server.js index 8807d9481965..be3303ed264e 100644 --- a/sites/kit.svelte.dev/src/routes/content.json/+server.js +++ b/sites/kit.svelte.dev/src/routes/content.json/+server.js @@ -4,8 +4,8 @@ import { json } from '@sveltejs/kit'; export const prerender = true; /** @type {import('./$types').RequestHandler} */ -export function GET() { +export async function GET() { return json({ - blocks: content() + blocks: await content() }); } diff --git a/sites/kit.svelte.dev/src/routes/content.json/content.server.js b/sites/kit.svelte.dev/src/routes/content.json/content.server.js index fe8cddf6c264..54e77164540d 100644 --- a/sites/kit.svelte.dev/src/routes/content.json/content.server.js +++ b/sites/kit.svelte.dev/src/routes/content.json/content.server.js @@ -5,9 +5,9 @@ import { replaceExportTypePlaceholders, slugify } from '@sveltejs/site-kit/markdown'; -import fs from 'node:fs'; +import { readFile } from 'node:fs/promises'; import path from 'node:path'; -import glob from 'tiny-glob/sync.js'; +import glob from 'tiny-glob'; const categories = [ { @@ -18,14 +18,14 @@ const categories = [ } ]; -export function content() { +export async function content() { /** @type {import('@sveltejs/site-kit/search').Block[]} */ const blocks = []; for (const category of categories) { const breadcrumbs = category.label ? [category.label] : []; - for (const file of glob('**/*.md', { cwd: `../../documentation/${category.slug}` })) { + for (const file of await glob('**/*.md', { cwd: `../../documentation/${category.slug}` })) { const basename = path.basename(file); const match = /\d{2}-(.+)\.md/.exec(basename); if (!match) continue; @@ -33,7 +33,7 @@ export function content() { const slug = match[1]; const filepath = `../../documentation/${category.slug}/${file}`; - const markdown = replaceExportTypePlaceholders(fs.readFileSync(filepath, 'utf-8'), modules); + const markdown = replaceExportTypePlaceholders(await readFile(filepath, 'utf-8'), modules); const { body, metadata } = extractFrontmatter(markdown); diff --git a/sites/kit.svelte.dev/src/routes/docs/+layout.server.js b/sites/kit.svelte.dev/src/routes/docs/+layout.server.js index ff3acad12540..2e3ec09c82c9 100644 --- a/sites/kit.svelte.dev/src/routes/docs/+layout.server.js +++ b/sites/kit.svelte.dev/src/routes/docs/+layout.server.js @@ -2,8 +2,8 @@ import { get_docs_data, get_docs_list } from '$lib/server/docs/index.js'; export const prerender = true; -export function load() { +export async function load() { return { - sections: get_docs_list(get_docs_data()) + sections: get_docs_list(await get_docs_data()) }; } diff --git a/sites/kit.svelte.dev/src/routes/docs/[slug]/+page.server.js b/sites/kit.svelte.dev/src/routes/docs/[slug]/+page.server.js index 9419befee573..974be6610eb9 100644 --- a/sites/kit.svelte.dev/src/routes/docs/[slug]/+page.server.js +++ b/sites/kit.svelte.dev/src/routes/docs/[slug]/+page.server.js @@ -4,7 +4,7 @@ import { error } from '@sveltejs/kit'; export const prerender = true; export async function load({ params }) { - const processed_page = get_parsed_docs(get_docs_data(), params.slug); + const processed_page = get_parsed_docs(await get_docs_data(), params.slug); if (!processed_page) throw error(404); diff --git a/sites/kit.svelte.dev/src/routes/docs/[slug]/+page.svelte b/sites/kit.svelte.dev/src/routes/docs/[slug]/+page.svelte index 973c563e82ec..039ef9c0c3e1 100644 --- a/sites/kit.svelte.dev/src/routes/docs/[slug]/+page.svelte +++ b/sites/kit.svelte.dev/src/routes/docs/[slug]/+page.svelte @@ -2,6 +2,7 @@ import { page } from '$app/stores'; import { Icon } from '@sveltejs/site-kit/components'; import { DocsOnThisPage, setupDocsHovers } from '@sveltejs/site-kit/docs'; + import { copy_code_descendants } from '@sveltejs/site-kit/actions'; export let data; @@ -21,13 +22,15 @@
    -
    +

    {data.page.title}

    Edit this page on GitHub + +
    {@html data.page.content}
    @@ -49,8 +52,6 @@
    - - From 01a87509906043001b6ccfc2e2e8fdaf04ada286 Mon Sep 17 00:00:00 2001 From: Puru Vijay Date: Fri, 4 Aug 2023 13:07:11 +0530 Subject: [PATCH 35/47] Bump deps --- pnpm-lock.yaml | 354 +++++++++++++++++++++++------- sites/kit.svelte.dev/package.json | 14 +- 2 files changed, 282 insertions(+), 86 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 020e39054704..dcfcad7ddd5b 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -22,13 +22,13 @@ importers: version: 15.0.1(rollup@3.7.0) '@sveltejs/eslint-config': specifier: ^6.0.4 - version: 6.0.4(@typescript-eslint/eslint-plugin@6.0.0)(@typescript-eslint/parser@6.2.0)(eslint-config-prettier@8.8.0)(eslint-plugin-svelte@2.31.0)(eslint-plugin-unicorn@48.0.0)(eslint@8.45.0)(typescript@4.9.4) + version: 6.0.4(@typescript-eslint/eslint-plugin@6.0.0)(@typescript-eslint/parser@6.2.1)(eslint-config-prettier@8.8.0)(eslint-plugin-svelte@2.31.0)(eslint-plugin-unicorn@48.0.0)(eslint@8.45.0)(typescript@4.9.4) '@svitejs/changesets-changelog-github-compact': specifier: ^1.1.0 version: 1.1.0 '@typescript-eslint/eslint-plugin': specifier: ^6.0.0 - version: 6.0.0(@typescript-eslint/parser@6.2.0)(eslint@8.45.0)(typescript@4.9.4) + version: 6.0.0(@typescript-eslint/parser@6.2.1)(eslint@8.45.0)(typescript@4.9.4) eslint: specifier: ^8.45.0 version: 8.45.0 @@ -1009,19 +1009,19 @@ importers: version: link:../../packages/kit '@sveltejs/site-kit': specifier: 6.0.0-next.22 - version: 6.0.0-next.22(@sveltejs/kit@packages+kit)(svelte@4.1.1) + version: 6.0.0-next.22(@sveltejs/kit@packages+kit)(svelte@4.1.2) '@types/d3-geo': specifier: ^3.0.3 version: 3.0.3 '@types/node': - specifier: ^20.4.5 - version: 20.4.5 + specifier: ^20.4.7 + version: 20.4.7 flexsearch: specifier: ^0.7.31 version: 0.7.31 magic-string: - specifier: ^0.30.0 - version: 0.30.0 + specifier: ^0.30.2 + version: 0.30.2 marked: specifier: ^6.0.0 version: 6.0.0 @@ -1033,25 +1033,25 @@ importers: version: 1.29.0 shiki-twoslash: specifier: ^3.1.2 - version: 3.1.2(typescript@5.0.4) + version: 3.1.2(typescript@5.1.6) svelte: - specifier: ^4.1.1 - version: 4.1.1 + specifier: ^4.1.2 + version: 4.1.2 tiny-glob: specifier: ^0.2.9 version: 0.2.9 typescript: - specifier: 5.0.4 - version: 5.0.4 + specifier: 5.1.6 + version: 5.1.6 vite: - specifier: ^4.4.7 - version: 4.4.7(@types/node@20.4.5) + specifier: ^4.4.8 + version: 4.4.8(@types/node@20.4.7) vite-imagetools: - specifier: ^5.0.5 - version: 5.0.5(rollup@3.7.0) + specifier: ^5.0.7 + version: 5.0.7(rollup@3.7.0) vitest: - specifier: ^0.33.0 - version: 0.33.0(playwright@1.30.0) + specifier: ^0.34.1 + version: 0.34.1(playwright@1.30.0) packages: @@ -2161,7 +2161,7 @@ packages: resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==} dev: true - /@sveltejs/eslint-config@6.0.4(@typescript-eslint/eslint-plugin@6.0.0)(@typescript-eslint/parser@6.2.0)(eslint-config-prettier@8.8.0)(eslint-plugin-svelte@2.31.0)(eslint-plugin-unicorn@48.0.0)(eslint@8.45.0)(typescript@4.9.4): + /@sveltejs/eslint-config@6.0.4(@typescript-eslint/eslint-plugin@6.0.0)(@typescript-eslint/parser@6.2.1)(eslint-config-prettier@8.8.0)(eslint-plugin-svelte@2.31.0)(eslint-plugin-unicorn@48.0.0)(eslint@8.45.0)(typescript@4.9.4): resolution: {integrity: sha512-U9pwmDs+DbmsnCgTfu6Bacdwqn0DuI1IQNSiQqTgzVyYfaaj+zy9ZoQCiJfxFBGXHkklyXuRHp0KMx346N0lcQ==} peerDependencies: '@typescript-eslint/eslint-plugin': '>= 5' @@ -2172,8 +2172,8 @@ packages: eslint-plugin-unicorn: '>= 47' typescript: '>= 4' dependencies: - '@typescript-eslint/eslint-plugin': 6.0.0(@typescript-eslint/parser@6.2.0)(eslint@8.45.0)(typescript@4.9.4) - '@typescript-eslint/parser': 6.2.0(eslint@8.45.0)(typescript@4.9.4) + '@typescript-eslint/eslint-plugin': 6.0.0(@typescript-eslint/parser@6.2.1)(eslint@8.45.0)(typescript@4.9.4) + '@typescript-eslint/parser': 6.2.1(eslint@8.45.0)(typescript@4.9.4) eslint: 8.45.0 eslint-config-prettier: 8.8.0(eslint@8.45.0) eslint-plugin-svelte: 2.31.0(eslint@8.45.0)(svelte@4.0.5) @@ -2181,7 +2181,7 @@ packages: typescript: 4.9.4 dev: true - /@sveltejs/site-kit@6.0.0-next.22(@sveltejs/kit@packages+kit)(svelte@4.1.1): + /@sveltejs/site-kit@6.0.0-next.22(@sveltejs/kit@packages+kit)(svelte@4.1.2): resolution: {integrity: sha512-3LpnxUHvvFii+kfDySqBQu2dJ03YzV3YsfJQHi7UeIVZsPHG9xiS+40lJfUK3j8mHbTvIH26dQHLibZ/zPoXGw==} peerDependencies: '@sveltejs/kit': ^1.20.0 @@ -2189,8 +2189,8 @@ packages: dependencies: '@sveltejs/kit': link:packages/kit esm-env: 1.0.0 - svelte: 4.1.1 - svelte-local-storage-store: 0.5.0(svelte@4.1.1) + svelte: 4.1.2 + svelte-local-storage-store: 0.5.0(svelte@4.1.2) dev: true /@sveltejs/vite-plugin-svelte-inspector@1.0.2(@sveltejs/vite-plugin-svelte@2.4.1)(svelte@4.0.5)(vite@4.4.2): @@ -2321,8 +2321,8 @@ packages: /@types/node@16.18.6: resolution: {integrity: sha512-vmYJF0REqDyyU0gviezF/KHq/fYaUbFhkcNbQCuPGFQj6VTbXuHZoxs/Y7mutWe73C8AC6l9fFu8mSYiBAqkGA==} - /@types/node@20.4.5: - resolution: {integrity: sha512-rt40Nk13II9JwQBdeYqmbn2Q6IVTA5uPhvSO+JVqdXw/6/4glI6oR9ezty/A9Hg5u7JH4OmYmuQ+XvjKm0Datg==} + /@types/node@20.4.7: + resolution: {integrity: sha512-bUBrPjEry2QUTsnuEjzjbS7voGWCc30W0qzgMf90GPeDGFRakvrz47ju+oqDAKCXLUCe39u57/ORMl/O/04/9g==} dev: true /@types/normalize-package-data@2.4.1: @@ -2372,7 +2372,7 @@ packages: '@types/node': 16.18.6 dev: true - /@typescript-eslint/eslint-plugin@6.0.0(@typescript-eslint/parser@6.2.0)(eslint@8.45.0)(typescript@4.9.4): + /@typescript-eslint/eslint-plugin@6.0.0(@typescript-eslint/parser@6.2.1)(eslint@8.45.0)(typescript@4.9.4): resolution: {integrity: sha512-xuv6ghKGoiq856Bww/yVYnXGsKa588kY3M0XK7uUW/3fJNNULKRfZfSBkMTSpqGG/8ZCXCadfh8G/z/B4aqS/A==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: @@ -2384,7 +2384,7 @@ packages: optional: true dependencies: '@eslint-community/regexpp': 4.5.1 - '@typescript-eslint/parser': 6.2.0(eslint@8.45.0)(typescript@4.9.4) + '@typescript-eslint/parser': 6.2.1(eslint@8.45.0)(typescript@4.9.4) '@typescript-eslint/scope-manager': 6.0.0 '@typescript-eslint/type-utils': 6.0.0(eslint@8.45.0)(typescript@4.9.4) '@typescript-eslint/utils': 6.0.0(eslint@8.45.0)(typescript@4.9.4) @@ -2403,8 +2403,8 @@ packages: - supports-color dev: true - /@typescript-eslint/parser@6.2.0(eslint@8.45.0)(typescript@4.9.4): - resolution: {integrity: sha512-igVYOqtiK/UsvKAmmloQAruAdUHihsOCvplJpplPZ+3h4aDkC/UKZZNKgB6h93ayuYLuEymU3h8nF1xMRbh37g==} + /@typescript-eslint/parser@6.2.1(eslint@8.45.0)(typescript@4.9.4): + resolution: {integrity: sha512-Ld+uL1kYFU8e6btqBFpsHkwQ35rw30IWpdQxgOqOh4NfxSDH6uCkah1ks8R/RgQqI5hHPXMaLy9fbFseIe+dIg==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: eslint: ^7.0.0 || ^8.0.0 @@ -2413,10 +2413,10 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/scope-manager': 6.2.0 - '@typescript-eslint/types': 6.2.0 - '@typescript-eslint/typescript-estree': 6.2.0(typescript@4.9.4) - '@typescript-eslint/visitor-keys': 6.2.0 + '@typescript-eslint/scope-manager': 6.2.1 + '@typescript-eslint/types': 6.2.1 + '@typescript-eslint/typescript-estree': 6.2.1(typescript@4.9.4) + '@typescript-eslint/visitor-keys': 6.2.1 debug: 4.3.4 eslint: 8.45.0 typescript: 4.9.4 @@ -2432,12 +2432,12 @@ packages: '@typescript-eslint/visitor-keys': 6.0.0 dev: true - /@typescript-eslint/scope-manager@6.2.0: - resolution: {integrity: sha512-1ZMNVgm5nnHURU8ZSJ3snsHzpFeNK84rdZjluEVBGNu7jDymfqceB3kdIZ6A4xCfEFFhRIB6rF8q/JIqJd2R0Q==} + /@typescript-eslint/scope-manager@6.2.1: + resolution: {integrity: sha512-UCqBF9WFqv64xNsIEPfBtenbfodPXsJ3nPAr55mGPkQIkiQvgoWNo+astj9ZUfJfVKiYgAZDMnM6dIpsxUMp3Q==} engines: {node: ^16.0.0 || >=18.0.0} dependencies: - '@typescript-eslint/types': 6.2.0 - '@typescript-eslint/visitor-keys': 6.2.0 + '@typescript-eslint/types': 6.2.1 + '@typescript-eslint/visitor-keys': 6.2.1 dev: true /@typescript-eslint/type-utils@6.0.0(eslint@8.45.0)(typescript@4.9.4): @@ -2465,8 +2465,8 @@ packages: engines: {node: ^16.0.0 || >=18.0.0} dev: true - /@typescript-eslint/types@6.2.0: - resolution: {integrity: sha512-1nRRaDlp/XYJQLvkQJG5F3uBTno5SHPT7XVcJ5n1/k2WfNI28nJsvLakxwZRNY5spuatEKO7d5nZWsQpkqXwBA==} + /@typescript-eslint/types@6.2.1: + resolution: {integrity: sha512-528bGcoelrpw+sETlyM91k51Arl2ajbNT9L4JwoXE2dvRe1yd8Q64E4OL7vHYw31mlnVsf+BeeLyAZUEQtqahQ==} engines: {node: ^16.0.0 || >=18.0.0} dev: true @@ -2491,8 +2491,8 @@ packages: - supports-color dev: true - /@typescript-eslint/typescript-estree@6.2.0(typescript@4.9.4): - resolution: {integrity: sha512-Mts6+3HQMSM+LZCglsc2yMIny37IhUgp1Qe8yJUYVyO6rHP7/vN0vajKu3JvHCBIy8TSiKddJ/Zwu80jhnGj1w==} + /@typescript-eslint/typescript-estree@6.2.1(typescript@4.9.4): + resolution: {integrity: sha512-G+UJeQx9AKBHRQBpmvr8T/3K5bJa485eu+4tQBxFq0KoT22+jJyzo1B50JDT9QdC1DEmWQfdKsa8ybiNWYsi0Q==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: typescript: '*' @@ -2500,8 +2500,8 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/types': 6.2.0 - '@typescript-eslint/visitor-keys': 6.2.0 + '@typescript-eslint/types': 6.2.1 + '@typescript-eslint/visitor-keys': 6.2.1 debug: 4.3.4 globby: 11.1.0 is-glob: 4.0.3 @@ -2540,12 +2540,12 @@ packages: eslint-visitor-keys: 3.4.1 dev: true - /@typescript-eslint/visitor-keys@6.2.0: - resolution: {integrity: sha512-QbaYUQVKKo9bgCzpjz45llCfwakyoxHetIy8CAvYCtd16Zu1KrpzNHofwF8kGkpPOxZB2o6kz+0nqH8ZkIzuoQ==} + /@typescript-eslint/visitor-keys@6.2.1: + resolution: {integrity: sha512-iTN6w3k2JEZ7cyVdZJTVJx2Lv7t6zFA8DCrJEHD2mwfc16AEvvBWVhbFh34XyG2NORCd0viIgQY1+u7kPI0WpA==} engines: {node: ^16.0.0 || >=18.0.0} dependencies: - '@typescript-eslint/types': 6.2.0 - eslint-visitor-keys: 3.4.1 + '@typescript-eslint/types': 6.2.1 + eslint-visitor-keys: 3.4.2 dev: true /@typescript/twoslash@3.1.0: @@ -2603,6 +2603,14 @@ packages: chai: 4.3.7 dev: true + /@vitest/expect@0.34.1: + resolution: {integrity: sha512-q2CD8+XIsQ+tHwypnoCk8Mnv5e6afLFvinVGCq3/BOT4kQdVQmY6rRfyKkwcg635lbliLPqbunXZr+L1ssUWiQ==} + dependencies: + '@vitest/spy': 0.34.1 + '@vitest/utils': 0.34.1 + chai: 4.3.7 + dev: true + /@vitest/runner@0.33.0: resolution: {integrity: sha512-UPfACnmCB6HKRHTlcgCoBh6ppl6fDn+J/xR8dTufWiKt/74Y9bHci5CKB8tESSV82zKYtkBJo9whU3mNvfaisg==} dependencies: @@ -2611,20 +2619,42 @@ packages: pathe: 1.1.1 dev: true + /@vitest/runner@0.34.1: + resolution: {integrity: sha512-YfQMpYzDsYB7yqgmlxZ06NI4LurHWfrH7Wy3Pvf/z/vwUSgq1zLAb1lWcItCzQG+NVox+VvzlKQrYEXb47645g==} + dependencies: + '@vitest/utils': 0.34.1 + p-limit: 4.0.0 + pathe: 1.1.1 + dev: true + /@vitest/snapshot@0.33.0: resolution: {integrity: sha512-tJjrl//qAHbyHajpFvr8Wsk8DIOODEebTu7pgBrP07iOepR5jYkLFiqLq2Ltxv+r0uptUb4izv1J8XBOwKkVYA==} dependencies: - magic-string: 0.30.1 + magic-string: 0.30.2 pathe: 1.1.1 pretty-format: 29.6.1 dev: true + /@vitest/snapshot@0.34.1: + resolution: {integrity: sha512-0O9LfLU0114OqdF8lENlrLsnn024Tb1CsS9UwG0YMWY2oGTQfPtkW+B/7ieyv0X9R2Oijhi3caB1xgGgEgclSQ==} + dependencies: + magic-string: 0.30.2 + pathe: 1.1.1 + pretty-format: 29.6.2 + dev: true + /@vitest/spy@0.33.0: resolution: {integrity: sha512-Kv+yZ4hnH1WdiAkPUQTpRxW8kGtH8VRTnus7ZTGovFYM1ZezJpvGtb9nPIjPnptHbsyIAxYZsEpVPYgtpjGnrg==} dependencies: tinyspy: 2.1.1 dev: true + /@vitest/spy@0.34.1: + resolution: {integrity: sha512-UT4WcI3EAPUNO8n6y9QoEqynGGEPmmRxC+cLzneFFXpmacivjHZsNbiKD88KUScv5DCHVDgdBsLD7O7s1enFcQ==} + dependencies: + tinyspy: 2.1.1 + dev: true + /@vitest/utils@0.33.0: resolution: {integrity: sha512-pF1w22ic965sv+EN6uoePkAOTkAPWM03Ri/jXNyMIKBb/XHLDPfhLvf/Fa9g0YECevAIz56oVYXhodLvLQ/awA==} dependencies: @@ -2633,6 +2663,14 @@ packages: pretty-format: 29.6.1 dev: true + /@vitest/utils@0.34.1: + resolution: {integrity: sha512-/ql9dsFi4iuEbiNcjNHQWXBum7aL8pyhxvfnD9gNtbjR9fUKAjxhj4AA3yfLXg6gJpMGGecvtF8Au2G9y3q47Q==} + dependencies: + diff-sequences: 29.4.3 + loupe: 2.3.6 + pretty-format: 29.6.2 + dev: true + /abbrev@1.1.1: resolution: {integrity: sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==} dev: false @@ -3378,11 +3416,11 @@ packages: globrex: 0.1.2 kleur: 4.1.5 locate-character: 3.0.0 - magic-string: 0.30.1 + magic-string: 0.30.0 sade: 1.8.1 tiny-glob: 0.2.9 - ts-api-utils: 0.0.46(typescript@5.0.4) - typescript: 5.0.4 + ts-api-utils: 0.0.46(typescript@5.1.6) + typescript: 5.1.6 dev: true /emoji-regex@8.0.0: @@ -3641,6 +3679,11 @@ packages: engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dev: true + /eslint-visitor-keys@3.4.2: + resolution: {integrity: sha512-8drBzUEyZ2llkpCA67iYrgEssKDUu68V8ChqqOfFupIaG/LCVPUT+CoGJpT77zJprs4T/W7p07LP7zAIMuweVw==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dev: true + /eslint@8.45.0: resolution: {integrity: sha512-pd8KSxiQpdYRfYa9Wufvdoct3ZPQQuVuU5O6scNgMuOMYuxvH0IGaYK0wUFjo4UYYQQCUndlXiMbnxopwvvTiw==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -4183,8 +4226,8 @@ packages: engines: {node: '>= 4'} dev: true - /imagetools-core@4.0.3: - resolution: {integrity: sha512-Cn+xuuRiA2UC5XzSWKWaRBJGA9iFhwtaVLUIgujfv6SM4TF/wOAwAqWeZkbv/yyhmapdhFR5stsKE9owUge0jQ==} + /imagetools-core@4.0.5: + resolution: {integrity: sha512-sNRVfUwkUcsVWNn5inTHDXWzpPRWPWbSgGkuQmlsFCWXAR2+K5R5vG5tC3Qs4LeJaMugKB8hGVm6rvZjFHQrUw==} engines: {node: '>=12.0.0'} dependencies: sharp: 0.32.4 @@ -4663,8 +4706,8 @@ packages: dependencies: '@jridgewell/sourcemap-codec': 1.4.15 - /magic-string@0.30.1: - resolution: {integrity: sha512-mbVKXPmS0z0G4XqFDCTllmDQ6coZzn94aMlb0o/A4HEHJCKcanlDZwYJgwnkmgD3jyWhUgj9VsPrfd972yPffA==} + /magic-string@0.30.2: + resolution: {integrity: sha512-lNZdu7pewtq/ZvWUp9Wpf/x7WzMTsR26TWV03BRZrXFsv+BI6dy8RAiKgm1uM/kyR0rCfUcqvOlXKG66KhIGug==} engines: {node: '>=12'} dependencies: '@jridgewell/sourcemap-codec': 1.4.15 @@ -5380,6 +5423,15 @@ packages: react-is: 18.2.0 dev: true + /pretty-format@29.6.2: + resolution: {integrity: sha512-1q0oC8eRveTg5nnBEWMXAU2qpv65Gnuf2eCQzSjxpWFkPaPARwqZZDGuNE0zPAZfTCHzIk3A8dIjwlQKKLphyg==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + '@jest/schemas': 29.6.0 + ansi-styles: 5.2.0 + react-is: 18.2.0 + dev: true + /prism-svelte@0.5.0: resolution: {integrity: sha512-db91Bf3pRGKDPz1lAqLFSJXeW13mulUJxhycysFpfXV5MIK7RgWWK2E5aPAa71s8TCzQUXxF5JOV42/iOs6QkA==} dev: true @@ -5627,6 +5679,14 @@ packages: optionalDependencies: fsevents: 2.3.2 + /rollup@3.27.1: + resolution: {integrity: sha512-tXNDFwOkN6C2w5Blj1g6ForKeFw6c1mDu5jxoeDO3/pmYjgt+8yvIFjKzH5FQUq70OKZBkOt0zzv0THXL7vwzQ==} + engines: {node: '>=14.18.0', npm: '>=8.0.0'} + hasBin: true + optionalDependencies: + fsevents: 2.3.2 + dev: true + /rollup@3.7.0: resolution: {integrity: sha512-FIJe0msW9P7L9BTfvaJyvn1U1BVCNTL3w8O+PKIrCyiMLg+rIUGb4MbcgVZ10Lnm1uWXOTOWRNARjfXC1+M12Q==} engines: {node: '>=14.18.0', npm: '>=8.0.0'} @@ -5743,7 +5803,7 @@ packages: engines: {node: '>=8'} dev: true - /shiki-twoslash@3.1.2(typescript@5.0.4): + /shiki-twoslash@3.1.2(typescript@5.1.6): resolution: {integrity: sha512-JBcRIIizi+exIA/OUhYkV6jtyeZco0ykCkIRd5sgwIt1Pm4pz+maoaRZpm6SkhPwvif4fCA7xOtJOykhpIV64Q==} peerDependencies: typescript: '>3' @@ -5752,7 +5812,7 @@ packages: '@typescript/vfs': 1.3.4 fenceparser: 1.1.1 shiki: 0.10.1 - typescript: 5.0.4 + typescript: 5.1.6 transitivePeerDependencies: - supports-color dev: true @@ -6046,6 +6106,12 @@ packages: acorn: 8.10.0 dev: true + /strip-literal@1.3.0: + resolution: {integrity: sha512-PugKzOsyXpArk0yWmUwqOZecSO0GH0bPoctLcqNDH9J04pVW3lflYE0ujElBGTloevcxF5MofAOZ7C5l2b+wLg==} + dependencies: + acorn: 8.10.0 + dev: true + /sucrase@3.29.0: resolution: {integrity: sha512-bZPAuGA5SdFHuzqIhTAqt9fvNEo9rESqXIG3oiKdF8K4UmkQxC4KlNL3lVyAErXp+mPvUqZ5l13qx6TrDIGf3A==} engines: {node: '>=8'} @@ -6130,13 +6196,13 @@ packages: svelte: 4.0.5 dev: false - /svelte-local-storage-store@0.5.0(svelte@4.1.1): + /svelte-local-storage-store@0.5.0(svelte@4.1.2): resolution: {integrity: sha512-SEDrpapeia6fUqta+r1NvSLlJYPkZ4pBcl15EYIOSPNzy6vhpoXu8cnzUDmZxsWl7fZGAHxrVH9UyZCbyO4W+g==} engines: {node: '>=0.14'} peerDependencies: svelte: ^3.48.0 || ^4.0.0 dependencies: - svelte: 4.1.1 + svelte: 4.1.2 dev: true /svelte-preprocess@5.0.4(postcss@8.4.23)(svelte@4.0.5)(typescript@4.9.4): @@ -6262,11 +6328,11 @@ packages: estree-walker: 3.0.3 is-reference: 3.0.1 locate-character: 3.0.0 - magic-string: 0.30.1 + magic-string: 0.30.2 periscopic: 3.1.0 - /svelte@4.1.1: - resolution: {integrity: sha512-Enick5fPFISLoVy0MFK45cG+YlQt6upw8skEK9zzTpJnH1DqEv8xOZwizCGSo3Q6HZ7KrZTM0J18poF7aQg5zw==} + /svelte@4.1.2: + resolution: {integrity: sha512-/evA8U6CgOHe5ZD1C1W3va9iJG7mWflcCdghBORJaAhD2JzrVERJty/2gl0pIPrJYBGZwZycH6onYf+64XXF9g==} engines: {node: '>=16'} dependencies: '@ampproject/remapping': 2.2.1 @@ -6280,7 +6346,7 @@ packages: estree-walker: 3.0.3 is-reference: 3.0.1 locate-character: 3.0.0 - magic-string: 0.30.1 + magic-string: 0.30.2 periscopic: 3.1.0 dev: true @@ -6383,6 +6449,11 @@ packages: engines: {node: '>=14.0.0'} dev: true + /tinypool@0.7.0: + resolution: {integrity: sha512-zSYNUlYSMhJ6Zdou4cJwo/p7w5nmAH17GRfU/ui3ctvjXFErXXkruT4MWW6poDeXgCaIBlGLrfU6TbTXxyGMww==} + engines: {node: '>=14.0.0'} + dev: true + /tinyspy@2.1.1: resolution: {integrity: sha512-XPJL2uSzcOyBMky6OFrusqWlzfFrXtE0hPuMgW8A2HmaqrPo4ZQHRN/V0QXN3FSjKxpsbRrFc5LI7KOwBsT1/w==} engines: {node: '>=14.0.0'} @@ -6427,13 +6498,13 @@ packages: regexparam: 1.3.0 dev: true - /ts-api-utils@0.0.46(typescript@5.0.4): + /ts-api-utils@0.0.46(typescript@5.1.6): resolution: {integrity: sha512-YKJeSx39n0mMk+hrpyHKyTgxA3s7Pz/j1cXYR+t8HcwwZupzOR5xDGKnOEw3gmLaUeFUQt3FJD39AH9Ajn/mdA==} engines: {node: '>=16.13.0'} peerDependencies: typescript: '>=4.2.0' dependencies: - typescript: 5.0.4 + typescript: 5.1.6 dev: true /ts-api-utils@1.0.1(typescript@4.9.4): @@ -6527,6 +6598,7 @@ packages: resolution: {integrity: sha512-cW9T5W9xY37cc+jfEnaUvX91foxtHkza3Nw3wkoF4sSlKn0MONdkdEndig/qPBWXNkmplh3NzayQzCiHM4/hqw==} engines: {node: '>=12.20'} hasBin: true + dev: false /typescript@5.1.6: resolution: {integrity: sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==} @@ -6606,17 +6678,17 @@ packages: spdx-expression-parse: 3.0.1 dev: true - /vite-imagetools@5.0.5(rollup@3.7.0): - resolution: {integrity: sha512-q+BRot2b7AxUHgkQzU+5ku+NERVZcXmLdAnQWSnIw31bRoPIBSDxmDRTDldX8gqyjQNkIBjObF+xqPCeNp7CzQ==} + /vite-imagetools@5.0.7(rollup@3.7.0): + resolution: {integrity: sha512-8g7RU+liA4uWuujSe3hdMTCNWimMJsdLIU5uB+/SUBQ+j0TcaMKnQZ6n4LCBF2w30ml1X8WNFGOcTblquWrgGQ==} engines: {node: '>=12.0.0'} dependencies: '@rollup/pluginutils': 5.0.2(rollup@3.7.0) - imagetools-core: 4.0.3 + imagetools-core: 4.0.5 transitivePeerDependencies: - rollup dev: true - /vite-node@0.33.0(@types/node@20.4.5): + /vite-node@0.33.0(@types/node@16.18.6): resolution: {integrity: sha512-19FpHYbwWWxDr73ruNahC+vtEdza52kA90Qb3La98yZ0xULqV8A5JLNPUff0f5zID4984tW7l3DH2przTJUZSw==} engines: {node: '>=v14.18.0'} hasBin: true @@ -6626,7 +6698,29 @@ packages: mlly: 1.4.0 pathe: 1.1.1 picocolors: 1.0.0 - vite: 4.4.7(@types/node@20.4.5) + vite: 4.4.8(@types/node@16.18.6) + transitivePeerDependencies: + - '@types/node' + - less + - lightningcss + - sass + - stylus + - sugarss + - supports-color + - terser + dev: true + + /vite-node@0.34.1(@types/node@20.4.7): + resolution: {integrity: sha512-odAZAL9xFMuAg8aWd7nSPT+hU8u2r9gU3LRm9QKjxBEF2rRdWpMuqkrkjvyVQEdNFiBctqr2Gg4uJYizm5Le6w==} + engines: {node: '>=v14.18.0'} + hasBin: true + dependencies: + cac: 6.7.14 + debug: 4.3.4 + mlly: 1.4.0 + pathe: 1.1.1 + picocolors: 1.0.0 + vite: 4.4.8(@types/node@20.4.7) transitivePeerDependencies: - '@types/node' - less @@ -6673,8 +6767,8 @@ packages: optionalDependencies: fsevents: 2.3.2 - /vite@4.4.7(@types/node@20.4.5): - resolution: {integrity: sha512-6pYf9QJ1mHylfVh39HpuSfMPojPSKVxZvnclX1K1FyZ1PXDOcLBibdq5t1qxJSnL63ca8Wf4zts6mD8u8oc9Fw==} + /vite@4.4.8(@types/node@16.18.6): + resolution: {integrity: sha512-LONawOUUjxQridNWGQlNizfKH89qPigK36XhMI7COMGztz8KNY0JHim7/xDd71CZwGT4HtSRgI7Hy+RlhG0Gvg==} engines: {node: ^14.18.0 || >=16.0.0} hasBin: true peerDependencies: @@ -6701,10 +6795,46 @@ packages: terser: optional: true dependencies: - '@types/node': 20.4.5 + '@types/node': 16.18.6 esbuild: 0.18.17 postcss: 8.4.27 - rollup: 3.26.3 + rollup: 3.27.1 + optionalDependencies: + fsevents: 2.3.2 + dev: true + + /vite@4.4.8(@types/node@20.4.7): + resolution: {integrity: sha512-LONawOUUjxQridNWGQlNizfKH89qPigK36XhMI7COMGztz8KNY0JHim7/xDd71CZwGT4HtSRgI7Hy+RlhG0Gvg==} + engines: {node: ^14.18.0 || >=16.0.0} + hasBin: true + peerDependencies: + '@types/node': '>= 14' + less: '*' + lightningcss: ^1.21.0 + sass: '*' + stylus: '*' + sugarss: '*' + terser: ^5.4.0 + peerDependenciesMeta: + '@types/node': + optional: true + less: + optional: true + lightningcss: + optional: true + sass: + optional: true + stylus: + optional: true + sugarss: + optional: true + terser: + optional: true + dependencies: + '@types/node': 20.4.7 + esbuild: 0.18.17 + postcss: 8.4.27 + rollup: 3.27.1 optionalDependencies: fsevents: 2.3.2 dev: true @@ -6753,7 +6883,7 @@ packages: dependencies: '@types/chai': 4.3.5 '@types/chai-subset': 1.3.3 - '@types/node': 20.4.5 + '@types/node': 16.18.6 '@vitest/expect': 0.33.0 '@vitest/runner': 0.33.0 '@vitest/snapshot': 0.33.0 @@ -6765,7 +6895,7 @@ packages: chai: 4.3.7 debug: 4.3.4 local-pkg: 0.4.3 - magic-string: 0.30.1 + magic-string: 0.30.2 pathe: 1.1.1 picocolors: 1.0.0 playwright: 1.30.0 @@ -6773,8 +6903,74 @@ packages: strip-literal: 1.0.1 tinybench: 2.5.0 tinypool: 0.6.0 - vite: 4.4.7(@types/node@20.4.5) - vite-node: 0.33.0(@types/node@20.4.5) + vite: 4.4.8(@types/node@16.18.6) + vite-node: 0.33.0(@types/node@16.18.6) + why-is-node-running: 2.2.2 + transitivePeerDependencies: + - less + - lightningcss + - sass + - stylus + - sugarss + - supports-color + - terser + dev: true + + /vitest@0.34.1(playwright@1.30.0): + resolution: {integrity: sha512-G1PzuBEq9A75XSU88yO5G4vPT20UovbC/2osB2KEuV/FisSIIsw7m5y2xMdB7RsAGHAfg2lPmp2qKr3KWliVlQ==} + engines: {node: '>=v14.18.0'} + hasBin: true + peerDependencies: + '@edge-runtime/vm': '*' + '@vitest/browser': '*' + '@vitest/ui': '*' + happy-dom: '*' + jsdom: '*' + playwright: '*' + safaridriver: '*' + webdriverio: '*' + peerDependenciesMeta: + '@edge-runtime/vm': + optional: true + '@vitest/browser': + optional: true + '@vitest/ui': + optional: true + happy-dom: + optional: true + jsdom: + optional: true + playwright: + optional: true + safaridriver: + optional: true + webdriverio: + optional: true + dependencies: + '@types/chai': 4.3.5 + '@types/chai-subset': 1.3.3 + '@types/node': 20.4.7 + '@vitest/expect': 0.34.1 + '@vitest/runner': 0.34.1 + '@vitest/snapshot': 0.34.1 + '@vitest/spy': 0.34.1 + '@vitest/utils': 0.34.1 + acorn: 8.10.0 + acorn-walk: 8.2.0 + cac: 6.7.14 + chai: 4.3.7 + debug: 4.3.4 + local-pkg: 0.4.3 + magic-string: 0.30.2 + pathe: 1.1.1 + picocolors: 1.0.0 + playwright: 1.30.0 + std-env: 3.3.3 + strip-literal: 1.3.0 + tinybench: 2.5.0 + tinypool: 0.7.0 + vite: 4.4.8(@types/node@20.4.7) + vite-node: 0.34.1(@types/node@20.4.7) why-is-node-running: 2.2.2 transitivePeerDependencies: - less diff --git a/sites/kit.svelte.dev/package.json b/sites/kit.svelte.dev/package.json index c98251ae0b17..d292e8459d98 100644 --- a/sites/kit.svelte.dev/package.json +++ b/sites/kit.svelte.dev/package.json @@ -16,19 +16,19 @@ "@sveltejs/kit": "workspace:^", "@sveltejs/site-kit": "6.0.0-next.22", "@types/d3-geo": "^3.0.3", - "@types/node": "^20.4.5", + "@types/node": "^20.4.7", "flexsearch": "^0.7.31", - "magic-string": "^0.30.0", + "magic-string": "^0.30.2", "marked": "^6.0.0", "prism-svelte": "^0.5.0", "prismjs": "^1.29.0", "shiki-twoslash": "^3.1.2", - "svelte": "^4.1.1", + "svelte": "^4.1.2", "tiny-glob": "^0.2.9", - "typescript": "5.0.4", - "vite": "^4.4.7", - "vite-imagetools": "^5.0.5", - "vitest": "^0.33.0" + "typescript": "5.1.6", + "vite": "^4.4.8", + "vite-imagetools": "^5.0.7", + "vitest": "^0.34.1" }, "type": "module", "dependencies": { From db7bc5166acbca74da97a3c756263204f23c95d2 Mon Sep 17 00:00:00 2001 From: Puru Vijay Date: Fri, 4 Aug 2023 13:13:06 +0530 Subject: [PATCH 36/47] Push --- pnpm-lock.yaml | 19 +++++++++---------- sites/kit.svelte.dev/package.json | 4 ++-- 2 files changed, 11 insertions(+), 12 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index dcfcad7ddd5b..21839808f6d9 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1008,8 +1008,8 @@ importers: specifier: workspace:^ version: link:../../packages/kit '@sveltejs/site-kit': - specifier: 6.0.0-next.22 - version: 6.0.0-next.22(@sveltejs/kit@packages+kit)(svelte@4.1.2) + specifier: 6.0.0-next.24 + version: 6.0.0-next.24(@sveltejs/kit@packages+kit)(svelte@4.1.2) '@types/d3-geo': specifier: ^3.0.3 version: 3.0.3 @@ -1033,7 +1033,7 @@ importers: version: 1.29.0 shiki-twoslash: specifier: ^3.1.2 - version: 3.1.2(typescript@5.1.6) + version: 3.1.2(typescript@5.0.4) svelte: specifier: ^4.1.2 version: 4.1.2 @@ -1041,8 +1041,8 @@ importers: specifier: ^0.2.9 version: 0.2.9 typescript: - specifier: 5.1.6 - version: 5.1.6 + specifier: 5.0.4 + version: 5.0.4 vite: specifier: ^4.4.8 version: 4.4.8(@types/node@20.4.7) @@ -2181,8 +2181,8 @@ packages: typescript: 4.9.4 dev: true - /@sveltejs/site-kit@6.0.0-next.22(@sveltejs/kit@packages+kit)(svelte@4.1.2): - resolution: {integrity: sha512-3LpnxUHvvFii+kfDySqBQu2dJ03YzV3YsfJQHi7UeIVZsPHG9xiS+40lJfUK3j8mHbTvIH26dQHLibZ/zPoXGw==} + /@sveltejs/site-kit@6.0.0-next.24(@sveltejs/kit@packages+kit)(svelte@4.1.2): + resolution: {integrity: sha512-cyibvq5dmqWD9qzR4dIj66h+wzXG1Awfx//zpwkD9R3kPUhejxYFzdlPkuMBH8NXDydB8YXXCW/1T83Mw5J4Hg==} peerDependencies: '@sveltejs/kit': ^1.20.0 svelte: ^4.0.0 @@ -5803,7 +5803,7 @@ packages: engines: {node: '>=8'} dev: true - /shiki-twoslash@3.1.2(typescript@5.1.6): + /shiki-twoslash@3.1.2(typescript@5.0.4): resolution: {integrity: sha512-JBcRIIizi+exIA/OUhYkV6jtyeZco0ykCkIRd5sgwIt1Pm4pz+maoaRZpm6SkhPwvif4fCA7xOtJOykhpIV64Q==} peerDependencies: typescript: '>3' @@ -5812,7 +5812,7 @@ packages: '@typescript/vfs': 1.3.4 fenceparser: 1.1.1 shiki: 0.10.1 - typescript: 5.1.6 + typescript: 5.0.4 transitivePeerDependencies: - supports-color dev: true @@ -6598,7 +6598,6 @@ packages: resolution: {integrity: sha512-cW9T5W9xY37cc+jfEnaUvX91foxtHkza3Nw3wkoF4sSlKn0MONdkdEndig/qPBWXNkmplh3NzayQzCiHM4/hqw==} engines: {node: '>=12.20'} hasBin: true - dev: false /typescript@5.1.6: resolution: {integrity: sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==} diff --git a/sites/kit.svelte.dev/package.json b/sites/kit.svelte.dev/package.json index d292e8459d98..19ce15676a67 100644 --- a/sites/kit.svelte.dev/package.json +++ b/sites/kit.svelte.dev/package.json @@ -14,7 +14,7 @@ "@sveltejs/adapter-vercel": "workspace:^", "@sveltejs/amp": "workspace:^", "@sveltejs/kit": "workspace:^", - "@sveltejs/site-kit": "6.0.0-next.22", + "@sveltejs/site-kit": "6.0.0-next.24", "@types/d3-geo": "^3.0.3", "@types/node": "^20.4.7", "flexsearch": "^0.7.31", @@ -25,7 +25,7 @@ "shiki-twoslash": "^3.1.2", "svelte": "^4.1.2", "tiny-glob": "^0.2.9", - "typescript": "5.1.6", + "typescript": "5.0.4", "vite": "^4.4.8", "vite-imagetools": "^5.0.7", "vitest": "^0.34.1" From 714e3f8eba45353f5a2a9b3558b6ae8d532d613a Mon Sep 17 00:00:00 2001 From: Puru Vijay Date: Fri, 4 Aug 2023 17:29:00 +0530 Subject: [PATCH 37/47] Bump site-kit --- pnpm-lock.yaml | 8 ++++---- sites/kit.svelte.dev/package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 21839808f6d9..1bc3116bb4b2 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1008,8 +1008,8 @@ importers: specifier: workspace:^ version: link:../../packages/kit '@sveltejs/site-kit': - specifier: 6.0.0-next.24 - version: 6.0.0-next.24(@sveltejs/kit@packages+kit)(svelte@4.1.2) + specifier: 6.0.0-next.25 + version: 6.0.0-next.25(@sveltejs/kit@packages+kit)(svelte@4.1.2) '@types/d3-geo': specifier: ^3.0.3 version: 3.0.3 @@ -2181,8 +2181,8 @@ packages: typescript: 4.9.4 dev: true - /@sveltejs/site-kit@6.0.0-next.24(@sveltejs/kit@packages+kit)(svelte@4.1.2): - resolution: {integrity: sha512-cyibvq5dmqWD9qzR4dIj66h+wzXG1Awfx//zpwkD9R3kPUhejxYFzdlPkuMBH8NXDydB8YXXCW/1T83Mw5J4Hg==} + /@sveltejs/site-kit@6.0.0-next.25(@sveltejs/kit@packages+kit)(svelte@4.1.2): + resolution: {integrity: sha512-MZen4ZdjHoWVHn5DQdYBYprryhsyTHVT3XxW/hUp8K6dgFBXK5Cg/foHcxwzkepP6Gmabgi9eHC8e3PPGNKaAA==} peerDependencies: '@sveltejs/kit': ^1.20.0 svelte: ^4.0.0 diff --git a/sites/kit.svelte.dev/package.json b/sites/kit.svelte.dev/package.json index 19ce15676a67..0302ddb7f989 100644 --- a/sites/kit.svelte.dev/package.json +++ b/sites/kit.svelte.dev/package.json @@ -14,7 +14,7 @@ "@sveltejs/adapter-vercel": "workspace:^", "@sveltejs/amp": "workspace:^", "@sveltejs/kit": "workspace:^", - "@sveltejs/site-kit": "6.0.0-next.24", + "@sveltejs/site-kit": "6.0.0-next.25", "@types/d3-geo": "^3.0.3", "@types/node": "^20.4.7", "flexsearch": "^0.7.31", From 7c32fe3d412bfd15b6ebd8eb13ddac68ee32e3e3 Mon Sep 17 00:00:00 2001 From: Ben McCann <322311+benmccann@users.noreply.github.com> Date: Tue, 8 Aug 2023 15:43:29 -0700 Subject: [PATCH 38/47] fix warning --- sites/kit.svelte.dev/svelte.config.js | 8 -------- 1 file changed, 8 deletions(-) diff --git a/sites/kit.svelte.dev/svelte.config.js b/sites/kit.svelte.dev/svelte.config.js index 50de0b3d5417..46575d85e0fd 100644 --- a/sites/kit.svelte.dev/svelte.config.js +++ b/sites/kit.svelte.dev/svelte.config.js @@ -10,14 +10,6 @@ const config = { paths: { relative: true } - }, - - vitePlugin: { - experimental: { - inspector: { - holdMode: true - } - } } }; From eacc032173afc88baa72f176adb61267a883fdef Mon Sep 17 00:00:00 2001 From: gtmnayan Date: Wed, 9 Aug 2023 13:59:14 +0545 Subject: [PATCH 39/47] update site-kit --- pnpm-lock.yaml | 90 ++++++++++++++++--------------- sites/kit.svelte.dev/package.json | 4 +- 2 files changed, 50 insertions(+), 44 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index b087df80948e..262a5ebe3400 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -249,7 +249,7 @@ importers: version: 4.1.2 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) packages/adapter-static/test/apps/spa: devDependencies: @@ -267,7 +267,7 @@ importers: version: 4.1.2 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) packages/adapter-vercel: dependencies: @@ -360,7 +360,7 @@ importers: version: 5.0.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) packages/create-svelte/templates/skeleton: devDependencies: @@ -475,7 +475,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) packages/kit/test/apps/basics: devDependencies: @@ -499,7 +499,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) packages/kit/test/apps/dev-only: devDependencies: @@ -520,7 +520,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) packages/kit/test/apps/embed: devDependencies: @@ -541,7 +541,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) packages/kit/test/apps/options: devDependencies: @@ -562,7 +562,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) packages/kit/test/apps/options-2: devDependencies: @@ -586,7 +586,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) packages/kit/test/apps/writes: devDependencies: @@ -610,7 +610,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) packages/kit/test/build-errors: devDependencies: @@ -637,7 +637,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) packages/kit/test/build-errors/apps/prerenderable-incorrect-fragment: devDependencies: @@ -658,7 +658,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) packages/kit/test/build-errors/apps/prerenderable-not-prerendered: devDependencies: @@ -679,7 +679,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) packages/kit/test/build-errors/apps/private-dynamic-env: devDependencies: @@ -697,7 +697,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) packages/kit/test/build-errors/apps/private-dynamic-env-dynamic-import: devDependencies: @@ -715,7 +715,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) packages/kit/test/build-errors/apps/private-static-env: devDependencies: @@ -736,7 +736,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) packages/kit/test/build-errors/apps/private-static-env-dynamic-import: devDependencies: @@ -754,7 +754,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) packages/kit/test/build-errors/apps/server-only-folder: devDependencies: @@ -772,7 +772,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) packages/kit/test/build-errors/apps/server-only-folder-dynamic-import: devDependencies: @@ -790,7 +790,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) packages/kit/test/build-errors/apps/server-only-module: devDependencies: @@ -808,7 +808,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) packages/kit/test/build-errors/apps/server-only-module-dynamic-import: devDependencies: @@ -826,7 +826,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) packages/kit/test/build-errors/apps/syntax-error: devDependencies: @@ -844,7 +844,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) packages/kit/test/prerendering/basics: devDependencies: @@ -862,7 +862,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) vitest: specifier: ^0.33.0 version: 0.33.0(playwright@1.30.0) @@ -883,7 +883,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) vitest: specifier: ^0.33.0 version: 0.33.0(playwright@1.30.0) @@ -904,7 +904,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) vitest: specifier: ^0.33.0 version: 0.33.0(playwright@1.30.0) @@ -1008,8 +1008,8 @@ importers: specifier: workspace:^ version: link:../../packages/kit '@sveltejs/site-kit': - specifier: 6.0.0-next.25 - version: 6.0.0-next.25(@sveltejs/kit@packages+kit)(svelte@4.1.2) + specifier: 6.0.0-next.26 + version: 6.0.0-next.26(@sveltejs/kit@packages+kit)(svelte@4.1.2) '@types/d3-geo': specifier: ^3.0.3 version: 3.0.3 @@ -1033,7 +1033,7 @@ importers: version: 1.29.0 shiki-twoslash: specifier: ^3.1.2 - version: 3.1.2(typescript@5.0.4) + version: 3.1.2(typescript@4.9.4) svelte: specifier: ^4.1.2 version: 4.1.2 @@ -1041,8 +1041,8 @@ importers: specifier: ^0.2.9 version: 0.2.9 typescript: - specifier: 5.0.4 - version: 5.0.4 + specifier: 4.9.4 + version: 4.9.4 vite: specifier: ^4.4.8 version: 4.4.8(@types/node@20.4.7) @@ -1971,8 +1971,8 @@ packages: typescript: 4.9.4 dev: true - /@sveltejs/site-kit@6.0.0-next.25(@sveltejs/kit@packages+kit)(svelte@4.1.2): - resolution: {integrity: sha512-MZen4ZdjHoWVHn5DQdYBYprryhsyTHVT3XxW/hUp8K6dgFBXK5Cg/foHcxwzkepP6Gmabgi9eHC8e3PPGNKaAA==} + /@sveltejs/site-kit@6.0.0-next.26(@sveltejs/kit@packages+kit)(svelte@4.1.2): + resolution: {integrity: sha512-MtxtbAfwwev7S6UHcMiOVxypaR0Yd5mKNPlzGnOnfRPy/1omeL5s/qyOYtuYxdqNJvNws9Iqu3sERK6o55+sRQ==} peerDependencies: '@sveltejs/kit': ^1.20.0 svelte: ^4.0.0 @@ -3235,8 +3235,8 @@ packages: magic-string: 0.30.2 sade: 1.8.1 tiny-glob: 0.2.9 - ts-api-utils: 0.0.46(typescript@5.0.4) - typescript: 5.0.4 + ts-api-utils: 0.0.46(typescript@5.1.6) + typescript: 5.1.6 dev: true /eastasianwidth@0.2.0: @@ -5647,7 +5647,7 @@ packages: engines: {node: '>=8'} dev: true - /shiki-twoslash@3.1.2(typescript@5.0.4): + /shiki-twoslash@3.1.2(typescript@4.9.4): resolution: {integrity: sha512-JBcRIIizi+exIA/OUhYkV6jtyeZco0ykCkIRd5sgwIt1Pm4pz+maoaRZpm6SkhPwvif4fCA7xOtJOykhpIV64Q==} peerDependencies: typescript: '>3' @@ -5656,7 +5656,7 @@ packages: '@typescript/vfs': 1.3.4 fenceparser: 1.1.1 shiki: 0.10.1 - typescript: 5.0.4 + typescript: 4.9.4 transitivePeerDependencies: - supports-color dev: true @@ -6014,8 +6014,8 @@ packages: picocolors: 1.0.0 sade: 1.8.1 svelte: 4.1.2 - svelte-preprocess: 5.0.4(postcss@8.4.27)(svelte@4.1.2)(typescript@5.0.4) - typescript: 5.0.4 + svelte-preprocess: 5.0.4(postcss@8.4.27)(svelte@4.1.2)(typescript@5.1.6) + typescript: 5.1.6 transitivePeerDependencies: - '@babel/core' - coffeescript @@ -6111,7 +6111,7 @@ packages: typescript: 4.9.4 dev: true - /svelte-preprocess@5.0.4(postcss@8.4.27)(svelte@4.1.2)(typescript@5.0.4): + /svelte-preprocess@5.0.4(postcss@8.4.27)(svelte@4.1.2)(typescript@5.1.6): resolution: {integrity: sha512-ABia2QegosxOGsVlsSBJvoWeXy1wUKSfF7SWJdTjLAbx/Y3SrVevvvbFNQqrSJw89+lNSsM58SipmZJ5SRi5iw==} engines: {node: '>= 14.10.0'} requiresBuild: true @@ -6156,7 +6156,7 @@ packages: sorcery: 0.11.0 strip-indent: 3.0.0 svelte: 4.1.2 - typescript: 5.0.4 + typescript: 5.1.6 dev: true /svelte2tsx@0.6.19(svelte@4.1.2)(typescript@4.9.4): @@ -6337,13 +6337,13 @@ packages: regexparam: 1.3.0 dev: true - /ts-api-utils@0.0.46(typescript@5.0.4): + /ts-api-utils@0.0.46(typescript@5.1.6): resolution: {integrity: sha512-YKJeSx39n0mMk+hrpyHKyTgxA3s7Pz/j1cXYR+t8HcwwZupzOR5xDGKnOEw3gmLaUeFUQt3FJD39AH9Ajn/mdA==} engines: {node: '>=16.13.0'} peerDependencies: typescript: '>=4.2.0' dependencies: - typescript: 5.0.4 + typescript: 5.1.6 dev: true /ts-api-utils@1.0.1(typescript@4.9.4): @@ -6470,6 +6470,12 @@ packages: engines: {node: '>=12.20'} hasBin: true + /typescript@5.1.6: + resolution: {integrity: sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==} + engines: {node: '>=14.17'} + hasBin: true + dev: true + /ufo@1.2.0: resolution: {integrity: sha512-RsPyTbqORDNDxqAdQPQBpgqhWle1VcTSou/FraClYlHf6TZnQcGslpLcAphNR+sQW4q5lLWLbOsRlh9j24baQg==} dev: true diff --git a/sites/kit.svelte.dev/package.json b/sites/kit.svelte.dev/package.json index fd905819e5f9..48566977e477 100644 --- a/sites/kit.svelte.dev/package.json +++ b/sites/kit.svelte.dev/package.json @@ -14,7 +14,7 @@ "@sveltejs/adapter-vercel": "workspace:^", "@sveltejs/amp": "workspace:^", "@sveltejs/kit": "workspace:^", - "@sveltejs/site-kit": "6.0.0-next.25", + "@sveltejs/site-kit": "6.0.0-next.26", "@types/d3-geo": "^3.0.3", "@types/node": "^20.4.7", "flexsearch": "^0.7.31", @@ -25,7 +25,7 @@ "shiki-twoslash": "^3.1.2", "svelte": "^4.1.2", "tiny-glob": "^0.2.9", - "typescript": "5.0.4", + "typescript": "4.9.4", "vite": "^4.4.8", "vite-imagetools": "^5.0.7", "vitest": "^0.34.1" From 3302c1f544940b7301fc471f86269618c30c0ad3 Mon Sep 17 00:00:00 2001 From: gtmnayan Date: Wed, 9 Aug 2023 14:28:23 +0545 Subject: [PATCH 40/47] revert ts downgrade --- pnpm-lock.yaml | 60 +++++++++++++++---------------- sites/kit.svelte.dev/package.json | 2 +- 2 files changed, 31 insertions(+), 31 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 262a5ebe3400..253a5a7e4d8f 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -249,7 +249,7 @@ importers: version: 4.1.2 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@16.18.6) + version: 4.4.8(@types/node@20.4.7) packages/adapter-static/test/apps/spa: devDependencies: @@ -267,7 +267,7 @@ importers: version: 4.1.2 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@16.18.6) + version: 4.4.8(@types/node@20.4.7) packages/adapter-vercel: dependencies: @@ -360,7 +360,7 @@ importers: version: 5.0.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@16.18.6) + version: 4.4.8(@types/node@20.4.7) packages/create-svelte/templates/skeleton: devDependencies: @@ -475,7 +475,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@16.18.6) + version: 4.4.8(@types/node@20.4.7) packages/kit/test/apps/basics: devDependencies: @@ -499,7 +499,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@16.18.6) + version: 4.4.8(@types/node@20.4.7) packages/kit/test/apps/dev-only: devDependencies: @@ -520,7 +520,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@16.18.6) + version: 4.4.8(@types/node@20.4.7) packages/kit/test/apps/embed: devDependencies: @@ -541,7 +541,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@16.18.6) + version: 4.4.8(@types/node@20.4.7) packages/kit/test/apps/options: devDependencies: @@ -562,7 +562,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@16.18.6) + version: 4.4.8(@types/node@20.4.7) packages/kit/test/apps/options-2: devDependencies: @@ -586,7 +586,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@16.18.6) + version: 4.4.8(@types/node@20.4.7) packages/kit/test/apps/writes: devDependencies: @@ -610,7 +610,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@16.18.6) + version: 4.4.8(@types/node@20.4.7) packages/kit/test/build-errors: devDependencies: @@ -637,7 +637,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@16.18.6) + version: 4.4.8(@types/node@20.4.7) packages/kit/test/build-errors/apps/prerenderable-incorrect-fragment: devDependencies: @@ -658,7 +658,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@16.18.6) + version: 4.4.8(@types/node@20.4.7) packages/kit/test/build-errors/apps/prerenderable-not-prerendered: devDependencies: @@ -679,7 +679,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@16.18.6) + version: 4.4.8(@types/node@20.4.7) packages/kit/test/build-errors/apps/private-dynamic-env: devDependencies: @@ -697,7 +697,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@16.18.6) + version: 4.4.8(@types/node@20.4.7) packages/kit/test/build-errors/apps/private-dynamic-env-dynamic-import: devDependencies: @@ -715,7 +715,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@16.18.6) + version: 4.4.8(@types/node@20.4.7) packages/kit/test/build-errors/apps/private-static-env: devDependencies: @@ -736,7 +736,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@16.18.6) + version: 4.4.8(@types/node@20.4.7) packages/kit/test/build-errors/apps/private-static-env-dynamic-import: devDependencies: @@ -754,7 +754,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@16.18.6) + version: 4.4.8(@types/node@20.4.7) packages/kit/test/build-errors/apps/server-only-folder: devDependencies: @@ -772,7 +772,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@16.18.6) + version: 4.4.8(@types/node@20.4.7) packages/kit/test/build-errors/apps/server-only-folder-dynamic-import: devDependencies: @@ -790,7 +790,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@16.18.6) + version: 4.4.8(@types/node@20.4.7) packages/kit/test/build-errors/apps/server-only-module: devDependencies: @@ -808,7 +808,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@16.18.6) + version: 4.4.8(@types/node@20.4.7) packages/kit/test/build-errors/apps/server-only-module-dynamic-import: devDependencies: @@ -826,7 +826,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@16.18.6) + version: 4.4.8(@types/node@20.4.7) packages/kit/test/build-errors/apps/syntax-error: devDependencies: @@ -844,7 +844,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@16.18.6) + version: 4.4.8(@types/node@20.4.7) packages/kit/test/prerendering/basics: devDependencies: @@ -862,7 +862,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@16.18.6) + version: 4.4.8(@types/node@20.4.7) vitest: specifier: ^0.33.0 version: 0.33.0(playwright@1.30.0) @@ -883,7 +883,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@16.18.6) + version: 4.4.8(@types/node@20.4.7) vitest: specifier: ^0.33.0 version: 0.33.0(playwright@1.30.0) @@ -904,7 +904,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@16.18.6) + version: 4.4.8(@types/node@20.4.7) vitest: specifier: ^0.33.0 version: 0.33.0(playwright@1.30.0) @@ -1033,7 +1033,7 @@ importers: version: 1.29.0 shiki-twoslash: specifier: ^3.1.2 - version: 3.1.2(typescript@4.9.4) + version: 3.1.2(typescript@5.0.4) svelte: specifier: ^4.1.2 version: 4.1.2 @@ -1041,8 +1041,8 @@ importers: specifier: ^0.2.9 version: 0.2.9 typescript: - specifier: 4.9.4 - version: 4.9.4 + specifier: 5.0.4 + version: 5.0.4 vite: specifier: ^4.4.8 version: 4.4.8(@types/node@20.4.7) @@ -5647,7 +5647,7 @@ packages: engines: {node: '>=8'} dev: true - /shiki-twoslash@3.1.2(typescript@4.9.4): + /shiki-twoslash@3.1.2(typescript@5.0.4): resolution: {integrity: sha512-JBcRIIizi+exIA/OUhYkV6jtyeZco0ykCkIRd5sgwIt1Pm4pz+maoaRZpm6SkhPwvif4fCA7xOtJOykhpIV64Q==} peerDependencies: typescript: '>3' @@ -5656,7 +5656,7 @@ packages: '@typescript/vfs': 1.3.4 fenceparser: 1.1.1 shiki: 0.10.1 - typescript: 4.9.4 + typescript: 5.0.4 transitivePeerDependencies: - supports-color dev: true diff --git a/sites/kit.svelte.dev/package.json b/sites/kit.svelte.dev/package.json index 48566977e477..44b55d36c230 100644 --- a/sites/kit.svelte.dev/package.json +++ b/sites/kit.svelte.dev/package.json @@ -25,7 +25,7 @@ "shiki-twoslash": "^3.1.2", "svelte": "^4.1.2", "tiny-glob": "^0.2.9", - "typescript": "4.9.4", + "typescript": "5.0.4", "vite": "^4.4.8", "vite-imagetools": "^5.0.7", "vitest": "^0.34.1" From 125659e5d73854445f424dd120a43cc99e93753e Mon Sep 17 00:00:00 2001 From: gtmnayan Date: Wed, 9 Aug 2023 14:35:40 +0545 Subject: [PATCH 41/47] fix link to integrations page --- .../docs/60-appendix/10-what-can-i-make-with-sveltekit.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/documentation/docs/60-appendix/10-what-can-i-make-with-sveltekit.md b/documentation/docs/60-appendix/10-what-can-i-make-with-sveltekit.md index 200fc9581145..2e22801ac4a9 100644 --- a/documentation/docs/60-appendix/10-what-can-i-make-with-sveltekit.md +++ b/documentation/docs/60-appendix/10-what-can-i-make-with-sveltekit.md @@ -19,4 +19,4 @@ SvelteKit can also be deployed to a wide spectrum of hosted architectures via [a In order to support SSR, a JS backend — such as Node.js or Deno-based server, serverless function, or edge function — is required. -It is also possible to write custom adapters or leverage community adapters to deploy SvelteKit to more platforms such as specialized server environments, browser extensions, or native applications. See [How do I use X with SvelteKit](#integrations) for more examples and integrations. +It is also possible to write custom adapters or leverage community adapters to deploy SvelteKit to more platforms such as specialized server environments, browser extensions, or native applications. See [How do I use X with SvelteKit](/docs/integrations) for more examples and integrations. From 06757bac037d2b65cbbfb1c7406b01dcd997c000 Mon Sep 17 00:00:00 2001 From: Puru Vijay Date: Wed, 9 Aug 2023 14:23:37 +0530 Subject: [PATCH 42/47] Bumps deps, fix link --- .../10-what-can-i-make-with-sveltekit.md | 2 +- pnpm-lock.yaml | 129 +++++++++++------- sites/kit.svelte.dev/package.json | 6 +- 3 files changed, 87 insertions(+), 50 deletions(-) diff --git a/documentation/docs/60-appendix/10-what-can-i-make-with-sveltekit.md b/documentation/docs/60-appendix/10-what-can-i-make-with-sveltekit.md index 200fc9581145..64c1eb6538d0 100644 --- a/documentation/docs/60-appendix/10-what-can-i-make-with-sveltekit.md +++ b/documentation/docs/60-appendix/10-what-can-i-make-with-sveltekit.md @@ -19,4 +19,4 @@ SvelteKit can also be deployed to a wide spectrum of hosted architectures via [a In order to support SSR, a JS backend — such as Node.js or Deno-based server, serverless function, or edge function — is required. -It is also possible to write custom adapters or leverage community adapters to deploy SvelteKit to more platforms such as specialized server environments, browser extensions, or native applications. See [How do I use X with SvelteKit](#integrations) for more examples and integrations. +It is also possible to write custom adapters or leverage community adapters to deploy SvelteKit to more platforms such as specialized server environments, browser extensions, or native applications. See [How do I use X with SvelteKit](./faq#how-do-i-use-x-with-sveltekit) for more examples and integrations. diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 253a5a7e4d8f..4e7e4185e0be 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -249,7 +249,7 @@ importers: version: 4.1.2 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) packages/adapter-static/test/apps/spa: devDependencies: @@ -267,7 +267,7 @@ importers: version: 4.1.2 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) packages/adapter-vercel: dependencies: @@ -360,7 +360,7 @@ importers: version: 5.0.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) packages/create-svelte/templates/skeleton: devDependencies: @@ -475,7 +475,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) packages/kit/test/apps/basics: devDependencies: @@ -499,7 +499,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) packages/kit/test/apps/dev-only: devDependencies: @@ -520,7 +520,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) packages/kit/test/apps/embed: devDependencies: @@ -541,7 +541,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) packages/kit/test/apps/options: devDependencies: @@ -562,7 +562,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) packages/kit/test/apps/options-2: devDependencies: @@ -586,7 +586,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) packages/kit/test/apps/writes: devDependencies: @@ -610,7 +610,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) packages/kit/test/build-errors: devDependencies: @@ -637,7 +637,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) packages/kit/test/build-errors/apps/prerenderable-incorrect-fragment: devDependencies: @@ -658,7 +658,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) packages/kit/test/build-errors/apps/prerenderable-not-prerendered: devDependencies: @@ -679,7 +679,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) packages/kit/test/build-errors/apps/private-dynamic-env: devDependencies: @@ -697,7 +697,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) packages/kit/test/build-errors/apps/private-dynamic-env-dynamic-import: devDependencies: @@ -715,7 +715,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) packages/kit/test/build-errors/apps/private-static-env: devDependencies: @@ -736,7 +736,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) packages/kit/test/build-errors/apps/private-static-env-dynamic-import: devDependencies: @@ -754,7 +754,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) packages/kit/test/build-errors/apps/server-only-folder: devDependencies: @@ -772,7 +772,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) packages/kit/test/build-errors/apps/server-only-folder-dynamic-import: devDependencies: @@ -790,7 +790,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) packages/kit/test/build-errors/apps/server-only-module: devDependencies: @@ -808,7 +808,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) packages/kit/test/build-errors/apps/server-only-module-dynamic-import: devDependencies: @@ -826,7 +826,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) packages/kit/test/build-errors/apps/syntax-error: devDependencies: @@ -844,7 +844,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) packages/kit/test/prerendering/basics: devDependencies: @@ -862,7 +862,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) vitest: specifier: ^0.33.0 version: 0.33.0(playwright@1.30.0) @@ -883,7 +883,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) vitest: specifier: ^0.33.0 version: 0.33.0(playwright@1.30.0) @@ -904,7 +904,7 @@ importers: version: 4.9.4 vite: specifier: ^4.4.2 - version: 4.4.8(@types/node@20.4.7) + version: 4.4.8(@types/node@16.18.6) vitest: specifier: ^0.33.0 version: 0.33.0(playwright@1.30.0) @@ -1014,8 +1014,8 @@ importers: specifier: ^3.0.3 version: 3.0.3 '@types/node': - specifier: ^20.4.7 - version: 20.4.7 + specifier: ^20.4.9 + version: 20.4.9 flexsearch: specifier: ^0.7.31 version: 0.7.31 @@ -1023,8 +1023,8 @@ importers: specifier: ^0.30.2 version: 0.30.2 marked: - specifier: ^7.0.0 - version: 7.0.0 + specifier: ^7.0.1 + version: 7.0.1 prism-svelte: specifier: ^0.5.0 version: 0.5.0 @@ -1044,8 +1044,8 @@ importers: specifier: 5.0.4 version: 5.0.4 vite: - specifier: ^4.4.8 - version: 4.4.8(@types/node@20.4.7) + specifier: ^4.4.9 + version: 4.4.9(@types/node@20.4.9) vite-imagetools: specifier: ^5.0.7 version: 5.0.7(rollup@3.7.0) @@ -1326,6 +1326,7 @@ packages: cpu: [arm64] os: [android] requiresBuild: true + dev: false optional: true /@esbuild/android-arm64@0.18.20: @@ -1342,6 +1343,7 @@ packages: cpu: [arm] os: [android] requiresBuild: true + dev: false optional: true /@esbuild/android-arm@0.18.20: @@ -1358,6 +1360,7 @@ packages: cpu: [x64] os: [android] requiresBuild: true + dev: false optional: true /@esbuild/android-x64@0.18.20: @@ -1374,6 +1377,7 @@ packages: cpu: [arm64] os: [darwin] requiresBuild: true + dev: false optional: true /@esbuild/darwin-arm64@0.18.20: @@ -1390,6 +1394,7 @@ packages: cpu: [x64] os: [darwin] requiresBuild: true + dev: false optional: true /@esbuild/darwin-x64@0.18.20: @@ -1406,6 +1411,7 @@ packages: cpu: [arm64] os: [freebsd] requiresBuild: true + dev: false optional: true /@esbuild/freebsd-arm64@0.18.20: @@ -1422,6 +1428,7 @@ packages: cpu: [x64] os: [freebsd] requiresBuild: true + dev: false optional: true /@esbuild/freebsd-x64@0.18.20: @@ -1438,6 +1445,7 @@ packages: cpu: [arm64] os: [linux] requiresBuild: true + dev: false optional: true /@esbuild/linux-arm64@0.18.20: @@ -1454,6 +1462,7 @@ packages: cpu: [arm] os: [linux] requiresBuild: true + dev: false optional: true /@esbuild/linux-arm@0.18.20: @@ -1470,6 +1479,7 @@ packages: cpu: [ia32] os: [linux] requiresBuild: true + dev: false optional: true /@esbuild/linux-ia32@0.18.20: @@ -1486,6 +1496,7 @@ packages: cpu: [loong64] os: [linux] requiresBuild: true + dev: false optional: true /@esbuild/linux-loong64@0.18.20: @@ -1502,6 +1513,7 @@ packages: cpu: [mips64el] os: [linux] requiresBuild: true + dev: false optional: true /@esbuild/linux-mips64el@0.18.20: @@ -1518,6 +1530,7 @@ packages: cpu: [ppc64] os: [linux] requiresBuild: true + dev: false optional: true /@esbuild/linux-ppc64@0.18.20: @@ -1534,6 +1547,7 @@ packages: cpu: [riscv64] os: [linux] requiresBuild: true + dev: false optional: true /@esbuild/linux-riscv64@0.18.20: @@ -1550,6 +1564,7 @@ packages: cpu: [s390x] os: [linux] requiresBuild: true + dev: false optional: true /@esbuild/linux-s390x@0.18.20: @@ -1566,6 +1581,7 @@ packages: cpu: [x64] os: [linux] requiresBuild: true + dev: false optional: true /@esbuild/linux-x64@0.18.20: @@ -1582,6 +1598,7 @@ packages: cpu: [x64] os: [netbsd] requiresBuild: true + dev: false optional: true /@esbuild/netbsd-x64@0.18.20: @@ -1598,6 +1615,7 @@ packages: cpu: [x64] os: [openbsd] requiresBuild: true + dev: false optional: true /@esbuild/openbsd-x64@0.18.20: @@ -1614,6 +1632,7 @@ packages: cpu: [x64] os: [sunos] requiresBuild: true + dev: false optional: true /@esbuild/sunos-x64@0.18.20: @@ -1630,6 +1649,7 @@ packages: cpu: [arm64] os: [win32] requiresBuild: true + dev: false optional: true /@esbuild/win32-arm64@0.18.20: @@ -1646,6 +1666,7 @@ packages: cpu: [ia32] os: [win32] requiresBuild: true + dev: false optional: true /@esbuild/win32-ia32@0.18.20: @@ -1662,6 +1683,7 @@ packages: cpu: [x64] os: [win32] requiresBuild: true + dev: false optional: true /@esbuild/win32-x64@0.18.20: @@ -2108,8 +2130,8 @@ packages: /@types/node@16.18.6: resolution: {integrity: sha512-vmYJF0REqDyyU0gviezF/KHq/fYaUbFhkcNbQCuPGFQj6VTbXuHZoxs/Y7mutWe73C8AC6l9fFu8mSYiBAqkGA==} - /@types/node@20.4.7: - resolution: {integrity: sha512-bUBrPjEry2QUTsnuEjzjbS7voGWCc30W0qzgMf90GPeDGFRakvrz47ju+oqDAKCXLUCe39u57/ORMl/O/04/9g==} + /@types/node@20.4.9: + resolution: {integrity: sha512-8e2HYcg7ohnTUbHk8focoklEQYvemQmu9M/f43DZVx43kHn0tE3BY/6gSDxS7k0SprtS0NHvj+L80cGLnoOUcQ==} dev: true /@types/normalize-package-data@2.4.1: @@ -3371,6 +3393,7 @@ packages: '@esbuild/win32-arm64': 0.18.11 '@esbuild/win32-ia32': 0.18.11 '@esbuild/win32-x64': 0.18.11 + dev: false /esbuild@0.18.20: resolution: {integrity: sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==} @@ -4596,6 +4619,12 @@ packages: hasBin: true dev: true + /marked@7.0.1: + resolution: {integrity: sha512-m8Aze620Ts62yaciz2DghZGUkUfdgvSNRicS2/XtQkStMNoce3NWjOD2b/jWF32+XXK6udM6pRhv2dKNlneAFA==} + engines: {node: '>= 16'} + hasBin: true + dev: true + /mdn-data@2.0.30: resolution: {integrity: sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==} @@ -5519,6 +5548,14 @@ packages: optionalDependencies: fsevents: 2.3.2 + /rollup@3.28.0: + resolution: {integrity: sha512-d7zhvo1OUY2SXSM6pfNjgD5+d0Nz87CUp4mt8l/GgVP3oBsPwzNvSzyu1me6BSG9JIgWNTVcafIXBIyM8yQ3yw==} + engines: {node: '>=14.18.0', npm: '>=8.0.0'} + hasBin: true + optionalDependencies: + fsevents: 2.3.2 + dev: true + /rollup@3.7.0: resolution: {integrity: sha512-FIJe0msW9P7L9BTfvaJyvn1U1BVCNTL3w8O+PKIrCyiMLg+rIUGb4MbcgVZ10Lnm1uWXOTOWRNARjfXC1+M12Q==} engines: {node: '>=14.18.0', npm: '>=8.0.0'} @@ -6580,7 +6617,7 @@ packages: - terser dev: true - /vite-node@0.34.1(@types/node@20.4.7): + /vite-node@0.34.1(@types/node@20.4.9): resolution: {integrity: sha512-odAZAL9xFMuAg8aWd7nSPT+hU8u2r9gU3LRm9QKjxBEF2rRdWpMuqkrkjvyVQEdNFiBctqr2Gg4uJYizm5Le6w==} engines: {node: '>=v14.18.0'} hasBin: true @@ -6590,7 +6627,7 @@ packages: mlly: 1.4.0 pathe: 1.1.1 picocolors: 1.0.0 - vite: 4.4.8(@types/node@20.4.7) + vite: 4.4.9(@types/node@20.4.9) transitivePeerDependencies: - '@types/node' - less @@ -6637,8 +6674,8 @@ packages: optionalDependencies: fsevents: 2.3.2 - /vite@4.4.8(@types/node@20.4.7): - resolution: {integrity: sha512-LONawOUUjxQridNWGQlNizfKH89qPigK36XhMI7COMGztz8KNY0JHim7/xDd71CZwGT4HtSRgI7Hy+RlhG0Gvg==} + /vite@4.4.9(@types/node@16.18.6): + resolution: {integrity: sha512-2mbUn2LlUmNASWwSCNSJ/EG2HuSRTnVNaydp6vMCm5VIqJsjMfbIWtbH2kDuwUVW5mMUKKZvGPX/rqeqVvv1XA==} engines: {node: ^14.18.0 || >=16.0.0} hasBin: true peerDependencies: @@ -6665,15 +6702,15 @@ packages: terser: optional: true dependencies: - '@types/node': 20.4.7 + '@types/node': 16.18.6 esbuild: 0.18.20 postcss: 8.4.27 - rollup: 3.27.2 + rollup: 3.28.0 optionalDependencies: fsevents: 2.3.2 dev: true - /vite@4.4.9(@types/node@16.18.6): + /vite@4.4.9(@types/node@20.4.9): resolution: {integrity: sha512-2mbUn2LlUmNASWwSCNSJ/EG2HuSRTnVNaydp6vMCm5VIqJsjMfbIWtbH2kDuwUVW5mMUKKZvGPX/rqeqVvv1XA==} engines: {node: ^14.18.0 || >=16.0.0} hasBin: true @@ -6701,10 +6738,10 @@ packages: terser: optional: true dependencies: - '@types/node': 16.18.6 - esbuild: 0.18.11 + '@types/node': 20.4.9 + esbuild: 0.18.20 postcss: 8.4.27 - rollup: 3.27.2 + rollup: 3.28.0 optionalDependencies: fsevents: 2.3.2 dev: true @@ -6819,7 +6856,7 @@ packages: dependencies: '@types/chai': 4.3.5 '@types/chai-subset': 1.3.3 - '@types/node': 20.4.7 + '@types/node': 20.4.9 '@vitest/expect': 0.34.1 '@vitest/runner': 0.34.1 '@vitest/snapshot': 0.34.1 @@ -6839,8 +6876,8 @@ packages: strip-literal: 1.3.0 tinybench: 2.5.0 tinypool: 0.7.0 - vite: 4.4.8(@types/node@20.4.7) - vite-node: 0.34.1(@types/node@20.4.7) + vite: 4.4.9(@types/node@20.4.9) + vite-node: 0.34.1(@types/node@20.4.9) why-is-node-running: 2.2.2 transitivePeerDependencies: - less diff --git a/sites/kit.svelte.dev/package.json b/sites/kit.svelte.dev/package.json index 44b55d36c230..48bac917ea8f 100644 --- a/sites/kit.svelte.dev/package.json +++ b/sites/kit.svelte.dev/package.json @@ -16,17 +16,17 @@ "@sveltejs/kit": "workspace:^", "@sveltejs/site-kit": "6.0.0-next.26", "@types/d3-geo": "^3.0.3", - "@types/node": "^20.4.7", + "@types/node": "^20.4.9", "flexsearch": "^0.7.31", "magic-string": "^0.30.2", - "marked": "^7.0.0", + "marked": "^7.0.1", "prism-svelte": "^0.5.0", "prismjs": "^1.29.0", "shiki-twoslash": "^3.1.2", "svelte": "^4.1.2", "tiny-glob": "^0.2.9", "typescript": "5.0.4", - "vite": "^4.4.8", + "vite": "^4.4.9", "vite-imagetools": "^5.0.7", "vitest": "^0.34.1" }, From 7b163a49298515cf07f0acec31784eddcec99c65 Mon Sep 17 00:00:00 2001 From: Puru Vijay Date: Wed, 9 Aug 2023 14:38:08 +0530 Subject: [PATCH 43/47] Update footer --- sites/kit.svelte.dev/src/routes/+page.svelte | 69 ++++++++++++-------- 1 file changed, 40 insertions(+), 29 deletions(-) diff --git a/sites/kit.svelte.dev/src/routes/+page.svelte b/sites/kit.svelte.dev/src/routes/+page.svelte index a8f7633d2017..0111c5bcb17e 100644 --- a/sites/kit.svelte.dev/src/routes/+page.svelte +++ b/sites/kit.svelte.dev/src/routes/+page.svelte @@ -1,5 +1,5 @@