ecinc-cloud-mappaio 9.7.60 → 9.7.63
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 +42 -19
- package/lib/ecmappaio.umd.js +42 -19
- package/lib/ecmappaio.umd.min.js +1 -1
- package/package.json +1 -1
package/lib/ecmappaio.common.js
CHANGED
|
@@ -23524,7 +23524,7 @@ ___CSS_LOADER_EXPORT___.push([module.id, ".van-switch-field[data-v-61ed46da]{pos
|
|
|
23524
23524
|
|
|
23525
23525
|
/***/ }),
|
|
23526
23526
|
|
|
23527
|
-
/***/
|
|
23527
|
+
/***/ 9204:
|
|
23528
23528
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
23529
23529
|
|
|
23530
23530
|
"use strict";
|
|
@@ -23538,7 +23538,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
23538
23538
|
|
|
23539
23539
|
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()));
|
|
23540
23540
|
// Module
|
|
23541
|
-
___CSS_LOADER_EXPORT___.push([module.id, ".van-textarea-field[data-v-
|
|
23541
|
+
___CSS_LOADER_EXPORT___.push([module.id, ".van-textarea-field[data-v-6e9369e7]{position:relative}.van-textarea-field[data-v-6e9369e7] .van-field__label{width:90%!important}.van-textarea-field[data-v-6e9369e7]: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-6e9369e7]{width:100%;white-space:pre-wrap}.richtext-content[data-v-6e9369e7] img{-o-object-fit:contain;object-fit:contain;max-width:100%!important;height:auto!important}.richtext-content-hidden[data-v-6e9369e7]{overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-box-orient:vertical}.voice-input-entry[data-v-6e9369e7]{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-6e9369e7]{width:16px;height:16px;margin-right:4px}.voice-input-entry[data-v-6e9369e7]:active{opacity:.7}.van-textarea-field[data-v-6e9369e7] .field-flSubject .richtext-content,.van-textarea-field[data-v-6e9369e7] .field-flSubject textarea.van-field__control{font-size:16px;font-weight:700}", ""]);
|
|
23542
23542
|
// Exports
|
|
23543
23543
|
/* harmony default export */ __webpack_exports__["default"] = (___CSS_LOADER_EXPORT___);
|
|
23544
23544
|
|
|
@@ -51394,19 +51394,19 @@ var update = add("49a7cd0a", content, true, {"sourceMap":false,"shadowMode":fals
|
|
|
51394
51394
|
|
|
51395
51395
|
/***/ }),
|
|
51396
51396
|
|
|
51397
|
-
/***/
|
|
51397
|
+
/***/ 1578:
|
|
51398
51398
|
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
|
|
51399
51399
|
|
|
51400
51400
|
// style-loader: Adds some css to the DOM by adding a <style> tag
|
|
51401
51401
|
|
|
51402
51402
|
// load the styles
|
|
51403
|
-
var content = __webpack_require__(
|
|
51403
|
+
var content = __webpack_require__(9204);
|
|
51404
51404
|
if(content.__esModule) content = content.default;
|
|
51405
51405
|
if(typeof content === 'string') content = [[module.id, content, '']];
|
|
51406
51406
|
if(content.locals) module.exports = content.locals;
|
|
51407
51407
|
// add the styles to the DOM
|
|
51408
51408
|
var add = (__webpack_require__(9548)/* ["default"] */ .A)
|
|
51409
|
-
var update = add("
|
|
51409
|
+
var update = add("70f0078e", content, true, {"sourceMap":false,"shadowMode":false});
|
|
51410
51410
|
|
|
51411
51411
|
/***/ }),
|
|
51412
51412
|
|
|
@@ -72249,8 +72249,8 @@ var SwitchField_component = (0,componentNormalizer/* default */.A)(
|
|
|
72249
72249
|
)
|
|
72250
72250
|
|
|
72251
72251
|
/* harmony default export */ var SwitchField = (SwitchField_component.exports);
|
|
72252
|
-
;// 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=
|
|
72253
|
-
var
|
|
72252
|
+
;// 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=6e9369e7&scoped=true
|
|
72253
|
+
var TextareaFieldvue_type_template_id_6e9369e7_scoped_true_render = function render() {
|
|
72254
72254
|
var _vm = this,
|
|
72255
72255
|
_c = _vm._self._c;
|
|
72256
72256
|
return _vm.isShowField ? _c('div', {
|
|
@@ -72378,7 +72378,7 @@ var TextareaFieldvue_type_template_id_27eb631a_scoped_true_render = function ren
|
|
|
72378
72378
|
}
|
|
72379
72379
|
})], 1) : _vm._e();
|
|
72380
72380
|
};
|
|
72381
|
-
var
|
|
72381
|
+
var TextareaFieldvue_type_template_id_6e9369e7_scoped_true_staticRenderFns = [];
|
|
72382
72382
|
|
|
72383
72383
|
;// 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
|
|
72384
72384
|
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); }
|
|
@@ -72460,13 +72460,14 @@ function TextareaFieldvue_type_script_lang_js_toPrimitive(t, r) { if ("object" !
|
|
|
72460
72460
|
updateField: false,
|
|
72461
72461
|
inputValue: '',
|
|
72462
72462
|
nodeFieldReadOnly: false,
|
|
72463
|
-
voiceDialogVisible: false
|
|
72463
|
+
voiceDialogVisible: false,
|
|
72464
|
+
voiceEnvSupported: false // 当前环境是否支持语音输入
|
|
72464
72465
|
};
|
|
72465
72466
|
},
|
|
72466
72467
|
computed: TextareaFieldvue_type_script_lang_js_objectSpread(TextareaFieldvue_type_script_lang_js_objectSpread({}, (0,vuex_esm/* mapGetters */.L8)(['loginUser'])), {}, {
|
|
72467
|
-
// 语音输入按钮显示条件:voice-input属性为true
|
|
72468
|
+
// 语音输入按钮显示条件:voice-input属性为true、字段可编辑、非元素级只读且当前环境支持语音输入
|
|
72468
72469
|
voiceInputEnabled: function voiceInputEnabled() {
|
|
72469
|
-
return this.voiceInput && !this.readonly && !this.nodeFieldReadOnly && this.elementReadonly !== 1;
|
|
72470
|
+
return this.voiceInput && !this.readonly && !this.nodeFieldReadOnly && this.elementReadonly !== 1 && this.voiceEnvSupported;
|
|
72470
72471
|
},
|
|
72471
72472
|
optionGenerateUrl: function optionGenerateUrl() {
|
|
72472
72473
|
var _this2 = this;
|
|
@@ -72529,6 +72530,7 @@ function TextareaFieldvue_type_script_lang_js_toPrimitive(t, r) { if ("object" !
|
|
|
72529
72530
|
}
|
|
72530
72531
|
}
|
|
72531
72532
|
this.nodeFieldReadOnly = this.readonly;
|
|
72533
|
+
this.initVoiceInputEnabled();
|
|
72532
72534
|
},
|
|
72533
72535
|
beforeDestroy: function beforeDestroy() {
|
|
72534
72536
|
this.fieldDom.removeEventListener('change', this.initVerify);
|
|
@@ -72781,12 +72783,33 @@ function TextareaFieldvue_type_script_lang_js_toPrimitive(t, r) { if ("object" !
|
|
|
72781
72783
|
_this6.updateField = false;
|
|
72782
72784
|
});
|
|
72783
72785
|
},
|
|
72784
|
-
//
|
|
72786
|
+
// 检测语音输入按钮可用性:未配置window.voiceToWord时需https/localhost安全上下文且浏览器支持Web Speech API,否则不显示按钮
|
|
72787
|
+
// 后端转写时window.voiceToWord配置为'/voice/recognize/toText',由网关路由到eccloud-clientms
|
|
72788
|
+
initVoiceInputEnabled: function initVoiceInputEnabled() {
|
|
72789
|
+
var voiceToWord = window.voiceToWord;
|
|
72790
|
+
if (voiceToWord && typeof voiceToWord === 'string' && voiceToWord !== 'browser') {
|
|
72791
|
+
// 后端接口转文字:需getUserMedia录音(同样仅安全上下文下可用)
|
|
72792
|
+
this.voiceEnvSupported = !!(navigator.mediaDevices && navigator.mediaDevices.getUserMedia) || window.mappType === 'ecinc';
|
|
72793
|
+
} else {
|
|
72794
|
+
// 浏览器直转文字:需安全上下文且支持SpeechRecognition
|
|
72795
|
+
this.voiceEnvSupported = window.isSecureContext === true && ('webkitSpeechRecognition' in window || 'SpeechRecognition' in window);
|
|
72796
|
+
}
|
|
72797
|
+
},
|
|
72798
|
+
// 打开语音输入弹窗:安全上下文下打开弹窗,易臣客户端WebView下走原生录音识别,识别结果经window.voiceInputCallback回写
|
|
72785
72799
|
openVoiceDialog: function openVoiceDialog() {
|
|
72786
|
-
|
|
72800
|
+
var _this7 = this;
|
|
72801
|
+
if (window.isSecureContext) {
|
|
72802
|
+
this.voiceDialogVisible = true;
|
|
72803
|
+
} else if (window.mappType === 'ecinc') {
|
|
72804
|
+
window.voiceInputCallback = function (text) {
|
|
72805
|
+
return _this7.onVoiceConfirm(text);
|
|
72806
|
+
};
|
|
72807
|
+
this.$wv.streamRecordRecognize('voiceInputCallback');
|
|
72808
|
+
}
|
|
72787
72809
|
},
|
|
72788
72810
|
// 语音识别完成回调:识别文本追加到现有内容末尾,同步更新字段值
|
|
72789
72811
|
onVoiceConfirm: function onVoiceConfirm(text) {
|
|
72812
|
+
if (!text) return;
|
|
72790
72813
|
this.inputValue = this.inputValue ? this.inputValue + text : text;
|
|
72791
72814
|
this.setFieldValue(this.inputValue);
|
|
72792
72815
|
},
|
|
@@ -72817,9 +72840,9 @@ function TextareaFieldvue_type_script_lang_js_toPrimitive(t, r) { if ("object" !
|
|
|
72817
72840
|
});
|
|
72818
72841
|
;// CONCATENATED MODULE: ./packages/ecmapp/Basicform/src/FormField/TextareaField.vue?vue&type=script&lang=js
|
|
72819
72842
|
/* harmony default export */ var FormField_TextareaFieldvue_type_script_lang_js = (TextareaFieldvue_type_script_lang_js);
|
|
72820
|
-
// 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=
|
|
72821
|
-
var
|
|
72822
|
-
;// CONCATENATED MODULE: ./packages/ecmapp/Basicform/src/FormField/TextareaField.vue?vue&type=style&index=0&id=
|
|
72843
|
+
// 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=6e9369e7&prod&scoped=true&lang=scss
|
|
72844
|
+
var TextareaFieldvue_type_style_index_0_id_6e9369e7_prod_scoped_true_lang_scss = __webpack_require__(1578);
|
|
72845
|
+
;// CONCATENATED MODULE: ./packages/ecmapp/Basicform/src/FormField/TextareaField.vue?vue&type=style&index=0&id=6e9369e7&prod&scoped=true&lang=scss
|
|
72823
72846
|
|
|
72824
72847
|
;// CONCATENATED MODULE: ./packages/ecmapp/Basicform/src/FormField/TextareaField.vue
|
|
72825
72848
|
|
|
@@ -72832,11 +72855,11 @@ var TextareaFieldvue_type_style_index_0_id_27eb631a_prod_scoped_true_lang_scss =
|
|
|
72832
72855
|
|
|
72833
72856
|
var TextareaField_component = (0,componentNormalizer/* default */.A)(
|
|
72834
72857
|
FormField_TextareaFieldvue_type_script_lang_js,
|
|
72835
|
-
|
|
72836
|
-
|
|
72858
|
+
TextareaFieldvue_type_template_id_6e9369e7_scoped_true_render,
|
|
72859
|
+
TextareaFieldvue_type_template_id_6e9369e7_scoped_true_staticRenderFns,
|
|
72837
72860
|
false,
|
|
72838
72861
|
null,
|
|
72839
|
-
"
|
|
72862
|
+
"6e9369e7",
|
|
72840
72863
|
null
|
|
72841
72864
|
|
|
72842
72865
|
)
|
package/lib/ecmappaio.umd.js
CHANGED
|
@@ -23534,7 +23534,7 @@ ___CSS_LOADER_EXPORT___.push([module.id, ".van-switch-field[data-v-61ed46da]{pos
|
|
|
23534
23534
|
|
|
23535
23535
|
/***/ }),
|
|
23536
23536
|
|
|
23537
|
-
/***/
|
|
23537
|
+
/***/ 5598:
|
|
23538
23538
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
23539
23539
|
|
|
23540
23540
|
"use strict";
|
|
@@ -23548,7 +23548,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
23548
23548
|
|
|
23549
23549
|
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()));
|
|
23550
23550
|
// Module
|
|
23551
|
-
___CSS_LOADER_EXPORT___.push([module.id, ".van-textarea-field[data-v-
|
|
23551
|
+
___CSS_LOADER_EXPORT___.push([module.id, ".van-textarea-field[data-v-6e9369e7]{position:relative}.van-textarea-field[data-v-6e9369e7] .van-field__label{width:90%!important}.van-textarea-field[data-v-6e9369e7]: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-6e9369e7]{width:100%;white-space:pre-wrap}.richtext-content[data-v-6e9369e7] img{-o-object-fit:contain;object-fit:contain;max-width:100%!important;height:auto!important}.richtext-content-hidden[data-v-6e9369e7]{overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-box-orient:vertical}.voice-input-entry[data-v-6e9369e7]{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-6e9369e7]{width:16px;height:16px;margin-right:4px}.voice-input-entry[data-v-6e9369e7]:active{opacity:.7}.van-textarea-field[data-v-6e9369e7] .field-flSubject .richtext-content,.van-textarea-field[data-v-6e9369e7] .field-flSubject textarea.van-field__control{font-size:16px;font-weight:700}", ""]);
|
|
23552
23552
|
// Exports
|
|
23553
23553
|
/* harmony default export */ __webpack_exports__["default"] = (___CSS_LOADER_EXPORT___);
|
|
23554
23554
|
|
|
@@ -51404,19 +51404,19 @@ var update = add("72d06f4a", content, true, {"sourceMap":false,"shadowMode":fals
|
|
|
51404
51404
|
|
|
51405
51405
|
/***/ }),
|
|
51406
51406
|
|
|
51407
|
-
/***/
|
|
51407
|
+
/***/ 2908:
|
|
51408
51408
|
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
|
|
51409
51409
|
|
|
51410
51410
|
// style-loader: Adds some css to the DOM by adding a <style> tag
|
|
51411
51411
|
|
|
51412
51412
|
// load the styles
|
|
51413
|
-
var content = __webpack_require__(
|
|
51413
|
+
var content = __webpack_require__(5598);
|
|
51414
51414
|
if(content.__esModule) content = content.default;
|
|
51415
51415
|
if(typeof content === 'string') content = [[module.id, content, '']];
|
|
51416
51416
|
if(content.locals) module.exports = content.locals;
|
|
51417
51417
|
// add the styles to the DOM
|
|
51418
51418
|
var add = (__webpack_require__(9548)/* ["default"] */ .A)
|
|
51419
|
-
var update = add("
|
|
51419
|
+
var update = add("0b157e79", content, true, {"sourceMap":false,"shadowMode":false});
|
|
51420
51420
|
|
|
51421
51421
|
/***/ }),
|
|
51422
51422
|
|
|
@@ -72267,8 +72267,8 @@ var SwitchField_component = (0,componentNormalizer/* default */.A)(
|
|
|
72267
72267
|
)
|
|
72268
72268
|
|
|
72269
72269
|
/* harmony default export */ var SwitchField = (SwitchField_component.exports);
|
|
72270
|
-
;// CONCATENATED MODULE: ./node_modules/babel-loader/lib/index.js??clonedRuleSet-83.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=
|
|
72271
|
-
var
|
|
72270
|
+
;// CONCATENATED MODULE: ./node_modules/babel-loader/lib/index.js??clonedRuleSet-83.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=6e9369e7&scoped=true
|
|
72271
|
+
var TextareaFieldvue_type_template_id_6e9369e7_scoped_true_render = function render() {
|
|
72272
72272
|
var _vm = this,
|
|
72273
72273
|
_c = _vm._self._c;
|
|
72274
72274
|
return _vm.isShowField ? _c('div', {
|
|
@@ -72396,7 +72396,7 @@ var TextareaFieldvue_type_template_id_27eb631a_scoped_true_render = function ren
|
|
|
72396
72396
|
}
|
|
72397
72397
|
})], 1) : _vm._e();
|
|
72398
72398
|
};
|
|
72399
|
-
var
|
|
72399
|
+
var TextareaFieldvue_type_template_id_6e9369e7_scoped_true_staticRenderFns = [];
|
|
72400
72400
|
|
|
72401
72401
|
;// CONCATENATED MODULE: ./node_modules/babel-loader/lib/index.js??clonedRuleSet-83.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
|
|
72402
72402
|
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); }
|
|
@@ -72478,13 +72478,14 @@ function TextareaFieldvue_type_script_lang_js_toPrimitive(t, r) { if ("object" !
|
|
|
72478
72478
|
updateField: false,
|
|
72479
72479
|
inputValue: '',
|
|
72480
72480
|
nodeFieldReadOnly: false,
|
|
72481
|
-
voiceDialogVisible: false
|
|
72481
|
+
voiceDialogVisible: false,
|
|
72482
|
+
voiceEnvSupported: false // 当前环境是否支持语音输入
|
|
72482
72483
|
};
|
|
72483
72484
|
},
|
|
72484
72485
|
computed: TextareaFieldvue_type_script_lang_js_objectSpread(TextareaFieldvue_type_script_lang_js_objectSpread({}, (0,vuex_esm/* mapGetters */.L8)(['loginUser'])), {}, {
|
|
72485
|
-
// 语音输入按钮显示条件:voice-input属性为true
|
|
72486
|
+
// 语音输入按钮显示条件:voice-input属性为true、字段可编辑、非元素级只读且当前环境支持语音输入
|
|
72486
72487
|
voiceInputEnabled: function voiceInputEnabled() {
|
|
72487
|
-
return this.voiceInput && !this.readonly && !this.nodeFieldReadOnly && this.elementReadonly !== 1;
|
|
72488
|
+
return this.voiceInput && !this.readonly && !this.nodeFieldReadOnly && this.elementReadonly !== 1 && this.voiceEnvSupported;
|
|
72488
72489
|
},
|
|
72489
72490
|
optionGenerateUrl: function optionGenerateUrl() {
|
|
72490
72491
|
var _this2 = this;
|
|
@@ -72547,6 +72548,7 @@ function TextareaFieldvue_type_script_lang_js_toPrimitive(t, r) { if ("object" !
|
|
|
72547
72548
|
}
|
|
72548
72549
|
}
|
|
72549
72550
|
this.nodeFieldReadOnly = this.readonly;
|
|
72551
|
+
this.initVoiceInputEnabled();
|
|
72550
72552
|
},
|
|
72551
72553
|
beforeDestroy: function beforeDestroy() {
|
|
72552
72554
|
this.fieldDom.removeEventListener('change', this.initVerify);
|
|
@@ -72799,12 +72801,33 @@ function TextareaFieldvue_type_script_lang_js_toPrimitive(t, r) { if ("object" !
|
|
|
72799
72801
|
_this6.updateField = false;
|
|
72800
72802
|
});
|
|
72801
72803
|
},
|
|
72802
|
-
//
|
|
72804
|
+
// 检测语音输入按钮可用性:未配置window.voiceToWord时需https/localhost安全上下文且浏览器支持Web Speech API,否则不显示按钮
|
|
72805
|
+
// 后端转写时window.voiceToWord配置为'/voice/recognize/toText',由网关路由到eccloud-clientms
|
|
72806
|
+
initVoiceInputEnabled: function initVoiceInputEnabled() {
|
|
72807
|
+
var voiceToWord = window.voiceToWord;
|
|
72808
|
+
if (voiceToWord && typeof voiceToWord === 'string' && voiceToWord !== 'browser') {
|
|
72809
|
+
// 后端接口转文字:需getUserMedia录音(同样仅安全上下文下可用)
|
|
72810
|
+
this.voiceEnvSupported = !!(navigator.mediaDevices && navigator.mediaDevices.getUserMedia) || window.mappType === 'ecinc';
|
|
72811
|
+
} else {
|
|
72812
|
+
// 浏览器直转文字:需安全上下文且支持SpeechRecognition
|
|
72813
|
+
this.voiceEnvSupported = window.isSecureContext === true && ('webkitSpeechRecognition' in window || 'SpeechRecognition' in window);
|
|
72814
|
+
}
|
|
72815
|
+
},
|
|
72816
|
+
// 打开语音输入弹窗:安全上下文下打开弹窗,易臣客户端WebView下走原生录音识别,识别结果经window.voiceInputCallback回写
|
|
72803
72817
|
openVoiceDialog: function openVoiceDialog() {
|
|
72804
|
-
|
|
72818
|
+
var _this7 = this;
|
|
72819
|
+
if (window.isSecureContext) {
|
|
72820
|
+
this.voiceDialogVisible = true;
|
|
72821
|
+
} else if (window.mappType === 'ecinc') {
|
|
72822
|
+
window.voiceInputCallback = function (text) {
|
|
72823
|
+
return _this7.onVoiceConfirm(text);
|
|
72824
|
+
};
|
|
72825
|
+
this.$wv.streamRecordRecognize('voiceInputCallback');
|
|
72826
|
+
}
|
|
72805
72827
|
},
|
|
72806
72828
|
// 语音识别完成回调:识别文本追加到现有内容末尾,同步更新字段值
|
|
72807
72829
|
onVoiceConfirm: function onVoiceConfirm(text) {
|
|
72830
|
+
if (!text) return;
|
|
72808
72831
|
this.inputValue = this.inputValue ? this.inputValue + text : text;
|
|
72809
72832
|
this.setFieldValue(this.inputValue);
|
|
72810
72833
|
},
|
|
@@ -72835,9 +72858,9 @@ function TextareaFieldvue_type_script_lang_js_toPrimitive(t, r) { if ("object" !
|
|
|
72835
72858
|
});
|
|
72836
72859
|
;// CONCATENATED MODULE: ./packages/ecmapp/Basicform/src/FormField/TextareaField.vue?vue&type=script&lang=js
|
|
72837
72860
|
/* harmony default export */ var FormField_TextareaFieldvue_type_script_lang_js = (TextareaFieldvue_type_script_lang_js);
|
|
72838
|
-
// EXTERNAL MODULE: ./node_modules/vue-style-loader/index.js??clonedRuleSet-65.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-65.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-65.use[2]!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-65.use[3]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-65.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=
|
|
72839
|
-
var
|
|
72840
|
-
;// CONCATENATED MODULE: ./packages/ecmapp/Basicform/src/FormField/TextareaField.vue?vue&type=style&index=0&id=
|
|
72861
|
+
// EXTERNAL MODULE: ./node_modules/vue-style-loader/index.js??clonedRuleSet-65.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-65.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-65.use[2]!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-65.use[3]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-65.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=6e9369e7&prod&scoped=true&lang=scss
|
|
72862
|
+
var TextareaFieldvue_type_style_index_0_id_6e9369e7_prod_scoped_true_lang_scss = __webpack_require__(2908);
|
|
72863
|
+
;// CONCATENATED MODULE: ./packages/ecmapp/Basicform/src/FormField/TextareaField.vue?vue&type=style&index=0&id=6e9369e7&prod&scoped=true&lang=scss
|
|
72841
72864
|
|
|
72842
72865
|
;// CONCATENATED MODULE: ./packages/ecmapp/Basicform/src/FormField/TextareaField.vue
|
|
72843
72866
|
|
|
@@ -72850,11 +72873,11 @@ var TextareaFieldvue_type_style_index_0_id_27eb631a_prod_scoped_true_lang_scss =
|
|
|
72850
72873
|
|
|
72851
72874
|
var TextareaField_component = (0,componentNormalizer/* default */.A)(
|
|
72852
72875
|
FormField_TextareaFieldvue_type_script_lang_js,
|
|
72853
|
-
|
|
72854
|
-
|
|
72876
|
+
TextareaFieldvue_type_template_id_6e9369e7_scoped_true_render,
|
|
72877
|
+
TextareaFieldvue_type_template_id_6e9369e7_scoped_true_staticRenderFns,
|
|
72855
72878
|
false,
|
|
72856
72879
|
null,
|
|
72857
|
-
"
|
|
72880
|
+
"6e9369e7",
|
|
72858
72881
|
null
|
|
72859
72882
|
|
|
72860
72883
|
)
|