cnhis-design-vue 3.1.14-beta.11.1 → 3.1.14-beta.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (146) hide show
  1. package/es/_virtual/plugin-vue_export-helper.js +9 -0
  2. package/es/packages/big-table/index.js +1 -2
  3. package/es/packages/big-table/src/BigTable.js +5 -3
  4. package/es/packages/big-table/src/BigTable.vue_vue_type_script_setup_true_lang.js +8 -11
  5. package/es/packages/big-table/src/components/NoData.js +73 -3
  6. package/es/packages/big-table/src/components/edit-form/edit-separate.js +89 -3
  7. package/es/packages/big-table/src/components/input-button.js +34 -3
  8. package/es/packages/big-table/src/components/separate.js +29 -3
  9. package/es/packages/big-table/src/hooks/useEdit.js +2 -3
  10. package/es/packages/bpmn-workflow/index.js +1 -2
  11. package/es/packages/bpmn-workflow/src/BpmnWorkflow.js +253 -3
  12. package/es/packages/button-print/index.js +1 -2
  13. package/es/packages/button-print/src/ButtonPrint.js +5 -3
  14. package/es/packages/button-print/src/ButtonPrint.vue_vue_type_script_setup_true_lang.js +6 -7
  15. package/es/packages/button-print/src/components/IdentityVerification.js +129 -3
  16. package/es/packages/chunk-upload/index.js +1 -1
  17. package/es/packages/chunk-upload/src/chunk-upload-new.js +474 -3
  18. package/es/packages/chunk-upload/src/vod-chunk-upload/index.js +2 -3
  19. package/es/packages/chunk-upload/src/vod-chunk-upload/vod-chunk-upload.js +328 -3
  20. package/es/packages/chunk-upload/src/vod-upload-modal.js +3 -4
  21. package/es/packages/drag-layout/index.js +1 -2
  22. package/es/packages/drag-layout/src/DragFormLeftItem.js +123 -3
  23. package/es/packages/drag-layout/src/DragFormRightItem.js +268 -3
  24. package/es/packages/drag-layout/src/DragLayout.js +658 -3
  25. package/es/packages/fabric-chart/index.js +1 -2
  26. package/es/packages/fabric-chart/src/FabricChart.js +316 -3
  27. package/es/packages/fabric-chart/src/components/PopupTip.js +33 -3
  28. package/es/packages/field-set/index.js +1 -2
  29. package/es/packages/field-set/src/FieldSet.js +346 -3
  30. package/es/packages/form-render/index.d.ts +0 -1
  31. package/es/packages/form-render/index.js +2 -3
  32. package/es/packages/form-render/src/FormRender.js +188 -3
  33. package/es/packages/form-render/src/FormRender.vue.d.ts +0 -1
  34. package/es/packages/form-render/src/components/renderer/combination.js +2 -3
  35. package/es/packages/form-table/index.js +1 -2
  36. package/es/packages/form-table/src/FormTable.js +475 -3
  37. package/es/packages/form-table/src/components/index.js +28 -42
  38. package/es/packages/form-table/src/components/table-age.js +232 -3
  39. package/es/packages/form-table/src/components/table-date-picker.js +176 -3
  40. package/es/packages/form-table/src/components/table-digital.js +138 -3
  41. package/es/packages/form-table/src/components/table-input-password.js +138 -3
  42. package/es/packages/form-table/src/components/table-input.js +124 -3
  43. package/es/packages/form-table/src/components/table-month-picker.js +100 -3
  44. package/es/packages/form-table/src/components/table-search-more.js +5 -3
  45. package/es/packages/form-table/src/components/table-search-more.vue_vue_type_script_setup_true_lang.js +2 -2
  46. package/es/packages/form-table/src/components/table-search.js +5 -3
  47. package/es/packages/form-table/src/components/table-search.vue_vue_type_script_setup_true_lang.js +2 -2
  48. package/es/packages/form-table/src/components/table-select-multiple.js +161 -3
  49. package/es/packages/form-table/src/components/table-select.js +156 -3
  50. package/es/packages/form-table/src/components/table-textarea.js +154 -3
  51. package/es/packages/form-table/src/components/table-time-picker.js +146 -3
  52. package/es/packages/form-table/src/components/table-tree-select.js +282 -3
  53. package/es/packages/form-table/src/components/text-over-tooltip.js +63 -3
  54. package/es/packages/info-header/index.js +1 -2
  55. package/es/packages/info-header/src/HiddenContent.js +65 -3
  56. package/es/packages/info-header/src/InfoEllipsis.js +42 -3
  57. package/es/packages/info-header/src/InfoHeader.js +229 -3
  58. package/es/packages/map/index.js +1 -2
  59. package/es/packages/map/src/Map.js +337 -3
  60. package/es/packages/scale-view/index.js +1 -2
  61. package/es/packages/scale-view/src/ScaleView.js +418 -3
  62. package/es/packages/scale-view/src/components/AnswerParse.js +79 -3
  63. package/es/packages/scale-view/src/components/EvaluateCountdown.js +108 -3
  64. package/es/packages/scale-view/src/components/EvaluatePage.js +140 -3
  65. package/es/packages/scale-view/src/components/LoadingCom.js +17 -5
  66. package/es/packages/scale-view/src/components/NoData.js +73 -3
  67. package/es/packages/scale-view/src/components/formitem/r-cascader.js +3 -3
  68. package/es/packages/scale-view/src/components/formitem/r-select.js +3 -3
  69. package/es/packages/scale-view/src/components/formitem/text-over-tooltip/TextOverTooltip.js +78 -3
  70. package/es/packages/select-label/index.js +3 -5
  71. package/es/packages/select-label/src/LabelFormContent.js +441 -3
  72. package/es/packages/select-label/src/SelectLabel.js +5 -3
  73. package/es/packages/select-label/src/SelectLabel.vue_vue_type_script_setup_true_lang.js +5 -21
  74. package/es/packages/select-label/src/components/label-classify.js +128 -3
  75. package/es/packages/select-person/index.js +1 -2
  76. package/es/packages/select-person/src/SearchTree.js +5 -3
  77. package/es/packages/select-person/src/SearchTree.vue_vue_type_script_setup_true_lang.js +2 -2
  78. package/es/packages/select-person/src/SelectPerson.js +5 -3
  79. package/es/packages/select-person/src/SelectPerson.vue_vue_type_script_setup_true_lang.js +4 -5
  80. package/es/packages/shortcut-provider/index.js +1 -2
  81. package/es/packages/shortcut-provider/src/ShortcutProvider.js +33 -3
  82. package/es/packages/shortcut-setter/index.js +1 -2
  83. package/es/packages/shortcut-setter/src/ShortcutSetter.js +38 -3
  84. package/es/packages/shortcut-setter/src/ShortcutSetterItem.js +126 -3
  85. package/es/packages/steps-wheel/index.js +1 -2
  86. package/es/packages/steps-wheel/src/StepsWheel.js +264 -3
  87. package/es/packages/time-line/index.js +1 -2
  88. package/es/packages/time-line/src/TimeLine.js +69 -3
  89. package/es/src/components/SelectPage/SelectPage.js +62 -3
  90. package/es/src/components/SelectPage/index.js +2 -3
  91. package/es/src/components/SvgIcon/SvgIcon.js +35 -3
  92. package/es/src/components/SvgIcon/index.js +2 -3
  93. package/es/src/components/TextOverTooltip/TextOverTooltip.js +75 -3
  94. package/es/src/components/TextOverTooltip/index.js +2 -3
  95. package/es/src/components/player-vod/index.js +13 -3
  96. package/package.json +153 -153
  97. package/es/packages/big-table/src/components/NoData.vue_vue_type_script_setup_true_lang.js +0 -72
  98. package/es/packages/big-table/src/components/edit-form/edit-separate.vue_vue_type_script_setup_true_lang.js +0 -89
  99. package/es/packages/big-table/src/components/input-button.vue_vue_type_script_setup_true_lang.js +0 -33
  100. package/es/packages/big-table/src/components/separate.vue_vue_type_script_setup_true_lang.js +0 -28
  101. package/es/packages/bpmn-workflow/src/BpmnWorkflow.vue_vue_type_script_setup_true_lang.js +0 -252
  102. package/es/packages/button-print/src/components/IdentityVerification.vue_vue_type_script_setup_true_lang.js +0 -128
  103. package/es/packages/chunk-upload/src/chunk-upload-new.vue_vue_type_script_setup_true_lang.js +0 -473
  104. package/es/packages/chunk-upload/src/vod-chunk-upload/vod-chunk-upload.vue_vue_type_script_setup_true_lang.js +0 -327
  105. package/es/packages/drag-layout/src/DragFormLeftItem.vue_vue_type_script_setup_true_lang.js +0 -122
  106. package/es/packages/drag-layout/src/DragFormRightItem.vue_vue_type_script_setup_true_lang.js +0 -267
  107. package/es/packages/drag-layout/src/DragLayout.vue_vue_type_script_setup_true_lang.js +0 -659
  108. package/es/packages/fabric-chart/src/FabricChart.vue_vue_type_script_setup_true_lang.js +0 -316
  109. package/es/packages/fabric-chart/src/components/PopupTip.vue_vue_type_script_setup_true_lang.js +0 -32
  110. package/es/packages/field-set/src/FieldSet.vue_vue_type_script_setup_true_lang.js +0 -345
  111. package/es/packages/form-render/src/FormRender.vue_vue_type_script_setup_true_lang.js +0 -187
  112. package/es/packages/form-table/src/FormTable.vue_vue_type_script_setup_true_lang.js +0 -474
  113. package/es/packages/form-table/src/components/table-age.vue_vue_type_script_setup_true_lang.js +0 -232
  114. package/es/packages/form-table/src/components/table-date-picker.vue_vue_type_script_setup_true_lang.js +0 -175
  115. package/es/packages/form-table/src/components/table-digital.vue_vue_type_script_setup_true_lang.js +0 -138
  116. package/es/packages/form-table/src/components/table-input-password.vue_vue_type_script_setup_true_lang.js +0 -138
  117. package/es/packages/form-table/src/components/table-input.vue_vue_type_script_setup_true_lang.js +0 -124
  118. package/es/packages/form-table/src/components/table-month-picker.vue_vue_type_script_setup_true_lang.js +0 -99
  119. package/es/packages/form-table/src/components/table-select-multiple.vue_vue_type_script_setup_true_lang.js +0 -160
  120. package/es/packages/form-table/src/components/table-select.vue_vue_type_script_setup_true_lang.js +0 -155
  121. package/es/packages/form-table/src/components/table-textarea.vue_vue_type_script_setup_true_lang.js +0 -153
  122. package/es/packages/form-table/src/components/table-time-picker.vue_vue_type_script_setup_true_lang.js +0 -145
  123. package/es/packages/form-table/src/components/table-tree-select.vue_vue_type_script_setup_true_lang.js +0 -281
  124. package/es/packages/form-table/src/components/text-over-tooltip.vue_vue_type_script_setup_true_lang.js +0 -62
  125. package/es/packages/info-header/src/HiddenContent.vue_vue_type_script_setup_true_lang.js +0 -64
  126. package/es/packages/info-header/src/InfoEllipsis.vue_vue_type_script_setup_true_lang.js +0 -41
  127. package/es/packages/info-header/src/InfoHeader.vue_vue_type_script_setup_true_lang.js +0 -229
  128. package/es/packages/map/src/Map.vue_vue_type_script_setup_true_lang.js +0 -336
  129. package/es/packages/scale-view/src/ScaleView.vue_vue_type_script_setup_true_lang.js +0 -422
  130. package/es/packages/scale-view/src/components/AnswerParse.vue_vue_type_script_setup_true_lang.js +0 -78
  131. package/es/packages/scale-view/src/components/EvaluateCountdown.vue_vue_type_script_setup_true_lang.js +0 -107
  132. package/es/packages/scale-view/src/components/EvaluatePage.vue_vue_type_script_setup_true_lang.js +0 -139
  133. package/es/packages/scale-view/src/components/LoadingCom.vue_vue_type_template_id_413329b0_lang.js +0 -16
  134. package/es/packages/scale-view/src/components/NoData.vue_vue_type_script_setup_true_lang.js +0 -72
  135. package/es/packages/scale-view/src/components/formitem/text-over-tooltip/TextOverTooltip.vue_vue_type_script_setup_true_lang.js +0 -77
  136. package/es/packages/select-label/src/LabelFormContent.vue_vue_type_script_setup_true_lang.js +0 -441
  137. package/es/packages/select-label/src/components/label-classify.vue_vue_type_script_setup_true_lang.js +0 -127
  138. package/es/packages/shortcut-provider/src/ShortcutProvider.vue_vue_type_script_setup_true_lang.js +0 -32
  139. package/es/packages/shortcut-setter/src/ShortcutSetter.vue_vue_type_script_setup_true_lang.js +0 -38
  140. package/es/packages/shortcut-setter/src/ShortcutSetterItem.vue_vue_type_script_setup_true_lang.js +0 -125
  141. package/es/packages/steps-wheel/src/StepsWheel.vue_vue_type_script_setup_true_lang.js +0 -263
  142. package/es/packages/time-line/src/TimeLine.vue_vue_type_script_setup_true_lang.js +0 -68
  143. package/es/src/components/SelectPage/SelectPage.vue_vue_type_script_setup_true_lang.js +0 -61
  144. package/es/src/components/SvgIcon/SvgIcon.vue_vue_type_script_setup_true_lang.js +0 -34
  145. package/es/src/components/TextOverTooltip/TextOverTooltip.vue_vue_type_script_setup_true_lang.js +0 -74
  146. package/es/src/components/player-vod/index.vue_vue_type_script_setup_true_lang.js +0 -12
