From b8bc0d5efb4eb326eb61c4f19df180ee814adce9 Mon Sep 17 00:00:00 2001 From: Felix Ranesberger Date: Mon, 9 Sep 2024 10:32:25 +0200 Subject: [PATCH] feat(fix): try to fix plugin build function --- build.config.ts | 1 - src/build.ts | 42 +++++++++++++++++++++++------------------- src/index.ts | 2 ++ 3 files changed, 25 insertions(+), 20 deletions(-) diff --git a/build.config.ts b/build.config.ts index ea5caa2..0bd008c 100644 --- a/build.config.ts +++ b/build.config.ts @@ -3,7 +3,6 @@ import { defineBuildConfig } from 'unbuild' export default defineBuildConfig({ entries: [ 'src/index', - 'src/build', ], declaration: true, clean: true, diff --git a/src/build.ts b/src/build.ts index bfda8a8..80456b9 100644 --- a/src/build.ts +++ b/src/build.ts @@ -1,4 +1,3 @@ -import { build } from 'unbuild' import type { BuildConfig } from 'unbuild' interface Options { @@ -8,27 +7,32 @@ interface Options { }[] } +/** + * Build CkEditor plugins using unbuild + */ export function buildCkEditorPlugins(args: Options): void { - const config: BuildConfig = { - entries: args.plugins.map(plugin => ({ - builder: 'rollup', - input: plugin.input, - outDir: plugin.outDir, - })), - externals: [ - '@ckeditor/ckeditor5-core', - '@ckeditor/ckeditor5-engine', - '@ckeditor/ckeditor5-typing', - '@ckeditor/ckeditor5-ui', - '@ckeditor/ckeditor5-utils', - ], - rollup: { - inlineDependencies: true, - }, - }; - // build files using unbuild (async () => { + const { build } = await import('unbuild') + + const config: BuildConfig = { + entries: args.plugins.map(plugin => ({ + builder: 'rollup', + input: plugin.input, + outDir: plugin.outDir, + })), + externals: [ + '@ckeditor/ckeditor5-core', + '@ckeditor/ckeditor5-engine', + '@ckeditor/ckeditor5-typing', + '@ckeditor/ckeditor5-ui', + '@ckeditor/ckeditor5-utils', + ], + rollup: { + inlineDependencies: true, + }, + } + await build('.', false, config) })() } diff --git a/src/index.ts b/src/index.ts index f48faf7..0c41745 100644 --- a/src/index.ts +++ b/src/index.ts @@ -1,7 +1,9 @@ +import { buildCkEditorPlugins } from './build' import { injectContentToCursorPosition } from './lib/inject-content' import { addTextWrapButton } from './lib/text-wrap' export { addTextWrapButton, + buildCkEditorPlugins, injectContentToCursorPosition, }