@storyblok/create-demo
Version:
A CLI tool for quickly starting a Storyblok project
52 lines (51 loc) • 2.4 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.addCustomParentFramework = exports.createPublicFolder = void 0;
const fs = require("node:fs");
const copy_1 = require("./copy");
const replace_1 = require("./replace");
function createPublicFolder({ framework, publicPath, generator, localhostPath, }) {
if (fs.existsSync(publicPath)) {
fs.copyFileSync(`${generator}/editor.html`, publicPath + '/editor.html');
}
else {
(0, copy_1.default)(`${generator}/editor.html`, publicPath);
}
(0, replace_1.default)(`./${publicPath}/editor.html`, {
gatsby: framework,
'http://localhost:3000/': localhostPath + '/',
});
}
exports.createPublicFolder = createPublicFolder;
function addCustomParentFramework({ folder, framework, frameworkDetails, localhostPath, }) {
switch (framework) {
case 'gatsbyjs':
case 'nextjs':
case 'remix':
(0, replace_1.default)(`./${folder}/${frameworkDetails.bridge}`, {
'useStoryblokState(story)': `useStoryblokState(story, { customParent: '${localhostPath}'})`,
});
return;
case 'nuxtjs':
case 'vuejs':
(0, replace_1.default)(`./${folder}/${frameworkDetails.bridge}`, {
"useStoryblok('home', { version: 'draft' })": `useStoryblok('home', { version: 'draft' }, { customParent: '${localhostPath}'})`,
});
return;
case 'nuxtjs-3':
(0, replace_1.default)(`./${folder}/${frameworkDetails.bridge}`, {
"useAsyncStoryblok('home', { version: 'draft' })": `useAsyncStoryblok('home', { version: 'draft' }, { customParent: '${localhostPath}'})`,
});
return;
case 'reactjs':
(0, replace_1.default)(`./${folder}/${frameworkDetails.bridge}`, {
'{ version: "draft" }': `{ version: 'draft' }, { customParent: '${localhostPath}'}`,
});
return;
case 'sveltekit':
(0, replace_1.default)(`./${folder}/${frameworkDetails.bridge}`, {
'useStoryblokBridge(data.story.id, (newStory) => (data.story = newStory))': `useStoryblokBridge(data.story.id, (newStory) => (data.story = newStory), { customParent: '${localhostPath}'})`,
});
}
}
exports.addCustomParentFramework = addCustomParentFramework;