vue-editify 0.1.17 → 0.1.19

Sign up to get free protection for your applications and to get access to all the features.
Files changed (80) hide show
  1. package/README.md +3 -3
  2. package/examples/App.vue +62 -53
  3. package/examples/main.ts +4 -4
  4. package/lib/components/button/button.vue.d.ts +11 -11
  5. package/lib/components/checkbox/checkbox.vue.d.ts +8 -8
  6. package/lib/components/colors/colors.vue.d.ts +4 -4
  7. package/lib/components/icon/icon.vue.d.ts +1 -1
  8. package/lib/components/insertImage/insertImage.vue.d.ts +9 -9
  9. package/lib/components/insertLink/insertLink.vue.d.ts +2 -2
  10. package/lib/components/insertTable/insertTable.vue.d.ts +2 -2
  11. package/lib/components/insertVideo/insertVideo.vue.d.ts +9 -9
  12. package/lib/components/layer/layer.vue.d.ts +9 -9
  13. package/lib/components/menu/menu.vue.d.ts +4 -4
  14. package/lib/components/toolbar/toolbar.vue.d.ts +9 -9
  15. package/lib/components/tooltip/tooltip.vue.d.ts +1 -1
  16. package/lib/components/triangle/triangle.vue.d.ts +4 -4
  17. package/lib/editify/editify.vue.d.ts +88 -70
  18. package/lib/editify/props.d.ts +11 -3
  19. package/lib/editify.es.js +65 -46
  20. package/lib/editify.umd.js +1 -1
  21. package/lib/index.d.ts +1 -1
  22. package/lib/style.css +1 -1
  23. package/package.json +45 -45
  24. package/src/components/button/button.less +145 -145
  25. package/src/components/button/button.vue +197 -197
  26. package/src/components/button/props.ts +95 -95
  27. package/src/components/checkbox/checkbox.less +84 -84
  28. package/src/components/checkbox/checkbox.vue +68 -68
  29. package/src/components/checkbox/props.ts +49 -49
  30. package/src/components/colors/colors.less +75 -75
  31. package/src/components/colors/colors.vue +36 -36
  32. package/src/components/colors/props.ts +29 -29
  33. package/src/components/icon/icon.less +14 -14
  34. package/src/components/icon/icon.vue +12 -12
  35. package/src/components/icon/props.ts +11 -11
  36. package/src/components/insertImage/insertImage.less +135 -135
  37. package/src/components/insertImage/insertImage.vue +146 -146
  38. package/src/components/insertImage/props.ts +43 -43
  39. package/src/components/insertLink/insertLink.less +64 -64
  40. package/src/components/insertLink/insertLink.vue +58 -58
  41. package/src/components/insertLink/props.ts +16 -16
  42. package/src/components/insertTable/insertTable.less +54 -54
  43. package/src/components/insertTable/insertTable.vue +85 -85
  44. package/src/components/insertTable/props.ts +27 -27
  45. package/src/components/insertVideo/insertVideo.less +135 -135
  46. package/src/components/insertVideo/insertVideo.vue +146 -146
  47. package/src/components/insertVideo/props.ts +43 -43
  48. package/src/components/layer/layer.less +49 -49
  49. package/src/components/layer/layer.vue +598 -598
  50. package/src/components/layer/props.ts +71 -71
  51. package/src/components/menu/menu.less +63 -63
  52. package/src/components/menu/menu.vue +1569 -1569
  53. package/src/components/menu/props.ts +17 -17
  54. package/src/components/toolbar/props.ts +35 -35
  55. package/src/components/toolbar/toolbar.less +89 -89
  56. package/src/components/toolbar/toolbar.vue +1101 -1101
  57. package/src/components/tooltip/props.ts +21 -21
  58. package/src/components/tooltip/tooltip.less +23 -23
  59. package/src/components/tooltip/tooltip.vue +37 -37
  60. package/src/components/triangle/props.ts +26 -26
  61. package/src/components/triangle/triangle.less +79 -79
  62. package/src/components/triangle/triangle.vue +65 -65
  63. package/src/core/function.ts +1144 -1144
  64. package/src/core/rule.ts +259 -259
  65. package/src/core/tool.ts +1137 -1137
  66. package/src/css/base.less +30 -30
  67. package/src/css/hljs.less +54 -54
  68. package/src/editify/editify.less +404 -403
  69. package/src/editify/editify.vue +803 -792
  70. package/src/editify/props.ts +156 -146
  71. package/src/hljs/index.ts +197 -197
  72. package/src/icon/iconfont.css +219 -219
  73. package/src/index.ts +32 -32
  74. package/src/locale/en_US.ts +88 -88
  75. package/src/locale/index.ts +12 -12
  76. package/src/locale/zh_CN.ts +88 -88
  77. package/tsconfig.json +27 -27
  78. package/tsconfig.node.json +11 -11
  79. package/vite-env.d.ts +1 -1
  80. package/vite.config.ts +42 -42
