UNPKG

@ckeditor/ckeditor5-dev-utils

Version:
31 lines (30 loc) 1.06 kB
import { transform } from "lightningcss"; import { Buffer } from "node:buffer"; //#region src/loaders/ck-lightningcss-loader.ts /** * @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved. * For licensing, see LICENSE.md. */ /** * Transforms editor styles using Lightning CSS. */ function ckLightningCssLoader(source, map) { try { const lightningCssOptions = (this.getOptions ? this.getOptions() : this.query || {}).lightningCssOptions || {}; let inputSourceMap; if (typeof map === "string") inputSourceMap = map; else if (map) inputSourceMap = JSON.stringify(map); const result = transform({ ...lightningCssOptions, filename: this.resourcePath, code: Buffer.from(source), inputSourceMap }); const sourceMap = result.map ? JSON.parse(Buffer.from(result.map).toString()) : void 0; this.callback(null, Buffer.from(result.code).toString(), sourceMap); } catch (error) { this.callback(error instanceof Error ? error : new Error(String(error))); } } //#endregion export { ckLightningCssLoader as default };