Server-side preload check fixes (fixes #575, #594, #598)

This commit is contained in:
Conduitry
2019-03-08 08:34:36 -05:00
committed by Rich Harris
parent 9540383796
commit 74c66b784f
4 changed files with 18 additions and 21 deletions

19
package-lock.json generated
View File

@@ -4372,9 +4372,9 @@
}
},
"rollup-plugin-svelte": {
"version": "5.0.1",
"resolved": "https://registry.npmjs.org/rollup-plugin-svelte/-/rollup-plugin-svelte-5.0.1.tgz",
"integrity": "sha512-iwm4ANbdoEQqoCL8m70R3F2Oe/auSr0zIOBVVJWx7IMSkzFZjhd0PeqzKe3BWCllLAnBXIbqTSOHmU2mnvy0SA==",
"version": "5.0.3",
"resolved": "https://registry.npmjs.org/rollup-plugin-svelte/-/rollup-plugin-svelte-5.0.3.tgz",
"integrity": "sha512-3W/jbtBcsxohKQMI1Po2ZsUHRGUy3vEtgXLHvBin1+ms3wl2eomSyYBV7pwrkh6tWok9BVzdxGQgd7IqibG+Ew==",
"dev": true,
"requires": {
"require-relative": "^0.8.7",
@@ -4960,9 +4960,9 @@
}
},
"svelte": {
"version": "3.0.0-beta.3",
"resolved": "https://registry.npmjs.org/svelte/-/svelte-3.0.0-beta.3.tgz",
"integrity": "sha512-kEPbvpmzZqVsUMgMQ1DFx1W+05hWiHVSQaQYPv55AzcCAeXHRZD9N55Pv4LKH6sOHvvNhkb4GVLSK2yBQZn5CQ==",
"version": "3.0.0-beta.11",
"resolved": "https://registry.npmjs.org/svelte/-/svelte-3.0.0-beta.11.tgz",
"integrity": "sha512-NTk89Q1azXoG08qRDd9R9aM8+fylCSon1bPThsS2IWSqw7YEPPu2wv9p3VaZ5Eo4NubUDfnX/HXtwdGozSnjCg==",
"dev": true
},
"svelte-dev-helper": {
@@ -4972,13 +4972,12 @@
"dev": true
},
"svelte-loader": {
"version": "2.12.0",
"resolved": "https://registry.npmjs.org/svelte-loader/-/svelte-loader-2.12.0.tgz",
"integrity": "sha512-mxkjxHecbWl3KzhlwWm4C/Mid4Anhk611sEG31aa0BwdELIgLSaAxSJkxJrrFxxNgEKGKyTSeUI3blKNM+3s8Q==",
"version": "2.13.3",
"resolved": "https://registry.npmjs.org/svelte-loader/-/svelte-loader-2.13.3.tgz",
"integrity": "sha512-ZvNWbR77lZ04nCHqnN0XFxKCQ+fynARCy+kxwogagW3k2NTJWg2QfJwN1J9d4ch+OZwcGPgGZITVr7FGB3hPmQ==",
"dev": true,
"requires": {
"loader-utils": "^1.1.0",
"require-relative": "^0.8.7",
"svelte-dev-helper": "^1.1.9"
}
},

View File

@@ -50,12 +50,12 @@
"rollup-plugin-replace": "^2.1.0",
"rollup-plugin-string": "^2.0.2",
"rollup-plugin-sucrase": "^2.1.0",
"rollup-plugin-svelte": "^5.0.1",
"rollup-plugin-svelte": "^5.0.3",
"sade": "^1.4.2",
"sirv": "^0.2.2",
"sucrase": "^3.9.5",
"svelte": "^3.0.0-alpha27",
"svelte-loader": "^2.12.0",
"svelte": "^3.0.0-beta.11",
"svelte-loader": "^2.13.3",
"webpack": "^4.29.0",
"webpack-format-messages": "^2.0.5",
"yootils": "0.0.14"

View File

@@ -9,7 +9,8 @@ import { builtinModules } from 'module';
const external = [].concat(
Object.keys(pkg.dependencies),
Object.keys(process.binding('natives')),
'sapper/core.js'
'sapper/core.js',
'svelte/compiler'
);
function template(kind, external) {
@@ -65,4 +66,4 @@ export default [
})
]
}
];
];

View File

@@ -17,11 +17,8 @@ export default function create_manifest_data(cwd: string): ManifestData {
if (/preload/.test(source)) {
try {
const { stats } = svelte.compile(source, {
generate: false,
onwarn: () => {}
});
return !!stats.vars.find((variable: any) => variable.module && variable.export_name === 'preload');
const { vars } = svelte.compile(source.replace(/<style\b[^>]*>[^]*?<\/style>/g, ''), { generate: false });
return vars.some((variable: any) => variable.module && variable.export_name === 'preload');
} catch (err) {}
}
@@ -346,4 +343,4 @@ function get_pattern(segments: Part[][], add_trailing_slash: boolean) {
}).join('') +
(add_trailing_slash ? '\\\/?$' : '$')
);
}
}