@slicemachine/adapter-nuxt 0.3.93-alpha.lh-nuxt-v5.2 → 0.3.93-beta.2

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.
@@ -32,7 +32,7 @@ const NUXT_PRISMIC = "@nuxtjs/prismic";
32
32
  const installDependencies = async ({ installDependencies: installDependencies2 }) => {
33
33
  await installDependencies2({
34
34
  dependencies: {
35
- [NUXT_PRISMIC]: "^4.0.0"
35
+ [NUXT_PRISMIC]: "^5.0.0"
36
36
  },
37
37
  dev: true
38
38
  });
@@ -1 +1 @@
1
- {"version":3,"file":"project-init.cjs","sources":["../../../src/hooks/project-init.ts"],"sourcesContent":["import * as path from \"node:path\";\nimport type {\n\tProjectInitHook,\n\tProjectInitHookData,\n\tSliceMachineContext,\n} from \"@slicemachine/plugin-kit\";\nimport {\n\tcheckHasProjectFile,\n\tdeleteProjectFile,\n\treadProjectFile,\n\twriteProjectFile,\n} from \"@slicemachine/plugin-kit/fs\";\nimport { stripIndent } from \"common-tags\";\nimport { builders, loadFile, writeFile } from \"magicast\";\n\nimport { buildSrcPath } from \"../lib/buildSrcPath\";\nimport { rejectIfNecessary } from \"../lib/rejectIfNecessary\";\nimport { checkIsTypeScriptProject } from \"../lib/checkIsTypeScriptProject\";\n\nimport type { PluginOptions } from \"../types\";\n\nconst NUXT_PRISMIC = \"@nuxtjs/prismic\";\n\ntype InstallDependenciesArgs = {\n\tinstallDependencies: ProjectInitHookData[\"installDependencies\"];\n};\n\nconst installDependencies = async ({\n\tinstallDependencies,\n}: InstallDependenciesArgs) => {\n\tawait installDependencies({\n\t\tdependencies: {\n\t\t\t[NUXT_PRISMIC]: \"^4.0.0\",\n\t\t},\n\t\tdev: true,\n\t});\n};\n\ntype ConfigurePrismicModuleArgs = SliceMachineContext<PluginOptions>;\n\nconst configurePrismicModule = async ({\n\thelpers,\n}: ConfigurePrismicModuleArgs) => {\n\tlet nuxtConfigFilename = \"nuxt.config.js\";\n\n\tif (!(await checkHasProjectFile({ filename: nuxtConfigFilename, helpers }))) {\n\t\tnuxtConfigFilename = \"nuxt.config.ts\";\n\n\t\t// nuxt.config.* not found\n\t\tif (\n\t\t\t!(await checkHasProjectFile({ filename: nuxtConfigFilename, helpers }))\n\t\t) {\n\t\t\treturn;\n\t\t}\n\t}\n\n\tconst nuxtConfigPath = helpers.joinPathFromRoot(nuxtConfigFilename);\n\n\tconst mod = await loadFile(nuxtConfigPath);\n\tconst config =\n\t\tmod.exports.default.$type === \"function-call\"\n\t\t\t? mod.exports.default.$args[0]\n\t\t\t: mod.exports.default;\n\n\t// Register Prismic module\n\tlet hasInlinedConfiguration = false;\n\tconst hasPrismicModuleRegistered = (config.modules || []).find(\n\t\t(registration: string | [string, unknown]) => {\n\t\t\tif (typeof registration === \"string\") {\n\t\t\t\treturn registration === NUXT_PRISMIC;\n\t\t\t} else if (Array.isArray(registration)) {\n\t\t\t\thasInlinedConfiguration = !!registration[1];\n\n\t\t\t\treturn registration[0] === NUXT_PRISMIC;\n\t\t\t}\n\n\t\t\treturn false;\n\t\t},\n\t);\n\n\tif (!hasPrismicModuleRegistered) {\n\t\tconfig.modules ||= [];\n\t\tconfig.modules.push(NUXT_PRISMIC);\n\t}\n\n\t// Append Prismic module configuration\n\tif (!hasInlinedConfiguration) {\n\t\t// Import Slice Machine configuration\n\t\tmod.imports.$add({\n\t\t\tfrom: \"./slicemachine.config.json\",\n\t\t\timported: \"apiEndpoint\",\n\t\t});\n\t\tmod.imports.$add({\n\t\t\tfrom: \"./slicemachine.config.json\",\n\t\t\timported: \"repositoryName\",\n\t\t});\n\n\t\t// Add inline configuration\n\t\tconfig.prismic ||= {};\n\t\tconfig.prismic.endpoint = builders.raw(\"apiEndpoint || repositoryName\");\n\t}\n\n\tawait writeFile(mod, nuxtConfigPath);\n};\n\ntype CreateSliceSimulatorPageArgs = SliceMachineContext<PluginOptions>;\n\nconst createSliceSimulatorPage = async ({\n\thelpers,\n\toptions,\n}: CreateSliceSimulatorPageArgs) => {\n\tconst isTypeScriptProject = await checkIsTypeScriptProject({\n\t\thelpers,\n\t\toptions,\n\t});\n\n\tconst appPagesDirectoryExists = await checkHasProjectFile({\n\t\tfilename: \"app/pages\",\n\t\thelpers,\n\t});\n\n\tconst srcPagesDirectoryExists = await checkHasProjectFile({\n\t\tfilename: \"src/pages\",\n\t\thelpers,\n\t});\n\n\tconst pagesDirectoryExists = await checkHasProjectFile({\n\t\tfilename: \"pages\",\n\t\thelpers,\n\t});\n\n\tlet filename: string;\n\t// We first give priority to existing `pages` directory, then to `srcDir`\n\t// because there could be conflicts with legacy `app` directory.\n\tif (appPagesDirectoryExists) {\n\t\tfilename = path.join(\"app/pages\", \"slice-simulator.vue\");\n\t} else if (srcPagesDirectoryExists) {\n\t\tfilename = path.join(\"src/pages\", \"slice-simulator.vue\");\n\t} else if (pagesDirectoryExists) {\n\t\tfilename = path.join(\"pages\", \"slice-simulator.vue\");\n\t} else {\n\t\tfilename = await buildSrcPath({\n\t\t\tfilename: path.join(\"pages\", \"slice-simulator.vue\"),\n\t\t\thelpers,\n\t\t});\n\t}\n\n\tif (await checkHasProjectFile({ filename, helpers })) {\n\t\treturn;\n\t}\n\n\tconst scriptAttributes = [\"setup\"];\n\tif (isTypeScriptProject) {\n\t\tscriptAttributes.push('lang=\"ts\"');\n\t}\n\n\tconst contents = stripIndent`\n\t\t<template>\n\t\t\t<SliceSimulator #default=\"{ slices }\">\n\t\t\t\t<SliceZone :slices=\"slices\" :components=\"components\" />\n\t\t\t</SliceSimulator>\n\t\t</template>\n\n\t\t<script ${scriptAttributes.join(\" \")}>\n\t\timport { SliceSimulator } from \"@slicemachine/adapter-nuxt/simulator\";\n\t\timport { components } from \"~/slices\";\n\t\t</script>\n\t`;\n\n\tawait writeProjectFile({\n\t\tfilename,\n\t\tcontents,\n\t\tformat: options.format,\n\t\thelpers,\n\t});\n};\n\nconst moveOrDeleteAppVue = async ({\n\thelpers,\n\toptions,\n}: CreateSliceSimulatorPageArgs) => {\n\tconst filenameAppVue = await buildSrcPath({ filename: \"app.vue\", helpers });\n\n\t// If there's no `app.vue`, there's nothing to do.\n\tif (!(await checkHasProjectFile({ filename: filenameAppVue, helpers }))) {\n\t\treturn;\n\t}\n\n\tconst filecontentAppVue = await readProjectFile({\n\t\tfilename: filenameAppVue,\n\t\thelpers,\n\t\tencoding: \"utf-8\",\n\t});\n\n\t// We check for app.vue to contain Nuxt default welcome component to determine\n\t// if we need to consider it as the default one or not.\n\tif (!filecontentAppVue.includes(\"<NuxtWelcome\")) {\n\t\treturn;\n\t}\n\n\tconst filenameIndexVue = await buildSrcPath({\n\t\tfilename: path.join(\"pages/index.vue\"),\n\t\thelpers,\n\t});\n\n\t// If we don't have an `index.vue` we create one with the content of `app.vue`\n\tif (!(await checkHasProjectFile({ filename: filenameIndexVue, helpers }))) {\n\t\tawait writeProjectFile({\n\t\t\tfilename: filenameIndexVue,\n\t\t\tcontents: filecontentAppVue,\n\t\t\tformat: options.format,\n\t\t\thelpers,\n\t\t});\n\t}\n\n\t// Delete `app.vue`\n\tawait deleteProjectFile({\n\t\tfilename: filenameAppVue,\n\t\thelpers,\n\t});\n};\n\nconst modifySliceMachineConfig = async ({\n\thelpers,\n\toptions,\n\tactions,\n}: SliceMachineContext<PluginOptions>) => {\n\tconst hasAppDirectory = await checkHasProjectFile({\n\t\tfilename: \"app\",\n\t\thelpers,\n\t});\n\tconst hasSrcDirectory = await checkHasProjectFile({\n\t\tfilename: \"src\",\n\t\thelpers,\n\t});\n\tconst project = await helpers.getProject();\n\n\t// Add Slice Simulator URL.\n\tproject.config.localSliceSimulatorURL ||=\n\t\t\"http://localhost:3000/slice-simulator\";\n\n\t// Nest the default Slice Library in the `app` or `src` directory if it\n\t// exists and is empty.\n\tif (\n\t\t(hasAppDirectory || hasSrcDirectory) &&\n\t\tproject.config.libraries &&\n\t\tJSON.stringify(project.config.libraries) === JSON.stringify([\"./slices\"])\n\t) {\n\t\tconst sliceLibrary = await actions.readSliceLibrary({\n\t\t\tlibraryID: project.config.libraries[0],\n\t\t});\n\n\t\tif (sliceLibrary.sliceIDs.length < 1) {\n\t\t\tproject.config.libraries = hasAppDirectory\n\t\t\t\t? [\"./app/slices\"]\n\t\t\t\t: [\"./src/slices\"];\n\t\t}\n\t}\n\n\tawait helpers.updateSliceMachineConfig(project.config, {\n\t\tformat: options.format,\n\t});\n};\n\nexport const projectInit: ProjectInitHook<PluginOptions> = async (\n\t{ installDependencies: _installDependencies },\n\tcontext,\n) => {\n\trejectIfNecessary(\n\t\tawait Promise.allSettled([\n\t\t\tinstallDependencies({ installDependencies: _installDependencies }),\n\t\t\tconfigurePrismicModule(context),\n\t\t\tcreateSliceSimulatorPage(context),\n\t\t\tmoveOrDeleteAppVue(context),\n\t\t\tmodifySliceMachineConfig(context),\n\t\t]),\n\t);\n};\n"],"names":["installDependencies","checkHasProjectFile","loadFile","builders","writeFile","checkIsTypeScriptProject","path","buildSrcPath","stripIndent","writeProjectFile","readProjectFile","deleteProjectFile","_a","rejectIfNecessary"],"mappings":"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"}
1
+ {"version":3,"file":"project-init.cjs","sources":["../../../src/hooks/project-init.ts"],"sourcesContent":["import * as path from \"node:path\";\nimport type {\n\tProjectInitHook,\n\tProjectInitHookData,\n\tSliceMachineContext,\n} from \"@slicemachine/plugin-kit\";\nimport {\n\tcheckHasProjectFile,\n\tdeleteProjectFile,\n\treadProjectFile,\n\twriteProjectFile,\n} from \"@slicemachine/plugin-kit/fs\";\nimport { stripIndent } from \"common-tags\";\nimport { builders, loadFile, writeFile } from \"magicast\";\n\nimport { buildSrcPath } from \"../lib/buildSrcPath\";\nimport { rejectIfNecessary } from \"../lib/rejectIfNecessary\";\nimport { checkIsTypeScriptProject } from \"../lib/checkIsTypeScriptProject\";\n\nimport type { PluginOptions } from \"../types\";\n\nconst NUXT_PRISMIC = \"@nuxtjs/prismic\";\n\ntype InstallDependenciesArgs = {\n\tinstallDependencies: ProjectInitHookData[\"installDependencies\"];\n};\n\nconst installDependencies = async ({\n\tinstallDependencies,\n}: InstallDependenciesArgs) => {\n\tawait installDependencies({\n\t\tdependencies: {\n\t\t\t[NUXT_PRISMIC]: \"^5.0.0\",\n\t\t},\n\t\tdev: true,\n\t});\n};\n\ntype ConfigurePrismicModuleArgs = SliceMachineContext<PluginOptions>;\n\nconst configurePrismicModule = async ({\n\thelpers,\n}: ConfigurePrismicModuleArgs) => {\n\tlet nuxtConfigFilename = \"nuxt.config.js\";\n\n\tif (!(await checkHasProjectFile({ filename: nuxtConfigFilename, helpers }))) {\n\t\tnuxtConfigFilename = \"nuxt.config.ts\";\n\n\t\t// nuxt.config.* not found\n\t\tif (\n\t\t\t!(await checkHasProjectFile({ filename: nuxtConfigFilename, helpers }))\n\t\t) {\n\t\t\treturn;\n\t\t}\n\t}\n\n\tconst nuxtConfigPath = helpers.joinPathFromRoot(nuxtConfigFilename);\n\n\tconst mod = await loadFile(nuxtConfigPath);\n\tconst config =\n\t\tmod.exports.default.$type === \"function-call\"\n\t\t\t? mod.exports.default.$args[0]\n\t\t\t: mod.exports.default;\n\n\t// Register Prismic module\n\tlet hasInlinedConfiguration = false;\n\tconst hasPrismicModuleRegistered = (config.modules || []).find(\n\t\t(registration: string | [string, unknown]) => {\n\t\t\tif (typeof registration === \"string\") {\n\t\t\t\treturn registration === NUXT_PRISMIC;\n\t\t\t} else if (Array.isArray(registration)) {\n\t\t\t\thasInlinedConfiguration = !!registration[1];\n\n\t\t\t\treturn registration[0] === NUXT_PRISMIC;\n\t\t\t}\n\n\t\t\treturn false;\n\t\t},\n\t);\n\n\tif (!hasPrismicModuleRegistered) {\n\t\tconfig.modules ||= [];\n\t\tconfig.modules.push(NUXT_PRISMIC);\n\t}\n\n\t// Append Prismic module configuration\n\tif (!hasInlinedConfiguration) {\n\t\t// Import Slice Machine configuration\n\t\tmod.imports.$add({\n\t\t\tfrom: \"./slicemachine.config.json\",\n\t\t\timported: \"apiEndpoint\",\n\t\t});\n\t\tmod.imports.$add({\n\t\t\tfrom: \"./slicemachine.config.json\",\n\t\t\timported: \"repositoryName\",\n\t\t});\n\n\t\t// Add inline configuration\n\t\tconfig.prismic ||= {};\n\t\tconfig.prismic.endpoint = builders.raw(\"apiEndpoint || repositoryName\");\n\t}\n\n\tawait writeFile(mod, nuxtConfigPath);\n};\n\ntype CreateSliceSimulatorPageArgs = SliceMachineContext<PluginOptions>;\n\nconst createSliceSimulatorPage = async ({\n\thelpers,\n\toptions,\n}: CreateSliceSimulatorPageArgs) => {\n\tconst isTypeScriptProject = await checkIsTypeScriptProject({\n\t\thelpers,\n\t\toptions,\n\t});\n\n\tconst appPagesDirectoryExists = await checkHasProjectFile({\n\t\tfilename: \"app/pages\",\n\t\thelpers,\n\t});\n\n\tconst srcPagesDirectoryExists = await checkHasProjectFile({\n\t\tfilename: \"src/pages\",\n\t\thelpers,\n\t});\n\n\tconst pagesDirectoryExists = await checkHasProjectFile({\n\t\tfilename: \"pages\",\n\t\thelpers,\n\t});\n\n\tlet filename: string;\n\t// We first give priority to existing `pages` directory, then to `srcDir`\n\t// because there could be conflicts with legacy `app` directory.\n\tif (appPagesDirectoryExists) {\n\t\tfilename = path.join(\"app/pages\", \"slice-simulator.vue\");\n\t} else if (srcPagesDirectoryExists) {\n\t\tfilename = path.join(\"src/pages\", \"slice-simulator.vue\");\n\t} else if (pagesDirectoryExists) {\n\t\tfilename = path.join(\"pages\", \"slice-simulator.vue\");\n\t} else {\n\t\tfilename = await buildSrcPath({\n\t\t\tfilename: path.join(\"pages\", \"slice-simulator.vue\"),\n\t\t\thelpers,\n\t\t});\n\t}\n\n\tif (await checkHasProjectFile({ filename, helpers })) {\n\t\treturn;\n\t}\n\n\tconst scriptAttributes = [\"setup\"];\n\tif (isTypeScriptProject) {\n\t\tscriptAttributes.push('lang=\"ts\"');\n\t}\n\n\tconst contents = stripIndent`\n\t\t<template>\n\t\t\t<SliceSimulator #default=\"{ slices }\">\n\t\t\t\t<SliceZone :slices=\"slices\" :components=\"components\" />\n\t\t\t</SliceSimulator>\n\t\t</template>\n\n\t\t<script ${scriptAttributes.join(\" \")}>\n\t\timport { SliceSimulator } from \"@slicemachine/adapter-nuxt/simulator\";\n\t\timport { components } from \"~/slices\";\n\t\t</script>\n\t`;\n\n\tawait writeProjectFile({\n\t\tfilename,\n\t\tcontents,\n\t\tformat: options.format,\n\t\thelpers,\n\t});\n};\n\nconst moveOrDeleteAppVue = async ({\n\thelpers,\n\toptions,\n}: CreateSliceSimulatorPageArgs) => {\n\tconst filenameAppVue = await buildSrcPath({ filename: \"app.vue\", helpers });\n\n\t// If there's no `app.vue`, there's nothing to do.\n\tif (!(await checkHasProjectFile({ filename: filenameAppVue, helpers }))) {\n\t\treturn;\n\t}\n\n\tconst filecontentAppVue = await readProjectFile({\n\t\tfilename: filenameAppVue,\n\t\thelpers,\n\t\tencoding: \"utf-8\",\n\t});\n\n\t// We check for app.vue to contain Nuxt default welcome component to determine\n\t// if we need to consider it as the default one or not.\n\tif (!filecontentAppVue.includes(\"<NuxtWelcome\")) {\n\t\treturn;\n\t}\n\n\tconst filenameIndexVue = await buildSrcPath({\n\t\tfilename: path.join(\"pages/index.vue\"),\n\t\thelpers,\n\t});\n\n\t// If we don't have an `index.vue` we create one with the content of `app.vue`\n\tif (!(await checkHasProjectFile({ filename: filenameIndexVue, helpers }))) {\n\t\tawait writeProjectFile({\n\t\t\tfilename: filenameIndexVue,\n\t\t\tcontents: filecontentAppVue,\n\t\t\tformat: options.format,\n\t\t\thelpers,\n\t\t});\n\t}\n\n\t// Delete `app.vue`\n\tawait deleteProjectFile({\n\t\tfilename: filenameAppVue,\n\t\thelpers,\n\t});\n};\n\nconst modifySliceMachineConfig = async ({\n\thelpers,\n\toptions,\n\tactions,\n}: SliceMachineContext<PluginOptions>) => {\n\tconst hasAppDirectory = await checkHasProjectFile({\n\t\tfilename: \"app\",\n\t\thelpers,\n\t});\n\tconst hasSrcDirectory = await checkHasProjectFile({\n\t\tfilename: \"src\",\n\t\thelpers,\n\t});\n\tconst project = await helpers.getProject();\n\n\t// Add Slice Simulator URL.\n\tproject.config.localSliceSimulatorURL ||=\n\t\t\"http://localhost:3000/slice-simulator\";\n\n\t// Nest the default Slice Library in the `app` or `src` directory if it\n\t// exists and is empty.\n\tif (\n\t\t(hasAppDirectory || hasSrcDirectory) &&\n\t\tproject.config.libraries &&\n\t\tJSON.stringify(project.config.libraries) === JSON.stringify([\"./slices\"])\n\t) {\n\t\tconst sliceLibrary = await actions.readSliceLibrary({\n\t\t\tlibraryID: project.config.libraries[0],\n\t\t});\n\n\t\tif (sliceLibrary.sliceIDs.length < 1) {\n\t\t\tproject.config.libraries = hasAppDirectory\n\t\t\t\t? [\"./app/slices\"]\n\t\t\t\t: [\"./src/slices\"];\n\t\t}\n\t}\n\n\tawait helpers.updateSliceMachineConfig(project.config, {\n\t\tformat: options.format,\n\t});\n};\n\nexport const projectInit: ProjectInitHook<PluginOptions> = async (\n\t{ installDependencies: _installDependencies },\n\tcontext,\n) => {\n\trejectIfNecessary(\n\t\tawait Promise.allSettled([\n\t\t\tinstallDependencies({ installDependencies: _installDependencies }),\n\t\t\tconfigurePrismicModule(context),\n\t\t\tcreateSliceSimulatorPage(context),\n\t\t\tmoveOrDeleteAppVue(context),\n\t\t\tmodifySliceMachineConfig(context),\n\t\t]),\n\t);\n};\n"],"names":["installDependencies","checkHasProjectFile","loadFile","builders","writeFile","checkIsTypeScriptProject","path","buildSrcPath","stripIndent","writeProjectFile","readProjectFile","deleteProjectFile","_a","rejectIfNecessary"],"mappings":"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"}
@@ -13,7 +13,7 @@ const NUXT_PRISMIC = "@nuxtjs/prismic";
13
13
  const installDependencies = async ({ installDependencies: installDependencies2 }) => {
14
14
  await installDependencies2({
15
15
  dependencies: {
16
- [NUXT_PRISMIC]: "^4.0.0"
16
+ [NUXT_PRISMIC]: "^5.0.0"
17
17
  },
18
18
  dev: true
19
19
  });
@@ -1 +1 @@
1
- {"version":3,"file":"project-init.js","sources":["../../../src/hooks/project-init.ts"],"sourcesContent":["import * as path from \"node:path\";\nimport type {\n\tProjectInitHook,\n\tProjectInitHookData,\n\tSliceMachineContext,\n} from \"@slicemachine/plugin-kit\";\nimport {\n\tcheckHasProjectFile,\n\tdeleteProjectFile,\n\treadProjectFile,\n\twriteProjectFile,\n} from \"@slicemachine/plugin-kit/fs\";\nimport { stripIndent } from \"common-tags\";\nimport { builders, loadFile, writeFile } from \"magicast\";\n\nimport { buildSrcPath } from \"../lib/buildSrcPath\";\nimport { rejectIfNecessary } from \"../lib/rejectIfNecessary\";\nimport { checkIsTypeScriptProject } from \"../lib/checkIsTypeScriptProject\";\n\nimport type { PluginOptions } from \"../types\";\n\nconst NUXT_PRISMIC = \"@nuxtjs/prismic\";\n\ntype InstallDependenciesArgs = {\n\tinstallDependencies: ProjectInitHookData[\"installDependencies\"];\n};\n\nconst installDependencies = async ({\n\tinstallDependencies,\n}: InstallDependenciesArgs) => {\n\tawait installDependencies({\n\t\tdependencies: {\n\t\t\t[NUXT_PRISMIC]: \"^4.0.0\",\n\t\t},\n\t\tdev: true,\n\t});\n};\n\ntype ConfigurePrismicModuleArgs = SliceMachineContext<PluginOptions>;\n\nconst configurePrismicModule = async ({\n\thelpers,\n}: ConfigurePrismicModuleArgs) => {\n\tlet nuxtConfigFilename = \"nuxt.config.js\";\n\n\tif (!(await checkHasProjectFile({ filename: nuxtConfigFilename, helpers }))) {\n\t\tnuxtConfigFilename = \"nuxt.config.ts\";\n\n\t\t// nuxt.config.* not found\n\t\tif (\n\t\t\t!(await checkHasProjectFile({ filename: nuxtConfigFilename, helpers }))\n\t\t) {\n\t\t\treturn;\n\t\t}\n\t}\n\n\tconst nuxtConfigPath = helpers.joinPathFromRoot(nuxtConfigFilename);\n\n\tconst mod = await loadFile(nuxtConfigPath);\n\tconst config =\n\t\tmod.exports.default.$type === \"function-call\"\n\t\t\t? mod.exports.default.$args[0]\n\t\t\t: mod.exports.default;\n\n\t// Register Prismic module\n\tlet hasInlinedConfiguration = false;\n\tconst hasPrismicModuleRegistered = (config.modules || []).find(\n\t\t(registration: string | [string, unknown]) => {\n\t\t\tif (typeof registration === \"string\") {\n\t\t\t\treturn registration === NUXT_PRISMIC;\n\t\t\t} else if (Array.isArray(registration)) {\n\t\t\t\thasInlinedConfiguration = !!registration[1];\n\n\t\t\t\treturn registration[0] === NUXT_PRISMIC;\n\t\t\t}\n\n\t\t\treturn false;\n\t\t},\n\t);\n\n\tif (!hasPrismicModuleRegistered) {\n\t\tconfig.modules ||= [];\n\t\tconfig.modules.push(NUXT_PRISMIC);\n\t}\n\n\t// Append Prismic module configuration\n\tif (!hasInlinedConfiguration) {\n\t\t// Import Slice Machine configuration\n\t\tmod.imports.$add({\n\t\t\tfrom: \"./slicemachine.config.json\",\n\t\t\timported: \"apiEndpoint\",\n\t\t});\n\t\tmod.imports.$add({\n\t\t\tfrom: \"./slicemachine.config.json\",\n\t\t\timported: \"repositoryName\",\n\t\t});\n\n\t\t// Add inline configuration\n\t\tconfig.prismic ||= {};\n\t\tconfig.prismic.endpoint = builders.raw(\"apiEndpoint || repositoryName\");\n\t}\n\n\tawait writeFile(mod, nuxtConfigPath);\n};\n\ntype CreateSliceSimulatorPageArgs = SliceMachineContext<PluginOptions>;\n\nconst createSliceSimulatorPage = async ({\n\thelpers,\n\toptions,\n}: CreateSliceSimulatorPageArgs) => {\n\tconst isTypeScriptProject = await checkIsTypeScriptProject({\n\t\thelpers,\n\t\toptions,\n\t});\n\n\tconst appPagesDirectoryExists = await checkHasProjectFile({\n\t\tfilename: \"app/pages\",\n\t\thelpers,\n\t});\n\n\tconst srcPagesDirectoryExists = await checkHasProjectFile({\n\t\tfilename: \"src/pages\",\n\t\thelpers,\n\t});\n\n\tconst pagesDirectoryExists = await checkHasProjectFile({\n\t\tfilename: \"pages\",\n\t\thelpers,\n\t});\n\n\tlet filename: string;\n\t// We first give priority to existing `pages` directory, then to `srcDir`\n\t// because there could be conflicts with legacy `app` directory.\n\tif (appPagesDirectoryExists) {\n\t\tfilename = path.join(\"app/pages\", \"slice-simulator.vue\");\n\t} else if (srcPagesDirectoryExists) {\n\t\tfilename = path.join(\"src/pages\", \"slice-simulator.vue\");\n\t} else if (pagesDirectoryExists) {\n\t\tfilename = path.join(\"pages\", \"slice-simulator.vue\");\n\t} else {\n\t\tfilename = await buildSrcPath({\n\t\t\tfilename: path.join(\"pages\", \"slice-simulator.vue\"),\n\t\t\thelpers,\n\t\t});\n\t}\n\n\tif (await checkHasProjectFile({ filename, helpers })) {\n\t\treturn;\n\t}\n\n\tconst scriptAttributes = [\"setup\"];\n\tif (isTypeScriptProject) {\n\t\tscriptAttributes.push('lang=\"ts\"');\n\t}\n\n\tconst contents = stripIndent`\n\t\t<template>\n\t\t\t<SliceSimulator #default=\"{ slices }\">\n\t\t\t\t<SliceZone :slices=\"slices\" :components=\"components\" />\n\t\t\t</SliceSimulator>\n\t\t</template>\n\n\t\t<script ${scriptAttributes.join(\" \")}>\n\t\timport { SliceSimulator } from \"@slicemachine/adapter-nuxt/simulator\";\n\t\timport { components } from \"~/slices\";\n\t\t</script>\n\t`;\n\n\tawait writeProjectFile({\n\t\tfilename,\n\t\tcontents,\n\t\tformat: options.format,\n\t\thelpers,\n\t});\n};\n\nconst moveOrDeleteAppVue = async ({\n\thelpers,\n\toptions,\n}: CreateSliceSimulatorPageArgs) => {\n\tconst filenameAppVue = await buildSrcPath({ filename: \"app.vue\", helpers });\n\n\t// If there's no `app.vue`, there's nothing to do.\n\tif (!(await checkHasProjectFile({ filename: filenameAppVue, helpers }))) {\n\t\treturn;\n\t}\n\n\tconst filecontentAppVue = await readProjectFile({\n\t\tfilename: filenameAppVue,\n\t\thelpers,\n\t\tencoding: \"utf-8\",\n\t});\n\n\t// We check for app.vue to contain Nuxt default welcome component to determine\n\t// if we need to consider it as the default one or not.\n\tif (!filecontentAppVue.includes(\"<NuxtWelcome\")) {\n\t\treturn;\n\t}\n\n\tconst filenameIndexVue = await buildSrcPath({\n\t\tfilename: path.join(\"pages/index.vue\"),\n\t\thelpers,\n\t});\n\n\t// If we don't have an `index.vue` we create one with the content of `app.vue`\n\tif (!(await checkHasProjectFile({ filename: filenameIndexVue, helpers }))) {\n\t\tawait writeProjectFile({\n\t\t\tfilename: filenameIndexVue,\n\t\t\tcontents: filecontentAppVue,\n\t\t\tformat: options.format,\n\t\t\thelpers,\n\t\t});\n\t}\n\n\t// Delete `app.vue`\n\tawait deleteProjectFile({\n\t\tfilename: filenameAppVue,\n\t\thelpers,\n\t});\n};\n\nconst modifySliceMachineConfig = async ({\n\thelpers,\n\toptions,\n\tactions,\n}: SliceMachineContext<PluginOptions>) => {\n\tconst hasAppDirectory = await checkHasProjectFile({\n\t\tfilename: \"app\",\n\t\thelpers,\n\t});\n\tconst hasSrcDirectory = await checkHasProjectFile({\n\t\tfilename: \"src\",\n\t\thelpers,\n\t});\n\tconst project = await helpers.getProject();\n\n\t// Add Slice Simulator URL.\n\tproject.config.localSliceSimulatorURL ||=\n\t\t\"http://localhost:3000/slice-simulator\";\n\n\t// Nest the default Slice Library in the `app` or `src` directory if it\n\t// exists and is empty.\n\tif (\n\t\t(hasAppDirectory || hasSrcDirectory) &&\n\t\tproject.config.libraries &&\n\t\tJSON.stringify(project.config.libraries) === JSON.stringify([\"./slices\"])\n\t) {\n\t\tconst sliceLibrary = await actions.readSliceLibrary({\n\t\t\tlibraryID: project.config.libraries[0],\n\t\t});\n\n\t\tif (sliceLibrary.sliceIDs.length < 1) {\n\t\t\tproject.config.libraries = hasAppDirectory\n\t\t\t\t? [\"./app/slices\"]\n\t\t\t\t: [\"./src/slices\"];\n\t\t}\n\t}\n\n\tawait helpers.updateSliceMachineConfig(project.config, {\n\t\tformat: options.format,\n\t});\n};\n\nexport const projectInit: ProjectInitHook<PluginOptions> = async (\n\t{ installDependencies: _installDependencies },\n\tcontext,\n) => {\n\trejectIfNecessary(\n\t\tawait Promise.allSettled([\n\t\t\tinstallDependencies({ installDependencies: _installDependencies }),\n\t\t\tconfigurePrismicModule(context),\n\t\t\tcreateSliceSimulatorPage(context),\n\t\t\tmoveOrDeleteAppVue(context),\n\t\t\tmodifySliceMachineConfig(context),\n\t\t]),\n\t);\n};\n"],"names":["installDependencies","_a"],"mappings":"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"}
1
+ {"version":3,"file":"project-init.js","sources":["../../../src/hooks/project-init.ts"],"sourcesContent":["import * as path from \"node:path\";\nimport type {\n\tProjectInitHook,\n\tProjectInitHookData,\n\tSliceMachineContext,\n} from \"@slicemachine/plugin-kit\";\nimport {\n\tcheckHasProjectFile,\n\tdeleteProjectFile,\n\treadProjectFile,\n\twriteProjectFile,\n} from \"@slicemachine/plugin-kit/fs\";\nimport { stripIndent } from \"common-tags\";\nimport { builders, loadFile, writeFile } from \"magicast\";\n\nimport { buildSrcPath } from \"../lib/buildSrcPath\";\nimport { rejectIfNecessary } from \"../lib/rejectIfNecessary\";\nimport { checkIsTypeScriptProject } from \"../lib/checkIsTypeScriptProject\";\n\nimport type { PluginOptions } from \"../types\";\n\nconst NUXT_PRISMIC = \"@nuxtjs/prismic\";\n\ntype InstallDependenciesArgs = {\n\tinstallDependencies: ProjectInitHookData[\"installDependencies\"];\n};\n\nconst installDependencies = async ({\n\tinstallDependencies,\n}: InstallDependenciesArgs) => {\n\tawait installDependencies({\n\t\tdependencies: {\n\t\t\t[NUXT_PRISMIC]: \"^5.0.0\",\n\t\t},\n\t\tdev: true,\n\t});\n};\n\ntype ConfigurePrismicModuleArgs = SliceMachineContext<PluginOptions>;\n\nconst configurePrismicModule = async ({\n\thelpers,\n}: ConfigurePrismicModuleArgs) => {\n\tlet nuxtConfigFilename = \"nuxt.config.js\";\n\n\tif (!(await checkHasProjectFile({ filename: nuxtConfigFilename, helpers }))) {\n\t\tnuxtConfigFilename = \"nuxt.config.ts\";\n\n\t\t// nuxt.config.* not found\n\t\tif (\n\t\t\t!(await checkHasProjectFile({ filename: nuxtConfigFilename, helpers }))\n\t\t) {\n\t\t\treturn;\n\t\t}\n\t}\n\n\tconst nuxtConfigPath = helpers.joinPathFromRoot(nuxtConfigFilename);\n\n\tconst mod = await loadFile(nuxtConfigPath);\n\tconst config =\n\t\tmod.exports.default.$type === \"function-call\"\n\t\t\t? mod.exports.default.$args[0]\n\t\t\t: mod.exports.default;\n\n\t// Register Prismic module\n\tlet hasInlinedConfiguration = false;\n\tconst hasPrismicModuleRegistered = (config.modules || []).find(\n\t\t(registration: string | [string, unknown]) => {\n\t\t\tif (typeof registration === \"string\") {\n\t\t\t\treturn registration === NUXT_PRISMIC;\n\t\t\t} else if (Array.isArray(registration)) {\n\t\t\t\thasInlinedConfiguration = !!registration[1];\n\n\t\t\t\treturn registration[0] === NUXT_PRISMIC;\n\t\t\t}\n\n\t\t\treturn false;\n\t\t},\n\t);\n\n\tif (!hasPrismicModuleRegistered) {\n\t\tconfig.modules ||= [];\n\t\tconfig.modules.push(NUXT_PRISMIC);\n\t}\n\n\t// Append Prismic module configuration\n\tif (!hasInlinedConfiguration) {\n\t\t// Import Slice Machine configuration\n\t\tmod.imports.$add({\n\t\t\tfrom: \"./slicemachine.config.json\",\n\t\t\timported: \"apiEndpoint\",\n\t\t});\n\t\tmod.imports.$add({\n\t\t\tfrom: \"./slicemachine.config.json\",\n\t\t\timported: \"repositoryName\",\n\t\t});\n\n\t\t// Add inline configuration\n\t\tconfig.prismic ||= {};\n\t\tconfig.prismic.endpoint = builders.raw(\"apiEndpoint || repositoryName\");\n\t}\n\n\tawait writeFile(mod, nuxtConfigPath);\n};\n\ntype CreateSliceSimulatorPageArgs = SliceMachineContext<PluginOptions>;\n\nconst createSliceSimulatorPage = async ({\n\thelpers,\n\toptions,\n}: CreateSliceSimulatorPageArgs) => {\n\tconst isTypeScriptProject = await checkIsTypeScriptProject({\n\t\thelpers,\n\t\toptions,\n\t});\n\n\tconst appPagesDirectoryExists = await checkHasProjectFile({\n\t\tfilename: \"app/pages\",\n\t\thelpers,\n\t});\n\n\tconst srcPagesDirectoryExists = await checkHasProjectFile({\n\t\tfilename: \"src/pages\",\n\t\thelpers,\n\t});\n\n\tconst pagesDirectoryExists = await checkHasProjectFile({\n\t\tfilename: \"pages\",\n\t\thelpers,\n\t});\n\n\tlet filename: string;\n\t// We first give priority to existing `pages` directory, then to `srcDir`\n\t// because there could be conflicts with legacy `app` directory.\n\tif (appPagesDirectoryExists) {\n\t\tfilename = path.join(\"app/pages\", \"slice-simulator.vue\");\n\t} else if (srcPagesDirectoryExists) {\n\t\tfilename = path.join(\"src/pages\", \"slice-simulator.vue\");\n\t} else if (pagesDirectoryExists) {\n\t\tfilename = path.join(\"pages\", \"slice-simulator.vue\");\n\t} else {\n\t\tfilename = await buildSrcPath({\n\t\t\tfilename: path.join(\"pages\", \"slice-simulator.vue\"),\n\t\t\thelpers,\n\t\t});\n\t}\n\n\tif (await checkHasProjectFile({ filename, helpers })) {\n\t\treturn;\n\t}\n\n\tconst scriptAttributes = [\"setup\"];\n\tif (isTypeScriptProject) {\n\t\tscriptAttributes.push('lang=\"ts\"');\n\t}\n\n\tconst contents = stripIndent`\n\t\t<template>\n\t\t\t<SliceSimulator #default=\"{ slices }\">\n\t\t\t\t<SliceZone :slices=\"slices\" :components=\"components\" />\n\t\t\t</SliceSimulator>\n\t\t</template>\n\n\t\t<script ${scriptAttributes.join(\" \")}>\n\t\timport { SliceSimulator } from \"@slicemachine/adapter-nuxt/simulator\";\n\t\timport { components } from \"~/slices\";\n\t\t</script>\n\t`;\n\n\tawait writeProjectFile({\n\t\tfilename,\n\t\tcontents,\n\t\tformat: options.format,\n\t\thelpers,\n\t});\n};\n\nconst moveOrDeleteAppVue = async ({\n\thelpers,\n\toptions,\n}: CreateSliceSimulatorPageArgs) => {\n\tconst filenameAppVue = await buildSrcPath({ filename: \"app.vue\", helpers });\n\n\t// If there's no `app.vue`, there's nothing to do.\n\tif (!(await checkHasProjectFile({ filename: filenameAppVue, helpers }))) {\n\t\treturn;\n\t}\n\n\tconst filecontentAppVue = await readProjectFile({\n\t\tfilename: filenameAppVue,\n\t\thelpers,\n\t\tencoding: \"utf-8\",\n\t});\n\n\t// We check for app.vue to contain Nuxt default welcome component to determine\n\t// if we need to consider it as the default one or not.\n\tif (!filecontentAppVue.includes(\"<NuxtWelcome\")) {\n\t\treturn;\n\t}\n\n\tconst filenameIndexVue = await buildSrcPath({\n\t\tfilename: path.join(\"pages/index.vue\"),\n\t\thelpers,\n\t});\n\n\t// If we don't have an `index.vue` we create one with the content of `app.vue`\n\tif (!(await checkHasProjectFile({ filename: filenameIndexVue, helpers }))) {\n\t\tawait writeProjectFile({\n\t\t\tfilename: filenameIndexVue,\n\t\t\tcontents: filecontentAppVue,\n\t\t\tformat: options.format,\n\t\t\thelpers,\n\t\t});\n\t}\n\n\t// Delete `app.vue`\n\tawait deleteProjectFile({\n\t\tfilename: filenameAppVue,\n\t\thelpers,\n\t});\n};\n\nconst modifySliceMachineConfig = async ({\n\thelpers,\n\toptions,\n\tactions,\n}: SliceMachineContext<PluginOptions>) => {\n\tconst hasAppDirectory = await checkHasProjectFile({\n\t\tfilename: \"app\",\n\t\thelpers,\n\t});\n\tconst hasSrcDirectory = await checkHasProjectFile({\n\t\tfilename: \"src\",\n\t\thelpers,\n\t});\n\tconst project = await helpers.getProject();\n\n\t// Add Slice Simulator URL.\n\tproject.config.localSliceSimulatorURL ||=\n\t\t\"http://localhost:3000/slice-simulator\";\n\n\t// Nest the default Slice Library in the `app` or `src` directory if it\n\t// exists and is empty.\n\tif (\n\t\t(hasAppDirectory || hasSrcDirectory) &&\n\t\tproject.config.libraries &&\n\t\tJSON.stringify(project.config.libraries) === JSON.stringify([\"./slices\"])\n\t) {\n\t\tconst sliceLibrary = await actions.readSliceLibrary({\n\t\t\tlibraryID: project.config.libraries[0],\n\t\t});\n\n\t\tif (sliceLibrary.sliceIDs.length < 1) {\n\t\t\tproject.config.libraries = hasAppDirectory\n\t\t\t\t? [\"./app/slices\"]\n\t\t\t\t: [\"./src/slices\"];\n\t\t}\n\t}\n\n\tawait helpers.updateSliceMachineConfig(project.config, {\n\t\tformat: options.format,\n\t});\n};\n\nexport const projectInit: ProjectInitHook<PluginOptions> = async (\n\t{ installDependencies: _installDependencies },\n\tcontext,\n) => {\n\trejectIfNecessary(\n\t\tawait Promise.allSettled([\n\t\t\tinstallDependencies({ installDependencies: _installDependencies }),\n\t\t\tconfigurePrismicModule(context),\n\t\t\tcreateSliceSimulatorPage(context),\n\t\t\tmoveOrDeleteAppVue(context),\n\t\t\tmodifySliceMachineConfig(context),\n\t\t]),\n\t);\n};\n"],"names":["installDependencies","_a"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@slicemachine/adapter-nuxt",
3
- "version": "0.3.93-alpha.lh-nuxt-v5.2",
3
+ "version": "0.3.93-beta.2",
4
4
  "description": "Slice Machine adapter for Nuxt.",
5
5
  "keywords": [
6
6
  "typescript",
@@ -61,7 +61,7 @@
61
61
  "dependencies": {
62
62
  "@prismicio/simulator": "^0.1.4",
63
63
  "@prismicio/types-internal": "3.11.2",
64
- "@slicemachine/plugin-kit": "0.4.91-alpha.lh-nuxt-v5.2",
64
+ "@slicemachine/plugin-kit": "0.4.91-beta.2",
65
65
  "common-tags": "^1.8.2",
66
66
  "fp-ts": "^2.13.1",
67
67
  "io-ts": "^2.2.20",
@@ -30,7 +30,7 @@ const installDependencies = async ({
30
30
  }: InstallDependenciesArgs) => {
31
31
  await installDependencies({
32
32
  dependencies: {
33
- [NUXT_PRISMIC]: "^4.0.0",
33
+ [NUXT_PRISMIC]: "^5.0.0",
34
34
  },
35
35
  dev: true,
36
36
  });