rme 0.2.1 → 0.2.3-alpha.1
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/index.d.ts +44 -6
- package/dist/index.mjs +8390 -6732
- package/dist/index.mjs.map +4 -4
- package/package.json +3 -1
package/dist/index.d.ts
CHANGED
|
@@ -1,23 +1,26 @@
|
|
|
1
1
|
import * as _drl990114_codemirror_themes from '@drl990114/codemirror-themes';
|
|
2
2
|
import { CreateThemeOptions } from '@drl990114/codemirror-themes';
|
|
3
3
|
export { CreateThemeOptions, createTheme } from '@drl990114/codemirror-themes';
|
|
4
|
+
import { LanguageSupport, LanguageDescription } from '@codemirror/language';
|
|
4
5
|
import { Compartment, Extension } from '@codemirror/state';
|
|
5
6
|
import { EditorView, EditorViewConfig } from '@codemirror/view';
|
|
6
7
|
import { ProsemirrorNode, EditorView as EditorView$1 } from '@remirror/pm';
|
|
7
|
-
import { LanguageSupport, LanguageDescription } from '@codemirror/language';
|
|
8
8
|
import * as react from 'react';
|
|
9
9
|
import react__default, { ReactNode, MouseEvent, FC } from 'react';
|
|
10
10
|
import { RemirrorEventListenerProps, Extension as Extension$1, RemirrorManager as RemirrorManager$1, AnyExtension as AnyExtension$1 } from 'remirror';
|
|
11
11
|
import { AnyExtension, RemirrorManager, CommandDecoratorMessageProps, CoreIcon } from '@remirror/core';
|
|
12
12
|
import { ReactFrameworkOutput } from '@remirror/react-core';
|
|
13
13
|
import { Node, Schema, Mark, NodeType } from '@remirror/pm/model';
|
|
14
|
-
import { Token } from 'markdown-it';
|
|
14
|
+
import { Token as Token$1 } from 'markdown-it/index.js';
|
|
15
|
+
import Token from 'markdown-it/lib/token.mjs';
|
|
15
16
|
export { useCommands, useHelpers, useKeymap, useRemirrorContext } from '@remirror/react';
|
|
16
17
|
import * as styled_components from 'styled-components';
|
|
17
18
|
import * as styled_components_dist_types from 'styled-components/dist/types';
|
|
18
19
|
|
|
19
20
|
type LoadLanguage = (lang: string) => Promise<LanguageSupport> | LanguageSupport | void;
|
|
20
21
|
|
|
22
|
+
type CustomCopyFunction = (code: string) => Promise<boolean> | boolean;
|
|
23
|
+
|
|
21
24
|
declare const changeTheme: (theme: CreateThemeOptions) => void;
|
|
22
25
|
declare const extractMatches: (view: EditorView) => any[];
|
|
23
26
|
type CreateCodemirrorOptions = {
|
|
@@ -27,6 +30,20 @@ type CreateCodemirrorOptions = {
|
|
|
27
30
|
useProsemirrorHistoryKey?: boolean;
|
|
28
31
|
codemirrorEditorViewConfig?: EditorViewConfig;
|
|
29
32
|
onValueChange?: (value: string) => void;
|
|
33
|
+
/**
|
|
34
|
+
* Copy button configuration options
|
|
35
|
+
*/
|
|
36
|
+
copyButton?: {
|
|
37
|
+
/**
|
|
38
|
+
* Whether to show the copy button
|
|
39
|
+
* @default true
|
|
40
|
+
*/
|
|
41
|
+
enabled?: boolean;
|
|
42
|
+
/**
|
|
43
|
+
* Custom copy function to override default behavior
|
|
44
|
+
*/
|
|
45
|
+
customCopyFunction?: CustomCopyFunction;
|
|
46
|
+
};
|
|
30
47
|
};
|
|
31
48
|
declare class MfCodemirrorView {
|
|
32
49
|
private readonly view;
|
|
@@ -43,6 +60,8 @@ declare class MfCodemirrorView {
|
|
|
43
60
|
updating: boolean;
|
|
44
61
|
loadLanguage: LoadLanguage;
|
|
45
62
|
options?: CreateCodemirrorOptions;
|
|
63
|
+
private copyButton;
|
|
64
|
+
private copyButtonContainer;
|
|
46
65
|
constructor({ view, getPos, node, extensions, languageName, options, }: {
|
|
47
66
|
node: ProsemirrorNode;
|
|
48
67
|
view: EditorView$1;
|
|
@@ -61,6 +80,22 @@ declare class MfCodemirrorView {
|
|
|
61
80
|
private asProseMirrorSelection;
|
|
62
81
|
private codeMirrorKeymap;
|
|
63
82
|
private maybeEscape;
|
|
83
|
+
/**
|
|
84
|
+
* Creates the copy button and adds it to the CodeMirror editor
|
|
85
|
+
*/
|
|
86
|
+
private createCopyButton;
|
|
87
|
+
/**
|
|
88
|
+
* Sets up event listeners for the copy button
|
|
89
|
+
*/
|
|
90
|
+
private setupCopyButtonEvents;
|
|
91
|
+
/**
|
|
92
|
+
* Handles the copy button click event
|
|
93
|
+
*/
|
|
94
|
+
private handleCopy;
|
|
95
|
+
/**
|
|
96
|
+
* Shows copy success feedback
|
|
97
|
+
*/
|
|
98
|
+
private showCopySuccess;
|
|
64
99
|
}
|
|
65
100
|
declare const getLanguageMap: () => Record<string, LanguageDescription>;
|
|
66
101
|
declare const loadLanguage: (languageName: string) => Promise<LanguageSupport> | LanguageSupport | undefined;
|
|
@@ -267,7 +302,7 @@ interface StackItem {
|
|
|
267
302
|
attrs?: Record<string, any>;
|
|
268
303
|
content: Node[];
|
|
269
304
|
}
|
|
270
|
-
type TokenHandler = (state: MarkdownParseState, tok: Token) => void;
|
|
305
|
+
type TokenHandler = (state: MarkdownParseState, tok: Token$1) => void;
|
|
271
306
|
type TokenHandlers = Record<string, TokenHandler>;
|
|
272
307
|
declare class MarkdownParseState {
|
|
273
308
|
private schema;
|
|
@@ -282,7 +317,7 @@ declare class MarkdownParseState {
|
|
|
282
317
|
private mergeTextNode;
|
|
283
318
|
openMark(mark: Mark): void;
|
|
284
319
|
closeMark(mark: Mark): void;
|
|
285
|
-
parseTokens(toks: Token[]): void;
|
|
320
|
+
parseTokens(toks: Token$1[]): void;
|
|
286
321
|
addNode(type: NodeType, attrs?: Record<string, any>, content?: Node[]): Node;
|
|
287
322
|
openNode(type: NodeType, attrs?: Record<string, any>): void;
|
|
288
323
|
closeNode(): Node;
|
|
@@ -342,7 +377,10 @@ declare class MarkdownSerializer {
|
|
|
342
377
|
type ExtensionsOptions = {
|
|
343
378
|
disableAllBuildInShortcuts?: boolean;
|
|
344
379
|
handleViewImgSrcUrl?: (src: string) => Promise<string>;
|
|
380
|
+
imageHostingHandler?: (src: string) => Promise<string>;
|
|
381
|
+
imageCopyHandler?: (src: string) => Promise<string>;
|
|
345
382
|
ai?: AIOptions;
|
|
383
|
+
customCopyFunction?: CustomCopyFunction;
|
|
346
384
|
};
|
|
347
385
|
declare function extensions(options: ExtensionsOptions): any[];
|
|
348
386
|
|
|
@@ -353,7 +391,7 @@ declare const createWysiwygDelegate: (options?: CreateWysiwygDelegateOptions) =>
|
|
|
353
391
|
|
|
354
392
|
declare const _default: react.NamedExoticComponent<EditorProps>;
|
|
355
393
|
|
|
356
|
-
interface
|
|
394
|
+
interface WrapperProps {
|
|
357
395
|
codeEditor?: boolean;
|
|
358
396
|
dark?: boolean;
|
|
359
397
|
/**
|
|
@@ -367,7 +405,7 @@ interface WarpperProps$1 {
|
|
|
367
405
|
}
|
|
368
406
|
declare const WysiwygThemeWrapper: styled_components_dist_types.IStyledComponentBase<"web", styled_components.FastOmit<styled_components_dist_types.Substitute<styled_components_dist_types.Substitute<react.DetailedHTMLProps<react.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, Omit<react.DetailedHTMLProps<react.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
|
|
369
407
|
ref?: ((instance: HTMLDivElement | null) => void | react.DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES[keyof react.DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES]) | react.RefObject<HTMLDivElement> | null | undefined;
|
|
370
|
-
}>,
|
|
408
|
+
}>, WrapperProps>, never>> & string;
|
|
371
409
|
|
|
372
410
|
interface WarpperProps {
|
|
373
411
|
codeEditor?: boolean;
|