@sveltejs/kit 1.0.0-next.21 → 1.0.0-next.210

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.
Files changed (81) hide show
  1. package/README.md +12 -9
  2. package/assets/components/error.svelte +19 -3
  3. package/assets/kit.js +1912 -0
  4. package/assets/runtime/app/env.js +20 -0
  5. package/assets/runtime/app/navigation.js +45 -13
  6. package/assets/runtime/app/paths.js +1 -2
  7. package/assets/runtime/app/stores.js +15 -9
  8. package/assets/runtime/chunks/utils.js +13 -0
  9. package/assets/runtime/env.js +8 -0
  10. package/assets/runtime/internal/singletons.js +5 -11
  11. package/assets/runtime/internal/start.js +979 -355
  12. package/assets/runtime/paths.js +13 -0
  13. package/dist/chunks/cert.js +29255 -0
  14. package/dist/chunks/constants.js +8 -0
  15. package/dist/chunks/error.js +21 -0
  16. package/dist/chunks/index.js +4732 -0
  17. package/dist/chunks/index2.js +812 -0
  18. package/dist/chunks/index3.js +624 -0
  19. package/dist/chunks/index4.js +109 -0
  20. package/dist/chunks/index5.js +628 -0
  21. package/dist/chunks/index6.js +827 -0
  22. package/dist/chunks/index7.js +15575 -0
  23. package/dist/chunks/misc.js +3 -0
  24. package/dist/chunks/multipart-parser.js +449 -0
  25. package/dist/chunks/url.js +62 -0
  26. package/dist/cli.js +1012 -67
  27. package/dist/hooks.js +28 -0
  28. package/dist/install-fetch.js +6514 -0
  29. package/dist/node.js +51 -0
  30. package/dist/ssr.js +1842 -0
  31. package/package.json +90 -54
  32. package/svelte-kit.js +2 -0
  33. package/types/ambient-modules.d.ts +181 -0
  34. package/types/app.d.ts +45 -0
  35. package/types/config.d.ts +163 -0
  36. package/types/endpoint.d.ts +18 -0
  37. package/types/helper.d.ts +41 -0
  38. package/types/hooks.d.ts +48 -0
  39. package/types/index.d.ts +17 -0
  40. package/types/internal.d.ts +231 -0
  41. package/types/page.d.ts +71 -0
  42. package/CHANGELOG.md +0 -282
  43. package/assets/runtime/app/navigation.js.map +0 -1
  44. package/assets/runtime/app/paths.js.map +0 -1
  45. package/assets/runtime/app/stores.js.map +0 -1
  46. package/assets/runtime/internal/singletons.js.map +0 -1
  47. package/assets/runtime/internal/start.js.map +0 -1
  48. package/assets/runtime/utils-85ebcc60.js +0 -18
  49. package/assets/runtime/utils-85ebcc60.js.map +0 -1
  50. package/dist/api.js +0 -44
  51. package/dist/api.js.map +0 -1
  52. package/dist/build.js +0 -246
  53. package/dist/build.js.map +0 -1
  54. package/dist/cli.js.map +0 -1
  55. package/dist/colors.js +0 -37
  56. package/dist/colors.js.map +0 -1
  57. package/dist/create_app.js +0 -578
  58. package/dist/create_app.js.map +0 -1
  59. package/dist/index.js +0 -12042
  60. package/dist/index.js.map +0 -1
  61. package/dist/index2.js +0 -544
  62. package/dist/index2.js.map +0 -1
  63. package/dist/index3.js +0 -71
  64. package/dist/index3.js.map +0 -1
  65. package/dist/index4.js +0 -466
  66. package/dist/index4.js.map +0 -1
  67. package/dist/index5.js +0 -729
  68. package/dist/index5.js.map +0 -1
  69. package/dist/index6.js +0 -713
  70. package/dist/index6.js.map +0 -1
  71. package/dist/logging.js +0 -43
  72. package/dist/logging.js.map +0 -1
  73. package/dist/package.js +0 -432
  74. package/dist/package.js.map +0 -1
  75. package/dist/renderer.js +0 -2391
  76. package/dist/renderer.js.map +0 -1
  77. package/dist/standard.js +0 -101
  78. package/dist/standard.js.map +0 -1
  79. package/dist/utils.js +0 -54
  80. package/dist/utils.js.map +0 -1
  81. package/svelte-kit +0 -3
