askbot-dragon 1.0.13 → 1.0.14

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 (77) hide show
  1. package/README.md +27 -27
  2. package/babel.config.js +6 -6
  3. package/dragon.iml +7 -7
  4. package/package.json +56 -56
  5. package/public/index.html +43 -43
  6. package/src/App.vue +31 -31
  7. package/src/api/index.js +1 -1
  8. package/src/api/mock.http +2 -2
  9. package/src/api/requestUrl.js +185 -185
  10. package/src/assets/js/AliyunlssUtil.js +92 -92
  11. package/src/assets/js/Base64Util.js +22 -22
  12. package/src/assets/js/script.js +36 -36
  13. package/src/assets/less/common.css +6773 -6773
  14. package/src/assets/less/converSationContainer/common.less +191 -191
  15. package/src/assets/less/converSationContainer/converSatonContainer.less +493 -493
  16. package/src/assets/less/iconfont.css +37 -37
  17. package/src/assets/less/ticketMessage.less +211 -211
  18. package/src/components/ActionAlertIframe.vue +112 -112
  19. package/src/components/AiGuide.vue +467 -467
  20. package/src/components/AskIFrame.vue +15 -15
  21. package/src/components/ConversationContainer.vue +4617 -4617
  22. package/src/components/FileType.vue +86 -86
  23. package/src/components/Message.vue +27 -27
  24. package/src/components/actionSatisfaction.vue +107 -107
  25. package/src/components/actionSendToBot.vue +62 -62
  26. package/src/components/answerDissatisfaction.vue +62 -62
  27. package/src/components/answerRadio.vue +76 -76
  28. package/src/components/ask-components/DissatisfactionOptions.vue +57 -57
  29. package/src/components/ask-components/Msgloading.vue +37 -37
  30. package/src/components/ask-components/SatisfactionV2.vue +15 -15
  31. package/src/components/askVideo.vue +138 -138
  32. package/src/components/assetDetails.vue +370 -370
  33. package/src/components/assetMessage.vue +228 -228
  34. package/src/components/associationIntention.vue +258 -243
  35. package/src/components/botActionSatisfactor.vue +68 -68
  36. package/src/components/chatContent.vue +513 -513
  37. package/src/components/feedBack.vue +136 -136
  38. package/src/components/fielListView.vue +346 -346
  39. package/src/components/file/AliyunOssComponents.vue +108 -108
  40. package/src/components/formTemplate.vue +3344 -3344
  41. package/src/components/loadingProcess.vue +164 -164
  42. package/src/components/message/ActionAlertIframe.vue +112 -112
  43. package/src/components/message/ShopMessage.vue +164 -164
  44. package/src/components/message/TextMessage.vue +924 -924
  45. package/src/components/message/TicketMessage.vue +177 -177
  46. package/src/components/message/swiper/index.js +4 -4
  47. package/src/components/message/swiper/ticketSwiper.vue +503 -503
  48. package/src/components/message/swiper/ticketSwiperItem.vue +61 -61
  49. package/src/components/msgLoading.vue +231 -231
  50. package/src/components/myPopup.vue +70 -70
  51. package/src/components/popup.vue +227 -227
  52. package/src/components/receiverMessagePlatform.vue +65 -65
  53. package/src/components/recommend.vue +89 -89
  54. package/src/components/selector/hOption.vue +20 -20
  55. package/src/components/selector/hSelector.vue +199 -199
  56. package/src/components/selector/hWrapper.vue +216 -216
  57. package/src/components/senderMessagePlatform.vue +50 -50
  58. package/src/components/source/BotMessage.vue +24 -24
  59. package/src/components/source/CustomMessage.vue +24 -24
  60. package/src/components/test.vue +260 -260
  61. package/src/components/tree.vue +247 -247
  62. package/src/components/utils/AliyunIssUtil.js +72 -72
  63. package/src/components/utils/ckeditor.js +155 -155
  64. package/src/components/utils/ckeditorImageUpload/command.js +109 -109
  65. package/src/components/utils/ckeditorImageUpload/editing.js +11 -11
  66. package/src/components/utils/ckeditorImageUpload/plugin-image.js +11 -11
  67. package/src/components/utils/ckeditorImageUpload/toolbar-ui.js +40 -40
  68. package/src/components/utils/ckeditorfileUpload/common.js +111 -111
  69. package/src/components/utils/ckeditorfileUpload/editing.js +11 -11
  70. package/src/components/utils/ckeditorfileUpload/plugin_file.js +11 -11
  71. package/src/components/utils/ckeditorfileUpload/toolbar_ui.js +34 -34
  72. package/src/components/utils/format_date.js +25 -25
  73. package/src/components/utils/index.js +6 -6
  74. package/src/components/utils/math_utils.js +29 -29
  75. package/src/components/voiceComponent.vue +119 -119
  76. package/src/main.js +60 -60
  77. package/vue.config.js +47 -47
