@dxos/plugin-markdown 0.8.2-staging.4d6ad0f → 0.8.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/lib/browser/{MarkdownContainer-NNE5SMES.mjs → MarkdownContainer-5IEINNQB.mjs} +3 -3
- package/dist/lib/browser/{MarkdownContainer-NNE5SMES.mjs.map → MarkdownContainer-5IEINNQB.mjs.map} +2 -2
- package/dist/lib/browser/{chunk-Z7VSZKOO.mjs → chunk-ACAID3XF.mjs} +2 -2
- package/dist/lib/browser/index.mjs +1 -1
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/{react-surface-LDVROHXZ.mjs → react-surface-QE4SKXBT.mjs} +2 -2
- package/dist/lib/node/{MarkdownContainer-LFCR2YMB.cjs → MarkdownContainer-LSNNPNRB.cjs} +6 -6
- package/dist/lib/node/{MarkdownContainer-LFCR2YMB.cjs.map → MarkdownContainer-LSNNPNRB.cjs.map} +2 -2
- package/dist/lib/node/{chunk-3KDAJADP.cjs → chunk-C4HR7UXE.cjs} +5 -5
- package/dist/lib/node/index.cjs +8 -8
- package/dist/lib/node/meta.json +1 -1
- package/dist/lib/node/{react-surface-QM65PGDI.cjs → react-surface-WJZTEBYO.cjs} +5 -5
- package/dist/lib/node-esm/{MarkdownContainer-HUOBFKZR.mjs → MarkdownContainer-UZSLXMWO.mjs} +3 -3
- package/dist/lib/node-esm/{MarkdownContainer-HUOBFKZR.mjs.map → MarkdownContainer-UZSLXMWO.mjs.map} +2 -2
- package/dist/lib/node-esm/{chunk-4444OQSA.mjs → chunk-EIUTPXGL.mjs} +2 -2
- package/dist/lib/node-esm/index.mjs +1 -1
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/{react-surface-5QZ76RZA.mjs → react-surface-XNM3YDFB.mjs} +2 -2
- package/package.json +39 -39
- package/src/extensions.tsx +2 -2
- /package/dist/lib/browser/{chunk-Z7VSZKOO.mjs.map → chunk-ACAID3XF.mjs.map} +0 -0
- /package/dist/lib/browser/{react-surface-LDVROHXZ.mjs.map → react-surface-QE4SKXBT.mjs.map} +0 -0
- /package/dist/lib/node/{chunk-3KDAJADP.cjs.map → chunk-C4HR7UXE.cjs.map} +0 -0
- /package/dist/lib/node/{react-surface-QM65PGDI.cjs.map → react-surface-WJZTEBYO.cjs.map} +0 -0
- /package/dist/lib/node-esm/{chunk-4444OQSA.mjs.map → chunk-EIUTPXGL.mjs.map} +0 -0
- /package/dist/lib/node-esm/{react-surface-5QZ76RZA.mjs.map → react-surface-XNM3YDFB.mjs.map} +0 -0
package/dist/lib/node/{MarkdownContainer-LFCR2YMB.cjs.map → MarkdownContainer-LSNNPNRB.cjs.map}
RENAMED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/components/MarkdownContainer.tsx", "../../../src/components/MarkdownEditor/MarkdownEditor.tsx", "../../../src/hooks/useSelectCurrentThread.tsx", "../../../src/extensions.tsx"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2024 DXOS.org\n//\n\nimport { Rx } from '@effect-rx/rx-react';\nimport React, { useEffect, useMemo } from 'react';\n\nimport { Capabilities, useAppGraph, useCapabilities } from '@dxos/app-framework';\nimport { isInstanceOf } from '@dxos/echo-schema';\nimport { fullyQualifiedId, getSpace } from '@dxos/react-client/echo';\nimport { type SelectionManager } from '@dxos/react-ui-attention';\nimport { DataType } from '@dxos/schema';\n\nimport { MarkdownEditor, type MarkdownEditorProps } from './MarkdownEditor';\nimport { useExtensions } from '../extensions';\nimport { DocumentType, type MarkdownSettingsProps } from '../types';\nimport { getFallbackName } from '../util';\n\nexport type MarkdownContainerProps = Pick<\n MarkdownEditorProps,\n 'role' | 'extensionProviders' | 'viewMode' | 'editorStateStore' | 'onViewModeChange'\n> & {\n id: string;\n object: DocumentType | DataType.Text | any;\n settings: MarkdownSettingsProps;\n selectionManager?: SelectionManager;\n};\n\n// TODO(burdon): Factor out difference for ECHO and non-ECHO objects; i.e., single component.\nconst MarkdownContainer = ({\n id,\n role,\n object,\n settings,\n selectionManager,\n viewMode,\n editorStateStore,\n onViewModeChange,\n}: MarkdownContainerProps) => {\n const scrollPastEnd = role === 'article';\n const doc = isInstanceOf(DocumentType, object) ? object : undefined;\n const text = isInstanceOf(DataType.Text, object) ? object : undefined;\n const extensions = useExtensions({ document: doc, text, id, settings, selectionManager, viewMode, editorStateStore });\n\n if (doc) {\n return (\n <DocumentEditor\n id={fullyQualifiedId(object)}\n role={role}\n document={doc}\n extensions={extensions}\n viewMode={viewMode}\n settings={settings}\n scrollPastEnd={scrollPastEnd}\n onViewModeChange={onViewModeChange}\n />\n );\n } else if (text) {\n return (\n <MarkdownEditor\n id={id}\n role={role}\n initialValue={text.content}\n extensions={extensions}\n viewMode={viewMode}\n toolbar={settings.toolbar}\n inputMode={settings.editorInputMode}\n scrollPastEnd={scrollPastEnd}\n onViewModeChange={onViewModeChange}\n />\n );\n } else {\n // TODO(burdon): Normalize with above.\n return (\n <MarkdownEditor\n id={id}\n role={role}\n initialValue={object.text}\n extensions={extensions}\n viewMode={viewMode}\n toolbar={settings.toolbar}\n inputMode={settings.editorInputMode}\n scrollPastEnd={scrollPastEnd}\n onViewModeChange={onViewModeChange}\n />\n );\n }\n};\n\ntype DocumentEditorProps = Omit<MarkdownContainerProps, 'object' | 'extensionProviders' | 'editorStateStore'> &\n Pick<MarkdownEditorProps, 'id' | 'scrollPastEnd' | 'extensions'> & {\n document: DocumentType;\n };\n\nexport const DocumentEditor = ({ id, document: doc, settings, viewMode, ...props }: DocumentEditorProps) => {\n const space = getSpace(doc);\n\n // Migrate gradually to `fallbackName`.\n useEffect(() => {\n if (typeof doc.fallbackName === 'string') {\n return;\n }\n\n const fallbackName = doc.content?.target?.content ? getFallbackName(doc.content.target.content) : undefined;\n if (fallbackName) {\n doc.fallbackName = fallbackName;\n }\n }, [doc, doc.content]);\n\n // File dragging.\n const [upload] = useCapabilities(Capabilities.FileUploader);\n const handleFileUpload = useMemo(() => {\n if (space === undefined || upload === undefined) {\n return undefined;\n }\n\n // TODO(burdon): Re-order props: space, file.\n return async (file: File) => upload!(file, space);\n }, [space, upload]);\n\n const { graph } = useAppGraph();\n const customActions = useMemo(() => {\n return Rx.make((get) => {\n const actions = get(graph.actions(id));\n const nodes = actions.filter((action) => action.properties.disposition === 'toolbar');\n return { nodes, edges: nodes.map((node) => ({ source: 'root', target: node.id })) };\n });\n }, [graph]);\n\n return (\n <MarkdownEditor\n id={id}\n initialValue={doc.content?.target?.content}\n viewMode={viewMode}\n toolbar={settings.toolbar}\n customActions={customActions}\n inputMode={settings.editorInputMode}\n onFileUpload={handleFileUpload}\n {...props}\n />\n );\n};\n\nexport default MarkdownContainer;\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { type EditorView } from '@codemirror/view';\nimport React, { useMemo, useEffect, useCallback } from 'react';\nimport { useDropzone } from 'react-dropzone';\n\nimport { type FileInfo } from '@dxos/app-framework';\nimport { invariant } from '@dxos/invariant';\nimport { useThemeContext, useTranslation } from '@dxos/react-ui';\nimport {\n type DNDOptions,\n type EditorViewMode,\n type EditorInputMode,\n type EditorSelectionState,\n type EditorStateStore,\n EditorToolbar,\n type UseTextEditorProps,\n createBasicExtensions,\n createMarkdownExtensions,\n createThemeExtensions,\n dropFile,\n editorSlots,\n editorGutter,\n processEditorPayload,\n stackItemContentEditorClassNames,\n useFormattingState,\n useTextEditor,\n useEditorToolbarState,\n addLink,\n type EditorToolbarActionGraphProps,\n} from '@dxos/react-ui-editor';\nimport { StackItem } from '@dxos/react-ui-stack';\nimport { isNotFalsy, isNonNullable } from '@dxos/util';\n\nimport { useSelectCurrentThread } from '../../hooks';\nimport { MARKDOWN_PLUGIN } from '../../meta';\nimport { type MarkdownPluginState } from '../../types';\n\nexport type MarkdownEditorProps = {\n id: string;\n role?: string;\n inputMode?: EditorInputMode;\n scrollPastEnd?: boolean;\n toolbar?: boolean;\n customActions?: EditorToolbarActionGraphProps['customActions'];\n // TODO(wittjosiah): Generalize custom toolbar actions (e.g. comment, upload, etc.)\n viewMode?: EditorViewMode;\n editorStateStore?: EditorStateStore;\n onViewModeChange?: (id: string, mode: EditorViewMode) => void;\n onFileUpload?: (file: File) => Promise<FileInfo | undefined>;\n} & Pick<UseTextEditorProps, 'initialValue' | 'extensions'> &\n Partial<Pick<MarkdownPluginState, 'extensionProviders'>>;\n\n/**\n * Base markdown editor component.\n *\n * This component provides all the features of the markdown editor that do no depend on ECHO.\n * This allows it to be used as a common editor for markdown content on arbitrary backends (e.g. files).\n */\nexport const MarkdownEditor = ({\n id,\n role = 'article',\n initialValue,\n extensions,\n extensionProviders,\n scrollPastEnd,\n toolbar,\n customActions,\n viewMode,\n editorStateStore,\n onFileUpload,\n onViewModeChange,\n}: MarkdownEditorProps) => {\n const { t } = useTranslation(MARKDOWN_PLUGIN);\n const { themeMode } = useThemeContext();\n const toolbarState = useEditorToolbarState({ viewMode });\n const formattingObserver = useFormattingState(toolbarState);\n\n // Restore last selection and scroll point.\n const { scrollTo, selection } = useMemo<EditorSelectionState>(() => editorStateStore?.getState(id) ?? {}, [id]);\n\n // Extensions from other plugins.\n // TODO(burdon): Reconcile with DocumentEditor.useExtensions.\n const providerExtensions = useMemo(\n () => extensionProviders?.flatMap((provider) => provider({})).filter(isNonNullable),\n [extensionProviders],\n );\n\n // TODO(wittjosiah): Factor out to file uploader plugin.\n // Drag files.\n const handleDrop: DNDOptions['onDrop'] = async (view, { files }) => {\n const file = files[0];\n const info = file && onFileUpload ? await onFileUpload(file) : undefined;\n if (info) {\n processEditorPayload(view, { type: 'image', data: info.url });\n }\n };\n\n const {\n parentRef,\n view: editorView,\n focusAttributes,\n } = useTextEditor(\n () => ({\n initialValue,\n extensions: [\n formattingObserver,\n createBasicExtensions({\n readOnly: viewMode === 'readonly',\n placeholder: t('editor placeholder'),\n scrollPastEnd: role === 'section' ? false : scrollPastEnd,\n }),\n createMarkdownExtensions({ themeMode }),\n createThemeExtensions({ themeMode, syntaxHighlighting: true, slots: editorSlots }),\n editorGutter,\n role !== 'section' && onFileUpload && dropFile({ onDrop: handleDrop }),\n providerExtensions,\n extensions,\n ].filter(isNotFalsy),\n ...(role !== 'section' && {\n id,\n scrollTo,\n selection,\n // TODO(wittjosiah): Autofocus based on layout is racy.\n // autoFocus: layoutPlugin?.provides.layout ? layoutPlugin?.provides.layout.scrollIntoView === id : true,\n moveToEndOfLine: true,\n }),\n }),\n [id, formattingObserver, viewMode, themeMode, extensions, providerExtensions],\n );\n\n useTest(editorView);\n useSelectCurrentThread(editorView, id);\n\n // https://react-dropzone.js.org/#src\n const { acceptedFiles, getInputProps, open } = useDropzone({\n multiple: false,\n noDrag: true,\n accept: {\n 'image/*': ['.jpg', '.jpeg', '.png', '.gif'],\n },\n });\n\n useEffect(() => {\n if (editorView && onFileUpload && acceptedFiles.length) {\n requestAnimationFrame(async () => {\n // NOTE: Clone file since react-dropzone patches in a non-standard `path` property, which confuses IPFS.\n const f = acceptedFiles[0];\n const file = new File([f], f.name, {\n type: f.type,\n lastModified: f.lastModified,\n });\n\n const info = await onFileUpload(file);\n if (info) {\n addLink({ url: info.url, image: true })(editorView);\n }\n });\n }\n }, [acceptedFiles, editorView, onFileUpload]);\n\n const getView = useCallback(() => {\n invariant(editorView);\n return editorView;\n }, [editorView]);\n\n const handleViewModeChange = useCallback(\n (mode: EditorViewMode) => onViewModeChange?.(id, mode),\n [id, onViewModeChange],\n );\n\n const handleImageUpload = useCallback(() => {\n if (onFileUpload) {\n open();\n }\n }, [onFileUpload]);\n\n return (\n <StackItem.Content toolbar={!!toolbar}>\n {toolbar && (\n <>\n <EditorToolbar\n attendableId={id}\n role={role}\n state={toolbarState}\n customActions={customActions}\n getView={getView}\n image={handleImageUpload}\n viewMode={handleViewModeChange}\n />\n <input {...getInputProps()} />\n </>\n )}\n <div\n role='none'\n ref={parentRef}\n data-testid='composer.markdownRoot'\n data-toolbar={toolbar ? 'enabled' : 'disabled'}\n className={stackItemContentEditorClassNames(role)}\n data-popover-collision-boundary={true}\n {...focusAttributes}\n />\n </StackItem.Content>\n );\n};\n\n// Expose editor view for playwright tests.\n// TODO(wittjosiah): Find a better way to expose this or find a way to limit it to test runs.\nconst useTest = (view?: EditorView) => {\n useEffect(() => {\n const composer = (window as any).composer;\n if (composer) {\n composer.editorView = view;\n }\n }, [view]);\n};\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport { EditorView } from '@codemirror/view';\nimport { Schema } from 'effect';\nimport { useMemo } from 'react';\n\nimport { createResolver, LayoutAction, useIntentResolver } from '@dxos/app-framework';\nimport { invariant } from '@dxos/invariant';\nimport { Cursor, setSelection } from '@dxos/react-ui-editor';\n\nimport { MARKDOWN_PLUGIN } from '../meta';\n\n/**\n * Handle scrolling and selection of the current thread in a markdown editor.\n */\nexport const useSelectCurrentThread = (editorView: EditorView | undefined, documentId: string) => {\n const scrollIntoViewResolver = useMemo(\n () =>\n createResolver({\n intent: LayoutAction.UpdateLayout,\n position: 'hoist',\n filter: (data): data is { part: 'current'; subject: string; options: { cursor: string } } => {\n if (!Schema.is(LayoutAction.ScrollIntoView.fields.input)(data)) {\n return false;\n }\n\n return !!editorView && data.subject === documentId && !!data.options?.cursor;\n },\n resolve: ({ options: { cursor } }) => {\n invariant(editorView, 'Editor view is not defined.');\n const range = Cursor.getRangeFromCursor(editorView.state, cursor!);\n if (range) {\n const selection = editorView.state.selection.main.from !== range.from ? { anchor: range.from } : undefined;\n const effects = [\n // NOTE: This does not use the DOM scrollIntoView function.\n EditorView.scrollIntoView(range.from, { y: 'start', yMargin: 96 }),\n ];\n if (selection) {\n // Update the editor selection to get bi-directional highlighting.\n effects.push(setSelection.of({ current: documentId }));\n }\n\n editorView.dispatch({\n effects,\n selection: selection ? { anchor: range.from } : undefined,\n });\n }\n },\n }),\n [documentId, editorView],\n );\n\n useIntentResolver(MARKDOWN_PLUGIN, scrollIntoViewResolver);\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport React, { type AnchorHTMLAttributes, type ReactNode, useMemo } from 'react';\nimport { createRoot } from 'react-dom/client';\n\nimport {\n createIntent,\n LayoutAction,\n type PromiseIntentDispatcher,\n useCapabilities,\n useIntentDispatcher,\n} from '@dxos/app-framework';\nimport { invariant } from '@dxos/invariant';\nimport { createDocAccessor, fullyQualifiedId, getSpace, type QueryResult } from '@dxos/react-client/echo';\nimport { useIdentity } from '@dxos/react-client/halo';\nimport { Icon, ThemeProvider } from '@dxos/react-ui';\nimport { type SelectionManager } from '@dxos/react-ui-attention';\nimport {\n type AutocompleteResult,\n type EditorStateStore,\n type EditorViewMode,\n type Extension,\n InputModeExtensions,\n createDataExtensions,\n autocomplete,\n decorateMarkdown,\n folding,\n formattingKeymap,\n linkTooltip,\n listener,\n preview,\n selectionState,\n typewriter,\n type RenderCallback,\n EditorView,\n documentId,\n Cursor,\n} from '@dxos/react-ui-editor';\nimport { defaultTx } from '@dxos/react-ui-theme';\nimport { type DataType } from '@dxos/schema';\nimport { isNotFalsy } from '@dxos/util';\n\nimport { MarkdownCapabilities } from './capabilities';\nimport { type DocumentType, type MarkdownSettingsProps } from './types';\nimport { setFallbackName } from './util';\n\ntype ExtensionsOptions = {\n document?: DocumentType;\n id?: string;\n text?: DataType.Text;\n dispatch?: PromiseIntentDispatcher;\n query?: QueryResult<DocumentType>;\n settings: MarkdownSettingsProps;\n selectionManager?: SelectionManager;\n viewMode?: EditorViewMode;\n editorStateStore?: EditorStateStore;\n};\n\n// TODO(burdon): Merge with createBaseExtensions below.\nexport const useExtensions = ({\n document,\n id,\n text,\n settings,\n selectionManager,\n viewMode,\n editorStateStore,\n}: ExtensionsOptions): Extension[] => {\n const { dispatchPromise: dispatch } = useIntentDispatcher();\n const identity = useIdentity();\n const space = getSpace(document) ?? getSpace(text);\n\n // TODO(wittjosiah): Autocomplete is not working and this query is causing performance issues.\n // TODO(burdon): Unsubscribe.\n // const query = space?.db.query(Filter.type(DocumentType));\n // query?.subscribe();\n const baseExtensions = useMemo(\n () =>\n createBaseExtensions({\n document,\n id,\n text,\n settings,\n selectionManager,\n viewMode,\n dispatch,\n // query,\n }),\n [\n document,\n id,\n text,\n viewMode,\n dispatch,\n settings,\n settings.editorInputMode,\n settings.folding,\n settings.numberedHeadings,\n settings.debug,\n settings.typewriter,\n selectionManager,\n ],\n );\n\n const extensionProviders = useCapabilities(MarkdownCapabilities.Extensions);\n\n //\n // External extensions from other plugins.\n //\n const pluginExtensions = useMemo<Extension[] | undefined>(() => {\n if (!document) {\n return [];\n }\n\n extensionProviders.flat().reduce((acc: Extension[], provider) => {\n const extension = typeof provider === 'function' ? provider({ document }) : provider;\n if (extension) {\n acc.push(extension);\n }\n\n return acc;\n }, []);\n }, [extensionProviders, document]);\n\n //\n // Basic plugins.\n //\n return useMemo<Extension[]>(\n () =>\n [\n // NOTE: Data extensions must be first so that automerge is updated before other extensions compute their state.\n document &&\n createDataExtensions({\n id: document.id,\n text: document.content.target && createDocAccessor(document.content.target, ['content']),\n space,\n identity,\n }),\n text &&\n id &&\n createDataExtensions({\n id,\n text: createDocAccessor(text, ['content']),\n space,\n identity,\n }),\n selectionState(editorStateStore),\n document &&\n listener({\n onChange: (text) => setFallbackName(document, text),\n }),\n baseExtensions,\n pluginExtensions,\n ].filter(isNotFalsy),\n [baseExtensions, pluginExtensions, document, document?.content?.target, text, id, space, identity],\n );\n};\n\n/**\n * Create extension instances for editor.\n */\nconst createBaseExtensions = ({\n document,\n id,\n dispatch,\n settings,\n selectionManager,\n query,\n viewMode,\n}: ExtensionsOptions): Extension[] => {\n const extensions: Extension[] = [\n selectionManager && selectionChange(selectionManager),\n settings.editorInputMode && InputModeExtensions[settings.editorInputMode],\n settings.folding && folding(),\n ].filter(isNotFalsy);\n\n //\n // Markdown\n //\n if (viewMode !== 'source') {\n extensions.push(\n ...[\n formattingKeymap(),\n decorateMarkdown({\n selectionChangeDelay: 100,\n numberedHeadings: settings.numberedHeadings ? { from: 2 } : undefined,\n // TODO(wittjosiah): For internal links, consider ignoring the link text and rendering the label of the object being linked to.\n renderLinkButton:\n dispatch && (document || id)\n ? createLinkRenderer((id: string) => {\n void dispatch(\n createIntent(LayoutAction.Open, {\n part: 'main',\n subject: [id],\n options: {\n pivotId: document ? fullyQualifiedId(document) : id,\n },\n }),\n );\n })\n : undefined,\n }),\n linkTooltip(renderLinkTooltip),\n preview(),\n ],\n );\n }\n\n //\n // Autocomplete object links.\n //\n if (query) {\n extensions.push(\n autocomplete({\n onSearch: (text: string) => {\n // TODO(burdon): Specify filter (e.g., stack).\n return query.objects\n .map<AutocompleteResult | undefined>((object) =>\n object.name?.length && object.id !== document?.id\n ? {\n label: object.name,\n // TODO(burdon): Factor out URL builder.\n apply: `[${object.name}](/${fullyQualifiedId(object)})`,\n }\n : undefined,\n )\n .filter(isNotFalsy);\n },\n }),\n );\n }\n\n if (settings.debug) {\n const items = settings.typewriter?.split(/[,\\n]/) ?? '';\n if (items) {\n extensions.push(typewriter({ items }));\n }\n }\n\n return extensions;\n};\n\nexport const selectionChange = (selectionManager: SelectionManager) => {\n return EditorView.updateListener.of((update) => {\n if (update.selectionSet) {\n const id = update.state.facet(documentId);\n const cursorConverter = update.state.facet(Cursor.converter);\n const selection = update.state.selection;\n const ranges = selection.ranges\n .map((range) => ({\n from: cursorConverter.toCursor(range.from),\n to: cursorConverter.toCursor(range.to),\n }))\n .filter(({ from, to }) => to > from);\n selectionManager.updateMultiRange(id, ranges);\n }\n });\n};\n\n// TODO(burdon): Factor out styles.\nconst style = {\n hover: 'rounded-sm text-primary-500 hover:text-primary-600 dark:text-primary-500 hover:dark:text-primary-400',\n icon: 'inline-block leading-none mis-1 cursor-pointer',\n};\n\nconst createLinkRenderer =\n (onSelectObject: (id: string) => void): RenderCallback<{ url: string }> =>\n (el, { url }) => {\n // TODO(burdon): Formalize/document internal link format.\n const isInternal =\n url.startsWith('/') ||\n // TODO(wittjosiah): This should probably be parsed out on paste?\n url.startsWith(window.location.origin);\n\n const options: AnchorHTMLAttributes<any> = isInternal\n ? {\n onClick: () => {\n const qualifiedId = url.split('/').at(-1);\n invariant(qualifiedId, 'Invalid link format.');\n onSelectObject(qualifiedId);\n },\n }\n : {\n href: url,\n rel: 'noreferrer',\n target: '_blank',\n };\n\n renderRoot(\n el,\n <a {...options} className={style.hover}>\n <Icon\n icon={isInternal ? 'ph--arrow-square-down--bold' : 'ph--arrow-square-out--bold'}\n size={4}\n classNames={style.icon}\n />\n </a>,\n );\n };\n\nconst renderLinkTooltip: RenderCallback<{ url: string }> = (el, { url }) => {\n const web = new URL(url);\n renderRoot(\n el,\n <a href={url} rel='noreferrer' target='_blank' className={style.hover}>\n {web.origin}\n <Icon icon='ph--arrow-square-out--bold' size={4} classNames={style.icon} />\n </a>,\n );\n};\n\n// TODO(burdon): Remove react rendering; use DOM directly.\nexport const renderRoot = <T extends Element>(root: T, node: ReactNode): T => {\n createRoot(root).render(<ThemeProvider tx={defaultTx}>{node}</ThemeProvider>);\n return root;\n};\n"],
|
|
5
|
-
"mappings": "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
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2024 DXOS.org\n//\n\nimport { Rx } from '@effect-rx/rx-react';\nimport React, { useEffect, useMemo } from 'react';\n\nimport { Capabilities, useAppGraph, useCapabilities } from '@dxos/app-framework';\nimport { isInstanceOf } from '@dxos/echo-schema';\nimport { fullyQualifiedId, getSpace } from '@dxos/react-client/echo';\nimport { type SelectionManager } from '@dxos/react-ui-attention';\nimport { DataType } from '@dxos/schema';\n\nimport { MarkdownEditor, type MarkdownEditorProps } from './MarkdownEditor';\nimport { useExtensions } from '../extensions';\nimport { DocumentType, type MarkdownSettingsProps } from '../types';\nimport { getFallbackName } from '../util';\n\nexport type MarkdownContainerProps = Pick<\n MarkdownEditorProps,\n 'role' | 'extensionProviders' | 'viewMode' | 'editorStateStore' | 'onViewModeChange'\n> & {\n id: string;\n object: DocumentType | DataType.Text | any;\n settings: MarkdownSettingsProps;\n selectionManager?: SelectionManager;\n};\n\n// TODO(burdon): Factor out difference for ECHO and non-ECHO objects; i.e., single component.\nconst MarkdownContainer = ({\n id,\n role,\n object,\n settings,\n selectionManager,\n viewMode,\n editorStateStore,\n onViewModeChange,\n}: MarkdownContainerProps) => {\n const scrollPastEnd = role === 'article';\n const doc = isInstanceOf(DocumentType, object) ? object : undefined;\n const text = isInstanceOf(DataType.Text, object) ? object : undefined;\n const extensions = useExtensions({ document: doc, text, id, settings, selectionManager, viewMode, editorStateStore });\n\n if (doc) {\n return (\n <DocumentEditor\n id={fullyQualifiedId(object)}\n role={role}\n document={doc}\n extensions={extensions}\n viewMode={viewMode}\n settings={settings}\n scrollPastEnd={scrollPastEnd}\n onViewModeChange={onViewModeChange}\n />\n );\n } else if (text) {\n return (\n <MarkdownEditor\n id={id}\n role={role}\n initialValue={text.content}\n extensions={extensions}\n viewMode={viewMode}\n toolbar={settings.toolbar}\n inputMode={settings.editorInputMode}\n scrollPastEnd={scrollPastEnd}\n onViewModeChange={onViewModeChange}\n />\n );\n } else {\n // TODO(burdon): Normalize with above.\n return (\n <MarkdownEditor\n id={id}\n role={role}\n initialValue={object.text}\n extensions={extensions}\n viewMode={viewMode}\n toolbar={settings.toolbar}\n inputMode={settings.editorInputMode}\n scrollPastEnd={scrollPastEnd}\n onViewModeChange={onViewModeChange}\n />\n );\n }\n};\n\ntype DocumentEditorProps = Omit<MarkdownContainerProps, 'object' | 'extensionProviders' | 'editorStateStore'> &\n Pick<MarkdownEditorProps, 'id' | 'scrollPastEnd' | 'extensions'> & {\n document: DocumentType;\n };\n\nexport const DocumentEditor = ({ id, document: doc, settings, viewMode, ...props }: DocumentEditorProps) => {\n const space = getSpace(doc);\n\n // Migrate gradually to `fallbackName`.\n useEffect(() => {\n if (typeof doc.fallbackName === 'string') {\n return;\n }\n\n const fallbackName = doc.content?.target?.content ? getFallbackName(doc.content.target.content) : undefined;\n if (fallbackName) {\n doc.fallbackName = fallbackName;\n }\n }, [doc, doc.content]);\n\n // File dragging.\n const [upload] = useCapabilities(Capabilities.FileUploader);\n const handleFileUpload = useMemo(() => {\n if (space === undefined || upload === undefined) {\n return undefined;\n }\n\n // TODO(burdon): Re-order props: space, file.\n return async (file: File) => upload!(file, space);\n }, [space, upload]);\n\n const { graph } = useAppGraph();\n const customActions = useMemo(() => {\n return Rx.make((get) => {\n const actions = get(graph.actions(id));\n const nodes = actions.filter((action) => action.properties.disposition === 'toolbar');\n return { nodes, edges: nodes.map((node) => ({ source: 'root', target: node.id })) };\n });\n }, [graph]);\n\n return (\n <MarkdownEditor\n id={id}\n initialValue={doc.content?.target?.content}\n viewMode={viewMode}\n toolbar={settings.toolbar}\n customActions={customActions}\n inputMode={settings.editorInputMode}\n onFileUpload={handleFileUpload}\n {...props}\n />\n );\n};\n\nexport default MarkdownContainer;\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { type EditorView } from '@codemirror/view';\nimport React, { useMemo, useEffect, useCallback } from 'react';\nimport { useDropzone } from 'react-dropzone';\n\nimport { type FileInfo } from '@dxos/app-framework';\nimport { invariant } from '@dxos/invariant';\nimport { useThemeContext, useTranslation } from '@dxos/react-ui';\nimport {\n type DNDOptions,\n type EditorViewMode,\n type EditorInputMode,\n type EditorSelectionState,\n type EditorStateStore,\n EditorToolbar,\n type UseTextEditorProps,\n createBasicExtensions,\n createMarkdownExtensions,\n createThemeExtensions,\n dropFile,\n editorSlots,\n editorGutter,\n processEditorPayload,\n stackItemContentEditorClassNames,\n useFormattingState,\n useTextEditor,\n useEditorToolbarState,\n addLink,\n type EditorToolbarActionGraphProps,\n} from '@dxos/react-ui-editor';\nimport { StackItem } from '@dxos/react-ui-stack';\nimport { isNotFalsy, isNonNullable } from '@dxos/util';\n\nimport { useSelectCurrentThread } from '../../hooks';\nimport { MARKDOWN_PLUGIN } from '../../meta';\nimport { type MarkdownPluginState } from '../../types';\n\nexport type MarkdownEditorProps = {\n id: string;\n role?: string;\n inputMode?: EditorInputMode;\n scrollPastEnd?: boolean;\n toolbar?: boolean;\n customActions?: EditorToolbarActionGraphProps['customActions'];\n // TODO(wittjosiah): Generalize custom toolbar actions (e.g. comment, upload, etc.)\n viewMode?: EditorViewMode;\n editorStateStore?: EditorStateStore;\n onViewModeChange?: (id: string, mode: EditorViewMode) => void;\n onFileUpload?: (file: File) => Promise<FileInfo | undefined>;\n} & Pick<UseTextEditorProps, 'initialValue' | 'extensions'> &\n Partial<Pick<MarkdownPluginState, 'extensionProviders'>>;\n\n/**\n * Base markdown editor component.\n *\n * This component provides all the features of the markdown editor that do no depend on ECHO.\n * This allows it to be used as a common editor for markdown content on arbitrary backends (e.g. files).\n */\nexport const MarkdownEditor = ({\n id,\n role = 'article',\n initialValue,\n extensions,\n extensionProviders,\n scrollPastEnd,\n toolbar,\n customActions,\n viewMode,\n editorStateStore,\n onFileUpload,\n onViewModeChange,\n}: MarkdownEditorProps) => {\n const { t } = useTranslation(MARKDOWN_PLUGIN);\n const { themeMode } = useThemeContext();\n const toolbarState = useEditorToolbarState({ viewMode });\n const formattingObserver = useFormattingState(toolbarState);\n\n // Restore last selection and scroll point.\n const { scrollTo, selection } = useMemo<EditorSelectionState>(() => editorStateStore?.getState(id) ?? {}, [id]);\n\n // Extensions from other plugins.\n // TODO(burdon): Reconcile with DocumentEditor.useExtensions.\n const providerExtensions = useMemo(\n () => extensionProviders?.flatMap((provider) => provider({})).filter(isNonNullable),\n [extensionProviders],\n );\n\n // TODO(wittjosiah): Factor out to file uploader plugin.\n // Drag files.\n const handleDrop: DNDOptions['onDrop'] = async (view, { files }) => {\n const file = files[0];\n const info = file && onFileUpload ? await onFileUpload(file) : undefined;\n if (info) {\n processEditorPayload(view, { type: 'image', data: info.url });\n }\n };\n\n const {\n parentRef,\n view: editorView,\n focusAttributes,\n } = useTextEditor(\n () => ({\n initialValue,\n extensions: [\n formattingObserver,\n createBasicExtensions({\n readOnly: viewMode === 'readonly',\n placeholder: t('editor placeholder'),\n scrollPastEnd: role === 'section' ? false : scrollPastEnd,\n }),\n createMarkdownExtensions({ themeMode }),\n createThemeExtensions({ themeMode, syntaxHighlighting: true, slots: editorSlots }),\n editorGutter,\n role !== 'section' && onFileUpload && dropFile({ onDrop: handleDrop }),\n providerExtensions,\n extensions,\n ].filter(isNotFalsy),\n ...(role !== 'section' && {\n id,\n scrollTo,\n selection,\n // TODO(wittjosiah): Autofocus based on layout is racy.\n // autoFocus: layoutPlugin?.provides.layout ? layoutPlugin?.provides.layout.scrollIntoView === id : true,\n moveToEndOfLine: true,\n }),\n }),\n [id, formattingObserver, viewMode, themeMode, extensions, providerExtensions],\n );\n\n useTest(editorView);\n useSelectCurrentThread(editorView, id);\n\n // https://react-dropzone.js.org/#src\n const { acceptedFiles, getInputProps, open } = useDropzone({\n multiple: false,\n noDrag: true,\n accept: {\n 'image/*': ['.jpg', '.jpeg', '.png', '.gif'],\n },\n });\n\n useEffect(() => {\n if (editorView && onFileUpload && acceptedFiles.length) {\n requestAnimationFrame(async () => {\n // NOTE: Clone file since react-dropzone patches in a non-standard `path` property, which confuses IPFS.\n const f = acceptedFiles[0];\n const file = new File([f], f.name, {\n type: f.type,\n lastModified: f.lastModified,\n });\n\n const info = await onFileUpload(file);\n if (info) {\n addLink({ url: info.url, image: true })(editorView);\n }\n });\n }\n }, [acceptedFiles, editorView, onFileUpload]);\n\n const getView = useCallback(() => {\n invariant(editorView);\n return editorView;\n }, [editorView]);\n\n const handleViewModeChange = useCallback(\n (mode: EditorViewMode) => onViewModeChange?.(id, mode),\n [id, onViewModeChange],\n );\n\n const handleImageUpload = useCallback(() => {\n if (onFileUpload) {\n open();\n }\n }, [onFileUpload]);\n\n return (\n <StackItem.Content toolbar={!!toolbar}>\n {toolbar && (\n <>\n <EditorToolbar\n attendableId={id}\n role={role}\n state={toolbarState}\n customActions={customActions}\n getView={getView}\n image={handleImageUpload}\n viewMode={handleViewModeChange}\n />\n <input {...getInputProps()} />\n </>\n )}\n <div\n role='none'\n ref={parentRef}\n data-testid='composer.markdownRoot'\n data-toolbar={toolbar ? 'enabled' : 'disabled'}\n className={stackItemContentEditorClassNames(role)}\n data-popover-collision-boundary={true}\n {...focusAttributes}\n />\n </StackItem.Content>\n );\n};\n\n// Expose editor view for playwright tests.\n// TODO(wittjosiah): Find a better way to expose this or find a way to limit it to test runs.\nconst useTest = (view?: EditorView) => {\n useEffect(() => {\n const composer = (window as any).composer;\n if (composer) {\n composer.editorView = view;\n }\n }, [view]);\n};\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport { EditorView } from '@codemirror/view';\nimport { Schema } from 'effect';\nimport { useMemo } from 'react';\n\nimport { createResolver, LayoutAction, useIntentResolver } from '@dxos/app-framework';\nimport { invariant } from '@dxos/invariant';\nimport { Cursor, setSelection } from '@dxos/react-ui-editor';\n\nimport { MARKDOWN_PLUGIN } from '../meta';\n\n/**\n * Handle scrolling and selection of the current thread in a markdown editor.\n */\nexport const useSelectCurrentThread = (editorView: EditorView | undefined, documentId: string) => {\n const scrollIntoViewResolver = useMemo(\n () =>\n createResolver({\n intent: LayoutAction.UpdateLayout,\n position: 'hoist',\n filter: (data): data is { part: 'current'; subject: string; options: { cursor: string } } => {\n if (!Schema.is(LayoutAction.ScrollIntoView.fields.input)(data)) {\n return false;\n }\n\n return !!editorView && data.subject === documentId && !!data.options?.cursor;\n },\n resolve: ({ options: { cursor } }) => {\n invariant(editorView, 'Editor view is not defined.');\n const range = Cursor.getRangeFromCursor(editorView.state, cursor!);\n if (range) {\n const selection = editorView.state.selection.main.from !== range.from ? { anchor: range.from } : undefined;\n const effects = [\n // NOTE: This does not use the DOM scrollIntoView function.\n EditorView.scrollIntoView(range.from, { y: 'start', yMargin: 96 }),\n ];\n if (selection) {\n // Update the editor selection to get bi-directional highlighting.\n effects.push(setSelection.of({ current: documentId }));\n }\n\n editorView.dispatch({\n effects,\n selection: selection ? { anchor: range.from } : undefined,\n });\n }\n },\n }),\n [documentId, editorView],\n );\n\n useIntentResolver(MARKDOWN_PLUGIN, scrollIntoViewResolver);\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport React, { type AnchorHTMLAttributes, type ReactNode, useMemo } from 'react';\nimport { createRoot } from 'react-dom/client';\n\nimport {\n createIntent,\n LayoutAction,\n type PromiseIntentDispatcher,\n useCapabilities,\n useIntentDispatcher,\n} from '@dxos/app-framework';\nimport { invariant } from '@dxos/invariant';\nimport { createDocAccessor, fullyQualifiedId, getSpace, type QueryResult } from '@dxos/react-client/echo';\nimport { useIdentity } from '@dxos/react-client/halo';\nimport { Icon, ThemeProvider } from '@dxos/react-ui';\nimport { type SelectionManager } from '@dxos/react-ui-attention';\nimport {\n type AutocompleteResult,\n type EditorStateStore,\n type EditorViewMode,\n type Extension,\n InputModeExtensions,\n createDataExtensions,\n autocomplete,\n decorateMarkdown,\n folding,\n formattingKeymap,\n linkTooltip,\n listener,\n preview,\n selectionState,\n typewriter,\n type RenderCallback,\n EditorView,\n documentId,\n Cursor,\n} from '@dxos/react-ui-editor';\nimport { defaultTx } from '@dxos/react-ui-theme';\nimport { type DataType } from '@dxos/schema';\nimport { isNotFalsy } from '@dxos/util';\n\nimport { MarkdownCapabilities } from './capabilities';\nimport { type DocumentType, type MarkdownSettingsProps } from './types';\nimport { setFallbackName } from './util';\n\ntype ExtensionsOptions = {\n document?: DocumentType;\n id?: string;\n text?: DataType.Text;\n dispatch?: PromiseIntentDispatcher;\n query?: QueryResult<DocumentType>;\n settings: MarkdownSettingsProps;\n selectionManager?: SelectionManager;\n viewMode?: EditorViewMode;\n editorStateStore?: EditorStateStore;\n};\n\n// TODO(burdon): Merge with createBaseExtensions below.\nexport const useExtensions = ({\n document,\n id,\n text,\n settings,\n selectionManager,\n viewMode,\n editorStateStore,\n}: ExtensionsOptions): Extension[] => {\n const { dispatchPromise: dispatch } = useIntentDispatcher();\n const identity = useIdentity();\n const space = getSpace(document) ?? getSpace(text);\n\n // TODO(wittjosiah): Autocomplete is not working and this query is causing performance issues.\n // TODO(burdon): Unsubscribe.\n // const query = space?.db.query(Filter.type(DocumentType));\n // query?.subscribe();\n const baseExtensions = useMemo(\n () =>\n createBaseExtensions({\n document,\n id,\n text,\n settings,\n selectionManager,\n viewMode,\n dispatch,\n // query,\n }),\n [\n document,\n id,\n text,\n viewMode,\n dispatch,\n settings,\n settings.editorInputMode,\n settings.folding,\n settings.numberedHeadings,\n settings.debug,\n settings.typewriter,\n selectionManager,\n ],\n );\n\n const extensionProviders = useCapabilities(MarkdownCapabilities.Extensions);\n\n //\n // External extensions from other plugins.\n //\n const pluginExtensions = useMemo<Extension[]>(() => {\n if (!document) {\n return [];\n }\n\n return extensionProviders.flat().reduce((acc: Extension[], provider) => {\n const extension = typeof provider === 'function' ? provider({ document }) : provider;\n if (extension) {\n acc.push(extension);\n }\n\n return acc;\n }, []);\n }, [extensionProviders, document]);\n\n //\n // Basic plugins.\n //\n return useMemo<Extension[]>(\n () =>\n [\n // NOTE: Data extensions must be first so that automerge is updated before other extensions compute their state.\n document &&\n createDataExtensions({\n id: document.id,\n text: document.content.target && createDocAccessor(document.content.target, ['content']),\n space,\n identity,\n }),\n text &&\n id &&\n createDataExtensions({\n id,\n text: createDocAccessor(text, ['content']),\n space,\n identity,\n }),\n selectionState(editorStateStore),\n document &&\n listener({\n onChange: (text) => setFallbackName(document, text),\n }),\n baseExtensions,\n pluginExtensions,\n ].filter(isNotFalsy),\n [baseExtensions, pluginExtensions, document, document?.content?.target, text, id, space, identity],\n );\n};\n\n/**\n * Create extension instances for editor.\n */\nconst createBaseExtensions = ({\n document,\n id,\n dispatch,\n settings,\n selectionManager,\n query,\n viewMode,\n}: ExtensionsOptions): Extension[] => {\n const extensions: Extension[] = [\n selectionManager && selectionChange(selectionManager),\n settings.editorInputMode && InputModeExtensions[settings.editorInputMode],\n settings.folding && folding(),\n ].filter(isNotFalsy);\n\n //\n // Markdown\n //\n if (viewMode !== 'source') {\n extensions.push(\n ...[\n formattingKeymap(),\n decorateMarkdown({\n selectionChangeDelay: 100,\n numberedHeadings: settings.numberedHeadings ? { from: 2 } : undefined,\n // TODO(wittjosiah): For internal links, consider ignoring the link text and rendering the label of the object being linked to.\n renderLinkButton:\n dispatch && (document || id)\n ? createLinkRenderer((id: string) => {\n void dispatch(\n createIntent(LayoutAction.Open, {\n part: 'main',\n subject: [id],\n options: {\n pivotId: document ? fullyQualifiedId(document) : id,\n },\n }),\n );\n })\n : undefined,\n }),\n linkTooltip(renderLinkTooltip),\n preview(),\n ],\n );\n }\n\n //\n // Autocomplete object links.\n //\n if (query) {\n extensions.push(\n autocomplete({\n onSearch: (text: string) => {\n // TODO(burdon): Specify filter (e.g., stack).\n return query.objects\n .map<AutocompleteResult | undefined>((object) =>\n object.name?.length && object.id !== document?.id\n ? {\n label: object.name,\n // TODO(burdon): Factor out URL builder.\n apply: `[${object.name}](/${fullyQualifiedId(object)})`,\n }\n : undefined,\n )\n .filter(isNotFalsy);\n },\n }),\n );\n }\n\n if (settings.debug) {\n const items = settings.typewriter?.split(/[,\\n]/) ?? '';\n if (items) {\n extensions.push(typewriter({ items }));\n }\n }\n\n return extensions;\n};\n\nexport const selectionChange = (selectionManager: SelectionManager) => {\n return EditorView.updateListener.of((update) => {\n if (update.selectionSet) {\n const id = update.state.facet(documentId);\n const cursorConverter = update.state.facet(Cursor.converter);\n const selection = update.state.selection;\n const ranges = selection.ranges\n .map((range) => ({\n from: cursorConverter.toCursor(range.from),\n to: cursorConverter.toCursor(range.to),\n }))\n .filter(({ from, to }) => to > from);\n selectionManager.updateMultiRange(id, ranges);\n }\n });\n};\n\n// TODO(burdon): Factor out styles.\nconst style = {\n hover: 'rounded-sm text-primary-500 hover:text-primary-600 dark:text-primary-500 hover:dark:text-primary-400',\n icon: 'inline-block leading-none mis-1 cursor-pointer',\n};\n\nconst createLinkRenderer =\n (onSelectObject: (id: string) => void): RenderCallback<{ url: string }> =>\n (el, { url }) => {\n // TODO(burdon): Formalize/document internal link format.\n const isInternal =\n url.startsWith('/') ||\n // TODO(wittjosiah): This should probably be parsed out on paste?\n url.startsWith(window.location.origin);\n\n const options: AnchorHTMLAttributes<any> = isInternal\n ? {\n onClick: () => {\n const qualifiedId = url.split('/').at(-1);\n invariant(qualifiedId, 'Invalid link format.');\n onSelectObject(qualifiedId);\n },\n }\n : {\n href: url,\n rel: 'noreferrer',\n target: '_blank',\n };\n\n renderRoot(\n el,\n <a {...options} className={style.hover}>\n <Icon\n icon={isInternal ? 'ph--arrow-square-down--bold' : 'ph--arrow-square-out--bold'}\n size={4}\n classNames={style.icon}\n />\n </a>,\n );\n };\n\nconst renderLinkTooltip: RenderCallback<{ url: string }> = (el, { url }) => {\n const web = new URL(url);\n renderRoot(\n el,\n <a href={url} rel='noreferrer' target='_blank' className={style.hover}>\n {web.origin}\n <Icon icon='ph--arrow-square-out--bold' size={4} classNames={style.icon} />\n </a>,\n );\n};\n\n// TODO(burdon): Remove react rendering; use DOM directly.\nexport const renderRoot = <T extends Element>(root: T, node: ReactNode): T => {\n createRoot(root).render(<ThemeProvider tx={defaultTx}>{node}</ThemeProvider>);\n return root;\n};\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["import_react", "import_app_framework", "import_invariant", "import_react_ui_editor", "import_echo", "import_react_ui", "import_util", "useSelectCurrentThread", "editorView", "documentId", "scrollIntoViewResolver", "useMemo", "createResolver", "intent", "LayoutAction", "UpdateLayout", "position", "filter", "data", "Schema", "is", "ScrollIntoView", "fields", "input", "subject", "options", "cursor", "resolve", "invariant", "range", "Cursor", "getRangeFromCursor", "state", "selection", "main", "from", "anchor", "undefined", "effects", "EditorView", "scrollIntoView", "y", "yMargin", "push", "setSelection", "of", "current", "dispatch", "useIntentResolver", "MARKDOWN_PLUGIN", "MarkdownEditor", "id", "role", "initialValue", "extensions", "extensionProviders", "scrollPastEnd", "toolbar", "customActions", "viewMode", "editorStateStore", "onFileUpload", "onViewModeChange", "t", "useTranslation", "themeMode", "useThemeContext", "toolbarState", "useEditorToolbarState", "formattingObserver", "useFormattingState", "scrollTo", "getState", "providerExtensions", "flatMap", "provider", "isNonNullable", "handleDrop", "view", "files", "file", "info", "processEditorPayload", "type", "url", "parentRef", "focusAttributes", "useTextEditor", "createBasicExtensions", "readOnly", "placeholder", "createMarkdownExtensions", "createThemeExtensions", "syntaxHighlighting", "slots", "editorSlots", "editorGutter", "dropFile", "onDrop", "isNotFalsy", "moveToEndOfLine", "useTest", "acceptedFiles", "getInputProps", "open", "useDropzone", "multiple", "noDrag", "accept", "useEffect", "length", "requestAnimationFrame", "f", "File", "name", "lastModified", "addLink", "image", "getView", "useCallback", "handleViewModeChange", "mode", "handleImageUpload", "React", "StackItem", "Content", "EditorToolbar", "attendableId", "div", "ref", "data-testid", "data-toolbar", "className", "stackItemContentEditorClassNames", "data-popover-collision-boundary", "composer", "window", "useExtensions", "document", "text", "settings", "selectionManager", "dispatchPromise", "useIntentDispatcher", "identity", "useIdentity", "space", "getSpace", "baseExtensions", "createBaseExtensions", "editorInputMode", "folding", "numberedHeadings", "debug", "typewriter", "useCapabilities", "MarkdownCapabilities", "Extensions", "pluginExtensions", "flat", "reduce", "acc", "extension", "createDataExtensions", "content", "target", "createDocAccessor", "selectionState", "listener", "onChange", "setFallbackName", "query", "selectionChange", "InputModeExtensions", "formattingKeymap", "decorateMarkdown", "selectionChangeDelay", "renderLinkButton", "createLinkRenderer", "createIntent", "Open", "part", "pivotId", "fullyQualifiedId", "linkTooltip", "renderLinkTooltip", "preview", "autocomplete", "onSearch", "objects", "map", "object", "label", "apply", "items", "split", "updateListener", "update", "selectionSet", "facet", "cursorConverter", "converter", "ranges", "toCursor", "to", "updateMultiRange", "style", "hover", "icon", "onSelectObject", "el", "isInternal", "startsWith", "location", "origin", "onClick", "qualifiedId", "at", "href", "rel", "renderRoot", "a", "Icon", "size", "classNames", "web", "URL", "root", "node", "createRoot", "render", "ThemeProvider", "tx", "defaultTx", "MarkdownContainer", "doc", "isInstanceOf", "DocumentType", "DataType", "Text", "DocumentEditor", "inputMode", "props", "fallbackName", "getFallbackName", "upload", "Capabilities", "FileUploader", "handleFileUpload", "graph", "useAppGraph", "Rx", "make", "get", "actions", "nodes", "action", "properties", "disposition", "edges", "source"]
|
|
7
7
|
}
|
|
@@ -26,8 +26,8 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
26
26
|
mod
|
|
27
27
|
));
|
|
28
28
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
-
var
|
|
30
|
-
__export(
|
|
29
|
+
var chunk_C4HR7UXE_exports = {};
|
|
30
|
+
__export(chunk_C4HR7UXE_exports, {
|
|
31
31
|
AnchorSort: () => AnchorSort,
|
|
32
32
|
AppGraphSerializer: () => AppGraphSerializer,
|
|
33
33
|
ArtifactDefinition: () => ArtifactDefinition,
|
|
@@ -36,13 +36,13 @@ __export(chunk_3KDAJADP_exports, {
|
|
|
36
36
|
MarkdownState: () => MarkdownState,
|
|
37
37
|
ReactSurface: () => ReactSurface
|
|
38
38
|
});
|
|
39
|
-
module.exports = __toCommonJS(
|
|
39
|
+
module.exports = __toCommonJS(chunk_C4HR7UXE_exports);
|
|
40
40
|
var import_app_framework = require("@dxos/app-framework");
|
|
41
41
|
var AnchorSort = (0, import_app_framework.lazy)(() => import("./anchor-sort-NHVF23EU.cjs"));
|
|
42
42
|
var AppGraphSerializer = (0, import_app_framework.lazy)(() => import("./app-graph-serializer-CLALIYN3.cjs"));
|
|
43
43
|
var ArtifactDefinition = (0, import_app_framework.lazy)(() => import("./artifact-definition-VEAHK7BX.cjs"));
|
|
44
44
|
var IntentResolver = (0, import_app_framework.lazy)(() => import("./intent-resolver-AUZVK3NZ.cjs"));
|
|
45
|
-
var ReactSurface = (0, import_app_framework.lazy)(() => import("./react-surface-
|
|
45
|
+
var ReactSurface = (0, import_app_framework.lazy)(() => import("./react-surface-WJZTEBYO.cjs"));
|
|
46
46
|
var MarkdownSettings = (0, import_app_framework.lazy)(() => import("./settings-IRKU3WPM.cjs"));
|
|
47
47
|
var MarkdownState = (0, import_app_framework.lazy)(() => import("./state-KKDRAG7X.cjs"));
|
|
48
48
|
// Annotate the CommonJS export names for ESM import in node:
|
|
@@ -55,4 +55,4 @@ var MarkdownState = (0, import_app_framework.lazy)(() => import("./state-KKDRAG7
|
|
|
55
55
|
MarkdownState,
|
|
56
56
|
ReactSurface
|
|
57
57
|
});
|
|
58
|
-
//# sourceMappingURL=chunk-
|
|
58
|
+
//# sourceMappingURL=chunk-C4HR7UXE.cjs.map
|
package/dist/lib/node/index.cjs
CHANGED
|
@@ -31,7 +31,7 @@ __export(node_exports, {
|
|
|
31
31
|
});
|
|
32
32
|
module.exports = __toCommonJS(node_exports);
|
|
33
33
|
var import_chunk_ZDTL47I7 = require("./chunk-ZDTL47I7.cjs");
|
|
34
|
-
var
|
|
34
|
+
var import_chunk_C4HR7UXE = require("./chunk-C4HR7UXE.cjs");
|
|
35
35
|
var import_chunk_IFYSBQE5 = require("./chunk-IFYSBQE5.cjs");
|
|
36
36
|
var import_chunk_G7RBJX22 = require("./chunk-G7RBJX22.cjs");
|
|
37
37
|
var import_chunk_RQS4KBMG = require("./chunk-RQS4KBMG.cjs");
|
|
@@ -62,7 +62,7 @@ var MarkdownPlugin = () => (0, import_app_framework2.definePlugin)(import_chunk_
|
|
|
62
62
|
(0, import_app_framework2.defineModule)({
|
|
63
63
|
id: `${import_chunk_ZU5OIHCY.meta.id}/module/settings`,
|
|
64
64
|
activatesOn: import_app_framework2.Events.SetupSettings,
|
|
65
|
-
activate:
|
|
65
|
+
activate: import_chunk_C4HR7UXE.MarkdownSettings
|
|
66
66
|
}),
|
|
67
67
|
(0, import_app_framework2.defineModule)({
|
|
68
68
|
id: `${import_chunk_ZU5OIHCY.meta.id}/module/state`,
|
|
@@ -70,7 +70,7 @@ var MarkdownPlugin = () => (0, import_app_framework2.definePlugin)(import_chunk_
|
|
|
70
70
|
// Should this be a different event?
|
|
71
71
|
// Should settings store be renamed to be more generic?
|
|
72
72
|
activatesOn: import_app_framework2.Events.SetupSettings,
|
|
73
|
-
activate:
|
|
73
|
+
activate: import_chunk_C4HR7UXE.MarkdownState
|
|
74
74
|
}),
|
|
75
75
|
(0, import_app_framework2.defineModule)({
|
|
76
76
|
id: `${import_chunk_ZU5OIHCY.meta.id}/module/metadata`,
|
|
@@ -126,28 +126,28 @@ var MarkdownPlugin = () => (0, import_app_framework2.definePlugin)(import_chunk_
|
|
|
126
126
|
activatesBefore: [
|
|
127
127
|
MarkdownEvents.SetupExtensions
|
|
128
128
|
],
|
|
129
|
-
activate:
|
|
129
|
+
activate: import_chunk_C4HR7UXE.ReactSurface
|
|
130
130
|
}),
|
|
131
131
|
(0, import_app_framework2.defineModule)({
|
|
132
132
|
id: `${import_chunk_ZU5OIHCY.meta.id}/module/intent-resolver`,
|
|
133
133
|
activatesOn: import_app_framework2.Events.SetupIntentResolver,
|
|
134
|
-
activate:
|
|
134
|
+
activate: import_chunk_C4HR7UXE.IntentResolver
|
|
135
135
|
}),
|
|
136
136
|
(0, import_app_framework2.defineModule)({
|
|
137
137
|
id: `${import_chunk_ZU5OIHCY.meta.id}/module/app-graph-serializer`,
|
|
138
138
|
activatesOn: import_app_framework2.Events.AppGraphReady,
|
|
139
|
-
activate:
|
|
139
|
+
activate: import_chunk_C4HR7UXE.AppGraphSerializer
|
|
140
140
|
}),
|
|
141
141
|
(0, import_app_framework2.defineModule)({
|
|
142
142
|
id: `${import_chunk_ZU5OIHCY.meta.id}/module/anchor-sort`,
|
|
143
143
|
// TODO(wittjosiah): More relevant event?
|
|
144
144
|
activatesOn: import_app_framework2.Events.AppGraphReady,
|
|
145
|
-
activate:
|
|
145
|
+
activate: import_chunk_C4HR7UXE.AnchorSort
|
|
146
146
|
}),
|
|
147
147
|
(0, import_app_framework2.defineModule)({
|
|
148
148
|
id: `${import_chunk_ZU5OIHCY.meta.id}/module/artifact-definition`,
|
|
149
149
|
activatesOn: import_app_framework2.Events.SetupArtifactDefinition,
|
|
150
|
-
activate:
|
|
150
|
+
activate: import_chunk_C4HR7UXE.ArtifactDefinition
|
|
151
151
|
})
|
|
152
152
|
]);
|
|
153
153
|
// Annotate the CommonJS export names for ESM import in node:
|
package/dist/lib/node/meta.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"inputs":{"packages/plugins/plugin-markdown/src/meta.ts":{"bytes":2798,"imports":[],"format":"esm"},"packages/plugins/plugin-markdown/src/capabilities/capabilities.ts":{"bytes":2125,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-markdown/src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"packages/plugins/plugin-markdown/src/types/schema.ts":{"bytes":4593,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true}],"format":"esm"},"packages/plugins/plugin-markdown/src/types/types.ts":{"bytes":6842,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-markdown/src/types/schema.ts","kind":"import-statement","original":"./schema"},{"path":"packages/plugins/plugin-markdown/src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"packages/plugins/plugin-markdown/src/types/index.ts":{"bytes":557,"imports":[{"path":"packages/plugins/plugin-markdown/src/types/schema.ts","kind":"import-statement","original":"./schema"},{"path":"packages/plugins/plugin-markdown/src/types/types.ts","kind":"import-statement","original":"./types"}],"format":"esm"},"packages/plugins/plugin-markdown/src/capabilities/anchor-sort.ts":{"bytes":4106,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-markdown/src/types/index.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-markdown/src/translations.ts":{"bytes":5199,"imports":[{"path":"packages/plugins/plugin-markdown/src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"packages/plugins/plugin-markdown/src/types/index.ts","kind":"import-statement","original":"./types"}],"format":"esm"},"packages/plugins/plugin-markdown/src/capabilities/app-graph-serializer.ts":{"bytes":6678,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-markdown/src/translations.ts","kind":"import-statement","original":"../translations"},{"path":"packages/plugins/plugin-markdown/src/types/index.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-markdown/src/capabilities/artifact-definition.ts":{"bytes":16432,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/artifact","kind":"import-statement","external":true},{"path":"@dxos/assistant","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-markdown/src/meta.ts","kind":"import-statement","original":"../meta"},{"path":"packages/plugins/plugin-markdown/src/types/index.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-markdown/src/capabilities/intent-resolver.ts":{"bytes":8745,"imports":[{"path":"@automerge/automerge","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-markdown/src/capabilities/capabilities.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-markdown/src/types/index.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-markdown/src/components/MarkdownSettings/MarkdownSettings.tsx":{"bytes":13220,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-markdown/src/meta.ts","kind":"import-statement","original":"../../meta"}],"format":"esm"},"packages/plugins/plugin-markdown/src/components/MarkdownSettings/index.ts":{"bytes":524,"imports":[{"path":"packages/plugins/plugin-markdown/src/components/MarkdownSettings/MarkdownSettings.tsx","kind":"import-statement","original":"./MarkdownSettings"}],"format":"esm"},"packages/plugins/plugin-markdown/src/hooks/useSelectCurrentThread.tsx":{"bytes":8023,"imports":[{"path":"@codemirror/view","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-markdown/src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"packages/plugins/plugin-markdown/src/hooks/index.ts":{"bytes":516,"imports":[{"path":"packages/plugins/plugin-markdown/src/hooks/useSelectCurrentThread.tsx","kind":"import-statement","original":"./useSelectCurrentThread"}],"format":"esm"},"packages/plugins/plugin-markdown/src/components/MarkdownEditor/MarkdownEditor.tsx":{"bytes":22987,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react-dropzone","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true},{"path":"@dxos/react-ui-stack","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-markdown/src/hooks/index.ts","kind":"import-statement","original":"../../hooks"},{"path":"packages/plugins/plugin-markdown/src/meta.ts","kind":"import-statement","original":"../../meta"}],"format":"esm"},"packages/plugins/plugin-markdown/src/components/MarkdownEditor/index.ts":{"bytes":516,"imports":[{"path":"packages/plugins/plugin-markdown/src/components/MarkdownEditor/MarkdownEditor.tsx","kind":"import-statement","original":"./MarkdownEditor"}],"format":"esm"},"packages/plugins/plugin-markdown/src/util.tsx":{"bytes":6320,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-markdown/src/types/index.ts","kind":"import-statement","original":"./types"}],"format":"esm"},"packages/plugins/plugin-markdown/src/extensions.tsx":{"bytes":29679,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"react-dom/client","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-client/halo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-markdown/src/capabilities/index.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-markdown/src/util.tsx","kind":"import-statement","original":"./util"}],"format":"esm"},"packages/plugins/plugin-markdown/src/components/MarkdownContainer.tsx":{"bytes":15392,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"@effect-rx/rx-react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-markdown/src/components/MarkdownEditor/index.ts","kind":"import-statement","original":"./MarkdownEditor"},{"path":"packages/plugins/plugin-markdown/src/extensions.tsx","kind":"import-statement","original":"../extensions"},{"path":"packages/plugins/plugin-markdown/src/types/index.ts","kind":"import-statement","original":"../types"},{"path":"packages/plugins/plugin-markdown/src/util.tsx","kind":"import-statement","original":"../util"}],"format":"esm"},"packages/plugins/plugin-markdown/src/components/MarkdownPreview/MarkdownPreview.tsx":{"bytes":10918,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/plugin-preview","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-markdown/src/meta.ts","kind":"import-statement","original":"../../meta"},{"path":"packages/plugins/plugin-markdown/src/types/index.ts","kind":"import-statement","original":"../../types"},{"path":"packages/plugins/plugin-markdown/src/util.tsx","kind":"import-statement","original":"../../util"}],"format":"esm"},"packages/plugins/plugin-markdown/src/components/MarkdownPreview/index.ts":{"bytes":811,"imports":[{"path":"packages/plugins/plugin-markdown/src/components/MarkdownPreview/MarkdownPreview.tsx","kind":"import-statement","original":"./MarkdownPreview"},{"path":"packages/plugins/plugin-markdown/src/components/MarkdownPreview/MarkdownPreview.tsx","kind":"import-statement","original":"./MarkdownPreview"}],"format":"esm"},"packages/plugins/plugin-markdown/src/components/index.ts":{"bytes":1161,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-markdown/src/components/MarkdownSettings/index.ts","kind":"import-statement","original":"./MarkdownSettings"},{"path":"packages/plugins/plugin-markdown/src/components/MarkdownContainer.tsx","kind":"dynamic-import","original":"./MarkdownContainer"},{"path":"packages/plugins/plugin-markdown/src/components/MarkdownPreview/index.ts","kind":"dynamic-import","original":"./MarkdownPreview"}],"format":"esm"},"packages/plugins/plugin-markdown/src/capabilities/react-surface.tsx":{"bytes":16741,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/local-storage","kind":"import-statement","external":true},{"path":"@dxos/plugin-attention","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-markdown/src/capabilities/capabilities.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-markdown/src/components/index.ts","kind":"import-statement","original":"../components"},{"path":"packages/plugins/plugin-markdown/src/meta.ts","kind":"import-statement","original":"../meta"},{"path":"packages/plugins/plugin-markdown/src/types/index.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-markdown/src/capabilities/settings.ts":{"bytes":2450,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-markdown/src/meta.ts","kind":"import-statement","original":"../meta"},{"path":"packages/plugins/plugin-markdown/src/types/index.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-markdown/src/capabilities/state.ts":{"bytes":4788,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/local-storage","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-markdown/src/capabilities/capabilities.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-markdown/src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"packages/plugins/plugin-markdown/src/capabilities/index.ts":{"bytes":2421,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-markdown/src/capabilities/capabilities.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-markdown/src/capabilities/anchor-sort.ts","kind":"dynamic-import","original":"./anchor-sort"},{"path":"packages/plugins/plugin-markdown/src/capabilities/app-graph-serializer.ts","kind":"dynamic-import","original":"./app-graph-serializer"},{"path":"packages/plugins/plugin-markdown/src/capabilities/artifact-definition.ts","kind":"dynamic-import","original":"./artifact-definition"},{"path":"packages/plugins/plugin-markdown/src/capabilities/intent-resolver.ts","kind":"dynamic-import","original":"./intent-resolver"},{"path":"packages/plugins/plugin-markdown/src/capabilities/react-surface.tsx","kind":"dynamic-import","original":"./react-surface"},{"path":"packages/plugins/plugin-markdown/src/capabilities/settings.ts","kind":"dynamic-import","original":"./settings"},{"path":"packages/plugins/plugin-markdown/src/capabilities/state.ts","kind":"dynamic-import","original":"./state"}],"format":"esm"},"packages/plugins/plugin-markdown/src/events.ts":{"bytes":1278,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-markdown/src/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"},"packages/plugins/plugin-markdown/src/MarkdownPlugin.tsx":{"bytes":16679,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/plugin-client","kind":"import-statement","external":true},{"path":"@dxos/plugin-space","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-markdown/src/capabilities/index.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-markdown/src/events.ts","kind":"import-statement","original":"./events"},{"path":"packages/plugins/plugin-markdown/src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"packages/plugins/plugin-markdown/src/translations.ts","kind":"import-statement","original":"./translations"},{"path":"packages/plugins/plugin-markdown/src/types/index.ts","kind":"import-statement","original":"./types"},{"path":"packages/plugins/plugin-markdown/src/util.tsx","kind":"import-statement","original":"./util"}],"format":"esm"},"packages/plugins/plugin-markdown/src/index.ts":{"bytes":1008,"imports":[{"path":"packages/plugins/plugin-markdown/src/capabilities/index.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-markdown/src/events.ts","kind":"import-statement","original":"./events"},{"path":"packages/plugins/plugin-markdown/src/MarkdownPlugin.tsx","kind":"import-statement","original":"./MarkdownPlugin"},{"path":"packages/plugins/plugin-markdown/src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"packages/plugins/plugin-markdown/src/util.tsx","kind":"import-statement","original":"./util"}],"format":"esm"}},"outputs":{"packages/plugins/plugin-markdown/dist/lib/node/react-surface-QM65PGDI.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":15392},"packages/plugins/plugin-markdown/dist/lib/node/react-surface-QM65PGDI.cjs":{"imports":[{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-IFYSBQE5.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-RQS4KBMG.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-ZU5OIHCY.cjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/local-storage","kind":"import-statement","external":true},{"path":"@dxos/plugin-attention","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-markdown/dist/lib/node/MarkdownContainer-LFCR2YMB.cjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/MarkdownPreview-G34HSQEB.cjs","kind":"dynamic-import"}],"exports":["default"],"entryPoint":"packages/plugins/plugin-markdown/src/capabilities/react-surface.tsx","inputs":{"packages/plugins/plugin-markdown/src/capabilities/react-surface.tsx":{"bytesInOutput":3994},"packages/plugins/plugin-markdown/src/components/index.ts":{"bytesInOutput":186},"packages/plugins/plugin-markdown/src/components/MarkdownSettings/MarkdownSettings.tsx":{"bytesInOutput":3797},"packages/plugins/plugin-markdown/src/components/MarkdownSettings/index.ts":{"bytesInOutput":0}},"bytes":8625},"packages/plugins/plugin-markdown/dist/lib/node/settings-IRKU3WPM.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1265},"packages/plugins/plugin-markdown/dist/lib/node/settings-IRKU3WPM.cjs":{"imports":[{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-RQS4KBMG.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-ZU5OIHCY.cjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-markdown/src/capabilities/settings.ts","inputs":{"packages/plugins/plugin-markdown/src/capabilities/settings.ts":{"bytesInOutput":432}},"bytes":710},"packages/plugins/plugin-markdown/dist/lib/node/state-KKDRAG7X.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2547},"packages/plugins/plugin-markdown/dist/lib/node/state-KKDRAG7X.cjs":{"imports":[{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-IFYSBQE5.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-ZU5OIHCY.cjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/local-storage","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-markdown/src/capabilities/state.ts","inputs":{"packages/plugins/plugin-markdown/src/capabilities/state.ts":{"bytesInOutput":921}},"bytes":1188},"packages/plugins/plugin-markdown/dist/lib/node/index.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":8595},"packages/plugins/plugin-markdown/dist/lib/node/index.cjs":{"imports":[{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-ZDTL47I7.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-3KDAJADP.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-IFYSBQE5.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-G7RBJX22.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-RQS4KBMG.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-ZU5OIHCY.cjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/plugin-client","kind":"import-statement","external":true},{"path":"@dxos/plugin-space","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true}],"exports":["MARKDOWN_PLUGIN","MarkdownCapabilities","MarkdownEvents","MarkdownPlugin","getAbstract","getFallbackName","isMarkdownProperties","meta","serializer","setFallbackName"],"entryPoint":"packages/plugins/plugin-markdown/src/index.ts","inputs":{"packages/plugins/plugin-markdown/src/index.ts":{"bytesInOutput":0},"packages/plugins/plugin-markdown/src/events.ts":{"bytesInOutput":240},"packages/plugins/plugin-markdown/src/MarkdownPlugin.tsx":{"bytesInOutput":3807}},"bytes":4945},"packages/plugins/plugin-markdown/dist/lib/node/types/index.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"packages/plugins/plugin-markdown/dist/lib/node/types/index.cjs":{"imports":[{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-RQS4KBMG.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-ZU5OIHCY.cjs","kind":"import-statement"}],"exports":["DocumentSchema","DocumentType","MarkdownAction","MarkdownSettingsSchema","createDocument","isEditorModel"],"entryPoint":"packages/plugins/plugin-markdown/src/types/index.ts","inputs":{},"bytes":344},"packages/plugins/plugin-markdown/dist/lib/node/anchor-sort-NHVF23EU.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2206},"packages/plugins/plugin-markdown/dist/lib/node/anchor-sort-NHVF23EU.cjs":{"imports":[{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-RQS4KBMG.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-ZU5OIHCY.cjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-markdown/src/capabilities/anchor-sort.ts","inputs":{"packages/plugins/plugin-markdown/src/capabilities/anchor-sort.ts":{"bytesInOutput":893}},"bytes":1143},"packages/plugins/plugin-markdown/dist/lib/node/app-graph-serializer-CLALIYN3.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":3433},"packages/plugins/plugin-markdown/dist/lib/node/app-graph-serializer-CLALIYN3.cjs":{"imports":[{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-ZDTL47I7.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-RQS4KBMG.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-ZU5OIHCY.cjs","kind":"import-statement"},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-markdown/src/capabilities/app-graph-serializer.ts","inputs":{"packages/plugins/plugin-markdown/src/capabilities/app-graph-serializer.ts":{"bytesInOutput":1449}},"bytes":1807},"packages/plugins/plugin-markdown/dist/lib/node/chunk-ZDTL47I7.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2284},"packages/plugins/plugin-markdown/dist/lib/node/chunk-ZDTL47I7.cjs":{"imports":[{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-RQS4KBMG.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-ZU5OIHCY.cjs","kind":"import-statement"}],"exports":["translations_default"],"inputs":{"packages/plugins/plugin-markdown/src/translations.ts":{"bytesInOutput":1557}},"bytes":1807},"packages/plugins/plugin-markdown/dist/lib/node/artifact-definition-VEAHK7BX.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":7683},"packages/plugins/plugin-markdown/dist/lib/node/artifact-definition-VEAHK7BX.cjs":{"imports":[{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-RQS4KBMG.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-ZU5OIHCY.cjs","kind":"import-statement"},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/artifact","kind":"import-statement","external":true},{"path":"@dxos/assistant","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-markdown/src/capabilities/artifact-definition.ts","inputs":{"packages/plugins/plugin-markdown/src/capabilities/artifact-definition.ts":{"bytesInOutput":4896}},"bytes":5204},"packages/plugins/plugin-markdown/dist/lib/node/intent-resolver-AUZVK3NZ.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":4591},"packages/plugins/plugin-markdown/dist/lib/node/intent-resolver-AUZVK3NZ.cjs":{"imports":[{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-IFYSBQE5.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-RQS4KBMG.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-ZU5OIHCY.cjs","kind":"import-statement"},{"path":"@automerge/automerge","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-markdown/src/capabilities/intent-resolver.ts","inputs":{"packages/plugins/plugin-markdown/src/capabilities/intent-resolver.ts":{"bytesInOutput":1850}},"bytes":2193},"packages/plugins/plugin-markdown/dist/lib/node/MarkdownContainer-LFCR2YMB.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":38441},"packages/plugins/plugin-markdown/dist/lib/node/MarkdownContainer-LFCR2YMB.cjs":{"imports":[{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-3KDAJADP.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-IFYSBQE5.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-G7RBJX22.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-RQS4KBMG.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-ZU5OIHCY.cjs","kind":"import-statement"},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"@effect-rx/rx-react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react-dropzone","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true},{"path":"@dxos/react-ui-stack","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@codemirror/view","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react-dom/client","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-client/halo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"exports":["DocumentEditor","default"],"entryPoint":"packages/plugins/plugin-markdown/src/components/MarkdownContainer.tsx","inputs":{"packages/plugins/plugin-markdown/src/components/MarkdownContainer.tsx":{"bytesInOutput":3595},"packages/plugins/plugin-markdown/src/components/MarkdownEditor/MarkdownEditor.tsx":{"bytesInOutput":5503},"packages/plugins/plugin-markdown/src/hooks/useSelectCurrentThread.tsx":{"bytesInOutput":1932},"packages/plugins/plugin-markdown/src/hooks/index.ts":{"bytesInOutput":0},"packages/plugins/plugin-markdown/src/components/MarkdownEditor/index.ts":{"bytesInOutput":0},"packages/plugins/plugin-markdown/src/extensions.tsx":{"bytesInOutput":6859}},"bytes":18748},"packages/plugins/plugin-markdown/dist/lib/node/chunk-3KDAJADP.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1221},"packages/plugins/plugin-markdown/dist/lib/node/chunk-3KDAJADP.cjs":{"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-markdown/dist/lib/node/anchor-sort-NHVF23EU.cjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/app-graph-serializer-CLALIYN3.cjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/artifact-definition-VEAHK7BX.cjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/intent-resolver-AUZVK3NZ.cjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/react-surface-QM65PGDI.cjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/settings-IRKU3WPM.cjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/state-KKDRAG7X.cjs","kind":"dynamic-import"}],"exports":["AnchorSort","AppGraphSerializer","ArtifactDefinition","IntentResolver","MarkdownSettings","MarkdownState","ReactSurface"],"inputs":{"packages/plugins/plugin-markdown/src/capabilities/index.ts":{"bytesInOutput":558}},"bytes":805},"packages/plugins/plugin-markdown/dist/lib/node/chunk-IFYSBQE5.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1152},"packages/plugins/plugin-markdown/dist/lib/node/chunk-IFYSBQE5.cjs":{"imports":[{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-ZU5OIHCY.cjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true}],"exports":["MarkdownCapabilities"],"inputs":{"packages/plugins/plugin-markdown/src/capabilities/capabilities.ts":{"bytesInOutput":362}},"bytes":570},"packages/plugins/plugin-markdown/dist/lib/node/MarkdownPreview-G34HSQEB.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":5985},"packages/plugins/plugin-markdown/dist/lib/node/MarkdownPreview-G34HSQEB.cjs":{"imports":[{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-G7RBJX22.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-RQS4KBMG.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-ZU5OIHCY.cjs","kind":"import-statement"},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/plugin-preview","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true}],"exports":["MarkdownPreview","default"],"entryPoint":"packages/plugins/plugin-markdown/src/components/MarkdownPreview/index.ts","inputs":{"packages/plugins/plugin-markdown/src/components/MarkdownPreview/MarkdownPreview.tsx":{"bytesInOutput":2787},"packages/plugins/plugin-markdown/src/components/MarkdownPreview/index.ts":{"bytesInOutput":47}},"bytes":3307},"packages/plugins/plugin-markdown/dist/lib/node/chunk-G7RBJX22.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":3450},"packages/plugins/plugin-markdown/dist/lib/node/chunk-G7RBJX22.cjs":{"imports":[{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-RQS4KBMG.cjs","kind":"import-statement"},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true}],"exports":["getAbstract","getFallbackName","isMarkdownProperties","serializer","setFallbackName"],"inputs":{"packages/plugins/plugin-markdown/src/util.tsx":{"bytesInOutput":1359}},"bytes":1611},"packages/plugins/plugin-markdown/dist/lib/node/chunk-RQS4KBMG.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":6050},"packages/plugins/plugin-markdown/dist/lib/node/chunk-RQS4KBMG.cjs":{"imports":[{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-ZU5OIHCY.cjs","kind":"import-statement"},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true}],"exports":["DocumentSchema","DocumentType","MarkdownAction","MarkdownSettingsSchema","createDocument","isEditorModel"],"inputs":{"packages/plugins/plugin-markdown/src/types/schema.ts":{"bytesInOutput":842},"packages/plugins/plugin-markdown/src/types/index.ts":{"bytesInOutput":0},"packages/plugins/plugin-markdown/src/types/types.ts":{"bytesInOutput":1388}},"bytes":2570},"packages/plugins/plugin-markdown/dist/lib/node/chunk-ZU5OIHCY.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1286},"packages/plugins/plugin-markdown/dist/lib/node/chunk-ZU5OIHCY.cjs":{"imports":[],"exports":["MARKDOWN_PLUGIN","meta"],"inputs":{"packages/plugins/plugin-markdown/src/meta.ts":{"bytesInOutput":827}},"bytes":958}}}
|
|
1
|
+
{"inputs":{"packages/plugins/plugin-markdown/src/meta.ts":{"bytes":2798,"imports":[],"format":"esm"},"packages/plugins/plugin-markdown/src/capabilities/capabilities.ts":{"bytes":2125,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-markdown/src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"packages/plugins/plugin-markdown/src/types/schema.ts":{"bytes":4593,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true}],"format":"esm"},"packages/plugins/plugin-markdown/src/types/types.ts":{"bytes":6842,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-markdown/src/types/schema.ts","kind":"import-statement","original":"./schema"},{"path":"packages/plugins/plugin-markdown/src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"packages/plugins/plugin-markdown/src/types/index.ts":{"bytes":557,"imports":[{"path":"packages/plugins/plugin-markdown/src/types/schema.ts","kind":"import-statement","original":"./schema"},{"path":"packages/plugins/plugin-markdown/src/types/types.ts","kind":"import-statement","original":"./types"}],"format":"esm"},"packages/plugins/plugin-markdown/src/capabilities/anchor-sort.ts":{"bytes":4106,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-markdown/src/types/index.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-markdown/src/translations.ts":{"bytes":5199,"imports":[{"path":"packages/plugins/plugin-markdown/src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"packages/plugins/plugin-markdown/src/types/index.ts","kind":"import-statement","original":"./types"}],"format":"esm"},"packages/plugins/plugin-markdown/src/capabilities/app-graph-serializer.ts":{"bytes":6678,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-markdown/src/translations.ts","kind":"import-statement","original":"../translations"},{"path":"packages/plugins/plugin-markdown/src/types/index.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-markdown/src/capabilities/artifact-definition.ts":{"bytes":16432,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/artifact","kind":"import-statement","external":true},{"path":"@dxos/assistant","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-markdown/src/meta.ts","kind":"import-statement","original":"../meta"},{"path":"packages/plugins/plugin-markdown/src/types/index.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-markdown/src/capabilities/intent-resolver.ts":{"bytes":8745,"imports":[{"path":"@automerge/automerge","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-markdown/src/capabilities/capabilities.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-markdown/src/types/index.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-markdown/src/components/MarkdownSettings/MarkdownSettings.tsx":{"bytes":13220,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-markdown/src/meta.ts","kind":"import-statement","original":"../../meta"}],"format":"esm"},"packages/plugins/plugin-markdown/src/components/MarkdownSettings/index.ts":{"bytes":524,"imports":[{"path":"packages/plugins/plugin-markdown/src/components/MarkdownSettings/MarkdownSettings.tsx","kind":"import-statement","original":"./MarkdownSettings"}],"format":"esm"},"packages/plugins/plugin-markdown/src/hooks/useSelectCurrentThread.tsx":{"bytes":8023,"imports":[{"path":"@codemirror/view","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-markdown/src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"packages/plugins/plugin-markdown/src/hooks/index.ts":{"bytes":516,"imports":[{"path":"packages/plugins/plugin-markdown/src/hooks/useSelectCurrentThread.tsx","kind":"import-statement","original":"./useSelectCurrentThread"}],"format":"esm"},"packages/plugins/plugin-markdown/src/components/MarkdownEditor/MarkdownEditor.tsx":{"bytes":22987,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react-dropzone","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true},{"path":"@dxos/react-ui-stack","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-markdown/src/hooks/index.ts","kind":"import-statement","original":"../../hooks"},{"path":"packages/plugins/plugin-markdown/src/meta.ts","kind":"import-statement","original":"../../meta"}],"format":"esm"},"packages/plugins/plugin-markdown/src/components/MarkdownEditor/index.ts":{"bytes":516,"imports":[{"path":"packages/plugins/plugin-markdown/src/components/MarkdownEditor/MarkdownEditor.tsx","kind":"import-statement","original":"./MarkdownEditor"}],"format":"esm"},"packages/plugins/plugin-markdown/src/util.tsx":{"bytes":6320,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-markdown/src/types/index.ts","kind":"import-statement","original":"./types"}],"format":"esm"},"packages/plugins/plugin-markdown/src/extensions.tsx":{"bytes":29686,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"react-dom/client","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-client/halo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-markdown/src/capabilities/index.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-markdown/src/util.tsx","kind":"import-statement","original":"./util"}],"format":"esm"},"packages/plugins/plugin-markdown/src/components/MarkdownContainer.tsx":{"bytes":15392,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"@effect-rx/rx-react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-markdown/src/components/MarkdownEditor/index.ts","kind":"import-statement","original":"./MarkdownEditor"},{"path":"packages/plugins/plugin-markdown/src/extensions.tsx","kind":"import-statement","original":"../extensions"},{"path":"packages/plugins/plugin-markdown/src/types/index.ts","kind":"import-statement","original":"../types"},{"path":"packages/plugins/plugin-markdown/src/util.tsx","kind":"import-statement","original":"../util"}],"format":"esm"},"packages/plugins/plugin-markdown/src/components/MarkdownPreview/MarkdownPreview.tsx":{"bytes":10918,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/plugin-preview","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-markdown/src/meta.ts","kind":"import-statement","original":"../../meta"},{"path":"packages/plugins/plugin-markdown/src/types/index.ts","kind":"import-statement","original":"../../types"},{"path":"packages/plugins/plugin-markdown/src/util.tsx","kind":"import-statement","original":"../../util"}],"format":"esm"},"packages/plugins/plugin-markdown/src/components/MarkdownPreview/index.ts":{"bytes":811,"imports":[{"path":"packages/plugins/plugin-markdown/src/components/MarkdownPreview/MarkdownPreview.tsx","kind":"import-statement","original":"./MarkdownPreview"},{"path":"packages/plugins/plugin-markdown/src/components/MarkdownPreview/MarkdownPreview.tsx","kind":"import-statement","original":"./MarkdownPreview"}],"format":"esm"},"packages/plugins/plugin-markdown/src/components/index.ts":{"bytes":1161,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-markdown/src/components/MarkdownSettings/index.ts","kind":"import-statement","original":"./MarkdownSettings"},{"path":"packages/plugins/plugin-markdown/src/components/MarkdownContainer.tsx","kind":"dynamic-import","original":"./MarkdownContainer"},{"path":"packages/plugins/plugin-markdown/src/components/MarkdownPreview/index.ts","kind":"dynamic-import","original":"./MarkdownPreview"}],"format":"esm"},"packages/plugins/plugin-markdown/src/capabilities/react-surface.tsx":{"bytes":16741,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/local-storage","kind":"import-statement","external":true},{"path":"@dxos/plugin-attention","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-markdown/src/capabilities/capabilities.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-markdown/src/components/index.ts","kind":"import-statement","original":"../components"},{"path":"packages/plugins/plugin-markdown/src/meta.ts","kind":"import-statement","original":"../meta"},{"path":"packages/plugins/plugin-markdown/src/types/index.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-markdown/src/capabilities/settings.ts":{"bytes":2450,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-markdown/src/meta.ts","kind":"import-statement","original":"../meta"},{"path":"packages/plugins/plugin-markdown/src/types/index.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-markdown/src/capabilities/state.ts":{"bytes":4788,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/local-storage","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-markdown/src/capabilities/capabilities.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-markdown/src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"packages/plugins/plugin-markdown/src/capabilities/index.ts":{"bytes":2421,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-markdown/src/capabilities/capabilities.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-markdown/src/capabilities/anchor-sort.ts","kind":"dynamic-import","original":"./anchor-sort"},{"path":"packages/plugins/plugin-markdown/src/capabilities/app-graph-serializer.ts","kind":"dynamic-import","original":"./app-graph-serializer"},{"path":"packages/plugins/plugin-markdown/src/capabilities/artifact-definition.ts","kind":"dynamic-import","original":"./artifact-definition"},{"path":"packages/plugins/plugin-markdown/src/capabilities/intent-resolver.ts","kind":"dynamic-import","original":"./intent-resolver"},{"path":"packages/plugins/plugin-markdown/src/capabilities/react-surface.tsx","kind":"dynamic-import","original":"./react-surface"},{"path":"packages/plugins/plugin-markdown/src/capabilities/settings.ts","kind":"dynamic-import","original":"./settings"},{"path":"packages/plugins/plugin-markdown/src/capabilities/state.ts","kind":"dynamic-import","original":"./state"}],"format":"esm"},"packages/plugins/plugin-markdown/src/events.ts":{"bytes":1278,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-markdown/src/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"},"packages/plugins/plugin-markdown/src/MarkdownPlugin.tsx":{"bytes":16679,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/plugin-client","kind":"import-statement","external":true},{"path":"@dxos/plugin-space","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-markdown/src/capabilities/index.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-markdown/src/events.ts","kind":"import-statement","original":"./events"},{"path":"packages/plugins/plugin-markdown/src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"packages/plugins/plugin-markdown/src/translations.ts","kind":"import-statement","original":"./translations"},{"path":"packages/plugins/plugin-markdown/src/types/index.ts","kind":"import-statement","original":"./types"},{"path":"packages/plugins/plugin-markdown/src/util.tsx","kind":"import-statement","original":"./util"}],"format":"esm"},"packages/plugins/plugin-markdown/src/index.ts":{"bytes":1008,"imports":[{"path":"packages/plugins/plugin-markdown/src/capabilities/index.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-markdown/src/events.ts","kind":"import-statement","original":"./events"},{"path":"packages/plugins/plugin-markdown/src/MarkdownPlugin.tsx","kind":"import-statement","original":"./MarkdownPlugin"},{"path":"packages/plugins/plugin-markdown/src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"packages/plugins/plugin-markdown/src/util.tsx","kind":"import-statement","original":"./util"}],"format":"esm"}},"outputs":{"packages/plugins/plugin-markdown/dist/lib/node/react-surface-WJZTEBYO.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":15392},"packages/plugins/plugin-markdown/dist/lib/node/react-surface-WJZTEBYO.cjs":{"imports":[{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-IFYSBQE5.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-RQS4KBMG.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-ZU5OIHCY.cjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/local-storage","kind":"import-statement","external":true},{"path":"@dxos/plugin-attention","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-markdown/dist/lib/node/MarkdownContainer-LSNNPNRB.cjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/MarkdownPreview-G34HSQEB.cjs","kind":"dynamic-import"}],"exports":["default"],"entryPoint":"packages/plugins/plugin-markdown/src/capabilities/react-surface.tsx","inputs":{"packages/plugins/plugin-markdown/src/capabilities/react-surface.tsx":{"bytesInOutput":3994},"packages/plugins/plugin-markdown/src/components/index.ts":{"bytesInOutput":186},"packages/plugins/plugin-markdown/src/components/MarkdownSettings/MarkdownSettings.tsx":{"bytesInOutput":3797},"packages/plugins/plugin-markdown/src/components/MarkdownSettings/index.ts":{"bytesInOutput":0}},"bytes":8625},"packages/plugins/plugin-markdown/dist/lib/node/settings-IRKU3WPM.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1265},"packages/plugins/plugin-markdown/dist/lib/node/settings-IRKU3WPM.cjs":{"imports":[{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-RQS4KBMG.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-ZU5OIHCY.cjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-markdown/src/capabilities/settings.ts","inputs":{"packages/plugins/plugin-markdown/src/capabilities/settings.ts":{"bytesInOutput":432}},"bytes":710},"packages/plugins/plugin-markdown/dist/lib/node/state-KKDRAG7X.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2547},"packages/plugins/plugin-markdown/dist/lib/node/state-KKDRAG7X.cjs":{"imports":[{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-IFYSBQE5.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-ZU5OIHCY.cjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/local-storage","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-markdown/src/capabilities/state.ts","inputs":{"packages/plugins/plugin-markdown/src/capabilities/state.ts":{"bytesInOutput":921}},"bytes":1188},"packages/plugins/plugin-markdown/dist/lib/node/index.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":8595},"packages/plugins/plugin-markdown/dist/lib/node/index.cjs":{"imports":[{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-ZDTL47I7.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-C4HR7UXE.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-IFYSBQE5.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-G7RBJX22.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-RQS4KBMG.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-ZU5OIHCY.cjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/plugin-client","kind":"import-statement","external":true},{"path":"@dxos/plugin-space","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true}],"exports":["MARKDOWN_PLUGIN","MarkdownCapabilities","MarkdownEvents","MarkdownPlugin","getAbstract","getFallbackName","isMarkdownProperties","meta","serializer","setFallbackName"],"entryPoint":"packages/plugins/plugin-markdown/src/index.ts","inputs":{"packages/plugins/plugin-markdown/src/index.ts":{"bytesInOutput":0},"packages/plugins/plugin-markdown/src/events.ts":{"bytesInOutput":240},"packages/plugins/plugin-markdown/src/MarkdownPlugin.tsx":{"bytesInOutput":3807}},"bytes":4945},"packages/plugins/plugin-markdown/dist/lib/node/types/index.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"packages/plugins/plugin-markdown/dist/lib/node/types/index.cjs":{"imports":[{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-RQS4KBMG.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-ZU5OIHCY.cjs","kind":"import-statement"}],"exports":["DocumentSchema","DocumentType","MarkdownAction","MarkdownSettingsSchema","createDocument","isEditorModel"],"entryPoint":"packages/plugins/plugin-markdown/src/types/index.ts","inputs":{},"bytes":344},"packages/plugins/plugin-markdown/dist/lib/node/anchor-sort-NHVF23EU.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2206},"packages/plugins/plugin-markdown/dist/lib/node/anchor-sort-NHVF23EU.cjs":{"imports":[{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-RQS4KBMG.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-ZU5OIHCY.cjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-markdown/src/capabilities/anchor-sort.ts","inputs":{"packages/plugins/plugin-markdown/src/capabilities/anchor-sort.ts":{"bytesInOutput":893}},"bytes":1143},"packages/plugins/plugin-markdown/dist/lib/node/app-graph-serializer-CLALIYN3.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":3433},"packages/plugins/plugin-markdown/dist/lib/node/app-graph-serializer-CLALIYN3.cjs":{"imports":[{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-ZDTL47I7.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-RQS4KBMG.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-ZU5OIHCY.cjs","kind":"import-statement"},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-markdown/src/capabilities/app-graph-serializer.ts","inputs":{"packages/plugins/plugin-markdown/src/capabilities/app-graph-serializer.ts":{"bytesInOutput":1449}},"bytes":1807},"packages/plugins/plugin-markdown/dist/lib/node/chunk-ZDTL47I7.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2284},"packages/plugins/plugin-markdown/dist/lib/node/chunk-ZDTL47I7.cjs":{"imports":[{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-RQS4KBMG.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-ZU5OIHCY.cjs","kind":"import-statement"}],"exports":["translations_default"],"inputs":{"packages/plugins/plugin-markdown/src/translations.ts":{"bytesInOutput":1557}},"bytes":1807},"packages/plugins/plugin-markdown/dist/lib/node/artifact-definition-VEAHK7BX.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":7683},"packages/plugins/plugin-markdown/dist/lib/node/artifact-definition-VEAHK7BX.cjs":{"imports":[{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-RQS4KBMG.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-ZU5OIHCY.cjs","kind":"import-statement"},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/artifact","kind":"import-statement","external":true},{"path":"@dxos/assistant","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-markdown/src/capabilities/artifact-definition.ts","inputs":{"packages/plugins/plugin-markdown/src/capabilities/artifact-definition.ts":{"bytesInOutput":4896}},"bytes":5204},"packages/plugins/plugin-markdown/dist/lib/node/intent-resolver-AUZVK3NZ.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":4591},"packages/plugins/plugin-markdown/dist/lib/node/intent-resolver-AUZVK3NZ.cjs":{"imports":[{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-IFYSBQE5.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-RQS4KBMG.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-ZU5OIHCY.cjs","kind":"import-statement"},{"path":"@automerge/automerge","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-markdown/src/capabilities/intent-resolver.ts","inputs":{"packages/plugins/plugin-markdown/src/capabilities/intent-resolver.ts":{"bytesInOutput":1850}},"bytes":2193},"packages/plugins/plugin-markdown/dist/lib/node/MarkdownContainer-LSNNPNRB.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":38441},"packages/plugins/plugin-markdown/dist/lib/node/MarkdownContainer-LSNNPNRB.cjs":{"imports":[{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-C4HR7UXE.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-IFYSBQE5.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-G7RBJX22.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-RQS4KBMG.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-ZU5OIHCY.cjs","kind":"import-statement"},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"@effect-rx/rx-react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react-dropzone","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true},{"path":"@dxos/react-ui-stack","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@codemirror/view","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react-dom/client","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-client/halo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"exports":["DocumentEditor","default"],"entryPoint":"packages/plugins/plugin-markdown/src/components/MarkdownContainer.tsx","inputs":{"packages/plugins/plugin-markdown/src/components/MarkdownContainer.tsx":{"bytesInOutput":3595},"packages/plugins/plugin-markdown/src/components/MarkdownEditor/MarkdownEditor.tsx":{"bytesInOutput":5503},"packages/plugins/plugin-markdown/src/hooks/useSelectCurrentThread.tsx":{"bytesInOutput":1932},"packages/plugins/plugin-markdown/src/hooks/index.ts":{"bytesInOutput":0},"packages/plugins/plugin-markdown/src/components/MarkdownEditor/index.ts":{"bytesInOutput":0},"packages/plugins/plugin-markdown/src/extensions.tsx":{"bytesInOutput":6866}},"bytes":18755},"packages/plugins/plugin-markdown/dist/lib/node/chunk-C4HR7UXE.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1221},"packages/plugins/plugin-markdown/dist/lib/node/chunk-C4HR7UXE.cjs":{"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-markdown/dist/lib/node/anchor-sort-NHVF23EU.cjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/app-graph-serializer-CLALIYN3.cjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/artifact-definition-VEAHK7BX.cjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/intent-resolver-AUZVK3NZ.cjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/react-surface-WJZTEBYO.cjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/settings-IRKU3WPM.cjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/state-KKDRAG7X.cjs","kind":"dynamic-import"}],"exports":["AnchorSort","AppGraphSerializer","ArtifactDefinition","IntentResolver","MarkdownSettings","MarkdownState","ReactSurface"],"inputs":{"packages/plugins/plugin-markdown/src/capabilities/index.ts":{"bytesInOutput":558}},"bytes":805},"packages/plugins/plugin-markdown/dist/lib/node/chunk-IFYSBQE5.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1152},"packages/plugins/plugin-markdown/dist/lib/node/chunk-IFYSBQE5.cjs":{"imports":[{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-ZU5OIHCY.cjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true}],"exports":["MarkdownCapabilities"],"inputs":{"packages/plugins/plugin-markdown/src/capabilities/capabilities.ts":{"bytesInOutput":362}},"bytes":570},"packages/plugins/plugin-markdown/dist/lib/node/MarkdownPreview-G34HSQEB.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":5985},"packages/plugins/plugin-markdown/dist/lib/node/MarkdownPreview-G34HSQEB.cjs":{"imports":[{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-G7RBJX22.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-RQS4KBMG.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-ZU5OIHCY.cjs","kind":"import-statement"},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/plugin-preview","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true}],"exports":["MarkdownPreview","default"],"entryPoint":"packages/plugins/plugin-markdown/src/components/MarkdownPreview/index.ts","inputs":{"packages/plugins/plugin-markdown/src/components/MarkdownPreview/MarkdownPreview.tsx":{"bytesInOutput":2787},"packages/plugins/plugin-markdown/src/components/MarkdownPreview/index.ts":{"bytesInOutput":47}},"bytes":3307},"packages/plugins/plugin-markdown/dist/lib/node/chunk-G7RBJX22.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":3450},"packages/plugins/plugin-markdown/dist/lib/node/chunk-G7RBJX22.cjs":{"imports":[{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-RQS4KBMG.cjs","kind":"import-statement"},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true}],"exports":["getAbstract","getFallbackName","isMarkdownProperties","serializer","setFallbackName"],"inputs":{"packages/plugins/plugin-markdown/src/util.tsx":{"bytesInOutput":1359}},"bytes":1611},"packages/plugins/plugin-markdown/dist/lib/node/chunk-RQS4KBMG.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":6050},"packages/plugins/plugin-markdown/dist/lib/node/chunk-RQS4KBMG.cjs":{"imports":[{"path":"packages/plugins/plugin-markdown/dist/lib/node/chunk-ZU5OIHCY.cjs","kind":"import-statement"},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true}],"exports":["DocumentSchema","DocumentType","MarkdownAction","MarkdownSettingsSchema","createDocument","isEditorModel"],"inputs":{"packages/plugins/plugin-markdown/src/types/schema.ts":{"bytesInOutput":842},"packages/plugins/plugin-markdown/src/types/index.ts":{"bytesInOutput":0},"packages/plugins/plugin-markdown/src/types/types.ts":{"bytesInOutput":1388}},"bytes":2570},"packages/plugins/plugin-markdown/dist/lib/node/chunk-ZU5OIHCY.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1286},"packages/plugins/plugin-markdown/dist/lib/node/chunk-ZU5OIHCY.cjs":{"imports":[],"exports":["MARKDOWN_PLUGIN","meta"],"inputs":{"packages/plugins/plugin-markdown/src/meta.ts":{"bytesInOutput":827}},"bytes":958}}}
|