@slicemachine/adapter-next 0.0.1 → 0.0.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.
- package/dist/SliceSimulator.cjs +93 -0
- package/dist/SliceSimulator.cjs.map +1 -0
- package/dist/SliceSimulator.d.ts +29 -0
- package/dist/SliceSimulator.js +74 -0
- package/dist/SliceSimulator.js.map +1 -0
- package/dist/hooks/customType-asset-delete.cjs +28 -0
- package/dist/hooks/customType-asset-delete.cjs.map +1 -0
- package/dist/hooks/customType-asset-delete.d.ts +3 -0
- package/dist/hooks/customType-asset-delete.js +9 -0
- package/dist/hooks/customType-asset-delete.js.map +1 -0
- package/dist/hooks/customType-asset-read.cjs +31 -0
- package/dist/hooks/customType-asset-read.cjs.map +1 -0
- package/dist/hooks/customType-asset-read.d.ts +3 -0
- package/dist/hooks/customType-asset-read.js +12 -0
- package/dist/hooks/customType-asset-read.js.map +1 -0
- package/dist/hooks/customType-asset-update.cjs +31 -0
- package/dist/hooks/customType-asset-update.cjs.map +1 -0
- package/dist/hooks/customType-asset-update.d.ts +3 -0
- package/dist/hooks/customType-asset-update.js +11 -0
- package/dist/hooks/customType-asset-update.js.map +1 -0
- package/dist/hooks/customType-create.cjs +41 -0
- package/dist/hooks/customType-create.cjs.map +1 -0
- package/dist/hooks/customType-create.d.ts +3 -0
- package/dist/hooks/customType-create.js +21 -0
- package/dist/hooks/customType-create.js.map +1 -0
- package/dist/hooks/customType-delete.cjs +30 -0
- package/dist/hooks/customType-delete.cjs.map +1 -0
- package/dist/hooks/customType-delete.d.ts +3 -0
- package/dist/hooks/customType-delete.js +11 -0
- package/dist/hooks/customType-delete.js.map +1 -0
- package/dist/hooks/customType-read.cjs +12 -0
- package/dist/hooks/customType-read.cjs.map +1 -0
- package/dist/hooks/customType-read.d.ts +3 -0
- package/dist/hooks/customType-read.js +12 -0
- package/dist/hooks/customType-read.js.map +1 -0
- package/dist/hooks/customType-update.cjs +6 -0
- package/dist/hooks/customType-update.cjs.map +1 -0
- package/dist/hooks/customType-update.d.ts +1 -0
- package/dist/hooks/customType-update.js +6 -0
- package/dist/hooks/customType-update.js.map +1 -0
- package/dist/hooks/customTypeLibrary-read.cjs +46 -0
- package/dist/hooks/customTypeLibrary-read.cjs.map +1 -0
- package/dist/hooks/customTypeLibrary-read.d.ts +3 -0
- package/dist/hooks/customTypeLibrary-read.js +26 -0
- package/dist/hooks/customTypeLibrary-read.js.map +1 -0
- package/dist/hooks/slice-asset-delete.cjs +29 -0
- package/dist/hooks/slice-asset-delete.cjs.map +1 -0
- package/dist/hooks/slice-asset-delete.d.ts +3 -0
- package/dist/hooks/slice-asset-delete.js +10 -0
- package/dist/hooks/slice-asset-delete.js.map +1 -0
- package/dist/hooks/slice-asset-read.cjs +32 -0
- package/dist/hooks/slice-asset-read.cjs.map +1 -0
- package/dist/hooks/slice-asset-read.d.ts +3 -0
- package/dist/hooks/slice-asset-read.js +13 -0
- package/dist/hooks/slice-asset-read.js.map +1 -0
- package/dist/hooks/slice-asset-update.cjs +32 -0
- package/dist/hooks/slice-asset-update.cjs.map +1 -0
- package/dist/hooks/slice-asset-update.d.ts +3 -0
- package/dist/hooks/slice-asset-update.js +12 -0
- package/dist/hooks/slice-asset-update.js.map +1 -0
- package/dist/hooks/slice-create.cjs +119 -0
- package/dist/hooks/slice-create.cjs.map +1 -0
- package/dist/hooks/slice-create.d.ts +3 -0
- package/dist/hooks/slice-create.js +99 -0
- package/dist/hooks/slice-create.js.map +1 -0
- package/dist/hooks/slice-delete.cjs +49 -0
- package/dist/hooks/slice-delete.cjs.map +1 -0
- package/dist/hooks/slice-delete.d.ts +3 -0
- package/dist/hooks/slice-delete.js +30 -0
- package/dist/hooks/slice-delete.js.map +1 -0
- package/dist/hooks/slice-read.cjs +13 -0
- package/dist/hooks/slice-read.cjs.map +1 -0
- package/dist/hooks/slice-read.d.ts +3 -0
- package/dist/hooks/slice-read.js +13 -0
- package/dist/hooks/slice-read.js.map +1 -0
- package/dist/hooks/slice-update.cjs +41 -0
- package/dist/hooks/slice-update.cjs.map +1 -0
- package/dist/hooks/slice-update.d.ts +3 -0
- package/dist/hooks/slice-update.js +21 -0
- package/dist/hooks/slice-update.js.map +1 -0
- package/dist/hooks/sliceLibrary-read.cjs +52 -0
- package/dist/hooks/sliceLibrary-read.cjs.map +1 -0
- package/dist/hooks/sliceLibrary-read.d.ts +3 -0
- package/dist/hooks/sliceLibrary-read.js +31 -0
- package/dist/hooks/sliceLibrary-read.js.map +1 -0
- package/dist/hooks/sliceSimulator-setup-read.cjs +217 -0
- package/dist/hooks/sliceSimulator-setup-read.cjs.map +1 -0
- package/dist/hooks/sliceSimulator-setup-read.d.ts +3 -0
- package/dist/hooks/sliceSimulator-setup-read.js +198 -0
- package/dist/hooks/sliceSimulator-setup-read.js.map +1 -0
- package/dist/hooks/snippet-read.cjs +96 -0
- package/dist/hooks/snippet-read.cjs.map +1 -0
- package/dist/hooks/snippet-read.d.ts +3 -0
- package/dist/hooks/snippet-read.js +77 -0
- package/dist/hooks/snippet-read.js.map +1 -0
- package/dist/index.cjs +6 -698
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +5 -45
- package/dist/index.js +6 -669
- package/dist/index.js.map +1 -1
- package/dist/lib/buildSliceLibraryIndexFileContents.cjs +23 -0
- package/dist/lib/buildSliceLibraryIndexFileContents.cjs.map +1 -0
- package/dist/lib/buildSliceLibraryIndexFileContents.d.ts +10 -0
- package/dist/lib/buildSliceLibraryIndexFileContents.js +23 -0
- package/dist/lib/buildSliceLibraryIndexFileContents.js.map +1 -0
- package/dist/lib/getJSOrTSXFileExtension.cjs +13 -0
- package/dist/lib/getJSOrTSXFileExtension.cjs.map +1 -0
- package/dist/lib/getJSOrTSXFileExtension.d.ts +2 -0
- package/dist/lib/getJSOrTSXFileExtension.js +13 -0
- package/dist/lib/getJSOrTSXFileExtension.js.map +1 -0
- package/dist/lib/pascalCase.cjs +8 -0
- package/dist/lib/pascalCase.cjs.map +1 -0
- package/dist/lib/pascalCase.d.ts +8 -0
- package/dist/lib/pascalCase.js +8 -0
- package/dist/lib/pascalCase.js.map +1 -0
- package/dist/lib/readJSONFile.cjs +28 -0
- package/dist/lib/readJSONFile.cjs.map +1 -0
- package/dist/lib/readJSONFile.d.ts +1 -0
- package/dist/lib/readJSONFile.js +9 -0
- package/dist/lib/readJSONFile.js.map +1 -0
- package/dist/lib/rejectIfNecessary.cjs +10 -0
- package/dist/lib/rejectIfNecessary.cjs.map +1 -0
- package/dist/lib/rejectIfNecessary.d.ts +1 -0
- package/dist/lib/rejectIfNecessary.js +10 -0
- package/dist/lib/rejectIfNecessary.js.map +1 -0
- package/dist/lib/upsertGlobalContentTypes.cjs +53 -0
- package/dist/lib/upsertGlobalContentTypes.cjs.map +1 -0
- package/dist/lib/upsertGlobalContentTypes.d.ts +12 -0
- package/dist/lib/upsertGlobalContentTypes.js +33 -0
- package/dist/lib/upsertGlobalContentTypes.js.map +1 -0
- package/dist/package.cjs +5 -0
- package/dist/package.cjs.map +1 -0
- package/dist/package.js +5 -0
- package/dist/package.js.map +1 -0
- package/dist/plugin.cjs +52 -0
- package/dist/plugin.cjs.map +1 -0
- package/dist/plugin.d.ts +2 -0
- package/dist/plugin.js +52 -0
- package/dist/plugin.js.map +1 -0
- package/dist/types.d.ts +9 -0
- package/package.json +26 -23
- package/src/hooks/customType-asset-delete.ts +16 -0
- package/src/hooks/customType-asset-read.ts +20 -0
- package/src/hooks/customType-asset-update.ts +18 -0
- package/src/hooks/customType-create.ts +5 -20
- package/src/hooks/customType-delete.ts +6 -2
- package/src/hooks/customType-read.ts +5 -1
- package/src/hooks/{customType-library-read.ts → customTypeLibrary-read.ts} +3 -0
- package/src/hooks/slice-asset-delete.ts +19 -0
- package/src/hooks/slice-asset-read.ts +23 -0
- package/src/hooks/slice-asset-update.ts +21 -0
- package/src/hooks/slice-create.ts +14 -21
- package/src/hooks/slice-delete.ts +9 -1
- package/src/hooks/slice-read.ts +5 -1
- package/src/hooks/slice-update.ts +4 -19
- package/src/hooks/{slice-library-read.ts → sliceLibrary-read.ts} +3 -0
- package/src/lib/rejectIfNecessary.ts +16 -0
- package/src/lib/upsertGlobalContentTypes.ts +59 -0
- package/src/plugin.ts +20 -8
package/dist/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","sources":["../src/lib/pascalCase.ts","../src/lib/buildSliceLibraryIndexFileContents.ts","../src/lib/getJSOrTSXFileExtension.ts","../src/hooks/slice-create.ts","../src/hooks/slice-update.ts","../src/hooks/slice-delete.ts","../src/lib/readJSONFile.ts","../src/hooks/slice-read.ts","../node_modules/@prismicio/types/dist/index.js","../src/hooks/slice-library-read.ts","../src/hooks/customType-create.ts","../src/hooks/customType-update.ts","../src/hooks/customType-delete.ts","../src/hooks/customType-read.ts","../src/hooks/customType-library-read.ts","../src/hooks/snippet-read.ts","../src/hooks/sliceSimulator-setup-read.ts","../src/plugin.ts","../src/SliceSimulator.tsx"],"sourcesContent":["import { pascalCase as basePascalCase } from \"pascal-case\";\n\n/**\n * Converts a string to a Pascal cased string.\n *\n * @param input - String to convert into a Pascal cased string.\n *\n * @returns Pascal cased string version of `input`.\n */\nexport const pascalCase = (...input: (string | undefined)[]): string => {\n\treturn basePascalCase(input.filter(Boolean).join(\" \"));\n};\n","import { SliceMachineContext } from \"@slicemachine/plugin-kit\";\nimport { stripIndent } from \"common-tags\";\n\nimport { PluginOptions } from \"../types\";\n\nimport { pascalCase } from \"./pascalCase\";\n\ntype BuildSliceLibraryIndexFileContentsArgs = {\n\tlibraryID: string;\n} & SliceMachineContext<PluginOptions>;\n\nexport const buildSliceLibraryIndexFileContents = async (\n\targs: BuildSliceLibraryIndexFileContentsArgs,\n): Promise<{ filePath: string; contents: string }> => {\n\tconst filePath = args.helpers.joinPathFromRoot(\n\t\targs.libraryID,\n\t\targs.options.typescript ? \"index.ts\" : \"index.js\",\n\t);\n\tconst sliceLibrary = await args.actions.readSliceLibrary({\n\t\tlibraryID: args.libraryID,\n\t});\n\n\tlet contents = stripIndent`\n\t\timport dynamic from 'next/dynamic'\n\n\t\texport const components = {\n\t\t\t${sliceLibrary.sliceIDs.map(\n\t\t\t\t(id) => `${id}: dynamic(() => import('./${pascalCase(id)}')),`,\n\t\t\t)}\n\t\t}\n\t`;\n\n\tif (args.options.format) {\n\t\tcontents = await args.helpers.format(contents, filePath);\n\t}\n\n\treturn { filePath, contents };\n};\n","import type { PluginOptions } from \"../types\";\n\nexport const getJSOrTSXFileExtension = (\n\tpluginOptions: PluginOptions,\n): string => {\n\tif (pluginOptions.typescript) {\n\t\treturn \"tsx\";\n\t} else if (pluginOptions.jsxExtension) {\n\t\treturn \"jsx\";\n\t} else {\n\t\treturn \"js\";\n\t}\n};\n","import type {\n\tSliceCreateHook,\n\tSliceCreateHookData,\n\tSliceMachineContext,\n} from \"@slicemachine/plugin-kit\";\nimport { generateTypes } from \"prismic-ts-codegen\";\nimport { stripIndent } from \"common-tags\";\nimport * as fs from \"node:fs/promises\";\nimport * as path from \"node:path\";\n\nimport { buildSliceLibraryIndexFileContents } from \"../lib/buildSliceLibraryIndexFileContents\";\nimport { getJSOrTSXFileExtension } from \"../lib/getJSOrTSXFileExtension\";\nimport { pascalCase } from \"../lib/pascalCase\";\n\nimport type { PluginOptions } from \"../types\";\n\ntype Args = {\n\tdir: string;\n\tdata: SliceCreateHookData;\n} & SliceMachineContext<PluginOptions>;\n\nconst createModelFile = async ({ dir, data, helpers, options }: Args) => {\n\tconst filePath = path.join(dir, \"model.json\");\n\n\tlet contents = JSON.stringify(data.model);\n\n\tif (options.format) {\n\t\tcontents = await helpers.format(contents, filePath);\n\t}\n\n\tawait fs.writeFile(filePath, contents);\n};\n\nconst createComponentFile = async ({ dir, data, helpers, options }: Args) => {\n\tconst filePath = path.join(dir, `index.${getJSOrTSXFileExtension(options)}`);\n\tconst model = data.model;\n\tconst pascalID = pascalCase(model.id);\n\n\tlet contents: string;\n\n\tif (options.typescript) {\n\t\tcontents = stripIndent`\n\t\t\timport { SliceComponentProps } from \"@prismicio/react\";\n\t\t\timport { ${pascalID}Slice } from \"./types\";\n\n\t\t\t/**\n\t\t\t * Props for \\`${pascalID}\\`.\n\t\t\t */\n\t\t\texport type ${pascalID}Props = SliceComponentProps<${pascalID}Slice>;\n\n\t\t\t/**\n\t\t\t * Component for \"${model.name}\" Slices.\n\t\t\t */\n\t\t\tconst ${pascalID} = ({ slice }: ${pascalID}Props): React.Element => {\n\t\t\t\treturn (\n\t\t\t\t\t<section\n\t\t\t\t\t\tdata-slice-type={slice.slice_type}\n\t\t\t\t\t\tdata-slice-variation={slice.variation}\n\t\t\t\t\t>\n\t\t\t\t\t\tPlaceholder component for ${model.id} (variation: {slice.variation}) Slices\n\t\t\t\t\t</section>\n\t\t\t\t);\n\t\t\t};\n\n\t\t\texport default ${pascalID}\n\t\t`;\n\t} else {\n\t\tcontents = stripIndent`\n\t\t\t/**\n\t\t\t * @typedef {import(\"./types\").${pascalID}Slice} ${pascalID}Slice\n\t\t\t * @typedef {import(\"@prismicio/react\").SliceComponentProps<${pascalID}Slice>} ${pascalID}Props\n\t\t\t * @param {${pascalID}Props}\n\t\t\t */\n\t\t\tconst ${pascalID} = ({ slice }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<section\n\t\t\t\t\t\tdata-slice-type={slice.slice_type}\n\t\t\t\t\t\tdata-slice-variation={slice.variation}\n\t\t\t\t\t>\n\t\t\t\t\t\tPlaceholder component for ${model.id} (variation: {slice.variation}) Slices\n\t\t\t\t\t</section>\n\t\t\t\t);\n\t\t\t};\n\n\t\t\texport default ${pascalID};\n\t\t`;\n\t}\n\n\tif (options.format) {\n\t\tcontents = await helpers.format(contents, filePath);\n\t}\n\n\tawait fs.writeFile(filePath, contents);\n};\n\nconst createTypesFile = async ({ dir, data, helpers, options }: Args) => {\n\tconst filePath = path.join(dir, \"types.ts\");\n\n\tlet contents = generateTypes({\n\t\tsharedSliceModels: [data.model],\n\t});\n\n\tif (options.format) {\n\t\tcontents = await helpers.format(contents, filePath);\n\t}\n\n\tawait fs.writeFile(filePath, contents);\n};\n\nconst upsertSliceLibraryIndexFile = async ({\n\tdata,\n\tactions,\n\thelpers,\n\tproject,\n\toptions,\n}: Omit<Args, \"dir\">) => {\n\tconst { filePath, contents } = await buildSliceLibraryIndexFileContents({\n\t\tlibraryID: data.libraryID,\n\t\tactions,\n\t\thelpers,\n\t\tproject,\n\t\toptions,\n\t});\n\n\tawait fs.writeFile(filePath, contents);\n};\n\nexport const sliceCreate: SliceCreateHook<PluginOptions> = async (\n\tdata,\n\tcontext,\n) => {\n\tconst dir = context.helpers.joinPathFromRoot(\n\t\tdata.libraryID,\n\t\tpascalCase(data.model.id),\n\t);\n\n\tawait fs.mkdir(dir, { recursive: true });\n\n\tawait Promise.allSettled([\n\t\tcreateModelFile({ dir, data, ...context }),\n\t\tcreateComponentFile({ dir, data, ...context }),\n\t\tcreateTypesFile({ dir, data, ...context }),\n\t]);\n\n\tawait upsertSliceLibraryIndexFile({ data, ...context });\n};\n","import type {\n\tSliceMachineContext,\n\tSliceUpdateHook,\n\tSliceUpdateHookData,\n} from \"@slicemachine/plugin-kit\";\nimport { generateTypes } from \"prismic-ts-codegen\";\nimport * as fs from \"node:fs/promises\";\nimport * as path from \"node:path\";\n\nimport { pascalCase } from \"../lib/pascalCase\";\n\nimport type { PluginOptions } from \"../types\";\n\ntype Args = {\n\tdir: string;\n\tdata: SliceUpdateHookData;\n} & SliceMachineContext<PluginOptions>;\n\nconst updateModelFile = async ({ dir, data, helpers, options }: Args) => {\n\tconst filePath = path.join(dir, \"model.json\");\n\n\tlet contents = JSON.stringify(data.model);\n\n\tif (options.format) {\n\t\tcontents = await helpers.format(contents, filePath);\n\t}\n\n\tawait fs.writeFile(filePath, contents);\n};\n\nconst updateTypesFile = async ({ dir, data, helpers, options }: Args) => {\n\tconst filePath = path.join(dir, \"types.ts\");\n\n\tlet contents = generateTypes({\n\t\tsharedSliceModels: [data.model],\n\t});\n\n\tif (options.format) {\n\t\tcontents = await helpers.format(contents, filePath);\n\t}\n\n\tawait fs.writeFile(filePath, contents);\n};\n\nexport const sliceUpdate: SliceUpdateHook<PluginOptions> = async (\n\tdata,\n\tcontext,\n) => {\n\tconst dir = context.helpers.joinPathFromRoot(\n\t\tdata.libraryID,\n\t\tpascalCase(data.model.id),\n\t);\n\n\tawait Promise.allSettled([\n\t\tupdateModelFile({ dir, data, ...context }),\n\t\tupdateTypesFile({ dir, data, ...context }),\n\t]);\n};\n","import type {\n\tSliceDeleteHook,\n\tSliceDeleteHookData,\n\tSliceMachineContext,\n} from \"@slicemachine/plugin-kit\";\nimport * as fs from \"node:fs/promises\";\n\nimport { buildSliceLibraryIndexFileContents } from \"../lib/buildSliceLibraryIndexFileContents\";\nimport { pascalCase } from \"../lib/pascalCase\";\n\nimport type { PluginOptions } from \"../types\";\n\ntype Args = {\n\tdata: SliceDeleteHookData;\n} & SliceMachineContext<PluginOptions>;\n\nconst deleteSliceDir = async ({ data, helpers }: Args) => {\n\tconst dir = helpers.joinPathFromRoot(\n\t\tdata.libraryID,\n\t\tpascalCase(data.model.id),\n\t);\n\n\tawait fs.rm(dir, { recursive: true });\n};\n\nconst updateSliceLibraryIndexFile = async ({\n\tdata,\n\tactions,\n\thelpers,\n\tproject,\n\toptions,\n}: Args) => {\n\tconst { filePath, contents } = await buildSliceLibraryIndexFileContents({\n\t\tlibraryID: data.libraryID,\n\t\tactions,\n\t\thelpers,\n\t\tproject,\n\t\toptions,\n\t});\n\n\tawait fs.writeFile(filePath, contents);\n};\n\nexport const sliceDelete: SliceDeleteHook<PluginOptions> = async (\n\tdata,\n\tcontext,\n) => {\n\tawait deleteSliceDir({ data, ...context });\n\tawait updateSliceLibraryIndexFile({ data, ...context });\n};\n","import * as fs from \"node:fs/promises\";\n\nexport const readJSONFile = async <T = unknown>(path: string): Promise<T> => {\n\tconst contents = await fs.readFile(path, \"utf8\");\n\n\treturn JSON.parse(contents);\n};\n","import type { SliceReadHook } from \"@slicemachine/plugin-kit\";\nimport * as prismicT from \"@prismicio/types\";\n\nimport { readJSONFile } from \"../lib/readJSONFile\";\nimport { pascalCase } from \"../lib/pascalCase\";\n\nimport type { PluginOptions } from \"../types\";\n\nexport const sliceRead: SliceReadHook<PluginOptions> = async (\n\tdata,\n\t{ helpers },\n) => {\n\tconst filePath = helpers.joinPathFromRoot(\n\t\tdata.libraryID,\n\t\tpascalCase(data.sliceID),\n\t\t\"model.json\",\n\t);\n\n\treturn await readJSONFile<prismicT.SharedSliceModel>(filePath);\n};\n","const RichTextNodeType = {\n heading1: \"heading1\",\n heading2: \"heading2\",\n heading3: \"heading3\",\n heading4: \"heading4\",\n heading5: \"heading5\",\n heading6: \"heading6\",\n paragraph: \"paragraph\",\n preformatted: \"preformatted\",\n strong: \"strong\",\n em: \"em\",\n listItem: \"list-item\",\n oListItem: \"o-list-item\",\n list: \"group-list-item\",\n oList: \"group-o-list-item\",\n image: \"image\",\n embed: \"embed\",\n hyperlink: \"hyperlink\",\n label: \"label\",\n span: \"span\"\n};\nconst LinkType = {\n Any: \"Any\",\n Document: \"Document\",\n Media: \"Media\",\n Web: \"Web\"\n};\nconst OEmbedType = {\n Photo: \"photo\",\n Video: \"video\",\n Link: \"link\",\n Rich: \"rich\"\n};\n\nconst CustomTypeModelFieldType = {\n Boolean: \"Boolean\",\n Color: \"Color\",\n Date: \"Date\",\n Embed: \"Embed\",\n GeoPoint: \"GeoPoint\",\n Group: \"Group\",\n Image: \"Image\",\n IntegrationFields: \"IntegrationFields\",\n Link: \"Link\",\n Number: \"Number\",\n Select: \"Select\",\n Slices: \"Slices\",\n StructuredText: \"StructuredText\",\n Text: \"Text\",\n Timestamp: \"Timestamp\",\n UID: \"UID\",\n Range: \"Range\",\n Separator: \"Separator\",\n LegacySlices: \"Choice\"\n};\nconst CustomTypeModelLinkSelectType = {\n Document: \"document\",\n Media: \"media\",\n Web: \"web\"\n};\nconst CustomTypeModelSliceDisplay = {\n List: \"list\",\n Grid: \"grid\"\n};\nconst CustomTypeModelSliceType = {\n Slice: \"Slice\",\n SharedSlice: \"SharedSlice\"\n};\n\nconst WebhookType = {\n APIUpdate: \"api-update\",\n TestTrigger: \"test-trigger\"\n};\n\nconst EmbedType = OEmbedType;\n\nexport { CustomTypeModelFieldType, CustomTypeModelLinkSelectType, CustomTypeModelSliceDisplay, CustomTypeModelSliceType, EmbedType, LinkType, OEmbedType, RichTextNodeType, WebhookType };\n//# sourceMappingURL=index.js.map\n","import type { SliceLibraryReadHook } from \"@slicemachine/plugin-kit\";\nimport * as prismicT from \"@prismicio/types\";\nimport * as fs from \"node:fs/promises\";\nimport * as path from \"node:path\";\n\nimport { readJSONFile } from \"../lib/readJSONFile\";\n\nimport type { PluginOptions } from \"../types\";\n\nconst isSharedSliceModel = (\n\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\tinput: any,\n): input is prismicT.SharedSliceModel => {\n\treturn (\n\t\ttypeof input === \"object\" &&\n\t\tinput !== null &&\n\t\t\"type\" in input &&\n\t\tinput.type === prismicT.CustomTypeModelSliceType.SharedSlice\n\t);\n};\n\nexport const sliceLibraryRead: SliceLibraryReadHook<PluginOptions> = async (\n\tdata,\n\t{ helpers },\n) => {\n\tconst dirPath = helpers.joinPathFromRoot(data.libraryID);\n\n\tconst childDirs = await fs.readdir(dirPath);\n\n\tconst sliceIDs: string[] = [];\n\tawait Promise.all(\n\t\tchildDirs.map(async (childDir) => {\n\t\t\tconst modelPath = path.join(dirPath, childDir, \"model.json\");\n\n\t\t\ttry {\n\t\t\t\tconst modelContents = await readJSONFile(modelPath);\n\n\t\t\t\tif (isSharedSliceModel(modelContents)) {\n\t\t\t\t\tsliceIDs.push(modelContents.id);\n\t\t\t\t}\n\t\t\t} catch {\n\t\t\t\t// noop\n\t\t\t}\n\t\t}),\n\t);\n\n\treturn {\n\t\tid: data.libraryID,\n\t\tsliceIDs: sliceIDs.sort(),\n\t};\n};\n","import type {\n\tCustomTypeCreateHook,\n\tCustomTypeCreateHookData,\n\tSliceMachineContext,\n} from \"@slicemachine/plugin-kit\";\nimport { generateTypes } from \"prismic-ts-codegen\";\nimport * as fs from \"node:fs/promises\";\nimport * as path from \"node:path\";\n\nimport type { PluginOptions } from \"../types\";\n\ntype Args = {\n\tdir: string;\n\tdata: CustomTypeCreateHookData;\n} & SliceMachineContext<PluginOptions>;\n\nconst createModelFile = async ({ dir, data, helpers, options }: Args) => {\n\tconst filePath = path.join(dir, \"index.json\");\n\n\tlet contents = JSON.stringify(data.model);\n\n\tif (options.format) {\n\t\tcontents = await helpers.format(contents, filePath);\n\t}\n\n\tawait fs.writeFile(filePath, contents);\n};\n\nconst createTypesFile = async ({ dir, data, helpers, options }: Args) => {\n\tconst filePath = path.join(dir, \"types.ts\");\n\n\t// TODO: Figure out how to import Shared Slice types\n\tlet contents = generateTypes({\n\t\tcustomTypeModels: [data.model],\n\t});\n\n\tif (options.format) {\n\t\tcontents = await helpers.format(contents, filePath);\n\t}\n\n\tawait fs.writeFile(filePath, contents);\n};\n\nexport const customTypeCreate: CustomTypeCreateHook<PluginOptions> = async (\n\tdata,\n\tcontext,\n) => {\n\tconst dir = context.helpers.joinPathFromRoot(\"customtypes\", data.model.id);\n\n\tawait fs.mkdir(dir, { recursive: true });\n\n\tawait Promise.allSettled([\n\t\tcreateModelFile({ dir, data, ...context }),\n\t\tcreateTypesFile({ dir, data, ...context }),\n\t]);\n};\n","import { customTypeCreate } from \"./customType-create\";\n\nexport const customTypeUpdate = customTypeCreate;\n","import type { CustomTypeDeleteHook } from \"@slicemachine/plugin-kit\";\nimport * as fs from \"node:fs/promises\";\n\nimport type { PluginOptions } from \"../types\";\n\nexport const customTypeDelete: CustomTypeDeleteHook<PluginOptions> = async (\n\tdata,\n\t{ helpers },\n) => {\n\tconst dir = helpers.joinPathFromRoot(\"customtypes\", data.model.id);\n\n\tawait fs.rm(dir, { recursive: true });\n};\n","import type { CustomTypeReadHook } from \"@slicemachine/plugin-kit\";\nimport * as prismicT from \"@prismicio/types\";\n\nimport { readJSONFile } from \"../lib/readJSONFile\";\n\nimport type { PluginOptions } from \"../types\";\n\nexport const customTypeRead: CustomTypeReadHook<PluginOptions> = async (\n\tdata,\n\t{ helpers },\n) => {\n\tconst filePath = helpers.joinPathFromRoot(\n\t\t\"customtypes\",\n\t\tdata.id,\n\t\t\"index.json\",\n\t);\n\n\treturn await readJSONFile<prismicT.CustomTypeModel>(filePath);\n};\n","import type { CustomTypeLibraryReadHook } from \"@slicemachine/plugin-kit\";\nimport * as prismicT from \"@prismicio/types\";\nimport * as fs from \"node:fs/promises\";\nimport * as path from \"node:path\";\n\nimport { readJSONFile } from \"../lib/readJSONFile\";\n\nimport type { PluginOptions } from \"../types\";\n\nconst isCustomTypeModel = (\n\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\tinput: any,\n): input is prismicT.CustomTypeModel => {\n\treturn typeof input === \"object\" && input !== null && \"json\" in input;\n};\n\nexport const customTypeLibraryRead: CustomTypeLibraryReadHook<\n\tPluginOptions\n> = async (_data, { helpers }) => {\n\tconst dirPath = helpers.joinPathFromRoot(\"customtypes\");\n\n\tconst childDirs = await fs.readdir(dirPath);\n\n\tconst ids: string[] = [];\n\tawait Promise.all(\n\t\tchildDirs.map(async (childDir) => {\n\t\t\tconst modelPath = path.join(dirPath, childDir, \"index.json\");\n\n\t\t\tconst modelContents = await readJSONFile(modelPath);\n\n\t\t\tif (isCustomTypeModel(modelContents)) {\n\t\t\t\tids.push(modelContents.id);\n\t\t\t}\n\t\t}),\n\t);\n\n\treturn {\n\t\tids: ids.sort(),\n\t};\n};\n","import type { SnippetReadHook } from \"@slicemachine/plugin-kit\";\nimport * as prismicT from \"@prismicio/types\";\nimport { stripIndent } from \"common-tags\";\nimport type { Config as PrettierConfig } from \"prettier\";\n\nimport type { PluginOptions } from \"../types\";\n\nconst prettierOptions: PrettierConfig = { parser: \"typescript\" };\n\nconst dotPath = (segments: string[]): string => {\n\treturn segments.join(\".\");\n};\n\nexport const snippetRead: SnippetReadHook<PluginOptions> = async (\n\tdata,\n\t{ helpers },\n) => {\n\tconst { fieldPath } = data;\n\n\tconst label = \"React\";\n\n\tswitch (data.model.type) {\n\t\tcase prismicT.CustomTypeModelFieldType.Link: {\n\t\t\treturn {\n\t\t\t\tlabel,\n\t\t\t\tlanguage: \"tsx\",\n\t\t\t\tcode: await helpers.format(\n\t\t\t\t\tstripIndent`\n\t\t\t\t\t\t<PrismicLink field={${dotPath(fieldPath)}}>Link</PrismicLink>\n\t\t\t\t\t`,\n\t\t\t\t\tundefined,\n\t\t\t\t\t{ prettier: prettierOptions },\n\t\t\t\t),\n\t\t\t};\n\t\t}\n\n\t\tcase prismicT.CustomTypeModelFieldType.Image: {\n\t\t\treturn [\n\t\t\t\t{\n\t\t\t\t\tlabel: `${label} (next/image)`,\n\t\t\t\t\tlanguage: \"tsx\",\n\t\t\t\t\tcode: await helpers.format(\n\t\t\t\t\t\tstripIndent`\n\t\t\t\t\t\t\t<PrismicNextImage field={${dotPath(fieldPath)}} />\n\t\t\t\t\t\t`,\n\t\t\t\t\t\tundefined,\n\t\t\t\t\t\t{ prettier: prettierOptions },\n\t\t\t\t\t),\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tlabel,\n\t\t\t\t\tlanguage: \"tsx\",\n\t\t\t\t\tcode: await helpers.format(\n\t\t\t\t\t\tstripIndent`\n\t\t\t\t\t\t\t<PrismicImage field={${dotPath(fieldPath)}} />\n\t\t\t\t\t\t`,\n\t\t\t\t\t\tundefined,\n\t\t\t\t\t\t{ prettier: prettierOptions },\n\t\t\t\t\t),\n\t\t\t\t},\n\t\t\t];\n\t\t}\n\n\t\tcase prismicT.CustomTypeModelFieldType.Group: {\n\t\t\tconst code = await helpers.format(\n\t\t\t\tstripIndent`\n\t\t\t\t\t<>{${dotPath(fieldPath)}.map(item => (\n\t\t\t\t\t <>{/* Render content for item */}</>\n\t\t\t\t\t))}</>\n\t\t\t\t`,\n\t\t\t\tundefined,\n\t\t\t\t{ prettier: prettierOptions },\n\t\t\t);\n\n\t\t\treturn {\n\t\t\t\tlabel,\n\t\t\t\tlanguage: \"tsx\",\n\t\t\t\tcode,\n\t\t\t};\n\t\t}\n\n\t\tcase prismicT.CustomTypeModelFieldType.Slices: {\n\t\t\tconst code = await helpers.format(\n\t\t\t\tstripIndent`\n\t\t\t\t\t<SliceZone\n\t\t\t\t\t slices={${dotPath(fieldPath)}}\n\t\t\t\t\t components={components}\n\t\t\t\t\t/>\n\t\t\t\t`,\n\t\t\t\tundefined,\n\t\t\t\t{ prettier: prettierOptions },\n\t\t\t);\n\n\t\t\treturn {\n\t\t\t\tlabel,\n\t\t\t\tlanguage: \"tsx\",\n\t\t\t\tcode,\n\t\t\t};\n\t\t}\n\n\t\tdefault: {\n\t\t\treturn {\n\t\t\t\tlabel,\n\t\t\t\tlanguage: \"tsx\",\n\t\t\t\tcode: await helpers.format(\n\t\t\t\t\tstripIndent`\n\t\t\t\t\t\t<>{${dotPath(fieldPath)}}</>\n\t\t\t\t\t`,\n\t\t\t\t\tundefined,\n\t\t\t\t\t{ prettier: prettierOptions },\n\t\t\t\t),\n\t\t\t};\n\t\t}\n\t}\n};\n","import type {\n\tSliceMachineContext,\n\tSliceSimulatorSetupReadHook,\n\tSliceSimulatorSetupStep,\n} from \"@slicemachine/plugin-kit\";\nimport { SliceSimulatorSetupStepValidationMessageType } from \"@slicemachine/plugin-kit\";\nimport { stripIndent } from \"common-tags\";\nimport { createRequire } from \"node:module\";\nimport * as http from \"node:http\";\n\nimport { getJSOrTSXFileExtension } from \"../lib/getJSOrTSXFileExtension\";\n\nimport type { PluginOptions } from \"../types\";\n\nconst REQUIRED_DEPENDENCIES = [\n\t\"@prismicio/react\",\n\t\"@prismicio/slice-simulator-react\",\n\t\"@prismicio/client@latest\",\n\t\"@prismicio/helpers\",\n];\n\ntype Args = SliceMachineContext<PluginOptions>;\n\nconst createStep1 = async ({\n\tproject,\n}: Args): Promise<SliceSimulatorSetupStep> => {\n\tconst require = createRequire(project.root);\n\n\treturn {\n\t\ttitle: \"Install packages\",\n\t\tbody: stripIndent`\n\t\t\tThe simulator requires extra dependencies. Run the following command to install them.\n\n\t\t\t~~~sh\n\t\t\tnpm install --save @prismicio/react @prismicio/slice-simulator-react @prismicio/client@latest @prismicio/helpers\n\t\t\t~~~\n\t\t`,\n\t\tvalidate: async () => {\n\t\t\tconst missingDependencies: string[] = [];\n\n\t\t\tfor (const dependency of REQUIRED_DEPENDENCIES) {\n\t\t\t\ttry {\n\t\t\t\t\t// `require.resolve()` is preferred\n\t\t\t\t\t// over `import()` because we don't\n\t\t\t\t\t// want to load the module. Loading a\n\t\t\t\t\t// module could introduce side-effects.\n\t\t\t\t\trequire.resolve(dependency);\n\t\t\t\t} catch {\n\t\t\t\t\tmissingDependencies.push(dependency);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (missingDependencies.length >= REQUIRED_DEPENDENCIES.length) {\n\t\t\t\treturn {\n\t\t\t\t\ttype: SliceSimulatorSetupStepValidationMessageType.Error,\n\t\t\t\t\ttitle: \"Missing all dependencies\",\n\t\t\t\t\tmessage: stripIndent`\n\t\t\t\t\t\tInstall the required dependencies to continue.\n\t\t\t\t\t`,\n\t\t\t\t};\n\t\t\t}\n\n\t\t\tif (missingDependencies.length > 0) {\n\t\t\t\tconst formattedMissingDependencies = missingDependencies\n\t\t\t\t\t.map((missingDependency) => `\\`${missingDependency}\\``)\n\t\t\t\t\t.join(\", \");\n\n\t\t\t\treturn {\n\t\t\t\t\ttype: SliceSimulatorSetupStepValidationMessageType.Warning,\n\t\t\t\t\ttitle: \"Missing some dependencies\",\n\t\t\t\t\tmessage: stripIndent`\n\t\t\t\t\t\tThe following dependencies are missing: ${formattedMissingDependencies}\n\t\t\t\t\t`,\n\t\t\t\t};\n\t\t\t}\n\t\t},\n\t};\n};\n\nconst createStep2 = async ({\n\thelpers,\n\toptions,\n}: Args): Promise<SliceSimulatorSetupStep> => {\n\tconst fileName = `slice-simulator.${getJSOrTSXFileExtension}`;\n\tconst filePath = helpers.joinPathFromRoot(\"pages\", fileName);\n\n\tlet fileContents: string;\n\n\tif (options.typescript) {\n\t\tfileContents = stripIndent`\n\t\t\timport { GetStaticProps } from \"next/types\";\n\t\t\timport { SliceSimulator } from \"@prismicio/slice-simulator-react\";\n\t\t\timport { SliceZone } from \"@prismicio/react\";\n\n\t\t\timport state from \"../.slicemachine/libraries-state.json\";\n\t\t\timport { components } from \"../slices\";\n\n\t\t\tconst SliceSimulatorPage = () => {\n\t\t\t\treturn (\n\t\t\t\t\t<SliceSimulator\n\t\t\t\t\t\tsliceZone={(props) => <SliceZone {...props} components={components} />}\n\t\t\t\t\t\tstate={state}\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t};\n\n\t\t\texport default SliceSimulatorPage;\n\n\t\t\texport const getStaticProps: GetStaticProps = () => {\n\t\t\t\treturn {\n\t\t\t\t\t// Exclude this page from production builds.\n\t\t\t\t\tnotFound: process.env.NODE_ENV === \"production\",\n\t\t\t\t};\n\t\t\t};\n\t\t`;\n\t} else {\n\t\tfileContents = stripIndent`\n\t\t\timport { SliceSimulator } from \"@prismicio/slice-simulator-react\";\n\t\t\timport { SliceZone } from \"@prismicio/react\";\n\n\t\t\timport state from \"../.slicemachine/libraries-state.json\";\n\t\t\timport { components } from \"../slices\";\n\n\t\t\tconst SliceSimulatorPage = () => {\n\t\t\t\treturn (\n\t\t\t\t\t<SliceSimulator\n\t\t\t\t\t\tsliceZone={(props) => <SliceZone {...props} components={components} />}\n\t\t\t\t\t\tstate={state}\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t};\n\n\t\t\texport default SliceSimulatorPage;\n\n\t\t\texport const getStaticProps= () => {\n\t\t\t\treturn {\n\t\t\t\t\t// Exclude this page from production builds.\n\t\t\t\t\tnotFound: process.env.NODE_ENV === \"production\",\n\t\t\t\t};\n\t\t\t};\n\t\t`;\n\t}\n\n\tfileContents = await helpers.format(fileContents, filePath);\n\n\treturn {\n\t\ttitle: \"Create a page for the simulator\",\n\t\tbody: stripIndent`\n\t\t\tIn your \\`pages\\` directory, create a file called \\`${fileName}\\` and add the following code. This route will be used to simulate and develop your components.\n\n\t\t\t~~~tsx\n\t\t\t${fileContents}\n\t\t\t~~~\n\t\t`,\n\t};\n};\n\nconst createStep3 = async ({\n\thelpers,\n}: Args): Promise<SliceSimulatorSetupStep> => {\n\tconst filePath = helpers.joinPathFromRoot(\"sm.json\");\n\tconst fileContents = await helpers.format(\n\t\t`\n\t\t\t{\n\t\t\t\t\"localSliceSimulatorURL\": \"http://localhost:3000/slice-simulator\"\n\t\t\t}\n\t\t`,\n\t\tfilePath,\n\t);\n\n\treturn {\n\t\ttitle: \"Update `sm.json`\",\n\t\tbody: stripIndent`\n\t\t\tUpdate your \\`sm.json\\` file with a \\`localSliceSimulatorURL\\` property pointing to your \\`slice-simulator\\` page.\n\n\t\t\t~~~json\n\t\t\t${fileContents}\n\t\t\t~~~\n\t\t`,\n\t\tvalidate: async () => {\n\t\t\tconst project = await helpers.getProject();\n\n\t\t\tif (!(\"localSliceSimulatorURL\" in project.config)) {\n\t\t\t\treturn {\n\t\t\t\t\ttype: SliceSimulatorSetupStepValidationMessageType.Error,\n\t\t\t\t\ttitle: \"Missing `localSliceSimulatorURL` property\",\n\t\t\t\t\tmessage: stripIndent`\n\t\t\t\t\t\tA \\`localSliceSimulatorURL\\` property was not found in your \\`sm.json\\` file.\n\t\t\t\t\t`,\n\t\t\t\t};\n\t\t\t}\n\n\t\t\t// Test if the URL is valid.\n\t\t\ttry {\n\t\t\t\tif (project.config.localSliceSimulatorURL) {\n\t\t\t\t\tnew URL(project.config.localSliceSimulatorURL);\n\t\t\t\t} else {\n\t\t\t\t\tthrow new Error(\"Undefined Slice Simulator URL\");\n\t\t\t\t}\n\t\t\t} catch {\n\t\t\t\treturn {\n\t\t\t\t\ttype: SliceSimulatorSetupStepValidationMessageType.Warning,\n\t\t\t\t\ttitle: \"An invalid URL was provided\",\n\t\t\t\t\tmessage: stripIndent`\n\t\t\t\t\t\tThe \\`localSliceSimulatorURL\\` property should be of the shape \\`http://localhost:PORT/PATH\\`. See the codeblock for an example.\n\t\t\t\t\t`,\n\t\t\t\t};\n\t\t\t}\n\n\t\t\t// Check if the URL is accessible.\n\t\t\tconst ok = await new Promise<boolean>((resolve) => {\n\t\t\t\tif (project.config.localSliceSimulatorURL) {\n\t\t\t\t\thttp.get(project.config.localSliceSimulatorURL, (res) => {\n\t\t\t\t\t\tif (res.statusCode) {\n\t\t\t\t\t\t\tresolve(res.statusCode >= 200 && res.statusCode < 300);\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t}\n\n\t\t\t\tresolve(false);\n\t\t\t});\n\n\t\t\tif (!ok) {\n\t\t\t\treturn {\n\t\t\t\t\ttype: SliceSimulatorSetupStepValidationMessageType.Warning,\n\t\t\t\t\ttitle: \"Unable to connect to simulator page\",\n\t\t\t\t\tmessage: stripIndent`\n\t\t\t\t\t\tCheck that the \\`localSliceSimulatorURL\\` property in \\`sm.json\\` is correct and try again. See the [troubleshooting page](https://prismic.io/docs/technologies/setup-slice-simulator-nextjs) for more details.\n\t\t\t\t\t`,\n\t\t\t\t};\n\t\t\t}\n\t\t},\n\t};\n};\n\nexport const sliceSimulatorSetupRead: SliceSimulatorSetupReadHook<\n\tPluginOptions\n> = async (_data, context) => {\n\treturn Promise.all([\n\t\tcreateStep1(context),\n\t\tcreateStep2(context),\n\t\tcreateStep3(context),\n\t]);\n};\n","import { defineSliceMachinePlugin } from \"@slicemachine/plugin-kit\";\n\nimport { name as pkgName } from \"../package.json\";\nimport { PluginOptions } from \"./types\";\n\nimport { sliceCreate } from \"./hooks/slice-create\";\nimport { sliceUpdate } from \"./hooks/slice-update\";\nimport { sliceDelete } from \"./hooks/slice-delete\";\nimport { sliceRead } from \"./hooks/slice-read\";\nimport { sliceLibraryRead } from \"./hooks/slice-library-read\";\nimport { customTypeCreate } from \"./hooks/customType-create\";\nimport { customTypeUpdate } from \"./hooks/customType-update\";\nimport { customTypeDelete } from \"./hooks/customType-delete\";\nimport { customTypeRead } from \"./hooks/customType-read\";\nimport { customTypeLibraryRead } from \"./hooks/customType-library-read\";\nimport { snippetRead } from \"./hooks/snippet-read\";\nimport { sliceSimulatorSetupRead } from \"./hooks/sliceSimulator-setup-read\";\n\nexport const plugin = defineSliceMachinePlugin<PluginOptions>({\n\tmeta: {\n\t\tname: pkgName,\n\t},\n\tdefaultOptions: {\n\t\tformat: true,\n\t},\n\tsetup({ hook }) {\n\t\thook(\"slice:create\", sliceCreate);\n\t\thook(\"slice:update\", sliceUpdate);\n\t\thook(\"slice:delete\", sliceDelete);\n\t\thook(\"slice:read\", sliceRead);\n\t\thook(\"slice-library:read\", sliceLibraryRead);\n\n\t\thook(\"custom-type:create\", customTypeCreate);\n\t\thook(\"custom-type:update\", customTypeUpdate);\n\t\thook(\"custom-type:delete\", customTypeDelete);\n\t\thook(\"custom-type:read\", customTypeRead);\n\t\thook(\"custom-type-library:read\", customTypeLibraryRead);\n\n\t\thook(\"snippet:read\", snippetRead);\n\n\t\thook(\"slice-simulator:setup:read\", sliceSimulatorSetupRead);\n\t},\n});\n","import * as React from \"react\";\nimport {\n\tCoreManager,\n\tSliceSimulatorProps as BaseSliceSimulatorProps,\n\tSliceSimulatorState,\n\tStateManagerEventType,\n\tStateManagerStatus,\n\tdisableEventHandler,\n\tgetDefaultManagedState,\n\tgetDefaultMessage,\n\tgetDefaultProps,\n\tgetDefaultSlices,\n\tonClickHandler,\n\tsimulatorClass,\n\tsimulatorRootClass,\n} from \"@prismicio/slice-simulator-core\";\n\nconst coreManager = new CoreManager();\n\nexport type SliceSimulatorSliceZoneProps = {\n\tslices: SliceSimulatorState[\"slices\"];\n};\n\nexport type SliceSimulatorProps = {\n\t/**\n\t * React component to render simulated Slices.\n\t *\n\t * @example\n\t *\n\t * ```tsx\n\t * import { SliceSimulator } from \"@slicemachine/adapter-next\";\n\t * import { SliceZone } from \"@prismicio/react\";\n\t *\n\t * import { components } from \"../slices\";\n\t * import state from \"../.slicemachine/libraries-state.json\";\n\t *\n\t * <SliceSimulator\n\t * \tsliceZone={({ slices }) => (\n\t * \t\t<SliceZone slices={slices} components={components} />\n\t * \t)}\n\t * \tstate={state}\n\t * />;\n\t * ```\n\t */\n\tsliceZone: (props: SliceSimulatorSliceZoneProps) => JSX.Element;\n\tclassName?: string;\n} & BaseSliceSimulatorProps;\n\nexport const SliceSimulator = ({\n\tsliceZone: SliceZoneComp,\n\tstate,\n\tbackground,\n\tzIndex,\n\tclassName,\n}: SliceSimulatorProps): JSX.Element => {\n\tconst defaultProps = getDefaultProps();\n\n\tconst [managedState, setManagedState] = React.useState(() =>\n\t\tgetDefaultManagedState(),\n\t);\n\tconst [slices, setSlices] = React.useState(() => getDefaultSlices());\n\tconst [message, setMessage] = React.useState(() => getDefaultMessage());\n\n\tReact.useEffect(() => {\n\t\tcoreManager.stateManager.on(\n\t\t\tStateManagerEventType.ManagedState,\n\t\t\t(_managedState) => {\n\t\t\t\tsetManagedState(_managedState);\n\t\t\t},\n\t\t\t\"simulator-managed-state\",\n\t\t);\n\t\tcoreManager.stateManager.on(\n\t\t\tStateManagerEventType.Slices,\n\t\t\t(_slices) => {\n\t\t\t\tsetSlices(_slices);\n\t\t\t},\n\t\t\t\"simulator-slices\",\n\t\t);\n\t\tcoreManager.stateManager.on(\n\t\t\tStateManagerEventType.Message,\n\t\t\t(_message) => {\n\t\t\t\tsetMessage(_message);\n\t\t\t},\n\t\t\t\"simulator-message\",\n\t\t);\n\n\t\tcoreManager.init(state);\n\n\t\treturn () => {\n\t\t\tcoreManager.stateManager.off(\n\t\t\t\tStateManagerEventType.ManagedState,\n\t\t\t\t\"simulator-managed-state\",\n\t\t\t);\n\n\t\t\tcoreManager.stateManager.off(\n\t\t\t\tStateManagerEventType.Slices,\n\t\t\t\t\"simulator-slices\",\n\t\t\t);\n\n\t\t\tcoreManager.stateManager.off(\n\t\t\t\tStateManagerEventType.Message,\n\t\t\t\t\"simulator-message\",\n\t\t\t);\n\t\t};\n\t}, []);\n\n\t// Update state on HMR\n\tconst didMount = React.useRef(false);\n\tReact.useEffect(() => {\n\t\tif (didMount.current) {\n\t\t\tcoreManager.stateManager.reload(state);\n\t\t} else {\n\t\t\tdidMount.current = true;\n\t\t}\n\t}, [state]);\n\n\treturn (\n\t\t<div\n\t\t\tclassName={[simulatorClass, className].filter(Boolean).join(\" \")}\n\t\t\tstyle={{\n\t\t\t\tzIndex:\n\t\t\t\t\ttypeof zIndex === \"undefined\"\n\t\t\t\t\t\t? defaultProps.zIndex\n\t\t\t\t\t\t: zIndex ?? undefined,\n\t\t\t\tposition: \"fixed\",\n\t\t\t\ttop: 0,\n\t\t\t\tleft: 0,\n\t\t\t\twidth: \"100%\",\n\t\t\t\theight: \"100vh\",\n\t\t\t\toverflow: \"auto\",\n\t\t\t\tbackground:\n\t\t\t\t\ttypeof background === \"undefined\"\n\t\t\t\t\t\t? defaultProps.background\n\t\t\t\t\t\t: background ?? undefined,\n\t\t\t}}\n\t\t>\n\t\t\t{message ? (\n\t\t\t\t<article dangerouslySetInnerHTML={{ __html: message }} />\n\t\t\t) : slices.length ? (\n\t\t\t\t<div\n\t\t\t\t\tid=\"root\"\n\t\t\t\t\tclassName={simulatorRootClass}\n\t\t\t\t\tstyle={\n\t\t\t\t\t\tmanagedState.status !== StateManagerStatus.Loaded\n\t\t\t\t\t\t\t? { display: \"none\" }\n\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t}\n\t\t\t\t\tonClickCapture={onClickHandler as unknown as React.MouseEventHandler}\n\t\t\t\t\tonSubmitCapture={\n\t\t\t\t\t\tdisableEventHandler as unknown as React.FormEventHandler\n\t\t\t\t\t}\n\t\t\t\t>\n\t\t\t\t\t<SliceZoneComp slices={slices} />\n\t\t\t\t</div>\n\t\t\t) : null}\n\t\t</div>\n\t);\n};\n"],"names":["basePascalCase","stripIndent","createModelFile","path","fs","createTypesFile","generateTypes","prismicT.CustomTypeModelSliceType","prismicT.CustomTypeModelFieldType","createRequire","SliceSimulatorSetupStepValidationMessageType","http","defineSliceMachinePlugin","pkgName","CoreManager","getDefaultProps","React","getDefaultManagedState","getDefaultSlices","getDefaultMessage","StateManagerEventType","simulatorClass","simulatorRootClass","StateManagerStatus","onClickHandler","disableEventHandler"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,45 +1,5 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
} & ({
|
|
7
|
-
typescript?: false;
|
|
8
|
-
jsxExtension?: boolean;
|
|
9
|
-
} | {
|
|
10
|
-
typescript: true;
|
|
11
|
-
jsxExtension?: never;
|
|
12
|
-
});
|
|
13
|
-
|
|
14
|
-
declare const plugin: _slicemachine_plugin_kit.SliceMachinePlugin<PluginOptions>;
|
|
15
|
-
|
|
16
|
-
declare type SliceSimulatorSliceZoneProps = {
|
|
17
|
-
slices: SliceSimulatorState["slices"];
|
|
18
|
-
};
|
|
19
|
-
declare type SliceSimulatorProps = {
|
|
20
|
-
/**
|
|
21
|
-
* React component to render simulated Slices.
|
|
22
|
-
*
|
|
23
|
-
* @example
|
|
24
|
-
*
|
|
25
|
-
* ```tsx
|
|
26
|
-
* import { SliceSimulator } from "@slicemachine/adapter-next";
|
|
27
|
-
* import { SliceZone } from "@prismicio/react";
|
|
28
|
-
*
|
|
29
|
-
* import { components } from "../slices";
|
|
30
|
-
* import state from "../.slicemachine/libraries-state.json";
|
|
31
|
-
*
|
|
32
|
-
* <SliceSimulator
|
|
33
|
-
* sliceZone={({ slices }) => (
|
|
34
|
-
* <SliceZone slices={slices} components={components} />
|
|
35
|
-
* )}
|
|
36
|
-
* state={state}
|
|
37
|
-
* />;
|
|
38
|
-
* ```
|
|
39
|
-
*/
|
|
40
|
-
sliceZone: (props: SliceSimulatorSliceZoneProps) => JSX.Element;
|
|
41
|
-
className?: string;
|
|
42
|
-
} & SliceSimulatorProps$1;
|
|
43
|
-
declare const SliceSimulator: ({ sliceZone: SliceZoneComp, state, background, zIndex, className, }: SliceSimulatorProps) => JSX.Element;
|
|
44
|
-
|
|
45
|
-
export { PluginOptions, SliceSimulator, SliceSimulatorProps, SliceSimulatorSliceZoneProps, plugin as default };
|
|
1
|
+
import { plugin } from "./plugin";
|
|
2
|
+
export default plugin;
|
|
3
|
+
export type { PluginOptions } from "./types";
|
|
4
|
+
export { SliceSimulator } from "./SliceSimulator";
|
|
5
|
+
export type { SliceSimulatorProps, SliceSimulatorSliceZoneProps, } from "./SliceSimulator";
|