@@ -3,11 +3,10 @@ import { isObject } from '@vue/shared';
3
3
  import { useMessage, NDropdown, NButton, NIcon } from 'naive-ui';
4
4
  import { ChevronDown } from '@vicons/ionicons5';
5
5
  import { Print } from './utils/print.js';
6
- import './components/IdentityVerification.js';
6
+ import IdentityVerification from './components/IdentityVerification.js';
7
7
  import moment from 'moment';
8
- import script$1 from './components/IdentityVerification.vue_vue_type_script_setup_true_lang.js';
9
8
 
10
- var script = /* @__PURE__ */ defineComponent({
9
+ var _sfc_main = /* @__PURE__ */ defineComponent({
11
10
  __name: "ButtonPrint",
12
11
  props: {
13
12
  printParams: {
@@ -357,14 +356,14 @@ var script = /* @__PURE__ */ defineComponent({
357
356
  };
358
357
  const initCRM = async (formatListResult) => {
359
358
  var _a;
360
- state.formatList = formatListResult ? formatFormatList(formatListResult.obj) : [];
361
359
  console.log("formatListResult", formatListResult);
360
+ state.formatList = formatListResult ? formatFormatList(formatListResult.obj) : [];
362
361
  state.currentFormatId = getDefaultFormatId(state.formatList, "defaultFlag");
363
- setOptions();
364
362
  if (!state.currentFormatId) {
365
363
  $message.error("\u83B7\u53D6\u6253\u5370\u683C\u5F0F\u5931\u8D25\uFF0C\u8BF7\u8054\u7CFB\u7BA1\u7406\u5458\uFF01");
366
364
  return requestError();
367
365
  }
366
+ setOptions();
368
367
  if (!state.currentFormatId) {
369
368
  requestError();
370
369
  return;
@@ -467,7 +466,7 @@ var script = /* @__PURE__ */ defineComponent({
467
466
  _: 1
468
467
  }, 8, ["onClick"])])]),
469
468
  _: 3
470
- }, 8, ["show", "options"]), createVNode(script$1, mergeProps({
469
+ }, 8, ["show", "options"]), createVNode(IdentityVerification, mergeProps({
471
470
  modelValue: state.identityVerification.visible,
472
471
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => state.identityVerification.visible = $event)
473
472
  }, _ctx.$attrs, {
@@ -477,4 +476,4 @@ var script = /* @__PURE__ */ defineComponent({
477
476
  }
478
477
  });
479
478
 
480
- export { script as default };
479
+ export { _sfc_main as default };
@@ -1,4 +1,130 @@
1
- import script from './IdentityVerification.vue_vue_type_script_setup_true_lang.js';
2
- export { default } from './IdentityVerification.vue_vue_type_script_setup_true_lang.js';
1
+ import { defineComponent, reactive, ref, onMounted, watch, openBlock, createBlock, unref, normalizeStyle, withCtx, createElementVNode, createVNode, createTextVNode } from 'vue';
2
+ import { useMessage, NModal, NForm, NFormItem, NInput, NButton } from 'naive-ui';
3
+ import _export_sfc from '../../../../_virtual/plugin-vue_export-helper.js';
3
4
 
4
- script.__file = "packages/button-print/src/components/IdentityVerification.vue";
5
+ const _hoisted_1 = { class: "content" };
6
+ const _hoisted_2 = /* @__PURE__ */ createTextVNode("\u767B\u5F55");
7
+ const _sfc_main = /* @__PURE__ */ defineComponent({
8
+ __name: "IdentityVerification",
9
+ props: {
10
+ verifyUser: { type: Function, default: () => Promise.resolve() },
11
+ identityVerificationTitle: { default: "\u6253\u5370\u670D\u52A1\u8EAB\u4EFD\u6821\u9A8C" },
12
+ modelValue: { type: Boolean }
13
+ },
14
+ emits: ["update:modelValue", "success"],
15
+ setup(__props, { emit }) {
16
+ const props = __props;
17
+ const $message = useMessage();
18
+ const DEFAULT_FORM = {
19
+ account: "",
20
+ password: ""
21
+ };
22
+ let form = reactive(JSON.parse(JSON.stringify(DEFAULT_FORM)));
23
+ const rules = {
24
+ account: { required: true, message: "\u8BF7\u8F93\u5165\u8D26\u53F7" },
25
+ password: { required: true, message: "\u8BF7\u8F93\u5165\u5BC6\u7801" }
26
+ };
27
+ const style = {
28
+ width: "416px"
29
+ };
30
+ const formRef = ref(null);
31
+ const handleClickClose = () => {
32
+ emit("update:modelValue", false);
33
+ };
34
+ const submit = async () => {
35
+ var _a;
36
+ const { data = {} } = await props.verifyUser(form);
37
+ if (data.result !== "SUCCESS") {
38
+ $message.error(data.resultMsg);
39
+ return false;
40
+ }
41
+ emit("success", (_a = data.map) == null ? void 0 : _a.token);
42
+ };
43
+ const handleClickSubmit = () => {
44
+ var _a;
45
+ (_a = formRef.value) == null ? void 0 : _a.validate((errors) => {
46
+ if (!errors) {
47
+ submit();
48
+ } else {
49
+ console.log(errors);
50
+ return false;
51
+ }
52
+ });
53
+ };
54
+ onMounted(() => {
55
+ });
56
+ watch(() => props.modelValue, (val) => {
57
+ if (val)
58
+ return;
59
+ form = JSON.parse(JSON.stringify(DEFAULT_FORM));
60
+ });
61
+ return (_ctx, _cache) => {
62
+ return openBlock(), createBlock(unref(NModal), {
63
+ preset: "dialog",
64
+ title: __props.identityVerificationTitle,
65
+ class: "standard-modal standard-modal-white authentication-modal",
66
+ show: __props.modelValue,
67
+ "close-on-esc": false,
68
+ "show-icon": false,
69
+ style: normalizeStyle({ width: style.width, overflowY: "auto" }),
70
+ onClose: handleClickClose
71
+ }, {
72
+ default: withCtx(() => [
73
+ createElementVNode("div", _hoisted_1, [
74
+ createVNode(unref(NForm), {
75
+ class: "login-form-button-print",
76
+ ref_key: "formRef",
77
+ ref: formRef,
78
+ model: unref(form),
79
+ rules
80
+ }, {
81
+ default: withCtx(() => [
82
+ createVNode(unref(NFormItem), { path: "account" }, {
83
+ default: withCtx(() => [
84
+ createVNode(unref(NInput), {
85
+ value: unref(form).account,
86
+ "onUpdate:value": _cache[0] || (_cache[0] = ($event) => unref(form).account = $event),
87
+ placeholder: "\u8BF7\u8F93\u5165\u8D26\u53F7"
88
+ }, null, 8, ["value"])
89
+ ]),
90
+ _: 1
91
+ }),
92
+ createVNode(unref(NFormItem), { path: "password" }, {
93
+ default: withCtx(() => [
94
+ createVNode(unref(NInput), {
95
+ type: "password",
96
+ value: unref(form).password,
97
+ "onUpdate:value": _cache[1] || (_cache[1] = ($event) => unref(form).password = $event),
98
+ placeholder: "\u8BF7\u8F93\u5165\u5BC6\u7801"
99
+ }, null, 8, ["value"])
100
+ ]),
101
+ _: 1
102
+ }),
103
+ createVNode(unref(NFormItem), null, {
104
+ default: withCtx(() => [
105
+ createVNode(unref(NButton), {
106
+ type: "primary",
107
+ class: "login-form-button",
108
+ onClick: handleClickSubmit
109
+ }, {
110
+ default: withCtx(() => [
111
+ _hoisted_2
112
+ ]),
113
+ _: 1
114
+ })
115
+ ]),
116
+ _: 1
117
+ })
118
+ ]),
119
+ _: 1
120
+ }, 8, ["model"])
121
+ ])
122
+ ]),
123
+ _: 1
124
+ }, 8, ["title", "show", "style"]);
125
+ };
126
+ }
127
+ });
128
+ var IdentityVerification = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "IdentityVerification.vue"]]);
129
+
130
+ export { IdentityVerification as default };
@@ -1,9 +1,9 @@
1
1
  import { COMPONENT_NAMESPACE } from '../../src/global/variable';
2
+ import script from './src/vod-chunk-upload/vod-chunk-upload.js';
2
3
  import uploader from 'vue-simple-uploader';
3
4
  import 'vue-simple-uploader/dist/style.css';
4
5
  import { safeComponentRegister } from '../../src/utils';
5
6
  import { expandXEUtils } from '../../src/utils/utilExpand';
6
- import script from './src/vod-chunk-upload/vod-chunk-upload.vue_vue_type_script_setup_true_lang.js';
7
7
 
8
8
  const VodChunkUpload = script;
9
9
  VodChunkUpload.install = function(app) {
@@ -1,4 +1,475 @@
1
- import script from './chunk-upload-new.vue_vue_type_script_setup_true_lang.js';
2
- export { default } from './chunk-upload-new.vue_vue_type_script_setup_true_lang.js';
1
+ import { defineComponent, ref, reactive, onMounted, nextTick, onUnmounted, resolveComponent, openBlock, createElementBlock, createCommentVNode, createVNode, unref, withCtx, createElementVNode, Fragment, renderList, withDirectives, normalizeClass, toDisplayString, vShow, createTextVNode } from 'vue';
2
+ import SparkMD5 from 'spark-md5';
3
+ import axios from 'axios';
4
+ import { useMessage, NIcon, NProgress, NButton } from 'naive-ui';
5
+ import { UploadProps, getUploadData, statusSet } from './hooks/upload-data.js';
6
+ import { UploadComputed } from './hooks/upload-computed.js';
7
+ import { FolderOutline, DocumentAttachOutline, Close } from '@vicons/ionicons5';
8
+ import _export_sfc from '../../../_virtual/plugin-vue_export-helper.js';
3
9
 
4
- script.__file = "packages/chunk-upload/src/chunk-upload-new.vue";
10
+ const _hoisted_1 = { class: "c-chunk-upload-container" };
11
+ const _hoisted_2 = /* @__PURE__ */ createElementVNode("p", null, "\u70B9\u51FB\u6216\u5C06\u6587\u4EF6\u62D6\u62FD\u5230\u8FD9\u91CC\u4E0A\u4F20", -1);
12
+ const _hoisted_3 = { class: "c-file-list-conatiner" };
13
+ const _hoisted_4 = { class: "file-list" };
14
+ const _hoisted_5 = { class: "c-f-item" };
15
+ const _hoisted_6 = { class: "c-f-item-icon" };
16
+ const _hoisted_7 = { class: "c-f-item-info" };
17
+ const _hoisted_8 = { class: "c-f-item-info-title" };
18
+ const _hoisted_9 = { class: "title" };
19
+ const _hoisted_10 = { class: "size" };
20
+ const _hoisted_11 = { class: "c-f-item-info-time" };
21
+ const _hoisted_12 = { class: "c-f-item-btn" };
22
+ const _hoisted_13 = { class: "upload-btn" };
23
+ const _hoisted_14 = /* @__PURE__ */ createElementVNode("span", null, "\u4E0A\u4F20\u65B0\u6587\u4EF6", -1);
24
+ const _hoisted_15 = /* @__PURE__ */ createTextVNode("\u5F00\u59CB\u4E0A\u4F20");
25
+ const _sfc_main = /* @__PURE__ */ defineComponent({
26
+ __name: "chunk-upload-new",
27
+ props: { ...UploadProps },
28
+ emits: ["getSumbitList", "closeUpload"],
29
+ setup(__props, { expose, emit }) {
30
+ const props = __props;
31
+ const { UploadState } = getUploadData();
32
+ var instance = axios.create({});
33
+ const uploaderDom = ref(null);
34
+ const uploadBtnDom = ref(null);
35
+ const state = reactive(UploadState);
36
+ const message = useMessage();
37
+ const { initState, uploadArguments, autoStart, btnAttrs } = UploadComputed(props, state);
38
+ initState();
39
+ const setAxios = () => {
40
+ for (const i in state.headers) {
41
+ instance.defaults.headers.common[i] = state.headers[i];
42
+ }
43
+ instance.defaults.withCredentials = state.withCredentials;
44
+ };
45
+ const init = () => {
46
+ try {
47
+ console.log(props.getChunkUploadConfig);
48
+ props.getChunkUploadConfig().then((res) => {
49
+ console.log(res);
50
+ state.uploadConfig = { ...res };
51
+ state.headers = {
52
+ Authorization: "bearer " + state.uploadConfig.token
53
+ };
54
+ setAxios();
55
+ });
56
+ } catch (error) {
57
+ console.log(error);
58
+ }
59
+ };
60
+ const curMaxSize = (curMax) => {
61
+ let useMax;
62
+ if (curMax) {
63
+ useMax = +(+curMax).toFixed(2);
64
+ } else {
65
+ return useMax;
66
+ }
67
+ if (useMax < 1024) {
68
+ return useMax + "KB";
69
+ } else if (useMax < 1024 * 1024) {
70
+ return (useMax / 1024).toFixed(2) + "MB";
71
+ } else if (useMax < 1024 * 1024 * 1024) {
72
+ return (useMax / (1024 * 1024)).toFixed(2) + "GB";
73
+ }
74
+ };
75
+ const checkSize = (file) => {
76
+ const max_size = (props == null ? void 0 : props.max_size) || "";
77
+ if (!max_size)
78
+ return false;
79
+ let isLt = file.size / 1024 < +max_size;
80
+ if (!isLt) {
81
+ message.error(`\u9644\u4EF6\u5927\u5C0F\u8D85\u8FC7\u4E86${curMaxSize(max_size)}`);
82
+ }
83
+ return !isLt;
84
+ };
85
+ const handleCheckExt = (map, file) => {
86
+ let flag = false;
87
+ if (map) {
88
+ if (map.includes("*")) {
89
+ return false;
90
+ }
91
+ let ext = file.getExtension();
92
+ if (!map.includes(ext)) {
93
+ message.error(`\u4E0D\u652F\u6301${ext}\u683C\u5F0F`);
94
+ flag = true;
95
+ }
96
+ }
97
+ return flag;
98
+ };
99
+ const checkMaxLength = () => {
100
+ var _a, _b;
101
+ if (props.maxLength > 0) {
102
+ let defLen = ((_a = props.defaultList) == null ? void 0 : _a.length) || 0;
103
+ let len = ((_b = state.configList) == null ? void 0 : _b.length) || 0;
104
+ if (props.maxLength <= defLen + len) {
105
+ message.error(`\u6700\u591A\u53EA\u80FD\u4E0A\u4F20${props.maxLength}\u4E2A`);
106
+ return true;
107
+ }
108
+ }
109
+ return false;
110
+ };
111
+ const computeMD5 = (file) => {
112
+ let fileReader = new FileReader();
113
+ new Date().getTime();
114
+ let blobSlice = File.prototype.slice || File.prototype.mozSlice || File.prototype.webkitSlice;
115
+ let currentChunk = 0;
116
+ const chunkSize = 10 * 1024 * 1e3;
117
+ let chunks = Math.ceil(file.size / chunkSize);
118
+ let spark = new SparkMD5.ArrayBuffer();
119
+ statusSet(file, "md5");
120
+ file.pause();
121
+ loadNext();
122
+ fileReader.onload = (e) => {
123
+ spark.append(e.target.result);
124
+ if (currentChunk < chunks) {
125
+ currentChunk++;
126
+ loadNext();
127
+ } else {
128
+ let md5 = spark.end();
129
+ computeMD5Success(md5, file);
130
+ }
131
+ };
132
+ fileReader.onerror = function() {
133
+ console.warn(`\u6587\u4EF6${file.name}\u8BFB\u53D6\u51FA\u9519\uFF0C\u8BF7\u68C0\u67E5\u8BE5\u6587\u4EF6`);
134
+ file.cancel();
135
+ };
136
+ function loadNext() {
137
+ let start = currentChunk * chunkSize;
138
+ let end = start + chunkSize >= file.size ? file.size : start + chunkSize;
139
+ fileReader.readAsArrayBuffer(blobSlice.call(file.file, start, end));
140
+ }
141
+ };
142
+ const onFileAdded = (file) => {
143
+ let sizeFlag = checkSize(file);
144
+ if (handleCheckExt(props.propsCategoryMap, file) || checkMaxLength() || sizeFlag) {
145
+ file.ignored = true;
146
+ return;
147
+ }
148
+ file.file_upload_status = "";
149
+ statusSet(file, "init");
150
+ file.crm_upload_config = { ...file };
151
+ state.configList.push(file);
152
+ statusSet(file, "ready");
153
+ if (autoStart.value) {
154
+ file.pause();
155
+ computeMD5(file);
156
+ }
157
+ };
158
+ const verifyUpload = (fileName, fileHash, file) => {
159
+ let url = state.uploadConfig.checkFileMd5Exist;
160
+ return new Promise((resolve, reject) => {
161
+ const obj = {
162
+ md5: fileHash,
163
+ fileName,
164
+ ...uploadArguments.value
165
+ };
166
+ instance.get(url, { params: obj }).then((res) => {
167
+ resolve(res.data);
168
+ }).catch((err) => {
169
+ statusSet(file, "failed");
170
+ console.log("verifyUpload -> err", err);
171
+ });
172
+ });
173
+ };
174
+ const computeMD5Success = async (md5, file) => {
175
+ try {
176
+ const verifyData = await verifyUpload(file.name, md5, file);
177
+ if (verifyData.code == "00000") {
178
+ const { data } = verifyData || {};
179
+ if (data.presence) {
180
+ statusSet(file, "complete");
181
+ file.crm_chkuns_complete_status = "complete";
182
+ file.crm_uploade_resInfo = { url: data.path, name: file.name, size: file.size };
183
+ return;
184
+ }
185
+ }
186
+ file.uniqueIdentifier = md5;
187
+ statusSet(file, "uploading");
188
+ file.resume();
189
+ } catch (error) {
190
+ console.log(error, "chunk-upload-computeMD5Success");
191
+ }
192
+ };
193
+ const onFileProgress = () => {
194
+ };
195
+ const mergeRequest = (data, file) => {
196
+ return new Promise((resolve, reject) => {
197
+ const obj = {
198
+ ...data,
199
+ ...uploadArguments.value
200
+ };
201
+ instance.post(state.uploadConfig.partFileMerge, obj, {
202
+ timeout: 0
203
+ }).then(({ data: data2 }) => {
204
+ if (data2.code === "00000") {
205
+ statusSet(file, "complete");
206
+ if (uploaderDom) {
207
+ let resData = (data2 == null ? void 0 : data2.data) || {};
208
+ let fileList = uploaderDom.value.fileList;
209
+ fileList.forEach((v) => {
210
+ if (v.uniqueIdentifier == file.uniqueIdentifier) {
211
+ v.crm_chkuns_complete_status = "complete";
212
+ v.crm_uploade_resInfo = {
213
+ url: resData.path || resData.url,
214
+ name: file.name,
215
+ size: file.size,
216
+ ...resData
217
+ };
218
+ }
219
+ });
220
+ }
221
+ resolve();
222
+ } else {
223
+ message.error("\u4E0A\u4F20\u5931\u8D25");
224
+ resolve();
225
+ }
226
+ }).catch((err) => {
227
+ console.log("mergeRequest -> err", err);
228
+ reject();
229
+ });
230
+ });
231
+ };
232
+ const onFileSuccess = (rootFile, file, response) => {
233
+ let res = JSON.parse(response);
234
+ if (!res.success) {
235
+ statusSet(file, "failed");
236
+ return;
237
+ }
238
+ statusSet(file, "merging");
239
+ mergeRequest({
240
+ md5: file.uniqueIdentifier,
241
+ fileName: file.name,
242
+ fileChunkNum: file.chunks.length
243
+ }, file);
244
+ if (res.needMerge) {
245
+ statusSet(file, "merging");
246
+ }
247
+ };
248
+ const hanldeDraggerBtnClick = () => {
249
+ var _a, _b;
250
+ let input = ((_b = (_a = uploadBtnDom == null ? void 0 : uploadBtnDom.value) == null ? void 0 : _a.$el) == null ? void 0 : _b.querySelector("input")) || false;
251
+ if (input) {
252
+ input.click();
253
+ }
254
+ };
255
+ const getUploadShowStatus = (file, key = "text") => {
256
+ let status = (file == null ? void 0 : file.file_upload_status) || {};
257
+ return status[key];
258
+ };
259
+ const fileClass = (file) => {
260
+ return ["complete", "failed"].includes(getUploadShowStatus(file, "status"));
261
+ };
262
+ const handleRemove = (file) => {
263
+ if (file.cancel) {
264
+ file.cancel();
265
+ } else if (file.remove) {
266
+ file.remove();
267
+ }
268
+ let id = file.id;
269
+ state.configList = state.configList.filter((c) => c.id !== id);
270
+ };
271
+ const onFileError = (rootFile, file) => {
272
+ statusSet(file, "failed");
273
+ };
274
+ const formatedProgress = (v, file) => {
275
+ if (file.crm_chkuns_complete_status == "complete") {
276
+ return 100;
277
+ }
278
+ let tempV = v * 100 + "";
279
+ return parseInt(tempV, 10);
280
+ };
281
+ const handleStartUpload = () => {
282
+ var _a;
283
+ let len = ((_a = state.configList) == null ? void 0 : _a.length) || 0;
284
+ if (len == 0) {
285
+ message.info("\u8BF7\u9009\u62E9\u6587\u4EF6");
286
+ return;
287
+ }
288
+ nextTick(() => {
289
+ state.configList.forEach((f) => {
290
+ let o = f.file_upload_status || {};
291
+ if (o.status) {
292
+ statusSet(f, "uploading");
293
+ computeMD5(f);
294
+ }
295
+ });
296
+ });
297
+ };
298
+ const close = () => {
299
+ var _a, _b;
300
+ (_b = (_a = uploaderDom.value) == null ? void 0 : _a.uploader) == null ? void 0 : _b.cancel();
301
+ };
302
+ const handleGetSumbitList = () => {
303
+ var _a;
304
+ let len = ((_a = state == null ? void 0 : state.configList) == null ? void 0 : _a.length) || 0;
305
+ let list = [];
306
+ if (len > 0) {
307
+ state.configList.forEach((file) => {
308
+ if (file.crm_chkuns_complete_status == "complete")
309
+ list.push({ size: file.size, ...file.crm_uploade_resInfo });
310
+ });
311
+ }
312
+ emit("getSumbitList", list);
313
+ };
314
+ const confirm = () => {
315
+ console.log("ininini");
316
+ const { configList } = state;
317
+ let len = (configList == null ? void 0 : configList.length) || 0;
318
+ if (len === 0) {
319
+ message.info("\u8BF7\u9009\u62E9\u6587\u4EF6\u4E0A\u4F20");
320
+ return;
321
+ }
322
+ let list = configList.filter((v) => !["complete", "failed"].includes(v.file_upload_status.status));
323
+ if (list.length > 0) {
324
+ message.info("\u8BF7\u4E0A\u4F20\u6587\u4EF6\u6216\u8005\u7B49\u5F85\u6587\u4EF6\u4E0A\u4F20\u5B8C\u6210\uFF01");
325
+ return;
326
+ }
327
+ handleGetSumbitList();
328
+ cancel();
329
+ };
330
+ const cancel = () => {
331
+ console.log("cancelcancelcancel");
332
+ close();
333
+ state.configList = [];
334
+ emit("closeUpload", false);
335
+ };
336
+ init();
337
+ onMounted(() => {
338
+ nextTick(() => {
339
+ });
340
+ });
341
+ onUnmounted(() => {
342
+ });
343
+ expose({
344
+ cancel,
345
+ confirm
346
+ });
347
+ return (_ctx, _cache) => {
348
+ const _component_uploader_unsupport = resolveComponent("uploader-unsupport");
349
+ const _component_uploader_drop = resolveComponent("uploader-drop");
350
+ const _component_uploader_file = resolveComponent("uploader-file");
351
+ const _component_uploader_list = resolveComponent("uploader-list");
352
+ const _component_uploader_btn = resolveComponent("uploader-btn");
353
+ const _component_uploader = resolveComponent("uploader");
354
+ return openBlock(), createElementBlock("div", _hoisted_1, [
355
+ createCommentVNode(" \u4E0A\u4F20 "),
356
+ createVNode(_component_uploader, {
357
+ ref_key: "uploaderDom",
358
+ ref: uploaderDom,
359
+ options: state.options,
360
+ autoStart: unref(autoStart),
361
+ onFileAdded,
362
+ onFileSuccess,
363
+ onFileProgress,
364
+ onFileError,
365
+ class: "uploader-app"
366
+ }, {
367
+ default: withCtx(() => [
368
+ createVNode(_component_uploader_unsupport),
369
+ createVNode(_component_uploader_drop, null, {
370
+ default: withCtx(() => [
371
+ createElementVNode("div", {
372
+ class: "c-drap-container dragger-btn",
373
+ onClick: hanldeDraggerBtnClick
374
+ }, [
375
+ createVNode(unref(NIcon), { component: unref(FolderOutline) }, null, 8, ["component"]),
376
+ _hoisted_2
377
+ ])
378
+ ]),
379
+ _: 1
380
+ }),
381
+ createVNode(_component_uploader_list, null, {
382
+ default: withCtx((scope) => [
383
+ createElementVNode("div", _hoisted_3, [
384
+ createElementVNode("ul", _hoisted_4, [
385
+ (openBlock(true), createElementBlock(Fragment, null, renderList(scope.fileList, (file) => {
386
+ return openBlock(), createElementBlock("li", {
387
+ key: file.id
388
+ }, [
389
+ withDirectives(createVNode(_component_uploader_file, {
390
+ class: normalizeClass("file_" + file.id),
391
+ ref_for: true,
392
+ ref: "files",
393
+ file,
394
+ list: true
395
+ }, {
396
+ default: withCtx((scope2) => [
397
+ createElementVNode("div", {
398
+ class: normalizeClass(["c-file-container", { "c-file-boder-bottom": fileClass(file) }])
399
+ }, [
400
+ createElementVNode("div", _hoisted_5, [
401
+ createElementVNode("div", _hoisted_6, [
402
+ createVNode(unref(NIcon), {
403
+ component: unref(DocumentAttachOutline),
404
+ style: { "color": "#5585f5" }
405
+ }, null, 8, ["component"])
406
+ ]),
407
+ createElementVNode("div", _hoisted_7, [
408
+ createElementVNode("div", _hoisted_8, [
409
+ createElementVNode("span", _hoisted_9, toDisplayString(file.name), 1),
410
+ createElementVNode("span", _hoisted_10, "(" + toDisplayString(scope2.formatedSize) + ")", 1)
411
+ ]),
412
+ createElementVNode("div", _hoisted_11, [
413
+ createElementVNode("span", null, toDisplayString(scope2.formatedTimeRemaining), 1),
414
+ createElementVNode("span", null, toDisplayString(getUploadShowStatus(file, "text")), 1)
415
+ ])
416
+ ]),
417
+ createElementVNode("div", _hoisted_12, [
418
+ createVNode(unref(NIcon), {
419
+ component: unref(Close),
420
+ onClick: ($event) => handleRemove(file)
421
+ }, null, 8, ["component", "onClick"])
422
+ ])
423
+ ]),
424
+ createVNode(unref(NProgress), {
425
+ percentage: formatedProgress(state.progress, file),
426
+ type: "line",
427
+ "show-indicator": false
428
+ }, null, 8, ["percentage"])
429
+ ], 2)
430
+ ]),
431
+ _: 2
432
+ }, 1032, ["class", "file"]), [
433
+ [vShow, !file.ignored]
434
+ ])
435
+ ]);
436
+ }), 128))
437
+ ])
438
+ ])
439
+ ]),
440
+ _: 1
441
+ }),
442
+ createElementVNode("div", _hoisted_13, [
443
+ withDirectives(createVNode(_component_uploader_btn, {
444
+ attrs: unref(btnAttrs),
445
+ ref_key: "uploadBtnDom",
446
+ ref: uploadBtnDom
447
+ }, {
448
+ default: withCtx(() => [
449
+ _hoisted_14
450
+ ]),
451
+ _: 1
452
+ }, 8, ["attrs"]), [
453
+ [vShow, false]
454
+ ]),
455
+ createVNode(unref(NButton), {
456
+ type: "primary",
457
+ class: "mgl-10",
458
+ onClick: handleStartUpload
459
+ }, {
460
+ default: withCtx(() => [
461
+ _hoisted_15
462
+ ]),
463
+ _: 1
464
+ })
465
+ ])
466
+ ]),
467
+ _: 1
468
+ }, 8, ["options", "autoStart"])
469
+ ]);
470
+ };
471
+ }
472
+ });
473
+ var chunkUploadCom = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "chunk-upload-new.vue"]]);
474
+
475
+ export { chunkUploadCom as default };
@@ -1,3 +1,2 @@
1
- import './vod-chunk-upload.js';
2
- import script from './vod-chunk-upload.vue_vue_type_script_setup_true_lang.js';
3
- export { default } from './vod-chunk-upload.vue_vue_type_script_setup_true_lang.js';
1
+ import script from './vod-chunk-upload.js';
2
+ export { default } from './vod-chunk-upload.js';