UNPKG

@atlaskit/editor-plugin-extension

Version:

editor-plugin-extension plugin for @atlaskit/editor-core

88 lines (80 loc) 1.88 kB
import type { ExtensionManifest, ExtensionModule, ExtensionModuleNodes, } from '@atlaskit/editor-common/extensions'; // eslint-disable-next-line import/no-extraneous-dependencies import { cqlDeserializer, cqlSerializer, mockFieldResolver, } from '@atlaskit/editor-test-helpers/example-helpers'; import { customFields, nativeFields } from './fields'; const exampleFields = [...nativeFields, ...customFields]; const key = 'allFields'; const quickInsert: ExtensionModule[] = [ { key, title: 'All fields', icon: () => import( /* webpackChunkName: "@atlaskit-internal_icon-code" */ '@atlaskit/icon/core/angle-brackets' ).then((mod) => mod.default), action: { type: 'node', key, parameters: {}, }, }, ]; const nodes: ExtensionModuleNodes = { [key]: { type: 'extension', render: () => Promise.resolve(() => null), getFieldsDefinition: () => Promise.resolve(exampleFields), }, }; const manifest: ExtensionManifest = { title: 'Editor fields example', type: 'twp.editor.example', key: 'example-fields', description: 'Example of fields supported by the editor', icons: { '48': () => import( /* webpackChunkName: "@atlaskit-internal_icon-code" */ '@atlaskit/icon/core/angle-brackets' ).then((mod) => mod.default), }, modules: { quickInsert, nodes, fields: { custom: { 'mock-resolver': { resolver: mockFieldResolver, }, }, fieldset: { cql: { serializer: cqlSerializer, deserializer: cqlDeserializer, }, }, user: { 'user-jdog-provider': { // Ignored via go/ees005 // eslint-disable-next-line require-await provider: async () => { return { siteId: '49d8b9d6-ee7d-4931-a0ca-7fcae7d1c3b5', principalId: 'Context', fieldId: 'storybook', productKey: 'jira', }; }, }, }, }, }, }; export default manifest;