pimelon-ui 0.0.98

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.
Files changed (93) hide show
  1. package/license.md +0 -0
  2. package/package.json +75 -0
  3. package/readme.md +0 -0
  4. package/src/components/Alert.vue +57 -0
  5. package/src/components/Autocomplete.vue +176 -0
  6. package/src/components/Avatar.vue +62 -0
  7. package/src/components/Badge.vue +42 -0
  8. package/src/components/Button.vue +155 -0
  9. package/src/components/Card.vue +37 -0
  10. package/src/components/DatePicker.vue +252 -0
  11. package/src/components/Dialog.vue +216 -0
  12. package/src/components/Dropdown.vue +145 -0
  13. package/src/components/ErrorMessage.vue +24 -0
  14. package/src/components/FeatherIcon.vue +59 -0
  15. package/src/components/FileUploader.vue +220 -0
  16. package/src/components/GreenCheckIcon.vue +16 -0
  17. package/src/components/Input.vue +214 -0
  18. package/src/components/Link.vue +28 -0
  19. package/src/components/ListItem.vue +28 -0
  20. package/src/components/LoadingIndicator.vue +27 -0
  21. package/src/components/LoadingText.vue +21 -0
  22. package/src/components/Popover.vue +253 -0
  23. package/src/components/Resource.vue +21 -0
  24. package/src/components/TextEditor/FontColor.vue +108 -0
  25. package/src/components/TextEditor/InsertImage.vue +74 -0
  26. package/src/components/TextEditor/InsertLink.vue +67 -0
  27. package/src/components/TextEditor/InsertVideo.vue +94 -0
  28. package/src/components/TextEditor/MentionList.vue +95 -0
  29. package/src/components/TextEditor/Menu.vue +99 -0
  30. package/src/components/TextEditor/TextEditor.vue +275 -0
  31. package/src/components/TextEditor/TextEditorBubbleMenu.vue +69 -0
  32. package/src/components/TextEditor/TextEditorFixedMenu.vue +72 -0
  33. package/src/components/TextEditor/TextEditorFloatingMenu.vue +55 -0
  34. package/src/components/TextEditor/commands.js +272 -0
  35. package/src/components/TextEditor/icons/align-center.vue +14 -0
  36. package/src/components/TextEditor/icons/align-justify.vue +14 -0
  37. package/src/components/TextEditor/icons/align-left.vue +14 -0
  38. package/src/components/TextEditor/icons/align-right.vue +14 -0
  39. package/src/components/TextEditor/icons/arrow-go-back-line.vue +14 -0
  40. package/src/components/TextEditor/icons/arrow-go-forward-line.vue +14 -0
  41. package/src/components/TextEditor/icons/bold.vue +14 -0
  42. package/src/components/TextEditor/icons/code-view.vue +14 -0
  43. package/src/components/TextEditor/icons/double-quotes-r.vue +14 -0
  44. package/src/components/TextEditor/icons/font-color.vue +14 -0
  45. package/src/components/TextEditor/icons/format-clear.vue +14 -0
  46. package/src/components/TextEditor/icons/h-1.vue +14 -0
  47. package/src/components/TextEditor/icons/h-2.vue +14 -0
  48. package/src/components/TextEditor/icons/h-3.vue +14 -0
  49. package/src/components/TextEditor/icons/h-4.vue +14 -0
  50. package/src/components/TextEditor/icons/h-5.vue +14 -0
  51. package/src/components/TextEditor/icons/h-6.vue +14 -0
  52. package/src/components/TextEditor/icons/image-add-line.vue +14 -0
  53. package/src/components/TextEditor/icons/italic.vue +14 -0
  54. package/src/components/TextEditor/icons/link.vue +14 -0
  55. package/src/components/TextEditor/icons/list-ordered.vue +14 -0
  56. package/src/components/TextEditor/icons/list-unordered.vue +14 -0
  57. package/src/components/TextEditor/icons/readme.md +1 -0
  58. package/src/components/TextEditor/icons/separator.vue +14 -0
  59. package/src/components/TextEditor/icons/strikethrough.vue +14 -0
  60. package/src/components/TextEditor/icons/table-2.vue +14 -0
  61. package/src/components/TextEditor/icons/text.vue +11 -0
  62. package/src/components/TextEditor/icons/underline.vue +14 -0
  63. package/src/components/TextEditor/icons/video-add-line.vue +14 -0
  64. package/src/components/TextEditor/image-extension.js +152 -0
  65. package/src/components/TextEditor/index.js +6 -0
  66. package/src/components/TextEditor/mention.js +72 -0
  67. package/src/components/TextEditor/utils.js +11 -0
  68. package/src/components/TextEditor/video-extension.js +60 -0
  69. package/src/components/Toast.vue +83 -0
  70. package/src/components/Tooltip.vue +36 -0
  71. package/src/components/toast.js +98 -0
  72. package/src/directives/onOutsideClick.js +34 -0
  73. package/src/directives/visibility.js +24 -0
  74. package/src/index.js +56 -0
  75. package/src/resources/documentResource.js +194 -0
  76. package/src/resources/index.js +4 -0
  77. package/src/resources/listResource.js +312 -0
  78. package/src/resources/local.js +16 -0
  79. package/src/resources/plugin.js +105 -0
  80. package/src/resources/resources.js +215 -0
  81. package/src/style.css +15 -0
  82. package/src/utils/call.js +98 -0
  83. package/src/utils/config.js +9 -0
  84. package/src/utils/debounce.js +15 -0
  85. package/src/utils/file-to-base64.js +9 -0
  86. package/src/utils/markdown.js +29 -0
  87. package/src/utils/melonRequest.js +105 -0
  88. package/src/utils/pageMeta.js +52 -0
  89. package/src/utils/plugin.js +24 -0
  90. package/src/utils/request.js +49 -0
  91. package/src/utils/socketio.js +11 -0
  92. package/src/utils/tailwind.config.js +117 -0
  93. package/src/utils/vite-dev-server.js +14 -0
