@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
package/dist/index2.js DELETED
@@ -1,544 +0,0 @@
1
- 'use strict';
2
-
3
- var _package = require('./package.js');
4
- var path = require('path');
5
- require('module');
6
- require('url');
7
- var fs = require('fs');
8
- var require$$1 = require('child_process');
9
- require('./standard.js');
10
- var util = require('util');
11
- var create_app = require('./create_app.js');
12
- var utils = require('./utils.js');
13
- var rollup = require('rollup');
14
- var rollupPluginTerser = require('rollup-plugin-terser');
15
- var css_chunks = require('rollup-plugin-css-chunks');
16
-
17
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
18
-
19
- var path__default = /*#__PURE__*/_interopDefaultLegacy(path);
20
- var fs__default = /*#__PURE__*/_interopDefaultLegacy(fs);
21
- var require$$1__default = /*#__PURE__*/_interopDefaultLegacy(require$$1);
22
- var css_chunks__default = /*#__PURE__*/_interopDefaultLegacy(css_chunks);
23
-
24
- const inject_styles = `
25
- export default function(files) {
26
- return Promise.all(files.map(function(file) { return new Promise(function(fulfil, reject) {
27
- var href = new URL(file, import.meta.url);
28
- var baseURI = document.baseURI;
29
- if (!baseURI) {
30
- var baseTags = document.getElementsByTagName('base');
31
- baseURI = baseTags.length ? baseTags[0].href : document.URL;
32
- }
33
- var relative = ('' + href).substring(baseURI.length);
34
- var link = document.querySelector('link[rel=stylesheet][href="' + relative + '"]')
35
- || document.querySelector('link[rel=stylesheet][href="' + href + '"]');
36
- if (!link) {
37
- link = document.createElement('link');
38
- link.rel = 'stylesheet';
39
- link.href = href;
40
- document.head.appendChild(link);
41
- }
42
- if (link.sheet) {
43
- fulfil();
44
- } else {
45
- link.onload = function() { return fulfil() };
46
- link.onerror = reject;
47
- }
48
- })}));
49
- };`.trim();
50
-
51
- const INJECT_STYLES_NAME = 'inject_styles';
52
- const INJECT_STYLES_ID = 'inject_styles.js';
53
-
54
- const find_css = (chunk, bundle) => {
55
- const css_files = new Set();
56
- const visited = new Set();
57
-
58
- const recurse = (c) => {
59
- if (visited.has(c)) return;
60
- visited.add(c);
61
-
62
- if (c.imports) {
63
- c.imports.forEach((file) => {
64
- if (file.endsWith('.css')) {
65
- css_files.add(file);
66
- } else {
67
- const imported_chunk = bundle[file];
68
- if (imported_chunk) {
69
- recurse(imported_chunk);
70
- }
71
- }
72
- });
73
- }
74
- };
75
-
76
- recurse(chunk);
77
- return Array.from(css_files);
78
- };
79
-
80
- const css_injection = {
81
- name: 'svelte-css-injection',
82
- buildStart() {
83
- this.emitFile({
84
- type: 'chunk',
85
- id: INJECT_STYLES_ID,
86
- name: INJECT_STYLES_NAME,
87
- preserveSignature: 'allow-extension'
88
- });
89
- },
90
- load(id) {
91
- return id === INJECT_STYLES_ID ? inject_styles : null;
92
- },
93
- resolveId(importee) {
94
- return importee === INJECT_STYLES_ID ? INJECT_STYLES_ID : null;
95
- },
96
- renderDynamicImport({ targetModuleId }) {
97
- if (targetModuleId) {
98
- const t = Buffer.from(targetModuleId).toString('hex');
99
- return {
100
- left: 'Promise.all([import(',
101
- right: `), ___SVELTE_CSS_INJECTION___${t}___]).then(function(x) { return x[0]; })`
102
- };
103
- } else {
104
- return {
105
- left: 'import(',
106
- right: ')'
107
- };
108
- }
109
- },
110
- async generateBundle(_options, bundle) {
111
- const inject_styles_file = Object.keys(bundle).find((f) => f.startsWith('inject_styles'));
112
-
113
- let has_css = false;
114
- for (const name in bundle) {
115
- const chunk = bundle[name];
116
-
117
- let chunk_has_css = false;
118
-
119
- if (chunk.code) {
120
- chunk.code = chunk.code.replace(/___SVELTE_CSS_INJECTION___([0-9a-f]+)___/g, (_m, id) => {
121
- id = Buffer.from(id, 'hex').toString();
122
- const target = Object.values(bundle).find((c) => c.modules && c.modules[id]);
123
-
124
- if (target) {
125
- const css_files = find_css(target, bundle);
126
- if (css_files.length > 0) {
127
- chunk_has_css = true;
128
- return `__inject_styles(${JSON.stringify(css_files)})`;
129
- }
130
- }
131
-
132
- return '';
133
- });
134
-
135
- if (chunk_has_css) {
136
- has_css = true;
137
- chunk.code += `\nimport __inject_styles from './${inject_styles_file}';`;
138
- }
139
- }
140
- }
141
-
142
- if (!has_css) {
143
- delete bundle[inject_styles_file];
144
- }
145
- }
146
- };
147
-
148
- const execFile = util.promisify(require$$1__default['default'].execFile);
149
-
150
- const snowpack_main = require.resolve('snowpack');
151
- const snowpack_pkg_file = path__default['default'].join(snowpack_main, '../../package.json');
152
- const snowpack_pkg = require(snowpack_pkg_file); // eslint-disable-line
153
- const snowpack_bin = path__default['default'].resolve(path__default['default'].dirname(snowpack_pkg_file), snowpack_pkg.bin.snowpack);
154
-
155
- const ignorable_warnings = new Set(['EMPTY_BUNDLE', 'MISSING_EXPORT']);
156
- const onwarn = (warning, handler) => {
157
- // TODO would be nice to just eliminate the circular dependencies instead of
158
- // squelching these warnings (it happens when e.g. the root layout imports
159
- // from $app/navigation)
160
- if (ignorable_warnings.has(warning.code)) return;
161
- handler(warning);
162
- };
163
-
164
- const DIR = '.svelte';
165
- const ASSETS = `${DIR}/assets`;
166
- const UNOPTIMIZED = `${DIR}/build/unoptimized`;
167
- const OPTIMIZED = `${DIR}/build/optimized`;
168
-
169
- const s = JSON.stringify;
170
-
171
- async function build(config) {
172
- const manifest = create_app.create_manifest_data(config);
173
-
174
- utils.mkdirp(ASSETS);
175
- await rimraf(UNOPTIMIZED);
176
- await rimraf(OPTIMIZED);
177
-
178
- create_app.create_app({
179
- manifest_data: manifest,
180
- output: '.svelte/assets'
181
- });
182
-
183
- utils.copy_assets();
184
-
185
- // TODO use import.meta.env.SSR upon resolution of https://github.com/snowpackjs/snowpack/discussions/1889
186
- // prettier-ignore
187
- fs.writeFileSync('.svelte/assets/runtime/app/env.js', [
188
- 'export const browser = typeof window !== "undefined";',
189
- 'export const dev = false;',
190
- `export const amp = ${config.amp};`
191
- ].join('\n'));
192
-
193
- const tick = _package.bold(_package.green('✔'));
194
- console.log(_package.bold(_package.cyan('Transforming...')));
195
-
196
- const mount = [
197
- `--mount.${config.files.routes}=/${config.appDir}/routes`,
198
- `--mount.${config.files.setup}=/${config.appDir}/setup`
199
- ];
200
-
201
- const env = { ...process.env, SVELTE_KIT_APP_DIR: config.appDir };
202
-
203
- const promises = {
204
- transform_client: execFile(
205
- process.argv[0],
206
- [snowpack_bin, 'build', ...mount, `--out=${UNOPTIMIZED}/client`],
207
- { env }
208
- ),
209
- transform_server: execFile(
210
- process.argv[0],
211
- [snowpack_bin, 'build', ...mount, `--out=${UNOPTIMIZED}/server`, '--ssr'],
212
- { env }
213
- )
214
- };
215
-
216
- await promises.transform_client;
217
- console.log(` ${tick} client`);
218
-
219
- await promises.transform_server;
220
- console.log(` ${tick} server`);
221
-
222
- console.log(_package.bold(_package.cyan('Optimizing...')));
223
-
224
- const client = {
225
- entry: null,
226
- deps: {}
227
- };
228
-
229
- const entry = path__default['default'].resolve(
230
- `${UNOPTIMIZED}/client/${config.appDir}/assets/runtime/internal/start.js`
231
- );
232
-
233
- const client_chunks = await rollup.rollup({
234
- input: {
235
- entry
236
- },
237
- plugins: [
238
- {
239
- name: 'deproxy-css',
240
- async resolveId(importee, importer) {
241
- if (/\.css\.proxy\.js$/.test(importee)) {
242
- const deproxied = importee.replace(/\.css\.proxy\.js$/, '.css');
243
- const resolved = await this.resolve(deproxied, importer);
244
- return resolved.id;
245
- }
246
- }
247
- },
248
- css_chunks__default['default']({
249
- sourcemap: true
250
- }),
251
- css_injection,
252
- {
253
- name: 'generate-client-manifest',
254
- generateBundle(_options, bundle) {
255
- const reverse_lookup = new Map();
256
-
257
- const routes = path__default['default'].resolve(`${UNOPTIMIZED}/client/${config.appDir}/routes`);
258
-
259
- let inject_styles;
260
-
261
- for (const key in bundle) {
262
- const chunk = bundle[key];
263
-
264
- if (chunk.facadeModuleId === entry) {
265
- client.entry = key;
266
- } else if (chunk.facadeModuleId === 'inject_styles.js') {
267
- inject_styles = key;
268
- } else if (chunk.modules) {
269
- for (const id in chunk.modules) {
270
- if (id.startsWith(routes) && id.endsWith('.js')) {
271
- const file = id.slice(routes.length + 1);
272
- reverse_lookup.set(file, key);
273
- }
274
- }
275
- }
276
- }
277
-
278
- const find_deps = (key, js, css) => {
279
- if (js.has(key)) return;
280
-
281
- js.add(key);
282
-
283
- const chunk = bundle[key];
284
-
285
- if (chunk) {
286
- const imports = chunk.imports;
287
-
288
- if (imports) {
289
- imports.forEach((key) => {
290
- if (key.endsWith('.css')) {
291
- js.add(inject_styles);
292
- css.add(key);
293
- } else {
294
- find_deps(key, js, css);
295
- }
296
- });
297
- }
298
- } else {
299
- this.error(`'${key}' is imported but could not be bundled`);
300
- }
301
-
302
- return { js, css };
303
- };
304
-
305
- const get_deps = (key) => {
306
- const js = new Set();
307
- const css = new Set();
308
-
309
- find_deps(key, js, css);
310
-
311
- return {
312
- js: Array.from(js),
313
- css: Array.from(css)
314
- };
315
- };
316
-
317
- manifest.components.forEach((component) => {
318
- const file = path__default['default'].normalize(component.file.replace(/\.svelte$/, '.js'));
319
- const key = reverse_lookup.get(file);
320
-
321
- client.deps[component.name] = get_deps(key);
322
- });
323
- }
324
- },
325
- rollupPluginTerser.terser()
326
- ],
327
-
328
- onwarn,
329
-
330
- // TODO ensure this works with external node modules (on server)
331
- external: (id) => id[0] !== '.' && !path__default['default'].isAbsolute(id)
332
- });
333
-
334
- await client_chunks.write({
335
- dir: `${OPTIMIZED}/client/${config.appDir}`,
336
- entryFileNames: '[name]-[hash].js',
337
- chunkFileNames: '[name]-[hash].js',
338
- assetFileNames: '[name]-[hash].js', // TODO CSS filenames aren't hashed?
339
- format: 'esm',
340
- sourcemap: true
341
- });
342
-
343
- console.log(` ${tick} client`);
344
-
345
- const setup_file = `${UNOPTIMIZED}/server/${config.appDir}/setup/index.js`;
346
- if (!fs__default['default'].existsSync(setup_file)) {
347
- utils.mkdirp(path__default['default'].dirname(setup_file));
348
- fs__default['default'].writeFileSync(setup_file, '');
349
- }
350
-
351
- const app_file = `${UNOPTIMIZED}/server/app.js`;
352
-
353
- const component_indexes = new Map();
354
- manifest.components.forEach((c, i) => {
355
- component_indexes.set(c.file, i);
356
- });
357
-
358
- const stringify_component = (c) => `() => import(${s(`.${c.url.replace(/\.\w+$/, '.js')}`)})`;
359
-
360
- // TODO ideally we wouldn't embed the css_lookup, but this is the easiest
361
- // way to be able to inline CSS into AMP documents. if we come up with
362
- // something better, we could use it for non-AMP documents too, as
363
- // critical CSS below a certain threshold _should_ be inlined
364
- const css_lookup = {};
365
- manifest.pages.forEach((data) => {
366
- data.parts.forEach((c) => {
367
- const deps = client.deps[c.name];
368
- deps.css.forEach((dep) => {
369
- const url = `${config.paths.assets}/${config.appDir}/${dep}`.replace(/^\/\./, '');
370
- const file = `${OPTIMIZED}/client/${config.appDir}/${dep}`;
371
-
372
- css_lookup[url] = fs.readFileSync(file, 'utf-8');
373
- });
374
- });
375
- });
376
-
377
- // prettier-ignore
378
- fs__default['default'].writeFileSync(
379
- app_file,
380
- `
381
- import * as renderer from '@sveltejs/kit/dist/renderer';
382
- import root from './${config.appDir}/assets/generated/root.js';
383
- import { set_paths } from './${config.appDir}/assets/runtime/internal/singletons.js';
384
- import * as setup from './${config.appDir}/setup/index.js';
385
-
386
- const template = ({ head, body }) => ${s(fs__default['default'].readFileSync(config.files.template, 'utf-8'))
387
- .replace('%svelte.head%', '" + head + "')
388
- .replace('%svelte.body%', '" + body + "')};
389
-
390
- const entry = ${s(client.entry)};
391
-
392
- set_paths(${s(config.paths)});
393
-
394
- // allow paths to be overridden in svelte-kit start
395
- export function init({ paths }) {
396
- set_paths(paths);
397
- }
398
-
399
- init({ paths: ${s(config.paths)} });
400
-
401
- const d = decodeURIComponent;
402
- const empty = () => ({});
403
-
404
- const components = [
405
- ${manifest.components.map((c) => stringify_component(c)).join(',\n\t\t\t\t')}
406
- ];
407
-
408
- ${config.amp ? `
409
- const css_lookup = ${s(css_lookup)};` : ''}
410
-
411
- const manifest = {
412
- assets: ${s(manifest.assets)},
413
- layout: ${stringify_component(manifest.layout)},
414
- error: ${stringify_component(manifest.error)},
415
- pages: [
416
- ${manifest.pages
417
- .map((data) => {
418
- const params = get_params(data.params);
419
- const parts = data.parts.map(c => `components[${component_indexes.get(c.file)}]`);
420
-
421
- const path_to_dep = dep => `${config.paths.assets}/${config.appDir}/${dep}`.replace(/^\/\./, '');
422
-
423
- const js_deps = new Set();
424
- const css_deps = new Set();
425
- data.parts.forEach(c => {
426
- const deps = client.deps[c.name];
427
- deps.js.forEach(dep => js_deps.add(path_to_dep(dep)));
428
- deps.css.forEach(dep => css_deps.add(path_to_dep(dep)));
429
- });
430
-
431
- return `{
432
- pattern: ${data.pattern},
433
- params: ${params},
434
- parts: [${parts.join(', ')}],
435
- css: [${Array.from(css_deps).map(s).join(', ')}],
436
- js: [${Array.from(js_deps).map(s).join(', ')}]
437
- }`;
438
- })
439
- .join(',\n\t\t\t\t\t')}
440
- ],
441
- endpoints: [
442
- ${manifest.endpoints
443
- .map((data) => {
444
- const params = get_params(data.params);
445
- const load = `() => import(${s(`.${data.url.replace(/\.\w+$/, '.js')}`)})`;
446
-
447
- return `{ pattern: ${data.pattern}, params: ${params}, load: ${load} }`;
448
- })
449
- .join(',\n\t\t\t\t\t')}
450
- ]
451
- };
452
-
453
- export function render(request, {
454
- paths = ${s(config.paths)},
455
- only_prerender = false,
456
- get_static_file
457
- } = {}) {
458
- return renderer.render(request, {
459
- paths,
460
- template,
461
- manifest,
462
- target: ${s(config.target)},${
463
- config.startGlobal ? `\n\t\t\t\t\tstart_global: ${s(config.startGlobal)},` : ''
464
- }
465
- entry,
466
- root,
467
- setup,
468
- dev: false,
469
- amp: ${config.amp},
470
- only_prerender,
471
- app_dir: ${s(config.appDir)},
472
- host: ${s(config.host)},
473
- host_header: ${s(config.hostHeader)},
474
- get_static_file,
475
- get_amp_css: dep => css_lookup[dep]
476
- });
477
- }
478
- `
479
- .replace(/^\t{3}/gm, '')
480
- .trim()
481
- );
482
-
483
- const server_input = {
484
- app: `${UNOPTIMIZED}/server/app.js`
485
- };
486
-
487
- const server_chunks = await rollup.rollup({
488
- input: server_input,
489
- plugins: [
490
- {
491
- name: 'remove-css',
492
- load(id) {
493
- if (/\.css\.proxy\.js$/.test(id)) return '';
494
- }
495
- },
496
- // TODO add server manifest generation so we can prune
497
- // imports before zipping for cloud functions
498
- rollupPluginTerser.terser()
499
- ],
500
-
501
- onwarn,
502
-
503
- // TODO ensure this works with external node modules (on server)
504
- external: (id) => id[0] !== '.' && !path__default['default'].isAbsolute(id)
505
- });
506
-
507
- await server_chunks.write({
508
- dir: `${OPTIMIZED}/server`,
509
- format: 'cjs', // TODO some adapters might want ESM?
510
- exports: 'named',
511
- entryFileNames: '[name].js',
512
- chunkFileNames: 'chunks/[name].js',
513
- assetFileNames: 'assets/[name].js',
514
- sourcemap: true
515
- });
516
-
517
- console.log(` ${tick} server\n`);
518
- }
519
-
520
- async function rimraf(path) {
521
- return new Promise((resolve) => {
522
- (fs__default['default'].rm || fs__default['default'].rmdir)(path, { recursive: true, force: true }, () => resolve());
523
- });
524
- }
525
-
526
- // given an array of params like `['x', 'y', 'z']` for
527
- // src/routes/[x]/[y]/[z]/svelte, create a function
528
- // that turns a RexExpMatchArray into ({ x, y, z })
529
- function get_params(array) {
530
- return array.length
531
- ? '(m) => ({ ' +
532
- array
533
- .map((param, i) => {
534
- return param.startsWith('...')
535
- ? `${param.slice(3)}: d(m[${i + 1}]).split('/')`
536
- : `${param}: d(m[${i + 1}])`;
537
- })
538
- .join(', ') +
539
- '})'
540
- : 'empty';
541
- }
542
-
543
- exports.build = build;
544
- //# sourceMappingURL=index2.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index2.js","sources":["../src/api/build/css_injection.js","../src/api/build/index.js"],"sourcesContent":["const inject_styles = `\nexport default function(files) {\n\treturn Promise.all(files.map(function(file) { return new Promise(function(fulfil, reject) {\n\t\tvar href = new URL(file, import.meta.url);\n\t\tvar baseURI = document.baseURI;\n\t\tif (!baseURI) {\n\t\t\tvar baseTags = document.getElementsByTagName('base');\n\t\t\tbaseURI = baseTags.length ? baseTags[0].href : document.URL;\n\t\t}\n\t\tvar relative = ('' + href).substring(baseURI.length);\n\t\tvar link = document.querySelector('link[rel=stylesheet][href=\"' + relative + '\"]')\n\t\t\t|| document.querySelector('link[rel=stylesheet][href=\"' + href + '\"]');\n\t\tif (!link) {\n\t\t\tlink = document.createElement('link');\n\t\t\tlink.rel = 'stylesheet';\n\t\t\tlink.href = href;\n\t\t\tdocument.head.appendChild(link);\n\t\t}\n\t\tif (link.sheet) {\n\t\t\tfulfil();\n\t\t} else {\n\t\t\tlink.onload = function() { return fulfil() };\n\t\t\tlink.onerror = reject;\n\t\t}\n\t})}));\n};`.trim();\n\nconst INJECT_STYLES_NAME = 'inject_styles';\nconst INJECT_STYLES_ID = 'inject_styles.js';\n\nconst find_css = (chunk, bundle) => {\n\tconst css_files = new Set();\n\tconst visited = new Set();\n\n\tconst recurse = (c) => {\n\t\tif (visited.has(c)) return;\n\t\tvisited.add(c);\n\n\t\tif (c.imports) {\n\t\t\tc.imports.forEach((file) => {\n\t\t\t\tif (file.endsWith('.css')) {\n\t\t\t\t\tcss_files.add(file);\n\t\t\t\t} else {\n\t\t\t\t\tconst imported_chunk = bundle[file];\n\t\t\t\t\tif (imported_chunk) {\n\t\t\t\t\t\trecurse(imported_chunk);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t};\n\n\trecurse(chunk);\n\treturn Array.from(css_files);\n};\n\nexport const css_injection = {\n\tname: 'svelte-css-injection',\n\tbuildStart() {\n\t\tthis.emitFile({\n\t\t\ttype: 'chunk',\n\t\t\tid: INJECT_STYLES_ID,\n\t\t\tname: INJECT_STYLES_NAME,\n\t\t\tpreserveSignature: 'allow-extension'\n\t\t});\n\t},\n\tload(id) {\n\t\treturn id === INJECT_STYLES_ID ? inject_styles : null;\n\t},\n\tresolveId(importee) {\n\t\treturn importee === INJECT_STYLES_ID ? INJECT_STYLES_ID : null;\n\t},\n\trenderDynamicImport({ targetModuleId }) {\n\t\tif (targetModuleId) {\n\t\t\tconst t = Buffer.from(targetModuleId).toString('hex');\n\t\t\treturn {\n\t\t\t\tleft: 'Promise.all([import(',\n\t\t\t\tright: `), ___SVELTE_CSS_INJECTION___${t}___]).then(function(x) { return x[0]; })`\n\t\t\t};\n\t\t} else {\n\t\t\treturn {\n\t\t\t\tleft: 'import(',\n\t\t\t\tright: ')'\n\t\t\t};\n\t\t}\n\t},\n\tasync generateBundle(_options, bundle) {\n\t\tconst inject_styles_file = Object.keys(bundle).find((f) => f.startsWith('inject_styles'));\n\n\t\tlet has_css = false;\n\t\tfor (const name in bundle) {\n\t\t\tconst chunk = bundle[name];\n\n\t\t\tlet chunk_has_css = false;\n\n\t\t\tif (chunk.code) {\n\t\t\t\tchunk.code = chunk.code.replace(/___SVELTE_CSS_INJECTION___([0-9a-f]+)___/g, (_m, id) => {\n\t\t\t\t\tid = Buffer.from(id, 'hex').toString();\n\t\t\t\t\tconst target = Object.values(bundle).find((c) => c.modules && c.modules[id]);\n\n\t\t\t\t\tif (target) {\n\t\t\t\t\t\tconst css_files = find_css(target, bundle);\n\t\t\t\t\t\tif (css_files.length > 0) {\n\t\t\t\t\t\t\tchunk_has_css = true;\n\t\t\t\t\t\t\treturn `__inject_styles(${JSON.stringify(css_files)})`;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\treturn '';\n\t\t\t\t});\n\n\t\t\t\tif (chunk_has_css) {\n\t\t\t\t\thas_css = true;\n\t\t\t\t\tchunk.code += `\\nimport __inject_styles from './${inject_styles_file}';`;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (!has_css) {\n\t\t\tdelete bundle[inject_styles_file];\n\t\t}\n\t}\n};\n","import fs, { readFileSync, writeFileSync } from 'fs';\nimport path from 'path';\nimport child_process from 'child_process';\nimport { promisify } from 'util';\nimport { green, bold, cyan } from 'kleur/colors';\nimport { mkdirp } from '@sveltejs/app-utils/files';\nimport create_manifest_data from '../../core/create_manifest_data';\nimport { rollup } from 'rollup';\nimport { terser } from 'rollup-plugin-terser';\nimport css_chunks from 'rollup-plugin-css-chunks';\nimport { copy_assets } from '../utils';\nimport { create_app } from '../../core/create_app';\nimport { css_injection } from './css_injection';\n\nconst execFile = promisify(child_process.execFile);\n\nconst snowpack_main = require.resolve('snowpack');\nconst snowpack_pkg_file = path.join(snowpack_main, '../../package.json');\nconst snowpack_pkg = require(snowpack_pkg_file); // eslint-disable-line\nconst snowpack_bin = path.resolve(path.dirname(snowpack_pkg_file), snowpack_pkg.bin.snowpack);\n\nconst ignorable_warnings = new Set(['EMPTY_BUNDLE', 'MISSING_EXPORT']);\nconst onwarn = (warning, handler) => {\n\t// TODO would be nice to just eliminate the circular dependencies instead of\n\t// squelching these warnings (it happens when e.g. the root layout imports\n\t// from $app/navigation)\n\tif (ignorable_warnings.has(warning.code)) return;\n\thandler(warning);\n};\n\nconst DIR = '.svelte';\nconst ASSETS = `${DIR}/assets`;\nconst UNOPTIMIZED = `${DIR}/build/unoptimized`;\nconst OPTIMIZED = `${DIR}/build/optimized`;\n\nconst s = JSON.stringify;\n\nexport async function build(config) {\n\tconst manifest = create_manifest_data(config);\n\n\tmkdirp(ASSETS);\n\tawait rimraf(UNOPTIMIZED);\n\tawait rimraf(OPTIMIZED);\n\n\tcreate_app({\n\t\tmanifest_data: manifest,\n\t\toutput: '.svelte/assets'\n\t});\n\n\tcopy_assets();\n\n\t// TODO use import.meta.env.SSR upon resolution of https://github.com/snowpackjs/snowpack/discussions/1889\n\t// prettier-ignore\n\twriteFileSync('.svelte/assets/runtime/app/env.js', [\n\t\t'export const browser = typeof window !== \"undefined\";',\n\t\t'export const dev = false;',\n\t\t`export const amp = ${config.amp};`\n\t].join('\\n'));\n\n\tconst tick = bold(green('✔'));\n\tconsole.log(bold(cyan('Transforming...')));\n\n\tconst mount = [\n\t\t`--mount.${config.files.routes}=/${config.appDir}/routes`,\n\t\t`--mount.${config.files.setup}=/${config.appDir}/setup`\n\t];\n\n\tconst env = { ...process.env, SVELTE_KIT_APP_DIR: config.appDir };\n\n\tconst promises = {\n\t\ttransform_client: execFile(\n\t\t\tprocess.argv[0],\n\t\t\t[snowpack_bin, 'build', ...mount, `--out=${UNOPTIMIZED}/client`],\n\t\t\t{ env }\n\t\t),\n\t\ttransform_server: execFile(\n\t\t\tprocess.argv[0],\n\t\t\t[snowpack_bin, 'build', ...mount, `--out=${UNOPTIMIZED}/server`, '--ssr'],\n\t\t\t{ env }\n\t\t)\n\t};\n\n\tawait promises.transform_client;\n\tconsole.log(` ${tick} client`);\n\n\tawait promises.transform_server;\n\tconsole.log(` ${tick} server`);\n\n\tconsole.log(bold(cyan('Optimizing...')));\n\n\tconst client = {\n\t\tentry: null,\n\t\tdeps: {}\n\t};\n\n\tconst entry = path.resolve(\n\t\t`${UNOPTIMIZED}/client/${config.appDir}/assets/runtime/internal/start.js`\n\t);\n\n\tconst client_chunks = await rollup({\n\t\tinput: {\n\t\t\tentry\n\t\t},\n\t\tplugins: [\n\t\t\t{\n\t\t\t\tname: 'deproxy-css',\n\t\t\t\tasync resolveId(importee, importer) {\n\t\t\t\t\tif (/\\.css\\.proxy\\.js$/.test(importee)) {\n\t\t\t\t\t\tconst deproxied = importee.replace(/\\.css\\.proxy\\.js$/, '.css');\n\t\t\t\t\t\tconst resolved = await this.resolve(deproxied, importer);\n\t\t\t\t\t\treturn resolved.id;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t},\n\t\t\tcss_chunks({\n\t\t\t\tsourcemap: true\n\t\t\t}),\n\t\t\tcss_injection,\n\t\t\t{\n\t\t\t\tname: 'generate-client-manifest',\n\t\t\t\tgenerateBundle(_options, bundle) {\n\t\t\t\t\tconst reverse_lookup = new Map();\n\n\t\t\t\t\tconst routes = path.resolve(`${UNOPTIMIZED}/client/${config.appDir}/routes`);\n\n\t\t\t\t\tlet inject_styles;\n\n\t\t\t\t\tfor (const key in bundle) {\n\t\t\t\t\t\tconst chunk = bundle[key];\n\n\t\t\t\t\t\tif (chunk.facadeModuleId === entry) {\n\t\t\t\t\t\t\tclient.entry = key;\n\t\t\t\t\t\t} else if (chunk.facadeModuleId === 'inject_styles.js') {\n\t\t\t\t\t\t\tinject_styles = key;\n\t\t\t\t\t\t} else if (chunk.modules) {\n\t\t\t\t\t\t\tfor (const id in chunk.modules) {\n\t\t\t\t\t\t\t\tif (id.startsWith(routes) && id.endsWith('.js')) {\n\t\t\t\t\t\t\t\t\tconst file = id.slice(routes.length + 1);\n\t\t\t\t\t\t\t\t\treverse_lookup.set(file, key);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tconst find_deps = (key, js, css) => {\n\t\t\t\t\t\tif (js.has(key)) return;\n\n\t\t\t\t\t\tjs.add(key);\n\n\t\t\t\t\t\tconst chunk = bundle[key];\n\n\t\t\t\t\t\tif (chunk) {\n\t\t\t\t\t\t\tconst imports = chunk.imports;\n\n\t\t\t\t\t\t\tif (imports) {\n\t\t\t\t\t\t\t\timports.forEach((key) => {\n\t\t\t\t\t\t\t\t\tif (key.endsWith('.css')) {\n\t\t\t\t\t\t\t\t\t\tjs.add(inject_styles);\n\t\t\t\t\t\t\t\t\t\tcss.add(key);\n\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\tfind_deps(key, js, css);\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tthis.error(`'${key}' is imported but could not be bundled`);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\treturn { js, css };\n\t\t\t\t\t};\n\n\t\t\t\t\tconst get_deps = (key) => {\n\t\t\t\t\t\tconst js = new Set();\n\t\t\t\t\t\tconst css = new Set();\n\n\t\t\t\t\t\tfind_deps(key, js, css);\n\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tjs: Array.from(js),\n\t\t\t\t\t\t\tcss: Array.from(css)\n\t\t\t\t\t\t};\n\t\t\t\t\t};\n\n\t\t\t\t\tmanifest.components.forEach((component) => {\n\t\t\t\t\t\tconst file = path.normalize(component.file.replace(/\\.svelte$/, '.js'));\n\t\t\t\t\t\tconst key = reverse_lookup.get(file);\n\n\t\t\t\t\t\tclient.deps[component.name] = get_deps(key);\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t},\n\t\t\tterser()\n\t\t],\n\n\t\tonwarn,\n\n\t\t// TODO ensure this works with external node modules (on server)\n\t\texternal: (id) => id[0] !== '.' && !path.isAbsolute(id)\n\t});\n\n\tawait client_chunks.write({\n\t\tdir: `${OPTIMIZED}/client/${config.appDir}`,\n\t\tentryFileNames: '[name]-[hash].js',\n\t\tchunkFileNames: '[name]-[hash].js',\n\t\tassetFileNames: '[name]-[hash].js', // TODO CSS filenames aren't hashed?\n\t\tformat: 'esm',\n\t\tsourcemap: true\n\t});\n\n\tconsole.log(` ${tick} client`);\n\n\tconst setup_file = `${UNOPTIMIZED}/server/${config.appDir}/setup/index.js`;\n\tif (!fs.existsSync(setup_file)) {\n\t\tmkdirp(path.dirname(setup_file));\n\t\tfs.writeFileSync(setup_file, '');\n\t}\n\n\tconst app_file = `${UNOPTIMIZED}/server/app.js`;\n\n\tconst component_indexes = new Map();\n\tmanifest.components.forEach((c, i) => {\n\t\tcomponent_indexes.set(c.file, i);\n\t});\n\n\tconst stringify_component = (c) => `() => import(${s(`.${c.url.replace(/\\.\\w+$/, '.js')}`)})`;\n\n\t// TODO ideally we wouldn't embed the css_lookup, but this is the easiest\n\t// way to be able to inline CSS into AMP documents. if we come up with\n\t// something better, we could use it for non-AMP documents too, as\n\t// critical CSS below a certain threshold _should_ be inlined\n\tconst css_lookup = {};\n\tmanifest.pages.forEach((data) => {\n\t\tdata.parts.forEach((c) => {\n\t\t\tconst deps = client.deps[c.name];\n\t\t\tdeps.css.forEach((dep) => {\n\t\t\t\tconst url = `${config.paths.assets}/${config.appDir}/${dep}`.replace(/^\\/\\./, '');\n\t\t\t\tconst file = `${OPTIMIZED}/client/${config.appDir}/${dep}`;\n\n\t\t\t\tcss_lookup[url] = readFileSync(file, 'utf-8');\n\t\t\t});\n\t\t});\n\t});\n\n\t// prettier-ignore\n\tfs.writeFileSync(\n\t\tapp_file,\n\t\t`\n\t\t\timport * as renderer from '@sveltejs/kit/dist/renderer';\n\t\t\timport root from './${config.appDir}/assets/generated/root.js';\n\t\t\timport { set_paths } from './${config.appDir}/assets/runtime/internal/singletons.js';\n\t\t\timport * as setup from './${config.appDir}/setup/index.js';\n\n\t\t\tconst template = ({ head, body }) => ${s(fs.readFileSync(config.files.template, 'utf-8'))\n\t\t\t\t.replace('%svelte.head%', '\" + head + \"')\n\t\t\t\t.replace('%svelte.body%', '\" + body + \"')};\n\n\t\t\tconst entry = ${s(client.entry)};\n\n\t\t\tset_paths(${s(config.paths)});\n\n\t\t\t// allow paths to be overridden in svelte-kit start\n\t\t\texport function init({ paths }) {\n\t\t\t\tset_paths(paths);\n\t\t\t}\n\n\t\t\tinit({ paths: ${s(config.paths)} });\n\n\t\t\tconst d = decodeURIComponent;\n\t\t\tconst empty = () => ({});\n\n\t\t\tconst components = [\n\t\t\t\t${manifest.components.map((c) => stringify_component(c)).join(',\\n\\t\\t\\t\\t')}\n\t\t\t];\n\n\t\t\t${config.amp ? `\n\t\t\tconst css_lookup = ${s(css_lookup)};` : ''}\n\n\t\t\tconst manifest = {\n\t\t\t\tassets: ${s(manifest.assets)},\n\t\t\t\tlayout: ${stringify_component(manifest.layout)},\n\t\t\t\terror: ${stringify_component(manifest.error)},\n\t\t\t\tpages: [\n\t\t\t\t\t${manifest.pages\n\t\t\t\t\t\t.map((data) => {\n\t\t\t\t\t\t\tconst params = get_params(data.params);\n\t\t\t\t\t\t\tconst parts = data.parts.map(c => `components[${component_indexes.get(c.file)}]`);\n\n\t\t\t\t\t\t\tconst path_to_dep = dep => `${config.paths.assets}/${config.appDir}/${dep}`.replace(/^\\/\\./, '');\n\n\t\t\t\t\t\t\tconst js_deps = new Set();\n\t\t\t\t\t\t\tconst css_deps = new Set();\n\t\t\t\t\t\t\tdata.parts.forEach(c => {\n\t\t\t\t\t\t\t\tconst deps = client.deps[c.name];\n\t\t\t\t\t\t\t\tdeps.js.forEach(dep => js_deps.add(path_to_dep(dep)));\n\t\t\t\t\t\t\t\tdeps.css.forEach(dep => css_deps.add(path_to_dep(dep)));\n\t\t\t\t\t\t\t});\n\n\t\t\t\t\t\t\treturn `{\n\t\t\t\t\t\t\t\tpattern: ${data.pattern},\n\t\t\t\t\t\t\t\tparams: ${params},\n\t\t\t\t\t\t\t\tparts: [${parts.join(', ')}],\n\t\t\t\t\t\t\t\tcss: [${Array.from(css_deps).map(s).join(', ')}],\n\t\t\t\t\t\t\t\tjs: [${Array.from(js_deps).map(s).join(', ')}]\n\t\t\t\t\t\t\t}`;\n\t\t\t\t\t\t})\n\t\t\t\t\t\t.join(',\\n\\t\\t\\t\\t\\t')}\n\t\t\t\t],\n\t\t\t\tendpoints: [\n\t\t\t\t\t${manifest.endpoints\n\t\t\t\t\t\t.map((data) => {\n\t\t\t\t\t\t\tconst params = get_params(data.params);\n\t\t\t\t\t\t\tconst load = `() => import(${s(`.${data.url.replace(/\\.\\w+$/, '.js')}`)})`;\n\n\t\t\t\t\t\t\treturn `{ pattern: ${data.pattern}, params: ${params}, load: ${load} }`;\n\t\t\t\t\t\t})\n\t\t\t\t\t\t.join(',\\n\\t\\t\\t\\t\\t')}\n\t\t\t\t]\n\t\t\t};\n\n\t\t\texport function render(request, {\n\t\t\t\tpaths = ${s(config.paths)},\n\t\t\t\tonly_prerender = false,\n\t\t\t\tget_static_file\n\t\t\t} = {}) {\n\t\t\t\treturn renderer.render(request, {\n\t\t\t\t\tpaths,\n\t\t\t\t\ttemplate,\n\t\t\t\t\tmanifest,\n\t\t\t\t\ttarget: ${s(config.target)},${\n\t\t\t\t\t\tconfig.startGlobal ? `\\n\\t\\t\\t\\t\\tstart_global: ${s(config.startGlobal)},` : ''\n\t\t\t\t\t}\n\t\t\t\t\tentry,\n\t\t\t\t\troot,\n\t\t\t\t\tsetup,\n\t\t\t\t\tdev: false,\n\t\t\t\t\tamp: ${config.amp},\n\t\t\t\t\tonly_prerender,\n\t\t\t\t\tapp_dir: ${s(config.appDir)},\n\t\t\t\t\thost: ${s(config.host)},\n\t\t\t\t\thost_header: ${s(config.hostHeader)},\n\t\t\t\t\tget_static_file,\n\t\t\t\t\tget_amp_css: dep => css_lookup[dep]\n\t\t\t\t});\n\t\t\t}\n\t\t`\n\t\t\t.replace(/^\\t{3}/gm, '')\n\t\t\t.trim()\n\t);\n\n\tconst server_input = {\n\t\tapp: `${UNOPTIMIZED}/server/app.js`\n\t};\n\n\tconst server_chunks = await rollup({\n\t\tinput: server_input,\n\t\tplugins: [\n\t\t\t{\n\t\t\t\tname: 'remove-css',\n\t\t\t\tload(id) {\n\t\t\t\t\tif (/\\.css\\.proxy\\.js$/.test(id)) return '';\n\t\t\t\t}\n\t\t\t},\n\t\t\t// TODO add server manifest generation so we can prune\n\t\t\t// imports before zipping for cloud functions\n\t\t\tterser()\n\t\t],\n\n\t\tonwarn,\n\n\t\t// TODO ensure this works with external node modules (on server)\n\t\texternal: (id) => id[0] !== '.' && !path.isAbsolute(id)\n\t});\n\n\tawait server_chunks.write({\n\t\tdir: `${OPTIMIZED}/server`,\n\t\tformat: 'cjs', // TODO some adapters might want ESM?\n\t\texports: 'named',\n\t\tentryFileNames: '[name].js',\n\t\tchunkFileNames: 'chunks/[name].js',\n\t\tassetFileNames: 'assets/[name].js',\n\t\tsourcemap: true\n\t});\n\n\tconsole.log(` ${tick} server\\n`);\n}\n\nasync function rimraf(path) {\n\treturn new Promise((resolve) => {\n\t\t(fs.rm || fs.rmdir)(path, { recursive: true, force: true }, () => resolve());\n\t});\n}\n\n// given an array of params like `['x', 'y', 'z']` for\n// src/routes/[x]/[y]/[z]/svelte, create a function\n// that turns a RexExpMatchArray into ({ x, y, z })\nfunction get_params(array) {\n\treturn array.length\n\t\t? '(m) => ({ ' +\n\t\t\t\tarray\n\t\t\t\t\t.map((param, i) => {\n\t\t\t\t\t\treturn param.startsWith('...')\n\t\t\t\t\t\t\t? `${param.slice(3)}: d(m[${i + 1}]).split('/')`\n\t\t\t\t\t\t\t: `${param}: d(m[${i + 1}])`;\n\t\t\t\t\t})\n\t\t\t\t\t.join(', ') +\n\t\t\t\t'})'\n\t\t: 'empty';\n}\n"],"names":["promisify","child_process","path","create_manifest_data","mkdirp","create_app","copy_assets","writeFileSync","bold","green","cyan","rollup","css_chunks","terser","fs","readFileSync"],"mappings":"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"}
package/dist/index3.js DELETED
@@ -1,71 +0,0 @@
1
- 'use strict';
2
-
3
- var _package = require('./package.js');
4
- var path = require('path');
5
- require('module');
6
- var Url = require('url');
7
- var fs = require('fs');
8
- var index = require('./index4.js');
9
- require('./standard.js');
10
- var http = require('http');
11
-
12
- const mutable = (dir) =>
13
- index.sirv(dir, {
14
- etag: true,
15
- maxAge: 0
16
- });
17
-
18
- function start({ port, config }) {
19
- return new Promise((fulfil) => {
20
- const app = _package.requireRelative_1('./.svelte/build/optimized/server/app.js');
21
-
22
- const static_handler = fs.existsSync(config.files.assets)
23
- ? mutable(config.files.assets)
24
- : (_req, _res, next) => next();
25
-
26
- const assets_handler = index.sirv('.svelte/build/optimized/client', {
27
- maxAge: 31536000,
28
- immutable: true
29
- });
30
-
31
- const server = http.createServer((req, res) => {
32
- const parsed = Url.parse(req.url || '');
33
-
34
- assets_handler(req, res, () => {
35
- static_handler(req, res, async () => {
36
- const rendered = await app.render(
37
- {
38
- method: req.method,
39
- headers: req.headers,
40
- path: parsed.pathname,
41
- body: await index.get_body(req),
42
- query: new Url.URLSearchParams(parsed.query || '')
43
- },
44
- {
45
- paths: {
46
- base: '',
47
- assets: '/.'
48
- },
49
- get_static_file: (file) => fs.createReadStream(path.join(config.files.assets, file))
50
- }
51
- );
52
-
53
- if (rendered) {
54
- res.writeHead(rendered.status, rendered.headers);
55
- res.end(rendered.body);
56
- } else {
57
- res.statusCode = 404;
58
- res.end('Not found');
59
- }
60
- });
61
- });
62
- });
63
-
64
- server.listen(port, () => {
65
- fulfil(server);
66
- });
67
- });
68
- }
69
-
70
- exports.start = start;
71
- //# sourceMappingURL=index3.js.map