@@ -3,7 +3,7 @@ import { AlexElement, AlexElementsRangeType } from 'alex-editor';
3
3
 
4
4
  declare const _default: import('vue').DefineComponent<{
5
5
  locale: {
6
- type: import("vue").PropType<import("../locale").LocaleType>;
6
+ type: import('vue').PropType<import('../locale').LocaleType>;
7
7
  default: string;
8
8
  };
9
9
  modelValue: {
@@ -52,43 +52,51 @@ declare const _default: import('vue').DefineComponent<{
52
52
  default: number;
53
53
  };
54
54
  toolbar: {
55
- type: import("vue").PropType<ToolbarConfigType>;
55
+ type: import('vue').PropType<ToolbarConfigType>;
56
56
  default: null;
57
57
  };
58
58
  showWordLength: {
59
59
  type: BooleanConstructor;
60
60
  default: boolean;
61
61
  };
62
+ customTextPaste: {
63
+ type: import('vue').PropType<(data: string) => void | Promise<void>>;
64
+ default: null;
65
+ };
66
+ customHtmlPaste: {
67
+ type: import('vue').PropType<(elements: AlexElement[]) => void | Promise<void>>;
68
+ default: null;
69
+ };
62
70
  customImagePaste: {
63
- type: import("vue").PropType<(url: string) => void | Promise<void>>;
71
+ type: import('vue').PropType<(file: File) => void | Promise<void>>;
64
72
  default: null;
65
73
  };
66
74
  customVideoPaste: {
67
- type: import("vue").PropType<(url: string) => void | Promise<void>>;
75
+ type: import('vue').PropType<(file: File) => void | Promise<void>>;
68
76
  default: null;
69
77
  };
70
78
  customFilePaste: {
71
- type: import("vue").PropType<(url: string) => void | Promise<void>>;
79
+ type: import('vue').PropType<(file: File) => void | Promise<void>>;
72
80
  default: null;
73
81
  };
74
82
  menu: {
75
- type: import("vue").PropType<MenuConfigType>;
83
+ type: import('vue').PropType<MenuConfigType>;
76
84
  default: null;
77
85
  };
78
86
  pasteKeepMarks: {
79
- type: import("vue").PropType<ObjectType>;
87
+ type: import('vue').PropType<ObjectType>;
80
88
  default: null;
81
89
  };
82
90
  pasteKeepStyles: {
83
- type: import("vue").PropType<ObjectType>;
91
+ type: import('vue').PropType<ObjectType>;
84
92
  default: null;
85
93
  };
86
94
  customParseNode: {
87
- type: import("vue").PropType<(el: AlexElement) => AlexElement>;
95
+ type: import('vue').PropType<(el: AlexElement) => AlexElement>;
88
96
  default: null;
89
97
  };
90
98
  renderRules: {
91
- type: import("vue").PropType<((el: AlexElement) => void)[]>;
99
+ type: import('vue').PropType<((el: AlexElement) => void)[]>;
92
100
  default: () => never[];
93
101
  };
94
102
  autoheight: {
@@ -100,7 +108,7 @@ declare const _default: import('vue').DefineComponent<{
100
108
  default: boolean;
101
109
  };
102
110
  }, {
103
- editor: import("vue").Ref<{
111
+ editor: import('vue').Ref<{
104
112
  $el: HTMLElement;
105
113
  disabled: boolean;
106
114
  value: string;
@@ -111,9 +119,9 @@ declare const _default: import('vue').DefineComponent<{
111
119
  allowPasteHtml: boolean;
112
120
  customTextPaste: ((text: string) => void | Promise<void>) | null;
113
121
  customHtmlPaste: ((AlexElements: AlexElement[], html: string) => void | Promise<void>) | null;
114
- customImagePaste: ((url: string) => void | Promise<void>) | null;
115
- customVideoPaste: ((url: string) => void | Promise<void>) | null;
116
- customFilePaste: ((url: string) => void | Promise<void>) | null;
122
+ customImagePaste: ((file: File) => void | Promise<void>) | null;
123
+ customVideoPaste: ((file: File) => void | Promise<void>) | null;
124
+ customFilePaste: ((file: File) => void | Promise<void>) | null;
117
125
  customMerge: ((mergeElement: AlexElement, targetElement: AlexElement) => void | Promise<void>) | null;
118
126
  customParseNode: ((el: AlexElement) => AlexElement) | null;
119
127
  useClipboard: boolean;
@@ -121,10 +129,10 @@ declare const _default: import('vue').DefineComponent<{
121
129
  records: {
122
130
  stack: {
123
131
  key: number;
124
- type: import("alex-editor").AlexElementType;
132
+ type: import('alex-editor').AlexElementType;
125
133
  parsedom: string | null;
126
- marks: import("alex-editor/lib/core/tool").ObjectType | null;
127
- styles: import("alex-editor/lib/core/tool").ObjectType | null;
134
+ marks: import('alex-editor/lib/core/tool').ObjectType | null;
135
+ styles: import('alex-editor/lib/core/tool').ObjectType | null;
128
136
  textContent: string | null;
129
137
  children: any[] | null;
130
138
  parent: any | null;
@@ -164,10 +172,10 @@ declare const _default: import('vue').DefineComponent<{
164
172
  anchor: {
165
173
  element: {
166
174
  key: number;
167
- type: import("alex-editor").AlexElementType;
175
+ type: import('alex-editor').AlexElementType;
168
176
  parsedom: string | null;
169
- marks: import("alex-editor/lib/core/tool").ObjectType | null;
170
- styles: import("alex-editor/lib/core/tool").ObjectType | null;
177
+ marks: import('alex-editor/lib/core/tool').ObjectType | null;
178
+ styles: import('alex-editor/lib/core/tool').ObjectType | null;
171
179
  textContent: string | null;
172
180
  children: any[] | null;
173
181
  parent: any | null;
@@ -204,17 +212,17 @@ declare const _default: import('vue').DefineComponent<{
204
212
  __fullClone: () => AlexElement;
205
213
  };
206
214
  offset: number;
207
- isEqual: (point: import("alex-editor").AlexPoint) => boolean;
215
+ isEqual: (point: import('alex-editor').AlexPoint) => boolean;
208
216
  moveToEnd: (element: AlexElement) => void;
209
217
  moveToStart: (element: AlexElement) => void;
210
218
  };
211
219
  focus: {
212
220
  element: {
213
221
  key: number;
214
- type: import("alex-editor").AlexElementType;
222
+ type: import('alex-editor').AlexElementType;
215
223
  parsedom: string | null;
216
- marks: import("alex-editor/lib/core/tool").ObjectType | null;
217
- styles: import("alex-editor/lib/core/tool").ObjectType | null;
224
+ marks: import('alex-editor/lib/core/tool').ObjectType | null;
225
+ styles: import('alex-editor/lib/core/tool').ObjectType | null;
218
226
  textContent: string | null;
219
227
  children: any[] | null;
220
228
  parent: any | null;
@@ -251,24 +259,24 @@ declare const _default: import('vue').DefineComponent<{
251
259
  __fullClone: () => AlexElement;
252
260
  };
253
261
  offset: number;
254
- isEqual: (point: import("alex-editor").AlexPoint) => boolean;
262
+ isEqual: (point: import('alex-editor').AlexPoint) => boolean;
255
263
  moveToEnd: (element: AlexElement) => void;
256
264
  moveToStart: (element: AlexElement) => void;
257
265
  };
258
266
  } | null;
259
267
  }[];
260
268
  current: number;
261
- push: (stack: AlexElement[], range?: import("alex-editor").AlexRange | null | undefined) => void;
262
- get: (type: 1 | -1) => import("alex-editor").AlexHistoryResultType | null;
263
- updateCurrentRange: (range: import("alex-editor").AlexRange) => void;
264
- __cloneRange: (newStack: AlexElement[], range?: import("alex-editor").AlexRange | null | undefined) => import("alex-editor").AlexRange | null;
269
+ push: (stack: AlexElement[], range?: import('alex-editor').AlexRange | null | undefined) => void;
270
+ get: (type: 1 | -1) => import('alex-editor').AlexHistoryResultType | null;
271
+ updateCurrentRange: (range: import('alex-editor').AlexRange) => void;
272
+ __cloneRange: (newStack: AlexElement[], range?: import('alex-editor').AlexRange | null | undefined) => import('alex-editor').AlexRange | null;
265
273
  };
266
274
  stack: {
267
275
  key: number;
268
- type: import("alex-editor").AlexElementType;
276
+ type: import('alex-editor').AlexElementType;
269
277
  parsedom: string | null;
270
- marks: import("alex-editor/lib/core/tool").ObjectType | null;
271
- styles: import("alex-editor/lib/core/tool").ObjectType | null;
278
+ marks: import('alex-editor/lib/core/tool').ObjectType | null;
279
+ styles: import('alex-editor/lib/core/tool').ObjectType | null;
272
280
  textContent: string | null;
273
281
  children: any[] | null;
274
282
  parent: any | null;
@@ -308,10 +316,10 @@ declare const _default: import('vue').DefineComponent<{
308
316
  anchor: {
309
317
  element: {
310
318
  key: number;
311
- type: import("alex-editor").AlexElementType;
319
+ type: import('alex-editor').AlexElementType;
312
320
  parsedom: string | null;
313
- marks: import("alex-editor/lib/core/tool").ObjectType | null;
314
- styles: import("alex-editor/lib/core/tool").ObjectType | null;
321
+ marks: import('alex-editor/lib/core/tool').ObjectType | null;
322
+ styles: import('alex-editor/lib/core/tool').ObjectType | null;
315
323
  textContent: string | null;
316
324
  children: any[] | null;
317
325
  parent: any | null;
@@ -348,17 +356,17 @@ declare const _default: import('vue').DefineComponent<{
348
356
  __fullClone: () => AlexElement;
349
357
  };
350
358
  offset: number;
351
- isEqual: (point: import("alex-editor").AlexPoint) => boolean;
359
+ isEqual: (point: import('alex-editor').AlexPoint) => boolean;
352
360
  moveToEnd: (element: AlexElement) => void;
353
361
  moveToStart: (element: AlexElement) => void;
354
362
  };
355
363
  focus: {
356
364
  element: {
357
365
  key: number;
358
- type: import("alex-editor").AlexElementType;
366
+ type: import('alex-editor').AlexElementType;
359
367
  parsedom: string | null;
360
- marks: import("alex-editor/lib/core/tool").ObjectType | null;
361
- styles: import("alex-editor/lib/core/tool").ObjectType | null;
368
+ marks: import('alex-editor/lib/core/tool').ObjectType | null;
369
+ styles: import('alex-editor/lib/core/tool').ObjectType | null;
362
370
  textContent: string | null;
363
371
  children: any[] | null;
364
372
  parent: any | null;
@@ -395,13 +403,13 @@ declare const _default: import('vue').DefineComponent<{
395
403
  __fullClone: () => AlexElement;
396
404
  };
397
405
  offset: number;
398
- isEqual: (point: import("alex-editor").AlexPoint) => boolean;
406
+ isEqual: (point: import('alex-editor').AlexPoint) => boolean;
399
407
  moveToEnd: (element: AlexElement) => void;
400
408
  moveToStart: (element: AlexElement) => void;
401
409
  };
402
410
  } | null;
403
411
  __guid: number;
404
- __events: import("alex-editor/lib/core/tool").ObjectType;
412
+ __events: import('alex-editor/lib/core/tool').ObjectType;
405
413
  __firstRender: boolean;
406
414
  __isInputChinese: boolean;
407
415
  __innerSelectionChange: boolean;
@@ -428,8 +436,8 @@ declare const _default: import('vue').DefineComponent<{
428
436
  getElementByKey: (key: number) => AlexElement | null;
429
437
  getPreviousElement: (ele: AlexElement) => AlexElement | null;
430
438
  getNextElement: (ele: AlexElement) => AlexElement | null;
431
- getPreviousElementOfPoint: (point: import("alex-editor").AlexPoint) => AlexElement | null;
432
- getNextElementOfPoint: (point: import("alex-editor").AlexPoint) => AlexElement | null;
439
+ getPreviousElementOfPoint: (point: import('alex-editor').AlexPoint) => AlexElement | null;
440
+ getNextElementOfPoint: (point: import('alex-editor').AlexPoint) => AlexElement | null;
433
441
  getElementsByRange: () => AlexElementsRangeType;
434
442
  addElementTo: (childEle: AlexElement, parentEle: AlexElement, index?: number | undefined) => void;
435
443
  addElementBefore: (newEle: AlexElement, targetEle: AlexElement) => void;
@@ -442,17 +450,17 @@ declare const _default: import('vue').DefineComponent<{
442
450
  on: (eventName: string, eventHandle: (...args: any) => void) => void;
443
451
  destroy: () => void;
444
452
  } | null>;
445
- isSourceView: import("vue").Ref<boolean>;
446
- isFullScreen: import("vue").Ref<boolean>;
447
- canUseMenu: import("vue").Ref<boolean>;
448
- dataRangeCaches: import("vue").Ref<{
453
+ isSourceView: import('vue').Ref<boolean>;
454
+ isFullScreen: import('vue').Ref<boolean>;
455
+ canUseMenu: import('vue').Ref<boolean>;
456
+ dataRangeCaches: import('vue').Ref<{
449
457
  list: {
450
458
  element: {
451
459
  key: number;
452
- type: import("alex-editor").AlexElementType;
460
+ type: import('alex-editor').AlexElementType;
453
461
  parsedom: string | null;
454
- marks: import("alex-editor/lib/core/tool").ObjectType | null;
455
- styles: import("alex-editor/lib/core/tool").ObjectType | null;
462
+ marks: import('alex-editor/lib/core/tool').ObjectType | null;
463
+ styles: import('alex-editor/lib/core/tool').ObjectType | null;
456
464
  textContent: string | null;
457
465
  children: any[] | null;
458
466
  parent: any | null;
@@ -493,10 +501,10 @@ declare const _default: import('vue').DefineComponent<{
493
501
  flatList: {
494
502
  element: {
495
503
  key: number;
496
- type: import("alex-editor").AlexElementType;
504
+ type: import('alex-editor').AlexElementType;
497
505
  parsedom: string | null;
498
- marks: import("alex-editor/lib/core/tool").ObjectType | null;
499
- styles: import("alex-editor/lib/core/tool").ObjectType | null;
506
+ marks: import('alex-editor/lib/core/tool').ObjectType | null;
507
+ styles: import('alex-editor/lib/core/tool').ObjectType | null;
500
508
  textContent: string | null;
501
509
  children: any[] | null;
502
510
  parent: any | null;
@@ -535,12 +543,12 @@ declare const _default: import('vue').DefineComponent<{
535
543
  offset: false | number[];
536
544
  }[];
537
545
  }>;
538
- textValue: import("vue").ComputedRef<string>;
546
+ textValue: import('vue').ComputedRef<string>;
539
547
  collapseToEnd: () => void;
540
548
  collapseToStart: () => void;
541
549
  undo: () => void;
542
550
  redo: () => void;
543
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
551
+ }, unknown, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
544
552
  "update:modelValue": (...args: any[]) => void;
545
553
  change: (...args: any[]) => void;
546
554
  blur: (...args: any[]) => void;
@@ -549,9 +557,9 @@ declare const _default: import('vue').DefineComponent<{
549
557
  insertparagraph: (...args: any[]) => void;
550
558
  rangeupdate: (...args: any[]) => void;
551
559
  updateview: (...args: any[]) => void;
552
- }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
560
+ }, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
553
561
  locale: {
554
- type: import("vue").PropType<import("../locale").LocaleType>;
562
+ type: import('vue').PropType<import('../locale').LocaleType>;
555
563
  default: string;
556
564
  };
557
565
  modelValue: {
@@ -600,43 +608,51 @@ declare const _default: import('vue').DefineComponent<{
600
608
  default: number;
601
609
  };
602
610
  toolbar: {
603
- type: import("vue").PropType<ToolbarConfigType>;
611
+ type: import('vue').PropType<ToolbarConfigType>;
604
612
  default: null;
605
613
  };
606
614
  showWordLength: {
607
615
  type: BooleanConstructor;
608
616
  default: boolean;
609
617
  };
618
+ customTextPaste: {
619
+ type: import('vue').PropType<(data: string) => void | Promise<void>>;
620
+ default: null;
621
+ };
622
+ customHtmlPaste: {
623
+ type: import('vue').PropType<(elements: AlexElement[]) => void | Promise<void>>;
624
+ default: null;
625
+ };
610
626
  customImagePaste: {
611
- type: import("vue").PropType<(url: string) => void | Promise<void>>;
627
+ type: import('vue').PropType<(file: File) => void | Promise<void>>;
612
628
  default: null;
613
629
  };
614
630
  customVideoPaste: {
615
- type: import("vue").PropType<(url: string) => void | Promise<void>>;
631
+ type: import('vue').PropType<(file: File) => void | Promise<void>>;
616
632
  default: null;
617
633
  };
618
634
  customFilePaste: {
619
- type: import("vue").PropType<(url: string) => void | Promise<void>>;
635
+ type: import('vue').PropType<(file: File) => void | Promise<void>>;
620
636
  default: null;
621
637
  };
622
638
  menu: {
623
- type: import("vue").PropType<MenuConfigType>;
639
+ type: import('vue').PropType<MenuConfigType>;
624
640
  default: null;
625
641
  };
626
642
  pasteKeepMarks: {
627
- type: import("vue").PropType<ObjectType>;
643
+ type: import('vue').PropType<ObjectType>;
628
644
  default: null;
629
645
  };
630
646
  pasteKeepStyles: {
631
- type: import("vue").PropType<ObjectType>;
647
+ type: import('vue').PropType<ObjectType>;
632
648
  default: null;
633
649
  };
634
650
  customParseNode: {
635
- type: import("vue").PropType<(el: AlexElement) => AlexElement>;
651
+ type: import('vue').PropType<(el: AlexElement) => AlexElement>;
636
652
  default: null;
637
653
  };
638
654
  renderRules: {
639
- type: import("vue").PropType<((el: AlexElement) => void)[]>;
655
+ type: import('vue').PropType<((el: AlexElement) => void)[]>;
640
656
  default: () => never[];
641
657
  };
642
658
  autoheight: {
@@ -665,7 +681,7 @@ declare const _default: import('vue').DefineComponent<{
665
681
  placeholder: string;
666
682
  autoheight: boolean;
667
683
  toolbar: ToolbarConfigType;
668
- locale: import("../locale").LocaleType;
684
+ locale: import('../locale').LocaleType;
669
685
  autofocus: boolean;
670
686
  allowCopy: boolean;
671
687
  allowPaste: boolean;
@@ -673,9 +689,11 @@ declare const _default: import('vue').DefineComponent<{
673
689
  allowPasteHtml: boolean;
674
690
  videoRatio: number;
675
691
  showWordLength: boolean;
676
- customImagePaste: (url: string) => void | Promise<void>;
677
- customVideoPaste: (url: string) => void | Promise<void>;
678
- customFilePaste: (url: string) => void | Promise<void>;
692
+ customTextPaste: (data: string) => void | Promise<void>;
693
+ customHtmlPaste: (elements: AlexElement[]) => void | Promise<void>;
694
+ customImagePaste: (file: File) => void | Promise<void>;
695
+ customVideoPaste: (file: File) => void | Promise<void>;
696
+ customFilePaste: (file: File) => void | Promise<void>;
679
697
  pasteKeepMarks: ObjectType;
680
698
  pasteKeepStyles: ObjectType;
681
699
  customParseNode: (el: AlexElement) => AlexElement;
@@ -70,16 +70,24 @@ export declare const EditifyProps: {
70
70
  type: BooleanConstructor;
71
71
  default: boolean;
72
72
  };
73
+ customTextPaste: {
74
+ type: PropType<(data: string) => void | Promise<void>>;
75
+ default: null;
76
+ };
77
+ customHtmlPaste: {
78
+ type: PropType<(elements: AlexElement[]) => void | Promise<void>>;
79
+ default: null;
80
+ };
73
81
  customImagePaste: {
74
- type: PropType<(url: string) => void | Promise<void>>;
82
+ type: PropType<(file: File) => void | Promise<void>>;
75
83
  default: null;
76
84
  };
77
85
  customVideoPaste: {
78
- type: PropType<(url: string) => void | Promise<void>>;
86
+ type: PropType<(file: File) => void | Promise<void>>;
79
87
  default: null;
80
88
  };
81
89
  customFilePaste: {
82
- type: PropType<(url: string) => void | Promise<void>>;
90
+ type: PropType<(file: File) => void | Promise<void>>;
83
91
  default: null;
84
92
  };
85
93
  menu: {