You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
svelte/test/sourcemaps/samples/compile-option-dev/_config.js

42 lines
1.0 KiB

import MagicString from 'magic-string';
// TODO move util fns to test index.js
function result(filename, src) {
return {
code: src.toString(),
map: src.generateMap({
source: filename,
hires: true,
includeContent: false
})
};
}
function replace_all(src, search, replace) {
let idx = src.original.indexOf(search);
if (idx == -1) throw new Error('search not found in src');
do {
src.overwrite(idx, idx + search.length, replace);
} while ((idx = src.original.indexOf(search, idx + 1)) != -1);
}
export default {
compile_options: {
dev: true
},
preprocess: [
{ style: ({ content, filename }) => {
const src = new MagicString(content);
replace_all(src, '--replace-me-once', '\n --done-replace-once');
replace_all(src, '--replace-me-twice', '\n--almost-done-replace-twice');
return result(filename, src);
} },
{ style: ({ content, filename }) => {
const src = new MagicString(content);
replace_all(src, '--almost-done-replace-twice', '\n --done-replace-twice');
return result(filename, src);
} }
]
};