diff --git a/packages/core/src/Extension.ts b/packages/core/src/Extension.ts index 78e1d79f..9284d82b 100644 --- a/packages/core/src/Extension.ts +++ b/packages/core/src/Extension.ts @@ -4,6 +4,11 @@ import { Editor } from './Editor' import { GlobalAttributes } from './types' export interface ExtensionSpec { + /** + * Name + */ + name?: string, + /** * Default options */ @@ -78,6 +83,7 @@ export type Extension = Required & { * Default extension */ export const defaultExtension: Extension = { + name: 'extension', type: 'extension', options: {}, addGlobalAttributes: () => [], diff --git a/packages/core/src/utils/getSchema.ts b/packages/core/src/utils/getSchema.ts index e64a9873..8e8bac1a 100644 --- a/packages/core/src/utils/getSchema.ts +++ b/packages/core/src/utils/getSchema.ts @@ -5,14 +5,14 @@ import getAttributesFromExtensions from './getAttributesFromExtensions' import getRenderedAttributes from './getRenderedAttributes' import isEmptyObject from './isEmptyObject' -function cleanUpSchemaItem(data: any) { +function cleanUpSchemaItem(data: T) { return Object.fromEntries(Object.entries(data).filter(([key, value]) => { if (key === 'attrs' && isEmptyObject(value)) { return false } return value !== null && value !== undefined - })) + })) as T } export default function getSchema(extensions: Extensions): Schema {