-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathindex.html
95 lines (95 loc) · 5.3 KB
/
index.html
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
88
89
90
91
92
93
94
95
<!DOCTYPE html>
<html lang="en" data-bs-theme="dark">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Vanilla WYSIWYG Editor</title>
<link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet">
<link href="https://cdn.jsdelivr.net/npm/[email protected]/font/bootstrap-icons.min.css" rel="stylesheet">
</head>
<body>
<div class="container-fluid mt-5">
<div class="row-fluid">
<div class="col-lg-10 mx-auto">
<div class="card">
<div class="card-header">
<h2>Bootstrap 5.3.3 WYSIWYG, No JQuery</h2>
</div>
<ul id="toolbar" class="list-group list-group-flush">
<li class="list-group-item">
<div class="btn-toolbar justify-content-between">
<select id="headingSelect" class="form-select" style="width:auto;">
<option value="">Paragraph</option>
<option value="h1">Heading 1</option>
<option value="h2">Heading 2</option>
<option value="h3">Heading 3</option>
<option value="h4">Heading 4</option>
<option value="h5">Heading 5</option>
<option value="h6">Heading 6</option>
</select>
<select id="fontFamilySelect" class="form-select" style="width:auto;">
<option value="" disabled>Font Family</option>
</select>
<select id="fontSizeSelect" class="form-select" style="width:auto;">
<option value="" disabled>Font Size</option>
</select>
<button class="btn btn-outline-secondary" data-command="toggleSource" title="Toggle Source"><i class="bi bi-code-slash"></i></button>
</div>
</li>
<li class="list-group-item">
<div class="btn-toolbar justify-content-between">
<div class="btn-group">
<button class="btn btn-outline-secondary" data-command="bold" title="Bold"><i class="bi bi-type-bold"></i></button>
<button class="btn btn-outline-secondary" data-command="italic" title="Italic"><i class="bi bi-type-italic"></i></button>
<button class="btn btn-outline-secondary" data-command="underline" title="Underline"><i class="bi bi-type-underline"></i></button>
</div>
<div class="btn-group">
<button class="btn btn-outline-secondary" data-command="justifyLeft" title="Align Left"><i class="bi bi-text-left"></i></button>
<button class="btn btn-outline-secondary" data-command="justifyCenter" title="Align Center"><i class="bi bi-text-center"></i></button>
<button class="btn btn-outline-secondary" data-command="justifyRight" title="Align Right"><i class="bi bi-text-right"></i></button>
</div>
<div class="btn-group">
<button class="btn btn-outline-secondary" data-command="insertUnorderedList" title="Bullet List"><i class="bi bi-list-ul"></i></button>
<button class="btn btn-outline-secondary" data-command="insertOrderedList" title="Numbered List"><i class="bi bi-list-ol"></i></button>
<button class="btn btn-outline-secondary" data-command="insertCircleList" title="Circle List"><i class="bi bi-record-circle"></i></button>
<button class="btn btn-outline-secondary" data-command="insertSquareList" title="Square List"><i class="bi bi-square"></i></button>
</div>
</div>
</li>
<li class="list-group-item">
<div class="btn-toolbar justify-content-between">
<div class="btn-group">
<button class="btn btn-outline-secondary" data-command="createLink" title="Insert Link"><i class="bi bi-link"></i></button>
<button class="btn btn-outline-secondary" data-command="insertImage" title="Insert Image"><i class="bi bi-image"></i></button>
<button class="btn btn-outline-secondary" data-command="insertTable" title="Insert Table"><i class="bi bi-table"></i></button>
</div>
<div class="btn-group">
<button class="btn btn-outline-secondary bi bi-emoji-smile" data-command="insertEmoji" title="Insert Emoji"></button>
<button class="btn btn-outline-secondary bi bi-hash" data-command="insertSymbol" title="Insert Symbol"></button>
<button class="btn btn-outline-secondary bi bi-palette" data-command="insertColor" title="Text Color"></button>
</div>
<div class="btn-group">
<button class="btn btn-outline-secondary" data-command="undo" title="Undo"><i class="bi bi-arrow-counterclockwise"></i></button>
<button class="btn btn-outline-secondary" data-command="redo" title="Redo"><i class="bi bi-arrow-clockwise"></i></button>
</div>
<div class="btn-group">
<button class="btn btn-outline-secondary" data-command="cut" title="Cut"><i class="bi bi-scissors"></i></button>
<button class="btn btn-outline-secondary" data-command="copy" title="Copy"><i class="bi bi-files"></i></button>
<button class="btn btn-outline-secondary" data-command="paste" title="Paste"><i class="bi bi-clipboard"></i></button>
</div>
</div>
</li>
</ul>
<div class="card-body">
<div id="editor" class="form-control" contenteditable="true" style="min-height: 300px; max-height:700px; overflow-y: auto;">
Start typing here...
</div>
<textarea id="sourceView" class="form-control d-none" style="height: 300px; font-family: monospace;"></textarea>
</div>
</div>
</div>
</div>
</div>
<script type="module" src="main.js"></script>
</body>
</html>