ecinc-cloud-mappaio 9.7.13 → 9.7.15
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 +1243 -78
- package/lib/ecmappaio.umd.js +1243 -78
- package/lib/ecmappaio.umd.min.js +1 -1
- package/package.json +1 -1
package/lib/ecmappaio.umd.js
CHANGED
|
@@ -8760,7 +8760,7 @@ src.install = function (Vue) {
|
|
|
8760
8760
|
|
|
8761
8761
|
/***/ }),
|
|
8762
8762
|
|
|
8763
|
-
/***/
|
|
8763
|
+
/***/ 6058:
|
|
8764
8764
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
8765
8765
|
|
|
8766
8766
|
"use strict";
|
|
@@ -8780,7 +8780,7 @@ __webpack_require__.d(__webpack_exports__, {
|
|
|
8780
8780
|
WriteToReadIdea: function() { return /* binding */ Wflowform_WriteToReadIdea; }
|
|
8781
8781
|
});
|
|
8782
8782
|
|
|
8783
|
-
;// 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/Wflowform/src/Attachment.vue?vue&type=template&id=
|
|
8783
|
+
;// 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/Wflowform/src/Attachment.vue?vue&type=template&id=d820d2a0&scoped=true
|
|
8784
8784
|
var render = function render() {
|
|
8785
8785
|
var _vm = this,
|
|
8786
8786
|
_c = _vm._self._c;
|
|
@@ -8791,9 +8791,9 @@ var render = function render() {
|
|
|
8791
8791
|
}) : _vm._e(), _vm.attachModeType === 'default' ? _c('van-cell-group', {
|
|
8792
8792
|
staticClass: "van-attachment-field",
|
|
8793
8793
|
class: {
|
|
8794
|
-
'wflow-attach': _vm.
|
|
8794
|
+
'wflow-attach': _vm.localShowAttach || _vm.canUpload
|
|
8795
8795
|
}
|
|
8796
|
-
}, [
|
|
8796
|
+
}, [_c('van-cell', {
|
|
8797
8797
|
staticStyle: {
|
|
8798
8798
|
"height": "44px"
|
|
8799
8799
|
},
|
|
@@ -8803,21 +8803,20 @@ var render = function render() {
|
|
|
8803
8803
|
},
|
|
8804
8804
|
on: {
|
|
8805
8805
|
"click": function click($event) {
|
|
8806
|
-
_vm.
|
|
8806
|
+
_vm.localShowAttach = !_vm.localShowAttach;
|
|
8807
8807
|
}
|
|
8808
8808
|
}
|
|
8809
|
-
}, [
|
|
8810
|
-
class: _vm.showAttachments ? 'icon-play-up' : 'icon-play-down',
|
|
8811
|
-
attrs: {
|
|
8812
|
-
"name": "play"
|
|
8813
|
-
}
|
|
8814
|
-
})] : [_vm._v(_vm._s(_vm.$tx('ecmapp.common.nothing', '无')))]], 2) : _c('van-cell', {
|
|
8809
|
+
}, [_c('span', {
|
|
8815
8810
|
staticStyle: {
|
|
8816
|
-
"
|
|
8817
|
-
|
|
8818
|
-
|
|
8819
|
-
|
|
8820
|
-
|
|
8811
|
+
"display": "inline-flex",
|
|
8812
|
+
"align-items": "center",
|
|
8813
|
+
"gap": "8px"
|
|
8814
|
+
}
|
|
8815
|
+
}, [_vm.canUpload ? _c('span', {
|
|
8816
|
+
on: {
|
|
8817
|
+
"click": function click($event) {
|
|
8818
|
+
$event.stopPropagation();
|
|
8819
|
+
}
|
|
8821
8820
|
}
|
|
8822
8821
|
}, [_c('van-uploader', {
|
|
8823
8822
|
attrs: {
|
|
@@ -8837,7 +8836,7 @@ var render = function render() {
|
|
|
8837
8836
|
},
|
|
8838
8837
|
expression: "uploadAttach"
|
|
8839
8838
|
}
|
|
8840
|
-
}, [
|
|
8839
|
+
}, [_c('van-icon', {
|
|
8841
8840
|
staticStyle: {
|
|
8842
8841
|
"margin-top": "2px"
|
|
8843
8842
|
},
|
|
@@ -8845,12 +8844,17 @@ var render = function render() {
|
|
|
8845
8844
|
"name": "add-o",
|
|
8846
8845
|
"size": "20px"
|
|
8847
8846
|
}
|
|
8848
|
-
})
|
|
8847
|
+
})], 1)], 1) : _vm._e(), _vm.attachList.length > 0 ? _c('span', [_vm._v(" " + _vm._s(_vm.localShowAttach ? _vm.$tx('ecmapp.pageBtns.fold', '折叠') : _vm.$tx('ecmapp.pageBtns.open', '展开')) + " "), _c('van-icon', {
|
|
8848
|
+
class: _vm.localShowAttach ? 'icon-play-up' : 'icon-play-down',
|
|
8849
|
+
attrs: {
|
|
8850
|
+
"name": "play"
|
|
8851
|
+
}
|
|
8852
|
+
})], 1) : _vm._e(), _vm.attachList.length === 0 && !_vm.canUpload ? _c('span', [_vm._v(" " + _vm._s(_vm.$tx('ecmapp.common.nothing', '无')) + " ")]) : _vm._e()])])], 1) : _vm._e(), _vm.attachModeType === 'default' ? _c('van-cell-group', {
|
|
8849
8853
|
directives: [{
|
|
8850
8854
|
name: "show",
|
|
8851
8855
|
rawName: "v-show",
|
|
8852
|
-
value: _vm.
|
|
8853
|
-
expression: "
|
|
8856
|
+
value: _vm.localShowAttach || _vm.componentType === 'Wflow' && _vm.vo.status < 1,
|
|
8857
|
+
expression: "localShowAttach || (componentType === 'Wflow' && vo.status < 1)"
|
|
8854
8858
|
}],
|
|
8855
8859
|
staticClass: "wfattach-container"
|
|
8856
8860
|
}, [_vm._l(_vm.attachList, function (attach, index) {
|
|
@@ -8877,7 +8881,7 @@ var render = function render() {
|
|
|
8877
8881
|
domProps: {
|
|
8878
8882
|
"innerHTML": _vm._s(attach.fileSize)
|
|
8879
8883
|
}
|
|
8880
|
-
}), _vm.
|
|
8884
|
+
}), _vm.localShowMoreMenu && attach.id !== undefined ? [_c('van-icon', {
|
|
8881
8885
|
attrs: {
|
|
8882
8886
|
"name": "ellipsis"
|
|
8883
8887
|
},
|
|
@@ -8898,7 +8902,13 @@ var render = function render() {
|
|
|
8898
8902
|
return _vm.handleOpenEditor(attach);
|
|
8899
8903
|
}
|
|
8900
8904
|
}
|
|
8901
|
-
}) : _vm._e(), _vm.
|
|
8905
|
+
}) : _vm._e(), _vm.deletingAttachId === attach.id ? [_c('van-icon', {
|
|
8906
|
+
staticClass: "attach-deleting-icon",
|
|
8907
|
+
attrs: {
|
|
8908
|
+
"name": "replay",
|
|
8909
|
+
"color": "#ee0a24"
|
|
8910
|
+
}
|
|
8911
|
+
})] : _vm.canUpload && _vm.canDelete ? _c('van-icon', {
|
|
8902
8912
|
attrs: {
|
|
8903
8913
|
"color": "#ee0a24",
|
|
8904
8914
|
"name": "cross"
|
|
@@ -8910,9 +8920,6 @@ var render = function render() {
|
|
|
8910
8920
|
}
|
|
8911
8921
|
}
|
|
8912
8922
|
}) : _vm._e(), _vm.attachShowDownload && attach.id !== undefined ? _c('van-icon', {
|
|
8913
|
-
staticStyle: {
|
|
8914
|
-
"margin-left": "4px"
|
|
8915
|
-
},
|
|
8916
8923
|
attrs: {
|
|
8917
8924
|
"name": "down"
|
|
8918
8925
|
},
|
|
@@ -8992,7 +8999,13 @@ var render = function render() {
|
|
|
8992
8999
|
"top": "11px",
|
|
8993
9000
|
"padding": "0 5px"
|
|
8994
9001
|
}
|
|
8995
|
-
}, [_vm.
|
|
9002
|
+
}, [_vm.deletingAttachId === attach.id ? [_c('van-icon', {
|
|
9003
|
+
staticClass: "attach-deleting-icon",
|
|
9004
|
+
attrs: {
|
|
9005
|
+
"name": "replay",
|
|
9006
|
+
"color": "#ee0a24"
|
|
9007
|
+
}
|
|
9008
|
+
})] : _vm.canUpload && _vm.canDelete ? _c('van-icon', {
|
|
8996
9009
|
attrs: {
|
|
8997
9010
|
"name": "cross"
|
|
8998
9011
|
},
|
|
@@ -9012,7 +9025,7 @@ var render = function render() {
|
|
|
9012
9025
|
return _vm.handleUploadPreview(attach);
|
|
9013
9026
|
}
|
|
9014
9027
|
}
|
|
9015
|
-
})],
|
|
9028
|
+
})], 2)]), !attach.id && attach.file.progress > 0 ? _c('template', {
|
|
9016
9029
|
slot: "label"
|
|
9017
9030
|
}, [_c('div', {
|
|
9018
9031
|
staticClass: "upload-progress"
|
|
@@ -9208,7 +9221,12 @@ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e
|
|
|
9208
9221
|
onZipAttachPreviewClick: {
|
|
9209
9222
|
type: Function,
|
|
9210
9223
|
default: null
|
|
9211
|
-
}
|
|
9224
|
+
},
|
|
9225
|
+
// 自定义压缩附件处理方式
|
|
9226
|
+
autoUpload: {
|
|
9227
|
+
type: Boolean,
|
|
9228
|
+
default: true
|
|
9229
|
+
} // 是否开启自动上传,属性值为true时选择文件后自动上传
|
|
9212
9230
|
},
|
|
9213
9231
|
data: function data() {
|
|
9214
9232
|
return {
|
|
@@ -9220,6 +9238,9 @@ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e
|
|
|
9220
9238
|
renameAttach: {
|
|
9221
9239
|
rename: ''
|
|
9222
9240
|
},
|
|
9241
|
+
localShowAttach: this.showAttachments,
|
|
9242
|
+
localShowMoreMenu: this.showMoreMenu,
|
|
9243
|
+
deletingAttachId: null,
|
|
9223
9244
|
licExpiredAlert: null,
|
|
9224
9245
|
loginUser: this.$store.getters.loginUser,
|
|
9225
9246
|
topdfFile: '.doc,.docx,.xls,.xlsx,.ppt,.pptx,.txt',
|
|
@@ -9227,7 +9248,7 @@ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e
|
|
|
9227
9248
|
imgFile: '.pdf,.pdfx,.jpg,.png,.jpeg,.gif,.bmp' //图片文件格式
|
|
9228
9249
|
};
|
|
9229
9250
|
},
|
|
9230
|
-
computed: _objectSpread({}, (0,vuex_esm/* mapGetters */.L8)(['loginUser'])),
|
|
9251
|
+
computed: _objectSpread({}, (0,vuex_esm/* mapGetters */.L8)(['loginUser', 'maxFileSize'])),
|
|
9231
9252
|
watch: {
|
|
9232
9253
|
attachments: {
|
|
9233
9254
|
handler: function handler(val) {
|
|
@@ -9275,6 +9296,12 @@ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e
|
|
|
9275
9296
|
},
|
|
9276
9297
|
deep: true,
|
|
9277
9298
|
immediate: true
|
|
9299
|
+
},
|
|
9300
|
+
showAttachments: function showAttachments(val) {
|
|
9301
|
+
this.localShowAttach = val;
|
|
9302
|
+
},
|
|
9303
|
+
showMoreMenu: function showMoreMenu(val) {
|
|
9304
|
+
this.localShowMoreMenu = val;
|
|
9278
9305
|
}
|
|
9279
9306
|
},
|
|
9280
9307
|
created: function created() {
|
|
@@ -9288,7 +9315,7 @@ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e
|
|
|
9288
9315
|
this.curTN.tnCanEdit = $scope.canEdit;
|
|
9289
9316
|
if (this.canEdit == null) this.canEdit = this.curTN.tnCanEdit;
|
|
9290
9317
|
this.canUpload = this.attachEdit !== null ? this.attachEdit.canUpload : this.canEdit === 1;
|
|
9291
|
-
} else if (this.
|
|
9318
|
+
} else if (this.curTN.tnCanEdit === 1 || this.attachsType === 'DONEXT') {
|
|
9292
9319
|
// 流程表单
|
|
9293
9320
|
this.canUpload = true;
|
|
9294
9321
|
}
|
|
@@ -9302,8 +9329,7 @@ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e
|
|
|
9302
9329
|
setTimeout(function () {
|
|
9303
9330
|
_this3.setWfAttachUrl();
|
|
9304
9331
|
if (window.mappType !== 'ecinc') {
|
|
9305
|
-
_this3
|
|
9306
|
-
_this3.$forceUpdate();
|
|
9332
|
+
_this3.localShowMoreMenu = false;
|
|
9307
9333
|
}
|
|
9308
9334
|
}, 500);
|
|
9309
9335
|
|
|
@@ -9770,6 +9796,7 @@ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e
|
|
|
9770
9796
|
deleteUrl = _this8.wfAttachUrl + '/delete';
|
|
9771
9797
|
if (_this.$vnode.context.wfInstance === undefined || _this.$vnode.context.wfInstance === null || _this.$vnode.context.wfInstance.id === undefined) deleteUrl = _this8.wfAttachUrl + '/deleteAttach'; // 非流程表单
|
|
9772
9798
|
|
|
9799
|
+
_this8.deletingAttachId = file.id;
|
|
9773
9800
|
_this8.$http({
|
|
9774
9801
|
method: 'DELETE',
|
|
9775
9802
|
contentType: 'application/x-www-form-urlencoded',
|
|
@@ -9793,8 +9820,10 @@ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e
|
|
|
9793
9820
|
message: res.message
|
|
9794
9821
|
});
|
|
9795
9822
|
}
|
|
9823
|
+
}).finally(function () {
|
|
9824
|
+
_this8.deletingAttachId = null;
|
|
9796
9825
|
});
|
|
9797
|
-
case
|
|
9826
|
+
case 4:
|
|
9798
9827
|
case "end":
|
|
9799
9828
|
return _context2.stop();
|
|
9800
9829
|
}
|
|
@@ -9898,6 +9927,33 @@ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e
|
|
|
9898
9927
|
return attach.fileType === _this9.attachsType;
|
|
9899
9928
|
});
|
|
9900
9929
|
this.$forceUpdate();
|
|
9930
|
+
|
|
9931
|
+
// 选择文件后自动展开附件列表
|
|
9932
|
+
this.localShowAttach = true;
|
|
9933
|
+
setTimeout(function () {
|
|
9934
|
+
// 自动上传
|
|
9935
|
+
if (_this9.autoUpload) {
|
|
9936
|
+
var scope = null;
|
|
9937
|
+
if (_this9.$vnode.context.wfInstance) {
|
|
9938
|
+
scope = _this9.$vnode.context;
|
|
9939
|
+
} else if (_this9.$vnode.context.$parent.moduleInfo) {
|
|
9940
|
+
scope = _this9.$vnode.context.$parent;
|
|
9941
|
+
scope.wfInstance = {
|
|
9942
|
+
module: scope.moduleCode,
|
|
9943
|
+
bodyDocId: ''
|
|
9944
|
+
};
|
|
9945
|
+
} else if (_this9.$vnode.context.$parent.$vnode.context.moduleInfo) {
|
|
9946
|
+
scope = _this9.$vnode.context.$parent.$vnode.context;
|
|
9947
|
+
scope.wfInstance = {
|
|
9948
|
+
module: scope.moduleCode,
|
|
9949
|
+
bodyDocId: ''
|
|
9950
|
+
};
|
|
9951
|
+
}
|
|
9952
|
+
if (scope) {
|
|
9953
|
+
_this9.uploadWflowAttach(scope);
|
|
9954
|
+
}
|
|
9955
|
+
}
|
|
9956
|
+
}, 100);
|
|
9901
9957
|
},
|
|
9902
9958
|
// 初始化文件头像
|
|
9903
9959
|
initPotourl: function initPotourl(attach) {
|
|
@@ -9937,11 +9993,27 @@ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e
|
|
|
9937
9993
|
case 0:
|
|
9938
9994
|
_uploadAttachFile = function _uploadAttachFile3() {
|
|
9939
9995
|
_uploadAttachFile = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee4(attach, index) {
|
|
9940
|
-
var file, config, module, reqData, uploadRst;
|
|
9996
|
+
var file, maxFileSizeStr, message, config, module, reqData, uploadRst;
|
|
9941
9997
|
return _regeneratorRuntime().wrap(function _callee4$(_context4) {
|
|
9942
9998
|
while (1) switch (_context4.prev = _context4.next) {
|
|
9943
9999
|
case 0:
|
|
9944
|
-
file = attach.file;
|
|
10000
|
+
file = attach.file; // maxFileSize 校验:超过单文件大小限制时拒绝上传
|
|
10001
|
+
if (!(_this.maxFileSize && _this.maxFileSize !== -1)) {
|
|
10002
|
+
_context4.next = 6;
|
|
10003
|
+
break;
|
|
10004
|
+
}
|
|
10005
|
+
if (!(file.file && file.file.size > _this.maxFileSize)) {
|
|
10006
|
+
_context4.next = 6;
|
|
10007
|
+
break;
|
|
10008
|
+
}
|
|
10009
|
+
maxFileSizeStr = (0,utils/* formatFileSize */.v7)(_this.maxFileSize);
|
|
10010
|
+
message = '上传单个文件大小不允许超过' + maxFileSizeStr;
|
|
10011
|
+
return _context4.abrupt("return", {
|
|
10012
|
+
code: 'failure',
|
|
10013
|
+
message: message,
|
|
10014
|
+
body: {}
|
|
10015
|
+
});
|
|
10016
|
+
case 6:
|
|
9945
10017
|
config = {
|
|
9946
10018
|
onUploadProgress: function onUploadProgress(progressEvent) {
|
|
9947
10019
|
var complete = progressEvent.loaded / progressEvent.total * 100 | 0;
|
|
@@ -9972,12 +10044,12 @@ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e
|
|
|
9972
10044
|
// 代办佐证材料
|
|
9973
10045
|
reqData.uploadBy = attach.uploadBy;
|
|
9974
10046
|
}
|
|
9975
|
-
_context4.next =
|
|
10047
|
+
_context4.next = 14;
|
|
9976
10048
|
return _this.$wfEngine.upload(_this, _this.wfAttachUrl + '/upload', file.file, reqData, config);
|
|
9977
|
-
case
|
|
10049
|
+
case 14:
|
|
9978
10050
|
uploadRst = _context4.sent;
|
|
9979
10051
|
return _context4.abrupt("return", uploadRst);
|
|
9980
|
-
case
|
|
10052
|
+
case 16:
|
|
9981
10053
|
case "end":
|
|
9982
10054
|
return _context4.stop();
|
|
9983
10055
|
}
|
|
@@ -10183,7 +10255,7 @@ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e
|
|
|
10183
10255
|
if (!attachment.id) return;
|
|
10184
10256
|
var downloadUrl = '';
|
|
10185
10257
|
downloadUrl = "/apigw" + '/' + this.wfAttachUrl + '/downloadById?inline=false&attachIds=' + attachment.id + '&httpPort=' + location.port + '&csrfToken=' + window.$auth.getCsrfToken();
|
|
10186
|
-
if (window.
|
|
10258
|
+
if (window.mappType === 'ecinc') {
|
|
10187
10259
|
window.$wv.downloadFile(downloadUrl, null, attachment.fileName, null);
|
|
10188
10260
|
} else {
|
|
10189
10261
|
this.$mappUtils.downLoadAndOpenFile(this, downloadUrl, attachment.fileName, attachment.fileSize);
|
|
@@ -10193,9 +10265,9 @@ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e
|
|
|
10193
10265
|
});
|
|
10194
10266
|
;// CONCATENATED MODULE: ./packages/ecmapp/Wflowform/src/Attachment.vue?vue&type=script&lang=js
|
|
10195
10267
|
/* harmony default export */ var src_Attachmentvue_type_script_lang_js = (Attachmentvue_type_script_lang_js);
|
|
10196
|
-
// 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/Wflowform/src/Attachment.vue?vue&type=style&index=0&id=
|
|
10197
|
-
var
|
|
10198
|
-
;// CONCATENATED MODULE: ./packages/ecmapp/Wflowform/src/Attachment.vue?vue&type=style&index=0&id=
|
|
10268
|
+
// 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/Wflowform/src/Attachment.vue?vue&type=style&index=0&id=d820d2a0&prod&scoped=true&lang=scss
|
|
10269
|
+
var Attachmentvue_type_style_index_0_id_d820d2a0_prod_scoped_true_lang_scss = __webpack_require__(7781);
|
|
10270
|
+
;// CONCATENATED MODULE: ./packages/ecmapp/Wflowform/src/Attachment.vue?vue&type=style&index=0&id=d820d2a0&prod&scoped=true&lang=scss
|
|
10199
10271
|
|
|
10200
10272
|
// EXTERNAL MODULE: ./node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js
|
|
10201
10273
|
var componentNormalizer = __webpack_require__(1656);
|
|
@@ -10214,7 +10286,7 @@ var component = (0,componentNormalizer/* default */.A)(
|
|
|
10214
10286
|
staticRenderFns,
|
|
10215
10287
|
false,
|
|
10216
10288
|
null,
|
|
10217
|
-
"
|
|
10289
|
+
"d820d2a0",
|
|
10218
10290
|
null
|
|
10219
10291
|
|
|
10220
10292
|
)
|
|
@@ -18546,7 +18618,8 @@ module.exports = {
|
|
|
18546
18618
|
writReviewComments: 'Please fill in review comments',
|
|
18547
18619
|
noWritReview: 'Your reading record does not exist; you cannot fill in review comments.',
|
|
18548
18620
|
success: 'Processed successfully',
|
|
18549
|
-
failed: 'Processing failed'
|
|
18621
|
+
failed: 'Processing failed',
|
|
18622
|
+
notSupportMobile: 'This file does not support processing on mobile devices.'
|
|
18550
18623
|
}
|
|
18551
18624
|
}
|
|
18552
18625
|
};
|
|
@@ -18783,22 +18856,355 @@ module.exports = {
|
|
|
18783
18856
|
noWritReview: '您的阅文记录不存在,不能填写批阅意见',
|
|
18784
18857
|
submitToNet: '您是否确认提交下一环节?',
|
|
18785
18858
|
success: '处理成功',
|
|
18786
|
-
failed: '处理失败'
|
|
18859
|
+
failed: '处理失败',
|
|
18860
|
+
notSupportMobile: '此文件不支持在手机端办理。'
|
|
18787
18861
|
}
|
|
18788
18862
|
}
|
|
18789
18863
|
};
|
|
18790
18864
|
|
|
18791
18865
|
/***/ }),
|
|
18792
18866
|
|
|
18793
|
-
/***/
|
|
18867
|
+
/***/ 6322:
|
|
18794
18868
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
18795
18869
|
|
|
18796
18870
|
"use strict";
|
|
18871
|
+
// ESM COMPAT FLAG
|
|
18797
18872
|
__webpack_require__.r(__webpack_exports__);
|
|
18798
|
-
|
|
18799
|
-
|
|
18800
|
-
|
|
18801
|
-
|
|
18873
|
+
|
|
18874
|
+
// EXPORTS
|
|
18875
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
18876
|
+
"default": function() { return /* binding */ wfengine; }
|
|
18877
|
+
});
|
|
18878
|
+
|
|
18879
|
+
// EXTERNAL MODULE: ./node_modules/qs/lib/index.js
|
|
18880
|
+
var lib = __webpack_require__(5373);
|
|
18881
|
+
var lib_default = /*#__PURE__*/__webpack_require__.n(lib);
|
|
18882
|
+
// EXTERNAL MODULE: ./node_modules/js-cookie/src/js.cookie.js
|
|
18883
|
+
var js_cookie = __webpack_require__(2215);
|
|
18884
|
+
var js_cookie_default = /*#__PURE__*/__webpack_require__.n(js_cookie);
|
|
18885
|
+
// EXTERNAL MODULE: ./node_modules/spark-md5/spark-md5.js
|
|
18886
|
+
var spark_md5 = __webpack_require__(5735);
|
|
18887
|
+
var spark_md5_default = /*#__PURE__*/__webpack_require__.n(spark_md5);
|
|
18888
|
+
;// CONCATENATED MODULE: ./packages/ecwflow/wfengine/chunkUpload.js
|
|
18889
|
+
/**
|
|
18890
|
+
* 分片上传核心模块
|
|
18891
|
+
* 封装大文件分片上传、断点续传全流程逻辑
|
|
18892
|
+
*/
|
|
18893
|
+
|
|
18894
|
+
|
|
18895
|
+
// ========== 配置 ==========
|
|
18896
|
+
var DEFAULT_CHUNK_SIZE = 3; // 默认分片大小(MB)
|
|
18897
|
+
var MAX_RETRY = 3; // 单分片最大重试次数
|
|
18898
|
+
var RETRY_DELAYS = [1000, 2000, 4000]; // 指数退避延迟(ms)
|
|
18899
|
+
var STORAGE_PREFIX = 'chunk_upload_'; // localStorage key 前缀
|
|
18900
|
+
|
|
18901
|
+
/**
|
|
18902
|
+
* 获取分片大小(字节)
|
|
18903
|
+
*/
|
|
18904
|
+
function getChunkSize() {
|
|
18905
|
+
return (window.chunkUploadSize || DEFAULT_CHUNK_SIZE) * 1024 * 1024;
|
|
18906
|
+
}
|
|
18907
|
+
|
|
18908
|
+
// ========== MD5 计算 ==========
|
|
18909
|
+
|
|
18910
|
+
/**
|
|
18911
|
+
* 使用 spark-md5 增量计算文件 MD5(避免大文件一次性读入内存)
|
|
18912
|
+
* @param {File} file 文件对象
|
|
18913
|
+
* @param {number} chunkSize 切片大小(字节)
|
|
18914
|
+
* @returns {Promise<string>} 文件 MD5 值(32位小写)
|
|
18915
|
+
*/
|
|
18916
|
+
function computeFileMD5(file, chunkSize) {
|
|
18917
|
+
return new Promise(function (resolve, reject) {
|
|
18918
|
+
var blobSlice = File.prototype.slice || File.prototype.mozSlice || File.prototype.webkitSlice;
|
|
18919
|
+
var chunks = Math.ceil(file.size / chunkSize);
|
|
18920
|
+
var currentChunk = 0;
|
|
18921
|
+
var spark = new (spark_md5_default()).ArrayBuffer();
|
|
18922
|
+
var reader = new FileReader();
|
|
18923
|
+
reader.onload = function (e) {
|
|
18924
|
+
spark.append(e.target.result);
|
|
18925
|
+
currentChunk++;
|
|
18926
|
+
if (currentChunk < chunks) {
|
|
18927
|
+
loadNext();
|
|
18928
|
+
} else {
|
|
18929
|
+
resolve(spark.end());
|
|
18930
|
+
}
|
|
18931
|
+
};
|
|
18932
|
+
reader.onerror = function () {
|
|
18933
|
+
reject(new Error('文件读取失败'));
|
|
18934
|
+
};
|
|
18935
|
+
function loadNext() {
|
|
18936
|
+
var start = currentChunk * chunkSize;
|
|
18937
|
+
var end = Math.min(start + chunkSize, file.size);
|
|
18938
|
+
var chunk = blobSlice.call(file, start, end);
|
|
18939
|
+
reader.readAsArrayBuffer(chunk);
|
|
18940
|
+
}
|
|
18941
|
+
loadNext();
|
|
18942
|
+
});
|
|
18943
|
+
}
|
|
18944
|
+
|
|
18945
|
+
// ========== localStorage 断点进度管理 ==========
|
|
18946
|
+
|
|
18947
|
+
/**
|
|
18948
|
+
* 保存上传进度
|
|
18949
|
+
*/
|
|
18950
|
+
function saveUploadProgress(fileMd5, data) {
|
|
18951
|
+
try {
|
|
18952
|
+
localStorage.setItem(STORAGE_PREFIX + fileMd5, JSON.stringify(data));
|
|
18953
|
+
} catch (e) {
|
|
18954
|
+
// localStorage 满或不可用,静默忽略
|
|
18955
|
+
}
|
|
18956
|
+
}
|
|
18957
|
+
|
|
18958
|
+
/**
|
|
18959
|
+
* 获取上传进度
|
|
18960
|
+
*/
|
|
18961
|
+
function getUploadProgress(fileMd5) {
|
|
18962
|
+
try {
|
|
18963
|
+
var raw = localStorage.getItem(STORAGE_PREFIX + fileMd5);
|
|
18964
|
+
return raw ? JSON.parse(raw) : null;
|
|
18965
|
+
} catch (e) {
|
|
18966
|
+
return null;
|
|
18967
|
+
}
|
|
18968
|
+
}
|
|
18969
|
+
|
|
18970
|
+
/**
|
|
18971
|
+
* 清除上传进度
|
|
18972
|
+
*/
|
|
18973
|
+
function clearUploadProgress(fileMd5) {
|
|
18974
|
+
try {
|
|
18975
|
+
localStorage.removeItem(STORAGE_PREFIX + fileMd5);
|
|
18976
|
+
} catch (e) {
|
|
18977
|
+
// 静默忽略
|
|
18978
|
+
}
|
|
18979
|
+
}
|
|
18980
|
+
|
|
18981
|
+
// ========== 后端接口调用 ==========
|
|
18982
|
+
|
|
18983
|
+
/**
|
|
18984
|
+
* 检查已上传分片
|
|
18985
|
+
* @param {Vue} $scope Vue 实例
|
|
18986
|
+
* @param {string} baseUrl 基础 URL(如 workflow/wfBusiAttach)
|
|
18987
|
+
* @param {string} fileMd5 文件 MD5
|
|
18988
|
+
* @param {number} totalChunks 总分片数
|
|
18989
|
+
* @returns {Promise<number[]>} 已上传分片索引列表
|
|
18990
|
+
*/
|
|
18991
|
+
function checkChunkStatus($scope, baseUrl, fileMd5, totalChunks) {
|
|
18992
|
+
var formData = new FormData();
|
|
18993
|
+
formData.append('fileMd5', fileMd5);
|
|
18994
|
+
formData.append('totalChunks', totalChunks);
|
|
18995
|
+
return $scope.$http({
|
|
18996
|
+
url: baseUrl + '/uploadChunkCheck',
|
|
18997
|
+
method: 'post',
|
|
18998
|
+
data: formData
|
|
18999
|
+
}).then(function (res) {
|
|
19000
|
+
if (res.code === 'success' && res.body) {
|
|
19001
|
+
return res.body.uploadedChunks || [];
|
|
19002
|
+
}
|
|
19003
|
+
return [];
|
|
19004
|
+
}).catch(function () {
|
|
19005
|
+
return [];
|
|
19006
|
+
});
|
|
19007
|
+
}
|
|
19008
|
+
|
|
19009
|
+
/**
|
|
19010
|
+
* 上传单个分片(含重试)
|
|
19011
|
+
* @param {Vue} $scope Vue 实例
|
|
19012
|
+
* @param {string} baseUrl 基础 URL
|
|
19013
|
+
* @param {File} file 完整文件对象
|
|
19014
|
+
* @param {number} chunkIndex 分片索引
|
|
19015
|
+
* @param {string} fileMd5 文件 MD5
|
|
19016
|
+
* @param {number} totalChunks 总分片数
|
|
19017
|
+
* @param {string} fileName 文件名
|
|
19018
|
+
* @param {number} fileSize 文件大小
|
|
19019
|
+
* @returns {Promise}
|
|
19020
|
+
*/
|
|
19021
|
+
function uploadSingleChunk($scope, baseUrl, file, chunkIndex, fileMd5, totalChunks, fileName, fileSize) {
|
|
19022
|
+
var chunkSize = getChunkSize();
|
|
19023
|
+
var start = chunkIndex * chunkSize;
|
|
19024
|
+
var end = Math.min(start + chunkSize, file.size);
|
|
19025
|
+
var chunk = file.slice(start, end);
|
|
19026
|
+
var formData = new FormData();
|
|
19027
|
+
formData.append('chunkFile', chunk, 'chunk_' + chunkIndex);
|
|
19028
|
+
formData.append('fileMd5', fileMd5);
|
|
19029
|
+
formData.append('chunkIndex', chunkIndex);
|
|
19030
|
+
formData.append('totalChunks', totalChunks);
|
|
19031
|
+
formData.append('fileName', fileName);
|
|
19032
|
+
formData.append('fileSize', fileSize);
|
|
19033
|
+
return doUploadWithRetry($scope, baseUrl + '/uploadChunk', formData, 0, chunkIndex);
|
|
19034
|
+
}
|
|
19035
|
+
|
|
19036
|
+
/**
|
|
19037
|
+
* 带重试的上传请求
|
|
19038
|
+
*/
|
|
19039
|
+
function doUploadWithRetry($scope, url, formData, retryCount, chunkIdx) {
|
|
19040
|
+
return $scope.$http({
|
|
19041
|
+
url: url,
|
|
19042
|
+
method: 'post',
|
|
19043
|
+
data: formData
|
|
19044
|
+
}).then(function (res) {
|
|
19045
|
+
if (res.code !== 'success') {
|
|
19046
|
+
console.error('[chunkUpload] chunk_' + chunkIdx + ' failed:', res.message);
|
|
19047
|
+
throw new Error(res.message || 'chunk upload failed');
|
|
19048
|
+
}
|
|
19049
|
+
console.log('[chunkUpload] chunk_' + chunkIdx + ' success');
|
|
19050
|
+
return res;
|
|
19051
|
+
}).catch(function (err) {
|
|
19052
|
+
if (retryCount < MAX_RETRY) {
|
|
19053
|
+
console.warn('[chunkUpload] chunk_' + chunkIdx + ' retry ' + (retryCount + 1) + ':', err.message || err);
|
|
19054
|
+
var delay = RETRY_DELAYS[retryCount] || RETRY_DELAYS[RETRY_DELAYS.length - 1];
|
|
19055
|
+
return new Promise(function (resolve) {
|
|
19056
|
+
setTimeout(resolve, delay);
|
|
19057
|
+
}).then(function () {
|
|
19058
|
+
return doUploadWithRetry($scope, url, formData, retryCount + 1, chunkIdx);
|
|
19059
|
+
});
|
|
19060
|
+
}
|
|
19061
|
+
throw err;
|
|
19062
|
+
});
|
|
19063
|
+
}
|
|
19064
|
+
|
|
19065
|
+
/**
|
|
19066
|
+
* 合并分片
|
|
19067
|
+
* @param {Vue} $scope Vue 实例
|
|
19068
|
+
* @param {string} baseUrl 基础 URL
|
|
19069
|
+
* @param {string} fileMd5 文件 MD5
|
|
19070
|
+
* @param {string} fileName 文件名
|
|
19071
|
+
* @param {number} fileSize 文件大小
|
|
19072
|
+
* @param {number} totalChunks 总分片数
|
|
19073
|
+
* @param {Object} reqData 业务参数(module, busiDataId 等)
|
|
19074
|
+
* @returns {Promise}
|
|
19075
|
+
*/
|
|
19076
|
+
function mergeChunks($scope, baseUrl, fileMd5, fileName, fileSize, totalChunks, reqData) {
|
|
19077
|
+
var formData = new FormData();
|
|
19078
|
+
formData.append('fileMd5', fileMd5);
|
|
19079
|
+
formData.append('fileName', fileName);
|
|
19080
|
+
formData.append('fileSize', fileSize);
|
|
19081
|
+
formData.append('totalChunks', totalChunks);
|
|
19082
|
+
if (reqData) {
|
|
19083
|
+
for (var key in reqData) {
|
|
19084
|
+
if (reqData.hasOwnProperty(key) && reqData[key] !== undefined && reqData[key] !== null) {
|
|
19085
|
+
formData.append(key, reqData[key]);
|
|
19086
|
+
}
|
|
19087
|
+
}
|
|
19088
|
+
}
|
|
19089
|
+
return $scope.$http({
|
|
19090
|
+
url: baseUrl + '/uploadChunkMerge',
|
|
19091
|
+
method: 'post',
|
|
19092
|
+
data: formData
|
|
19093
|
+
});
|
|
19094
|
+
}
|
|
19095
|
+
|
|
19096
|
+
// ========== 主编排函数 ==========
|
|
19097
|
+
|
|
19098
|
+
/**
|
|
19099
|
+
* 分片上传主流程
|
|
19100
|
+
* @param {Vue} $scope Vue 实例
|
|
19101
|
+
* @param {string} uploadUrl 上传 URL(如 workflow/wfBusiAttach/upload)
|
|
19102
|
+
* @param {File} file 文件对象
|
|
19103
|
+
* @param {Object} reqData 业务参数
|
|
19104
|
+
* @param {Object} config 配置(含 onUploadProgress 回调)
|
|
19105
|
+
* @returns {Promise} 合并后的响应,与原 upload 接口返回格式一致
|
|
19106
|
+
*/
|
|
19107
|
+
function chunkedUpload($scope, uploadUrl, file, reqData, config) {
|
|
19108
|
+
var chunkSize = getChunkSize();
|
|
19109
|
+
var totalChunks = Math.ceil(file.size / chunkSize);
|
|
19110
|
+
var fileName = file.name || 'unknown';
|
|
19111
|
+
var fileSize = file.size;
|
|
19112
|
+
|
|
19113
|
+
// 从 uploadUrl 中提取 baseUrl(去掉末尾的 /upload)
|
|
19114
|
+
var baseUrl = uploadUrl.replace(/\/upload\/?$/, '');
|
|
19115
|
+
var onProgress = config && config.onUploadProgress || null;
|
|
19116
|
+
return new Promise(function (resolve, reject) {
|
|
19117
|
+
// Step 1: 计算文件 MD5
|
|
19118
|
+
computeFileMD5(file, chunkSize).then(function (fileMd5) {
|
|
19119
|
+
// Step 2: 检查断点续传进度
|
|
19120
|
+
var savedProgress = getUploadProgress(fileMd5);
|
|
19121
|
+
var uploadedBytes = savedProgress ? savedProgress.uploadedBytes || 0 : 0;
|
|
19122
|
+
return checkChunkStatus($scope, baseUrl, fileMd5, totalChunks).then(function (uploadedChunks) {
|
|
19123
|
+
// Step 3: 逐片上传未完成的分片
|
|
19124
|
+
var completedChunks = uploadedChunks.length;
|
|
19125
|
+
var uploadedBytesFromServer = 0;
|
|
19126
|
+
for (var i = 0; i < uploadedChunks.length; i++) {
|
|
19127
|
+
var idx = uploadedChunks[i];
|
|
19128
|
+
var cStart = idx * chunkSize;
|
|
19129
|
+
var cEnd = Math.min(cStart + chunkSize, fileSize);
|
|
19130
|
+
uploadedBytesFromServer += cEnd - cStart;
|
|
19131
|
+
}
|
|
19132
|
+
uploadedBytes = uploadedBytesFromServer;
|
|
19133
|
+
|
|
19134
|
+
// 模拟初始进度回调
|
|
19135
|
+
if (onProgress) {
|
|
19136
|
+
onProgress({
|
|
19137
|
+
loaded: uploadedBytes,
|
|
19138
|
+
total: fileSize
|
|
19139
|
+
});
|
|
19140
|
+
}
|
|
19141
|
+
return uploadChunksSequentially($scope, baseUrl, file, fileMd5, totalChunks, uploadedChunks, fileName, fileSize, chunkSize, function (chunkBytes) {
|
|
19142
|
+
completedChunks++;
|
|
19143
|
+
uploadedBytes += chunkBytes;
|
|
19144
|
+
if (onProgress) {
|
|
19145
|
+
onProgress({
|
|
19146
|
+
loaded: uploadedBytes,
|
|
19147
|
+
total: fileSize
|
|
19148
|
+
});
|
|
19149
|
+
}
|
|
19150
|
+
// 保存进度到 localStorage
|
|
19151
|
+
saveUploadProgress(fileMd5, {
|
|
19152
|
+
completedChunks: completedChunks,
|
|
19153
|
+
uploadedBytes: uploadedBytes,
|
|
19154
|
+
totalChunks: totalChunks,
|
|
19155
|
+
fileName: fileName,
|
|
19156
|
+
fileSize: fileSize,
|
|
19157
|
+
timestamp: Date.now()
|
|
19158
|
+
});
|
|
19159
|
+
}).then(function () {
|
|
19160
|
+
// Step 4: 合并分片
|
|
19161
|
+
return mergeChunks($scope, baseUrl, fileMd5, fileName, fileSize, totalChunks, reqData);
|
|
19162
|
+
}).then(function (mergeResult) {
|
|
19163
|
+
// Step 5: 合并成功,清除进度记录
|
|
19164
|
+
clearUploadProgress(fileMd5);
|
|
19165
|
+
resolve(mergeResult);
|
|
19166
|
+
});
|
|
19167
|
+
});
|
|
19168
|
+
}).catch(function (err) {
|
|
19169
|
+
reject(err);
|
|
19170
|
+
});
|
|
19171
|
+
});
|
|
19172
|
+
}
|
|
19173
|
+
|
|
19174
|
+
/**
|
|
19175
|
+
* 逐片串行上传
|
|
19176
|
+
* 使用 Array.reduce 链式调用,reduce 回调参数 cIdx 天然为每次迭代创建独立闭包,
|
|
19177
|
+
* 避免 for + var 共享变量导致所有分片使用同一个 chunkIndex 的问题。
|
|
19178
|
+
*/
|
|
19179
|
+
function uploadChunksSequentially($scope, baseUrl, file, fileMd5, totalChunks, uploadedChunks, fileName, fileSize, chunkSize, onChunkDone) {
|
|
19180
|
+
var uploadedSet = {};
|
|
19181
|
+
for (var i = 0; i < uploadedChunks.length; i++) {
|
|
19182
|
+
uploadedSet[uploadedChunks[i]] = true;
|
|
19183
|
+
}
|
|
19184
|
+
|
|
19185
|
+
// 构建待上传分片索引数组
|
|
19186
|
+
var chunkIndices = [];
|
|
19187
|
+
for (var chunkIndex = 0; chunkIndex < totalChunks; chunkIndex++) {
|
|
19188
|
+
if (!uploadedSet[chunkIndex]) {
|
|
19189
|
+
chunkIndices.push(chunkIndex);
|
|
19190
|
+
}
|
|
19191
|
+
}
|
|
19192
|
+
|
|
19193
|
+
// reduce 的 cIdx 参数每次迭代都是独立的值,无闭包共享问题
|
|
19194
|
+
return chunkIndices.reduce(function (chain, cIdx) {
|
|
19195
|
+
return chain.then(function () {
|
|
19196
|
+
return uploadSingleChunk($scope, baseUrl, file, cIdx, fileMd5, totalChunks, fileName, fileSize).then(function () {
|
|
19197
|
+
var cStart = cIdx * chunkSize;
|
|
19198
|
+
var cEnd = Math.min(cStart + chunkSize, fileSize);
|
|
19199
|
+
var cBytes = cEnd - cStart;
|
|
19200
|
+
if (onChunkDone) {
|
|
19201
|
+
onChunkDone(cBytes);
|
|
19202
|
+
}
|
|
19203
|
+
});
|
|
19204
|
+
});
|
|
19205
|
+
}, Promise.resolve());
|
|
19206
|
+
}
|
|
19207
|
+
;// CONCATENATED MODULE: ./packages/ecwflow/wfengine/index.js
|
|
18802
19208
|
function _typeof(o) { "@babel/helpers - typeof"; return _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; }, _typeof(o); }
|
|
18803
19209
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
18804
19210
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
@@ -18813,6 +19219,7 @@ function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(
|
|
|
18813
19219
|
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
18814
19220
|
|
|
18815
19221
|
|
|
19222
|
+
|
|
18816
19223
|
var install = function install(Vue) {
|
|
18817
19224
|
var WfEngine = new Vue({
|
|
18818
19225
|
methods: {
|
|
@@ -19030,7 +19437,7 @@ var install = function install(Vue) {
|
|
|
19030
19437
|
}
|
|
19031
19438
|
}
|
|
19032
19439
|
if ($scope.wfJsonData && $scope.wfJsonData.routes) {
|
|
19033
|
-
var rindex =
|
|
19440
|
+
var rindex = js_cookie_default().get('route-index-' + $scope.wfInstance.id);
|
|
19034
19441
|
if (rindex !== undefined && rindex !== null) {
|
|
19035
19442
|
rindex = parseInt(rindex);
|
|
19036
19443
|
if ($scope.wfJsonData.routes.length > rindex) $scope.submitHandle.route.index = rindex;
|
|
@@ -19060,6 +19467,15 @@ var install = function install(Vue) {
|
|
|
19060
19467
|
}
|
|
19061
19468
|
});
|
|
19062
19469
|
}
|
|
19470
|
+
if (window.vType === 'mapp' && $scope.curTN.h5TodoDisabled === 1) {
|
|
19471
|
+
$scope.$notify({
|
|
19472
|
+
title: '提示',
|
|
19473
|
+
message: $scope.$tx('ecmapp.wflowform.notSupportMobile'),
|
|
19474
|
+
offset: 60,
|
|
19475
|
+
duration: 10 * 1000,
|
|
19476
|
+
type: 'warning'
|
|
19477
|
+
});
|
|
19478
|
+
}
|
|
19063
19479
|
|
|
19064
19480
|
// 更新vo.flContent中<img>元素的src
|
|
19065
19481
|
if ($scope.vo.flContent !== undefined && $scope.vo.flContent != null && $scope.vo.flContent.indexOf('/workflow/wfBusiAttach/downloadById') !== -1) {
|
|
@@ -19478,7 +19894,7 @@ var install = function install(Vue) {
|
|
|
19478
19894
|
$scope.$http({
|
|
19479
19895
|
method: 'POST',
|
|
19480
19896
|
contentType: 'application/x-www-form-urlencoded',
|
|
19481
|
-
data:
|
|
19897
|
+
data: lib_default().stringify(saveData),
|
|
19482
19898
|
params: params,
|
|
19483
19899
|
url: wfEngineUrl
|
|
19484
19900
|
}).then(function (res) {
|
|
@@ -19524,7 +19940,7 @@ var install = function install(Vue) {
|
|
|
19524
19940
|
});
|
|
19525
19941
|
}
|
|
19526
19942
|
if ($scope.wfJsonData && $scope.wfJsonData.routes) {
|
|
19527
|
-
var rindex =
|
|
19943
|
+
var rindex = js_cookie_default().get('route-index-' + $scope.wfInstance.id);
|
|
19528
19944
|
if (rindex !== undefined && rindex !== null) {
|
|
19529
19945
|
rindex = parseInt(rindex);
|
|
19530
19946
|
if ($scope.wfJsonData.routes.length > rindex) $scope.submitHandle.route.index = rindex;
|
|
@@ -19599,7 +20015,7 @@ var install = function install(Vue) {
|
|
|
19599
20015
|
}
|
|
19600
20016
|
var submitHandle = JSON.parse(JSON.stringify($scope.submitHandle));
|
|
19601
20017
|
if (submitType.indexOf('Save') !== -1) {
|
|
19602
|
-
|
|
20018
|
+
js_cookie_default().set('route-index-' + $scope.wfInstance.id, submitHandle.route.index);
|
|
19603
20019
|
var route = $scope.wfJsonData == null || $scope.wfJsonData.routes == null || $scope.wfJsonData.routes.length === 0 ? {
|
|
19604
20020
|
taskNodes: []
|
|
19605
20021
|
} : $scope.wfJsonData.routes[submitHandle.route.index];
|
|
@@ -19610,14 +20026,14 @@ var install = function install(Vue) {
|
|
|
19610
20026
|
if (nextUsers !== '') nextUsers += ';';
|
|
19611
20027
|
nextUsers += user.id;
|
|
19612
20028
|
});
|
|
19613
|
-
|
|
20029
|
+
js_cookie_default().set('route-wfuser-' + $scope.curTN.tnID + '-' + wfNode.id, nextUsers);
|
|
19614
20030
|
}
|
|
19615
20031
|
});
|
|
19616
20032
|
delete submitHandle.submitRoute;
|
|
19617
20033
|
delete submitHandle.nextTNProp;
|
|
19618
20034
|
delete submitHandle.nextTNUser;
|
|
19619
20035
|
} else {
|
|
19620
|
-
|
|
20036
|
+
js_cookie_default().set('route-index-' + $scope.wfInstance.id, '', {
|
|
19621
20037
|
expires: 0
|
|
19622
20038
|
});
|
|
19623
20039
|
var selRoute = $scope.wfJsonData == null || $scope.wfJsonData.routes == null || $scope.wfJsonData.routes.length === 0 ? {
|
|
@@ -19660,7 +20076,7 @@ var install = function install(Vue) {
|
|
|
19660
20076
|
delete wfNode.users;
|
|
19661
20077
|
submitHandle.nextTNProp.push(wfNode);
|
|
19662
20078
|
submitHandle.nextTNUser.push(nextUsers);
|
|
19663
|
-
|
|
20079
|
+
js_cookie_default().set('route-wfuser-' + $scope.curTN.tnID + '-' + wfNode.id, '', {
|
|
19664
20080
|
expires: 0
|
|
19665
20081
|
});
|
|
19666
20082
|
}
|
|
@@ -19693,7 +20109,7 @@ var install = function install(Vue) {
|
|
|
19693
20109
|
headers: {
|
|
19694
20110
|
'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8'
|
|
19695
20111
|
},
|
|
19696
|
-
data:
|
|
20112
|
+
data: lib_default().stringify(saveData),
|
|
19697
20113
|
url: (params.wfEngineUrl || $scope.wfEngineUrl || 'workflow/wfInstance') + '/saveWfInstance'
|
|
19698
20114
|
}).then(function (res) {
|
|
19699
20115
|
if (res.code === 'success') {
|
|
@@ -19966,7 +20382,7 @@ var install = function install(Vue) {
|
|
|
19966
20382
|
_this4.$http({
|
|
19967
20383
|
method: 'POST',
|
|
19968
20384
|
contentType: 'application/x-www-form-urlencoded',
|
|
19969
|
-
data:
|
|
20385
|
+
data: lib_default().stringify(saveData),
|
|
19970
20386
|
params: $scope.$vnode.context.wfParams,
|
|
19971
20387
|
url: 'workflow/wfInstance/getUdmNodeUsers'
|
|
19972
20388
|
}).then(function (res) {
|
|
@@ -20016,7 +20432,7 @@ var install = function install(Vue) {
|
|
|
20016
20432
|
headers: {
|
|
20017
20433
|
'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8'
|
|
20018
20434
|
},
|
|
20019
|
-
data:
|
|
20435
|
+
data: lib_default().stringify({
|
|
20020
20436
|
wfInstance: JSON.stringify($scope.wfInstance),
|
|
20021
20437
|
nextTNUsers: JSON.stringify(nextTNUsers)
|
|
20022
20438
|
}),
|
|
@@ -20174,6 +20590,11 @@ var install = function install(Vue) {
|
|
|
20174
20590
|
}
|
|
20175
20591
|
},
|
|
20176
20592
|
upload: function upload($scope, uploadUrl, file, params, config) {
|
|
20593
|
+
// 分片上传分流判断:chunkFileSizeThreshold > 0 且文件大小超过阈值
|
|
20594
|
+
var chunkThreshold = window.chunkFileSizeThreshold;
|
|
20595
|
+
if (chunkThreshold > 0 && file && file.size > chunkThreshold * 1024 * 1024) {
|
|
20596
|
+
return chunkedUpload($scope, uploadUrl, file, params, config);
|
|
20597
|
+
}
|
|
20177
20598
|
var formData = new FormData();
|
|
20178
20599
|
if (params != null) {
|
|
20179
20600
|
for (var key in params) {
|
|
@@ -20272,7 +20693,7 @@ var install = function install(Vue) {
|
|
|
20272
20693
|
});
|
|
20273
20694
|
Vue.prototype.$wfEngine = WfEngine;
|
|
20274
20695
|
};
|
|
20275
|
-
/* harmony default export */
|
|
20696
|
+
/* harmony default export */ var wfengine = (install);
|
|
20276
20697
|
|
|
20277
20698
|
/***/ }),
|
|
20278
20699
|
|
|
@@ -21598,7 +22019,7 @@ ___CSS_LOADER_EXPORT___.push([module.id, "[data-v-d6f101a0] .van-nav-bar__title{
|
|
|
21598
22019
|
|
|
21599
22020
|
/***/ }),
|
|
21600
22021
|
|
|
21601
|
-
/***/
|
|
22022
|
+
/***/ 7986:
|
|
21602
22023
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
21603
22024
|
|
|
21604
22025
|
"use strict";
|
|
@@ -21612,7 +22033,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
21612
22033
|
|
|
21613
22034
|
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()));
|
|
21614
22035
|
// Module
|
|
21615
|
-
___CSS_LOADER_EXPORT___.push([module.id, ".wfattach-container .van-cell__value[data-v-
|
|
22036
|
+
___CSS_LOADER_EXPORT___.push([module.id, ".wfattach-container .van-cell__value[data-v-d820d2a0],.wfattach-container[data-v-d820d2a0] .van-cell__title{-webkit-box-flex:0;-ms-flex:none;flex:none}.wfattach-container[data-v-d820d2a0] .van-cell__title{width:55%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:400}.wfattach-container[data-v-d820d2a0] .van-cell__value{width:45%;height:24px}.wfattach-container[data-v-d820d2a0] .van-cell__value .van-icon-add-o{line-height:24px}.wfattach-container[data-v-d820d2a0] .van-cell__value .van-circle{margin-top:2px}.wfattach-container[data-v-d820d2a0] .van-cell__value .attach-icon{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.wfattach-container[data-v-d820d2a0] .van-cell__value .attach-icon>span{white-space:nowrap;-ms-flex-negative:0;flex-shrink:0}.wfattach-container[data-v-d820d2a0] .van-cell__value .attach-icon .van-icon{line-height:24px;margin-left:10px;font-size:16px;-ms-flex-negative:0;flex-shrink:0}.wfattach-container[data-v-d820d2a0]:after{border-top-width:0}.attachmants_preview .attachmants .van-cell-group .van-cell[data-v-d820d2a0]{padding-left:70px;padding-right:36px}.attachmants_preview .attachmants .van-cell-group .van-cell[data-v-d820d2a0]:after{right:0}.attachmants_preview .attachmants .van-cell-group .van-cell[data-v-d820d2a0]:first-child:before{position:absolute;-webkit-box-sizing:border-box;box-sizing:border-box;content:\" \";pointer-events:none;right:0;top:0;left:16px;border-bottom:1px solid #ebedf0;-webkit-transform:scaleY(.5);transform:scaleY(.5)}.attachmants_preview .attachmants .van-cell-group .van-cell .van-cell__title[data-v-d820d2a0]{position:relative}.attachmants_preview .attachmants .van-cell-group .van-cell .van-cell__title .attach_photo[data-v-d820d2a0]{position:absolute;left:-54px;height:44px;width:44px}.attachmants_preview .attachmants .van-cell-group .van-cell .van-cell__title .attach_name[data-v-d820d2a0]{width:calc(100vw - 107px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.van-attachment-field[data-v-d820d2a0]{position:relative}.van-attachment-field[data-v-d820d2a0]:after{position:absolute;-webkit-box-sizing:border-box;box-sizing:border-box;content:\" \";pointer-events:none;top:unset;border-width:0;right:0;bottom:0;left:16px;border-bottom:1px solid #ebedf0;-webkit-transform:scaleY(.5);transform:scaleY(.5)}.attach-deleting-icon[data-v-d820d2a0]{display:inline-block;-webkit-animation:attach-spin-d820d2a0 .8s linear infinite;animation:attach-spin-d820d2a0 .8s linear infinite}@-webkit-keyframes attach-spin-d820d2a0{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes attach-spin-d820d2a0{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}", ""]);
|
|
21616
22037
|
// Exports
|
|
21617
22038
|
/* harmony default export */ __webpack_exports__["default"] = (___CSS_LOADER_EXPORT___);
|
|
21618
22039
|
|
|
@@ -48026,6 +48447,750 @@ module.exports = function getSideChannel() {
|
|
|
48026
48447
|
};
|
|
48027
48448
|
|
|
48028
48449
|
|
|
48450
|
+
/***/ }),
|
|
48451
|
+
|
|
48452
|
+
/***/ 5735:
|
|
48453
|
+
/***/ (function(module) {
|
|
48454
|
+
|
|
48455
|
+
(function (factory) {
|
|
48456
|
+
if (true) {
|
|
48457
|
+
// Node/CommonJS
|
|
48458
|
+
module.exports = factory();
|
|
48459
|
+
} else { var glob; }
|
|
48460
|
+
}(function (undefined) {
|
|
48461
|
+
|
|
48462
|
+
'use strict';
|
|
48463
|
+
|
|
48464
|
+
/*
|
|
48465
|
+
* Fastest md5 implementation around (JKM md5).
|
|
48466
|
+
* Credits: Joseph Myers
|
|
48467
|
+
*
|
|
48468
|
+
* @see http://www.myersdaily.org/joseph/javascript/md5-text.html
|
|
48469
|
+
* @see http://jsperf.com/md5-shootout/7
|
|
48470
|
+
*/
|
|
48471
|
+
|
|
48472
|
+
/* this function is much faster,
|
|
48473
|
+
so if possible we use it. Some IEs
|
|
48474
|
+
are the only ones I know of that
|
|
48475
|
+
need the idiotic second function,
|
|
48476
|
+
generated by an if clause. */
|
|
48477
|
+
var add32 = function (a, b) {
|
|
48478
|
+
return (a + b) & 0xFFFFFFFF;
|
|
48479
|
+
},
|
|
48480
|
+
hex_chr = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f'];
|
|
48481
|
+
|
|
48482
|
+
|
|
48483
|
+
function cmn(q, a, b, x, s, t) {
|
|
48484
|
+
a = add32(add32(a, q), add32(x, t));
|
|
48485
|
+
return add32((a << s) | (a >>> (32 - s)), b);
|
|
48486
|
+
}
|
|
48487
|
+
|
|
48488
|
+
function md5cycle(x, k) {
|
|
48489
|
+
var a = x[0],
|
|
48490
|
+
b = x[1],
|
|
48491
|
+
c = x[2],
|
|
48492
|
+
d = x[3];
|
|
48493
|
+
|
|
48494
|
+
a += (b & c | ~b & d) + k[0] - 680876936 | 0;
|
|
48495
|
+
a = (a << 7 | a >>> 25) + b | 0;
|
|
48496
|
+
d += (a & b | ~a & c) + k[1] - 389564586 | 0;
|
|
48497
|
+
d = (d << 12 | d >>> 20) + a | 0;
|
|
48498
|
+
c += (d & a | ~d & b) + k[2] + 606105819 | 0;
|
|
48499
|
+
c = (c << 17 | c >>> 15) + d | 0;
|
|
48500
|
+
b += (c & d | ~c & a) + k[3] - 1044525330 | 0;
|
|
48501
|
+
b = (b << 22 | b >>> 10) + c | 0;
|
|
48502
|
+
a += (b & c | ~b & d) + k[4] - 176418897 | 0;
|
|
48503
|
+
a = (a << 7 | a >>> 25) + b | 0;
|
|
48504
|
+
d += (a & b | ~a & c) + k[5] + 1200080426 | 0;
|
|
48505
|
+
d = (d << 12 | d >>> 20) + a | 0;
|
|
48506
|
+
c += (d & a | ~d & b) + k[6] - 1473231341 | 0;
|
|
48507
|
+
c = (c << 17 | c >>> 15) + d | 0;
|
|
48508
|
+
b += (c & d | ~c & a) + k[7] - 45705983 | 0;
|
|
48509
|
+
b = (b << 22 | b >>> 10) + c | 0;
|
|
48510
|
+
a += (b & c | ~b & d) + k[8] + 1770035416 | 0;
|
|
48511
|
+
a = (a << 7 | a >>> 25) + b | 0;
|
|
48512
|
+
d += (a & b | ~a & c) + k[9] - 1958414417 | 0;
|
|
48513
|
+
d = (d << 12 | d >>> 20) + a | 0;
|
|
48514
|
+
c += (d & a | ~d & b) + k[10] - 42063 | 0;
|
|
48515
|
+
c = (c << 17 | c >>> 15) + d | 0;
|
|
48516
|
+
b += (c & d | ~c & a) + k[11] - 1990404162 | 0;
|
|
48517
|
+
b = (b << 22 | b >>> 10) + c | 0;
|
|
48518
|
+
a += (b & c | ~b & d) + k[12] + 1804603682 | 0;
|
|
48519
|
+
a = (a << 7 | a >>> 25) + b | 0;
|
|
48520
|
+
d += (a & b | ~a & c) + k[13] - 40341101 | 0;
|
|
48521
|
+
d = (d << 12 | d >>> 20) + a | 0;
|
|
48522
|
+
c += (d & a | ~d & b) + k[14] - 1502002290 | 0;
|
|
48523
|
+
c = (c << 17 | c >>> 15) + d | 0;
|
|
48524
|
+
b += (c & d | ~c & a) + k[15] + 1236535329 | 0;
|
|
48525
|
+
b = (b << 22 | b >>> 10) + c | 0;
|
|
48526
|
+
|
|
48527
|
+
a += (b & d | c & ~d) + k[1] - 165796510 | 0;
|
|
48528
|
+
a = (a << 5 | a >>> 27) + b | 0;
|
|
48529
|
+
d += (a & c | b & ~c) + k[6] - 1069501632 | 0;
|
|
48530
|
+
d = (d << 9 | d >>> 23) + a | 0;
|
|
48531
|
+
c += (d & b | a & ~b) + k[11] + 643717713 | 0;
|
|
48532
|
+
c = (c << 14 | c >>> 18) + d | 0;
|
|
48533
|
+
b += (c & a | d & ~a) + k[0] - 373897302 | 0;
|
|
48534
|
+
b = (b << 20 | b >>> 12) + c | 0;
|
|
48535
|
+
a += (b & d | c & ~d) + k[5] - 701558691 | 0;
|
|
48536
|
+
a = (a << 5 | a >>> 27) + b | 0;
|
|
48537
|
+
d += (a & c | b & ~c) + k[10] + 38016083 | 0;
|
|
48538
|
+
d = (d << 9 | d >>> 23) + a | 0;
|
|
48539
|
+
c += (d & b | a & ~b) + k[15] - 660478335 | 0;
|
|
48540
|
+
c = (c << 14 | c >>> 18) + d | 0;
|
|
48541
|
+
b += (c & a | d & ~a) + k[4] - 405537848 | 0;
|
|
48542
|
+
b = (b << 20 | b >>> 12) + c | 0;
|
|
48543
|
+
a += (b & d | c & ~d) + k[9] + 568446438 | 0;
|
|
48544
|
+
a = (a << 5 | a >>> 27) + b | 0;
|
|
48545
|
+
d += (a & c | b & ~c) + k[14] - 1019803690 | 0;
|
|
48546
|
+
d = (d << 9 | d >>> 23) + a | 0;
|
|
48547
|
+
c += (d & b | a & ~b) + k[3] - 187363961 | 0;
|
|
48548
|
+
c = (c << 14 | c >>> 18) + d | 0;
|
|
48549
|
+
b += (c & a | d & ~a) + k[8] + 1163531501 | 0;
|
|
48550
|
+
b = (b << 20 | b >>> 12) + c | 0;
|
|
48551
|
+
a += (b & d | c & ~d) + k[13] - 1444681467 | 0;
|
|
48552
|
+
a = (a << 5 | a >>> 27) + b | 0;
|
|
48553
|
+
d += (a & c | b & ~c) + k[2] - 51403784 | 0;
|
|
48554
|
+
d = (d << 9 | d >>> 23) + a | 0;
|
|
48555
|
+
c += (d & b | a & ~b) + k[7] + 1735328473 | 0;
|
|
48556
|
+
c = (c << 14 | c >>> 18) + d | 0;
|
|
48557
|
+
b += (c & a | d & ~a) + k[12] - 1926607734 | 0;
|
|
48558
|
+
b = (b << 20 | b >>> 12) + c | 0;
|
|
48559
|
+
|
|
48560
|
+
a += (b ^ c ^ d) + k[5] - 378558 | 0;
|
|
48561
|
+
a = (a << 4 | a >>> 28) + b | 0;
|
|
48562
|
+
d += (a ^ b ^ c) + k[8] - 2022574463 | 0;
|
|
48563
|
+
d = (d << 11 | d >>> 21) + a | 0;
|
|
48564
|
+
c += (d ^ a ^ b) + k[11] + 1839030562 | 0;
|
|
48565
|
+
c = (c << 16 | c >>> 16) + d | 0;
|
|
48566
|
+
b += (c ^ d ^ a) + k[14] - 35309556 | 0;
|
|
48567
|
+
b = (b << 23 | b >>> 9) + c | 0;
|
|
48568
|
+
a += (b ^ c ^ d) + k[1] - 1530992060 | 0;
|
|
48569
|
+
a = (a << 4 | a >>> 28) + b | 0;
|
|
48570
|
+
d += (a ^ b ^ c) + k[4] + 1272893353 | 0;
|
|
48571
|
+
d = (d << 11 | d >>> 21) + a | 0;
|
|
48572
|
+
c += (d ^ a ^ b) + k[7] - 155497632 | 0;
|
|
48573
|
+
c = (c << 16 | c >>> 16) + d | 0;
|
|
48574
|
+
b += (c ^ d ^ a) + k[10] - 1094730640 | 0;
|
|
48575
|
+
b = (b << 23 | b >>> 9) + c | 0;
|
|
48576
|
+
a += (b ^ c ^ d) + k[13] + 681279174 | 0;
|
|
48577
|
+
a = (a << 4 | a >>> 28) + b | 0;
|
|
48578
|
+
d += (a ^ b ^ c) + k[0] - 358537222 | 0;
|
|
48579
|
+
d = (d << 11 | d >>> 21) + a | 0;
|
|
48580
|
+
c += (d ^ a ^ b) + k[3] - 722521979 | 0;
|
|
48581
|
+
c = (c << 16 | c >>> 16) + d | 0;
|
|
48582
|
+
b += (c ^ d ^ a) + k[6] + 76029189 | 0;
|
|
48583
|
+
b = (b << 23 | b >>> 9) + c | 0;
|
|
48584
|
+
a += (b ^ c ^ d) + k[9] - 640364487 | 0;
|
|
48585
|
+
a = (a << 4 | a >>> 28) + b | 0;
|
|
48586
|
+
d += (a ^ b ^ c) + k[12] - 421815835 | 0;
|
|
48587
|
+
d = (d << 11 | d >>> 21) + a | 0;
|
|
48588
|
+
c += (d ^ a ^ b) + k[15] + 530742520 | 0;
|
|
48589
|
+
c = (c << 16 | c >>> 16) + d | 0;
|
|
48590
|
+
b += (c ^ d ^ a) + k[2] - 995338651 | 0;
|
|
48591
|
+
b = (b << 23 | b >>> 9) + c | 0;
|
|
48592
|
+
|
|
48593
|
+
a += (c ^ (b | ~d)) + k[0] - 198630844 | 0;
|
|
48594
|
+
a = (a << 6 | a >>> 26) + b | 0;
|
|
48595
|
+
d += (b ^ (a | ~c)) + k[7] + 1126891415 | 0;
|
|
48596
|
+
d = (d << 10 | d >>> 22) + a | 0;
|
|
48597
|
+
c += (a ^ (d | ~b)) + k[14] - 1416354905 | 0;
|
|
48598
|
+
c = (c << 15 | c >>> 17) + d | 0;
|
|
48599
|
+
b += (d ^ (c | ~a)) + k[5] - 57434055 | 0;
|
|
48600
|
+
b = (b << 21 |b >>> 11) + c | 0;
|
|
48601
|
+
a += (c ^ (b | ~d)) + k[12] + 1700485571 | 0;
|
|
48602
|
+
a = (a << 6 | a >>> 26) + b | 0;
|
|
48603
|
+
d += (b ^ (a | ~c)) + k[3] - 1894986606 | 0;
|
|
48604
|
+
d = (d << 10 | d >>> 22) + a | 0;
|
|
48605
|
+
c += (a ^ (d | ~b)) + k[10] - 1051523 | 0;
|
|
48606
|
+
c = (c << 15 | c >>> 17) + d | 0;
|
|
48607
|
+
b += (d ^ (c | ~a)) + k[1] - 2054922799 | 0;
|
|
48608
|
+
b = (b << 21 |b >>> 11) + c | 0;
|
|
48609
|
+
a += (c ^ (b | ~d)) + k[8] + 1873313359 | 0;
|
|
48610
|
+
a = (a << 6 | a >>> 26) + b | 0;
|
|
48611
|
+
d += (b ^ (a | ~c)) + k[15] - 30611744 | 0;
|
|
48612
|
+
d = (d << 10 | d >>> 22) + a | 0;
|
|
48613
|
+
c += (a ^ (d | ~b)) + k[6] - 1560198380 | 0;
|
|
48614
|
+
c = (c << 15 | c >>> 17) + d | 0;
|
|
48615
|
+
b += (d ^ (c | ~a)) + k[13] + 1309151649 | 0;
|
|
48616
|
+
b = (b << 21 |b >>> 11) + c | 0;
|
|
48617
|
+
a += (c ^ (b | ~d)) + k[4] - 145523070 | 0;
|
|
48618
|
+
a = (a << 6 | a >>> 26) + b | 0;
|
|
48619
|
+
d += (b ^ (a | ~c)) + k[11] - 1120210379 | 0;
|
|
48620
|
+
d = (d << 10 | d >>> 22) + a | 0;
|
|
48621
|
+
c += (a ^ (d | ~b)) + k[2] + 718787259 | 0;
|
|
48622
|
+
c = (c << 15 | c >>> 17) + d | 0;
|
|
48623
|
+
b += (d ^ (c | ~a)) + k[9] - 343485551 | 0;
|
|
48624
|
+
b = (b << 21 | b >>> 11) + c | 0;
|
|
48625
|
+
|
|
48626
|
+
x[0] = a + x[0] | 0;
|
|
48627
|
+
x[1] = b + x[1] | 0;
|
|
48628
|
+
x[2] = c + x[2] | 0;
|
|
48629
|
+
x[3] = d + x[3] | 0;
|
|
48630
|
+
}
|
|
48631
|
+
|
|
48632
|
+
function md5blk(s) {
|
|
48633
|
+
var md5blks = [],
|
|
48634
|
+
i; /* Andy King said do it this way. */
|
|
48635
|
+
|
|
48636
|
+
for (i = 0; i < 64; i += 4) {
|
|
48637
|
+
md5blks[i >> 2] = s.charCodeAt(i) + (s.charCodeAt(i + 1) << 8) + (s.charCodeAt(i + 2) << 16) + (s.charCodeAt(i + 3) << 24);
|
|
48638
|
+
}
|
|
48639
|
+
return md5blks;
|
|
48640
|
+
}
|
|
48641
|
+
|
|
48642
|
+
function md5blk_array(a) {
|
|
48643
|
+
var md5blks = [],
|
|
48644
|
+
i; /* Andy King said do it this way. */
|
|
48645
|
+
|
|
48646
|
+
for (i = 0; i < 64; i += 4) {
|
|
48647
|
+
md5blks[i >> 2] = a[i] + (a[i + 1] << 8) + (a[i + 2] << 16) + (a[i + 3] << 24);
|
|
48648
|
+
}
|
|
48649
|
+
return md5blks;
|
|
48650
|
+
}
|
|
48651
|
+
|
|
48652
|
+
function md51(s) {
|
|
48653
|
+
var n = s.length,
|
|
48654
|
+
state = [1732584193, -271733879, -1732584194, 271733878],
|
|
48655
|
+
i,
|
|
48656
|
+
length,
|
|
48657
|
+
tail,
|
|
48658
|
+
tmp,
|
|
48659
|
+
lo,
|
|
48660
|
+
hi;
|
|
48661
|
+
|
|
48662
|
+
for (i = 64; i <= n; i += 64) {
|
|
48663
|
+
md5cycle(state, md5blk(s.substring(i - 64, i)));
|
|
48664
|
+
}
|
|
48665
|
+
s = s.substring(i - 64);
|
|
48666
|
+
length = s.length;
|
|
48667
|
+
tail = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
|
|
48668
|
+
for (i = 0; i < length; i += 1) {
|
|
48669
|
+
tail[i >> 2] |= s.charCodeAt(i) << ((i % 4) << 3);
|
|
48670
|
+
}
|
|
48671
|
+
tail[i >> 2] |= 0x80 << ((i % 4) << 3);
|
|
48672
|
+
if (i > 55) {
|
|
48673
|
+
md5cycle(state, tail);
|
|
48674
|
+
for (i = 0; i < 16; i += 1) {
|
|
48675
|
+
tail[i] = 0;
|
|
48676
|
+
}
|
|
48677
|
+
}
|
|
48678
|
+
|
|
48679
|
+
// Beware that the final length might not fit in 32 bits so we take care of that
|
|
48680
|
+
tmp = n * 8;
|
|
48681
|
+
tmp = tmp.toString(16).match(/(.*?)(.{0,8})$/);
|
|
48682
|
+
lo = parseInt(tmp[2], 16);
|
|
48683
|
+
hi = parseInt(tmp[1], 16) || 0;
|
|
48684
|
+
|
|
48685
|
+
tail[14] = lo;
|
|
48686
|
+
tail[15] = hi;
|
|
48687
|
+
|
|
48688
|
+
md5cycle(state, tail);
|
|
48689
|
+
return state;
|
|
48690
|
+
}
|
|
48691
|
+
|
|
48692
|
+
function md51_array(a) {
|
|
48693
|
+
var n = a.length,
|
|
48694
|
+
state = [1732584193, -271733879, -1732584194, 271733878],
|
|
48695
|
+
i,
|
|
48696
|
+
length,
|
|
48697
|
+
tail,
|
|
48698
|
+
tmp,
|
|
48699
|
+
lo,
|
|
48700
|
+
hi;
|
|
48701
|
+
|
|
48702
|
+
for (i = 64; i <= n; i += 64) {
|
|
48703
|
+
md5cycle(state, md5blk_array(a.subarray(i - 64, i)));
|
|
48704
|
+
}
|
|
48705
|
+
|
|
48706
|
+
// Not sure if it is a bug, however IE10 will always produce a sub array of length 1
|
|
48707
|
+
// containing the last element of the parent array if the sub array specified starts
|
|
48708
|
+
// beyond the length of the parent array - weird.
|
|
48709
|
+
// https://connect.microsoft.com/IE/feedback/details/771452/typed-array-subarray-issue
|
|
48710
|
+
a = (i - 64) < n ? a.subarray(i - 64) : new Uint8Array(0);
|
|
48711
|
+
|
|
48712
|
+
length = a.length;
|
|
48713
|
+
tail = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
|
|
48714
|
+
for (i = 0; i < length; i += 1) {
|
|
48715
|
+
tail[i >> 2] |= a[i] << ((i % 4) << 3);
|
|
48716
|
+
}
|
|
48717
|
+
|
|
48718
|
+
tail[i >> 2] |= 0x80 << ((i % 4) << 3);
|
|
48719
|
+
if (i > 55) {
|
|
48720
|
+
md5cycle(state, tail);
|
|
48721
|
+
for (i = 0; i < 16; i += 1) {
|
|
48722
|
+
tail[i] = 0;
|
|
48723
|
+
}
|
|
48724
|
+
}
|
|
48725
|
+
|
|
48726
|
+
// Beware that the final length might not fit in 32 bits so we take care of that
|
|
48727
|
+
tmp = n * 8;
|
|
48728
|
+
tmp = tmp.toString(16).match(/(.*?)(.{0,8})$/);
|
|
48729
|
+
lo = parseInt(tmp[2], 16);
|
|
48730
|
+
hi = parseInt(tmp[1], 16) || 0;
|
|
48731
|
+
|
|
48732
|
+
tail[14] = lo;
|
|
48733
|
+
tail[15] = hi;
|
|
48734
|
+
|
|
48735
|
+
md5cycle(state, tail);
|
|
48736
|
+
|
|
48737
|
+
return state;
|
|
48738
|
+
}
|
|
48739
|
+
|
|
48740
|
+
function rhex(n) {
|
|
48741
|
+
var s = '',
|
|
48742
|
+
j;
|
|
48743
|
+
for (j = 0; j < 4; j += 1) {
|
|
48744
|
+
s += hex_chr[(n >> (j * 8 + 4)) & 0x0F] + hex_chr[(n >> (j * 8)) & 0x0F];
|
|
48745
|
+
}
|
|
48746
|
+
return s;
|
|
48747
|
+
}
|
|
48748
|
+
|
|
48749
|
+
function hex(x) {
|
|
48750
|
+
var i;
|
|
48751
|
+
for (i = 0; i < x.length; i += 1) {
|
|
48752
|
+
x[i] = rhex(x[i]);
|
|
48753
|
+
}
|
|
48754
|
+
return x.join('');
|
|
48755
|
+
}
|
|
48756
|
+
|
|
48757
|
+
// In some cases the fast add32 function cannot be used..
|
|
48758
|
+
if (hex(md51('hello')) !== '5d41402abc4b2a76b9719d911017c592') {
|
|
48759
|
+
add32 = function (x, y) {
|
|
48760
|
+
var lsw = (x & 0xFFFF) + (y & 0xFFFF),
|
|
48761
|
+
msw = (x >> 16) + (y >> 16) + (lsw >> 16);
|
|
48762
|
+
return (msw << 16) | (lsw & 0xFFFF);
|
|
48763
|
+
};
|
|
48764
|
+
}
|
|
48765
|
+
|
|
48766
|
+
// ---------------------------------------------------
|
|
48767
|
+
|
|
48768
|
+
/**
|
|
48769
|
+
* ArrayBuffer slice polyfill.
|
|
48770
|
+
*
|
|
48771
|
+
* @see https://github.com/ttaubert/node-arraybuffer-slice
|
|
48772
|
+
*/
|
|
48773
|
+
|
|
48774
|
+
if (typeof ArrayBuffer !== 'undefined' && !ArrayBuffer.prototype.slice) {
|
|
48775
|
+
(function () {
|
|
48776
|
+
function clamp(val, length) {
|
|
48777
|
+
val = (val | 0) || 0;
|
|
48778
|
+
|
|
48779
|
+
if (val < 0) {
|
|
48780
|
+
return Math.max(val + length, 0);
|
|
48781
|
+
}
|
|
48782
|
+
|
|
48783
|
+
return Math.min(val, length);
|
|
48784
|
+
}
|
|
48785
|
+
|
|
48786
|
+
ArrayBuffer.prototype.slice = function (from, to) {
|
|
48787
|
+
var length = this.byteLength,
|
|
48788
|
+
begin = clamp(from, length),
|
|
48789
|
+
end = length,
|
|
48790
|
+
num,
|
|
48791
|
+
target,
|
|
48792
|
+
targetArray,
|
|
48793
|
+
sourceArray;
|
|
48794
|
+
|
|
48795
|
+
if (to !== undefined) {
|
|
48796
|
+
end = clamp(to, length);
|
|
48797
|
+
}
|
|
48798
|
+
|
|
48799
|
+
if (begin > end) {
|
|
48800
|
+
return new ArrayBuffer(0);
|
|
48801
|
+
}
|
|
48802
|
+
|
|
48803
|
+
num = end - begin;
|
|
48804
|
+
target = new ArrayBuffer(num);
|
|
48805
|
+
targetArray = new Uint8Array(target);
|
|
48806
|
+
|
|
48807
|
+
sourceArray = new Uint8Array(this, begin, num);
|
|
48808
|
+
targetArray.set(sourceArray);
|
|
48809
|
+
|
|
48810
|
+
return target;
|
|
48811
|
+
};
|
|
48812
|
+
})();
|
|
48813
|
+
}
|
|
48814
|
+
|
|
48815
|
+
// ---------------------------------------------------
|
|
48816
|
+
|
|
48817
|
+
/**
|
|
48818
|
+
* Helpers.
|
|
48819
|
+
*/
|
|
48820
|
+
|
|
48821
|
+
function toUtf8(str) {
|
|
48822
|
+
if (/[\u0080-\uFFFF]/.test(str)) {
|
|
48823
|
+
str = unescape(encodeURIComponent(str));
|
|
48824
|
+
}
|
|
48825
|
+
|
|
48826
|
+
return str;
|
|
48827
|
+
}
|
|
48828
|
+
|
|
48829
|
+
function utf8Str2ArrayBuffer(str, returnUInt8Array) {
|
|
48830
|
+
var length = str.length,
|
|
48831
|
+
buff = new ArrayBuffer(length),
|
|
48832
|
+
arr = new Uint8Array(buff),
|
|
48833
|
+
i;
|
|
48834
|
+
|
|
48835
|
+
for (i = 0; i < length; i += 1) {
|
|
48836
|
+
arr[i] = str.charCodeAt(i);
|
|
48837
|
+
}
|
|
48838
|
+
|
|
48839
|
+
return returnUInt8Array ? arr : buff;
|
|
48840
|
+
}
|
|
48841
|
+
|
|
48842
|
+
function arrayBuffer2Utf8Str(buff) {
|
|
48843
|
+
return String.fromCharCode.apply(null, new Uint8Array(buff));
|
|
48844
|
+
}
|
|
48845
|
+
|
|
48846
|
+
function concatenateArrayBuffers(first, second, returnUInt8Array) {
|
|
48847
|
+
var result = new Uint8Array(first.byteLength + second.byteLength);
|
|
48848
|
+
|
|
48849
|
+
result.set(new Uint8Array(first));
|
|
48850
|
+
result.set(new Uint8Array(second), first.byteLength);
|
|
48851
|
+
|
|
48852
|
+
return returnUInt8Array ? result : result.buffer;
|
|
48853
|
+
}
|
|
48854
|
+
|
|
48855
|
+
function hexToBinaryString(hex) {
|
|
48856
|
+
var bytes = [],
|
|
48857
|
+
length = hex.length,
|
|
48858
|
+
x;
|
|
48859
|
+
|
|
48860
|
+
for (x = 0; x < length - 1; x += 2) {
|
|
48861
|
+
bytes.push(parseInt(hex.substr(x, 2), 16));
|
|
48862
|
+
}
|
|
48863
|
+
|
|
48864
|
+
return String.fromCharCode.apply(String, bytes);
|
|
48865
|
+
}
|
|
48866
|
+
|
|
48867
|
+
// ---------------------------------------------------
|
|
48868
|
+
|
|
48869
|
+
/**
|
|
48870
|
+
* SparkMD5 OOP implementation.
|
|
48871
|
+
*
|
|
48872
|
+
* Use this class to perform an incremental md5, otherwise use the
|
|
48873
|
+
* static methods instead.
|
|
48874
|
+
*/
|
|
48875
|
+
|
|
48876
|
+
function SparkMD5() {
|
|
48877
|
+
// call reset to init the instance
|
|
48878
|
+
this.reset();
|
|
48879
|
+
}
|
|
48880
|
+
|
|
48881
|
+
/**
|
|
48882
|
+
* Appends a string.
|
|
48883
|
+
* A conversion will be applied if an utf8 string is detected.
|
|
48884
|
+
*
|
|
48885
|
+
* @param {String} str The string to be appended
|
|
48886
|
+
*
|
|
48887
|
+
* @return {SparkMD5} The instance itself
|
|
48888
|
+
*/
|
|
48889
|
+
SparkMD5.prototype.append = function (str) {
|
|
48890
|
+
// Converts the string to utf8 bytes if necessary
|
|
48891
|
+
// Then append as binary
|
|
48892
|
+
this.appendBinary(toUtf8(str));
|
|
48893
|
+
|
|
48894
|
+
return this;
|
|
48895
|
+
};
|
|
48896
|
+
|
|
48897
|
+
/**
|
|
48898
|
+
* Appends a binary string.
|
|
48899
|
+
*
|
|
48900
|
+
* @param {String} contents The binary string to be appended
|
|
48901
|
+
*
|
|
48902
|
+
* @return {SparkMD5} The instance itself
|
|
48903
|
+
*/
|
|
48904
|
+
SparkMD5.prototype.appendBinary = function (contents) {
|
|
48905
|
+
this._buff += contents;
|
|
48906
|
+
this._length += contents.length;
|
|
48907
|
+
|
|
48908
|
+
var length = this._buff.length,
|
|
48909
|
+
i;
|
|
48910
|
+
|
|
48911
|
+
for (i = 64; i <= length; i += 64) {
|
|
48912
|
+
md5cycle(this._hash, md5blk(this._buff.substring(i - 64, i)));
|
|
48913
|
+
}
|
|
48914
|
+
|
|
48915
|
+
this._buff = this._buff.substring(i - 64);
|
|
48916
|
+
|
|
48917
|
+
return this;
|
|
48918
|
+
};
|
|
48919
|
+
|
|
48920
|
+
/**
|
|
48921
|
+
* Finishes the incremental computation, reseting the internal state and
|
|
48922
|
+
* returning the result.
|
|
48923
|
+
*
|
|
48924
|
+
* @param {Boolean} raw True to get the raw string, false to get the hex string
|
|
48925
|
+
*
|
|
48926
|
+
* @return {String} The result
|
|
48927
|
+
*/
|
|
48928
|
+
SparkMD5.prototype.end = function (raw) {
|
|
48929
|
+
var buff = this._buff,
|
|
48930
|
+
length = buff.length,
|
|
48931
|
+
i,
|
|
48932
|
+
tail = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
|
|
48933
|
+
ret;
|
|
48934
|
+
|
|
48935
|
+
for (i = 0; i < length; i += 1) {
|
|
48936
|
+
tail[i >> 2] |= buff.charCodeAt(i) << ((i % 4) << 3);
|
|
48937
|
+
}
|
|
48938
|
+
|
|
48939
|
+
this._finish(tail, length);
|
|
48940
|
+
ret = hex(this._hash);
|
|
48941
|
+
|
|
48942
|
+
if (raw) {
|
|
48943
|
+
ret = hexToBinaryString(ret);
|
|
48944
|
+
}
|
|
48945
|
+
|
|
48946
|
+
this.reset();
|
|
48947
|
+
|
|
48948
|
+
return ret;
|
|
48949
|
+
};
|
|
48950
|
+
|
|
48951
|
+
/**
|
|
48952
|
+
* Resets the internal state of the computation.
|
|
48953
|
+
*
|
|
48954
|
+
* @return {SparkMD5} The instance itself
|
|
48955
|
+
*/
|
|
48956
|
+
SparkMD5.prototype.reset = function () {
|
|
48957
|
+
this._buff = '';
|
|
48958
|
+
this._length = 0;
|
|
48959
|
+
this._hash = [1732584193, -271733879, -1732584194, 271733878];
|
|
48960
|
+
|
|
48961
|
+
return this;
|
|
48962
|
+
};
|
|
48963
|
+
|
|
48964
|
+
/**
|
|
48965
|
+
* Gets the internal state of the computation.
|
|
48966
|
+
*
|
|
48967
|
+
* @return {Object} The state
|
|
48968
|
+
*/
|
|
48969
|
+
SparkMD5.prototype.getState = function () {
|
|
48970
|
+
return {
|
|
48971
|
+
buff: this._buff,
|
|
48972
|
+
length: this._length,
|
|
48973
|
+
hash: this._hash.slice()
|
|
48974
|
+
};
|
|
48975
|
+
};
|
|
48976
|
+
|
|
48977
|
+
/**
|
|
48978
|
+
* Gets the internal state of the computation.
|
|
48979
|
+
*
|
|
48980
|
+
* @param {Object} state The state
|
|
48981
|
+
*
|
|
48982
|
+
* @return {SparkMD5} The instance itself
|
|
48983
|
+
*/
|
|
48984
|
+
SparkMD5.prototype.setState = function (state) {
|
|
48985
|
+
this._buff = state.buff;
|
|
48986
|
+
this._length = state.length;
|
|
48987
|
+
this._hash = state.hash;
|
|
48988
|
+
|
|
48989
|
+
return this;
|
|
48990
|
+
};
|
|
48991
|
+
|
|
48992
|
+
/**
|
|
48993
|
+
* Releases memory used by the incremental buffer and other additional
|
|
48994
|
+
* resources. If you plan to use the instance again, use reset instead.
|
|
48995
|
+
*/
|
|
48996
|
+
SparkMD5.prototype.destroy = function () {
|
|
48997
|
+
delete this._hash;
|
|
48998
|
+
delete this._buff;
|
|
48999
|
+
delete this._length;
|
|
49000
|
+
};
|
|
49001
|
+
|
|
49002
|
+
/**
|
|
49003
|
+
* Finish the final calculation based on the tail.
|
|
49004
|
+
*
|
|
49005
|
+
* @param {Array} tail The tail (will be modified)
|
|
49006
|
+
* @param {Number} length The length of the remaining buffer
|
|
49007
|
+
*/
|
|
49008
|
+
SparkMD5.prototype._finish = function (tail, length) {
|
|
49009
|
+
var i = length,
|
|
49010
|
+
tmp,
|
|
49011
|
+
lo,
|
|
49012
|
+
hi;
|
|
49013
|
+
|
|
49014
|
+
tail[i >> 2] |= 0x80 << ((i % 4) << 3);
|
|
49015
|
+
if (i > 55) {
|
|
49016
|
+
md5cycle(this._hash, tail);
|
|
49017
|
+
for (i = 0; i < 16; i += 1) {
|
|
49018
|
+
tail[i] = 0;
|
|
49019
|
+
}
|
|
49020
|
+
}
|
|
49021
|
+
|
|
49022
|
+
// Do the final computation based on the tail and length
|
|
49023
|
+
// Beware that the final length may not fit in 32 bits so we take care of that
|
|
49024
|
+
tmp = this._length * 8;
|
|
49025
|
+
tmp = tmp.toString(16).match(/(.*?)(.{0,8})$/);
|
|
49026
|
+
lo = parseInt(tmp[2], 16);
|
|
49027
|
+
hi = parseInt(tmp[1], 16) || 0;
|
|
49028
|
+
|
|
49029
|
+
tail[14] = lo;
|
|
49030
|
+
tail[15] = hi;
|
|
49031
|
+
md5cycle(this._hash, tail);
|
|
49032
|
+
};
|
|
49033
|
+
|
|
49034
|
+
/**
|
|
49035
|
+
* Performs the md5 hash on a string.
|
|
49036
|
+
* A conversion will be applied if utf8 string is detected.
|
|
49037
|
+
*
|
|
49038
|
+
* @param {String} str The string
|
|
49039
|
+
* @param {Boolean} [raw] True to get the raw string, false to get the hex string
|
|
49040
|
+
*
|
|
49041
|
+
* @return {String} The result
|
|
49042
|
+
*/
|
|
49043
|
+
SparkMD5.hash = function (str, raw) {
|
|
49044
|
+
// Converts the string to utf8 bytes if necessary
|
|
49045
|
+
// Then compute it using the binary function
|
|
49046
|
+
return SparkMD5.hashBinary(toUtf8(str), raw);
|
|
49047
|
+
};
|
|
49048
|
+
|
|
49049
|
+
/**
|
|
49050
|
+
* Performs the md5 hash on a binary string.
|
|
49051
|
+
*
|
|
49052
|
+
* @param {String} content The binary string
|
|
49053
|
+
* @param {Boolean} [raw] True to get the raw string, false to get the hex string
|
|
49054
|
+
*
|
|
49055
|
+
* @return {String} The result
|
|
49056
|
+
*/
|
|
49057
|
+
SparkMD5.hashBinary = function (content, raw) {
|
|
49058
|
+
var hash = md51(content),
|
|
49059
|
+
ret = hex(hash);
|
|
49060
|
+
|
|
49061
|
+
return raw ? hexToBinaryString(ret) : ret;
|
|
49062
|
+
};
|
|
49063
|
+
|
|
49064
|
+
// ---------------------------------------------------
|
|
49065
|
+
|
|
49066
|
+
/**
|
|
49067
|
+
* SparkMD5 OOP implementation for array buffers.
|
|
49068
|
+
*
|
|
49069
|
+
* Use this class to perform an incremental md5 ONLY for array buffers.
|
|
49070
|
+
*/
|
|
49071
|
+
SparkMD5.ArrayBuffer = function () {
|
|
49072
|
+
// call reset to init the instance
|
|
49073
|
+
this.reset();
|
|
49074
|
+
};
|
|
49075
|
+
|
|
49076
|
+
/**
|
|
49077
|
+
* Appends an array buffer.
|
|
49078
|
+
*
|
|
49079
|
+
* @param {ArrayBuffer} arr The array to be appended
|
|
49080
|
+
*
|
|
49081
|
+
* @return {SparkMD5.ArrayBuffer} The instance itself
|
|
49082
|
+
*/
|
|
49083
|
+
SparkMD5.ArrayBuffer.prototype.append = function (arr) {
|
|
49084
|
+
var buff = concatenateArrayBuffers(this._buff.buffer, arr, true),
|
|
49085
|
+
length = buff.length,
|
|
49086
|
+
i;
|
|
49087
|
+
|
|
49088
|
+
this._length += arr.byteLength;
|
|
49089
|
+
|
|
49090
|
+
for (i = 64; i <= length; i += 64) {
|
|
49091
|
+
md5cycle(this._hash, md5blk_array(buff.subarray(i - 64, i)));
|
|
49092
|
+
}
|
|
49093
|
+
|
|
49094
|
+
this._buff = (i - 64) < length ? new Uint8Array(buff.buffer.slice(i - 64)) : new Uint8Array(0);
|
|
49095
|
+
|
|
49096
|
+
return this;
|
|
49097
|
+
};
|
|
49098
|
+
|
|
49099
|
+
/**
|
|
49100
|
+
* Finishes the incremental computation, reseting the internal state and
|
|
49101
|
+
* returning the result.
|
|
49102
|
+
*
|
|
49103
|
+
* @param {Boolean} raw True to get the raw string, false to get the hex string
|
|
49104
|
+
*
|
|
49105
|
+
* @return {String} The result
|
|
49106
|
+
*/
|
|
49107
|
+
SparkMD5.ArrayBuffer.prototype.end = function (raw) {
|
|
49108
|
+
var buff = this._buff,
|
|
49109
|
+
length = buff.length,
|
|
49110
|
+
tail = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
|
|
49111
|
+
i,
|
|
49112
|
+
ret;
|
|
49113
|
+
|
|
49114
|
+
for (i = 0; i < length; i += 1) {
|
|
49115
|
+
tail[i >> 2] |= buff[i] << ((i % 4) << 3);
|
|
49116
|
+
}
|
|
49117
|
+
|
|
49118
|
+
this._finish(tail, length);
|
|
49119
|
+
ret = hex(this._hash);
|
|
49120
|
+
|
|
49121
|
+
if (raw) {
|
|
49122
|
+
ret = hexToBinaryString(ret);
|
|
49123
|
+
}
|
|
49124
|
+
|
|
49125
|
+
this.reset();
|
|
49126
|
+
|
|
49127
|
+
return ret;
|
|
49128
|
+
};
|
|
49129
|
+
|
|
49130
|
+
/**
|
|
49131
|
+
* Resets the internal state of the computation.
|
|
49132
|
+
*
|
|
49133
|
+
* @return {SparkMD5.ArrayBuffer} The instance itself
|
|
49134
|
+
*/
|
|
49135
|
+
SparkMD5.ArrayBuffer.prototype.reset = function () {
|
|
49136
|
+
this._buff = new Uint8Array(0);
|
|
49137
|
+
this._length = 0;
|
|
49138
|
+
this._hash = [1732584193, -271733879, -1732584194, 271733878];
|
|
49139
|
+
|
|
49140
|
+
return this;
|
|
49141
|
+
};
|
|
49142
|
+
|
|
49143
|
+
/**
|
|
49144
|
+
* Gets the internal state of the computation.
|
|
49145
|
+
*
|
|
49146
|
+
* @return {Object} The state
|
|
49147
|
+
*/
|
|
49148
|
+
SparkMD5.ArrayBuffer.prototype.getState = function () {
|
|
49149
|
+
var state = SparkMD5.prototype.getState.call(this);
|
|
49150
|
+
|
|
49151
|
+
// Convert buffer to a string
|
|
49152
|
+
state.buff = arrayBuffer2Utf8Str(state.buff);
|
|
49153
|
+
|
|
49154
|
+
return state;
|
|
49155
|
+
};
|
|
49156
|
+
|
|
49157
|
+
/**
|
|
49158
|
+
* Gets the internal state of the computation.
|
|
49159
|
+
*
|
|
49160
|
+
* @param {Object} state The state
|
|
49161
|
+
*
|
|
49162
|
+
* @return {SparkMD5.ArrayBuffer} The instance itself
|
|
49163
|
+
*/
|
|
49164
|
+
SparkMD5.ArrayBuffer.prototype.setState = function (state) {
|
|
49165
|
+
// Convert string to buffer
|
|
49166
|
+
state.buff = utf8Str2ArrayBuffer(state.buff, true);
|
|
49167
|
+
|
|
49168
|
+
return SparkMD5.prototype.setState.call(this, state);
|
|
49169
|
+
};
|
|
49170
|
+
|
|
49171
|
+
SparkMD5.ArrayBuffer.prototype.destroy = SparkMD5.prototype.destroy;
|
|
49172
|
+
|
|
49173
|
+
SparkMD5.ArrayBuffer.prototype._finish = SparkMD5.prototype._finish;
|
|
49174
|
+
|
|
49175
|
+
/**
|
|
49176
|
+
* Performs the md5 hash on an array buffer.
|
|
49177
|
+
*
|
|
49178
|
+
* @param {ArrayBuffer} arr The array buffer
|
|
49179
|
+
* @param {Boolean} [raw] True to get the raw string, false to get the hex one
|
|
49180
|
+
*
|
|
49181
|
+
* @return {String} The result
|
|
49182
|
+
*/
|
|
49183
|
+
SparkMD5.ArrayBuffer.hash = function (arr, raw) {
|
|
49184
|
+
var hash = md51_array(new Uint8Array(arr)),
|
|
49185
|
+
ret = hex(hash);
|
|
49186
|
+
|
|
49187
|
+
return raw ? hexToBinaryString(ret) : ret;
|
|
49188
|
+
};
|
|
49189
|
+
|
|
49190
|
+
return SparkMD5;
|
|
49191
|
+
}));
|
|
49192
|
+
|
|
49193
|
+
|
|
48029
49194
|
/***/ }),
|
|
48030
49195
|
|
|
48031
49196
|
/***/ 5680:
|
|
@@ -48540,19 +49705,19 @@ var update = add("ac1f4192", content, true, {"sourceMap":false,"shadowMode":fals
|
|
|
48540
49705
|
|
|
48541
49706
|
/***/ }),
|
|
48542
49707
|
|
|
48543
|
-
/***/
|
|
49708
|
+
/***/ 7781:
|
|
48544
49709
|
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
|
|
48545
49710
|
|
|
48546
49711
|
// style-loader: Adds some css to the DOM by adding a <style> tag
|
|
48547
49712
|
|
|
48548
49713
|
// load the styles
|
|
48549
|
-
var content = __webpack_require__(
|
|
49714
|
+
var content = __webpack_require__(7986);
|
|
48550
49715
|
if(content.__esModule) content = content.default;
|
|
48551
49716
|
if(typeof content === 'string') content = [[module.id, content, '']];
|
|
48552
49717
|
if(content.locals) module.exports = content.locals;
|
|
48553
49718
|
// add the styles to the DOM
|
|
48554
49719
|
var add = (__webpack_require__(9548)/* ["default"] */ .A)
|
|
48555
|
-
var update = add("
|
|
49720
|
+
var update = add("44766374", content, true, {"sourceMap":false,"shadowMode":false});
|
|
48556
49721
|
|
|
48557
49722
|
/***/ }),
|
|
48558
49723
|
|
|
@@ -70813,39 +71978,39 @@ var asyncComponents = [
|
|
|
70813
71978
|
}],
|
|
70814
71979
|
// ========== ecmapp/Wflowform 工作流表单子组件 → chunk: m-wflow-form ==========
|
|
70815
71980
|
['Attachment', function () {
|
|
70816
|
-
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__,
|
|
71981
|
+
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 6058)).then(function (m) {
|
|
70817
71982
|
return m.Attachment;
|
|
70818
71983
|
});
|
|
70819
71984
|
}], ['BodyFile', function () {
|
|
70820
|
-
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__,
|
|
71985
|
+
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 6058)).then(function (m) {
|
|
70821
71986
|
return m.BodyFile;
|
|
70822
71987
|
});
|
|
70823
71988
|
}], ['HandleIdea', function () {
|
|
70824
|
-
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__,
|
|
71989
|
+
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 6058)).then(function (m) {
|
|
70825
71990
|
return m.HandleIdea;
|
|
70826
71991
|
});
|
|
70827
71992
|
}], ['SelectOuterDeputy', function () {
|
|
70828
|
-
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__,
|
|
71993
|
+
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 6058)).then(function (m) {
|
|
70829
71994
|
return m.SelectOuterDeputy;
|
|
70830
71995
|
});
|
|
70831
71996
|
}], ['SubmitHandle', function () {
|
|
70832
|
-
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__,
|
|
71997
|
+
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 6058)).then(function (m) {
|
|
70833
71998
|
return m.SubmitHandle;
|
|
70834
71999
|
});
|
|
70835
72000
|
}], ['SubmitDialog', function () {
|
|
70836
|
-
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__,
|
|
72001
|
+
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 6058)).then(function (m) {
|
|
70837
72002
|
return m.SubmitDialog;
|
|
70838
72003
|
});
|
|
70839
72004
|
}], ['ShortcutProcessing', function () {
|
|
70840
|
-
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__,
|
|
72005
|
+
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 6058)).then(function (m) {
|
|
70841
72006
|
return m.ShortcutProcessing;
|
|
70842
72007
|
});
|
|
70843
72008
|
}], ['WfNodelogList', function () {
|
|
70844
|
-
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__,
|
|
72009
|
+
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 6058)).then(function (m) {
|
|
70845
72010
|
return m.WfNodelogList;
|
|
70846
72011
|
});
|
|
70847
72012
|
}], ['WriteToReadIdea', function () {
|
|
70848
|
-
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__,
|
|
72013
|
+
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 6058)).then(function (m) {
|
|
70849
72014
|
return m.WriteToReadIdea;
|
|
70850
72015
|
});
|
|
70851
72016
|
}]];
|
|
@@ -70869,7 +72034,7 @@ var mappaio_install = function install(Vue) {
|
|
|
70869
72034
|
});
|
|
70870
72035
|
|
|
70871
72036
|
// 3. 异步加载工作流引擎插件(独立 chunk)
|
|
70872
|
-
Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__,
|
|
72037
|
+
Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 6322)).then(function (m) {
|
|
70873
72038
|
Vue.use(m.default || m);
|
|
70874
72039
|
});
|
|
70875
72040
|
};
|
|
@@ -70895,10 +72060,10 @@ var webSocket = websocket/* default */.A;
|
|
|
70895
72060
|
|
|
70896
72061
|
// ---------- 工作流相关 ----------
|
|
70897
72062
|
var WfengineModule = function WfengineModule() {
|
|
70898
|
-
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__,
|
|
72063
|
+
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 6322));
|
|
70899
72064
|
};
|
|
70900
72065
|
var WflowformModule = function WflowformModule() {
|
|
70901
|
-
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__,
|
|
72066
|
+
return Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 6058));
|
|
70902
72067
|
};
|
|
70903
72068
|
|
|
70904
72069
|
// ---------- 重型功能(PDF/富文本,仅特定页面使用) ----------
|