ecinc-cloud-mappaio 9.7.32 → 9.7.33
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 +666 -30
- package/lib/ecmappaio.umd.js +666 -30
- package/lib/ecmappaio.umd.min.js +1 -1
- package/package.json +1 -1
package/lib/ecmappaio.common.js
CHANGED
|
@@ -8756,7 +8756,7 @@ src.install = function (Vue) {
|
|
|
8756
8756
|
|
|
8757
8757
|
/***/ }),
|
|
8758
8758
|
|
|
8759
|
-
/***/
|
|
8759
|
+
/***/ 2214:
|
|
8760
8760
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
8761
8761
|
|
|
8762
8762
|
"use strict";
|
|
@@ -12715,8 +12715,8 @@ var SelectOuterDeputy_component = (0,componentNormalizer/* default */.A)(
|
|
|
12715
12715
|
)
|
|
12716
12716
|
|
|
12717
12717
|
/* 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
|
|
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=44733f4f&scoped=true
|
|
12719
|
+
var SubmitHandlevue_type_template_id_44733f4f_scoped_true_render = function render() {
|
|
12720
12720
|
var _vm = this,
|
|
12721
12721
|
_c = _vm._self._c;
|
|
12722
12722
|
return _vm.initiated ? _c('div', {
|
|
@@ -12807,7 +12807,9 @@ var SubmitHandlevue_type_template_id_6451f4d6_scoped_true_render = function rend
|
|
|
12807
12807
|
attrs: {
|
|
12808
12808
|
"title": "填写意见"
|
|
12809
12809
|
}
|
|
12810
|
-
})], 1), _vm._t("idea-inputbox-top"), _c('
|
|
12810
|
+
})], 1), _vm._t("idea-inputbox-top"), _c('div', {
|
|
12811
|
+
staticClass: "idea-input-wrap"
|
|
12812
|
+
}, [_c('van-field', {
|
|
12811
12813
|
directives: [{
|
|
12812
12814
|
name: "field-lbl",
|
|
12813
12815
|
rawName: "v-field-lbl",
|
|
@@ -12829,7 +12831,27 @@ var SubmitHandlevue_type_template_id_6451f4d6_scoped_true_render = function rend
|
|
|
12829
12831
|
},
|
|
12830
12832
|
expression: "submitHandle.curUserIdea"
|
|
12831
12833
|
}
|
|
12832
|
-
}), _c('
|
|
12834
|
+
}), _vm.voiceInputEnabled ? _c('div', {
|
|
12835
|
+
staticClass: "voice-input-btn",
|
|
12836
|
+
on: {
|
|
12837
|
+
"click": _vm.openVoiceInput
|
|
12838
|
+
}
|
|
12839
|
+
}, [_c('svg', {
|
|
12840
|
+
staticClass: "voice-input-icon",
|
|
12841
|
+
attrs: {
|
|
12842
|
+
"viewBox": "0 0 1024 1024",
|
|
12843
|
+
"fill": "currentColor",
|
|
12844
|
+
"aria-hidden": "true"
|
|
12845
|
+
}
|
|
12846
|
+
}, [_c('path', {
|
|
12847
|
+
attrs: {
|
|
12848
|
+
"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"
|
|
12849
|
+
}
|
|
12850
|
+
}), _c('path', {
|
|
12851
|
+
attrs: {
|
|
12852
|
+
"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"
|
|
12853
|
+
}
|
|
12854
|
+
})])]) : _vm._e()], 1), _c('van-cell', {
|
|
12833
12855
|
staticClass: "idea-button-container",
|
|
12834
12856
|
scopedSlots: _vm._u([{
|
|
12835
12857
|
key: "default",
|
|
@@ -13467,9 +13489,19 @@ var SubmitHandlevue_type_template_id_6451f4d6_scoped_true_render = function rend
|
|
|
13467
13489
|
"task-node": _vm.udmNode,
|
|
13468
13490
|
"idea-lables": _vm.wfJsonData.ideaLables
|
|
13469
13491
|
}
|
|
13470
|
-
})], 1) : _vm._e()
|
|
13492
|
+
})], 1) : _vm._e(), _c('VoiceInputDialog', {
|
|
13493
|
+
attrs: {
|
|
13494
|
+
"visible": _vm.voiceDialogVisible
|
|
13495
|
+
},
|
|
13496
|
+
on: {
|
|
13497
|
+
"update:visible": function updateVisible($event) {
|
|
13498
|
+
_vm.voiceDialogVisible = $event;
|
|
13499
|
+
},
|
|
13500
|
+
"confirm": _vm.onVoiceConfirm
|
|
13501
|
+
}
|
|
13502
|
+
})], 2) : _vm._e();
|
|
13471
13503
|
};
|
|
13472
|
-
var
|
|
13504
|
+
var SubmitHandlevue_type_template_id_44733f4f_scoped_true_staticRenderFns = [];
|
|
13473
13505
|
|
|
13474
13506
|
;// 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
|
|
13475
13507
|
var WfTaskNodevue_type_template_id_d1ae2f20_scoped_true_render = function render() {
|
|
@@ -14798,14 +14830,556 @@ var WfTaskNode_component = (0,componentNormalizer/* default */.A)(
|
|
|
14798
14830
|
)
|
|
14799
14831
|
|
|
14800
14832
|
/* 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=574b941f&scoped=true
|
|
14834
|
+
var VoiceInputDialogvue_type_template_id_574b941f_scoped_true_render = function render() {
|
|
14835
|
+
var _vm = this,
|
|
14836
|
+
_c = _vm._self._c;
|
|
14837
|
+
return _c('van-popup', {
|
|
14838
|
+
staticClass: "voice-input-popup",
|
|
14839
|
+
attrs: {
|
|
14840
|
+
"round": "",
|
|
14841
|
+
"position": "bottom",
|
|
14842
|
+
"close-on-click-overlay": false
|
|
14843
|
+
},
|
|
14844
|
+
on: {
|
|
14845
|
+
"closed": _vm.onPopupClosed
|
|
14846
|
+
},
|
|
14847
|
+
model: {
|
|
14848
|
+
value: _vm.dialogVisible,
|
|
14849
|
+
callback: function callback($$v) {
|
|
14850
|
+
_vm.dialogVisible = $$v;
|
|
14851
|
+
},
|
|
14852
|
+
expression: "dialogVisible"
|
|
14853
|
+
}
|
|
14854
|
+
}, [_c('div', {
|
|
14855
|
+
staticClass: "voice-popup-header"
|
|
14856
|
+
}, [_c('span', {
|
|
14857
|
+
staticClass: "voice-popup-title"
|
|
14858
|
+
}, [_vm._v(_vm._s(_vm.$tx('ecmapp.wflowform.voiceInput', '语音输入')))]), _c('van-icon', {
|
|
14859
|
+
staticClass: "voice-popup-close",
|
|
14860
|
+
attrs: {
|
|
14861
|
+
"name": "cross"
|
|
14862
|
+
},
|
|
14863
|
+
on: {
|
|
14864
|
+
"click": function click($event) {
|
|
14865
|
+
_vm.dialogVisible = false;
|
|
14866
|
+
}
|
|
14867
|
+
}
|
|
14868
|
+
})], 1), _c('div', {
|
|
14869
|
+
staticClass: "voice-popup-body"
|
|
14870
|
+
}, [_c('div', {
|
|
14871
|
+
staticClass: "voice-mic-btn",
|
|
14872
|
+
class: {
|
|
14873
|
+
recording: _vm.status === 'recording'
|
|
14874
|
+
},
|
|
14875
|
+
on: {
|
|
14876
|
+
"click": _vm.toggleRecord
|
|
14877
|
+
}
|
|
14878
|
+
}, [_vm.status === 'processing' ? _c('van-loading', {
|
|
14879
|
+
attrs: {
|
|
14880
|
+
"color": "#ffffff",
|
|
14881
|
+
"size": "28px"
|
|
14882
|
+
}
|
|
14883
|
+
}) : _c('svg', {
|
|
14884
|
+
staticClass: "voice-mic-icon",
|
|
14885
|
+
attrs: {
|
|
14886
|
+
"viewBox": "0 0 1024 1024",
|
|
14887
|
+
"fill": "currentColor",
|
|
14888
|
+
"aria-hidden": "true"
|
|
14889
|
+
}
|
|
14890
|
+
}, [_c('path', {
|
|
14891
|
+
attrs: {
|
|
14892
|
+
"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"
|
|
14893
|
+
}
|
|
14894
|
+
}), _c('path', {
|
|
14895
|
+
attrs: {
|
|
14896
|
+
"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
|
+
}
|
|
14898
|
+
})])], 1), _c('div', {
|
|
14899
|
+
staticClass: "voice-status-text",
|
|
14900
|
+
class: {
|
|
14901
|
+
'is-error': _vm.status === 'error'
|
|
14902
|
+
}
|
|
14903
|
+
}, [_vm._v(_vm._s(_vm.statusText))]), _c('canvas', {
|
|
14904
|
+
directives: [{
|
|
14905
|
+
name: "show",
|
|
14906
|
+
rawName: "v-show",
|
|
14907
|
+
value: _vm.status === 'recording',
|
|
14908
|
+
expression: "status === 'recording'"
|
|
14909
|
+
}],
|
|
14910
|
+
ref: "waveCanvas",
|
|
14911
|
+
staticClass: "voice-wave-canvas"
|
|
14912
|
+
}), _c('div', {
|
|
14913
|
+
directives: [{
|
|
14914
|
+
name: "show",
|
|
14915
|
+
rawName: "v-show",
|
|
14916
|
+
value: _vm.status === 'recording',
|
|
14917
|
+
expression: "status === 'recording'"
|
|
14918
|
+
}],
|
|
14919
|
+
staticClass: "voice-timer"
|
|
14920
|
+
}, [_vm._v(_vm._s(_vm.timerText))]), _c('van-field', {
|
|
14921
|
+
staticClass: "voice-result-field",
|
|
14922
|
+
attrs: {
|
|
14923
|
+
"type": "textarea",
|
|
14924
|
+
"rows": "3",
|
|
14925
|
+
"autosize": "",
|
|
14926
|
+
"readonly": _vm.status === 'recording' || _vm.status === 'processing',
|
|
14927
|
+
"placeholder": _vm.$tx('ecmapp.wflowform.voiceResultHolder', '识别结果将显示在这里,可修改后填入意见。')
|
|
14928
|
+
},
|
|
14929
|
+
model: {
|
|
14930
|
+
value: _vm.resultText,
|
|
14931
|
+
callback: function callback($$v) {
|
|
14932
|
+
_vm.resultText = $$v;
|
|
14933
|
+
},
|
|
14934
|
+
expression: "resultText"
|
|
14935
|
+
}
|
|
14936
|
+
})], 1), _c('div', {
|
|
14937
|
+
staticClass: "voice-popup-footer"
|
|
14938
|
+
}, [_c('van-button', {
|
|
14939
|
+
attrs: {
|
|
14940
|
+
"type": "default",
|
|
14941
|
+
"size": "small",
|
|
14942
|
+
"hairline": ""
|
|
14943
|
+
},
|
|
14944
|
+
on: {
|
|
14945
|
+
"click": function click($event) {
|
|
14946
|
+
_vm.dialogVisible = false;
|
|
14947
|
+
}
|
|
14948
|
+
}
|
|
14949
|
+
}, [_vm._v(_vm._s(_vm.$tx('ecmapp.pageBtns.cancel', '取消')))]), _c('van-button', {
|
|
14950
|
+
attrs: {
|
|
14951
|
+
"type": "info",
|
|
14952
|
+
"size": "small",
|
|
14953
|
+
"hairline": "",
|
|
14954
|
+
"disabled": !_vm.resultText || _vm.resultText.trim() === '' || _vm.status === 'recording' || _vm.status === 'processing'
|
|
14955
|
+
},
|
|
14956
|
+
on: {
|
|
14957
|
+
"click": _vm.confirmVoiceText
|
|
14958
|
+
}
|
|
14959
|
+
}, [_vm._v(_vm._s(_vm.$tx('ecmapp.wflowform.voiceFillOpinion', '填入意见')))])], 1)]);
|
|
14960
|
+
};
|
|
14961
|
+
var VoiceInputDialogvue_type_template_id_574b941f_scoped_true_staticRenderFns = [];
|
|
14962
|
+
|
|
14963
|
+
;// 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
|
|
14964
|
+
/* harmony default export */ var VoiceInputDialogvue_type_script_lang_js = ({
|
|
14965
|
+
name: 'VoiceInputDialog',
|
|
14966
|
+
props: {
|
|
14967
|
+
visible: {
|
|
14968
|
+
type: Boolean,
|
|
14969
|
+
default: false
|
|
14970
|
+
}
|
|
14971
|
+
},
|
|
14972
|
+
data: function data() {
|
|
14973
|
+
return {
|
|
14974
|
+
i18npkg: 'ecmapp',
|
|
14975
|
+
moduleCode: 'wflowform',
|
|
14976
|
+
status: 'idle',
|
|
14977
|
+
// idle:待录音 recording:录音中 processing:识别中(仅后端模式) done:识别完成 error:出错
|
|
14978
|
+
errorText: '',
|
|
14979
|
+
resultText: '',
|
|
14980
|
+
finalText: '',
|
|
14981
|
+
// 浏览器模式已确认的识别文本
|
|
14982
|
+
seconds: 0,
|
|
14983
|
+
timer: null,
|
|
14984
|
+
recognition: null,
|
|
14985
|
+
// 浏览器语音识别实例
|
|
14986
|
+
mediaRecorder: null,
|
|
14987
|
+
// 后端模式录音实例
|
|
14988
|
+
stream: null,
|
|
14989
|
+
// 麦克风音频流
|
|
14990
|
+
audioChunks: [],
|
|
14991
|
+
audioContext: null,
|
|
14992
|
+
// 波形绘制音频上下文
|
|
14993
|
+
analyser: null,
|
|
14994
|
+
// 波形分析节点
|
|
14995
|
+
visualStream: null,
|
|
14996
|
+
// 浏览器模式下专供波形绘制的音频流
|
|
14997
|
+
waveRafId: null
|
|
14998
|
+
};
|
|
14999
|
+
},
|
|
15000
|
+
computed: {
|
|
15001
|
+
dialogVisible: {
|
|
15002
|
+
get: function get() {
|
|
15003
|
+
return this.visible;
|
|
15004
|
+
},
|
|
15005
|
+
set: function set(val) {
|
|
15006
|
+
this.$emit('update:visible', val);
|
|
15007
|
+
}
|
|
15008
|
+
},
|
|
15009
|
+
// window.voiceToWord为非空字符串且不为browser时,视为后端转写接口URL
|
|
15010
|
+
backendUrl: function backendUrl() {
|
|
15011
|
+
var voiceToWord = window.voiceToWord;
|
|
15012
|
+
return voiceToWord && typeof voiceToWord === 'string' && voiceToWord !== 'browser' ? voiceToWord : '';
|
|
15013
|
+
},
|
|
15014
|
+
statusText: function statusText() {
|
|
15015
|
+
switch (this.status) {
|
|
15016
|
+
case 'recording':
|
|
15017
|
+
return this.$tx('ecmapp.wflowform.voiceRecording', '正在聆听,请说话…');
|
|
15018
|
+
case 'processing':
|
|
15019
|
+
return this.$tx('ecmapp.wflowform.voiceProcessing', '识别中…');
|
|
15020
|
+
case 'done':
|
|
15021
|
+
return this.$tx('ecmapp.wflowform.voiceDone', '识别完成,可修改后填入。');
|
|
15022
|
+
case 'error':
|
|
15023
|
+
return this.errorText;
|
|
15024
|
+
default:
|
|
15025
|
+
return this.$tx('ecmapp.wflowform.voiceIdle', '点击麦克风开始说话');
|
|
15026
|
+
}
|
|
15027
|
+
},
|
|
15028
|
+
timerText: function timerText() {
|
|
15029
|
+
var min = Math.floor(this.seconds / 60);
|
|
15030
|
+
var sec = this.seconds % 60;
|
|
15031
|
+
return (min < 10 ? '0' + min : min) + ':' + (sec < 10 ? '0' + sec : sec);
|
|
15032
|
+
}
|
|
15033
|
+
},
|
|
15034
|
+
watch: {
|
|
15035
|
+
visible: function visible(val) {
|
|
15036
|
+
if (val) {
|
|
15037
|
+
this.resetState();
|
|
15038
|
+
this.preRequestPermission();
|
|
15039
|
+
}
|
|
15040
|
+
}
|
|
15041
|
+
},
|
|
15042
|
+
beforeDestroy: function beforeDestroy() {
|
|
15043
|
+
this.releaseResources();
|
|
15044
|
+
},
|
|
15045
|
+
methods: {
|
|
15046
|
+
resetState: function resetState() {
|
|
15047
|
+
this.status = 'idle';
|
|
15048
|
+
this.errorText = '';
|
|
15049
|
+
this.resultText = '';
|
|
15050
|
+
this.finalText = '';
|
|
15051
|
+
this.seconds = 0;
|
|
15052
|
+
this.audioChunks = [];
|
|
15053
|
+
},
|
|
15054
|
+
// 打开弹窗即预请求麦克风权限,被拒绝时显示引导文案
|
|
15055
|
+
preRequestPermission: function preRequestPermission() {
|
|
15056
|
+
var _this = this;
|
|
15057
|
+
if (navigator.mediaDevices && navigator.mediaDevices.getUserMedia) {
|
|
15058
|
+
navigator.mediaDevices.getUserMedia({
|
|
15059
|
+
audio: true
|
|
15060
|
+
}).then(function (stream) {
|
|
15061
|
+
stream.getTracks().forEach(function (track) {
|
|
15062
|
+
return track.stop();
|
|
15063
|
+
});
|
|
15064
|
+
}).catch(function () {
|
|
15065
|
+
_this.showPermissionError();
|
|
15066
|
+
});
|
|
15067
|
+
}
|
|
15068
|
+
},
|
|
15069
|
+
showPermissionError: function showPermissionError() {
|
|
15070
|
+
this.status = 'error';
|
|
15071
|
+
this.errorText = this.$tx('ecmapp.wflowform.voiceNoPermission', '请在浏览器设置中允许使用麦克风后重试。');
|
|
15072
|
+
},
|
|
15073
|
+
toggleRecord: function toggleRecord() {
|
|
15074
|
+
if (this.status === 'processing') return;
|
|
15075
|
+
if (this.status === 'recording') {
|
|
15076
|
+
this.stopRecord();
|
|
15077
|
+
} else {
|
|
15078
|
+
this.startRecord();
|
|
15079
|
+
}
|
|
15080
|
+
},
|
|
15081
|
+
startRecord: function startRecord() {
|
|
15082
|
+
this.resultText = '';
|
|
15083
|
+
this.finalText = '';
|
|
15084
|
+
if (this.backendUrl) {
|
|
15085
|
+
this.startBackendRecord();
|
|
15086
|
+
} else {
|
|
15087
|
+
this.startBrowserRecognition();
|
|
15088
|
+
}
|
|
15089
|
+
},
|
|
15090
|
+
stopRecord: function stopRecord() {
|
|
15091
|
+
this.stopTimer();
|
|
15092
|
+
if (this.recognition) {
|
|
15093
|
+
this.recognition.stop();
|
|
15094
|
+
}
|
|
15095
|
+
if (this.mediaRecorder && this.mediaRecorder.state !== 'inactive') {
|
|
15096
|
+
this.mediaRecorder.stop();
|
|
15097
|
+
}
|
|
15098
|
+
},
|
|
15099
|
+
startTimer: function startTimer() {
|
|
15100
|
+
var _this2 = this;
|
|
15101
|
+
this.seconds = 0;
|
|
15102
|
+
this.timer = setInterval(function () {
|
|
15103
|
+
_this2.seconds++;
|
|
15104
|
+
}, 1000);
|
|
15105
|
+
},
|
|
15106
|
+
stopTimer: function stopTimer() {
|
|
15107
|
+
if (this.timer) {
|
|
15108
|
+
clearInterval(this.timer);
|
|
15109
|
+
this.timer = null;
|
|
15110
|
+
}
|
|
15111
|
+
},
|
|
15112
|
+
// 浏览器模式:Web Speech API直转文字,中间结果实时上屏
|
|
15113
|
+
startBrowserRecognition: function startBrowserRecognition() {
|
|
15114
|
+
var _this3 = this;
|
|
15115
|
+
var SpeechRecognition = window.SpeechRecognition || window.webkitSpeechRecognition;
|
|
15116
|
+
if (!SpeechRecognition) {
|
|
15117
|
+
this.status = 'error';
|
|
15118
|
+
this.errorText = this.$tx('ecmapp.wflowform.voiceNotSupport', '当前浏览器不支持语音识别。');
|
|
15119
|
+
return;
|
|
15120
|
+
}
|
|
15121
|
+
var recognition = new SpeechRecognition();
|
|
15122
|
+
recognition.lang = 'zh-CN';
|
|
15123
|
+
recognition.continuous = true;
|
|
15124
|
+
recognition.interimResults = true;
|
|
15125
|
+
recognition.onstart = function () {
|
|
15126
|
+
_this3.status = 'recording';
|
|
15127
|
+
_this3.startTimer();
|
|
15128
|
+
_this3.startVisualStream();
|
|
15129
|
+
};
|
|
15130
|
+
recognition.onresult = function (event) {
|
|
15131
|
+
var interimText = '';
|
|
15132
|
+
for (var i = event.resultIndex; i < event.results.length; i++) {
|
|
15133
|
+
if (event.results[i].isFinal) {
|
|
15134
|
+
_this3.finalText += event.results[i][0].transcript;
|
|
15135
|
+
} else {
|
|
15136
|
+
interimText += event.results[i][0].transcript;
|
|
15137
|
+
}
|
|
15138
|
+
}
|
|
15139
|
+
_this3.resultText = _this3.finalText + interimText;
|
|
15140
|
+
};
|
|
15141
|
+
recognition.onerror = function (event) {
|
|
15142
|
+
_this3.stopTimer();
|
|
15143
|
+
_this3.stopWaveform();
|
|
15144
|
+
if (event.error === 'not-allowed' || event.error === 'service-not-allowed') {
|
|
15145
|
+
_this3.showPermissionError();
|
|
15146
|
+
} else if (event.error === 'no-speech') {
|
|
15147
|
+
_this3.status = 'error';
|
|
15148
|
+
_this3.errorText = _this3.$tx('ecmapp.wflowform.voiceNoSpeech', '未检测到语音,请重试。');
|
|
15149
|
+
} else if (event.error !== 'aborted') {
|
|
15150
|
+
_this3.status = 'error';
|
|
15151
|
+
_this3.errorText = _this3.$tx('ecmapp.wflowform.voiceRecognizeFail', '语音识别失败,请重试。');
|
|
15152
|
+
}
|
|
15153
|
+
};
|
|
15154
|
+
recognition.onend = function () {
|
|
15155
|
+
_this3.stopTimer();
|
|
15156
|
+
_this3.stopWaveform();
|
|
15157
|
+
_this3.recognition = null;
|
|
15158
|
+
if (_this3.status === 'recording') {
|
|
15159
|
+
_this3.resultText = _this3.finalText;
|
|
15160
|
+
_this3.status = _this3.resultText.trim() !== '' ? 'done' : 'idle';
|
|
15161
|
+
}
|
|
15162
|
+
};
|
|
15163
|
+
this.recognition = recognition;
|
|
15164
|
+
recognition.start();
|
|
15165
|
+
},
|
|
15166
|
+
// 后端模式:录音→上传→转文字
|
|
15167
|
+
startBackendRecord: function startBackendRecord() {
|
|
15168
|
+
var _this4 = this;
|
|
15169
|
+
if (!(navigator.mediaDevices && navigator.mediaDevices.getUserMedia)) {
|
|
15170
|
+
this.status = 'error';
|
|
15171
|
+
this.errorText = this.$tx('ecmapp.wflowform.voiceNotSupport', '当前浏览器不支持语音识别。');
|
|
15172
|
+
return;
|
|
15173
|
+
}
|
|
15174
|
+
navigator.mediaDevices.getUserMedia({
|
|
15175
|
+
audio: true
|
|
15176
|
+
}).then(function (stream) {
|
|
15177
|
+
_this4.stream = stream;
|
|
15178
|
+
_this4.audioChunks = [];
|
|
15179
|
+
var mimeType = window.MediaRecorder && MediaRecorder.isTypeSupported('audio/webm;codecs=opus') ? 'audio/webm;codecs=opus' : '';
|
|
15180
|
+
var mediaRecorder = mimeType ? new MediaRecorder(stream, {
|
|
15181
|
+
mimeType: mimeType
|
|
15182
|
+
}) : new MediaRecorder(stream);
|
|
15183
|
+
mediaRecorder.ondataavailable = function (event) {
|
|
15184
|
+
if (event.data && event.data.size > 0) {
|
|
15185
|
+
_this4.audioChunks.push(event.data);
|
|
15186
|
+
}
|
|
15187
|
+
};
|
|
15188
|
+
mediaRecorder.onstart = function () {
|
|
15189
|
+
_this4.status = 'recording';
|
|
15190
|
+
_this4.startTimer();
|
|
15191
|
+
_this4.startWaveform(stream);
|
|
15192
|
+
};
|
|
15193
|
+
mediaRecorder.onstop = function () {
|
|
15194
|
+
_this4.stopTimer();
|
|
15195
|
+
_this4.stopWaveform();
|
|
15196
|
+
_this4.releaseStream();
|
|
15197
|
+
_this4.mediaRecorder = null;
|
|
15198
|
+
// 弹窗已关闭(取消录音)则不再上传
|
|
15199
|
+
if (_this4.visible && _this4.audioChunks.length > 0) {
|
|
15200
|
+
_this4.uploadVoice();
|
|
15201
|
+
}
|
|
15202
|
+
};
|
|
15203
|
+
_this4.mediaRecorder = mediaRecorder;
|
|
15204
|
+
mediaRecorder.start();
|
|
15205
|
+
}).catch(function () {
|
|
15206
|
+
_this4.showPermissionError();
|
|
15207
|
+
});
|
|
15208
|
+
},
|
|
15209
|
+
uploadVoice: function uploadVoice() {
|
|
15210
|
+
var _this5 = this;
|
|
15211
|
+
this.status = 'processing';
|
|
15212
|
+
var voiceBlob = new Blob(this.audioChunks, {
|
|
15213
|
+
type: this.audioChunks[0].type || 'audio/webm'
|
|
15214
|
+
});
|
|
15215
|
+
var formData = new FormData();
|
|
15216
|
+
formData.append('voiceFile', voiceBlob, 'voice.webm');
|
|
15217
|
+
formData.append('format', 'webm');
|
|
15218
|
+
formData.append('lang', 'zh-CN');
|
|
15219
|
+
this.$http({
|
|
15220
|
+
method: 'POST',
|
|
15221
|
+
url: this.backendUrl,
|
|
15222
|
+
headers: {
|
|
15223
|
+
'Content-Type': 'multipart/form-data'
|
|
15224
|
+
},
|
|
15225
|
+
data: formData
|
|
15226
|
+
}).then(function (res) {
|
|
15227
|
+
if (res.code === 'success') {
|
|
15228
|
+
_this5.resultText = res.body && res.body.text || '';
|
|
15229
|
+
_this5.status = _this5.resultText.trim() !== '' ? 'done' : 'error';
|
|
15230
|
+
if (_this5.status === 'error') {
|
|
15231
|
+
_this5.errorText = _this5.$tx('ecmapp.wflowform.voiceNoSpeech', '未检测到语音,请重试。');
|
|
15232
|
+
}
|
|
15233
|
+
} else {
|
|
15234
|
+
_this5.status = 'error';
|
|
15235
|
+
_this5.errorText = res.message || _this5.$tx('ecmapp.wflowform.voiceRecognizeFail', '语音识别失败,请重试。');
|
|
15236
|
+
}
|
|
15237
|
+
}).catch(function () {
|
|
15238
|
+
_this5.status = 'error';
|
|
15239
|
+
_this5.errorText = _this5.$tx('ecmapp.wflowform.voiceRecognizeFail', '语音识别失败,请重试。');
|
|
15240
|
+
});
|
|
15241
|
+
},
|
|
15242
|
+
releaseStream: function releaseStream() {
|
|
15243
|
+
if (this.stream) {
|
|
15244
|
+
this.stream.getTracks().forEach(function (track) {
|
|
15245
|
+
return track.stop();
|
|
15246
|
+
});
|
|
15247
|
+
this.stream = null;
|
|
15248
|
+
}
|
|
15249
|
+
},
|
|
15250
|
+
// 浏览器模式下SpeechRecognition不暴露音频流,单独取一路流用于波形绘制
|
|
15251
|
+
startVisualStream: function startVisualStream() {
|
|
15252
|
+
var _this6 = this;
|
|
15253
|
+
if (!(navigator.mediaDevices && navigator.mediaDevices.getUserMedia)) return;
|
|
15254
|
+
navigator.mediaDevices.getUserMedia({
|
|
15255
|
+
audio: true
|
|
15256
|
+
}).then(function (stream) {
|
|
15257
|
+
// 取流回来时录音可能已结束
|
|
15258
|
+
if (_this6.status !== 'recording') {
|
|
15259
|
+
stream.getTracks().forEach(function (track) {
|
|
15260
|
+
return track.stop();
|
|
15261
|
+
});
|
|
15262
|
+
return;
|
|
15263
|
+
}
|
|
15264
|
+
_this6.visualStream = stream;
|
|
15265
|
+
_this6.startWaveform(stream);
|
|
15266
|
+
}).catch(function () {});
|
|
15267
|
+
},
|
|
15268
|
+
// 用AnalyserNode实时绘制录音波形柱状图
|
|
15269
|
+
startWaveform: function startWaveform(stream) {
|
|
15270
|
+
var _this7 = this;
|
|
15271
|
+
var AudioContextClass = window.AudioContext || window.webkitAudioContext;
|
|
15272
|
+
var canvas = this.$refs.waveCanvas;
|
|
15273
|
+
if (!AudioContextClass || !canvas) return;
|
|
15274
|
+
var audioContext = new AudioContextClass();
|
|
15275
|
+
var analyser = audioContext.createAnalyser();
|
|
15276
|
+
analyser.fftSize = 128;
|
|
15277
|
+
audioContext.createMediaStreamSource(stream).connect(analyser);
|
|
15278
|
+
this.audioContext = audioContext;
|
|
15279
|
+
this.analyser = analyser;
|
|
15280
|
+
var dpr = window.devicePixelRatio || 1;
|
|
15281
|
+
canvas.width = canvas.clientWidth * dpr;
|
|
15282
|
+
canvas.height = canvas.clientHeight * dpr;
|
|
15283
|
+
var ctx = canvas.getContext('2d');
|
|
15284
|
+
var dataArray = new Uint8Array(analyser.frequencyBinCount);
|
|
15285
|
+
var barCount = 32;
|
|
15286
|
+
var gap = 2 * dpr;
|
|
15287
|
+
var barWidth = (canvas.width - gap * (barCount - 1)) / barCount;
|
|
15288
|
+
var centerY = canvas.height / 2;
|
|
15289
|
+
var draw = function draw() {
|
|
15290
|
+
if (!_this7.analyser) return;
|
|
15291
|
+
_this7.waveRafId = requestAnimationFrame(draw);
|
|
15292
|
+
_this7.analyser.getByteFrequencyData(dataArray);
|
|
15293
|
+
ctx.clearRect(0, 0, canvas.width, canvas.height);
|
|
15294
|
+
ctx.fillStyle = '#1989fa';
|
|
15295
|
+
for (var i = 0; i < barCount; i++) {
|
|
15296
|
+
var value = dataArray[Math.floor(i * dataArray.length / barCount)] / 255;
|
|
15297
|
+
var barHeight = Math.max(2 * dpr, value * canvas.height);
|
|
15298
|
+
var x = i * (barWidth + gap);
|
|
15299
|
+
ctx.fillRect(x, centerY - barHeight / 2, barWidth, barHeight);
|
|
15300
|
+
}
|
|
15301
|
+
};
|
|
15302
|
+
draw();
|
|
15303
|
+
},
|
|
15304
|
+
stopWaveform: function stopWaveform() {
|
|
15305
|
+
if (this.waveRafId) {
|
|
15306
|
+
cancelAnimationFrame(this.waveRafId);
|
|
15307
|
+
this.waveRafId = null;
|
|
15308
|
+
}
|
|
15309
|
+
if (this.audioContext) {
|
|
15310
|
+
this.audioContext.close().catch(function () {});
|
|
15311
|
+
this.audioContext = null;
|
|
15312
|
+
}
|
|
15313
|
+
this.analyser = null;
|
|
15314
|
+
if (this.visualStream) {
|
|
15315
|
+
this.visualStream.getTracks().forEach(function (track) {
|
|
15316
|
+
return track.stop();
|
|
15317
|
+
});
|
|
15318
|
+
this.visualStream = null;
|
|
15319
|
+
}
|
|
15320
|
+
},
|
|
15321
|
+
// 关闭/取消时释放麦克风等资源
|
|
15322
|
+
releaseResources: function releaseResources() {
|
|
15323
|
+
this.stopTimer();
|
|
15324
|
+
this.stopWaveform();
|
|
15325
|
+
if (this.recognition) {
|
|
15326
|
+
this.recognition.abort();
|
|
15327
|
+
this.recognition = null;
|
|
15328
|
+
}
|
|
15329
|
+
if (this.mediaRecorder && this.mediaRecorder.state !== 'inactive') {
|
|
15330
|
+
this.mediaRecorder.stop();
|
|
15331
|
+
}
|
|
15332
|
+
this.mediaRecorder = null;
|
|
15333
|
+
this.releaseStream();
|
|
15334
|
+
},
|
|
15335
|
+
onPopupClosed: function onPopupClosed() {
|
|
15336
|
+
this.releaseResources();
|
|
15337
|
+
},
|
|
15338
|
+
confirmVoiceText: function confirmVoiceText() {
|
|
15339
|
+
var text = this.resultText.trim();
|
|
15340
|
+
if (text === '') return;
|
|
15341
|
+
this.$emit('confirm', text);
|
|
15342
|
+
this.dialogVisible = false;
|
|
15343
|
+
}
|
|
15344
|
+
}
|
|
15345
|
+
});
|
|
15346
|
+
;// CONCATENATED MODULE: ./packages/ecmapp/Wflowform/src/VoiceInputDialog.vue?vue&type=script&lang=js
|
|
15347
|
+
/* harmony default export */ var src_VoiceInputDialogvue_type_script_lang_js = (VoiceInputDialogvue_type_script_lang_js);
|
|
15348
|
+
// 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=574b941f&prod&scoped=true&lang=scss
|
|
15349
|
+
var VoiceInputDialogvue_type_style_index_0_id_574b941f_prod_scoped_true_lang_scss = __webpack_require__(7798);
|
|
15350
|
+
;// CONCATENATED MODULE: ./packages/ecmapp/Wflowform/src/VoiceInputDialog.vue?vue&type=style&index=0&id=574b941f&prod&scoped=true&lang=scss
|
|
15351
|
+
|
|
15352
|
+
;// CONCATENATED MODULE: ./packages/ecmapp/Wflowform/src/VoiceInputDialog.vue
|
|
15353
|
+
|
|
15354
|
+
|
|
15355
|
+
|
|
15356
|
+
;
|
|
15357
|
+
|
|
15358
|
+
|
|
15359
|
+
/* normalize component */
|
|
15360
|
+
|
|
15361
|
+
var VoiceInputDialog_component = (0,componentNormalizer/* default */.A)(
|
|
15362
|
+
src_VoiceInputDialogvue_type_script_lang_js,
|
|
15363
|
+
VoiceInputDialogvue_type_template_id_574b941f_scoped_true_render,
|
|
15364
|
+
VoiceInputDialogvue_type_template_id_574b941f_scoped_true_staticRenderFns,
|
|
15365
|
+
false,
|
|
15366
|
+
null,
|
|
15367
|
+
"574b941f",
|
|
15368
|
+
null
|
|
15369
|
+
|
|
15370
|
+
)
|
|
15371
|
+
|
|
15372
|
+
/* harmony default export */ var VoiceInputDialog = (VoiceInputDialog_component.exports);
|
|
14801
15373
|
;// 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/SubmitHandle.vue?vue&type=script&lang=js
|
|
14802
15374
|
function SubmitHandlevue_type_script_lang_js_typeof(o) { "@babel/helpers - typeof"; return SubmitHandlevue_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; }, SubmitHandlevue_type_script_lang_js_typeof(o); }
|
|
14803
15375
|
var moment = __webpack_require__(5093);
|
|
14804
15376
|
|
|
15377
|
+
|
|
14805
15378
|
/* harmony default export */ var SubmitHandlevue_type_script_lang_js = ({
|
|
14806
15379
|
name: 'SubmitHandle',
|
|
14807
15380
|
components: {
|
|
14808
|
-
WfTaskNode: WfTaskNode
|
|
15381
|
+
WfTaskNode: WfTaskNode,
|
|
15382
|
+
VoiceInputDialog: VoiceInputDialog
|
|
14809
15383
|
},
|
|
14810
15384
|
props: {
|
|
14811
15385
|
curTN: {
|
|
@@ -14939,7 +15513,11 @@ var moment = __webpack_require__(5093);
|
|
|
14939
15513
|
defaultNumber: 8,
|
|
14940
15514
|
// 超出默认展示两行(个数)
|
|
14941
15515
|
viewCommentsNum: 8,
|
|
14942
|
-
selectedUsersCount: {}
|
|
15516
|
+
selectedUsersCount: {},
|
|
15517
|
+
//节点已选择人数
|
|
15518
|
+
voiceDialogVisible: false,
|
|
15519
|
+
// 语音输入弹窗
|
|
15520
|
+
voiceInputEnabled: false // 当前环境是否支持语音输入
|
|
14943
15521
|
};
|
|
14944
15522
|
},
|
|
14945
15523
|
computed: {
|
|
@@ -14982,6 +15560,7 @@ var moment = __webpack_require__(5093);
|
|
|
14982
15560
|
},
|
|
14983
15561
|
created: function created() {
|
|
14984
15562
|
// this.setMargin()
|
|
15563
|
+
this.initVoiceInputEnabled();
|
|
14985
15564
|
this.$bus.on('initSubmitHandle', this.initSubmitHandle);
|
|
14986
15565
|
},
|
|
14987
15566
|
beforeDestroy: function beforeDestroy() {
|
|
@@ -15008,6 +15587,26 @@ var moment = __webpack_require__(5093);
|
|
|
15008
15587
|
}
|
|
15009
15588
|
},
|
|
15010
15589
|
methods: {
|
|
15590
|
+
// 检测语音输入按钮可用性:未配置window.voiceToWord时需https/localhost安全上下文且浏览器支持Web Speech API,否则不显示按钮
|
|
15591
|
+
initVoiceInputEnabled: function initVoiceInputEnabled() {
|
|
15592
|
+
var voiceToWord = window.voiceToWord;
|
|
15593
|
+
if (voiceToWord && typeof voiceToWord === 'string' && voiceToWord !== 'browser') {
|
|
15594
|
+
// 后端接口转文字:需getUserMedia录音(同样仅安全上下文下可用)
|
|
15595
|
+
this.voiceInputEnabled = !!(navigator.mediaDevices && navigator.mediaDevices.getUserMedia);
|
|
15596
|
+
} else {
|
|
15597
|
+
// 浏览器直转文字:需安全上下文且支持SpeechRecognition
|
|
15598
|
+
this.voiceInputEnabled = window.isSecureContext === true && ('webkitSpeechRecognition' in window || 'SpeechRecognition' in window);
|
|
15599
|
+
}
|
|
15600
|
+
},
|
|
15601
|
+
openVoiceInput: function openVoiceInput() {
|
|
15602
|
+
this.voiceDialogVisible = true;
|
|
15603
|
+
},
|
|
15604
|
+
onVoiceConfirm: function onVoiceConfirm(text) {
|
|
15605
|
+
if (!text) return;
|
|
15606
|
+
var curUserIdea = this.submitHandle.curUserIdea;
|
|
15607
|
+
this.$set(this.submitHandle, 'curUserIdea', curUserIdea && curUserIdea.trim() !== '' ? curUserIdea + ' ' + text : text);
|
|
15608
|
+
this.$forceUpdate();
|
|
15609
|
+
},
|
|
15011
15610
|
// 计算边距
|
|
15012
15611
|
setMargin: function setMargin() {
|
|
15013
15612
|
var columnsNum = Math.floor((screen.width - 20) / 93); // 列数
|
|
@@ -15792,9 +16391,9 @@ var moment = __webpack_require__(5093);
|
|
|
15792
16391
|
});
|
|
15793
16392
|
;// CONCATENATED MODULE: ./packages/ecmapp/Wflowform/src/SubmitHandle.vue?vue&type=script&lang=js
|
|
15794
16393
|
/* harmony default export */ var src_SubmitHandlevue_type_script_lang_js = (SubmitHandlevue_type_script_lang_js);
|
|
15795
|
-
// 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=
|
|
15796
|
-
var
|
|
15797
|
-
;// CONCATENATED MODULE: ./packages/ecmapp/Wflowform/src/SubmitHandle.vue?vue&type=style&index=0&id=
|
|
16394
|
+
// 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=44733f4f&prod&scoped=true&lang=scss
|
|
16395
|
+
var SubmitHandlevue_type_style_index_0_id_44733f4f_prod_scoped_true_lang_scss = __webpack_require__(5099);
|
|
16396
|
+
;// CONCATENATED MODULE: ./packages/ecmapp/Wflowform/src/SubmitHandle.vue?vue&type=style&index=0&id=44733f4f&prod&scoped=true&lang=scss
|
|
15798
16397
|
|
|
15799
16398
|
;// CONCATENATED MODULE: ./packages/ecmapp/Wflowform/src/SubmitHandle.vue
|
|
15800
16399
|
|
|
@@ -15807,11 +16406,11 @@ var SubmitHandlevue_type_style_index_0_id_6451f4d6_prod_scoped_true_lang_scss =
|
|
|
15807
16406
|
|
|
15808
16407
|
var SubmitHandle_component = (0,componentNormalizer/* default */.A)(
|
|
15809
16408
|
src_SubmitHandlevue_type_script_lang_js,
|
|
15810
|
-
|
|
15811
|
-
|
|
16409
|
+
SubmitHandlevue_type_template_id_44733f4f_scoped_true_render,
|
|
16410
|
+
SubmitHandlevue_type_template_id_44733f4f_scoped_true_staticRenderFns,
|
|
15812
16411
|
false,
|
|
15813
16412
|
null,
|
|
15814
|
-
"
|
|
16413
|
+
"44733f4f",
|
|
15815
16414
|
null
|
|
15816
16415
|
|
|
15817
16416
|
)
|
|
@@ -22251,7 +22850,7 @@ ___CSS_LOADER_EXPORT___.push([module.id, ".submit-dialog-container[data-v-9c230b
|
|
|
22251
22850
|
|
|
22252
22851
|
/***/ }),
|
|
22253
22852
|
|
|
22254
|
-
/***/
|
|
22853
|
+
/***/ 9969:
|
|
22255
22854
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
22256
22855
|
|
|
22257
22856
|
"use strict";
|
|
@@ -22270,7 +22869,28 @@ var ___CSS_LOADER_URL_IMPORT_0___ = new URL(/* asset import */ __webpack_require
|
|
|
22270
22869
|
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()));
|
|
22271
22870
|
var ___CSS_LOADER_URL_REPLACEMENT_0___ = _node_modules_css_loader_dist_runtime_getUrl_js__WEBPACK_IMPORTED_MODULE_2___default()(___CSS_LOADER_URL_IMPORT_0___);
|
|
22272
22871
|
// Module
|
|
22273
|
-
___CSS_LOADER_EXPORT___.push([module.id, ".submit-handle-container .idea-button-container .van-cell__value[data-v-
|
|
22872
|
+
___CSS_LOADER_EXPORT___.push([module.id, ".submit-handle-container .idea-button-container .van-cell__value[data-v-44733f4f]{text-align:right}.submit-handle-container .idea-button-container .van-cell__value .van-button[data-v-44733f4f]{margin-right:0;margin-left:5px}.submit-handle-container .curIdea-filed[data-v-44733f4f] .van-cell__title,.submit-handle-container .curIdea-filed[data-v-44733f4f]:after{display:none}.submit-handle-container .idea-input-wrap[data-v-44733f4f]{position:relative}.submit-handle-container .idea-input-wrap[data-v-44733f4f] .curIdea-filed textarea{padding-right:30px}.submit-handle-container .idea-input-wrap .voice-input-btn[data-v-44733f4f]{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-44733f4f]{width:16px;height:16px}.submit-handle-container .idea-input-wrap .voice-input-btn[data-v-44733f4f]:active{background-color:#ebedf0;color:#1989fa}.submit-handle-container .clearfix[data-v-44733f4f]:after{content:\".\";display:block;height:0;clear:both;visibility:hidden}.submit-handle-container[data-v-44733f4f] .van-radio-group .van-cell__title{font-weight:400!important}.submit-handle-container .van-wflow-operate-detail-cell[data-v-44733f4f]:after{border-top-width:0}.submit-handle-container .van-wflow-operate-detail-cell-path[data-v-44733f4f]:after{border-width:1px;-webkit-transform:scale(.5);transform:scale(.5)}.submit-handle-container[data-v-44733f4f] .tnLimit-container .van-field{width:50px;display:inline-block;padding:0}.submit-handle-container[data-v-44733f4f] .tnLimit-container .van-field .van-field__body input{text-align:center}.submit-handle-container[data-v-44733f4f] .tnLimit-container .van-field__body:after{color:#323233;content:attr(value-suffix);word-break:keep-all}.submit-handle-container .delete-icon[data-v-44733f4f]{display:-webkit-box;display:-ms-flexbox;display:flex;float:right}.submit-handle-container .delete-icon .van-icon[data-v-44733f4f]{line-height:24px;margin-left:5px;font-size:16px}.selectBox_title[data-v-44733f4f]{height:45px;line-height:45px;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;font-size:14px}.selectBox_content[data-v-44733f4f],.selectBox_title[data-v-44733f4f]{display:-webkit-box;display:-ms-flexbox;display:flex;padding:0 15px}.selectBox_content[data-v-44733f4f]{-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-44733f4f]{border:1px solid #f1f1f1}.selectBox_content .selectBox_content_son[data-v-44733f4f],.selectBox_content .selectBox_content_son_change[data-v-44733f4f]{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-44733f4f]{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-44733f4f]{white-space:nowrap;overflow:hidden;overflow-x:scroll;-webkit-overflow-scrolling:touch}.selectBox_content_sonall[data-v-44733f4f]:nth-child(4n){margin-right:0}.selectBox_content_sonall[data-v-44733f4f]::-webkit-scrollbar{display:none}.viewAllComments[data-v-44733f4f]{height:45px;line-height:45px;text-align:center;color:#b7b7b7;font-size:12px;background:#fff;display:block;width:100%}", ""]);
|
|
22873
|
+
// Exports
|
|
22874
|
+
/* harmony default export */ __webpack_exports__["default"] = (___CSS_LOADER_EXPORT___);
|
|
22875
|
+
|
|
22876
|
+
|
|
22877
|
+
/***/ }),
|
|
22878
|
+
|
|
22879
|
+
/***/ 7456:
|
|
22880
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
22881
|
+
|
|
22882
|
+
"use strict";
|
|
22883
|
+
__webpack_require__.r(__webpack_exports__);
|
|
22884
|
+
/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1601);
|
|
22885
|
+
/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
|
|
22886
|
+
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6314);
|
|
22887
|
+
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
|
|
22888
|
+
// Imports
|
|
22889
|
+
|
|
22890
|
+
|
|
22891
|
+
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()));
|
|
22892
|
+
// Module
|
|
22893
|
+
___CSS_LOADER_EXPORT___.push([module.id, ".voice-input-popup[data-v-574b941f]{padding-bottom:constant(safe-area-inset-bottom);padding-bottom:env(safe-area-inset-bottom)}.voice-input-popup .voice-popup-header[data-v-574b941f]{position:relative;height:48px;line-height:48px;text-align:center}.voice-input-popup .voice-popup-header .voice-popup-title[data-v-574b941f]{font-size:16px;font-weight:600;color:#323233}.voice-input-popup .voice-popup-header .voice-popup-close[data-v-574b941f]{position:absolute;right:16px;top:16px;font-size:16px;color:#c8c9cc}.voice-input-popup .voice-popup-body[data-v-574b941f]{padding:8px 16px 0;text-align:center}.voice-input-popup .voice-popup-body .voice-mic-btn[data-v-574b941f]{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-574b941f]{width:28px;height:28px}.voice-input-popup .voice-popup-body .voice-mic-btn.recording[data-v-574b941f]{background-color:#ee0a24;-webkit-animation:voice-breathe-574b941f 1.5s ease-out infinite;animation:voice-breathe-574b941f 1.5s ease-out infinite}.voice-input-popup .voice-popup-body .voice-status-text[data-v-574b941f]{margin-top:12px;font-size:13px;color:#646566}.voice-input-popup .voice-popup-body .voice-status-text.is-error[data-v-574b941f]{color:#ee0a24}.voice-input-popup .voice-popup-body .voice-wave-canvas[data-v-574b941f]{display:block;width:200px;height:32px;margin:8px auto 0}.voice-input-popup .voice-popup-body .voice-timer[data-v-574b941f]{margin-top:4px;font-size:13px;color:#969799}.voice-input-popup .voice-popup-body .voice-result-field[data-v-574b941f]{margin-top:12px;background-color:#f7f8fa;border-radius:8px}.voice-input-popup .voice-popup-footer[data-v-574b941f]{padding:12px 16px;text-align:right}.voice-input-popup .voice-popup-footer .van-button[data-v-574b941f]{margin-left:8px;min-width:80px}@-webkit-keyframes voice-breathe-574b941f{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-574b941f{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)}}", ""]);
|
|
22274
22894
|
// Exports
|
|
22275
22895
|
/* harmony default export */ __webpack_exports__["default"] = (___CSS_LOADER_EXPORT___);
|
|
22276
22896
|
|
|
@@ -49902,19 +50522,35 @@ var update = add("780551c7", content, true, {"sourceMap":false,"shadowMode":fals
|
|
|
49902
50522
|
|
|
49903
50523
|
/***/ }),
|
|
49904
50524
|
|
|
49905
|
-
/***/
|
|
50525
|
+
/***/ 5099:
|
|
50526
|
+
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
|
|
50527
|
+
|
|
50528
|
+
// style-loader: Adds some css to the DOM by adding a <style> tag
|
|
50529
|
+
|
|
50530
|
+
// load the styles
|
|
50531
|
+
var content = __webpack_require__(9969);
|
|
50532
|
+
if(content.__esModule) content = content.default;
|
|
50533
|
+
if(typeof content === 'string') content = [[module.id, content, '']];
|
|
50534
|
+
if(content.locals) module.exports = content.locals;
|
|
50535
|
+
// add the styles to the DOM
|
|
50536
|
+
var add = (__webpack_require__(9548)/* ["default"] */ .A)
|
|
50537
|
+
var update = add("54a54a44", content, true, {"sourceMap":false,"shadowMode":false});
|
|
50538
|
+
|
|
50539
|
+
/***/ }),
|
|
50540
|
+
|
|
50541
|
+
/***/ 7798:
|
|
49906
50542
|
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
|
|
49907
50543
|
|
|
49908
50544
|
// style-loader: Adds some css to the DOM by adding a <style> tag
|
|
49909
50545
|
|
|
49910
50546
|
// load the styles
|
|
49911
|
-
var content = __webpack_require__(
|
|
50547
|
+
var content = __webpack_require__(7456);
|
|
49912
50548
|
if(content.__esModule) content = content.default;
|
|
49913
50549
|
if(typeof content === 'string') content = [[module.id, content, '']];
|
|
49914
50550
|
if(content.locals) module.exports = content.locals;
|
|
49915
50551
|
// add the styles to the DOM
|
|
49916
50552
|
var add = (__webpack_require__(9548)/* ["default"] */ .A)
|
|
49917
|
-
var update = add("
|
|
50553
|
+
var update = add("f83d333a", content, true, {"sourceMap":false,"shadowMode":false});
|
|
49918
50554
|
|
|
49919
50555
|
/***/ }),
|
|
49920
50556
|
|
|
@@ -72293,39 +72929,39 @@ var asyncComponents = [
|
|
|
72293
72929
|
}],
|
|
72294
72930
|
// ========== ecmapp/Wflowform 工作流表单子组件 → chunk: m-wflow-form ==========
|
|
72295
72931
|
['Attachment', function () {
|
|
72296
|
-
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__,
|
|
72932
|
+
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 2214)).then(function (m) {
|
|
72297
72933
|
return m.Attachment;
|
|
72298
72934
|
});
|
|
72299
72935
|
}], ['BodyFile', function () {
|
|
72300
|
-
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__,
|
|
72936
|
+
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 2214)).then(function (m) {
|
|
72301
72937
|
return m.BodyFile;
|
|
72302
72938
|
});
|
|
72303
72939
|
}], ['HandleIdea', function () {
|
|
72304
|
-
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__,
|
|
72940
|
+
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 2214)).then(function (m) {
|
|
72305
72941
|
return m.HandleIdea;
|
|
72306
72942
|
});
|
|
72307
72943
|
}], ['SelectOuterDeputy', function () {
|
|
72308
|
-
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__,
|
|
72944
|
+
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 2214)).then(function (m) {
|
|
72309
72945
|
return m.SelectOuterDeputy;
|
|
72310
72946
|
});
|
|
72311
72947
|
}], ['SubmitHandle', function () {
|
|
72312
|
-
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__,
|
|
72948
|
+
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 2214)).then(function (m) {
|
|
72313
72949
|
return m.SubmitHandle;
|
|
72314
72950
|
});
|
|
72315
72951
|
}], ['SubmitDialog', function () {
|
|
72316
|
-
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__,
|
|
72952
|
+
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 2214)).then(function (m) {
|
|
72317
72953
|
return m.SubmitDialog;
|
|
72318
72954
|
});
|
|
72319
72955
|
}], ['ShortcutProcessing', function () {
|
|
72320
|
-
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__,
|
|
72956
|
+
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 2214)).then(function (m) {
|
|
72321
72957
|
return m.ShortcutProcessing;
|
|
72322
72958
|
});
|
|
72323
72959
|
}], ['WfNodelogList', function () {
|
|
72324
|
-
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__,
|
|
72960
|
+
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 2214)).then(function (m) {
|
|
72325
72961
|
return m.WfNodelogList;
|
|
72326
72962
|
});
|
|
72327
72963
|
}], ['WriteToReadIdea', function () {
|
|
72328
|
-
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__,
|
|
72964
|
+
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 2214)).then(function (m) {
|
|
72329
72965
|
return m.WriteToReadIdea;
|
|
72330
72966
|
});
|
|
72331
72967
|
}]];
|
|
@@ -72378,7 +73014,7 @@ var WfengineModule = function WfengineModule() {
|
|
|
72378
73014
|
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 8838));
|
|
72379
73015
|
};
|
|
72380
73016
|
var WflowformModule = function WflowformModule() {
|
|
72381
|
-
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__,
|
|
73017
|
+
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 2214));
|
|
72382
73018
|
};
|
|
72383
73019
|
|
|
72384
73020
|
// ---------- 重型功能(PDF/富文本,仅特定页面使用) ----------
|