ecinc-cloud-mappaio 9.7.34 → 9.7.37
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.
- package/lib/ecmappaio.common.js +461 -100
- package/lib/ecmappaio.umd.js +461 -100
- package/lib/ecmappaio.umd.min.js +1 -1
- package/package.json +1 -1
package/lib/ecmappaio.common.js
CHANGED
|
@@ -1397,7 +1397,7 @@ var actions = {
|
|
|
1397
1397
|
|
|
1398
1398
|
/***/ }),
|
|
1399
1399
|
|
|
1400
|
-
/***/
|
|
1400
|
+
/***/ 249:
|
|
1401
1401
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
1402
1402
|
|
|
1403
1403
|
"use strict";
|
|
@@ -2303,8 +2303,8 @@ var SysSetupvue_type_template_id_2497073a_scoped_true_render = function render()
|
|
|
2303
2303
|
};
|
|
2304
2304
|
var SysSetupvue_type_template_id_2497073a_scoped_true_staticRenderFns = [];
|
|
2305
2305
|
|
|
2306
|
-
;// CONCATENATED MODULE: ./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./packages/ecwplat/Module/src/MenuItemForm.vue?vue&type=template&id=
|
|
2307
|
-
var
|
|
2306
|
+
;// CONCATENATED MODULE: ./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./packages/ecwplat/Module/src/MenuItemForm.vue?vue&type=template&id=3ebd0a76&scoped=true
|
|
2307
|
+
var MenuItemFormvue_type_template_id_3ebd0a76_scoped_true_render = function render() {
|
|
2308
2308
|
var _vm = this,
|
|
2309
2309
|
_c = _vm._self._c;
|
|
2310
2310
|
return _c('el-form', {
|
|
@@ -2697,7 +2697,7 @@ var MenuItemFormvue_type_template_id_76a1a43d_scoped_true_render = function rend
|
|
|
2697
2697
|
attrs: {
|
|
2698
2698
|
"dataType": _vm.$tx('ecwplat.menuForm.allFile', '全部')
|
|
2699
2699
|
}
|
|
2700
|
-
}, [_vm._v(_vm._s(
|
|
2700
|
+
}, [_vm._v(_vm._s(_vm.$tx('ecwplat.menuForm.allFile', '全部')) + "列表URL")])]), _c('td', {
|
|
2701
2701
|
staticClass: "el-table__cell tdcont tdw83",
|
|
2702
2702
|
attrs: {
|
|
2703
2703
|
"colspan": "3"
|
|
@@ -3800,7 +3800,7 @@ var MenuItemFormvue_type_template_id_76a1a43d_scoped_true_render = function rend
|
|
|
3800
3800
|
}
|
|
3801
3801
|
}, [_c('Icons')], 1) : _vm._e()], 1);
|
|
3802
3802
|
};
|
|
3803
|
-
var
|
|
3803
|
+
var MenuItemFormvue_type_template_id_3ebd0a76_scoped_true_staticRenderFns = [];
|
|
3804
3804
|
|
|
3805
3805
|
;// CONCATENATED MODULE: ./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./packages/ecwplat/Module/src/MenuItemForm.vue?vue&type=script&lang=js
|
|
3806
3806
|
/* harmony default export */ var MenuItemFormvue_type_script_lang_js = ({
|
|
@@ -4185,7 +4185,7 @@ var MenuItemFormvue_type_template_id_76a1a43d_scoped_true_staticRenderFns = [];
|
|
|
4185
4185
|
if (formUrl.indexOf('/dcontent/') !== -1) {
|
|
4186
4186
|
formUrl = formUrl.split('/dcontent/')[1];
|
|
4187
4187
|
} else if (formUrl.indexOf('@/wapp/') !== -1) {
|
|
4188
|
-
formUrl = formUrl.split('@/wapp/')[1].replace('
|
|
4188
|
+
formUrl = formUrl.split('@/wapp/')[1].replace('///', '.');
|
|
4189
4189
|
}
|
|
4190
4190
|
this.$set(this.vo, 'href', formUrl.split('.')[1]);
|
|
4191
4191
|
this.$set(this.vo, 'wfEngineUrl', formUrl.split('.')[0] + '/' + formUrl.split('.')[1]);
|
|
@@ -4242,9 +4242,9 @@ var MenuItemFormvue_type_template_id_76a1a43d_scoped_true_staticRenderFns = [];
|
|
|
4242
4242
|
});
|
|
4243
4243
|
;// CONCATENATED MODULE: ./packages/ecwplat/Module/src/MenuItemForm.vue?vue&type=script&lang=js
|
|
4244
4244
|
/* harmony default export */ var src_MenuItemFormvue_type_script_lang_js = (MenuItemFormvue_type_script_lang_js);
|
|
4245
|
-
// EXTERNAL MODULE: ./node_modules/vue-style-loader/index.js??clonedRuleSet-22.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./packages/ecwplat/Module/src/MenuItemForm.vue?vue&type=style&index=0&id=
|
|
4246
|
-
var
|
|
4247
|
-
;// CONCATENATED MODULE: ./packages/ecwplat/Module/src/MenuItemForm.vue?vue&type=style&index=0&id=
|
|
4245
|
+
// EXTERNAL MODULE: ./node_modules/vue-style-loader/index.js??clonedRuleSet-22.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./packages/ecwplat/Module/src/MenuItemForm.vue?vue&type=style&index=0&id=3ebd0a76&prod&scoped=true&lang=scss
|
|
4246
|
+
var MenuItemFormvue_type_style_index_0_id_3ebd0a76_prod_scoped_true_lang_scss = __webpack_require__(3381);
|
|
4247
|
+
;// CONCATENATED MODULE: ./packages/ecwplat/Module/src/MenuItemForm.vue?vue&type=style&index=0&id=3ebd0a76&prod&scoped=true&lang=scss
|
|
4248
4248
|
|
|
4249
4249
|
;// CONCATENATED MODULE: ./packages/ecwplat/Module/src/MenuItemForm.vue
|
|
4250
4250
|
|
|
@@ -4257,11 +4257,11 @@ var MenuItemFormvue_type_style_index_0_id_76a1a43d_prod_scoped_true_lang_scss =
|
|
|
4257
4257
|
|
|
4258
4258
|
var MenuItemForm_component = (0,componentNormalizer/* default */.A)(
|
|
4259
4259
|
src_MenuItemFormvue_type_script_lang_js,
|
|
4260
|
-
|
|
4261
|
-
|
|
4260
|
+
MenuItemFormvue_type_template_id_3ebd0a76_scoped_true_render,
|
|
4261
|
+
MenuItemFormvue_type_template_id_3ebd0a76_scoped_true_staticRenderFns,
|
|
4262
4262
|
false,
|
|
4263
4263
|
null,
|
|
4264
|
-
"
|
|
4264
|
+
"3ebd0a76",
|
|
4265
4265
|
null
|
|
4266
4266
|
|
|
4267
4267
|
)
|
|
@@ -8756,7 +8756,7 @@ src.install = function (Vue) {
|
|
|
8756
8756
|
|
|
8757
8757
|
/***/ }),
|
|
8758
8758
|
|
|
8759
|
-
/***/
|
|
8759
|
+
/***/ 4609:
|
|
8760
8760
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
8761
8761
|
|
|
8762
8762
|
"use strict";
|
|
@@ -8772,6 +8772,7 @@ __webpack_require__.d(__webpack_exports__, {
|
|
|
8772
8772
|
ShortcutProcessing: function() { return /* binding */ Wflowform_ShortcutProcessing; },
|
|
8773
8773
|
SubmitDialog: function() { return /* binding */ Wflowform_SubmitDialog; },
|
|
8774
8774
|
SubmitHandle: function() { return /* binding */ Wflowform_SubmitHandle; },
|
|
8775
|
+
VoiceInputDialog: function() { return /* binding */ Wflowform_VoiceInputDialog; },
|
|
8775
8776
|
WfNodelogList: function() { return /* binding */ Wflowform_WfNodelogList; },
|
|
8776
8777
|
WriteToReadIdea: function() { return /* binding */ Wflowform_WriteToReadIdea; }
|
|
8777
8778
|
});
|
|
@@ -12715,8 +12716,8 @@ var SelectOuterDeputy_component = (0,componentNormalizer/* default */.A)(
|
|
|
12715
12716
|
)
|
|
12716
12717
|
|
|
12717
12718
|
/* harmony default export */ var SelectOuterDeputy = (SelectOuterDeputy_component.exports);
|
|
12718
|
-
;// CONCATENATED MODULE: ./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./packages/ecmapp/Wflowform/src/SubmitHandle.vue?vue&type=template&id=
|
|
12719
|
-
var
|
|
12719
|
+
;// CONCATENATED MODULE: ./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./packages/ecmapp/Wflowform/src/SubmitHandle.vue?vue&type=template&id=6bdfbd40&scoped=true
|
|
12720
|
+
var SubmitHandlevue_type_template_id_6bdfbd40_scoped_true_render = function render() {
|
|
12720
12721
|
var _vm = this,
|
|
12721
12722
|
_c = _vm._self._c;
|
|
12722
12723
|
return _vm.initiated ? _c('div', {
|
|
@@ -13501,7 +13502,7 @@ var SubmitHandlevue_type_template_id_44733f4f_scoped_true_render = function rend
|
|
|
13501
13502
|
}
|
|
13502
13503
|
})], 2) : _vm._e();
|
|
13503
13504
|
};
|
|
13504
|
-
var
|
|
13505
|
+
var SubmitHandlevue_type_template_id_6bdfbd40_scoped_true_staticRenderFns = [];
|
|
13505
13506
|
|
|
13506
13507
|
;// CONCATENATED MODULE: ./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./packages/ecmapp/Wflowform/src/WfTaskNode.vue?vue&type=template&id=d1ae2f20&scoped=true
|
|
13507
13508
|
var WfTaskNodevue_type_template_id_d1ae2f20_scoped_true_render = function render() {
|
|
@@ -14830,12 +14831,12 @@ var WfTaskNode_component = (0,componentNormalizer/* default */.A)(
|
|
|
14830
14831
|
)
|
|
14831
14832
|
|
|
14832
14833
|
/* harmony default export */ var WfTaskNode = (WfTaskNode_component.exports);
|
|
14833
|
-
;// CONCATENATED MODULE: ./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./packages/ecmapp/Wflowform/src/VoiceInputDialog.vue?vue&type=template&id=
|
|
14834
|
-
var
|
|
14834
|
+
;// CONCATENATED MODULE: ./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./packages/ecmapp/Wflowform/src/VoiceInputDialog.vue?vue&type=template&id=cf18a87c&scoped=true
|
|
14835
|
+
var VoiceInputDialogvue_type_template_id_cf18a87c_scoped_true_render = function render() {
|
|
14835
14836
|
var _vm = this,
|
|
14836
14837
|
_c = _vm._self._c;
|
|
14837
14838
|
return _c('van-popup', {
|
|
14838
|
-
|
|
14839
|
+
class: ['voice-input-popup', 'skin-' + _vm.currentSkin],
|
|
14839
14840
|
attrs: {
|
|
14840
14841
|
"round": "",
|
|
14841
14842
|
"position": "bottom",
|
|
@@ -14868,6 +14869,17 @@ var VoiceInputDialogvue_type_template_id_28732777_scoped_true_render = function
|
|
|
14868
14869
|
})], 1), _c('div', {
|
|
14869
14870
|
staticClass: "voice-popup-body"
|
|
14870
14871
|
}, [_c('div', {
|
|
14872
|
+
staticClass: "voice-mic-wrap",
|
|
14873
|
+
class: {
|
|
14874
|
+
recording: _vm.status === 'recording'
|
|
14875
|
+
}
|
|
14876
|
+
}, [_c('span', {
|
|
14877
|
+
staticClass: "tech-ripple tech-ripple-1"
|
|
14878
|
+
}), _c('span', {
|
|
14879
|
+
staticClass: "tech-ripple tech-ripple-2"
|
|
14880
|
+
}), _c('span', {
|
|
14881
|
+
staticClass: "tech-ripple tech-ripple-3"
|
|
14882
|
+
}), _c('div', {
|
|
14871
14883
|
staticClass: "voice-mic-btn",
|
|
14872
14884
|
class: {
|
|
14873
14885
|
recording: _vm.status === 'recording'
|
|
@@ -14895,7 +14907,7 @@ var VoiceInputDialogvue_type_template_id_28732777_scoped_true_render = function
|
|
|
14895
14907
|
attrs: {
|
|
14896
14908
|
"d": "M768 480c0 141.4-114.6 256-256 256S256 621.4 256 480h-64c0 163.9 123.3 299 288 318.4V896H352v64h320v-64H544v-97.6C708.7 779 832 643.9 832 480h-64z"
|
|
14897
14909
|
}
|
|
14898
|
-
})])], 1), _c('div', {
|
|
14910
|
+
})])], 1)]), _c('div', {
|
|
14899
14911
|
staticClass: "voice-status-text",
|
|
14900
14912
|
class: {
|
|
14901
14913
|
'is-error': _vm.status === 'error'
|
|
@@ -14958,27 +14970,46 @@ var VoiceInputDialogvue_type_template_id_28732777_scoped_true_render = function
|
|
|
14958
14970
|
}
|
|
14959
14971
|
}, [_vm._v(_vm._s(_vm.$tx('ecmapp.wflowform.voiceFillOpinion', '填入意见')))])], 1)]);
|
|
14960
14972
|
};
|
|
14961
|
-
var
|
|
14973
|
+
var VoiceInputDialogvue_type_template_id_cf18a87c_scoped_true_staticRenderFns = [];
|
|
14962
14974
|
|
|
14963
14975
|
;// CONCATENATED MODULE: ./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./packages/ecmapp/Wflowform/src/VoiceInputDialog.vue?vue&type=script&lang=js
|
|
14976
|
+
// 人声判定阈值:AnalyserNode频谱均值(getByteFrequencyData,取值范围0-255)超过该值视为有人声;
|
|
14977
|
+
// 值越小越灵敏(环境噪声易误触发),越大越迟钝(轻声说话可能漏检),10为安静室内环境的经验值
|
|
14978
|
+
var VOICE_AVG_THRESHOLD = 10;
|
|
14979
|
+
// 前导静音容忍时长(毫秒):录音开始后一直未检测到人声,超过该时长自动结束并丢弃录音,
|
|
14980
|
+
// 避免用户点了麦克风却没说话导致录音一直挂着;10秒足够用户反应和开口
|
|
14981
|
+
var LEADING_SILENCE_MS = 10000;
|
|
14982
|
+
// 尾部静音容忍时长(毫秒):已检测到人声后连续沉默超过该时长自动结束录音,
|
|
14983
|
+
// 审批意见多为短句,说完后无需等太久即可收尾;该值应大于句中自然停顿(约1-2秒)
|
|
14984
|
+
var TRAILING_SILENCE_MS = 3000;
|
|
14964
14985
|
/* harmony default export */ var VoiceInputDialogvue_type_script_lang_js = ({
|
|
14965
14986
|
name: 'VoiceInputDialog',
|
|
14966
14987
|
props: {
|
|
14967
14988
|
visible: {
|
|
14968
14989
|
type: Boolean,
|
|
14969
14990
|
default: false
|
|
14991
|
+
},
|
|
14992
|
+
// 界面皮肤:basic-基本版 tech-科技版,仅影响视觉样式,识别功能完全一致
|
|
14993
|
+
skin: {
|
|
14994
|
+
type: String,
|
|
14995
|
+
default: 'basic',
|
|
14996
|
+
validator: function validator(val) {
|
|
14997
|
+
return ['basic', 'tech'].indexOf(val) > -1;
|
|
14998
|
+
}
|
|
14970
14999
|
}
|
|
14971
15000
|
},
|
|
14972
15001
|
data: function data() {
|
|
14973
15002
|
return {
|
|
14974
15003
|
i18npkg: 'ecmapp',
|
|
14975
15004
|
moduleCode: 'wflowform',
|
|
15005
|
+
currentSkin: this.skin,
|
|
15006
|
+
// 当前皮肤(basic/tech),初始取自skin属性,头部按钮可切换
|
|
14976
15007
|
status: 'idle',
|
|
14977
15008
|
// idle:待录音 recording:录音中 processing:识别中(仅后端模式) done:识别完成 error:出错
|
|
14978
15009
|
errorText: '',
|
|
14979
15010
|
resultText: '',
|
|
14980
15011
|
finalText: '',
|
|
14981
|
-
//
|
|
15012
|
+
// 已确认的识别文本(浏览器模式的final结果、流式模式已分段终稿)
|
|
14982
15013
|
seconds: 0,
|
|
14983
15014
|
timer: null,
|
|
14984
15015
|
recognition: null,
|
|
@@ -14988,6 +15019,24 @@ var VoiceInputDialogvue_type_template_id_28732777_scoped_true_staticRenderFns =
|
|
|
14988
15019
|
stream: null,
|
|
14989
15020
|
// 麦克风音频流
|
|
14990
15021
|
audioChunks: [],
|
|
15022
|
+
ws: null,
|
|
15023
|
+
// 流式识别WebSocket连接
|
|
15024
|
+
wsProcessor: null,
|
|
15025
|
+
// 流式识别PCM采集节点
|
|
15026
|
+
wsSource: null,
|
|
15027
|
+
// 流式识别音频源节点
|
|
15028
|
+
streamActive: false,
|
|
15029
|
+
// 流式识别链路是否正常(异常时降级为整段上传)
|
|
15030
|
+
streamWaitingDone: false,
|
|
15031
|
+
// 已发stop,等待服务端最终结果
|
|
15032
|
+
streamDoneTimer: null,
|
|
15033
|
+
// 等待最终结果的超时兜底定时器
|
|
15034
|
+
lastVoiceAt: 0,
|
|
15035
|
+
// 最近一次检测到人声的时间戳,用于静音自动结束
|
|
15036
|
+
hasVoice: false,
|
|
15037
|
+
// 本次录音是否检测到过人声
|
|
15038
|
+
discardRecording: false,
|
|
15039
|
+
// 全程静音自动结束时丢弃录音,不上传识别
|
|
14991
15040
|
audioContext: null,
|
|
14992
15041
|
// 波形绘制音频上下文
|
|
14993
15042
|
analyser: null,
|
|
@@ -15008,10 +15057,18 @@ var VoiceInputDialogvue_type_template_id_28732777_scoped_true_staticRenderFns =
|
|
|
15008
15057
|
}
|
|
15009
15058
|
},
|
|
15010
15059
|
// window.voiceToWord为非空字符串且不为browser时,视为后端转写接口URL
|
|
15060
|
+
// 后端语音识别服务部署在eccloud-clientms,网关已将/voice/**路由过去,
|
|
15061
|
+
// 故该参数配置为'/voice/recognize/toText'(请求基地址由$http的baseURL统一拼接)
|
|
15011
15062
|
backendUrl: function backendUrl() {
|
|
15012
15063
|
var voiceToWord = window.voiceToWord;
|
|
15013
15064
|
return voiceToWord && typeof voiceToWord === 'string' && voiceToWord !== 'browser' ? voiceToWord : '';
|
|
15014
15065
|
},
|
|
15066
|
+
// window.voiceToWordStream为非空字符串时启用流式识别(WebSocket边说边出字),
|
|
15067
|
+
// 值为网关内路径如'/voice/recognize/stream',未配置则维持录完整段上传识别
|
|
15068
|
+
streamPath: function streamPath() {
|
|
15069
|
+
var streamPath = window.voiceToWordStream;
|
|
15070
|
+
return this.backendUrl && streamPath && typeof streamPath === 'string' ? streamPath : '';
|
|
15071
|
+
},
|
|
15015
15072
|
statusText: function statusText() {
|
|
15016
15073
|
switch (this.status) {
|
|
15017
15074
|
case 'recording':
|
|
@@ -15038,6 +15095,9 @@ var VoiceInputDialogvue_type_template_id_28732777_scoped_true_staticRenderFns =
|
|
|
15038
15095
|
this.resetState();
|
|
15039
15096
|
this.preRequestPermission();
|
|
15040
15097
|
}
|
|
15098
|
+
},
|
|
15099
|
+
skin: function skin(val) {
|
|
15100
|
+
this.currentSkin = val;
|
|
15041
15101
|
}
|
|
15042
15102
|
},
|
|
15043
15103
|
beforeDestroy: function beforeDestroy() {
|
|
@@ -15051,6 +15111,8 @@ var VoiceInputDialogvue_type_template_id_28732777_scoped_true_staticRenderFns =
|
|
|
15051
15111
|
this.finalText = '';
|
|
15052
15112
|
this.seconds = 0;
|
|
15053
15113
|
this.audioChunks = [];
|
|
15114
|
+
this.hasVoice = false;
|
|
15115
|
+
this.discardRecording = false;
|
|
15054
15116
|
},
|
|
15055
15117
|
// 打开弹窗即预请求麦克风权限,被拒绝时显示引导文案
|
|
15056
15118
|
preRequestPermission: function preRequestPermission() {
|
|
@@ -15087,12 +15149,23 @@ var VoiceInputDialogvue_type_template_id_28732777_scoped_true_staticRenderFns =
|
|
|
15087
15149
|
startRecord: function startRecord() {
|
|
15088
15150
|
this.resultText = '';
|
|
15089
15151
|
this.finalText = '';
|
|
15152
|
+
// 在用户点击手势上下文内创建AudioContext,规避移动端自动播放策略导致的suspended(波形无数据)
|
|
15153
|
+
this.prepareAudioContext();
|
|
15090
15154
|
if (this.backendUrl) {
|
|
15091
15155
|
this.startBackendRecord();
|
|
15092
15156
|
} else {
|
|
15093
15157
|
this.startBrowserRecognition();
|
|
15094
15158
|
}
|
|
15095
15159
|
},
|
|
15160
|
+
prepareAudioContext: function prepareAudioContext() {
|
|
15161
|
+
var AudioContextClass = window.AudioContext || window.webkitAudioContext;
|
|
15162
|
+
if (!AudioContextClass) return;
|
|
15163
|
+
if (this.audioContext && this.audioContext.state !== 'closed') return;
|
|
15164
|
+
this.audioContext = new AudioContextClass();
|
|
15165
|
+
if (this.audioContext.state === 'suspended') {
|
|
15166
|
+
this.audioContext.resume().catch(function () {});
|
|
15167
|
+
}
|
|
15168
|
+
},
|
|
15096
15169
|
stopRecord: function stopRecord() {
|
|
15097
15170
|
this.stopTimer();
|
|
15098
15171
|
if (this.recognition) {
|
|
@@ -15107,6 +15180,7 @@ var VoiceInputDialogvue_type_template_id_28732777_scoped_true_staticRenderFns =
|
|
|
15107
15180
|
this.seconds = 0;
|
|
15108
15181
|
this.timer = setInterval(function () {
|
|
15109
15182
|
_this2.seconds++;
|
|
15183
|
+
_this2.checkSilenceTimeout();
|
|
15110
15184
|
}, 1000);
|
|
15111
15185
|
},
|
|
15112
15186
|
stopTimer: function stopTimer() {
|
|
@@ -15115,6 +15189,18 @@ var VoiceInputDialogvue_type_template_id_28732777_scoped_true_staticRenderFns =
|
|
|
15115
15189
|
this.timer = null;
|
|
15116
15190
|
}
|
|
15117
15191
|
},
|
|
15192
|
+
// 连续静音超时自动结束录音;全程无人声则丢弃录音并提示,无analyser数据时降级为不启用
|
|
15193
|
+
checkSilenceTimeout: function checkSilenceTimeout() {
|
|
15194
|
+
if (this.status !== 'recording' || !this.analyser) return;
|
|
15195
|
+
var silenceLimit = this.hasVoice ? TRAILING_SILENCE_MS : LEADING_SILENCE_MS;
|
|
15196
|
+
if (Date.now() - this.lastVoiceAt < silenceLimit) return;
|
|
15197
|
+
if (!this.hasVoice) {
|
|
15198
|
+
this.discardRecording = true;
|
|
15199
|
+
this.status = 'error';
|
|
15200
|
+
this.errorText = this.$tx('ecmapp.wflowform.voiceNoSpeech', '未检测到语音,请重试。');
|
|
15201
|
+
}
|
|
15202
|
+
this.stopRecord();
|
|
15203
|
+
},
|
|
15118
15204
|
// 浏览器模式:Web Speech API直转文字,中间结果实时上屏
|
|
15119
15205
|
startBrowserRecognition: function startBrowserRecognition() {
|
|
15120
15206
|
var _this3 = this;
|
|
@@ -15192,6 +15278,9 @@ var VoiceInputDialogvue_type_template_id_28732777_scoped_true_staticRenderFns =
|
|
|
15192
15278
|
}).then(function (stream) {
|
|
15193
15279
|
_this4.stream = stream;
|
|
15194
15280
|
_this4.audioChunks = [];
|
|
15281
|
+
// 立即置为录音中:MediaRecorder.onstart是异步事件,而WebSocket经本地代理握手可能先于它完成,
|
|
15282
|
+
// 若等onstart才置status,onopen会因status仍为idle而误关连接(code=1000)
|
|
15283
|
+
_this4.status = 'recording';
|
|
15195
15284
|
var mimeType = window.MediaRecorder && MediaRecorder.isTypeSupported('audio/webm;codecs=opus') ? 'audio/webm;codecs=opus' : '';
|
|
15196
15285
|
var mediaRecorder = mimeType ? new MediaRecorder(stream, {
|
|
15197
15286
|
mimeType: mimeType
|
|
@@ -15202,22 +15291,42 @@ var VoiceInputDialogvue_type_template_id_28732777_scoped_true_staticRenderFns =
|
|
|
15202
15291
|
}
|
|
15203
15292
|
};
|
|
15204
15293
|
mediaRecorder.onstart = function () {
|
|
15205
|
-
_this4.status = 'recording';
|
|
15206
15294
|
_this4.startTimer();
|
|
15207
|
-
|
|
15295
|
+
// canvas由v-show控制,需等DOM更新可见后再取尺寸绘制波形,否则画布为0×0
|
|
15296
|
+
_this4.$nextTick(function () {
|
|
15297
|
+
// 回调执行前录音可能已停止,避免创建无人清理的AudioContext
|
|
15298
|
+
if (_this4.status === 'recording') {
|
|
15299
|
+
_this4.startWaveform(stream);
|
|
15300
|
+
}
|
|
15301
|
+
});
|
|
15208
15302
|
};
|
|
15209
15303
|
mediaRecorder.onstop = function () {
|
|
15210
15304
|
_this4.stopTimer();
|
|
15305
|
+
// 先断开PCM推送再关波形(stopWaveform会关闭AudioContext)
|
|
15306
|
+
_this4.stopPcmCapture();
|
|
15211
15307
|
_this4.stopWaveform();
|
|
15212
15308
|
_this4.releaseStream();
|
|
15213
15309
|
_this4.mediaRecorder = null;
|
|
15214
|
-
|
|
15215
|
-
|
|
15310
|
+
if (_this4.discardRecording) {
|
|
15311
|
+
// 全程静音自动结束:丢弃录音,提示已在checkSilenceTimeout中给出
|
|
15312
|
+
_this4.discardRecording = false;
|
|
15313
|
+
_this4.audioChunks = [];
|
|
15314
|
+
_this4.closeStream();
|
|
15315
|
+
} else if (_this4.visible && _this4.streamActive && _this4.ws && _this4.ws.readyState === WebSocket.OPEN) {
|
|
15316
|
+
// 流式链路全程正常:通知服务端冲刷解码器收尾,不再整段上传
|
|
15317
|
+
_this4.finishStream();
|
|
15318
|
+
} else if (_this4.visible && _this4.audioChunks.length > 0) {
|
|
15319
|
+
// 弹窗已关闭(取消录音)则不再上传;流式失败时降级为整段上传
|
|
15320
|
+
_this4.closeStream();
|
|
15216
15321
|
_this4.uploadVoice();
|
|
15217
15322
|
}
|
|
15218
15323
|
};
|
|
15219
15324
|
_this4.mediaRecorder = mediaRecorder;
|
|
15220
15325
|
mediaRecorder.start();
|
|
15326
|
+
// 流式识别:录音同时经 WebSocket 推送PCM,边说边出字;失败自动降级为整段上传
|
|
15327
|
+
if (_this4.streamPath) {
|
|
15328
|
+
_this4.startStream(stream);
|
|
15329
|
+
}
|
|
15221
15330
|
}).catch(function () {
|
|
15222
15331
|
_this4.showPermissionError();
|
|
15223
15332
|
});
|
|
@@ -15255,6 +15364,179 @@ var VoiceInputDialogvue_type_template_id_28732777_scoped_true_staticRenderFns =
|
|
|
15255
15364
|
_this5.errorText = _this5.$tx('ecmapp.wflowform.voiceRecognizeFail', '语音识别失败,请重试。');
|
|
15256
15365
|
});
|
|
15257
15366
|
},
|
|
15367
|
+
// 由axios的baseURL(/apigw)拼出流式识别WebSocket地址
|
|
15368
|
+
buildStreamWsUrl: function buildStreamWsUrl() {
|
|
15369
|
+
var base = this.$http && this.$http.defaults && this.$http.defaults.baseURL || '';
|
|
15370
|
+
if (!/^https?:/i.test(base)) {
|
|
15371
|
+
base = location.origin + (base && base.charAt(0) !== '/' ? '/' : '') + base;
|
|
15372
|
+
}
|
|
15373
|
+
return base.replace(/^https:/, 'wss:').replace(/^http:/, 'ws:') + this.streamPath;
|
|
15374
|
+
},
|
|
15375
|
+
// 建立流式识别WebSocket,成功后边录边传PCM;任何失败都静默回落到整段上传
|
|
15376
|
+
startStream: function startStream(stream) {
|
|
15377
|
+
var _this6 = this;
|
|
15378
|
+
var wsUrl = this.buildStreamWsUrl();
|
|
15379
|
+
console.log('[VoiceStream] 连接:', wsUrl);
|
|
15380
|
+
var ws;
|
|
15381
|
+
try {
|
|
15382
|
+
ws = new WebSocket(wsUrl);
|
|
15383
|
+
} catch (e) {
|
|
15384
|
+
console.warn('[VoiceStream] 创建WebSocket失败,降级为整段上传:', e);
|
|
15385
|
+
return;
|
|
15386
|
+
}
|
|
15387
|
+
ws.binaryType = 'arraybuffer';
|
|
15388
|
+
this.ws = ws;
|
|
15389
|
+
ws.onopen = function () {
|
|
15390
|
+
if (_this6.ws !== ws) return;
|
|
15391
|
+
if (_this6.status !== 'recording') {
|
|
15392
|
+
try {
|
|
15393
|
+
ws.close();
|
|
15394
|
+
} catch (e) {
|
|
15395
|
+
// 已关闭时close抛错可忽略
|
|
15396
|
+
}
|
|
15397
|
+
return;
|
|
15398
|
+
}
|
|
15399
|
+
console.log('[VoiceStream] 握手成功,开始推送PCM');
|
|
15400
|
+
_this6.streamActive = true;
|
|
15401
|
+
_this6.startPcmCapture(stream);
|
|
15402
|
+
};
|
|
15403
|
+
ws.onmessage = function (event) {
|
|
15404
|
+
return _this6.onStreamMessage(event);
|
|
15405
|
+
};
|
|
15406
|
+
ws.onerror = function (event) {
|
|
15407
|
+
console.warn('[VoiceStream] 连接错误,将降级为整段上传', event);
|
|
15408
|
+
};
|
|
15409
|
+
ws.onclose = function (event) {
|
|
15410
|
+
console.log('[VoiceStream] 连接关闭 code=' + event.code + (event.reason ? ' reason=' + event.reason : ''));
|
|
15411
|
+
if (_this6.ws !== ws) return;
|
|
15412
|
+
_this6.ws = null;
|
|
15413
|
+
if (_this6.streamWaitingDone) {
|
|
15414
|
+
// 等待最终结果期间服务端关闭,视为收尾完成
|
|
15415
|
+
_this6.onStreamDone();
|
|
15416
|
+
} else if (_this6.status === 'recording') {
|
|
15417
|
+
// 录音途中异常断开,标记降级,onstop时走整段上传
|
|
15418
|
+
_this6.streamActive = false;
|
|
15419
|
+
_this6.stopPcmCapture();
|
|
15420
|
+
}
|
|
15421
|
+
};
|
|
15422
|
+
},
|
|
15423
|
+
onStreamMessage: function onStreamMessage(event) {
|
|
15424
|
+
var msg;
|
|
15425
|
+
try {
|
|
15426
|
+
msg = JSON.parse(event.data);
|
|
15427
|
+
} catch (e) {
|
|
15428
|
+
return;
|
|
15429
|
+
}
|
|
15430
|
+
if (msg.error) {
|
|
15431
|
+
// 服务端明确报错(如流式未启用),降级到整段上传
|
|
15432
|
+
console.warn('[VoiceStream] 服务端报错,降级为整段上传:', msg.error);
|
|
15433
|
+
this.streamActive = false;
|
|
15434
|
+
this.stopPcmCapture();
|
|
15435
|
+
return;
|
|
15436
|
+
}
|
|
15437
|
+
if (msg.isFinal) {
|
|
15438
|
+
// 一段话说完(端点检测分段),固化进finalText
|
|
15439
|
+
if (msg.text) {
|
|
15440
|
+
this.finalText += msg.text;
|
|
15441
|
+
}
|
|
15442
|
+
this.resultText = this.finalText;
|
|
15443
|
+
} else {
|
|
15444
|
+
this.resultText = this.finalText + (msg.text || '');
|
|
15445
|
+
}
|
|
15446
|
+
if (msg.done) {
|
|
15447
|
+
this.onStreamDone();
|
|
15448
|
+
}
|
|
15449
|
+
},
|
|
15450
|
+
// 用ScriptProcessorNode抓PCM实时发送(AudioWorklet在旧WebView兼容性差)
|
|
15451
|
+
startPcmCapture: function startPcmCapture(stream) {
|
|
15452
|
+
var _this7 = this;
|
|
15453
|
+
var audioContext = this.audioContext;
|
|
15454
|
+
if (!audioContext || audioContext.state === 'closed') return;
|
|
15455
|
+
var source = audioContext.createMediaStreamSource(stream);
|
|
15456
|
+
var processor = audioContext.createScriptProcessor(4096, 1, 1);
|
|
15457
|
+
processor.onaudioprocess = function (event) {
|
|
15458
|
+
if (!_this7.streamActive || !_this7.ws || _this7.ws.readyState !== WebSocket.OPEN) return;
|
|
15459
|
+
var input = event.inputBuffer.getChannelData(0);
|
|
15460
|
+
_this7.ws.send(_this7.downsampleToInt16(input, event.inputBuffer.sampleRate));
|
|
15461
|
+
};
|
|
15462
|
+
source.connect(processor);
|
|
15463
|
+
// 必须接入输出图才会触发onaudioprocess,无output通道不会回放
|
|
15464
|
+
processor.connect(audioContext.destination);
|
|
15465
|
+
this.wsSource = source;
|
|
15466
|
+
this.wsProcessor = processor;
|
|
15467
|
+
},
|
|
15468
|
+
// 线性插值降采样到16kHz并转Int16小端,兼容44.1k/48k采集
|
|
15469
|
+
downsampleToInt16: function downsampleToInt16(input, sourceRate) {
|
|
15470
|
+
var ratio = sourceRate / 16000;
|
|
15471
|
+
var length = Math.floor(input.length / ratio);
|
|
15472
|
+
var result = new Int16Array(length);
|
|
15473
|
+
for (var i = 0; i < length; i++) {
|
|
15474
|
+
var pos = i * ratio;
|
|
15475
|
+
var left = Math.floor(pos);
|
|
15476
|
+
var right = Math.min(left + 1, input.length - 1);
|
|
15477
|
+
var sample = input[left] + (input[right] - input[left]) * (pos - left);
|
|
15478
|
+
var clamped = Math.max(-1, Math.min(1, sample));
|
|
15479
|
+
result[i] = clamped < 0 ? clamped * 0x8000 : clamped * 0x7fff;
|
|
15480
|
+
}
|
|
15481
|
+
return result.buffer;
|
|
15482
|
+
},
|
|
15483
|
+
stopPcmCapture: function stopPcmCapture() {
|
|
15484
|
+
if (this.wsProcessor) {
|
|
15485
|
+
this.wsProcessor.disconnect();
|
|
15486
|
+
this.wsProcessor.onaudioprocess = null;
|
|
15487
|
+
this.wsProcessor = null;
|
|
15488
|
+
}
|
|
15489
|
+
if (this.wsSource) {
|
|
15490
|
+
this.wsSource.disconnect();
|
|
15491
|
+
this.wsSource = null;
|
|
15492
|
+
}
|
|
15493
|
+
},
|
|
15494
|
+
// 录音结束:通知服务端冲刷解码器,等最终结果(超时兜底直接用现有文字)
|
|
15495
|
+
finishStream: function finishStream() {
|
|
15496
|
+
var _this8 = this;
|
|
15497
|
+
this.status = 'processing';
|
|
15498
|
+
this.streamWaitingDone = true;
|
|
15499
|
+
this.streamDoneTimer = setTimeout(function () {
|
|
15500
|
+
return _this8.onStreamDone();
|
|
15501
|
+
}, 4000);
|
|
15502
|
+
try {
|
|
15503
|
+
this.ws.send('stop');
|
|
15504
|
+
} catch (e) {
|
|
15505
|
+
this.onStreamDone();
|
|
15506
|
+
}
|
|
15507
|
+
},
|
|
15508
|
+
// 流式收尾(幂等):resultText已含最新partial,超时兜底也不丢字
|
|
15509
|
+
onStreamDone: function onStreamDone() {
|
|
15510
|
+
if (!this.streamWaitingDone) return;
|
|
15511
|
+
this.streamWaitingDone = false;
|
|
15512
|
+
this.closeStream();
|
|
15513
|
+
this.audioChunks = [];
|
|
15514
|
+
if (this.resultText.trim() !== '') {
|
|
15515
|
+
this.status = 'done';
|
|
15516
|
+
} else {
|
|
15517
|
+
this.status = 'error';
|
|
15518
|
+
this.errorText = this.$tx('ecmapp.wflowform.voiceNoSpeech', '未检测到语音,请重试。');
|
|
15519
|
+
}
|
|
15520
|
+
},
|
|
15521
|
+
closeStream: function closeStream() {
|
|
15522
|
+
this.stopPcmCapture();
|
|
15523
|
+
if (this.streamDoneTimer) {
|
|
15524
|
+
clearTimeout(this.streamDoneTimer);
|
|
15525
|
+
this.streamDoneTimer = null;
|
|
15526
|
+
}
|
|
15527
|
+
if (this.ws) {
|
|
15528
|
+
var ws = this.ws;
|
|
15529
|
+
this.ws = null;
|
|
15530
|
+
ws.onclose = null;
|
|
15531
|
+
try {
|
|
15532
|
+
ws.close();
|
|
15533
|
+
} catch (e) {
|
|
15534
|
+
// 已关闭时close抛错可忽略
|
|
15535
|
+
}
|
|
15536
|
+
}
|
|
15537
|
+
this.streamActive = false;
|
|
15538
|
+
this.streamWaitingDone = false;
|
|
15539
|
+
},
|
|
15258
15540
|
releaseStream: function releaseStream() {
|
|
15259
15541
|
if (this.stream) {
|
|
15260
15542
|
this.stream.getTracks().forEach(function (track) {
|
|
@@ -15265,37 +15547,41 @@ var VoiceInputDialogvue_type_template_id_28732777_scoped_true_staticRenderFns =
|
|
|
15265
15547
|
},
|
|
15266
15548
|
// 浏览器模式下SpeechRecognition不暴露音频流,单独取一路流用于波形绘制
|
|
15267
15549
|
startVisualStream: function startVisualStream() {
|
|
15268
|
-
var
|
|
15550
|
+
var _this9 = this;
|
|
15269
15551
|
if (!(navigator.mediaDevices && navigator.mediaDevices.getUserMedia)) return;
|
|
15270
15552
|
navigator.mediaDevices.getUserMedia({
|
|
15271
15553
|
audio: true
|
|
15272
15554
|
}).then(function (stream) {
|
|
15273
15555
|
// 取流回来时录音可能已结束
|
|
15274
|
-
if (
|
|
15556
|
+
if (_this9.status !== 'recording') {
|
|
15275
15557
|
stream.getTracks().forEach(function (track) {
|
|
15276
15558
|
return track.stop();
|
|
15277
15559
|
});
|
|
15278
15560
|
return;
|
|
15279
15561
|
}
|
|
15280
|
-
|
|
15281
|
-
|
|
15562
|
+
_this9.visualStream = stream;
|
|
15563
|
+
_this9.startWaveform(stream);
|
|
15282
15564
|
}).catch(function () {});
|
|
15283
15565
|
},
|
|
15284
|
-
// 用AnalyserNode
|
|
15566
|
+
// 用AnalyserNode实时绘制录音波形柱状图,复用startRecord手势内创建的AudioContext
|
|
15285
15567
|
startWaveform: function startWaveform(stream) {
|
|
15286
|
-
var
|
|
15287
|
-
var AudioContextClass = window.AudioContext || window.webkitAudioContext;
|
|
15568
|
+
var _this10 = this;
|
|
15288
15569
|
var canvas = this.$refs.waveCanvas;
|
|
15289
|
-
|
|
15290
|
-
|
|
15570
|
+
var audioContext = this.audioContext;
|
|
15571
|
+
if (!audioContext || audioContext.state === 'closed' || !canvas) return;
|
|
15572
|
+
if (audioContext.state === 'suspended') {
|
|
15573
|
+
audioContext.resume().catch(function () {});
|
|
15574
|
+
}
|
|
15291
15575
|
var analyser = audioContext.createAnalyser();
|
|
15292
15576
|
analyser.fftSize = 128;
|
|
15293
15577
|
audioContext.createMediaStreamSource(stream).connect(analyser);
|
|
15294
|
-
this.audioContext = audioContext;
|
|
15295
15578
|
this.analyser = analyser;
|
|
15579
|
+
this.lastVoiceAt = Date.now();
|
|
15580
|
+
this.hasVoice = false;
|
|
15296
15581
|
var dpr = window.devicePixelRatio || 1;
|
|
15297
|
-
|
|
15298
|
-
canvas.
|
|
15582
|
+
// canvas尚未完成布局时取不到尺寸,按样式表尺寸200×32兜底,避免0×0画布
|
|
15583
|
+
canvas.width = (canvas.clientWidth || 200) * dpr;
|
|
15584
|
+
canvas.height = (canvas.clientHeight || 32) * dpr;
|
|
15299
15585
|
var ctx = canvas.getContext('2d');
|
|
15300
15586
|
var dataArray = new Uint8Array(analyser.frequencyBinCount);
|
|
15301
15587
|
var barCount = 32;
|
|
@@ -15303,15 +15589,32 @@ var VoiceInputDialogvue_type_template_id_28732777_scoped_true_staticRenderFns =
|
|
|
15303
15589
|
var barWidth = (canvas.width - gap * (barCount - 1)) / barCount;
|
|
15304
15590
|
var centerY = canvas.height / 2;
|
|
15305
15591
|
var draw = function draw() {
|
|
15306
|
-
if (!
|
|
15307
|
-
|
|
15308
|
-
|
|
15592
|
+
if (!_this10.analyser) return;
|
|
15593
|
+
_this10.waveRafId = requestAnimationFrame(draw);
|
|
15594
|
+
_this10.analyser.getByteFrequencyData(dataArray);
|
|
15595
|
+
// 顺带做人声检测,供静音自动结束判定
|
|
15596
|
+
var sum = 0;
|
|
15597
|
+
for (var i = 0; i < dataArray.length; i++) {
|
|
15598
|
+
sum += dataArray[i];
|
|
15599
|
+
}
|
|
15600
|
+
if (sum / dataArray.length > VOICE_AVG_THRESHOLD) {
|
|
15601
|
+
_this10.lastVoiceAt = Date.now();
|
|
15602
|
+
_this10.hasVoice = true;
|
|
15603
|
+
}
|
|
15309
15604
|
ctx.clearRect(0, 0, canvas.width, canvas.height);
|
|
15310
|
-
|
|
15311
|
-
|
|
15312
|
-
|
|
15605
|
+
// 波形颜色随皮肤切换:科技版霓虹青带辉光,基本版保持品牌蓝
|
|
15606
|
+
if (_this10.currentSkin === 'tech') {
|
|
15607
|
+
ctx.fillStyle = '#00e5ff';
|
|
15608
|
+
ctx.shadowColor = 'rgba(0, 229, 255, 0.8)';
|
|
15609
|
+
ctx.shadowBlur = 8 * dpr;
|
|
15610
|
+
} else {
|
|
15611
|
+
ctx.fillStyle = '#1989fa';
|
|
15612
|
+
ctx.shadowBlur = 0;
|
|
15613
|
+
}
|
|
15614
|
+
for (var _i = 0; _i < barCount; _i++) {
|
|
15615
|
+
var value = dataArray[Math.floor(_i * dataArray.length / barCount)] / 255;
|
|
15313
15616
|
var barHeight = Math.max(2 * dpr, value * canvas.height);
|
|
15314
|
-
var x =
|
|
15617
|
+
var x = _i * (barWidth + gap);
|
|
15315
15618
|
ctx.fillRect(x, centerY - barHeight / 2, barWidth, barHeight);
|
|
15316
15619
|
}
|
|
15317
15620
|
};
|
|
@@ -15337,6 +15640,7 @@ var VoiceInputDialogvue_type_template_id_28732777_scoped_true_staticRenderFns =
|
|
|
15337
15640
|
// 关闭/取消时释放麦克风等资源
|
|
15338
15641
|
releaseResources: function releaseResources() {
|
|
15339
15642
|
this.stopTimer();
|
|
15643
|
+
this.closeStream();
|
|
15340
15644
|
this.stopWaveform();
|
|
15341
15645
|
if (this.recognition) {
|
|
15342
15646
|
this.recognition.abort();
|
|
@@ -15361,9 +15665,9 @@ var VoiceInputDialogvue_type_template_id_28732777_scoped_true_staticRenderFns =
|
|
|
15361
15665
|
});
|
|
15362
15666
|
;// CONCATENATED MODULE: ./packages/ecmapp/Wflowform/src/VoiceInputDialog.vue?vue&type=script&lang=js
|
|
15363
15667
|
/* harmony default export */ var src_VoiceInputDialogvue_type_script_lang_js = (VoiceInputDialogvue_type_script_lang_js);
|
|
15364
|
-
// EXTERNAL MODULE: ./node_modules/vue-style-loader/index.js??clonedRuleSet-22.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./packages/ecmapp/Wflowform/src/VoiceInputDialog.vue?vue&type=style&index=0&id=
|
|
15365
|
-
var
|
|
15366
|
-
;// CONCATENATED MODULE: ./packages/ecmapp/Wflowform/src/VoiceInputDialog.vue?vue&type=style&index=0&id=
|
|
15668
|
+
// EXTERNAL MODULE: ./node_modules/vue-style-loader/index.js??clonedRuleSet-22.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./packages/ecmapp/Wflowform/src/VoiceInputDialog.vue?vue&type=style&index=0&id=cf18a87c&prod&scoped=true&lang=scss
|
|
15669
|
+
var VoiceInputDialogvue_type_style_index_0_id_cf18a87c_prod_scoped_true_lang_scss = __webpack_require__(4949);
|
|
15670
|
+
;// CONCATENATED MODULE: ./packages/ecmapp/Wflowform/src/VoiceInputDialog.vue?vue&type=style&index=0&id=cf18a87c&prod&scoped=true&lang=scss
|
|
15367
15671
|
|
|
15368
15672
|
;// CONCATENATED MODULE: ./packages/ecmapp/Wflowform/src/VoiceInputDialog.vue
|
|
15369
15673
|
|
|
@@ -15376,11 +15680,11 @@ var VoiceInputDialogvue_type_style_index_0_id_28732777_prod_scoped_true_lang_scs
|
|
|
15376
15680
|
|
|
15377
15681
|
var VoiceInputDialog_component = (0,componentNormalizer/* default */.A)(
|
|
15378
15682
|
src_VoiceInputDialogvue_type_script_lang_js,
|
|
15379
|
-
|
|
15380
|
-
|
|
15683
|
+
VoiceInputDialogvue_type_template_id_cf18a87c_scoped_true_render,
|
|
15684
|
+
VoiceInputDialogvue_type_template_id_cf18a87c_scoped_true_staticRenderFns,
|
|
15381
15685
|
false,
|
|
15382
15686
|
null,
|
|
15383
|
-
"
|
|
15687
|
+
"cf18a87c",
|
|
15384
15688
|
null
|
|
15385
15689
|
|
|
15386
15690
|
)
|
|
@@ -15604,6 +15908,7 @@ var moment = __webpack_require__(5093);
|
|
|
15604
15908
|
},
|
|
15605
15909
|
methods: {
|
|
15606
15910
|
// 检测语音输入按钮可用性:未配置window.voiceToWord时需https/localhost安全上下文且浏览器支持Web Speech API,否则不显示按钮
|
|
15911
|
+
// 后端转写时window.voiceToWord配置为'/voice/recognize/toText',由网关路由到eccloud-clientms
|
|
15607
15912
|
initVoiceInputEnabled: function initVoiceInputEnabled() {
|
|
15608
15913
|
var voiceToWord = window.voiceToWord;
|
|
15609
15914
|
if (voiceToWord && typeof voiceToWord === 'string' && voiceToWord !== 'browser') {
|
|
@@ -16407,9 +16712,9 @@ var moment = __webpack_require__(5093);
|
|
|
16407
16712
|
});
|
|
16408
16713
|
;// CONCATENATED MODULE: ./packages/ecmapp/Wflowform/src/SubmitHandle.vue?vue&type=script&lang=js
|
|
16409
16714
|
/* harmony default export */ var src_SubmitHandlevue_type_script_lang_js = (SubmitHandlevue_type_script_lang_js);
|
|
16410
|
-
// EXTERNAL MODULE: ./node_modules/vue-style-loader/index.js??clonedRuleSet-22.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./packages/ecmapp/Wflowform/src/SubmitHandle.vue?vue&type=style&index=0&id=
|
|
16411
|
-
var
|
|
16412
|
-
;// CONCATENATED MODULE: ./packages/ecmapp/Wflowform/src/SubmitHandle.vue?vue&type=style&index=0&id=
|
|
16715
|
+
// EXTERNAL MODULE: ./node_modules/vue-style-loader/index.js??clonedRuleSet-22.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./packages/ecmapp/Wflowform/src/SubmitHandle.vue?vue&type=style&index=0&id=6bdfbd40&prod&scoped=true&lang=scss
|
|
16716
|
+
var SubmitHandlevue_type_style_index_0_id_6bdfbd40_prod_scoped_true_lang_scss = __webpack_require__(5294);
|
|
16717
|
+
;// CONCATENATED MODULE: ./packages/ecmapp/Wflowform/src/SubmitHandle.vue?vue&type=style&index=0&id=6bdfbd40&prod&scoped=true&lang=scss
|
|
16413
16718
|
|
|
16414
16719
|
;// CONCATENATED MODULE: ./packages/ecmapp/Wflowform/src/SubmitHandle.vue
|
|
16415
16720
|
|
|
@@ -16422,11 +16727,11 @@ var SubmitHandlevue_type_style_index_0_id_44733f4f_prod_scoped_true_lang_scss =
|
|
|
16422
16727
|
|
|
16423
16728
|
var SubmitHandle_component = (0,componentNormalizer/* default */.A)(
|
|
16424
16729
|
src_SubmitHandlevue_type_script_lang_js,
|
|
16425
|
-
|
|
16426
|
-
|
|
16730
|
+
SubmitHandlevue_type_template_id_6bdfbd40_scoped_true_render,
|
|
16731
|
+
SubmitHandlevue_type_template_id_6bdfbd40_scoped_true_staticRenderFns,
|
|
16427
16732
|
false,
|
|
16428
16733
|
null,
|
|
16429
|
-
"
|
|
16734
|
+
"6bdfbd40",
|
|
16430
16735
|
null
|
|
16431
16736
|
|
|
16432
16737
|
)
|
|
@@ -19081,6 +19386,7 @@ var ShortcutProcessing_component = (0,componentNormalizer/* default */.A)(
|
|
|
19081
19386
|
|
|
19082
19387
|
|
|
19083
19388
|
|
|
19389
|
+
|
|
19084
19390
|
// 为组件添加 install 方法,用于按需引入
|
|
19085
19391
|
Attachment.install = function (Vue) {
|
|
19086
19392
|
Vue.component(Attachment.name, Attachment);
|
|
@@ -19109,6 +19415,9 @@ WriteToReadIdea.install = function (Vue) {
|
|
|
19109
19415
|
ShortcutProcessing.install = function (Vue) {
|
|
19110
19416
|
Vue.component(ShortcutProcessing.name, ShortcutProcessing);
|
|
19111
19417
|
};
|
|
19418
|
+
VoiceInputDialog.install = function (Vue) {
|
|
19419
|
+
Vue.component(VoiceInputDialog.name, VoiceInputDialog);
|
|
19420
|
+
};
|
|
19112
19421
|
var Wflowform_Attachment = Attachment;
|
|
19113
19422
|
var Wflowform_BodyFile = BodyFile;
|
|
19114
19423
|
var Wflowform_HandleIdea = HandleIdea;
|
|
@@ -19118,6 +19427,7 @@ var Wflowform_SubmitDialog = SubmitDialog;
|
|
|
19118
19427
|
var Wflowform_WfNodelogList = WfNodelogList;
|
|
19119
19428
|
var Wflowform_WriteToReadIdea = WriteToReadIdea;
|
|
19120
19429
|
var Wflowform_ShortcutProcessing = ShortcutProcessing;
|
|
19430
|
+
var Wflowform_VoiceInputDialog = VoiceInputDialog;
|
|
19121
19431
|
|
|
19122
19432
|
/***/ }),
|
|
19123
19433
|
|
|
@@ -22230,7 +22540,7 @@ ___CSS_LOADER_EXPORT___.push([module.id, ".van-switch-field[data-v-61ed46da]{pos
|
|
|
22230
22540
|
|
|
22231
22541
|
/***/ }),
|
|
22232
22542
|
|
|
22233
|
-
/***/
|
|
22543
|
+
/***/ 5441:
|
|
22234
22544
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
22235
22545
|
|
|
22236
22546
|
"use strict";
|
|
@@ -22244,7 +22554,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
22244
22554
|
|
|
22245
22555
|
var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
|
|
22246
22556
|
// Module
|
|
22247
|
-
___CSS_LOADER_EXPORT___.push([module.id, ".van-textarea-field[data-v-
|
|
22557
|
+
___CSS_LOADER_EXPORT___.push([module.id, ".van-textarea-field[data-v-27eb631a]{position:relative}.van-textarea-field[data-v-27eb631a] .van-field__label{width:90%!important}.van-textarea-field[data-v-27eb631a]:after{position:absolute;-webkit-box-sizing:border-box;box-sizing:border-box;content:\" \";pointer-events:none;right:0;bottom:0;left:16px;border-bottom:1px solid #ebedf0;-webkit-transform:scaleY(.5);transform:scaleY(.5)}.richtext-content[data-v-27eb631a]{width:100%;white-space:pre-wrap}.richtext-content[data-v-27eb631a] img{-o-object-fit:contain;object-fit:contain;max-width:100%!important;height:auto!important}.richtext-content-hidden[data-v-27eb631a]{overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-box-orient:vertical}.voice-input-entry[data-v-27eb631a]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;padding:6px 16px 10px;color:#1989fa;font-size:14px}.voice-input-entry .voice-input-entry-icon[data-v-27eb631a]{width:16px;height:16px;margin-right:4px}.voice-input-entry[data-v-27eb631a]:active{opacity:.7}.van-textarea-field[data-v-27eb631a] .field-flSubject .richtext-content,.van-textarea-field[data-v-27eb631a] .field-flSubject textarea.van-field__control{font-size:16px;font-weight:700}", ""]);
|
|
22248
22558
|
// Exports
|
|
22249
22559
|
/* harmony default export */ __webpack_exports__["default"] = (___CSS_LOADER_EXPORT___);
|
|
22250
22560
|
|
|
@@ -22866,7 +23176,7 @@ ___CSS_LOADER_EXPORT___.push([module.id, ".submit-dialog-container[data-v-9c230b
|
|
|
22866
23176
|
|
|
22867
23177
|
/***/ }),
|
|
22868
23178
|
|
|
22869
|
-
/***/
|
|
23179
|
+
/***/ 8632:
|
|
22870
23180
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
22871
23181
|
|
|
22872
23182
|
"use strict";
|
|
@@ -22885,14 +23195,14 @@ var ___CSS_LOADER_URL_IMPORT_0___ = new URL(/* asset import */ __webpack_require
|
|
|
22885
23195
|
var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
|
|
22886
23196
|
var ___CSS_LOADER_URL_REPLACEMENT_0___ = _node_modules_css_loader_dist_runtime_getUrl_js__WEBPACK_IMPORTED_MODULE_2___default()(___CSS_LOADER_URL_IMPORT_0___);
|
|
22887
23197
|
// Module
|
|
22888
|
-
___CSS_LOADER_EXPORT___.push([module.id, ".submit-handle-container .idea-button-container .van-cell__value[data-v-
|
|
23198
|
+
___CSS_LOADER_EXPORT___.push([module.id, ".submit-handle-container .idea-button-container .van-cell__value[data-v-6bdfbd40]{text-align:right}.submit-handle-container .idea-button-container .van-cell__value .van-button[data-v-6bdfbd40]{margin-right:0;margin-left:5px}.submit-handle-container .curIdea-filed[data-v-6bdfbd40] .van-cell__title,.submit-handle-container .curIdea-filed[data-v-6bdfbd40]:after{display:none}.submit-handle-container .idea-input-wrap[data-v-6bdfbd40]{position:relative}.submit-handle-container .idea-input-wrap[data-v-6bdfbd40] .curIdea-filed textarea{padding-right:30px}.submit-handle-container .idea-input-wrap .voice-input-btn[data-v-6bdfbd40]{position:absolute;right:12px;bottom:8px;z-index:2;width:28px;height:28px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;border-radius:50%;background-color:#f2f3f5;color:#646566}.submit-handle-container .idea-input-wrap .voice-input-btn .voice-input-icon[data-v-6bdfbd40]{width:16px;height:16px}.submit-handle-container .idea-input-wrap .voice-input-btn[data-v-6bdfbd40]:active{background-color:#ebedf0;color:#1989fa}.submit-handle-container .clearfix[data-v-6bdfbd40]:after{content:\".\";display:block;height:0;clear:both;visibility:hidden}.submit-handle-container[data-v-6bdfbd40] .van-radio-group .van-cell__title{font-weight:400!important}.submit-handle-container .van-wflow-operate-detail-cell[data-v-6bdfbd40]:after{border-top-width:0}.submit-handle-container .van-wflow-operate-detail-cell-path[data-v-6bdfbd40]:after{border-width:1px;-webkit-transform:scale(.5);transform:scale(.5)}.submit-handle-container[data-v-6bdfbd40] .tnLimit-container .van-field{width:50px;display:inline-block;padding:0}.submit-handle-container[data-v-6bdfbd40] .tnLimit-container .van-field .van-field__body input{text-align:center}.submit-handle-container[data-v-6bdfbd40] .tnLimit-container .van-field__body:after{color:#323233;content:attr(value-suffix);word-break:keep-all}.submit-handle-container .delete-icon[data-v-6bdfbd40]{display:-webkit-box;display:-ms-flexbox;display:flex;float:right}.submit-handle-container .delete-icon .van-icon[data-v-6bdfbd40]{line-height:24px;margin-left:5px;font-size:16px}.selectBox_title[data-v-6bdfbd40]{height:45px;line-height:45px;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;font-size:14px}.selectBox_content[data-v-6bdfbd40],.selectBox_title[data-v-6bdfbd40]{display:-webkit-box;display:-ms-flexbox;display:flex;padding:0 15px}.selectBox_content[data-v-6bdfbd40]{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;-ms-flex-wrap:wrap;flex-wrap:wrap}.selectBox_content .selectBox_content_son[data-v-6bdfbd40]{border:1px solid #f1f1f1}.selectBox_content .selectBox_content_son[data-v-6bdfbd40],.selectBox_content .selectBox_content_son_change[data-v-6bdfbd40]{padding:4px;background:#f8fafb;font-size:14px;margin-bottom:10px!important;text-align:center;height:22px;line-height:22px;width:calc(25% - 17.5px);margin-right:10px}.selectBox_content .selectBox_content_son_change[data-v-6bdfbd40]{border:1px solid #3f88f1;background-image:url(" + ___CSS_LOADER_URL_REPLACEMENT_0___ + ");background-repeat:no-repeat;background-size:15px 15px;background-position:100% 100%;color:#3f88f1}.selectBox_content_sonall[data-v-6bdfbd40]{white-space:nowrap;overflow:hidden;overflow-x:scroll;-webkit-overflow-scrolling:touch}.selectBox_content_sonall[data-v-6bdfbd40]:nth-child(4n){margin-right:0}.selectBox_content_sonall[data-v-6bdfbd40]::-webkit-scrollbar{display:none}.viewAllComments[data-v-6bdfbd40]{height:45px;line-height:45px;text-align:center;color:#b7b7b7;font-size:12px;background:#fff;display:block;width:100%}", ""]);
|
|
22889
23199
|
// Exports
|
|
22890
23200
|
/* harmony default export */ __webpack_exports__["default"] = (___CSS_LOADER_EXPORT___);
|
|
22891
23201
|
|
|
22892
23202
|
|
|
22893
23203
|
/***/ }),
|
|
22894
23204
|
|
|
22895
|
-
/***/
|
|
23205
|
+
/***/ 5019:
|
|
22896
23206
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
22897
23207
|
|
|
22898
23208
|
"use strict";
|
|
@@ -22906,7 +23216,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
22906
23216
|
|
|
22907
23217
|
var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
|
|
22908
23218
|
// Module
|
|
22909
|
-
___CSS_LOADER_EXPORT___.push([module.id, ".voice-input-popup[data-v-
|
|
23219
|
+
___CSS_LOADER_EXPORT___.push([module.id, ".voice-input-popup[data-v-cf18a87c]{padding-bottom:constant(safe-area-inset-bottom);padding-bottom:env(safe-area-inset-bottom)}.voice-input-popup .voice-popup-header[data-v-cf18a87c]{position:relative;height:48px;line-height:48px;text-align:center}.voice-input-popup .voice-popup-header .voice-popup-title[data-v-cf18a87c]{font-size:16px;font-weight:600;color:#323233}.voice-input-popup .voice-popup-header .voice-popup-close[data-v-cf18a87c]{position:absolute;right:16px;top:16px;font-size:16px;color:#c8c9cc}.voice-input-popup .voice-popup-body[data-v-cf18a87c]{padding:8px 16px 0;text-align:center}.voice-input-popup .voice-popup-body .voice-mic-btn[data-v-cf18a87c]{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:64px;height:64px;border-radius:50%;background-color:#1989fa;color:#fff}.voice-input-popup .voice-popup-body .voice-mic-btn .voice-mic-icon[data-v-cf18a87c]{width:28px;height:28px}.voice-input-popup .voice-popup-body .voice-mic-btn.recording[data-v-cf18a87c]{background-color:#ee0a24;-webkit-animation:voice-breathe-cf18a87c 1.5s ease-out infinite;animation:voice-breathe-cf18a87c 1.5s ease-out infinite}.voice-input-popup .voice-popup-body .voice-mic-btn[data-v-cf18a87c] .van-loading{padding-top:0}.voice-input-popup .voice-popup-body .voice-status-text[data-v-cf18a87c]{margin-top:12px;font-size:13px;color:#646566}.voice-input-popup .voice-popup-body .voice-status-text.is-error[data-v-cf18a87c]{color:#ee0a24}.voice-input-popup .voice-popup-body .voice-wave-canvas[data-v-cf18a87c]{display:block;width:200px;height:32px;margin:8px auto 0}.voice-input-popup .voice-popup-body .voice-timer[data-v-cf18a87c]{margin-top:4px;font-size:13px;color:#969799}.voice-input-popup .voice-popup-body .voice-result-field[data-v-cf18a87c]{margin-top:12px;background-color:#f7f8fa;border-radius:8px}.voice-input-popup .voice-popup-footer[data-v-cf18a87c]{padding:12px 16px;text-align:right}.voice-input-popup .voice-popup-footer .van-button[data-v-cf18a87c]{margin-left:8px;min-width:80px}.voice-mic-wrap[data-v-cf18a87c]{position:relative;display:inline-block;width:64px;height:64px}.voice-mic-wrap .tech-ripple[data-v-cf18a87c]{position:absolute;left:50%;top:50%;width:64px;height:64px;margin:-32px 0 0 -32px;border-radius:50%;border:1px solid rgba(0,229,255,.6);opacity:0;pointer-events:none}.voice-input-popup.skin-tech[data-v-cf18a87c]{background-image:linear-gradient(rgba(0,229,255,.045) 1px,transparent 0),linear-gradient(90deg,rgba(0,229,255,.045) 1px,transparent 0),radial-gradient(circle at 18% 0,rgba(0,229,255,.12),transparent 42%),radial-gradient(circle at 85% 100%,rgba(0,110,255,.12),transparent 45%),linear-gradient(160deg,#060d21,#0a1a3f 55%,#071026);background-size:24px 24px,24px 24px,100% 100%,100% 100%,100% 100%}.voice-input-popup.skin-tech .voice-popup-header[data-v-cf18a87c]{border-bottom:1px solid rgba(0,229,255,.15)}.voice-input-popup.skin-tech .voice-popup-header .voice-popup-title[data-v-cf18a87c]{color:#d8f4ff;letter-spacing:3px;text-shadow:0 0 10px rgba(0,229,255,.75)}.voice-input-popup.skin-tech .voice-popup-header .voice-popup-close[data-v-cf18a87c]{color:rgba(0,229,255,.6)}.voice-input-popup.skin-tech .voice-popup-body .voice-mic-btn[data-v-cf18a87c]{background:radial-gradient(circle at 30% 25%,#1a4a8a,#0a2547 72%);border:1.5px solid rgba(0,229,255,.7);color:#00e5ff;-webkit-box-shadow:0 0 20px rgba(0,229,255,.4),inset 0 0 15px rgba(0,229,255,.15);box-shadow:0 0 20px rgba(0,229,255,.4),inset 0 0 15px rgba(0,229,255,.15)}.voice-input-popup.skin-tech .voice-popup-body .voice-mic-btn.recording[data-v-cf18a87c]{background:radial-gradient(circle at 30% 25%,#8a1a3f,#470a20 72%);border-color:rgba(255,45,105,.85);color:#ff5c8a;-webkit-animation:tech-breathe-cf18a87c 1.5s ease-out infinite;animation:tech-breathe-cf18a87c 1.5s ease-out infinite}.voice-input-popup.skin-tech .voice-popup-body .voice-status-text[data-v-cf18a87c]{color:#8fd8ff;text-shadow:0 0 6px rgba(0,229,255,.3)}.voice-input-popup.skin-tech .voice-popup-body .voice-status-text.is-error[data-v-cf18a87c]{color:#ff5c8a;text-shadow:0 0 6px rgba(255,45,105,.3)}.voice-input-popup.skin-tech .voice-popup-body .voice-timer[data-v-cf18a87c]{color:#00e5ff;font-family:Courier New,Courier,monospace;letter-spacing:2px;text-shadow:0 0 8px rgba(0,229,255,.7)}.voice-input-popup.skin-tech .voice-popup-body .voice-result-field[data-v-cf18a87c]{background:rgba(6,25,55,.6);border:1px solid rgba(0,229,255,.35);-webkit-box-shadow:inset 0 0 12px rgba(0,229,255,.1);box-shadow:inset 0 0 12px rgba(0,229,255,.1)}.voice-input-popup.skin-tech .voice-popup-body .voice-result-field[data-v-cf18a87c] .van-field__control{color:#d8f4ff;caret-color:#00e5ff}.voice-input-popup.skin-tech .voice-popup-body .voice-result-field[data-v-cf18a87c] .van-field__control::-webkit-input-placeholder{color:rgba(143,216,255,.4)}.voice-input-popup.skin-tech .voice-popup-body .voice-result-field[data-v-cf18a87c] .van-field__control::-moz-placeholder{color:rgba(143,216,255,.4)}.voice-input-popup.skin-tech .voice-popup-body .voice-result-field[data-v-cf18a87c] .van-field__control::-ms-input-placeholder{color:rgba(143,216,255,.4)}.voice-input-popup.skin-tech .voice-popup-body .voice-result-field[data-v-cf18a87c] .van-field__control::placeholder{color:rgba(143,216,255,.4)}.voice-input-popup.skin-tech .voice-popup-footer .van-button--default[data-v-cf18a87c]{background:transparent;color:#8fd8ff}.voice-input-popup.skin-tech .voice-popup-footer .van-button--default[data-v-cf18a87c]:after{border-color:rgba(0,229,255,.4)}.voice-input-popup.skin-tech .voice-popup-footer .van-button--info[data-v-cf18a87c]{background:-webkit-gradient(linear,left top,right top,from(#00b8d4),to(#00e5ff));background:linear-gradient(90deg,#00b8d4,#00e5ff);color:#04122b;-webkit-box-shadow:0 0 12px rgba(0,229,255,.45);box-shadow:0 0 12px rgba(0,229,255,.45)}.voice-input-popup.skin-tech .voice-popup-footer .van-button--info[data-v-cf18a87c]:after{border-width:0}.voice-input-popup.skin-tech .voice-popup-footer .van-button--info.van-button--disabled[data-v-cf18a87c]{opacity:.45}.voice-input-popup.skin-tech .voice-mic-wrap.recording .tech-ripple[data-v-cf18a87c]{border-color:rgba(255,45,105,.7);-webkit-animation:tech-ripple-cf18a87c 2s ease-out infinite;animation:tech-ripple-cf18a87c 2s ease-out infinite}.voice-input-popup.skin-tech .voice-mic-wrap.recording .tech-ripple-2[data-v-cf18a87c]{-webkit-animation-delay:.6s;animation-delay:.6s}.voice-input-popup.skin-tech .voice-mic-wrap.recording .tech-ripple-3[data-v-cf18a87c]{-webkit-animation-delay:1.2s;animation-delay:1.2s}@-webkit-keyframes tech-ripple-cf18a87c{0%{-webkit-transform:scale(1);transform:scale(1);opacity:.7}to{-webkit-transform:scale(2.4);transform:scale(2.4);opacity:0}}@keyframes tech-ripple-cf18a87c{0%{-webkit-transform:scale(1);transform:scale(1);opacity:.7}to{-webkit-transform:scale(2.4);transform:scale(2.4);opacity:0}}@-webkit-keyframes tech-breathe-cf18a87c{0%{-webkit-box-shadow:0 0 24px rgba(255,45,105,.55),inset 0 0 15px rgba(255,45,105,.2),0 0 0 0 rgba(255,45,105,.45);box-shadow:0 0 24px rgba(255,45,105,.55),inset 0 0 15px rgba(255,45,105,.2),0 0 0 0 rgba(255,45,105,.45)}to{-webkit-box-shadow:0 0 24px rgba(255,45,105,.55),inset 0 0 15px rgba(255,45,105,.2),0 0 0 18px rgba(255,45,105,0);box-shadow:0 0 24px rgba(255,45,105,.55),inset 0 0 15px rgba(255,45,105,.2),0 0 0 18px rgba(255,45,105,0)}}@keyframes tech-breathe-cf18a87c{0%{-webkit-box-shadow:0 0 24px rgba(255,45,105,.55),inset 0 0 15px rgba(255,45,105,.2),0 0 0 0 rgba(255,45,105,.45);box-shadow:0 0 24px rgba(255,45,105,.55),inset 0 0 15px rgba(255,45,105,.2),0 0 0 0 rgba(255,45,105,.45)}to{-webkit-box-shadow:0 0 24px rgba(255,45,105,.55),inset 0 0 15px rgba(255,45,105,.2),0 0 0 18px rgba(255,45,105,0);box-shadow:0 0 24px rgba(255,45,105,.55),inset 0 0 15px rgba(255,45,105,.2),0 0 0 18px rgba(255,45,105,0)}}@-webkit-keyframes voice-breathe-cf18a87c{0%{-webkit-box-shadow:0 0 0 0 rgba(238,10,36,.5);box-shadow:0 0 0 0 rgba(238,10,36,.5)}to{-webkit-box-shadow:0 0 0 16px rgba(238,10,36,0);box-shadow:0 0 0 16px rgba(238,10,36,0)}}@keyframes voice-breathe-cf18a87c{0%{-webkit-box-shadow:0 0 0 0 rgba(238,10,36,.5);box-shadow:0 0 0 0 rgba(238,10,36,.5)}to{-webkit-box-shadow:0 0 0 16px rgba(238,10,36,0);box-shadow:0 0 0 16px rgba(238,10,36,0)}}", ""]);
|
|
22910
23220
|
// Exports
|
|
22911
23221
|
/* harmony default export */ __webpack_exports__["default"] = (___CSS_LOADER_EXPORT___);
|
|
22912
23222
|
|
|
@@ -22976,7 +23286,7 @@ ___CSS_LOADER_EXPORT___.push([module.id, ".loading[data-v-69610664]{margin-top:1
|
|
|
22976
23286
|
|
|
22977
23287
|
/***/ }),
|
|
22978
23288
|
|
|
22979
|
-
/***/
|
|
23289
|
+
/***/ 7687:
|
|
22980
23290
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
22981
23291
|
|
|
22982
23292
|
"use strict";
|
|
@@ -22990,7 +23300,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
22990
23300
|
|
|
22991
23301
|
var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
|
|
22992
23302
|
// Module
|
|
22993
|
-
___CSS_LOADER_EXPORT___.push([module.id, ".icon-dialog[data-v-
|
|
23303
|
+
___CSS_LOADER_EXPORT___.push([module.id, ".icon-dialog[data-v-3ebd0a76] .el-dialog__body{height:650px;overflow-y:auto;padding:0 0 20px 0}.icon-dialog[data-v-3ebd0a76] .el-dialog__body .el-tabs--top{margin-top:0}", ""]);
|
|
22994
23304
|
// Exports
|
|
22995
23305
|
/* harmony default export */ __webpack_exports__["default"] = (___CSS_LOADER_EXPORT___);
|
|
22996
23306
|
|
|
@@ -50058,19 +50368,19 @@ var update = add("49a7cd0a", content, true, {"sourceMap":false,"shadowMode":fals
|
|
|
50058
50368
|
|
|
50059
50369
|
/***/ }),
|
|
50060
50370
|
|
|
50061
|
-
/***/
|
|
50371
|
+
/***/ 8619:
|
|
50062
50372
|
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
|
|
50063
50373
|
|
|
50064
50374
|
// style-loader: Adds some css to the DOM by adding a <style> tag
|
|
50065
50375
|
|
|
50066
50376
|
// load the styles
|
|
50067
|
-
var content = __webpack_require__(
|
|
50377
|
+
var content = __webpack_require__(5441);
|
|
50068
50378
|
if(content.__esModule) content = content.default;
|
|
50069
50379
|
if(typeof content === 'string') content = [[module.id, content, '']];
|
|
50070
50380
|
if(content.locals) module.exports = content.locals;
|
|
50071
50381
|
// add the styles to the DOM
|
|
50072
50382
|
var add = (__webpack_require__(9548)/* ["default"] */ .A)
|
|
50073
|
-
var update = add("
|
|
50383
|
+
var update = add("44739768", content, true, {"sourceMap":false,"shadowMode":false});
|
|
50074
50384
|
|
|
50075
50385
|
/***/ }),
|
|
50076
50386
|
|
|
@@ -50538,35 +50848,35 @@ var update = add("780551c7", content, true, {"sourceMap":false,"shadowMode":fals
|
|
|
50538
50848
|
|
|
50539
50849
|
/***/ }),
|
|
50540
50850
|
|
|
50541
|
-
/***/
|
|
50851
|
+
/***/ 5294:
|
|
50542
50852
|
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
|
|
50543
50853
|
|
|
50544
50854
|
// style-loader: Adds some css to the DOM by adding a <style> tag
|
|
50545
50855
|
|
|
50546
50856
|
// load the styles
|
|
50547
|
-
var content = __webpack_require__(
|
|
50857
|
+
var content = __webpack_require__(8632);
|
|
50548
50858
|
if(content.__esModule) content = content.default;
|
|
50549
50859
|
if(typeof content === 'string') content = [[module.id, content, '']];
|
|
50550
50860
|
if(content.locals) module.exports = content.locals;
|
|
50551
50861
|
// add the styles to the DOM
|
|
50552
50862
|
var add = (__webpack_require__(9548)/* ["default"] */ .A)
|
|
50553
|
-
var update = add("
|
|
50863
|
+
var update = add("6665940f", content, true, {"sourceMap":false,"shadowMode":false});
|
|
50554
50864
|
|
|
50555
50865
|
/***/ }),
|
|
50556
50866
|
|
|
50557
|
-
/***/
|
|
50867
|
+
/***/ 4949:
|
|
50558
50868
|
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
|
|
50559
50869
|
|
|
50560
50870
|
// style-loader: Adds some css to the DOM by adding a <style> tag
|
|
50561
50871
|
|
|
50562
50872
|
// load the styles
|
|
50563
|
-
var content = __webpack_require__(
|
|
50873
|
+
var content = __webpack_require__(5019);
|
|
50564
50874
|
if(content.__esModule) content = content.default;
|
|
50565
50875
|
if(typeof content === 'string') content = [[module.id, content, '']];
|
|
50566
50876
|
if(content.locals) module.exports = content.locals;
|
|
50567
50877
|
// add the styles to the DOM
|
|
50568
50878
|
var add = (__webpack_require__(9548)/* ["default"] */ .A)
|
|
50569
|
-
var update = add("
|
|
50879
|
+
var update = add("6ddf8070", content, true, {"sourceMap":false,"shadowMode":false});
|
|
50570
50880
|
|
|
50571
50881
|
/***/ }),
|
|
50572
50882
|
|
|
@@ -50618,19 +50928,19 @@ var update = add("e368663c", content, true, {"sourceMap":false,"shadowMode":fals
|
|
|
50618
50928
|
|
|
50619
50929
|
/***/ }),
|
|
50620
50930
|
|
|
50621
|
-
/***/
|
|
50931
|
+
/***/ 3381:
|
|
50622
50932
|
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
|
|
50623
50933
|
|
|
50624
50934
|
// style-loader: Adds some css to the DOM by adding a <style> tag
|
|
50625
50935
|
|
|
50626
50936
|
// load the styles
|
|
50627
|
-
var content = __webpack_require__(
|
|
50937
|
+
var content = __webpack_require__(7687);
|
|
50628
50938
|
if(content.__esModule) content = content.default;
|
|
50629
50939
|
if(typeof content === 'string') content = [[module.id, content, '']];
|
|
50630
50940
|
if(content.locals) module.exports = content.locals;
|
|
50631
50941
|
// add the styles to the DOM
|
|
50632
50942
|
var add = (__webpack_require__(9548)/* ["default"] */ .A)
|
|
50633
|
-
var update = add("
|
|
50943
|
+
var update = add("b1008540", content, true, {"sourceMap":false,"shadowMode":false});
|
|
50634
50944
|
|
|
50635
50945
|
/***/ }),
|
|
50636
50946
|
|
|
@@ -52199,7 +52509,7 @@ webpackContext.id = 2397;
|
|
|
52199
52509
|
|
|
52200
52510
|
var map = {
|
|
52201
52511
|
"./app.js": 3299,
|
|
52202
|
-
"./route.js":
|
|
52512
|
+
"./route.js": 249,
|
|
52203
52513
|
"./settings.js": 8183,
|
|
52204
52514
|
"./tagsView.js": 314
|
|
52205
52515
|
};
|
|
@@ -56503,7 +56813,7 @@ service.interceptors.response.use(function (response) {
|
|
|
56503
56813
|
errmsg = error.response.data.message;
|
|
56504
56814
|
}
|
|
56505
56815
|
if (window.vType === 'wapp') {
|
|
56506
|
-
var ignoreUrls = ['login', 'getUserRolePermissions', 'getUiStyleConfig', 'queryUiFontSize', 'homepage/allm'];
|
|
56816
|
+
var ignoreUrls = ['login', 'getUserRolePermissions', 'getUiStyleConfig', 'queryUiFontSize', 'homepage/allm', 'getLastMsgCount'];
|
|
56507
56817
|
if (!ignoreUrls.some(function (u) {
|
|
56508
56818
|
return error.config.url.toLowerCase().indexOf(u.toLocaleLowerCase()) !== -1;
|
|
56509
56819
|
})) {
|
|
@@ -70859,8 +71169,8 @@ var SwitchField_component = (0,componentNormalizer/* default */.A)(
|
|
|
70859
71169
|
)
|
|
70860
71170
|
|
|
70861
71171
|
/* harmony default export */ var SwitchField = (SwitchField_component.exports);
|
|
70862
|
-
;// CONCATENATED MODULE: ./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./packages/ecmapp/Basicform/src/FormField/TextareaField.vue?vue&type=template&id=
|
|
70863
|
-
var
|
|
71172
|
+
;// CONCATENATED MODULE: ./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./packages/ecmapp/Basicform/src/FormField/TextareaField.vue?vue&type=template&id=27eb631a&scoped=true
|
|
71173
|
+
var TextareaFieldvue_type_template_id_27eb631a_scoped_true_render = function render() {
|
|
70864
71174
|
var _vm = this,
|
|
70865
71175
|
_c = _vm._self._c;
|
|
70866
71176
|
return _vm.isShowField ? _c('div', {
|
|
@@ -70953,9 +71263,42 @@ var TextareaFieldvue_type_template_id_7743d246_scoped_true_render = function ren
|
|
|
70953
71263
|
return _vm.showTextContent(_vm.showType);
|
|
70954
71264
|
}
|
|
70955
71265
|
}
|
|
70956
|
-
}, [_vm._v(_vm._s(_vm.textName))])]) : _vm._e()
|
|
71266
|
+
}, [_vm._v(_vm._s(_vm.textName))])]) : _vm._e(), _vm.voiceInputEnabled ? _c('div', {
|
|
71267
|
+
staticClass: "voice-input-entry",
|
|
71268
|
+
on: {
|
|
71269
|
+
"click": function click($event) {
|
|
71270
|
+
$event.stopPropagation();
|
|
71271
|
+
return _vm.openVoiceDialog.apply(null, arguments);
|
|
71272
|
+
}
|
|
71273
|
+
}
|
|
71274
|
+
}, [_c('svg', {
|
|
71275
|
+
staticClass: "voice-input-entry-icon",
|
|
71276
|
+
attrs: {
|
|
71277
|
+
"viewBox": "0 0 1024 1024",
|
|
71278
|
+
"fill": "currentColor",
|
|
71279
|
+
"aria-hidden": "true"
|
|
71280
|
+
}
|
|
71281
|
+
}, [_c('path', {
|
|
71282
|
+
attrs: {
|
|
71283
|
+
"d": "M512 640c88.4 0 160-71.6 160-160V224c0-88.4-71.6-160-160-160S352 135.6 352 224v256c0 88.4 71.6 160 160 160z"
|
|
71284
|
+
}
|
|
71285
|
+
}), _c('path', {
|
|
71286
|
+
attrs: {
|
|
71287
|
+
"d": "M768 480c0 141.4-114.6 256-256 256S256 621.4 256 480h-64c0 163.9 123.3 299 288 318.4V896H352v64h320v-64H544v-97.6C708.7 779 832 643.9 832 480h-64z"
|
|
71288
|
+
}
|
|
71289
|
+
})]), _c('span', [_vm._v(_vm._s(_vm.$tx('ecmapp.wflowform.voiceInput', '语音输入')))])]) : _vm._e(), _c('VoiceInputDialog', {
|
|
71290
|
+
attrs: {
|
|
71291
|
+
"visible": _vm.voiceDialogVisible
|
|
71292
|
+
},
|
|
71293
|
+
on: {
|
|
71294
|
+
"update:visible": function updateVisible($event) {
|
|
71295
|
+
_vm.voiceDialogVisible = $event;
|
|
71296
|
+
},
|
|
71297
|
+
"confirm": _vm.onVoiceConfirm
|
|
71298
|
+
}
|
|
71299
|
+
})], 1) : _vm._e();
|
|
70957
71300
|
};
|
|
70958
|
-
var
|
|
71301
|
+
var TextareaFieldvue_type_template_id_27eb631a_scoped_true_staticRenderFns = [];
|
|
70959
71302
|
|
|
70960
71303
|
;// CONCATENATED MODULE: ./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./packages/ecmapp/Basicform/src/FormField/TextareaField.vue?vue&type=script&lang=js
|
|
70961
71304
|
function TextareaFieldvue_type_script_lang_js_typeof(o) { "@babel/helpers - typeof"; return TextareaFieldvue_type_script_lang_js_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, TextareaFieldvue_type_script_lang_js_typeof(o); }
|
|
@@ -71020,6 +71363,10 @@ function TextareaFieldvue_type_script_lang_js_toPrimitive(t, r) { if ("object" !
|
|
|
71020
71363
|
autosize: {
|
|
71021
71364
|
type: Boolean,
|
|
71022
71365
|
default: true
|
|
71366
|
+
},
|
|
71367
|
+
voiceInput: {
|
|
71368
|
+
type: Boolean,
|
|
71369
|
+
default: false
|
|
71023
71370
|
}
|
|
71024
71371
|
},
|
|
71025
71372
|
data: function data() {
|
|
@@ -71032,10 +71379,15 @@ function TextareaFieldvue_type_script_lang_js_toPrimitive(t, r) { if ("object" !
|
|
|
71032
71379
|
maxLength: null,
|
|
71033
71380
|
updateField: false,
|
|
71034
71381
|
inputValue: '',
|
|
71035
|
-
nodeFieldReadOnly: false
|
|
71382
|
+
nodeFieldReadOnly: false,
|
|
71383
|
+
voiceDialogVisible: false
|
|
71036
71384
|
};
|
|
71037
71385
|
},
|
|
71038
71386
|
computed: TextareaFieldvue_type_script_lang_js_objectSpread(TextareaFieldvue_type_script_lang_js_objectSpread({}, (0,vuex_esm/* mapGetters */.L8)(['loginUser'])), {}, {
|
|
71387
|
+
// 语音输入按钮显示条件:voice-input属性为true、字段可编辑且非元素级只读
|
|
71388
|
+
voiceInputEnabled: function voiceInputEnabled() {
|
|
71389
|
+
return this.voiceInput && !this.readonly && !this.nodeFieldReadOnly && this.elementReadonly !== 1;
|
|
71390
|
+
},
|
|
71039
71391
|
optionGenerateUrl: function optionGenerateUrl() {
|
|
71040
71392
|
var _this2 = this;
|
|
71041
71393
|
var url = this.field.optionGenerateUrl;
|
|
@@ -71349,6 +71701,15 @@ function TextareaFieldvue_type_script_lang_js_toPrimitive(t, r) { if ("object" !
|
|
|
71349
71701
|
_this6.updateField = false;
|
|
71350
71702
|
});
|
|
71351
71703
|
},
|
|
71704
|
+
// 打开语音输入弹窗
|
|
71705
|
+
openVoiceDialog: function openVoiceDialog() {
|
|
71706
|
+
this.voiceDialogVisible = true;
|
|
71707
|
+
},
|
|
71708
|
+
// 语音识别完成回调:识别文本追加到现有内容末尾,同步更新字段值
|
|
71709
|
+
onVoiceConfirm: function onVoiceConfirm(text) {
|
|
71710
|
+
this.inputValue = this.inputValue ? this.inputValue + text : text;
|
|
71711
|
+
this.setFieldValue(this.inputValue);
|
|
71712
|
+
},
|
|
71352
71713
|
getFieldValue: function getFieldValue() {
|
|
71353
71714
|
if (this.model.split('.').length > 1) {
|
|
71354
71715
|
if (TextareaFieldvue_type_script_lang_js_typeof(this.vo[this.model.split('.')[0]]) === 'object' && this.vo[this.model.split('.')[0]] != null) {
|
|
@@ -71376,9 +71737,9 @@ function TextareaFieldvue_type_script_lang_js_toPrimitive(t, r) { if ("object" !
|
|
|
71376
71737
|
});
|
|
71377
71738
|
;// CONCATENATED MODULE: ./packages/ecmapp/Basicform/src/FormField/TextareaField.vue?vue&type=script&lang=js
|
|
71378
71739
|
/* harmony default export */ var FormField_TextareaFieldvue_type_script_lang_js = (TextareaFieldvue_type_script_lang_js);
|
|
71379
|
-
// EXTERNAL MODULE: ./node_modules/vue-style-loader/index.js??clonedRuleSet-22.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./packages/ecmapp/Basicform/src/FormField/TextareaField.vue?vue&type=style&index=0&id=
|
|
71380
|
-
var
|
|
71381
|
-
;// CONCATENATED MODULE: ./packages/ecmapp/Basicform/src/FormField/TextareaField.vue?vue&type=style&index=0&id=
|
|
71740
|
+
// EXTERNAL MODULE: ./node_modules/vue-style-loader/index.js??clonedRuleSet-22.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./packages/ecmapp/Basicform/src/FormField/TextareaField.vue?vue&type=style&index=0&id=27eb631a&prod&scoped=true&lang=scss
|
|
71741
|
+
var TextareaFieldvue_type_style_index_0_id_27eb631a_prod_scoped_true_lang_scss = __webpack_require__(8619);
|
|
71742
|
+
;// CONCATENATED MODULE: ./packages/ecmapp/Basicform/src/FormField/TextareaField.vue?vue&type=style&index=0&id=27eb631a&prod&scoped=true&lang=scss
|
|
71382
71743
|
|
|
71383
71744
|
;// CONCATENATED MODULE: ./packages/ecmapp/Basicform/src/FormField/TextareaField.vue
|
|
71384
71745
|
|
|
@@ -71391,11 +71752,11 @@ var TextareaFieldvue_type_style_index_0_id_7743d246_prod_scoped_true_lang_scss =
|
|
|
71391
71752
|
|
|
71392
71753
|
var TextareaField_component = (0,componentNormalizer/* default */.A)(
|
|
71393
71754
|
FormField_TextareaFieldvue_type_script_lang_js,
|
|
71394
|
-
|
|
71395
|
-
|
|
71755
|
+
TextareaFieldvue_type_template_id_27eb631a_scoped_true_render,
|
|
71756
|
+
TextareaFieldvue_type_template_id_27eb631a_scoped_true_staticRenderFns,
|
|
71396
71757
|
false,
|
|
71397
71758
|
null,
|
|
71398
|
-
"
|
|
71759
|
+
"27eb631a",
|
|
71399
71760
|
null
|
|
71400
71761
|
|
|
71401
71762
|
)
|
|
@@ -72945,39 +73306,39 @@ var asyncComponents = [
|
|
|
72945
73306
|
}],
|
|
72946
73307
|
// ========== ecmapp/Wflowform 工作流表单子组件 → chunk: m-wflow-form ==========
|
|
72947
73308
|
['Attachment', function () {
|
|
72948
|
-
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__,
|
|
73309
|
+
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 4609)).then(function (m) {
|
|
72949
73310
|
return m.Attachment;
|
|
72950
73311
|
});
|
|
72951
73312
|
}], ['BodyFile', function () {
|
|
72952
|
-
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__,
|
|
73313
|
+
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 4609)).then(function (m) {
|
|
72953
73314
|
return m.BodyFile;
|
|
72954
73315
|
});
|
|
72955
73316
|
}], ['HandleIdea', function () {
|
|
72956
|
-
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__,
|
|
73317
|
+
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 4609)).then(function (m) {
|
|
72957
73318
|
return m.HandleIdea;
|
|
72958
73319
|
});
|
|
72959
73320
|
}], ['SelectOuterDeputy', function () {
|
|
72960
|
-
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__,
|
|
73321
|
+
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 4609)).then(function (m) {
|
|
72961
73322
|
return m.SelectOuterDeputy;
|
|
72962
73323
|
});
|
|
72963
73324
|
}], ['SubmitHandle', function () {
|
|
72964
|
-
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__,
|
|
73325
|
+
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 4609)).then(function (m) {
|
|
72965
73326
|
return m.SubmitHandle;
|
|
72966
73327
|
});
|
|
72967
73328
|
}], ['SubmitDialog', function () {
|
|
72968
|
-
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__,
|
|
73329
|
+
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 4609)).then(function (m) {
|
|
72969
73330
|
return m.SubmitDialog;
|
|
72970
73331
|
});
|
|
72971
73332
|
}], ['ShortcutProcessing', function () {
|
|
72972
|
-
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__,
|
|
73333
|
+
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 4609)).then(function (m) {
|
|
72973
73334
|
return m.ShortcutProcessing;
|
|
72974
73335
|
});
|
|
72975
73336
|
}], ['WfNodelogList', function () {
|
|
72976
|
-
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__,
|
|
73337
|
+
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 4609)).then(function (m) {
|
|
72977
73338
|
return m.WfNodelogList;
|
|
72978
73339
|
});
|
|
72979
73340
|
}], ['WriteToReadIdea', function () {
|
|
72980
|
-
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__,
|
|
73341
|
+
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 4609)).then(function (m) {
|
|
72981
73342
|
return m.WriteToReadIdea;
|
|
72982
73343
|
});
|
|
72983
73344
|
}]];
|
|
@@ -73030,7 +73391,7 @@ var WfengineModule = function WfengineModule() {
|
|
|
73030
73391
|
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 8838));
|
|
73031
73392
|
};
|
|
73032
73393
|
var WflowformModule = function WflowformModule() {
|
|
73033
|
-
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__,
|
|
73394
|
+
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 4609));
|
|
73034
73395
|
};
|
|
73035
73396
|
|
|
73036
73397
|
// ---------- 重型功能(PDF/富文本,仅特定页面使用) ----------
|