forked from outline/rich-markdown-editor
-
Notifications
You must be signed in to change notification settings - Fork 0
/
types.js
87 lines (74 loc) · 1.63 KB
/
types.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
// @flow
import * as React from "react";
import { Value, Change, Node } from "slate";
import { Editor } from "slate-react";
export type SlateNodeProps = {
children: React.Node,
readOnly: boolean,
attributes: Object,
value: Value,
editor: Editor,
node: Node,
parent: Node,
isSelected: boolean,
};
export type Plugin = {
validateNode?: Node => *,
onClick?: (SyntheticEvent<*>) => *,
onKeyDown?: (SyntheticKeyboardEvent<*>, Change) => *,
};
export type SearchResult = {
title: string,
url: string,
};
export type Block =
| "heading1"
| "heading2"
| "block-quote"
| "code"
| "code"
| "horizontal-rule"
| "bulleted-list"
| "ordered-list"
| "todo-list"
| "image";
export type Mark = "bold" | "italic" | "deleted" | "code" | "link";
export type HiddenToolbarButtons = ?{
marks?: Mark[],
blocks?: Block[],
};
export type Theme = {
almostBlack: string,
lightBlack: string,
almostWhite: string,
white: string,
white10: string,
black: string,
black10: string,
primary: string,
greyLight: string,
grey: string,
greyMid: string,
greyDark: string,
fontFamily: string,
fontWeight: number | string,
link: string,
placeholder: string,
textSecondary: string,
textLight: string,
selected: string,
background: string,
text: string,
toolbarBackground: string,
toolbarInput: string,
toolbarItem: string,
blockToolbarBackground: string,
blockToolbarTrigger: string,
blockToolbarTriggerIcon: string,
blockToolbarItem: string,
quote: string,
codeBackground?: string,
codeBorder?: string,
horizontalRule: string,
hiddenToolbarButtons?: HiddenToolbarButtons,
};