remove glob and cheerio from dependencies

This commit is contained in:
Rich Harris
2018-08-19 15:20:14 -04:00
parent 14e5c8e761
commit dba83641e4
23 changed files with 1471 additions and 1317 deletions

View File

@@ -1,6 +1,6 @@
import * as fs from 'fs';
import * as path from 'path';
import * as glob from 'glob';
import glob from 'tiny-glob/sync.js';
import { posixify, write_if_changed } from './utils';
import { dev, locations } from '../config';
import { Page, PageComponent, ServerRoute } from '../interfaces';
@@ -9,24 +9,27 @@ export function create_main_manifests({ routes, dev_port }: {
routes: { components: PageComponent[], pages: Page[], server_routes: ServerRoute[] };
dev_port?: number;
}) {
const path_to_routes = path.relative(`${locations.app()}/manifest`, locations.routes());
const manifest_dir = path.join(locations.app(), 'manifest');
if (!fs.existsSync(manifest_dir)) fs.mkdirSync(manifest_dir);
const path_to_routes = path.relative(manifest_dir, locations.routes());
const client_manifest = generate_client(routes, path_to_routes, dev_port);
const server_manifest = generate_server(routes, path_to_routes);
write_if_changed(
`${locations.app()}/manifest/default-layout.html`,
`${manifest_dir}/default-layout.html`,
`<svelte:component this={child.component} {...child.props}/>`
);
write_if_changed(`${locations.app()}/manifest/client.js`, client_manifest);
write_if_changed(`${locations.app()}/manifest/server.js`, server_manifest);
write_if_changed(`${manifest_dir}/client.js`, client_manifest);
write_if_changed(`${manifest_dir}/server.js`, server_manifest);
}
export function create_serviceworker_manifest({ routes, client_files }: {
routes: { components: PageComponent[], pages: Page[], server_routes: ServerRoute[] };
client_files: string[];
}) {
const assets = glob.sync('**', { cwd: 'assets', nodir: true });
const assets = glob('**', { cwd: 'assets', filesOnly: true });
let code = `
// This file is generated by Sapper — do not edit it!
@@ -42,11 +45,6 @@ export function create_serviceworker_manifest({ routes, client_files }: {
write_if_changed(`${locations.app()}/manifest/service-worker.js`, code);
}
function right_pad(str: string, len: number) {
while (str.length < len) str += ' ';
return str;
}
function generate_client(
routes: { root: PageComponent, components: PageComponent[], pages: Page[], server_routes: ServerRoute[] },
path_to_routes: string,