@@ -1,155 +1,155 @@
1
- import {multipartUpload, ossFileUrl} from "./AliyunIssUtil";
2
-
3
- const ossConfig={
4
- region: "oss-cn-zhangjiakou",
5
- //云账号AccessKey有所有API访问权限,建议遵循阿里云安全最佳实践,创建并使用STS方式来进行API访问
6
- accessKeyId: "LTAI4G3QtdEdwkEbihBngAsK",
7
- accessKeySecret: "OwgdVfc5PeCkIgqIdug660xmiSPchn",
8
- // stsToken: '<Your securityToken(STS)>',
9
- bucket: "guoranopen-zjk",
10
- }
11
- class MyUploadAdapter {
12
- constructor( loader , editor ) {
13
- // 要在上载期间使用的文件加载器实例
14
- this.loader = loader;
15
- this.editor = editor
16
- }
17
-
18
- // 启动上载过程
19
- upload() {
20
- return this.loader.file
21
- .then( file => new Promise( ( ) => {
22
- /* this._initRequest();
23
- this._initListeners( resolve, reject, file );
24
- this._sendRequest( file );*/
25
- let command = this.editor.commands.get("insertAskComponent");
26
- command.execute({
27
- tag: "span-editable",
28
- options: {
29
- name: file.name + '正在上传...',
30
- data: 0,
31
- editable:false,
32
- type:'upload'
33
- },
34
- })
35
- this.uploadFile(file)
36
- } ) );
37
- }
38
-
39
- // 中止上载过程
40
- abort() {
41
- if ( this.xhr ) {
42
- this.xhr.abort();
43
- }
44
- }
45
- uploadFile(file){
46
- let imgInfo = {
47
- url:'',
48
- }
49
- let res = multipartUpload(
50
- ossConfig,
51
- file,
52
- null,
53
- imgInfo
54
- );
55
- res.then(resp=>{
56
- imgInfo.url = ossFileUrl(ossConfig, resp.name)
57
- let root = this.editor.model.document.getRoot()
58
- let children = root.getChildren()
59
- for(let child of children){
60
- for (let index = 0; index < child._children._nodes.length; index++) {
61
- if(child._children._nodes[index].name == 'askComponentPlaceholderContainer'){
62
- if(child._children._nodes[index]._children._nodes[0]) {
63
- this.editor.model.change(writer => {
64
- writer.remove(child._children._nodes[index]._children._nodes[0]);
65
- });
66
- }
67
- }
68
- }
69
- }
70
- let command = this.editor.commands.get("insertAskComponent");
71
- command.execute({
72
- tag: "img",
73
- options: {
74
- width:'100%',
75
- alt: resp.name + 0,
76
- src: imgInfo.url
77
- },
78
- });
79
- // resolve({
80
- // default:imgInfo.url
81
- // })
82
- })
83
- }
84
- // 使用传递给构造函数的URL初始化XMLHttpRequest对象.
85
- _initRequest() {
86
- const xhr = this.xhr = new XMLHttpRequest();
87
- console.log(xhr)
88
- xhr.open( 'POST', '/open-api/oss/public?token=8c98087dfd2d48f856d8c95c09115def', true );
89
- xhr.responseType = '';
90
- }
91
-
92
- // 初始化 XMLHttpRequest 监听.
93
- _initListeners( resolve, reject, file ) {
94
- const xhr = this.xhr;
95
- const loader = this.loader;
96
- console.log(this.loader)
97
- const genericErrorText = `无法上传文件: ${ file.name }.`;
98
-
99
- xhr.addEventListener( 'error', () => reject( genericErrorText ) );
100
- xhr.addEventListener( 'abort', () => reject() );
101
- xhr.addEventListener( 'load', () => {
102
- const response = xhr.response;
103
- // 当code==200说明上传成功,可以增加弹框提示;
104
- // 当上传失败时,必须调用reject()函数。
105
-
106
- console.log('response', xhr)
107
-
108
- if ( !response || response.error ) {
109
- return reject( response && response.error ? response.error.message : genericErrorText );
110
- }
111
- //上传成功,从后台获取图片的url地址
112
- resolve( {
113
- default: response
114
- } );
115
- } );
116
-
117
- // 支持时上传进度。文件加载器有#uploadTotal和#upload属性,用于在编辑器用户界面中显示上载进度栏。
118
- if ( xhr.upload ) {
119
- xhr.upload.addEventListener( 'progress', evt => {
120
- if ( evt.lengthComputable ) {
121
- loader.uploadTotal = evt.total;
122
- loader.uploaded = evt.loaded;
123
- }
124
- } );
125
- }
126
- }
127
-
128
- // 准备数据并发送请求
129
- _sendRequest( file ) {
130
- //通过FormData构造函数创建一个空对象
131
- const data = new FormData();
132
- //通过append()方法在末尾追加key为files值为file的数据
133
-
134
- console.log('file',file)
135
- data.append( 'file', file );//上传的参数data
136
- // data.append( 'memberId', "666" );
137
- /**
138
- * 重要提示:这是实现诸如身份验证和CSRF保护等安全机制的正确位置。
139
- * 例如,可以使用XMLHttpRequest.setRequestHeader()设置包含应用程序先前生成的CSRF令牌的请求头。
140
- */
141
- this.xhr.send( data );
142
- }
143
- }
144
-
145
- function MyCustomUploadAdapterPlugin( editor ) {
146
- editor.plugins.get( 'FileRepository' ).createUploadAdapter = ( loader ) => {
147
- // 在这里将URL配置为后端上载脚本
148
- return new MyUploadAdapter( loader,editor );
149
- }
150
- }
151
-
152
- export {
153
- MyUploadAdapter,
154
- MyCustomUploadAdapterPlugin
155
- }
1
+ import {multipartUpload, ossFileUrl} from "./AliyunIssUtil";
2
+
3
+ const ossConfig={
4
+ region: "oss-cn-zhangjiakou",
5
+ //云账号AccessKey有所有API访问权限,建议遵循阿里云安全最佳实践,创建并使用STS方式来进行API访问
6
+ accessKeyId: "LTAI4G3QtdEdwkEbihBngAsK",
7
+ accessKeySecret: "OwgdVfc5PeCkIgqIdug660xmiSPchn",
8
+ // stsToken: '<Your securityToken(STS)>',
9
+ bucket: "guoranopen-zjk",
10
+ }
11
+ class MyUploadAdapter {
12
+ constructor( loader , editor ) {
13
+ // 要在上载期间使用的文件加载器实例
14
+ this.loader = loader;
15
+ this.editor = editor
16
+ }
17
+
18
+ // 启动上载过程
19
+ upload() {
20
+ return this.loader.file
21
+ .then( file => new Promise( ( ) => {
22
+ /* this._initRequest();
23
+ this._initListeners( resolve, reject, file );
24
+ this._sendRequest( file );*/
25
+ let command = this.editor.commands.get("insertAskComponent");
26
+ command.execute({
27
+ tag: "span-editable",
28
+ options: {
29
+ name: file.name + '正在上传...',
30
+ data: 0,
31
+ editable:false,
32
+ type:'upload'
33
+ },
34
+ })
35
+ this.uploadFile(file)
36
+ } ) );
37
+ }
38
+
39
+ // 中止上载过程
40
+ abort() {
41
+ if ( this.xhr ) {
42
+ this.xhr.abort();
43
+ }
44
+ }
45
+ uploadFile(file){
46
+ let imgInfo = {
47
+ url:'',
48
+ }
49
+ let res = multipartUpload(
50
+ ossConfig,
51
+ file,
52
+ null,
53
+ imgInfo
54
+ );
55
+ res.then(resp=>{
56
+ imgInfo.url = ossFileUrl(ossConfig, resp.name)
57
+ let root = this.editor.model.document.getRoot()
58
+ let children = root.getChildren()
59
+ for(let child of children){
60
+ for (let index = 0; index < child._children._nodes.length; index++) {
61
+ if(child._children._nodes[index].name == 'askComponentPlaceholderContainer'){
62
+ if(child._children._nodes[index]._children._nodes[0]) {
63
+ this.editor.model.change(writer => {
64
+ writer.remove(child._children._nodes[index]._children._nodes[0]);
65
+ });
66
+ }
67
+ }
68
+ }
69
+ }
70
+ let command = this.editor.commands.get("insertAskComponent");
71
+ command.execute({
72
+ tag: "img",
73
+ options: {
74
+ width:'100%',
75
+ alt: resp.name + 0,
76
+ src: imgInfo.url
77
+ },
78
+ });
79
+ // resolve({
80
+ // default:imgInfo.url
81
+ // })
82
+ })
83
+ }
84
+ // 使用传递给构造函数的URL初始化XMLHttpRequest对象.
85
+ _initRequest() {
86
+ const xhr = this.xhr = new XMLHttpRequest();
87
+ console.log(xhr)
88
+ xhr.open( 'POST', '/open-api/oss/public?token=8c98087dfd2d48f856d8c95c09115def', true );
89
+ xhr.responseType = '';
90
+ }
91
+
92
+ // 初始化 XMLHttpRequest 监听.
93
+ _initListeners( resolve, reject, file ) {
94
+ const xhr = this.xhr;
95
+ const loader = this.loader;
96
+ console.log(this.loader)
97
+ const genericErrorText = `无法上传文件: ${ file.name }.`;
98
+
99
+ xhr.addEventListener( 'error', () => reject( genericErrorText ) );
100
+ xhr.addEventListener( 'abort', () => reject() );
101
+ xhr.addEventListener( 'load', () => {
102
+ const response = xhr.response;
103
+ // 当code==200说明上传成功,可以增加弹框提示;
104
+ // 当上传失败时,必须调用reject()函数。
105
+
106
+ console.log('response', xhr)
107
+
108
+ if ( !response || response.error ) {
109
+ return reject( response && response.error ? response.error.message : genericErrorText );
110
+ }
111
+ //上传成功,从后台获取图片的url地址
112
+ resolve( {
113
+ default: response
114
+ } );
115
+ } );
116
+
117
+ // 支持时上传进度。文件加载器有#uploadTotal和#upload属性,用于在编辑器用户界面中显示上载进度栏。
118
+ if ( xhr.upload ) {
119
+ xhr.upload.addEventListener( 'progress', evt => {
120
+ if ( evt.lengthComputable ) {
121
+ loader.uploadTotal = evt.total;
122
+ loader.uploaded = evt.loaded;
123
+ }
124
+ } );
125
+ }
126
+ }
127
+
128
+ // 准备数据并发送请求
129
+ _sendRequest( file ) {
130
+ //通过FormData构造函数创建一个空对象
131
+ const data = new FormData();
132
+ //通过append()方法在末尾追加key为files值为file的数据
133
+
134
+ console.log('file',file)
135
+ data.append( 'file', file );//上传的参数data
136
+ // data.append( 'memberId', "666" );
137
+ /**
138
+ * 重要提示:这是实现诸如身份验证和CSRF保护等安全机制的正确位置。
139
+ * 例如,可以使用XMLHttpRequest.setRequestHeader()设置包含应用程序先前生成的CSRF令牌的请求头。
140
+ */
141
+ this.xhr.send( data );
142
+ }
143
+ }
144
+
145
+ function MyCustomUploadAdapterPlugin( editor ) {
146
+ editor.plugins.get( 'FileRepository' ).createUploadAdapter = ( loader ) => {
147
+ // 在这里将URL配置为后端上载脚本
148
+ return new MyUploadAdapter( loader,editor );
149
+ }
150
+ }
151
+
152
+ export {
153
+ MyUploadAdapter,
154
+ MyCustomUploadAdapterPlugin
155
+ }
@@ -1,110 +1,110 @@
1
- import Command from "@ckeditor/ckeditor5-core/src/command";
2
- import { multipartUpload, ossFileUrl } from "../AliyunIssUtil";
3
- const ossConfig = {
4
- region: "oss-cn-zhangjiakou",
5
- //云账号AccessKey有所有API访问权限,建议遵循阿里云安全最佳实践,创建并使用STS方式来进行API访问
6
- accessKeyId: "LTAI4G3QtdEdwkEbihBngAsK",
7
- accessKeySecret: "OwgdVfc5PeCkIgqIdug660xmiSPchn",
8
- // stsToken: '<Your securityToken(STS)>',
9
- bucket: "guoranopen-zjk",
10
- }
11
- export default class ImageCommand extends Command {
12
- refresh() {
13
- this.isEnabled = true;
14
- }
15
- execute(file) {
16
- if (file){
17
- this.forEachFiles(file.file)
18
- return
19
- }
20
- var inputObj = document.createElement('input')
21
- inputObj.setAttribute('id', '_ef');
22
- inputObj.setAttribute('type', 'file');
23
- inputObj.setAttribute('accept','image/jpeg,image/png,image/gif,image/bmp,image/webp,image/tiff')
24
- inputObj.setAttribute("style", 'visibility:hidden');
25
- document.body.appendChild(inputObj);
26
- inputObj.click();
27
- inputObj.onchange = () => {
28
- // 循环上传文件
29
- let files = inputObj.files;
30
- for (let index = 0; index < files.length; index++) {
31
- const filed = files[index];
32
- let command = this.editor.commands.get("insertAskComponent");
33
- command.execute({
34
- tag: "span-editable",
35
- options: {
36
- name: filed.name + '正在上传...',
37
- data: index,
38
- editable:false,
39
- type:'upload'
40
- },
41
- })
42
- this.upload(filed).then(res =>{
43
- // let command = this.editor.commands.get("insertAskComponent");
44
- command.execute({
45
- tag: "img",
46
- options: {
47
- width:'100%',
48
- alt: filed.name + index,
49
- src: res.default
50
- },
51
- });
52
- })
53
- }
54
- }
55
- }
56
- forEachFiles(files){
57
- for (let index = 0; index < files.length; index++) {
58
- const filed = files[index];
59
- let command = this.editor.commands.get("insertAskComponent");
60
- command.execute({
61
- tag: "span-editable",
62
- options: {
63
- name: filed.name + '正在上传...',
64
- data: index,
65
- editable: false,
66
- type: 'upload'
67
- },
68
- })
69
- this.upload(filed).then(res => {
70
- // let command = this.editor.commands.get("insertAskComponent");
71
- command.execute({
72
- tag: "img",
73
- options: {
74
- width: '100%',
75
- alt: filed.name + index,
76
- src: res.default
77
- },
78
- });
79
- })
80
- }
81
- }
82
- upload(file) {
83
- return new Promise((resolve) => {
84
- /* this._initRequest();
85
- this._initListeners( resolve, reject, file );
86
- this._sendRequest( file );*/
87
- this.uploadFile(file, resolve)
88
- })
89
- }
90
- uploadFile(file, resolve) {
91
- let imgInfo = {
92
- url: '',
93
- }
94
- let res = multipartUpload(
95
- ossConfig,
96
- file,
97
- null,
98
- imgInfo
99
- );
100
- console.log(res,'resprespresp');
101
- res.then(resp => {
102
- imgInfo.url = ossFileUrl(ossConfig, resp.name)
103
- console.log(resp,'resprespresp');
104
- console.log(imgInfo)
105
- resolve({
106
- default: imgInfo.url
107
- })
108
- })
109
- }
1
+ import Command from "@ckeditor/ckeditor5-core/src/command";
2
+ import { multipartUpload, ossFileUrl } from "../AliyunIssUtil";
3
+ const ossConfig = {
4
+ region: "oss-cn-zhangjiakou",
5
+ //云账号AccessKey有所有API访问权限,建议遵循阿里云安全最佳实践,创建并使用STS方式来进行API访问
6
+ accessKeyId: "LTAI4G3QtdEdwkEbihBngAsK",
7
+ accessKeySecret: "OwgdVfc5PeCkIgqIdug660xmiSPchn",
8
+ // stsToken: '<Your securityToken(STS)>',
9
+ bucket: "guoranopen-zjk",
10
+ }
11
+ export default class ImageCommand extends Command {
12
+ refresh() {
13
+ this.isEnabled = true;
14
+ }
15
+ execute(file) {
16
+ if (file){
17
+ this.forEachFiles(file.file)
18
+ return
19
+ }
20
+ var inputObj = document.createElement('input')
21
+ inputObj.setAttribute('id', '_ef');
22
+ inputObj.setAttribute('type', 'file');
23
+ inputObj.setAttribute('accept','image/jpeg,image/png,image/gif,image/bmp,image/webp,image/tiff')
24
+ inputObj.setAttribute("style", 'visibility:hidden');
25
+ document.body.appendChild(inputObj);
26
+ inputObj.click();
27
+ inputObj.onchange = () => {
28
+ // 循环上传文件
29
+ let files = inputObj.files;
30
+ for (let index = 0; index < files.length; index++) {
31
+ const filed = files[index];
32
+ let command = this.editor.commands.get("insertAskComponent");
33
+ command.execute({
34
+ tag: "span-editable",
35
+ options: {
36
+ name: filed.name + '正在上传...',
37
+ data: index,
38
+ editable:false,
39
+ type:'upload'
40
+ },
41
+ })
42
+ this.upload(filed).then(res =>{
43
+ // let command = this.editor.commands.get("insertAskComponent");
44
+ command.execute({
45
+ tag: "img",
46
+ options: {
47
+ width:'100%',
48
+ alt: filed.name + index,
49
+ src: res.default
50
+ },
51
+ });
52
+ })
53
+ }
54
+ }
55
+ }
56
+ forEachFiles(files){
57
+ for (let index = 0; index < files.length; index++) {
58
+ const filed = files[index];
59
+ let command = this.editor.commands.get("insertAskComponent");
60
+ command.execute({
61
+ tag: "span-editable",
62
+ options: {
63
+ name: filed.name + '正在上传...',
64
+ data: index,
65
+ editable: false,
66
+ type: 'upload'
67
+ },
68
+ })
69
+ this.upload(filed).then(res => {
70
+ // let command = this.editor.commands.get("insertAskComponent");
71
+ command.execute({
72
+ tag: "img",
73
+ options: {
74
+ width: '100%',
75
+ alt: filed.name + index,
76
+ src: res.default
77
+ },
78
+ });
79
+ })
80
+ }
81
+ }
82
+ upload(file) {
83
+ return new Promise((resolve) => {
84
+ /* this._initRequest();
85
+ this._initListeners( resolve, reject, file );
86
+ this._sendRequest( file );*/
87
+ this.uploadFile(file, resolve)
88
+ })
89
+ }
90
+ uploadFile(file, resolve) {
91
+ let imgInfo = {
92
+ url: '',
93
+ }
94
+ let res = multipartUpload(
95
+ ossConfig,
96
+ file,
97
+ null,
98
+ imgInfo
99
+ );
100
+ console.log(res,'resprespresp');
101
+ res.then(resp => {
102
+ imgInfo.url = ossFileUrl(ossConfig, resp.name)
103
+ console.log(resp,'resprespresp');
104
+ console.log(imgInfo)
105
+ resolve({
106
+ default: imgInfo.url
107
+ })
108
+ })
109
+ }
110
110
  }
@@ -1,12 +1,12 @@
1
- import Plugin from "@ckeditor/ckeditor5-core/src/plugin";
2
- import ImageCommand from "./command";
3
- export default class MyimageUpload extends Plugin {
4
- static get pluginName() {
5
- return "imageUpload";
6
- }
7
- init() {
8
- const editor = this.editor;
9
- // 注册一个 BoldCommand 命令
10
- editor.commands.add('imageUpload', new ImageCommand(editor));
11
- }
1
+ import Plugin from "@ckeditor/ckeditor5-core/src/plugin";
2
+ import ImageCommand from "./command";
3
+ export default class MyimageUpload extends Plugin {
4
+ static get pluginName() {
5
+ return "imageUpload";
6
+ }
7
+ init() {
8
+ const editor = this.editor;
9
+ // 注册一个 BoldCommand 命令
10
+ editor.commands.add('imageUpload', new ImageCommand(editor));
11
+ }
12
12
  }
@@ -1,12 +1,12 @@
1
- import Plugin from '@ckeditor/ckeditor5-core/src/plugin';
2
- import ToolbarUI from './toolbar-ui'
3
- import ImageUpload from './editing'
4
-
5
- export default class MyimageUpload extends Plugin {
6
- static get requires() {
7
- return [ImageUpload, ToolbarUI];
8
- }
9
- static get pluginName() {
10
- return 'MyimageUpload';
11
- }
1
+ import Plugin from '@ckeditor/ckeditor5-core/src/plugin';
2
+ import ToolbarUI from './toolbar-ui'
3
+ import ImageUpload from './editing'
4
+
5
+ export default class MyimageUpload extends Plugin {
6
+ static get requires() {
7
+ return [ImageUpload, ToolbarUI];
8
+ }
9
+ static get pluginName() {
10
+ return 'MyimageUpload';
11
+ }
12
12
  }
@@ -1,41 +1,41 @@
1
- /* eslint-disable */
2
- import Plugin from "@ckeditor/ckeditor5-core/src/plugin";
3
- import ButtonView from "@ckeditor/ckeditor5-ui/src/button/buttonview";
4
- // import aoteman from "@ckeditor/ckeditor5-basic-styles/theme/icons/bold.svg";
5
-
6
- // console.log(aoteman.replace('/',''));
7
- export default class BoldToolbarUI extends Plugin {
8
- init() {
9
- this._createToolbarButton();
10
- }
11
-
12
- _createToolbarButton() {
13
- const editor = this.editor;
14
- const command = editor.commands.get('imageUpload');
15
- editor.ui.componentFactory.add('MyimageUpload', (locale) => {
16
- const view = new ButtonView(locale);
17
- view.set({
18
- label: '上传图片',
19
- tooltip: true,
20
- withText: true, // 在按钮上展示 label
21
- // icon:`<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
22
- // viewBox="0 0 200 200" style="enable-background:new 0 0 200 200;" xml:space="preserve">
23
- // <path d="M182,4.2H18c-9.9,0-18,8-18,18l0,0v156c0.2,9.7,8.3,17.5,18,17.5h164c9.7,0,17.8-7.8,18-17.5v-156C200,12.3,192,4.2,182,4.2
24
- // z M152.5,101.2c-3.1-2.3-7.5-2.3-10.6,0l-31.1,26.1L67.9,58.5c-3.4-3.7-8.9-3.9-12.6-0.6c-0.2,0.2-0.3,0.3-0.6,0.6L18,99.3V22.2h164
25
- // v91.3L152.5,101.2z" fill="#333333"/>
26
- // <path d="M145.8,38.3c-14,0-25.3,11.3-25.3,25.3s11.3,25.3,25.3,25.3s25.3-11.3,25.3-25.3l0,0C171.1,49.6,159.7,38.3,145.8,38.3z
27
- // M145.8,70.3c-4,0-7.3-3.2-7.3-7.3s3.2-7.3,7.3-7.3s7.3,3.2,7.3,7.3c0.2,4-2.8,7.4-6.8,7.6c-0.1,0-0.3,0-0.4,0V70.3z" fill="#333333"/>
28
- // </svg>`,
29
- class:'icon'
30
- });
31
-
32
- // console.log(Template);
33
- // 将按钮的状态关联到命令对应值上
34
- view.bind("isOn", "isEnabled").to(command, "value", "isEnabled");
35
- // 点击按钮时触发相应命令
36
- this.listenTo(view, "execute", () => editor.execute('imageUpload'));
37
- return view;
38
-
39
- })
40
- }
1
+ /* eslint-disable */
2
+ import Plugin from "@ckeditor/ckeditor5-core/src/plugin";
3
+ import ButtonView from "@ckeditor/ckeditor5-ui/src/button/buttonview";
4
+ // import aoteman from "@ckeditor/ckeditor5-basic-styles/theme/icons/bold.svg";
5
+
6
+ // console.log(aoteman.replace('/',''));
7
+ export default class BoldToolbarUI extends Plugin {
8
+ init() {
9
+ this._createToolbarButton();
10
+ }
11
+
12
+ _createToolbarButton() {
13
+ const editor = this.editor;
14
+ const command = editor.commands.get('imageUpload');
15
+ editor.ui.componentFactory.add('MyimageUpload', (locale) => {
16
+ const view = new ButtonView(locale);
17
+ view.set({
18
+ label: '上传图片',
19
+ tooltip: true,
20
+ withText: true, // 在按钮上展示 label
21
+ // icon:`<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
22
+ // viewBox="0 0 200 200" style="enable-background:new 0 0 200 200;" xml:space="preserve">
23
+ // <path d="M182,4.2H18c-9.9,0-18,8-18,18l0,0v156c0.2,9.7,8.3,17.5,18,17.5h164c9.7,0,17.8-7.8,18-17.5v-156C200,12.3,192,4.2,182,4.2
24
+ // z M152.5,101.2c-3.1-2.3-7.5-2.3-10.6,0l-31.1,26.1L67.9,58.5c-3.4-3.7-8.9-3.9-12.6-0.6c-0.2,0.2-0.3,0.3-0.6,0.6L18,99.3V22.2h164
25
+ // v91.3L152.5,101.2z" fill="#333333"/>
26
+ // <path d="M145.8,38.3c-14,0-25.3,11.3-25.3,25.3s11.3,25.3,25.3,25.3s25.3-11.3,25.3-25.3l0,0C171.1,49.6,159.7,38.3,145.8,38.3z
27
+ // M145.8,70.3c-4,0-7.3-3.2-7.3-7.3s3.2-7.3,7.3-7.3s7.3,3.2,7.3,7.3c0.2,4-2.8,7.4-6.8,7.6c-0.1,0-0.3,0-0.4,0V70.3z" fill="#333333"/>
28
+ // </svg>`,
29
+ class:'icon'
30
+ });
31
+
32
+ // console.log(Template);
33
+ // 将按钮的状态关联到命令对应值上
34
+ view.bind("isOn", "isEnabled").to(command, "value", "isEnabled");
35
+ // 点击按钮时触发相应命令
36
+ this.listenTo(view, "execute", () => editor.execute('imageUpload'));
37
+ return view;
38
+
39
+ })
40
+ }
41
41
  }