@@ -0,0 +1,272 @@
1
+ import { defineAsyncComponent } from 'vue'
2
+ import H1 from './icons/h-1.vue'
3
+ import H2 from './icons/h-2.vue'
4
+ import H3 from './icons/h-3.vue'
5
+ import H4 from './icons/h-4.vue'
6
+ import H5 from './icons/h-5.vue'
7
+ import H6 from './icons/h-6.vue'
8
+ import Text from './icons/text.vue'
9
+ import Bold from './icons/bold.vue'
10
+ import Italic from './icons/italic.vue'
11
+ import Underline from './icons/underline.vue'
12
+ import AlignCenter from './icons/align-center.vue'
13
+ import AlignLeft from './icons/align-left.vue'
14
+ import AlignRight from './icons/align-right.vue'
15
+ import FontColor from './icons/font-color.vue'
16
+ import ListOrdered from './icons/list-ordered.vue'
17
+ import ListUnordered from './icons/list-unordered.vue'
18
+ import DoubleQuotes from './icons/double-quotes-r.vue'
19
+ import CodeView from './icons/code-view.vue'
20
+ import Link from './icons/link.vue'
21
+ import Image from './icons/image-add-line.vue'
22
+ import Video from './icons/video-add-line.vue'
23
+ import ArrowGoBack from './icons/arrow-go-back-line.vue'
24
+ import ArrowGoForward from './icons/arrow-go-forward-line.vue'
25
+ import Separator from './icons/separator.vue'
26
+ import Table from './icons/table-2.vue'
27
+
28
+ export default {
29
+ Paragraph: {
30
+ label: 'Paragraph',
31
+ icon: Text,
32
+ action: (editor) => editor.chain().focus().setParagraph().run(),
33
+ isActive: (editor) => editor.isActive('paragraph'),
34
+ },
35
+ 'Heading 1': {
36
+ label: 'Heading 1',
37
+ text: 'H1',
38
+ icon: H1,
39
+ action: (editor) =>
40
+ editor.chain().focus().toggleHeading({ level: 1 }).run(),
41
+ isActive: (editor) => editor.isActive('heading', { level: 1 }),
42
+ },
43
+ 'Heading 2': {
44
+ label: 'Heading 2',
45
+ text: 'H2',
46
+ icon: H2,
47
+ action: (editor) =>
48
+ editor.chain().focus().toggleHeading({ level: 2 }).run(),
49
+ isActive: (editor) => editor.isActive('heading', { level: 2 }),
50
+ },
51
+ 'Heading 3': {
52
+ label: 'Heading 3',
53
+ text: 'H3',
54
+ icon: H3,
55
+ action: (editor) =>
56
+ editor.chain().focus().toggleHeading({ level: 3 }).run(),
57
+ isActive: (editor) => editor.isActive('heading', { level: 3 }),
58
+ },
59
+ 'Heading 4': {
60
+ label: 'Heading 4',
61
+ text: 'H4',
62
+ icon: H4,
63
+ action: (editor) =>
64
+ editor.chain().focus().toggleHeading({ level: 4 }).run(),
65
+ isActive: (editor) => editor.isActive('heading', { level: 4 }),
66
+ },
67
+ 'Heading 5': {
68
+ label: 'Heading 5',
69
+ text: 'H5',
70
+ icon: H5,
71
+ action: (editor) =>
72
+ editor.chain().focus().toggleHeading({ level: 5 }).run(),
73
+ isActive: (editor) => editor.isActive('heading', { level: 5 }),
74
+ },
75
+ 'Heading 6': {
76
+ label: 'Heading 6',
77
+ text: 'H6',
78
+ icon: H6,
79
+ action: (editor) =>
80
+ editor.chain().focus().toggleHeading({ level: 6 }).run(),
81
+ isActive: (editor) => editor.isActive('heading', { level: 6 }),
82
+ },
83
+ Bold: {
84
+ label: 'Bold',
85
+ icon: Bold,
86
+ action: (editor) => editor.chain().focus().toggleBold().run(),
87
+ isActive: (editor) => editor.isActive('bold'),
88
+ },
89
+ Italic: {
90
+ label: 'Italic',
91
+ icon: Italic,
92
+ action: (editor) => editor.chain().focus().toggleItalic().run(),
93
+ isActive: (editor) => editor.isActive('italic'),
94
+ },
95
+ Underline: {
96
+ label: 'Underline',
97
+ icon: Underline,
98
+ action: (editor) => editor.chain().focus().toggleUnderline().run(),
99
+ isActive: (editor) => editor.isActive('underline'),
100
+ },
101
+ 'Bullet List': {
102
+ label: 'Bullet List',
103
+ icon: ListUnordered,
104
+ action: (editor) => editor.chain().focus().toggleBulletList().run(),
105
+ isActive: (editor) => editor.isActive('bulletList'),
106
+ },
107
+ 'Numbered List': {
108
+ label: 'Numbered List',
109
+ icon: ListOrdered,
110
+ action: (editor) => editor.chain().focus().toggleOrderedList().run(),
111
+ isActive: (editor) => editor.isActive('orderedList'),
112
+ },
113
+ 'Align Center': {
114
+ label: 'Align Center',
115
+ icon: AlignCenter,
116
+ action: (editor) => editor.chain().focus().setTextAlign('center').run(),
117
+ isActive: (editor) => editor.isActive({ textAlign: 'center' }),
118
+ },
119
+ 'Align Left': {
120
+ label: 'Align Left',
121
+ icon: AlignLeft,
122
+ action: (editor) => editor.chain().focus().setTextAlign('left').run(),
123
+ isActive: (editor) => editor.isActive({ textAlign: 'left' }),
124
+ },
125
+ 'Align Right': {
126
+ label: 'Align Right',
127
+ icon: AlignRight,
128
+ action: (editor) => editor.chain().focus().setTextAlign('right').run(),
129
+ isActive: (editor) => editor.isActive({ textAlign: 'right' }),
130
+ },
131
+ FontColor: {
132
+ label: 'Font Color',
133
+ icon: FontColor,
134
+ isActive: (editor) =>
135
+ editor.isActive('textStyle') || editor.isActive('highlight'),
136
+ component: defineAsyncComponent(() => import('./FontColor.vue')),
137
+ },
138
+ Blockquote: {
139
+ label: 'Blockquote',
140
+ icon: DoubleQuotes,
141
+ action: (editor) => editor.chain().focus().toggleBlockquote().run(),
142
+ isActive: (editor) => editor.isActive('blockquote'),
143
+ },
144
+ Code: {
145
+ label: 'Code',
146
+ icon: CodeView,
147
+ action: (editor) => editor.chain().focus().toggleCodeBlock().run(),
148
+ isActive: (editor) => editor.isActive('codeBlock'),
149
+ },
150
+ 'Horizontal Rule': {
151
+ label: 'Horizontal Rule',
152
+ icon: Separator,
153
+ action: (editor) => editor.chain().focus().setHorizontalRule().run(),
154
+ isActive: (editor) => false,
155
+ },
156
+ Link: {
157
+ label: 'Link',
158
+ icon: Link,
159
+ isActive: (editor) => editor.isActive('link'),
160
+ component: defineAsyncComponent(() => import('./InsertLink.vue')),
161
+ },
162
+ Image: {
163
+ label: 'Image',
164
+ icon: Image,
165
+ isActive: (editor) => false,
166
+ component: defineAsyncComponent(() => import('./InsertImage.vue')),
167
+ },
168
+ Video: {
169
+ label: 'Video',
170
+ icon: Video,
171
+ isActive: (editor) => false,
172
+ component: defineAsyncComponent(() => import('./InsertVideo.vue')),
173
+ },
174
+ Undo: {
175
+ label: 'Undo',
176
+ icon: ArrowGoBack,
177
+ action: (editor) => editor.chain().focus().undo().run(),
178
+ isActive: (editor) => false,
179
+ },
180
+ Redo: {
181
+ label: 'Redo',
182
+ icon: ArrowGoForward,
183
+ action: (editor) => editor.chain().focus().redo().run(),
184
+ isActive: (editor) => false,
185
+ },
186
+ InsertTable: {
187
+ label: 'Insert Table',
188
+ icon: Table,
189
+ action: (editor) =>
190
+ editor
191
+ .chain()
192
+ .focus()
193
+ .insertTable({ rows: 3, cols: 3, withHeaderRow: true })
194
+ .run(),
195
+ isActive: (editor) => false,
196
+ },
197
+ AddColumnBefore: {
198
+ label: 'Add Column Before',
199
+ action: (editor) => editor.chain().focus().addColumnBefore().run(),
200
+ isActive: (editor) => false,
201
+ isDisabled: (editor) => !editor.can().addColumnBefore(),
202
+ },
203
+ AddColumnAfter: {
204
+ label: 'Add Column After',
205
+ action: (editor) => editor.chain().focus().addColumnAfter().run(),
206
+ isActive: (editor) => false,
207
+ isDisabled: (editor) => !editor.can().addColumnAfter(),
208
+ },
209
+ DeleteColumn: {
210
+ label: 'Delete Column',
211
+ action: (editor) => editor.chain().focus().deleteColumn().run(),
212
+ isActive: (editor) => false,
213
+ isDisabled: (editor) => !editor.can().deleteColumn(),
214
+ },
215
+ AddRowBefore: {
216
+ label: 'Add Row Before',
217
+ action: (editor) => editor.chain().focus().addRowBefore().run(),
218
+ isActive: (editor) => false,
219
+ isDisabled: (editor) => !editor.can().addRowBefore(),
220
+ },
221
+ AddRowAfter: {
222
+ label: 'Add Row After',
223
+ action: (editor) => editor.chain().focus().addRowAfter().run(),
224
+ isActive: (editor) => false,
225
+ isDisabled: (editor) => !editor.can().addRowAfter(),
226
+ },
227
+ DeleteRow: {
228
+ label: 'Delete Row',
229
+ action: (editor) => editor.chain().focus().deleteRow().run(),
230
+ isActive: (editor) => false,
231
+ isDisabled: (editor) => !editor.can().deleteRow(),
232
+ },
233
+ DeleteTable: {
234
+ label: 'Delete Table',
235
+ action: (editor) => editor.chain().focus().deleteTable().run(),
236
+ isActive: (editor) => false,
237
+ isDisabled: (editor) => !editor.can().deleteTable(),
238
+ },
239
+ MergeCells: {
240
+ label: 'Merge Cells',
241
+ action: (editor) => editor.chain().focus().mergeCells().run(),
242
+ isActive: (editor) => false,
243
+ isDisabled: (editor) => !editor.can().mergeCells(),
244
+ },
245
+ SplitCell: {
246
+ label: 'Split Cell',
247
+ action: (editor) => editor.chain().focus().splitCell().run(),
248
+ isActive: (editor) => false,
249
+ isDisabled: (editor) => !editor.can().splitCell(),
250
+ },
251
+ ToggleHeaderColumn: {
252
+ label: 'Toggle Header Column',
253
+ action: (editor) => editor.chain().focus().toggleHeaderColumn().run(),
254
+ isActive: (editor) => false,
255
+ isDisabled: (editor) => !editor.can().toggleHeaderColumn(),
256
+ },
257
+ ToggleHeaderRow: {
258
+ label: 'Toggle Header Row',
259
+ action: (editor) => editor.chain().focus().toggleHeaderRow().run(),
260
+ isActive: (editor) => false,
261
+ isDisabled: (editor) => !editor.can().toggleHeaderRow(),
262
+ },
263
+ ToggleHeaderCell: {
264
+ label: 'Toggle Header Cell',
265
+ action: (editor) => editor.chain().focus().toggleHeaderCell().run(),
266
+ isActive: (editor) => false,
267
+ isDisabled: (editor) => !editor.can().toggleHeaderCell(),
268
+ },
269
+ Separator: {
270
+ type: 'separator',
271
+ },
272
+ }
@@ -0,0 +1,14 @@
1
+ <template>
2
+ <svg
3
+ xmlns="http://www.w3.org/2000/svg"
4
+ viewBox="0 0 24 24"
5
+ width="24"
6
+ height="24"
7
+ >
8
+ <path fill="none" d="M0 0h24v24H0z" />
9
+ <path
10
+ d="M3 4h18v2H3V4zm2 15h14v2H5v-2zm-2-5h18v2H3v-2zm2-5h14v2H5V9z"
11
+ fill="currentColor"
12
+ />
13
+ </svg>
14
+ </template>
@@ -0,0 +1,14 @@
1
+ <template>
2
+ <svg
3
+ xmlns="http://www.w3.org/2000/svg"
4
+ viewBox="0 0 24 24"
5
+ width="24"
6
+ height="24"
7
+ >
8
+ <path fill="none" d="M0 0h24v24H0z" />
9
+ <path
10
+ d="M3 4h18v2H3V4zm0 15h18v2H3v-2zm0-5h18v2H3v-2zm0-5h18v2H3V9z"
11
+ fill="currentColor"
12
+ />
13
+ </svg>
14
+ </template>
@@ -0,0 +1,14 @@
1
+ <template>
2
+ <svg
3
+ xmlns="http://www.w3.org/2000/svg"
4
+ viewBox="0 0 24 24"
5
+ width="24"
6
+ height="24"
7
+ >
8
+ <path fill="none" d="M0 0h24v24H0z" />
9
+ <path
10
+ d="M3 4h18v2H3V4zm0 15h14v2H3v-2zm0-5h18v2H3v-2zm0-5h14v2H3V9z"
11
+ fill="currentColor"
12
+ />
13
+ </svg>
14
+ </template>
@@ -0,0 +1,14 @@
1
+ <template>
2
+ <svg
3
+ xmlns="http://www.w3.org/2000/svg"
4
+ viewBox="0 0 24 24"
5
+ width="24"
6
+ height="24"
7
+ >
8
+ <path fill="none" d="M0 0h24v24H0z" />
9
+ <path
10
+ d="M3 4h18v2H3V4zm4 15h14v2H7v-2zm-4-5h18v2H3v-2zm4-5h14v2H7V9z"
11
+ fill="currentColor"
12
+ />
13
+ </svg>
14
+ </template>
@@ -0,0 +1,14 @@
1
+ <template>
2
+ <svg
3
+ xmlns="http://www.w3.org/2000/svg"
4
+ viewBox="0 0 24 24"
5
+ width="24"
6
+ height="24"
7
+ >
8
+ <path fill="none" d="M0 0h24v24H0z" />
9
+ <path
10
+ d="M5.828 7l2.536 2.536L6.95 10.95 2 6l4.95-4.95 1.414 1.414L5.828 5H13a8 8 0 1 1 0 16H4v-2h9a6 6 0 1 0 0-12H5.828z"
11
+ fill="currentColor"
12
+ />
13
+ </svg>
14
+ </template>
@@ -0,0 +1,14 @@
1
+ <template>
2
+ <svg
3
+ xmlns="http://www.w3.org/2000/svg"
4
+ viewBox="0 0 24 24"
5
+ width="24"
6
+ height="24"
7
+ >
8
+ <path fill="none" d="M0 0h24v24H0z" />
9
+ <path
10
+ d="M18.172 7H11a6 6 0 1 0 0 12h9v2h-9a8 8 0 1 1 0-16h7.172l-2.536-2.536L17.05 1.05 22 6l-4.95 4.95-1.414-1.414L18.172 7z"
11
+ fill="currentColor"
12
+ />
13
+ </svg>
14
+ </template>
@@ -0,0 +1,14 @@
1
+ <template>
2
+ <svg
3
+ xmlns="http://www.w3.org/2000/svg"
4
+ viewBox="0 0 24 24"
5
+ width="24"
6
+ height="24"
7
+ >
8
+ <path fill="none" d="M0 0h24v24H0z" />
9
+ <path
10
+ d="M8 11h4.5a2.5 2.5 0 1 0 0-5H8v5zm10 4.5a4.5 4.5 0 0 1-4.5 4.5H6V4h6.5a4.5 4.5 0 0 1 3.256 7.606A4.498 4.498 0 0 1 18 15.5zM8 13v5h5.5a2.5 2.5 0 1 0 0-5H8z"
11
+ fill="currentColor"
12
+ />
13
+ </svg>
14
+ </template>
@@ -0,0 +1,14 @@
1
+ <template>
2
+ <svg
3
+ xmlns="http://www.w3.org/2000/svg"
4
+ viewBox="0 0 24 24"
5
+ width="24"
6
+ height="24"
7
+ >
8
+ <path fill="none" d="M0 0h24v24H0z" />
9
+ <path
10
+ d="M16.95 8.464l1.414-1.414 4.95 4.95-4.95 4.95-1.414-1.414L20.485 12 16.95 8.464zm-9.9 0L3.515 12l3.535 3.536-1.414 1.414L.686 12l4.95-4.95L7.05 8.464z"
11
+ fill="currentColor"
12
+ />
13
+ </svg>
14
+ </template>
@@ -0,0 +1,14 @@
1
+ <template>
2
+ <svg
3
+ xmlns="http://www.w3.org/2000/svg"
4
+ viewBox="0 0 24 24"
5
+ width="24"
6
+ height="24"
7
+ >
8
+ <path fill="none" d="M0 0h24v24H0z" />
9
+ <path
10
+ d="M19.417 6.679C20.447 7.773 21 9 21 10.989c0 3.5-2.457 6.637-6.03 8.188l-.893-1.378c3.335-1.804 3.987-4.145 4.247-5.621-.537.278-1.24.375-1.929.311-1.804-.167-3.226-1.648-3.226-3.489a3.5 3.5 0 0 1 3.5-3.5c1.073 0 2.099.49 2.748 1.179zm-10 0C10.447 7.773 11 9 11 10.989c0 3.5-2.457 6.637-6.03 8.188l-.893-1.378c3.335-1.804 3.987-4.145 4.247-5.621-.537.278-1.24.375-1.929.311C4.591 12.322 3.17 10.841 3.17 9a3.5 3.5 0 0 1 3.5-3.5c1.073 0 2.099.49 2.748 1.179z"
11
+ fill="currentColor"
12
+ />
13
+ </svg>
14
+ </template>
@@ -0,0 +1,14 @@
1
+ <template>
2
+ <svg
3
+ xmlns="http://www.w3.org/2000/svg"
4
+ viewBox="0 0 24 24"
5
+ width="24"
6
+ height="24"
7
+ >
8
+ <path fill="none" d="M0 0h24v24H0z" />
9
+ <path
10
+ d="M15.246 14H8.754l-1.6 4H5l6-15h2l6 15h-2.154l-1.6-4zm-.8-2L12 5.885 9.554 12h4.892zM3 20h18v2H3v-2z"
11
+ fill="currentColor"
12
+ />
13
+ </svg>
14
+ </template>
@@ -0,0 +1,14 @@
1
+ <template>
2
+ <svg
3
+ xmlns="http://www.w3.org/2000/svg"
4
+ viewBox="0 0 24 24"
5
+ width="24"
6
+ height="24"
7
+ >
8
+ <path fill="none" d="M0 0h24v24H0z" />
9
+ <path
10
+ d="M12.651 14.065L11.605 20H9.574l1.35-7.661-7.41-7.41L4.93 3.515 20.485 19.07l-1.414 1.414-6.42-6.42zm-.878-6.535l.27-1.53h-1.8l-2-2H20v2h-5.927L13.5 9.257 11.773 7.53z"
11
+ fill="currentColor"
12
+ />
13
+ </svg>
14
+ </template>
@@ -0,0 +1,14 @@
1
+ <template>
2
+ <svg
3
+ xmlns="http://www.w3.org/2000/svg"
4
+ viewBox="0 0 24 24"
5
+ width="24"
6
+ height="24"
7
+ >
8
+ <path fill="none" d="M0 0H24V24H0z" />
9
+ <path
10
+ d="M13 20h-2v-7H4v7H2V4h2v7h7V4h2v16zm8-12v12h-2v-9.796l-2 .536V8.67L19.5 8H21z"
11
+ fill="currentColor"
12
+ />
13
+ </svg>
14
+ </template>
@@ -0,0 +1,14 @@
1
+ <template>
2
+ <svg
3
+ xmlns="http://www.w3.org/2000/svg"
4
+ viewBox="0 0 24 24"
5
+ width="24"
6
+ height="24"
7
+ >
8
+ <path fill="none" d="M0 0H24V24H0z" />
9
+ <path
10
+ d="M4 4v7h7V4h2v16h-2v-7H4v7H2V4h2zm14.5 4c2.071 0 3.75 1.679 3.75 3.75 0 .857-.288 1.648-.772 2.28l-.148.18L18.034 18H22v2h-7v-1.556l4.82-5.546c.268-.307.43-.709.43-1.148 0-.966-.784-1.75-1.75-1.75-.918 0-1.671.707-1.744 1.606l-.006.144h-2C14.75 9.679 16.429 8 18.5 8z"
11
+ fill="currentColor"
12
+ />
13
+ </svg>
14
+ </template>
@@ -0,0 +1,14 @@
1
+ <template>
2
+ <svg
3
+ xmlns="http://www.w3.org/2000/svg"
4
+ viewBox="0 0 24 24"
5
+ width="24"
6
+ height="24"
7
+ >
8
+ <path fill="none" d="M0 0H24V24H0z" />
9
+ <path
10
+ d="M22 8l-.002 2-2.505 2.883c1.59.435 2.757 1.89 2.757 3.617 0 2.071-1.679 3.75-3.75 3.75-1.826 0-3.347-1.305-3.682-3.033l1.964-.382c.156.806.866 1.415 1.718 1.415.966 0 1.75-.784 1.75-1.75s-.784-1.75-1.75-1.75c-.286 0-.556.069-.794.19l-1.307-1.547L19.35 10H15V8h7zM4 4v7h7V4h2v16h-2v-7H4v7H2V4h2z"
11
+ fill="currentColor"
12
+ />
13
+ </svg>
14
+ </template>
@@ -0,0 +1,14 @@
1
+ <template>
2
+ <svg
3
+ xmlns="http://www.w3.org/2000/svg"
4
+ viewBox="0 0 24 24"
5
+ width="24"
6
+ height="24"
7
+ >
8
+ <path fill="none" d="M0 0H24V24H0z" />
9
+ <path
10
+ d="M13 20h-2v-7H4v7H2V4h2v7h7V4h2v16zm9-12v8h1.5v2H22v2h-2v-2h-5.5v-1.34l5-8.66H22zm-2 3.133L17.19 16H20v-4.867z"
11
+ fill="currentColor"
12
+ />
13
+ </svg>
14
+ </template>
@@ -0,0 +1,14 @@
1
+ <template>
2
+ <svg
3
+ xmlns="http://www.w3.org/2000/svg"
4
+ viewBox="0 0 24 24"
5
+ width="24"
6
+ height="24"
7
+ >
8
+ <path fill="none" d="M0 0H24V24H0z" />
9
+ <path
10
+ d="M22 8v2h-4.323l-.464 2.636c.33-.089.678-.136 1.037-.136 2.21 0 4 1.79 4 4s-1.79 4-4 4c-1.827 0-3.367-1.224-3.846-2.897l1.923-.551c.24.836 1.01 1.448 1.923 1.448 1.105 0 2-.895 2-2s-.895-2-2-2c-.63 0-1.193.292-1.56.748l-1.81-.904L16 8h6zM4 4v7h7V4h2v16h-2v-7H4v7H2V4h2z"
11
+ fill="currentColor"
12
+ />
13
+ </svg>
14
+ </template>
@@ -0,0 +1,14 @@
1
+ <template>
2
+ <svg
3
+ xmlns="http://www.w3.org/2000/svg"
4
+ viewBox="0 0 24 24"
5
+ width="24"
6
+ height="24"
7
+ >
8
+ <path fill="none" d="M0 0H24V24H0z" />
9
+ <path
10
+ d="M21.097 8l-2.598 4.5c2.21 0 4.001 1.79 4.001 4s-1.79 4-4 4-4-1.79-4-4c0-.736.199-1.426.546-2.019L18.788 8h2.309zM4 4v7h7V4h2v16h-2v-7H4v7H2V4h2zm14.5 10.5c-1.105 0-2 .895-2 2s.895 2 2 2 2-.895 2-2-.895-2-2-2z"
11
+ fill="currentColor"
12
+ />
13
+ </svg>
14
+ </template>
@@ -0,0 +1,14 @@
1
+ <template>
2
+ <svg
3
+ xmlns="http://www.w3.org/2000/svg"
4
+ viewBox="0 0 24 24"
5
+ width="24"
6
+ height="24"
7
+ >
8
+ <path fill="none" d="M0 0h24v24H0z" />
9
+ <path
10
+ d="M21 15v3h3v2h-3v3h-2v-3h-3v-2h3v-3h2zm.008-12c.548 0 .992.445.992.993V13h-2V5H4v13.999L14 9l3 3v2.829l-3-3L6.827 19H14v2H2.992A.993.993 0 0 1 2 20.007V3.993A1 1 0 0 1 2.992 3h18.016zM8 7a2 2 0 1 1 0 4 2 2 0 0 1 0-4z"
11
+ fill="currentColor"
12
+ />
13
+ </svg>
14
+ </template>
@@ -0,0 +1,14 @@
1
+ <template>
2
+ <svg
3
+ xmlns="http://www.w3.org/2000/svg"
4
+ viewBox="0 0 24 24"
5
+ width="24"
6
+ height="24"
7
+ >
8
+ <path fill="none" d="M0 0h24v24H0z" />
9
+ <path
10
+ d="M15 20H7v-2h2.927l2.116-12H9V4h8v2h-2.927l-2.116 12H15z"
11
+ fill="currentColor"
12
+ />
13
+ </svg>
14
+ </template>
@@ -0,0 +1,14 @@
1
+ <template>
2
+ <svg
3
+ xmlns="http://www.w3.org/2000/svg"
4
+ viewBox="0 0 24 24"
5
+ width="24"
6
+ height="24"
7
+ >
8
+ <path fill="none" d="M0 0h24v24H0z" />
9
+ <path
10
+ d="M18.364 15.536L16.95 14.12l1.414-1.414a5 5 0 1 0-7.071-7.071L9.879 7.05 8.464 5.636 9.88 4.222a7 7 0 0 1 9.9 9.9l-1.415 1.414zm-2.828 2.828l-1.415 1.414a7 7 0 0 1-9.9-9.9l1.415-1.414L7.05 9.88l-1.414 1.414a5 5 0 1 0 7.071 7.071l1.414-1.414 1.415 1.414zm-.708-10.607l1.415 1.415-7.071 7.07-1.415-1.414 7.071-7.07z"
11
+ fill="currentColor"
12
+ />
13
+ </svg>
14
+ </template>
@@ -0,0 +1,14 @@
1
+ <template>
2
+ <svg
3
+ xmlns="http://www.w3.org/2000/svg"
4
+ viewBox="0 0 24 24"
5
+ width="24"
6
+ height="24"
7
+ >
8
+ <path fill="none" d="M0 0h24v24H0z" />
9
+ <path
10
+ d="M8 4h13v2H8V4zM5 3v3h1v1H3V6h1V4H3V3h2zM3 14v-2.5h2V11H3v-1h3v2.5H4v.5h2v1H3zm2 5.5H3v-1h2V18H3v-1h3v4H3v-1h2v-.5zM8 11h13v2H8v-2zm0 7h13v2H8v-2z"
11
+ fill="currentColor"
12
+ />
13
+ </svg>
14
+ </template>
@@ -0,0 +1,14 @@
1
+ <template>
2
+ <svg
3
+ xmlns="http://www.w3.org/2000/svg"
4
+ viewBox="0 0 24 24"
5
+ width="24"
6
+ height="24"
7
+ >
8
+ <path fill="none" d="M0 0h24v24H0z" />
9
+ <path
10
+ d="M8 4h13v2H8V4zM4.5 6.5a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3zm0 7a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3zm0 6.9a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3zM8 11h13v2H8v-2zm0 7h13v2H8v-2z"
11
+ fill="currentColor"
12
+ />
13
+ </svg>
14
+ </template>
@@ -0,0 +1 @@
1
+ Icons from https://remixicon.com/
@@ -0,0 +1,14 @@
1
+ <template>
2
+ <svg
3
+ xmlns="http://www.w3.org/2000/svg"
4
+ viewBox="0 0 24 24"
5
+ width="24"
6
+ height="24"
7
+ >
8
+ <path fill="none" d="M0 0h24v24H0z" />
9
+ <path
10
+ d="M2 11h2v2H2v-2zm4 0h12v2H6v-2zm14 0h2v2h-2v-2z"
11
+ fill="currentColor"
12
+ />
13
+ </svg>
14
+ </template>
@@ -0,0 +1,14 @@
1
+ <template>
2
+ <svg
3
+ xmlns="http://www.w3.org/2000/svg"
4
+ viewBox="0 0 24 24"
5
+ width="24"
6
+ height="24"
7
+ >
8
+ <path fill="none" d="M0 0h24v24H0z" />
9
+ <path
10
+ d="M17.154 14c.23.516.346 1.09.346 1.72 0 1.342-.524 2.392-1.571 3.147C14.88 19.622 13.433 20 11.586 20c-1.64 0-3.263-.381-4.87-1.144V16.6c1.52.877 3.075 1.316 4.666 1.316 2.551 0 3.83-.732 3.839-2.197a2.21 2.21 0 0 0-.648-1.603l-.12-.117H3v-2h18v2h-3.846zm-4.078-3H7.629a4.086 4.086 0 0 1-.481-.522C6.716 9.92 6.5 9.246 6.5 8.452c0-1.236.466-2.287 1.397-3.153C8.83 4.433 10.271 4 12.222 4c1.471 0 2.879.328 4.222.984v2.152c-1.2-.687-2.515-1.03-3.946-1.03-2.48 0-3.719.782-3.719 2.346 0 .42.218.786.654 1.099.436.313.974.562 1.613.75.62.18 1.297.414 2.03.699z"
11
+ fill="currentColor"
12
+ />
13
+ </svg>
14
+ </template>
@@ -0,0 +1,14 @@
1
+ <template>
2
+ <svg
3
+ xmlns="http://www.w3.org/2000/svg"
4
+ viewBox="0 0 24 24"
5
+ width="24"
6
+ height="24"
7
+ >
8
+ <path fill="none" d="M0 0h24v24H0z" />
9
+ <path
10
+ d="M13 10v4h6v-4h-6zm-2 0H5v4h6v-4zm2 9h6v-3h-6v3zm-2 0v-3H5v3h6zm2-14v3h6V5h-6zm-2 0H5v3h6V5zM4 3h16a1 1 0 0 1 1 1v16a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1z"
11
+ fill="currentColor"
12
+ />
13
+ </svg>
14
+ </template>