@@ -1,18 +0,0 @@
1
- function find_anchor(node) {
2
- while (node && node.nodeName.toUpperCase() !== 'A') node = node.parentNode; // SVG <a> elements have a lowercase name
3
- return node;
4
- }
5
-
6
- function get_base_uri(window_document) {
7
- let baseURI = window_document.baseURI;
8
-
9
- if (!baseURI) {
10
- const baseTags = window_document.getElementsByTagName('base');
11
- baseURI = baseTags.length ? baseTags[0].href : window_document.URL;
12
- }
13
-
14
- return baseURI;
15
- }
16
-
17
- export { find_anchor as f, get_base_uri as g };
18
- //# sourceMappingURL=utils-85ebcc60.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils-85ebcc60.js","sources":["../../src/runtime/internal/utils.js"],"sourcesContent":["export function find_anchor(node) {\n\twhile (node && node.nodeName.toUpperCase() !== 'A') node = node.parentNode; // SVG <a> elements have a lowercase name\n\treturn node;\n}\n\nexport function get_base_uri(window_document) {\n\tlet baseURI = window_document.baseURI;\n\n\tif (!baseURI) {\n\t\tconst baseTags = window_document.getElementsByTagName('base');\n\t\tbaseURI = baseTags.length ? baseTags[0].href : window_document.URL;\n\t}\n\n\treturn baseURI;\n}\n"],"names":[],"mappings":"AAAO,SAAS,WAAW,CAAC,IAAI,EAAE;AAClC,CAAC,OAAO,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAK,GAAG,EAAE,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC;AAC5E,CAAC,OAAO,IAAI,CAAC;AACb,CAAC;AACD;AACO,SAAS,YAAY,CAAC,eAAe,EAAE;AAC9C,CAAC,IAAI,OAAO,GAAG,eAAe,CAAC,OAAO,CAAC;AACvC;AACA,CAAC,IAAI,CAAC,OAAO,EAAE;AACf,EAAE,MAAM,QAAQ,GAAG,eAAe,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;AAChE,EAAE,OAAO,GAAG,QAAQ,CAAC,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,eAAe,CAAC,GAAG,CAAC;AACrE,EAAE;AACF;AACA,CAAC,OAAO,OAAO,CAAC;AAChB;;;;"}
package/dist/api.js DELETED
@@ -1,44 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var _package = require('./package.js');
6
- require('path');
7
- require('module');
8
- require('url');
9
- require('fs');
10
- require('events');
11
- require('cheap-watch');
12
- var index = require('./index.js');
13
- require('os');
14
- require('child_process');
15
- require('net');
16
- require('./index4.js');
17
- require('./standard.js');
18
- require('util');
19
- require('http');
20
- require('https');
21
- require('domain');
22
- require('querystring');
23
- require('vm');
24
- require('snowpack');
25
- require('./create_app.js');
26
- require('./utils.js');
27
- require('source-map');
28
- require('crypto');
29
- require('./renderer.js');
30
- require('stream');
31
- require('zlib');
32
- require('rollup');
33
- require('rollup-plugin-terser');
34
- require('rollup-plugin-css-chunks');
35
- var index$1 = require('./index2.js');
36
- var index$2 = require('./index3.js');
37
-
38
-
39
-
40
- exports.load_config = _package.load_config;
41
- exports.dev = index.dev;
42
- exports.build = index$1.build;
43
- exports.start = index$2.start;
44
- //# sourceMappingURL=api.js.map
package/dist/api.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"api.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
package/dist/build.js DELETED
@@ -1,246 +0,0 @@
1
- 'use strict';
2
-
3
- var path = require('path');
4
- var fs = require('fs');
5
- var standard = require('./standard.js');
6
-
7
- function list(dir, callback, pre='') {
8
- dir = path.resolve('.', dir);
9
- let arr = fs.readdirSync(dir);
10
- let i=0, abs, stats;
11
- for (; i < arr.length; i++) {
12
- abs = path.join(dir, arr[i]);
13
- stats = fs.statSync(abs);
14
- stats.isDirectory()
15
- ? list(abs, callback, path.join(pre, arr[i]))
16
- : callback(path.join(pre, arr[i]), abs, stats);
17
- }
18
- }
19
-
20
- function parse(str) {
21
- let i=0, j=0, k, v;
22
- let out={}, arr=str.split('&');
23
- for (; i < arr.length; i++) {
24
- j = arr[i].indexOf('=');
25
- v = !!~j && arr[i].substring(j+1) || '';
26
- k = !!~j ? arr[i].substring(0, j) : arr[i];
27
- out[k] = out[k] !== void 0 ? [].concat(out[k], v) : v;
28
- }
29
- return out;
30
- }
31
-
32
- function parser (req, toDecode) {
33
- let url = req.url;
34
- if (url == null) return;
35
-
36
- let obj = req._parsedUrl;
37
- if (obj && obj._raw === url) return obj;
38
-
39
- obj = {
40
- path: url,
41
- pathname: url,
42
- search: null,
43
- query: null,
44
- href: url,
45
- _raw: url
46
- };
47
-
48
- if (url.length > 1) {
49
- if (toDecode && !req._decoded && !!~url.indexOf('%', 1)) {
50
- let nxt = url;
51
- try { nxt = decodeURIComponent(url); } catch (e) {/* bad */}
52
- url = req.url = obj.href = obj.path = obj.pathname = obj._raw = nxt;
53
- req._decoded = true;
54
- }
55
-
56
- let idx = url.indexOf('?', 1);
57
-
58
- if (idx !== -1) {
59
- obj.search = url.substring(idx);
60
- obj.query = obj.search.substring(1);
61
- obj.pathname = url.substring(0, idx);
62
- if (toDecode && obj.query.length > 0) {
63
- obj.query = parse(obj.query);
64
- }
65
- }
66
- }
67
-
68
- return (req._parsedUrl = obj);
69
- }
70
-
71
- var lite = new standard.Mime_1(standard.standard);
72
-
73
- const noop = () => {};
74
-
75
- function isMatch(uri, arr) {
76
- for (let i=0; i < arr.length; i++) {
77
- if (arr[i].test(uri)) return true;
78
- }
79
- }
80
-
81
- function toAssume(uri, extns) {
82
- let i=0, x, len=uri.length - 1;
83
- if (uri.charCodeAt(len) === 47) {
84
- uri = uri.substring(0, len);
85
- }
86
-
87
- let arr=[], tmp=`${uri}/index`;
88
- for (; i < extns.length; i++) {
89
- x = extns[i] ? `.${extns[i]}` : '';
90
- if (uri) arr.push(uri + x);
91
- arr.push(tmp + x);
92
- }
93
-
94
- return arr;
95
- }
96
-
97
- function viaCache(cache, uri, extns) {
98
- let i=0, data, arr=toAssume(uri, extns);
99
- for (; i < arr.length; i++) {
100
- if (data = cache[arr[i]]) return data;
101
- }
102
- }
103
-
104
- function viaLocal(dir, isEtag, uri, extns) {
105
- let i=0, arr=toAssume(uri, extns);
106
- let abs, stats, name, headers;
107
- for (; i < arr.length; i++) {
108
- abs = path.normalize(path.join(dir, name=arr[i]));
109
- if (abs.startsWith(dir) && fs.existsSync(abs)) {
110
- stats = fs.statSync(abs);
111
- if (stats.isDirectory()) continue;
112
- headers = toHeaders(name, stats, isEtag);
113
- headers['Cache-Control'] = 'no-store';
114
- return { abs, stats, headers };
115
- }
116
- }
117
- }
118
-
119
- function is404(req, res) {
120
- return (res.statusCode=404,res.end());
121
- }
122
-
123
- function send(req, res, file, stats, headers) {
124
- let code=200, tmp, opts={};
125
- headers = { ...headers };
126
-
127
- for (let key in headers) {
128
- tmp = res.getHeader(key);
129
- if (tmp) headers[key] = tmp;
130
- }
131
-
132
- if (tmp = res.getHeader('content-type')) {
133
- headers['Content-Type'] = tmp;
134
- }
135
-
136
- if (req.headers.range) {
137
- code = 206;
138
- let [x, y] = req.headers.range.replace('bytes=', '').split('-');
139
- let end = opts.end = parseInt(y, 10) || stats.size - 1;
140
- let start = opts.start = parseInt(x, 10) || 0;
141
-
142
- if (start >= stats.size || end >= stats.size) {
143
- res.setHeader('Content-Range', `bytes */${stats.size}`);
144
- res.statusCode = 416;
145
- return res.end();
146
- }
147
-
148
- headers['Content-Range'] = `bytes ${start}-${end}/${stats.size}`;
149
- headers['Content-Length'] = (end - start + 1);
150
- headers['Accept-Ranges'] = 'bytes';
151
- }
152
-
153
- res.writeHead(code, headers);
154
- fs.createReadStream(file, opts).pipe(res);
155
- }
156
-
157
- function isEncoding(name, type, headers) {
158
- headers['Content-Encoding'] = type;
159
- headers['Content-Type'] = lite.getType(name.replace(/\.([^.]*)$/, '')) || '';
160
- }
161
-
162
- function toHeaders(name, stats, isEtag) {
163
- let headers = {
164
- 'Content-Length': stats.size,
165
- 'Content-Type': lite.getType(name) || '',
166
- 'Last-Modified': stats.mtime.toUTCString(),
167
- };
168
- if (isEtag) headers['ETag'] = `W/"${stats.size}-${stats.mtime.getTime()}"`;
169
- if (/\.br$/.test(name)) isEncoding(name, 'br', headers);
170
- if (/\.gz$/.test(name)) isEncoding(name, 'gzip', headers);
171
- return headers;
172
- }
173
-
174
- function sirv (dir, opts={}) {
175
- dir = path.resolve(dir || '.');
176
-
177
- let isNotFound = opts.onNoMatch || is404;
178
- let setHeaders = opts.setHeaders || noop;
179
-
180
- let extensions = opts.extensions || ['html', 'htm'];
181
- let gzips = opts.gzip && extensions.map(x => `${x}.gz`).concat('gz');
182
- let brots = opts.brotli && extensions.map(x => `${x}.br`).concat('br');
183
-
184
- const FILES = {};
185
-
186
- let fallback = '/';
187
- let isEtag = !!opts.etag;
188
- let isSPA = !!opts.single;
189
- if (typeof opts.single === 'string') {
190
- let idx = opts.single.lastIndexOf('.');
191
- fallback += !!~idx ? opts.single.substring(0, idx) : opts.single;
192
- }
193
-
194
- let ignores = [];
195
- if (opts.ignores !== false) {
196
- ignores.push(/\w\.\w+$/); // any extn
197
- if (opts.dotfiles) ignores.push(/\/\.\w/);
198
- else ignores.push(/\/\.well-known/);
199
- [].concat(opts.ignores || []).forEach(x => {
200
- ignores.push(new RegExp(x, 'i'));
201
- });
202
- }
203
-
204
- let cc = opts.maxAge != null && `public,max-age=${opts.maxAge}`;
205
- if (cc && opts.immutable) cc += ',immutable';
206
- else if (cc && opts.maxAge === 0) cc += ',must-revalidate';
207
-
208
- if (!opts.dev) {
209
- list(dir, (name, abs, stats) => {
210
- if (/\.well-known[\\+\/]/.test(name)) ; // keep
211
- else if (!opts.dotfiles && /(^\.|[\\+|\/+]\.)/.test(name)) return;
212
-
213
- let headers = toHeaders(name, stats, isEtag);
214
- if (cc) headers['Cache-Control'] = cc;
215
-
216
- FILES['/' + name.normalize().replace(/\\+/g, '/')] = { abs, stats, headers };
217
- });
218
- }
219
-
220
- let lookup = opts.dev ? viaLocal.bind(0, dir, isEtag) : viaCache.bind(0, FILES);
221
-
222
- return function (req, res, next) {
223
- let extns = [''];
224
- let val = req.headers['accept-encoding'] || '';
225
- if (gzips && val.includes('gzip')) extns.unshift(...gzips);
226
- if (brots && /(br|brotli)/i.test(val)) extns.unshift(...brots);
227
- extns.push(...extensions); // [...br, ...gz, orig, ...exts]
228
-
229
- let pathname = req.path || parser(req, true).pathname;
230
- let data = lookup(pathname, extns) || isSPA && !isMatch(pathname, ignores) && lookup(fallback, extns);
231
- if (!data) {
232
- return next ? next() : isNotFound(req, res);
233
- }
234
-
235
- if (isEtag && req.headers['if-none-match'] === data.headers['ETag']) {
236
- res.writeHead(304);
237
- return res.end();
238
- }
239
-
240
- setHeaders(res, pathname, data.stats);
241
- send(req, res, data.abs, data.stats, data.headers);
242
- };
243
- }
244
-
245
- exports.sirv = sirv;
246
- //# sourceMappingURL=build.js.map
package/dist/build.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"build.js","sources":["../../../node_modules/.pnpm/totalist@1.1.0/node_modules/totalist/sync/index.mjs","../../../node_modules/.pnpm/@polka/url@1.0.0-next.11/node_modules/@polka/url/build.mjs","../../../node_modules/.pnpm/mime@2.4.6/node_modules/mime/lite.js","../../../node_modules/.pnpm/sirv@1.0.7/node_modules/sirv/build.mjs"],"sourcesContent":["import { join, resolve } from 'path';\nimport { readdirSync, statSync } from 'fs';\n\nexport default function list(dir, callback, pre='') {\n\tdir = resolve('.', dir);\n\tlet arr = readdirSync(dir);\n\tlet i=0, abs, stats;\n\tfor (; i < arr.length; i++) {\n\t\tabs = join(dir, arr[i]);\n\t\tstats = statSync(abs);\n\t\tstats.isDirectory()\n\t\t\t? list(abs, callback, join(pre, arr[i]))\n\t\t\t: callback(join(pre, arr[i]), abs, stats);\n\t}\n}\n","function parse(str) {\n\tlet i=0, j=0, k, v;\n\tlet out={}, arr=str.split('&');\n\tfor (; i < arr.length; i++) {\n\t\tj = arr[i].indexOf('=');\n\t\tv = !!~j && arr[i].substring(j+1) || '';\n\t\tk = !!~j ? arr[i].substring(0, j) : arr[i];\n\t\tout[k] = out[k] !== void 0 ? [].concat(out[k], v) : v;\n\t}\n\treturn out;\n}\n\nexport default function (req, toDecode) {\n\tlet url = req.url;\n\tif (url == null) return;\n\n\tlet obj = req._parsedUrl;\n\tif (obj && obj._raw === url) return obj;\n\n\tobj = {\n\t\tpath: url,\n\t\tpathname: url,\n\t\tsearch: null,\n\t\tquery: null,\n\t\thref: url,\n\t\t_raw: url\n\t};\n\n\tif (url.length > 1) {\n\t\tif (toDecode && !req._decoded && !!~url.indexOf('%', 1)) {\n\t\t\tlet nxt = url;\n\t\t\ttry { nxt = decodeURIComponent(url) } catch (e) {/* bad */}\n\t\t\turl = req.url = obj.href = obj.path = obj.pathname = obj._raw = nxt;\n\t\t\treq._decoded = true;\n\t\t}\n\n\t\tlet idx = url.indexOf('?', 1);\n\n\t\tif (idx !== -1) {\n\t\t\tobj.search = url.substring(idx);\n\t\t\tobj.query = obj.search.substring(1);\n\t\t\tobj.pathname = url.substring(0, idx);\n\t\t\tif (toDecode && obj.query.length > 0) {\n\t\t\t\tobj.query = parse(obj.query);\n\t\t\t}\n\t\t}\n\t}\n\n\treturn (req._parsedUrl = obj);\n}\n","'use strict';\n\nvar Mime = require('./Mime');\nmodule.exports = new Mime(require('./types/standard'));\n","import * as fs from 'fs';\nimport { join, normalize, resolve } from 'path';\nimport list from 'totalist/sync';\nimport parser from '@polka/url';\nimport mime from 'mime/lite';\n\nconst noop = () => {};\n\nfunction isMatch(uri, arr) {\n\tfor (let i=0; i < arr.length; i++) {\n\t\tif (arr[i].test(uri)) return true;\n\t}\n}\n\nfunction toAssume(uri, extns) {\n\tlet i=0, x, len=uri.length - 1;\n\tif (uri.charCodeAt(len) === 47) {\n\t\turi = uri.substring(0, len);\n\t}\n\n\tlet arr=[], tmp=`${uri}/index`;\n\tfor (; i < extns.length; i++) {\n\t\tx = extns[i] ? `.${extns[i]}` : '';\n\t\tif (uri) arr.push(uri + x);\n\t\tarr.push(tmp + x);\n\t}\n\n\treturn arr;\n}\n\nfunction viaCache(cache, uri, extns) {\n\tlet i=0, data, arr=toAssume(uri, extns);\n\tfor (; i < arr.length; i++) {\n\t\tif (data = cache[arr[i]]) return data;\n\t}\n}\n\nfunction viaLocal(dir, isEtag, uri, extns) {\n\tlet i=0, arr=toAssume(uri, extns);\n\tlet abs, stats, name, headers;\n\tfor (; i < arr.length; i++) {\n\t\tabs = normalize(join(dir, name=arr[i]));\n\t\tif (abs.startsWith(dir) && fs.existsSync(abs)) {\n\t\t\tstats = fs.statSync(abs);\n\t\t\tif (stats.isDirectory()) continue;\n\t\t\theaders = toHeaders(name, stats, isEtag);\n\t\t\theaders['Cache-Control'] = 'no-store';\n\t\t\treturn { abs, stats, headers };\n\t\t}\n\t}\n}\n\nfunction is404(req, res) {\n\treturn (res.statusCode=404,res.end());\n}\n\nfunction send(req, res, file, stats, headers) {\n\tlet code=200, tmp, opts={};\n\theaders = { ...headers };\n\n\tfor (let key in headers) {\n\t\ttmp = res.getHeader(key);\n\t\tif (tmp) headers[key] = tmp;\n\t}\n\n\tif (tmp = res.getHeader('content-type')) {\n\t\theaders['Content-Type'] = tmp;\n\t}\n\n\tif (req.headers.range) {\n\t\tcode = 206;\n\t\tlet [x, y] = req.headers.range.replace('bytes=', '').split('-');\n\t\tlet end = opts.end = parseInt(y, 10) || stats.size - 1;\n\t\tlet start = opts.start = parseInt(x, 10) || 0;\n\n\t\tif (start >= stats.size || end >= stats.size) {\n\t\t\tres.setHeader('Content-Range', `bytes */${stats.size}`);\n\t\t\tres.statusCode = 416;\n\t\t\treturn res.end();\n\t\t}\n\n\t\theaders['Content-Range'] = `bytes ${start}-${end}/${stats.size}`;\n\t\theaders['Content-Length'] = (end - start + 1);\n\t\theaders['Accept-Ranges'] = 'bytes';\n\t}\n\n\tres.writeHead(code, headers);\n\tfs.createReadStream(file, opts).pipe(res);\n}\n\nfunction isEncoding(name, type, headers) {\n\theaders['Content-Encoding'] = type;\n\theaders['Content-Type'] = mime.getType(name.replace(/\\.([^.]*)$/, '')) || '';\n}\n\nfunction toHeaders(name, stats, isEtag) {\n\tlet headers = {\n\t\t'Content-Length': stats.size,\n\t\t'Content-Type': mime.getType(name) || '',\n\t\t'Last-Modified': stats.mtime.toUTCString(),\n\t};\n\tif (isEtag) headers['ETag'] = `W/\"${stats.size}-${stats.mtime.getTime()}\"`;\n\tif (/\\.br$/.test(name)) isEncoding(name, 'br', headers);\n\tif (/\\.gz$/.test(name)) isEncoding(name, 'gzip', headers);\n\treturn headers;\n}\n\nexport default function (dir, opts={}) {\n\tdir = resolve(dir || '.');\n\n\tlet isNotFound = opts.onNoMatch || is404;\n\tlet setHeaders = opts.setHeaders || noop;\n\n\tlet extensions = opts.extensions || ['html', 'htm'];\n\tlet gzips = opts.gzip && extensions.map(x => `${x}.gz`).concat('gz');\n\tlet brots = opts.brotli && extensions.map(x => `${x}.br`).concat('br');\n\n\tconst FILES = {};\n\n\tlet fallback = '/';\n\tlet isEtag = !!opts.etag;\n\tlet isSPA = !!opts.single;\n\tif (typeof opts.single === 'string') {\n\t\tlet idx = opts.single.lastIndexOf('.');\n\t\tfallback += !!~idx ? opts.single.substring(0, idx) : opts.single;\n\t}\n\n\tlet ignores = [];\n\tif (opts.ignores !== false) {\n\t\tignores.push(/\\w\\.\\w+$/); // any extn\n\t\tif (opts.dotfiles) ignores.push(/\\/\\.\\w/);\n\t\telse ignores.push(/\\/\\.well-known/);\n\t\t[].concat(opts.ignores || []).forEach(x => {\n\t\t\tignores.push(new RegExp(x, 'i'));\n\t\t});\n\t}\n\n\tlet cc = opts.maxAge != null && `public,max-age=${opts.maxAge}`;\n\tif (cc && opts.immutable) cc += ',immutable';\n\telse if (cc && opts.maxAge === 0) cc += ',must-revalidate';\n\n\tif (!opts.dev) {\n\t\tlist(dir, (name, abs, stats) => {\n\t\t\tif (/\\.well-known[\\\\+\\/]/.test(name)) {} // keep\n\t\t\telse if (!opts.dotfiles && /(^\\.|[\\\\+|\\/+]\\.)/.test(name)) return;\n\n\t\t\tlet headers = toHeaders(name, stats, isEtag);\n\t\t\tif (cc) headers['Cache-Control'] = cc;\n\n\t\t\tFILES['/' + name.normalize().replace(/\\\\+/g, '/')] = { abs, stats, headers };\n\t\t});\n\t}\n\n\tlet lookup = opts.dev ? viaLocal.bind(0, dir, isEtag) : viaCache.bind(0, FILES);\n\n\treturn function (req, res, next) {\n\t\tlet extns = [''];\n\t\tlet val = req.headers['accept-encoding'] || '';\n\t\tif (gzips && val.includes('gzip')) extns.unshift(...gzips);\n\t\tif (brots && /(br|brotli)/i.test(val)) extns.unshift(...brots);\n\t\textns.push(...extensions); // [...br, ...gz, orig, ...exts]\n\n\t\tlet pathname = req.path || parser(req, true).pathname;\n\t\tlet data = lookup(pathname, extns) || isSPA && !isMatch(pathname, ignores) && lookup(fallback, extns);\n\t\tif (!data) {\n\t\t\treturn next ? next() : isNotFound(req, res);\n\t\t}\n\n\t\tif (isEtag && req.headers['if-none-match'] === data.headers['ETag']) {\n\t\t\tres.writeHead(304);\n\t\t\treturn res.end();\n\t\t}\n\n\t\tsetHeaders(res, pathname, data.stats);\n\t\tsend(req, res, data.abs, data.stats, data.headers);\n\t};\n}\n"],"names":["resolve","readdirSync","join","statSync","Mime","require$$0","normalize","fs.existsSync","fs.statSync","fs.createReadStream","mime"],"mappings":"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"}
package/dist/cli.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"cli.js","sources":["../src/cli.js"],"sourcesContent":["import sade from 'sade';\nimport colors from 'kleur';\nimport { load_config } from './api/load_config';\nimport * as pkg from '../package.json';\n\nfunction get_config() {\n\ttry {\n\t\treturn load_config();\n\t} catch (error) {\n\t\tlet message = error.message;\n\n\t\tif (error.code === 'ENOENT') {\n\t\t\tmessage = 'Missing svelte.config.js';\n\t\t} else if (error.name === 'SyntaxError') {\n\t\t\tmessage = 'Malformed svelte.config.js';\n\t\t}\n\n\t\tconsole.error(colors.bold().red(message));\n\t\tconsole.error(colors.grey(error.stack));\n\t\tprocess.exit(1);\n\t}\n}\n\nfunction handle_error(error) {\n\tconsole.log(colors.bold().red(`> ${error.message}`));\n\tconsole.log(colors.gray(error.stack));\n\tprocess.exit(1);\n}\n\nasync function launch(port) {\n\tconst { exec } = await import('child_process');\n\texec(`${process.platform == 'win32' ? 'start' : 'open'} http://localhost:${port}`);\n}\n\nconst prog = sade('svelte').version(pkg.version);\n\nprog\n\t.command('dev')\n\t.describe('Start a development server')\n\t.option('-p, --port', 'Port', 3000)\n\t.option('-o, --open', 'Open a browser tab', false)\n\t.action(async ({ port, open }) => {\n\t\tprocess.env.NODE_ENV = 'development';\n\t\tconst config = get_config();\n\n\t\tconst { dev } = await import('./api/dev');\n\n\t\ttry {\n\t\t\tconst watcher = await dev({ port, config });\n\n\t\t\twatcher.on('stdout', (data) => {\n\t\t\t\tprocess.stdout.write(data);\n\t\t\t});\n\n\t\t\twatcher.on('stderr', (data) => {\n\t\t\t\tprocess.stderr.write(data);\n\t\t\t});\n\n\t\t\tconsole.log(colors.bold().cyan(`> Listening on http://localhost:${watcher.port}`));\n\t\t\tif (open) launch(watcher.port);\n\t\t} catch (error) {\n\t\t\thandle_error(error);\n\t\t}\n\t});\n\nprog\n\t.command('build')\n\t.describe('Create a production build of your app')\n\t.action(async () => {\n\t\tprocess.env.NODE_ENV = 'production';\n\t\tconst config = get_config();\n\n\t\tconst { build } = await import('./api/build');\n\n\t\ttry {\n\t\t\tawait build(config);\n\t\t} catch (error) {\n\t\t\thandle_error(error);\n\t\t}\n\t});\n\nprog\n\t.command('start')\n\t.describe('Serve an already-built app')\n\t.option('-p, --port', 'Port', 3000)\n\t.option('-o, --open', 'Open a browser tab', false)\n\t.action(async ({ port, open }) => {\n\t\tprocess.env.NODE_ENV = 'production';\n\t\tconst config = get_config();\n\n\t\tconst { start } = await import('./api/start');\n\n\t\ttry {\n\t\t\tawait start({ port, config });\n\n\t\t\tconsole.log(colors.bold().cyan(`> Listening on http://localhost:${port}`));\n\t\t\tif (open) if (open) launch(port);\n\t\t} catch (error) {\n\t\t\thandle_error(error);\n\t\t}\n\t});\n\nprog\n\t.command('adapt')\n\t.describe('Customise your production build for different platforms')\n\t.action(async () => {\n\t\tprocess.env.NODE_ENV = 'production';\n\t\tconst config = get_config();\n\n\t\tconst { adapt } = await import('./api/adapt');\n\n\t\ttry {\n\t\t\tawait adapt(config);\n\t\t} catch (error) {\n\t\t\thandle_error(error);\n\t\t}\n\t});\n\nprog.parse(process.argv, { unknown: (arg) => `Unknown option: ${arg}` });\n"],"names":["load_config","colors","sade","pkg.version"],"mappings":"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"}
package/dist/colors.js DELETED
@@ -1,37 +0,0 @@
1
- 'use strict';
2
-
3
- let FORCE_COLOR, NODE_DISABLE_COLORS, NO_COLOR, TERM, isTTY=true;
4
- if (typeof process !== 'undefined') {
5
- ({ FORCE_COLOR, NODE_DISABLE_COLORS, NO_COLOR, TERM } = process.env);
6
- isTTY = process.stdout && process.stdout.isTTY;
7
- }
8
-
9
- const $ = {
10
- enabled: !NODE_DISABLE_COLORS && NO_COLOR == null && TERM !== 'dumb' && (
11
- FORCE_COLOR != null && FORCE_COLOR !== '0' || isTTY
12
- )
13
- };
14
-
15
- function init(x, y) {
16
- let rgx = new RegExp(`\\x1b\\[${y}m`, 'g');
17
- let open = `\x1b[${x}m`, close = `\x1b[${y}m`;
18
-
19
- return function (txt) {
20
- if (!$.enabled || txt == null) return txt;
21
- return open + ((''+txt).includes(close) ? txt.replace(rgx, close + open) : txt) + close;
22
- };
23
- }
24
- const bold = init(1, 22);
25
- const red = init(31, 39);
26
- const green = init(32, 39);
27
- const yellow = init(33, 39);
28
- const cyan = init(36, 39);
29
- const gray = init(90, 39);
30
-
31
- exports.bold = bold;
32
- exports.cyan = cyan;
33
- exports.gray = gray;
34
- exports.green = green;
35
- exports.red = red;
36
- exports.yellow = yellow;
37
- //# sourceMappingURL=colors.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"colors.js","sources":["../../../node_modules/.pnpm/kleur@4.1.3/node_modules/kleur/colors.mjs"],"sourcesContent":["let FORCE_COLOR, NODE_DISABLE_COLORS, NO_COLOR, TERM, isTTY=true;\nif (typeof process !== 'undefined') {\n\t({ FORCE_COLOR, NODE_DISABLE_COLORS, NO_COLOR, TERM } = process.env);\n\tisTTY = process.stdout && process.stdout.isTTY;\n}\n\nexport const $ = {\n\tenabled: !NODE_DISABLE_COLORS && NO_COLOR == null && TERM !== 'dumb' && (\n\t\tFORCE_COLOR != null && FORCE_COLOR !== '0' || isTTY\n\t)\n}\n\nfunction init(x, y) {\n\tlet rgx = new RegExp(`\\\\x1b\\\\[${y}m`, 'g');\n\tlet open = `\\x1b[${x}m`, close = `\\x1b[${y}m`;\n\n\treturn function (txt) {\n\t\tif (!$.enabled || txt == null) return txt;\n\t\treturn open + ((''+txt).includes(close) ? txt.replace(rgx, close + open) : txt) + close;\n\t};\n}\n\n// modifiers\nexport const reset = init(0, 0);\nexport const bold = init(1, 22);\nexport const dim = init(2, 22);\nexport const italic = init(3, 23);\nexport const underline = init(4, 24);\nexport const inverse = init(7, 27);\nexport const hidden = init(8, 28);\nexport const strikethrough = init(9, 29);\n\n// colors\nexport const black = init(30, 39);\nexport const red = init(31, 39);\nexport const green = init(32, 39);\nexport const yellow = init(33, 39);\nexport const blue = init(34, 39);\nexport const magenta = init(35, 39);\nexport const cyan = init(36, 39);\nexport const white = init(37, 39);\nexport const gray = init(90, 39);\nexport const grey = init(90, 39);\n\n// background colors\nexport const bgBlack = init(40, 49);\nexport const bgRed = init(41, 49);\nexport const bgGreen = init(42, 49);\nexport const bgYellow = init(43, 49);\nexport const bgBlue = init(44, 49);\nexport const bgMagenta = init(45, 49);\nexport const bgCyan = init(46, 49);\nexport const bgWhite = init(47, 49);\n"],"names":[],"mappings":";;AAAA,IAAI,WAAW,EAAE,mBAAmB,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC;AACjE,IAAI,OAAO,OAAO,KAAK,WAAW,EAAE;AACpC,CAAC,CAAC,EAAE,WAAW,EAAE,mBAAmB,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE;AACtE,CAAC,KAAK,GAAG,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;AAChD,CAAC;AACD;AACO,MAAM,CAAC,GAAG;AACjB,CAAC,OAAO,EAAE,CAAC,mBAAmB,IAAI,QAAQ,IAAI,IAAI,IAAI,IAAI,KAAK,MAAM;AACrE,EAAE,WAAW,IAAI,IAAI,IAAI,WAAW,KAAK,GAAG,IAAI,KAAK;AACrD,EAAE;AACF,EAAC;AACD;AACA,SAAS,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE;AACpB,CAAC,IAAI,GAAG,GAAG,IAAI,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;AAC5C,CAAC,IAAI,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AAC/C;AACA,CAAC,OAAO,UAAU,GAAG,EAAE;AACvB,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,IAAI,GAAG,IAAI,IAAI,EAAE,OAAO,GAAG,CAAC;AAC5C,EAAE,OAAO,IAAI,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,QAAQ,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,GAAG,KAAK,CAAC;AAC1F,EAAE,CAAC;AACH,CAAC;AAIW,MAAC,IAAI,GAAG,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE;AAUpB,MAAC,GAAG,GAAG,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE;AACpB,MAAC,KAAK,GAAG,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE;AACtB,MAAC,MAAM,GAAG,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE;AAGvB,MAAC,IAAI,GAAG,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE;AAErB,MAAC,IAAI,GAAG,IAAI,CAAC,EAAE,EAAE,EAAE;;;;;;;;;"}