sv 0.4.3 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +7 -0
- package/README.md +20 -128
- package/dist/bin.js +13085 -0
- package/dist/bin.js.map +1 -0
- package/dist/index-CfDBZLMZ.js +137 -0
- package/dist/index-CfDBZLMZ.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +5 -0
- package/dist/index.js.map +1 -0
- package/dist/shared.json +138 -0
- package/dist/templates/demo/assets/DOT-gitignore +21 -0
- package/dist/templates/demo/assets/DOT-npmrc +1 -0
- package/dist/templates/demo/assets/src/app.css +107 -0
- package/dist/templates/demo/assets/src/app.html +12 -0
- package/dist/templates/demo/assets/src/lib/images/github.svg +16 -0
- package/dist/templates/demo/assets/src/lib/images/svelte-logo.svg +1 -0
- package/dist/templates/demo/assets/src/lib/images/svelte-welcome.png +0 -0
- package/dist/templates/demo/assets/src/lib/images/svelte-welcome.webp +0 -0
- package/dist/templates/demo/assets/static/favicon.png +0 -0
- package/dist/templates/demo/assets/static/robots.txt +3 -0
- package/dist/templates/demo/files.types=checkjs.json +62 -0
- package/dist/templates/demo/files.types=none.json +58 -0
- package/dist/templates/demo/files.types=typescript.json +62 -0
- package/dist/templates/demo/meta.json +4 -0
- package/dist/templates/demo/package.json +19 -0
- package/dist/templates/skeleton/assets/DOT-gitignore +21 -0
- package/dist/templates/skeleton/assets/DOT-npmrc +1 -0
- package/dist/templates/skeleton/assets/src/app.html +12 -0
- package/dist/templates/skeleton/assets/static/favicon.png +0 -0
- package/dist/templates/skeleton/files.types=checkjs.json +14 -0
- package/dist/templates/skeleton/files.types=none.json +10 -0
- package/dist/templates/skeleton/files.types=typescript.json +14 -0
- package/dist/templates/skeleton/meta.json +4 -0
- package/dist/templates/skeleton/package.json +18 -0
- package/dist/templates/skeletonlib/assets/DOT-gitignore +22 -0
- package/dist/templates/skeletonlib/assets/DOT-npmrc +1 -0
- package/dist/templates/skeletonlib/assets/src/app.html +12 -0
- package/dist/templates/skeletonlib/assets/static/favicon.png +0 -0
- package/dist/templates/skeletonlib/files.types=checkjs.json +14 -0
- package/dist/templates/skeletonlib/files.types=none.json +10 -0
- package/dist/templates/skeletonlib/files.types=typescript.json +14 -0
- package/dist/templates/skeletonlib/meta.json +4 -0
- package/dist/templates/skeletonlib/package.json +34 -0
- package/dist/unocss-Dk7i15rK.js +11 -0
- package/dist/unocss-Dk7i15rK.js.map +1 -0
- package/dist/unplugin-icons-DkNLYvBs.js +11 -0
- package/dist/unplugin-icons-DkNLYvBs.js.map +1 -0
- package/package.json +42 -29
- package/bin/sv.d.ts +0 -2
- package/bin/sv.js +0 -126
- package/common.d.ts +0 -39
- package/common.js +0 -29
- package/docs/example.js +0 -57
- package/index.d.ts +0 -13
- package/index.js +0 -31
- package/parser.d.ts +0 -31
- package/parser.js +0 -209
- package/stringifier.d.ts +0 -44
- package/stringifier.js +0 -174
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
import fs from 'node:fs';
|
|
2
|
+
import path from 'node:path';
|
|
3
|
+
import { fileURLToPath } from 'node:url';
|
|
4
|
+
|
|
5
|
+
function mkdirp(dir) {
|
|
6
|
+
try {
|
|
7
|
+
fs.mkdirSync(dir, { recursive: true });
|
|
8
|
+
} catch (err) {
|
|
9
|
+
const e = err;
|
|
10
|
+
if (e.code === "EEXIST") return;
|
|
11
|
+
throw e;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
function identity(x) {
|
|
15
|
+
return x;
|
|
16
|
+
}
|
|
17
|
+
function copy(from, to, rename = identity) {
|
|
18
|
+
if (!fs.existsSync(from)) return;
|
|
19
|
+
const stats = fs.statSync(from);
|
|
20
|
+
if (stats.isDirectory()) {
|
|
21
|
+
fs.readdirSync(from).forEach((file) => {
|
|
22
|
+
copy(path.join(from, file), path.join(to, rename(file)));
|
|
23
|
+
});
|
|
24
|
+
} else {
|
|
25
|
+
mkdirp(path.dirname(to));
|
|
26
|
+
fs.copyFileSync(from, to);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
function dist(path2) {
|
|
30
|
+
const insideDistFolder = import.meta.url.includes("dist");
|
|
31
|
+
return fileURLToPath(
|
|
32
|
+
new URL(`./${!insideDistFolder ? "dist/" : ""}${path2}`, import.meta.url).href
|
|
33
|
+
);
|
|
34
|
+
}
|
|
35
|
+
const templateTypes = ["skeleton", "skeletonlib", "demo"];
|
|
36
|
+
function create(cwd, options) {
|
|
37
|
+
mkdirp(cwd);
|
|
38
|
+
write_template_files(options.template, options.types, options.name, cwd);
|
|
39
|
+
write_common_files(cwd, options, options.name);
|
|
40
|
+
}
|
|
41
|
+
const templates = templateTypes.map((dir) => {
|
|
42
|
+
const meta_file = dist(`templates/${dir}/meta.json`);
|
|
43
|
+
const { title, description } = JSON.parse(fs.readFileSync(meta_file, "utf8"));
|
|
44
|
+
return {
|
|
45
|
+
name: dir,
|
|
46
|
+
title,
|
|
47
|
+
description
|
|
48
|
+
};
|
|
49
|
+
});
|
|
50
|
+
function write_template_files(template, types, name, cwd) {
|
|
51
|
+
const dir = dist(`templates/${template}`);
|
|
52
|
+
copy(`${dir}/assets`, cwd, (name2) => name2.replace("DOT-", "."));
|
|
53
|
+
copy(`${dir}/package.json`, `${cwd}/package.json`);
|
|
54
|
+
const manifest = `${dir}/files.types=${types}.json`;
|
|
55
|
+
const files = JSON.parse(fs.readFileSync(manifest, "utf-8"));
|
|
56
|
+
files.forEach((file) => {
|
|
57
|
+
const dest = path.join(cwd, file.name);
|
|
58
|
+
mkdirp(path.dirname(dest));
|
|
59
|
+
fs.writeFileSync(dest, file.contents.replace(/~TODO~/g, name));
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
function write_common_files(cwd, options, name) {
|
|
63
|
+
const shared = dist("shared.json");
|
|
64
|
+
const { files } = JSON.parse(fs.readFileSync(shared, "utf-8"));
|
|
65
|
+
const pkg_file = path.join(cwd, "package.json");
|
|
66
|
+
const pkg = (
|
|
67
|
+
/** @type {any} */
|
|
68
|
+
JSON.parse(fs.readFileSync(pkg_file, "utf-8"))
|
|
69
|
+
);
|
|
70
|
+
sort_files(files).forEach((file) => {
|
|
71
|
+
const include = file.include.every((condition) => matches_condition(condition, options));
|
|
72
|
+
const exclude = file.exclude.some((condition) => matches_condition(condition, options));
|
|
73
|
+
if (exclude || !include) return;
|
|
74
|
+
if (file.name === "package.json") {
|
|
75
|
+
const new_pkg = JSON.parse(file.contents);
|
|
76
|
+
merge(pkg, new_pkg);
|
|
77
|
+
} else {
|
|
78
|
+
const dest = path.join(cwd, file.name);
|
|
79
|
+
mkdirp(path.dirname(dest));
|
|
80
|
+
fs.writeFileSync(dest, file.contents);
|
|
81
|
+
}
|
|
82
|
+
});
|
|
83
|
+
pkg.dependencies = sort_keys(pkg.dependencies);
|
|
84
|
+
pkg.devDependencies = sort_keys(pkg.devDependencies);
|
|
85
|
+
pkg.name = to_valid_package_name(name);
|
|
86
|
+
fs.writeFileSync(pkg_file, JSON.stringify(pkg, null, " ") + "\n");
|
|
87
|
+
}
|
|
88
|
+
function matches_condition(condition, options) {
|
|
89
|
+
if (condition === "demo" || condition === "skeleton" || condition === "skeletonlib") {
|
|
90
|
+
return options.template === condition;
|
|
91
|
+
}
|
|
92
|
+
if (condition === "typescript" || condition === "checkjs") {
|
|
93
|
+
return options.types === condition;
|
|
94
|
+
}
|
|
95
|
+
return !!options[condition];
|
|
96
|
+
}
|
|
97
|
+
function merge(target, source) {
|
|
98
|
+
for (const key in source) {
|
|
99
|
+
if (key in target) {
|
|
100
|
+
const target_value = target[key];
|
|
101
|
+
const source_value = source[key];
|
|
102
|
+
if (typeof source_value !== typeof target_value || Array.isArray(source_value) !== Array.isArray(target_value)) {
|
|
103
|
+
throw new Error("Mismatched values");
|
|
104
|
+
}
|
|
105
|
+
if (typeof source_value === "object") {
|
|
106
|
+
merge(target_value, source_value);
|
|
107
|
+
} else {
|
|
108
|
+
target[key] = source_value;
|
|
109
|
+
}
|
|
110
|
+
} else {
|
|
111
|
+
target[key] = source[key];
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
function sort_keys(obj) {
|
|
116
|
+
if (!obj) return;
|
|
117
|
+
const sorted = {};
|
|
118
|
+
Object.keys(obj).sort().forEach((key) => {
|
|
119
|
+
sorted[key] = obj[key];
|
|
120
|
+
});
|
|
121
|
+
return sorted;
|
|
122
|
+
}
|
|
123
|
+
function sort_files(files) {
|
|
124
|
+
return files.sort((f1, f2) => {
|
|
125
|
+
const f1_more_generic = f1.include.every((include) => f2.include.includes(include)) && f1.exclude.every((exclude) => f2.exclude.includes(exclude));
|
|
126
|
+
const f2_more_generic = f2.include.every((include) => f1.include.includes(include)) && f2.exclude.every((exclude) => f1.exclude.includes(exclude));
|
|
127
|
+
const same = f1_more_generic && f2_more_generic;
|
|
128
|
+
const different = !f1_more_generic && !f2_more_generic;
|
|
129
|
+
return same || different ? 0 : f1_more_generic ? -1 : 1;
|
|
130
|
+
});
|
|
131
|
+
}
|
|
132
|
+
function to_valid_package_name(name) {
|
|
133
|
+
return name.trim().toLowerCase().replace(/\s+/g, "-").replace(/^[._]/, "").replace(/[^a-z0-9~.-]+/g, "-");
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
export { create as c, templates as t };
|
|
137
|
+
//# sourceMappingURL=index-CfDBZLMZ.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-CfDBZLMZ.js","sources":["../../create/dist/index.js"],"sourcesContent":["import fs from 'node:fs';\nimport path from 'node:path';\nimport { fileURLToPath } from 'node:url';\n\nfunction mkdirp(dir) {\n try {\n fs.mkdirSync(dir, { recursive: true });\n } catch (err) {\n const e = err;\n if (e.code === \"EEXIST\") return;\n throw e;\n }\n}\nfunction identity(x) {\n return x;\n}\nfunction copy(from, to, rename = identity) {\n if (!fs.existsSync(from)) return;\n const stats = fs.statSync(from);\n if (stats.isDirectory()) {\n fs.readdirSync(from).forEach((file) => {\n copy(path.join(from, file), path.join(to, rename(file)));\n });\n } else {\n mkdirp(path.dirname(to));\n fs.copyFileSync(from, to);\n }\n}\nfunction dist(path2) {\n const insideDistFolder = import.meta.url.includes(\"dist\");\n return fileURLToPath(\n new URL(`./${!insideDistFolder ? \"dist/\" : \"\"}${path2}`, import.meta.url).href\n );\n}\n\nconst templateTypes = [\"skeleton\", \"skeletonlib\", \"demo\"];\nfunction create(cwd, options) {\n mkdirp(cwd);\n write_template_files(options.template, options.types, options.name, cwd);\n write_common_files(cwd, options, options.name);\n}\nconst templates = templateTypes.map((dir) => {\n const meta_file = dist(`templates/${dir}/meta.json`);\n const { title, description } = JSON.parse(fs.readFileSync(meta_file, \"utf8\"));\n return {\n name: dir,\n title,\n description\n };\n});\nfunction write_template_files(template, types, name, cwd) {\n const dir = dist(`templates/${template}`);\n copy(`${dir}/assets`, cwd, (name2) => name2.replace(\"DOT-\", \".\"));\n copy(`${dir}/package.json`, `${cwd}/package.json`);\n const manifest = `${dir}/files.types=${types}.json`;\n const files = JSON.parse(fs.readFileSync(manifest, \"utf-8\"));\n files.forEach((file) => {\n const dest = path.join(cwd, file.name);\n mkdirp(path.dirname(dest));\n fs.writeFileSync(dest, file.contents.replace(/~TODO~/g, name));\n });\n}\nfunction write_common_files(cwd, options, name) {\n const shared = dist(\"shared.json\");\n const { files } = JSON.parse(fs.readFileSync(shared, \"utf-8\"));\n const pkg_file = path.join(cwd, \"package.json\");\n const pkg = (\n /** @type {any} */\n JSON.parse(fs.readFileSync(pkg_file, \"utf-8\"))\n );\n sort_files(files).forEach((file) => {\n const include = file.include.every((condition) => matches_condition(condition, options));\n const exclude = file.exclude.some((condition) => matches_condition(condition, options));\n if (exclude || !include) return;\n if (file.name === \"package.json\") {\n const new_pkg = JSON.parse(file.contents);\n merge(pkg, new_pkg);\n } else {\n const dest = path.join(cwd, file.name);\n mkdirp(path.dirname(dest));\n fs.writeFileSync(dest, file.contents);\n }\n });\n pkg.dependencies = sort_keys(pkg.dependencies);\n pkg.devDependencies = sort_keys(pkg.devDependencies);\n pkg.name = to_valid_package_name(name);\n fs.writeFileSync(pkg_file, JSON.stringify(pkg, null, \"\t\") + \"\\n\");\n}\nfunction matches_condition(condition, options) {\n if (condition === \"demo\" || condition === \"skeleton\" || condition === \"skeletonlib\") {\n return options.template === condition;\n }\n if (condition === \"typescript\" || condition === \"checkjs\") {\n return options.types === condition;\n }\n return !!options[condition];\n}\nfunction merge(target, source) {\n for (const key in source) {\n if (key in target) {\n const target_value = target[key];\n const source_value = source[key];\n if (typeof source_value !== typeof target_value || Array.isArray(source_value) !== Array.isArray(target_value)) {\n throw new Error(\"Mismatched values\");\n }\n if (typeof source_value === \"object\") {\n merge(target_value, source_value);\n } else {\n target[key] = source_value;\n }\n } else {\n target[key] = source[key];\n }\n }\n}\nfunction sort_keys(obj) {\n if (!obj) return;\n const sorted = {};\n Object.keys(obj).sort().forEach((key) => {\n sorted[key] = obj[key];\n });\n return sorted;\n}\nfunction sort_files(files) {\n return files.sort((f1, f2) => {\n const f1_more_generic = f1.include.every((include) => f2.include.includes(include)) && f1.exclude.every((exclude) => f2.exclude.includes(exclude));\n const f2_more_generic = f2.include.every((include) => f1.include.includes(include)) && f2.exclude.every((exclude) => f1.exclude.includes(exclude));\n const same = f1_more_generic && f2_more_generic;\n const different = !f1_more_generic && !f2_more_generic;\n return same || different ? 0 : f1_more_generic ? -1 : 1;\n });\n}\nfunction to_valid_package_name(name) {\n return name.trim().toLowerCase().replace(/\\s+/g, \"-\").replace(/^[._]/, \"\").replace(/[^a-z0-9~.-]+/g, \"-\");\n}\n\nexport { create, templates };\n//# sourceMappingURL=index.js.map\n"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
ADDED
package/dist/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;"}
|
package/dist/shared.json
ADDED
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
{
|
|
2
|
+
"files": [
|
|
3
|
+
{
|
|
4
|
+
"name": "README.md",
|
|
5
|
+
"include": [],
|
|
6
|
+
"exclude": [],
|
|
7
|
+
"contents": "# create-svelte\n\nEverything you need to build a Svelte project, powered by [`create-svelte`](https://github.com/sveltejs/kit/tree/main/packages/create-svelte).\n\n## Creating a project\n\nIf you're seeing this, you've probably already done this step. Congrats!\n\n```bash\n# create a new project in the current directory\nnpx sv create\n\n# create a new project in my-app\nnpx sv create my-app\n```\n\n## Developing\n\nOnce you've created a project and installed dependencies with `npm install` (or `pnpm install` or `yarn`), start a development server:\n\n```bash\nnpm run dev\n\n# or start the server and open the app in a new browser tab\nnpm run dev -- --open\n```\n\n## Building\n\nTo create a production version of your app:\n\n```bash\nnpm run build\n```\n\nYou can preview the production build with `npm run preview`.\n\n> To deploy your app, you may need to install an [adapter](https://kit.svelte.dev/docs/adapters) for your target environment.\n"
|
|
8
|
+
},
|
|
9
|
+
{
|
|
10
|
+
"name": "jsconfig.json",
|
|
11
|
+
"include": [
|
|
12
|
+
"checkjs"
|
|
13
|
+
],
|
|
14
|
+
"exclude": [],
|
|
15
|
+
"contents": "{\n\t\"extends\": \"./.svelte-kit/tsconfig.json\",\n\t\"compilerOptions\": {\n\t\t\"allowJs\": true,\n\t\t\"checkJs\": true,\n\t\t\"esModuleInterop\": true,\n\t\t\"forceConsistentCasingInFileNames\": true,\n\t\t\"resolveJsonModule\": true,\n\t\t\"skipLibCheck\": true,\n\t\t\"sourceMap\": true,\n\t\t\"strict\": true,\n\t\t\"moduleResolution\": \"bundler\"\n\t}\n\t// Path aliases are handled by https://kit.svelte.dev/docs/configuration#alias\n\t// except $lib which is handled by https://kit.svelte.dev/docs/configuration#files\n\t//\n\t// If you want to overwrite includes/excludes, make sure to copy over the relevant includes/excludes\n\t// from the referenced tsconfig.json - TypeScript does not merge them in\n}\n"
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
"name": "package.json",
|
|
19
|
+
"include": [
|
|
20
|
+
"checkjs"
|
|
21
|
+
],
|
|
22
|
+
"exclude": [],
|
|
23
|
+
"contents": "{\n\t\"scripts\": {\n\t\t\"check\": \"svelte-kit sync && svelte-check --tsconfig ./jsconfig.json\",\n\t\t\"check:watch\": \"svelte-kit sync && svelte-check --tsconfig ./jsconfig.json --watch\"\n\t},\n\t\"devDependencies\": {\n\t\t\"typescript\": \"^5.0.0\",\n\t\t\"svelte-check\": \"^4.0.0\"\n\t}\n}\n"
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
"name": "README.md",
|
|
27
|
+
"include": [
|
|
28
|
+
"skeletonlib"
|
|
29
|
+
],
|
|
30
|
+
"exclude": [],
|
|
31
|
+
"contents": "# create-svelte\n\nEverything you need to build a Svelte library, powered by [`create-svelte`](https://github.com/sveltejs/kit/tree/main/packages/create-svelte).\n\nRead more about creating a library [in the docs](https://kit.svelte.dev/docs/packaging).\n\n## Creating a project\n\nIf you're seeing this, you've probably already done this step. Congrats!\n\n```bash\n# create a new project in the current directory\nnpx sv create\n\n# create a new project in my-app\nnpx sv create my-app\n```\n\n## Developing\n\nOnce you've created a project and installed dependencies with `npm install` (or `pnpm install` or `yarn`), start a development server:\n\n```bash\nnpm run dev\n\n# or start the server and open the app in a new browser tab\nnpm run dev -- --open\n```\n\nEverything inside `src/lib` is part of your library, everything inside `src/routes` can be used as a showcase or preview app.\n\n## Building\n\nTo build your library:\n\n```bash\nnpm run package\n```\n\nTo create a production version of your showcase app:\n\n```bash\nnpm run build\n```\n\nYou can preview the production build with `npm run preview`.\n\n> To deploy your app, you may need to install an [adapter](https://kit.svelte.dev/docs/adapters) for your target environment.\n\n## Publishing\n\nGo into the `package.json` and give your package the desired name through the `\"name\"` option. Also consider adding a `\"license\"` field and point it to a `LICENSE` file which you can create from a template (one popular option is the [MIT license](https://opensource.org/license/mit/)).\n\nTo publish your library to [npm](https://www.npmjs.com):\n\n```bash\nnpm publish\n```\n"
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
"name": "package.json",
|
|
35
|
+
"include": [
|
|
36
|
+
"typescript"
|
|
37
|
+
],
|
|
38
|
+
"exclude": [],
|
|
39
|
+
"contents": "{\n\t\"scripts\": {\n\t\t\"check\": \"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json\",\n\t\t\"check:watch\": \"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch\"\n\t},\n\t\"devDependencies\": {\n\t\t\"typescript\": \"^5.0.0\",\n\t\t\"svelte-check\": \"^4.0.0\"\n\t}\n}\n"
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
"name": "svelte.config.js",
|
|
43
|
+
"include": [
|
|
44
|
+
"typescript"
|
|
45
|
+
],
|
|
46
|
+
"exclude": [],
|
|
47
|
+
"contents": "import adapter from '@sveltejs/adapter-auto';\nimport { vitePreprocess } from '@sveltejs/vite-plugin-svelte';\n\n/** @type {import('@sveltejs/kit').Config} */\nconst config = {\n\t// Consult https://kit.svelte.dev/docs/integrations#preprocessors\n\t// for more information about preprocessors\n\tpreprocess: vitePreprocess(),\n\n\tkit: {\n\t\t// adapter-auto only supports some environments, see https://kit.svelte.dev/docs/adapter-auto for a list.\n\t\t// If your environment is not supported, or you settled on a specific environment, switch out the adapter.\n\t\t// See https://kit.svelte.dev/docs/adapters for more information about adapters.\n\t\tadapter: adapter()\n\t}\n};\n\nexport default config;\n"
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
"name": "tsconfig.json",
|
|
51
|
+
"include": [
|
|
52
|
+
"typescript"
|
|
53
|
+
],
|
|
54
|
+
"exclude": [],
|
|
55
|
+
"contents": "{\n\t\"extends\": \"./.svelte-kit/tsconfig.json\",\n\t\"compilerOptions\": {\n\t\t\"allowJs\": true,\n\t\t\"checkJs\": true,\n\t\t\"esModuleInterop\": true,\n\t\t\"forceConsistentCasingInFileNames\": true,\n\t\t\"resolveJsonModule\": true,\n\t\t\"skipLibCheck\": true,\n\t\t\"sourceMap\": true,\n\t\t\"strict\": true,\n\t\t\"moduleResolution\": \"bundler\"\n\t}\n\t// Path aliases are handled by https://kit.svelte.dev/docs/configuration#alias\n\t// except $lib which is handled by https://kit.svelte.dev/docs/configuration#files\n\t//\n\t// If you want to overwrite includes/excludes, make sure to copy over the relevant includes/excludes\n\t// from the referenced tsconfig.json - TypeScript does not merge them in\n}\n"
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
"name": "svelte.config.js",
|
|
59
|
+
"include": [],
|
|
60
|
+
"exclude": [
|
|
61
|
+
"typescript"
|
|
62
|
+
],
|
|
63
|
+
"contents": "import adapter from '@sveltejs/adapter-auto';\n\n/** @type {import('@sveltejs/kit').Config} */\nconst config = {\n\tkit: {\n\t\t// adapter-auto only supports some environments, see https://kit.svelte.dev/docs/adapter-auto for a list.\n\t\t// If your environment is not supported, or you settled on a specific environment, switch out the adapter.\n\t\t// See https://kit.svelte.dev/docs/adapters for more information about adapters.\n\t\tadapter: adapter()\n\t}\n};\n\nexport default config;\n"
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
"name": "vite.config.ts",
|
|
67
|
+
"include": [
|
|
68
|
+
"typescript"
|
|
69
|
+
],
|
|
70
|
+
"exclude": [],
|
|
71
|
+
"contents": "import { sveltekit } from '@sveltejs/kit/vite';\nimport { defineConfig } from 'vite';\n\nexport default defineConfig({\n\tplugins: [sveltekit()]\n});\n"
|
|
72
|
+
},
|
|
73
|
+
{
|
|
74
|
+
"name": "vite.config.js",
|
|
75
|
+
"include": [
|
|
76
|
+
"checkjs"
|
|
77
|
+
],
|
|
78
|
+
"exclude": [],
|
|
79
|
+
"contents": "import { sveltekit } from '@sveltejs/kit/vite';\nimport { defineConfig } from 'vite';\n\nexport default defineConfig({\n\tplugins: [sveltekit()]\n});\n"
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
"name": "svelte.config.js",
|
|
83
|
+
"include": [
|
|
84
|
+
"demo",
|
|
85
|
+
"checkjs"
|
|
86
|
+
],
|
|
87
|
+
"exclude": [],
|
|
88
|
+
"contents": "import adapter from '@sveltejs/adapter-auto';\nimport { vitePreprocess } from '@sveltejs/vite-plugin-svelte';\n\n/** @type {import('@sveltejs/kit').Config} */\nconst config = {\n\t// Consult https://kit.svelte.dev/docs/integrations#preprocessors\n\t// for more information about preprocessors\n\tpreprocess: vitePreprocess(),\n\n\tkit: {\n\t\t// adapter-auto only supports some environments, see https://kit.svelte.dev/docs/adapter-auto for a list.\n\t\t// If your environment is not supported, or you settled on a specific environment, switch out the adapter.\n\t\t// See https://kit.svelte.dev/docs/adapters for more information about adapters.\n\t\tadapter: adapter()\n\t}\n};\n\nexport default config;\n"
|
|
89
|
+
},
|
|
90
|
+
{
|
|
91
|
+
"name": "svelte.config.js",
|
|
92
|
+
"include": [
|
|
93
|
+
"demo",
|
|
94
|
+
"typescript"
|
|
95
|
+
],
|
|
96
|
+
"exclude": [],
|
|
97
|
+
"contents": "import adapter from '@sveltejs/adapter-auto';\nimport { vitePreprocess } from '@sveltejs/vite-plugin-svelte';\n\n/** @type {import('@sveltejs/kit').Config} */\nconst config = {\n\t// Consult https://kit.svelte.dev/docs/integrations#preprocessors\n\t// for more information about preprocessors\n\tpreprocess: vitePreprocess(),\n\n\tkit: {\n\t\t// adapter-auto only supports some environments, see https://kit.svelte.dev/docs/adapter-auto for a list.\n\t\t// If your environment is not supported, or you settled on a specific environment, switch out the adapter.\n\t\t// See https://kit.svelte.dev/docs/adapters for more information about adapters.\n\t\tadapter: adapter()\n\t}\n};\n\nexport default config;\n"
|
|
98
|
+
},
|
|
99
|
+
{
|
|
100
|
+
"name": "svelte.config.js",
|
|
101
|
+
"include": [
|
|
102
|
+
"demo"
|
|
103
|
+
],
|
|
104
|
+
"exclude": [
|
|
105
|
+
"typescript"
|
|
106
|
+
],
|
|
107
|
+
"contents": "import adapter from '@sveltejs/adapter-auto';\n\n/** @type {import('@sveltejs/kit').Config} */\nconst config = {\n\tkit: {\n\t\t// adapter-auto only supports some environments, see https://kit.svelte.dev/docs/adapter-auto for a list.\n\t\t// If your environment is not supported, or you settled on a specific environment, switch out the adapter.\n\t\t// See https://kit.svelte.dev/docs/adapters for more information about adapters.\n\t\tadapter: adapter()\n\t}\n};\n\nexport default config;\n"
|
|
108
|
+
},
|
|
109
|
+
{
|
|
110
|
+
"name": "tsconfig.json",
|
|
111
|
+
"include": [
|
|
112
|
+
"skeletonlib",
|
|
113
|
+
"typescript"
|
|
114
|
+
],
|
|
115
|
+
"exclude": [],
|
|
116
|
+
"contents": "{\n\t\"extends\": \"./.svelte-kit/tsconfig.json\",\n\t\"compilerOptions\": {\n\t\t\"allowJs\": true,\n\t\t\"checkJs\": true,\n\t\t\"esModuleInterop\": true,\n\t\t\"forceConsistentCasingInFileNames\": true,\n\t\t\"resolveJsonModule\": true,\n\t\t\"skipLibCheck\": true,\n\t\t\"sourceMap\": true,\n\t\t\"strict\": true,\n\t\t\"module\": \"NodeNext\",\n\t\t\"moduleResolution\": \"NodeNext\"\n\t}\n}\n"
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
"name": "jsconfig.json",
|
|
120
|
+
"include": [
|
|
121
|
+
"skeletonlib"
|
|
122
|
+
],
|
|
123
|
+
"exclude": [
|
|
124
|
+
"typescript"
|
|
125
|
+
],
|
|
126
|
+
"contents": "{\n\t\"extends\": \"./.svelte-kit/tsconfig.json\",\n\t\"compilerOptions\": {\n\t\t\"esModuleInterop\": true,\n\t\t\"forceConsistentCasingInFileNames\": true,\n\t\t\"resolveJsonModule\": true,\n\t\t\"skipLibCheck\": true,\n\t\t\"sourceMap\": true,\n\t\t\"module\": \"NodeNext\",\n\t\t\"moduleResolution\": \"NodeNext\"\n\t}\n}\n"
|
|
127
|
+
},
|
|
128
|
+
{
|
|
129
|
+
"name": "vite.config.js",
|
|
130
|
+
"include": [],
|
|
131
|
+
"exclude": [
|
|
132
|
+
"typescript",
|
|
133
|
+
"checkjs"
|
|
134
|
+
],
|
|
135
|
+
"contents": "import { sveltekit } from '@sveltejs/kit/vite';\nimport { defineConfig } from 'vite';\n\nexport default defineConfig({\n\tplugins: [sveltekit()]\n});\n"
|
|
136
|
+
}
|
|
137
|
+
]
|
|
138
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
engine-strict=true
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
@import '@fontsource/fira-mono';
|
|
2
|
+
|
|
3
|
+
:root {
|
|
4
|
+
--font-body: Arial, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu,
|
|
5
|
+
Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
|
|
6
|
+
--font-mono: 'Fira Mono', monospace;
|
|
7
|
+
--color-bg-0: rgb(202, 216, 228);
|
|
8
|
+
--color-bg-1: hsl(209, 36%, 86%);
|
|
9
|
+
--color-bg-2: hsl(224, 44%, 95%);
|
|
10
|
+
--color-theme-1: #ff3e00;
|
|
11
|
+
--color-theme-2: #4075a6;
|
|
12
|
+
--color-text: rgba(0, 0, 0, 0.7);
|
|
13
|
+
--column-width: 42rem;
|
|
14
|
+
--column-margin-top: 4rem;
|
|
15
|
+
font-family: var(--font-body);
|
|
16
|
+
color: var(--color-text);
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
body {
|
|
20
|
+
min-height: 100vh;
|
|
21
|
+
margin: 0;
|
|
22
|
+
background-attachment: fixed;
|
|
23
|
+
background-color: var(--color-bg-1);
|
|
24
|
+
background-size: 100vw 100vh;
|
|
25
|
+
background-image: radial-gradient(
|
|
26
|
+
50% 50% at 50% 50%,
|
|
27
|
+
rgba(255, 255, 255, 0.75) 0%,
|
|
28
|
+
rgba(255, 255, 255, 0) 100%
|
|
29
|
+
),
|
|
30
|
+
linear-gradient(180deg, var(--color-bg-0) 0%, var(--color-bg-1) 15%, var(--color-bg-2) 50%);
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
h1,
|
|
34
|
+
h2,
|
|
35
|
+
p {
|
|
36
|
+
font-weight: 400;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
p {
|
|
40
|
+
line-height: 1.5;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
a {
|
|
44
|
+
color: var(--color-theme-1);
|
|
45
|
+
text-decoration: none;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
a:hover {
|
|
49
|
+
text-decoration: underline;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
h1 {
|
|
53
|
+
font-size: 2rem;
|
|
54
|
+
text-align: center;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
h2 {
|
|
58
|
+
font-size: 1rem;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
pre {
|
|
62
|
+
font-size: 16px;
|
|
63
|
+
font-family: var(--font-mono);
|
|
64
|
+
background-color: rgba(255, 255, 255, 0.45);
|
|
65
|
+
border-radius: 3px;
|
|
66
|
+
box-shadow: 2px 2px 6px rgb(255 255 255 / 25%);
|
|
67
|
+
padding: 0.5em;
|
|
68
|
+
overflow-x: auto;
|
|
69
|
+
color: var(--color-text);
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
.text-column {
|
|
73
|
+
display: flex;
|
|
74
|
+
max-width: 48rem;
|
|
75
|
+
flex: 0.6;
|
|
76
|
+
flex-direction: column;
|
|
77
|
+
justify-content: center;
|
|
78
|
+
margin: 0 auto;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
input,
|
|
82
|
+
button {
|
|
83
|
+
font-size: inherit;
|
|
84
|
+
font-family: inherit;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
button:focus:not(:focus-visible) {
|
|
88
|
+
outline: none;
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
@media (min-width: 720px) {
|
|
92
|
+
h1 {
|
|
93
|
+
font-size: 2.4rem;
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
.visually-hidden {
|
|
98
|
+
border: 0;
|
|
99
|
+
clip: rect(0 0 0 0);
|
|
100
|
+
height: auto;
|
|
101
|
+
margin: 0;
|
|
102
|
+
overflow: hidden;
|
|
103
|
+
padding: 0;
|
|
104
|
+
position: absolute;
|
|
105
|
+
width: 1px;
|
|
106
|
+
white-space: nowrap;
|
|
107
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="utf-8" />
|
|
5
|
+
<link rel="icon" href="%sveltekit.assets%/favicon.png" />
|
|
6
|
+
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
7
|
+
%sveltekit.head%
|
|
8
|
+
</head>
|
|
9
|
+
<body data-sveltekit-preload-data="hover">
|
|
10
|
+
<div style="display: contents">%sveltekit.body%</div>
|
|
11
|
+
</body>
|
|
12
|
+
</html>
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="-3 -3 30 30">
|
|
2
|
+
<path
|
|
3
|
+
fill-rule="evenodd"
|
|
4
|
+
clip-rule="evenodd"
|
|
5
|
+
d="M12 2C6.47715 2 2 6.47715 2 12C2 17.5229 6.47715 22 12 22C17.5229 22 22 17.5229 22 12C22 6.47715 17.5229 2 12 2ZM0 12C0 5.3726 5.3726 0 12 0C18.6274 0 24 5.3726 24 12C24 18.6274 18.6274 24 12 24C5.3726 24 0 18.6274 0 12Z"
|
|
6
|
+
fill="rgba(0,0,0,0.7)"
|
|
7
|
+
stroke="none"
|
|
8
|
+
/>
|
|
9
|
+
<path
|
|
10
|
+
fill-rule="evenodd"
|
|
11
|
+
clip-rule="evenodd"
|
|
12
|
+
d="M9.59162 22.7357C9.49492 22.6109 9.49492 21.4986 9.59162 19.399C8.55572 19.4347 7.90122 19.3628 7.62812 19.1833C7.21852 18.9139 6.80842 18.0833 6.44457 17.4979C6.08072 16.9125 5.27312 16.8199 4.94702 16.6891C4.62091 16.5582 4.53905 16.0247 5.84562 16.4282C7.15222 16.8316 7.21592 17.9303 7.62812 18.1872C8.04032 18.4441 9.02572 18.3317 9.47242 18.1259C9.91907 17.9201 9.88622 17.1538 9.96587 16.8503C10.0666 16.5669 9.71162 16.5041 9.70382 16.5018C9.26777 16.5018 6.97697 16.0036 6.34772 13.7852C5.71852 11.5669 6.52907 10.117 6.96147 9.49369C7.24972 9.07814 7.22422 8.19254 6.88497 6.83679C8.11677 6.67939 9.06732 7.06709 9.73672 7.99999C9.73737 8.00534 10.6143 7.47854 12.0001 7.47854C13.386 7.47854 13.8777 7.90764 14.2571 7.99999C14.6365 8.09234 14.94 6.36699 17.2834 6.83679C16.7942 7.79839 16.3844 8.99999 16.6972 9.49369C17.0099 9.98739 18.2372 11.5573 17.4833 13.7852C16.9807 15.2706 15.9927 16.1761 14.5192 16.5018C14.3502 16.5557 14.2658 16.6427 14.2658 16.7627C14.2658 16.9427 14.4942 16.9624 14.8233 17.8058C15.0426 18.368 15.0585 19.9739 14.8708 22.6234C14.3953 22.7445 14.0254 22.8257 13.7611 22.8673C13.2924 22.9409 12.7835 22.9822 12.2834 22.9982C11.7834 23.0141 11.6098 23.0123 10.9185 22.948C10.4577 22.9051 10.0154 22.8343 9.59162 22.7357Z"
|
|
13
|
+
fill="rgba(0,0,0,0.7)"
|
|
14
|
+
stroke="none"
|
|
15
|
+
/>
|
|
16
|
+
</svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="107" height="128" viewBox="0 0 107 128"><title>svelte-logo</title><path d="M94.1566,22.8189c-10.4-14.8851-30.94-19.2971-45.7914-9.8348L22.2825,29.6078A29.9234,29.9234,0,0,0,8.7639,49.6506a31.5136,31.5136,0,0,0,3.1076,20.2318A30.0061,30.0061,0,0,0,7.3953,81.0653a31.8886,31.8886,0,0,0,5.4473,24.1157c10.4022,14.8865,30.9423,19.2966,45.7914,9.8348L84.7167,98.3921A29.9177,29.9177,0,0,0,98.2353,78.3493,31.5263,31.5263,0,0,0,95.13,58.117a30,30,0,0,0,4.4743-11.1824,31.88,31.88,0,0,0-5.4473-24.1157" style="fill:#ff3e00"/><path d="M45.8171,106.5815A20.7182,20.7182,0,0,1,23.58,98.3389a19.1739,19.1739,0,0,1-3.2766-14.5025,18.1886,18.1886,0,0,1,.6233-2.4357l.4912-1.4978,1.3363.9815a33.6443,33.6443,0,0,0,10.203,5.0978l.9694.2941-.0893.9675a5.8474,5.8474,0,0,0,1.052,3.8781,6.2389,6.2389,0,0,0,6.6952,2.485,5.7449,5.7449,0,0,0,1.6021-.7041L69.27,76.281a5.4306,5.4306,0,0,0,2.4506-3.631,5.7948,5.7948,0,0,0-.9875-4.3712,6.2436,6.2436,0,0,0-6.6978-2.4864,5.7427,5.7427,0,0,0-1.6.7036l-9.9532,6.3449a19.0329,19.0329,0,0,1-5.2965,2.3259,20.7181,20.7181,0,0,1-22.2368-8.2427,19.1725,19.1725,0,0,1-3.2766-14.5024,17.9885,17.9885,0,0,1,8.13-12.0513L55.8833,23.7472a19.0038,19.0038,0,0,1,5.3-2.3287A20.7182,20.7182,0,0,1,83.42,29.6611a19.1739,19.1739,0,0,1,3.2766,14.5025,18.4,18.4,0,0,1-.6233,2.4357l-.4912,1.4978-1.3356-.98a33.6175,33.6175,0,0,0-10.2037-5.1l-.9694-.2942.0893-.9675a5.8588,5.8588,0,0,0-1.052-3.878,6.2389,6.2389,0,0,0-6.6952-2.485,5.7449,5.7449,0,0,0-1.6021.7041L37.73,51.719a5.4218,5.4218,0,0,0-2.4487,3.63,5.7862,5.7862,0,0,0,.9856,4.3717,6.2437,6.2437,0,0,0,6.6978,2.4864,5.7652,5.7652,0,0,0,1.602-.7041l9.9519-6.3425a18.978,18.978,0,0,1,5.2959-2.3278,20.7181,20.7181,0,0,1,22.2368,8.2427,19.1725,19.1725,0,0,1,3.2766,14.5024,17.9977,17.9977,0,0,1-8.13,12.0532L51.1167,104.2528a19.0038,19.0038,0,0,1-5.3,2.3287" style="fill:#fff"/></svg>
|
|
Binary file
|
|
Binary file
|
|
Binary file
|