@vtx/components 3.1.47 → 3.1.49

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 (126) hide show
  1. package/lib/_util/useColSize.js.map +1 -1
  2. package/lib/style/index.less +2 -2
  3. package/lib/style/themes/compact.less +1 -1
  4. package/lib/style/themes/dark.less +9 -9
  5. package/lib/style/themes/default.less +7 -7
  6. package/lib/style/themes/index.less +1 -1
  7. package/lib/style/themes/variable.less +5 -5
  8. package/lib/vtx-color-picker/index.js.map +1 -1
  9. package/lib/vtx-color-picker/style/css.js.map +1 -1
  10. package/lib/vtx-color-picker/style/index.js.map +1 -1
  11. package/lib/vtx-combogrid/Combogrid.js.map +1 -1
  12. package/lib/vtx-combogrid/index.js.map +1 -1
  13. package/lib/vtx-combogrid/style/css.js.map +1 -1
  14. package/lib/vtx-combogrid/style/index.js.map +1 -1
  15. package/lib/vtx-combogrid/style/index.less +29 -29
  16. package/lib/vtx-datagrid/Alert.js.map +1 -1
  17. package/lib/vtx-datagrid/ColumnSetting.js.map +1 -1
  18. package/lib/vtx-datagrid/index.js.map +1 -1
  19. package/lib/vtx-datagrid/renderColumnButtons.js.map +1 -1
  20. package/lib/vtx-datagrid/style/css.js.map +1 -1
  21. package/lib/vtx-datagrid/style/index.js.map +1 -1
  22. package/lib/vtx-date-picker/QdatePicker.js.map +1 -1
  23. package/lib/vtx-date-picker/generatePicker.js.map +1 -1
  24. package/lib/vtx-date-picker/index.js.map +1 -1
  25. package/lib/vtx-date-picker/style/css.js.map +1 -1
  26. package/lib/vtx-date-picker/style/index.js.map +1 -1
  27. package/lib/vtx-date-picker/style/index.less +39 -39
  28. package/lib/vtx-editor/index.js.map +1 -1
  29. package/lib/vtx-editor/style/css.js.map +1 -1
  30. package/lib/vtx-editor/style/index.js.map +1 -1
  31. package/lib/vtx-editor/style/index.less +8 -8
  32. package/lib/vtx-ellipsis-text/index.js.map +1 -1
  33. package/lib/vtx-ellipsis-text/style/css.js.map +1 -1
  34. package/lib/vtx-ellipsis-text/style/index.js.map +1 -1
  35. package/lib/vtx-ellipsis-text/style/index.less +13 -13
  36. package/lib/vtx-export/style/css.js.map +1 -1
  37. package/lib/vtx-export/style/index.js.map +1 -1
  38. package/lib/vtx-form-layout/Card.js.map +1 -1
  39. package/lib/vtx-form-layout/Divider.js.map +1 -1
  40. package/lib/vtx-form-layout/FormItem.js.map +1 -1
  41. package/lib/vtx-form-layout/Row.js.map +1 -1
  42. package/lib/vtx-form-layout/demo/Modal.less +43 -43
  43. package/lib/vtx-form-layout/index.js.map +1 -1
  44. package/lib/vtx-form-layout/style/css.js.map +1 -1
  45. package/lib/vtx-form-layout/style/index.js.map +1 -1
  46. package/lib/vtx-form-layout/style/index.less +216 -216
  47. package/lib/vtx-image/Preview.js.map +1 -1
  48. package/lib/vtx-image/PreviewGroup.js.map +1 -1
  49. package/lib/vtx-import/result.js.map +1 -1
  50. package/lib/vtx-import/style/css.js.map +1 -1
  51. package/lib/vtx-import/style/index.js.map +1 -1
  52. package/lib/vtx-import/style/index.less +8 -8
  53. package/lib/vtx-import2/CheckResult.js.map +1 -1
  54. package/lib/vtx-import2/Content.js.map +1 -1
  55. package/lib/vtx-import2/DownloadSvg.js.map +1 -1
  56. package/lib/vtx-import2/ImportResult.js.map +1 -1
  57. package/lib/vtx-import2/UploadSvg.js.map +1 -1
  58. package/lib/vtx-import2/style/css.js.map +1 -1
  59. package/lib/vtx-import2/style/index.js.map +1 -1
  60. package/lib/vtx-import2/style/index.less +102 -102
  61. package/lib/vtx-input/TextArea.js.map +1 -1
  62. package/lib/vtx-input/index.js.map +1 -1
  63. package/lib/vtx-input/style/css.js.map +1 -1
  64. package/lib/vtx-input/style/index.js.map +1 -1
  65. package/lib/vtx-input/style/index.less +24 -24
  66. package/lib/vtx-modal/index.js +2 -2
  67. package/lib/vtx-modal/index.js.map +1 -1
  68. package/lib/vtx-modal/style/css.js.map +1 -1
  69. package/lib/vtx-modal/style/index.js.map +1 -1
  70. package/lib/vtx-page-layout/Content.js.map +1 -1
  71. package/lib/vtx-page-layout/TableLayout.js +10 -10
  72. package/lib/vtx-page-layout/TableLayout.js.map +1 -1
  73. package/lib/vtx-page-layout/TableWrap.js.map +1 -1
  74. package/lib/vtx-page-layout/container.js.map +1 -1
  75. package/lib/vtx-page-layout/style/index.less +138 -138
  76. package/lib/vtx-rps-frame/index.js +18 -8
  77. package/lib/vtx-rps-frame/index.js.map +1 -1
  78. package/lib/vtx-scrollable-row/index.js.map +1 -1
  79. package/lib/vtx-scrollable-row/style/css.js.map +1 -1
  80. package/lib/vtx-scrollable-row/style/index.js.map +1 -1
  81. package/lib/vtx-scrollable-row/style/index.less +113 -113
  82. package/lib/vtx-search/VtxCol.js.map +1 -1
  83. package/lib/vtx-search/VtxRow.js.map +1 -1
  84. package/lib/vtx-search/index.js.map +1 -1
  85. package/lib/vtx-search/style/css.js.map +1 -1
  86. package/lib/vtx-search/style/index.js.map +1 -1
  87. package/lib/vtx-search/style/index.less +83 -83
  88. package/lib/vtx-search-map-input/index.js.map +1 -1
  89. package/lib/vtx-search-map-input/style/css.js.map +1 -1
  90. package/lib/vtx-search-map-input/style/index.js.map +1 -1
  91. package/lib/vtx-select/style/css.js.map +1 -1
  92. package/lib/vtx-select/style/index.js.map +1 -1
  93. package/lib/vtx-select/style/index.less +68 -68
  94. package/lib/vtx-signature/index.js.map +1 -1
  95. package/lib/vtx-signature/style/css.js.map +1 -1
  96. package/lib/vtx-signature/style/index.js.map +1 -1
  97. package/lib/vtx-signature/style/index.less +33 -33
  98. package/lib/vtx-split-pane/Resizer.js.map +1 -1
  99. package/lib/vtx-split-pane/SplitPane.js +4 -4
  100. package/lib/vtx-split-pane/SplitPane.js.map +1 -1
  101. package/lib/vtx-split-pane/style/css.js.map +1 -1
  102. package/lib/vtx-split-pane/style/index.js.map +1 -1
  103. package/lib/vtx-split-pane/style/index.less +76 -76
  104. package/lib/vtx-statistics-column/style/index.less +59 -59
  105. package/lib/vtx-time-picker/index.js.map +1 -1
  106. package/lib/vtx-time-picker/style/css.js.map +1 -1
  107. package/lib/vtx-time-picker/style/index.js.map +1 -1
  108. package/lib/vtx-upload/FilePreview.js.map +1 -1
  109. package/lib/vtx-upload/style/css.js.map +1 -1
  110. package/lib/vtx-upload/style/index.js.map +1 -1
  111. package/lib/vtx-upload/style/index.less +61 -61
  112. package/lib/vtx-wang-editor/style/css.js.map +1 -1
  113. package/lib/vtx-wang-editor/style/index.js.map +1 -1
  114. package/lib/vtx-wang-editor/style/index.less +12 -12
  115. package/lib/vtx-wang-editor/wangEditorUtil.js.map +1 -1
  116. package/lib/vtx-ztree/index.js +2 -2
  117. package/lib/vtx-ztree/index.js.map +1 -1
  118. package/lib/vtx-ztree/style/css.js.map +1 -1
  119. package/lib/vtx-ztree/style/index.js.map +1 -1
  120. package/lib/vtx-ztree/style/index.less +45 -45
  121. package/lib/vtx-ztree-select/index.js +85 -14
  122. package/lib/vtx-ztree-select/index.js.map +1 -1
  123. package/lib/vtx-ztree-select/style/css.js.map +1 -1
  124. package/lib/vtx-ztree-select/style/index.js.map +1 -1
  125. package/lib/vtx-ztree-select/style/index.less +99 -99
  126. package/package.json +126 -126
@@ -1,59 +1,59 @@
1
- @import (reference) '~antd/lib/style/themes/index.less';
2
- @import '../../style/themes/index';
3
-
4
- @prefix-cls: vtx-statistics-column;
5
- .@{prefix-cls} {
6
- position: relative;
7
- padding: 20px;
8
- background: @component-background;
9
- &-nowrap {
10
- overflow: hidden;
11
- white-space: nowrap;
12
- }
13
- &-item {
14
- position: relative;
15
- display: inline-block;
16
- text-align: center;
17
- &-space {
18
- padding: 0 24px;
19
- }
20
- &--label {
21
- margin-bottom: 8px;
22
- color: @statistics-text-color;
23
- line-height: 1;
24
- }
25
- &--value {
26
- color: @text-color;
27
- font-size: 24px;
28
- line-height: 1;
29
- }
30
- &_pointer {
31
- cursor: pointer;
32
- }
33
- &-total &--value {
34
- color: #13c2c2;
35
- }
36
- &-total {
37
- &::after {
38
- position: absolute;
39
- top: 50%;
40
- right: 0;
41
- width: 1px;
42
- height: 42px;
43
- background: #e8e8e8;
44
- transform: translate(0, -50%);
45
- content: '';
46
- }
47
- }
48
- }
49
- &-back {
50
- position: absolute;
51
- top: 0;
52
- left: 0;
53
- padding: 0 5px;
54
- color: @component-background;
55
- background-color: @primary-color;
56
- border-radius: @border-radius-base 0 @border-radius-base 0;
57
- cursor: pointer;
58
- }
59
- }
1
+ @import (reference) '~antd/lib/style/themes/index.less';
2
+ @import '../../style/themes/index';
3
+
4
+ @prefix-cls: vtx-statistics-column;
5
+ .@{prefix-cls} {
6
+ position: relative;
7
+ padding: 20px;
8
+ background: @component-background;
9
+ &-nowrap {
10
+ overflow: hidden;
11
+ white-space: nowrap;
12
+ }
13
+ &-item {
14
+ position: relative;
15
+ display: inline-block;
16
+ text-align: center;
17
+ &-space {
18
+ padding: 0 24px;
19
+ }
20
+ &--label {
21
+ margin-bottom: 8px;
22
+ color: @statistics-text-color;
23
+ line-height: 1;
24
+ }
25
+ &--value {
26
+ color: @text-color;
27
+ font-size: 24px;
28
+ line-height: 1;
29
+ }
30
+ &_pointer {
31
+ cursor: pointer;
32
+ }
33
+ &-total &--value {
34
+ color: #13c2c2;
35
+ }
36
+ &-total {
37
+ &::after {
38
+ position: absolute;
39
+ top: 50%;
40
+ right: 0;
41
+ width: 1px;
42
+ height: 42px;
43
+ background: #e8e8e8;
44
+ transform: translate(0, -50%);
45
+ content: '';
46
+ }
47
+ }
48
+ }
49
+ &-back {
50
+ position: absolute;
51
+ top: 0;
52
+ left: 0;
53
+ padding: 0 5px;
54
+ color: @component-background;
55
+ background-color: @primary-color;
56
+ border-radius: @border-radius-base 0 @border-radius-base 0;
57
+ cursor: pointer;
58
+ }
59
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["VtxTimePicker","props","ref","value","format","rest","newValue","moment","isMoment","React","forwardRef","propTypes","PropTypes","oneOfType","string","instanceOf"],"sources":["vtx-time-picker/index.jsx"],"sourcesContent":["import React from 'react';\r\nimport TimePicker from 'antd/lib/time-picker';\r\nimport moment from 'moment';\r\nimport PropTypes from 'prop-types';\r\n\r\nfunction VtxTimePicker(props, ref) {\r\n const { value, format = 'HH:mm:ss', ...rest } = props;\r\n const newValue = value ? (moment.isMoment(value) ? value : moment(value, format)) : null;\r\n return <TimePicker value={newValue} format={format} {...rest} ref={ref} />;\r\n}\r\n\r\nexport default React.forwardRef(VtxTimePicker);\r\n\r\nVtxTimePicker.propTypes = {\r\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.instanceOf(moment)]),\r\n format: PropTypes.string,\r\n};\r\n"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AACA;;;;;;;;;;;;AAEA,SAASA,aAAT,CAAuBC,KAAvB,EAA8BC,GAA9B,EAAmC;EAC/B,IAAQC,KAAR,GAAgDF,KAAhD,CAAQE,KAAR;EAAA,oBAAgDF,KAAhD,CAAeG,MAAf;EAAA,IAAeA,MAAf,8BAAwB,UAAxB;EAAA,IAAuCC,IAAvC,4BAAgDJ,KAAhD;;EACA,IAAMK,QAAQ,GAAGH,KAAK,GAAII,kBAAA,CAAOC,QAAP,CAAgBL,KAAhB,IAAyBA,KAAzB,GAAiC,IAAAI,kBAAA,EAAOJ,KAAP,EAAcC,MAAd,CAArC,GAA8D,IAApF;EACA,oBAAO,gCAAC,sBAAD;IAAY,KAAK,EAAEE,QAAnB;IAA6B,MAAM,EAAEF;EAArC,GAAiDC,IAAjD;IAAuD,GAAG,EAAEH;EAA5D,GAAP;AACH;;4BAEcO,iBAAA,CAAMC,UAAN,CAAiBV,aAAjB,C;;;AAEfA,aAAa,CAACW,SAAd,GAA0B;EACtBR,KAAK,EAAES,qBAAA,CAAUC,SAAV,CAAoB,CAACD,qBAAA,CAAUE,MAAX,EAAmBF,qBAAA,CAAUG,UAAV,CAAqBR,kBAArB,CAAnB,CAApB,CADe;EAEtBH,MAAM,EAAEQ,qBAAA,CAAUE;AAFI,CAA1B"}
1
+ {"version":3,"file":"index.js","names":["VtxTimePicker","props","ref","value","format","rest","newValue","moment","isMoment","React","forwardRef","propTypes","PropTypes","oneOfType","string","instanceOf"],"sources":["vtx-time-picker/index.jsx"],"sourcesContent":["import React from 'react';\nimport TimePicker from 'antd/lib/time-picker';\nimport moment from 'moment';\nimport PropTypes from 'prop-types';\n\nfunction VtxTimePicker(props, ref) {\n const { value, format = 'HH:mm:ss', ...rest } = props;\n const newValue = value ? (moment.isMoment(value) ? value : moment(value, format)) : null;\n return <TimePicker value={newValue} format={format} {...rest} ref={ref} />;\n}\n\nexport default React.forwardRef(VtxTimePicker);\n\nVtxTimePicker.propTypes = {\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.instanceOf(moment)]),\n format: PropTypes.string,\n};\n"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AACA;;;;;;;;;;;;AAEA,SAASA,aAAT,CAAuBC,KAAvB,EAA8BC,GAA9B,EAAmC;EAC/B,IAAQC,KAAR,GAAgDF,KAAhD,CAAQE,KAAR;EAAA,oBAAgDF,KAAhD,CAAeG,MAAf;EAAA,IAAeA,MAAf,8BAAwB,UAAxB;EAAA,IAAuCC,IAAvC,4BAAgDJ,KAAhD;;EACA,IAAMK,QAAQ,GAAGH,KAAK,GAAII,kBAAA,CAAOC,QAAP,CAAgBL,KAAhB,IAAyBA,KAAzB,GAAiC,IAAAI,kBAAA,EAAOJ,KAAP,EAAcC,MAAd,CAArC,GAA8D,IAApF;EACA,oBAAO,gCAAC,sBAAD;IAAY,KAAK,EAAEE,QAAnB;IAA6B,MAAM,EAAEF;EAArC,GAAiDC,IAAjD;IAAuD,GAAG,EAAEH;EAA5D,GAAP;AACH;;4BAEcO,iBAAA,CAAMC,UAAN,CAAiBV,aAAjB,C;;;AAEfA,aAAa,CAACW,SAAd,GAA0B;EACtBR,KAAK,EAAES,qBAAA,CAAUC,SAAV,CAAoB,CAACD,qBAAA,CAAUE,MAAX,EAAmBF,qBAAA,CAAUG,UAAV,CAAqBR,kBAArB,CAAnB,CAApB,CADe;EAEtBH,MAAM,EAAEQ,qBAAA,CAAUE;AAFI,CAA1B"}
@@ -1 +1 @@
1
- {"version":3,"file":"css.js","names":[],"sources":["vtx-time-picker/style/index.js"],"sourcesContent":["import 'antd/lib/time-picker/style/index';\r\n"],"mappings":";;AAAA"}
1
+ {"version":3,"file":"css.js","names":[],"sources":["vtx-time-picker/style/index.js"],"sourcesContent":["import 'antd/lib/time-picker/style/index';\n"],"mappings":";;AAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["vtx-time-picker/style/index.js"],"sourcesContent":["import 'antd/lib/time-picker/style/index';\r\n"],"mappings":";;AAAA"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["vtx-time-picker/style/index.js"],"sourcesContent":["import 'antd/lib/time-picker/style/index';\n"],"mappings":";;AAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"FilePreview.js","names":["Preview","props","type","name","url","downloadUrl","visible","onCancel","player","timer","setTimeout","document","getElementById","Player","id","width","height","controlPlugins","volume","playbackRate","modalProps","title","cancel","footer","createForm","wrapClassName","destroy","clearTimeout","border","propTypes","PropTypes","string","bool","func","reqURL","formDom","createElement","method","action","style","body","appendChild","submit","remove"],"sources":["vtx-upload/FilePreview.jsx"],"sourcesContent":["import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport Player from 'xgplayer/dist/simple_player';\r\nimport { volume, playbackRate } from 'xgplayer/dist/controls';\r\nimport Modal from 'antd/lib/modal';\r\nimport Button from 'antd/lib/button';\r\n\r\nfunction Preview(props) {\r\n const { type, name, url, downloadUrl, visible, onCancel } = props;\r\n\r\n let player = null,\r\n timer = null;\r\n timer = setTimeout(() => {\r\n if (type == 'video' && document.getElementById('vs')) {\r\n player = new Player({\r\n id: 'vs',\r\n url: url,\r\n width: 600,\r\n height: 337.5,\r\n controlPlugins: [\r\n volume, //音量\r\n playbackRate, //播放倍速\r\n ],\r\n playbackRate: [0.5, 0.75, 1, 1.5, 2], //传入倍速可选数组\r\n });\r\n }\r\n }, 500);\r\n\r\n let modalProps = {\r\n title: name,\r\n visible,\r\n onCancel: () => cancel(),\r\n footer: [\r\n <Button key=\"close\" onClick={() => cancel()}>\r\n 关闭\r\n </Button>,\r\n <Button key=\"download\" type=\"primary\" onClick={() => createForm(downloadUrl)}>\r\n 下载\r\n </Button>,\r\n ],\r\n };\r\n if (type == 'file') {\r\n modalProps = {\r\n ...modalProps,\r\n wrapClassName: 'vtx-modal-maxClass',\r\n };\r\n }\r\n if (type == 'video') {\r\n modalProps = {\r\n ...modalProps,\r\n width: 648,\r\n };\r\n }\r\n\r\n const cancel = () => {\r\n //销毁播放器\r\n player && player.destroy();\r\n timer && clearTimeout(timer);\r\n onCancel();\r\n };\r\n\r\n return (\r\n <Modal {...modalProps}>\r\n {type == 'file' ? (\r\n <iframe\r\n src={url}\r\n style={{ height: '100%', width: '100%', border: 'none' }}\r\n ></iframe>\r\n ) : null}\r\n {type == 'video' ? <div id=\"vs\"></div> : null}\r\n </Modal>\r\n );\r\n}\r\n\r\nPreview.propTypes = {\r\n type: PropTypes.string,\r\n name: PropTypes.string,\r\n url: PropTypes.string,\r\n visible: PropTypes.bool,\r\n onCancel: PropTypes.func,\r\n downloadUrl: PropTypes.string,\r\n};\r\n\r\nexport default Preview;\r\n\r\nconst createForm = function(reqURL) {\r\n const formDom = document.createElement('form'); // 定义一个form表单\r\n formDom.method = 'post';\r\n formDom.action = reqURL;\r\n formDom.style = 'display:none';\r\n document.body.appendChild(formDom); // 将表单放置在web中\r\n formDom.submit(); // 表单提交\r\n formDom.remove();\r\n};\r\n"],"mappings":"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"}
1
+ {"version":3,"file":"FilePreview.js","names":["Preview","props","type","name","url","downloadUrl","visible","onCancel","player","timer","setTimeout","document","getElementById","Player","id","width","height","controlPlugins","volume","playbackRate","modalProps","title","cancel","footer","createForm","wrapClassName","destroy","clearTimeout","border","propTypes","PropTypes","string","bool","func","reqURL","formDom","createElement","method","action","style","body","appendChild","submit","remove"],"sources":["vtx-upload/FilePreview.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport Player from 'xgplayer/dist/simple_player';\nimport { volume, playbackRate } from 'xgplayer/dist/controls';\nimport Modal from 'antd/lib/modal';\nimport Button from 'antd/lib/button';\n\nfunction Preview(props) {\n const { type, name, url, downloadUrl, visible, onCancel } = props;\n\n let player = null,\n timer = null;\n timer = setTimeout(() => {\n if (type == 'video' && document.getElementById('vs')) {\n player = new Player({\n id: 'vs',\n url: url,\n width: 600,\n height: 337.5,\n controlPlugins: [\n volume, //音量\n playbackRate, //播放倍速\n ],\n playbackRate: [0.5, 0.75, 1, 1.5, 2], //传入倍速可选数组\n });\n }\n }, 500);\n\n let modalProps = {\n title: name,\n visible,\n onCancel: () => cancel(),\n footer: [\n <Button key=\"close\" onClick={() => cancel()}>\n 关闭\n </Button>,\n <Button key=\"download\" type=\"primary\" onClick={() => createForm(downloadUrl)}>\n 下载\n </Button>,\n ],\n };\n if (type == 'file') {\n modalProps = {\n ...modalProps,\n wrapClassName: 'vtx-modal-maxClass',\n };\n }\n if (type == 'video') {\n modalProps = {\n ...modalProps,\n width: 648,\n };\n }\n\n const cancel = () => {\n //销毁播放器\n player && player.destroy();\n timer && clearTimeout(timer);\n onCancel();\n };\n\n return (\n <Modal {...modalProps}>\n {type == 'file' ? (\n <iframe\n src={url}\n style={{ height: '100%', width: '100%', border: 'none' }}\n ></iframe>\n ) : null}\n {type == 'video' ? <div id=\"vs\"></div> : null}\n </Modal>\n );\n}\n\nPreview.propTypes = {\n type: PropTypes.string,\n name: PropTypes.string,\n url: PropTypes.string,\n visible: PropTypes.bool,\n onCancel: PropTypes.func,\n downloadUrl: PropTypes.string,\n};\n\nexport default Preview;\n\nconst createForm = function(reqURL) {\n const formDom = document.createElement('form'); // 定义一个form表单\n formDom.method = 'post';\n formDom.action = reqURL;\n formDom.style = 'display:none';\n document.body.appendChild(formDom); // 将表单放置在web中\n formDom.submit(); // 表单提交\n formDom.remove();\n};\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"css.js","names":[],"sources":["vtx-upload/style/index.js"],"sourcesContent":["import 'antd/lib/upload/style';\r\nimport 'antd/lib/button/style';\r\nimport 'antd/lib/message/style';\r\nimport 'antd/lib/modal/style';\r\nimport 'antd/lib/button/style';\r\nimport 'viewerjs/dist/viewer.css';\r\nimport './index.less';\r\n"],"mappings":";;AAAA;;AACA;;AACA;;AACA;;AAEA;;AACA"}
1
+ {"version":3,"file":"css.js","names":[],"sources":["vtx-upload/style/index.js"],"sourcesContent":["import 'antd/lib/upload/style';\nimport 'antd/lib/button/style';\nimport 'antd/lib/message/style';\nimport 'antd/lib/modal/style';\nimport 'antd/lib/button/style';\nimport 'viewerjs/dist/viewer.css';\nimport './index.less';\n"],"mappings":";;AAAA;;AACA;;AACA;;AACA;;AAEA;;AACA"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["vtx-upload/style/index.js"],"sourcesContent":["import 'antd/lib/upload/style';\r\nimport 'antd/lib/button/style';\r\nimport 'antd/lib/message/style';\r\nimport 'antd/lib/modal/style';\r\nimport 'antd/lib/button/style';\r\nimport 'viewerjs/dist/viewer.css';\r\nimport './index.less';\r\n"],"mappings":";;AAAA;;AACA;;AACA;;AACA;;AAEA;;AACA"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["vtx-upload/style/index.js"],"sourcesContent":["import 'antd/lib/upload/style';\nimport 'antd/lib/button/style';\nimport 'antd/lib/message/style';\nimport 'antd/lib/modal/style';\nimport 'antd/lib/button/style';\nimport 'viewerjs/dist/viewer.css';\nimport './index.less';\n"],"mappings":";;AAAA;;AACA;;AACA;;AACA;;AAEA;;AACA"}
@@ -1,61 +1,61 @@
1
- @import (reference) '~antd/lib/style/themes/index.less';
2
-
3
- .vtx-ui-upload-uploadct {
4
- overflow: hidden; //upload组件由于float会失去高度
5
- .ant-upload-list-item-info {
6
- &::before {
7
- height: 0 !important;
8
- }
9
- }
10
- }
11
- .vtx_ui_upload_onlinepreview {
12
- width: 100%;
13
- .vtx_ui_upload_previewLine {
14
- position: relative;
15
- padding: 0 8px;
16
- color: @primary-color;
17
- line-height: 25px;
18
- cursor: pointer;
19
- .vtx_ui_upload_iconHint {
20
- margin-right: 5px;
21
- color: #666;
22
- }
23
- .vtx_ui_upload_action_box {
24
- position: absolute;
25
- top: 2px;
26
- right: 8px;
27
- display: none;
28
- .vtx_ui_upload_action_btn {
29
- margin-left: 5px;
30
- color: #aaa;
31
- &:hover {
32
- color: #333;
33
- }
34
- }
35
- }
36
- &:hover {
37
- background-color: #ecf6fd;
38
- .vtx_ui_upload_action_box {
39
- display: inline-block;
40
- }
41
- }
42
- }
43
- }
44
-
45
- .vtx-modal-maxClass {
46
- .ant-modal {
47
- top: 0 !important;
48
- left: 0 !important;
49
- width: 100% !important;
50
- height: 100% !important;
51
- padding-bottom: 0 !important;
52
- overflow: hidden;
53
- .ant-modal-content {
54
- height: 100%;
55
- .ant-modal-body {
56
- height: e('calc(100% - 108px)') !important;
57
- background-color: #fbfbfb;
58
- }
59
- }
60
- }
61
- }
1
+ @import (reference) '~antd/lib/style/themes/index.less';
2
+
3
+ .vtx-ui-upload-uploadct {
4
+ overflow: hidden; //upload组件由于float会失去高度
5
+ .ant-upload-list-item-info {
6
+ &::before {
7
+ height: 0 !important;
8
+ }
9
+ }
10
+ }
11
+ .vtx_ui_upload_onlinepreview {
12
+ width: 100%;
13
+ .vtx_ui_upload_previewLine {
14
+ position: relative;
15
+ padding: 0 8px;
16
+ color: @primary-color;
17
+ line-height: 25px;
18
+ cursor: pointer;
19
+ .vtx_ui_upload_iconHint {
20
+ margin-right: 5px;
21
+ color: #666;
22
+ }
23
+ .vtx_ui_upload_action_box {
24
+ position: absolute;
25
+ top: 2px;
26
+ right: 8px;
27
+ display: none;
28
+ .vtx_ui_upload_action_btn {
29
+ margin-left: 5px;
30
+ color: #aaa;
31
+ &:hover {
32
+ color: #333;
33
+ }
34
+ }
35
+ }
36
+ &:hover {
37
+ background-color: #ecf6fd;
38
+ .vtx_ui_upload_action_box {
39
+ display: inline-block;
40
+ }
41
+ }
42
+ }
43
+ }
44
+
45
+ .vtx-modal-maxClass {
46
+ .ant-modal {
47
+ top: 0 !important;
48
+ left: 0 !important;
49
+ width: 100% !important;
50
+ height: 100% !important;
51
+ padding-bottom: 0 !important;
52
+ overflow: hidden;
53
+ .ant-modal-content {
54
+ height: 100%;
55
+ .ant-modal-body {
56
+ height: e('calc(100% - 108px)') !important;
57
+ background-color: #fbfbfb;
58
+ }
59
+ }
60
+ }
61
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"css.js","names":[],"sources":["vtx-wang-editor/style/index.js"],"sourcesContent":["import '@wangeditor/editor/dist/css/style.css';\r\nimport './index.less';\r\n"],"mappings":";;AAAA;;AACA"}
1
+ {"version":3,"file":"css.js","names":[],"sources":["vtx-wang-editor/style/index.js"],"sourcesContent":["import '@wangeditor/editor/dist/css/style.css';\nimport './index.less';\n"],"mappings":";;AAAA;;AACA"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["vtx-wang-editor/style/index.js"],"sourcesContent":["import '@wangeditor/editor/dist/css/style.css';\r\nimport './index.less';\r\n"],"mappings":";;AAAA;;AACA"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["vtx-wang-editor/style/index.js"],"sourcesContent":["import '@wangeditor/editor/dist/css/style.css';\nimport './index.less';\n"],"mappings":";;AAAA;;AACA"}
@@ -1,12 +1,12 @@
1
- @import (reference) '~antd/lib/style/themes/index.less';
2
-
3
- .vtx-wang-editor {
4
- border: @border-width-base @border-style-base @border-color-base;
5
- &.w-e-full-screen-container {
6
- z-index: 999999;
7
- }
8
- &-content {
9
- height: 350px;
10
- border-top: @border-width-base @border-style-base @border-color-base;
11
- }
12
- }
1
+ @import (reference) '~antd/lib/style/themes/index.less';
2
+
3
+ .vtx-wang-editor {
4
+ border: @border-width-base @border-style-base @border-color-base;
5
+ &.w-e-full-screen-container {
6
+ z-index: 999999;
7
+ }
8
+ &-content {
9
+ height: 350px;
10
+ border-top: @border-width-base @border-style-base @border-color-base;
11
+ }
12
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"wangEditorUtil.js","names":["replaceAllSpanFontSize","htmlData","spanReg","fontReg","fontSizeReg","spanArr","match","Array","isArray","length","fontSizeReplaceList","i","fontArr","fontSize","ptValue","split","replace","indexOf","value","toFontSize","parseInt","Number","replaceAll","size","result","sizeArr","includes","findAllImgSrcsFromHtml","imgReg","srcReg","widthReg","heightReg","arr","srcArr","src","width","height","push","url","img","withEmptyHtml","editor","getHtml","newEditor","isEmpty","extractImageDataFromRtf","rtfData","regexPictureHeader","regexPicture","RegExp","source","images","image","imageType","hex","type","replaceImagesFileSourceWithInlineRepresentation","imageSrcs","imagesHexSources","isBase64Data","uploadUrl","downloadUrl","newSrc","_convertHexToBase64","formData","FormData","blob","convertBase64UrlToBlob","imgName","slice","file","File","append","window","fetch","method","body","then","response","json","res","data","id","hexString","btoa","map","char","String","fromCharCode","join","dataurl","_arr","substring","mime","bstr","atob","n","u8arr","Uint8Array","charCodeAt","Blob"],"sources":["vtx-wang-editor/wangEditorUtil.js"],"sourcesContent":["export function replaceAllSpanFontSize(htmlData) {\r\n const spanReg = /\\<span([\\s\\S]+?)\\<\\/span\\>/g;\r\n const fontReg = /\\<font([\\s\\S]+?)\\<\\/font\\>/g;\r\n const fontSizeReg = /font-size:([\\s\\S]+?)\\;/g;\r\n\r\n let spanArr = htmlData.match(spanReg); // 筛选出所有的span\r\n if (!spanArr || (Array.isArray(spanArr) && !spanArr.length)) {\r\n return false;\r\n }\r\n let fontSizeReplaceList = {};\r\n for (let i = 0; i < spanArr.length; i++) {\r\n const fontArr = spanArr[i].match(fontReg);\r\n if (fontArr?.length > 0) {\r\n const fontSize = spanArr[i].match(fontSizeReg);\r\n if (fontSize?.length > 0) {\r\n const ptValue = fontSize[0].split(':')[1].replace(';', '');\r\n\r\n if (ptValue.indexOf('pt') > -1) {\r\n const value = toFontSize(parseInt(Number(ptValue.replace('pt', '')) / 0.75));\r\n fontSizeReplaceList[fontSize[0]] = `font-size:${value}px;`;\r\n }\r\n }\r\n }\r\n }\r\n for (let i in fontSizeReplaceList) {\r\n htmlData = htmlData.replaceAll(i, fontSizeReplaceList[i]);\r\n }\r\n return htmlData;\r\n}\r\n// 判断字体在这个范围之内,不在这个范围之内 则不显示字体大小\r\nfunction toFontSize(size) {\r\n let result = size;\r\n const sizeArr = [12, 13, 14, 15, 16, 19, 22, 24, 29, 32, 40, 48];\r\n if (sizeArr.includes(size)) {\r\n return result;\r\n }\r\n if (size < sizeArr[0]) {\r\n return sizeArr[0];\r\n }\r\n if (size > sizeArr[sizeArr.length - 1]) {\r\n return sizeArr[sizeArr.length - 1];\r\n }\r\n\r\n for (let i = 1; i < sizeArr.length; i++) {\r\n if (size >= sizeArr[i - 1] && size <= sizeArr[i]) {\r\n if (size - sizeArr[i - 1] < sizeArr[i] - size) {\r\n result = sizeArr[i - 1];\r\n } else {\r\n result = sizeArr[i];\r\n }\r\n break;\r\n }\r\n }\r\n return result;\r\n}\r\n\r\nexport function findAllImgSrcsFromHtml(htmlData) {\r\n let imgReg = /<img.*?(?:>|\\/>)/gi; //匹配图片中的img标签\r\n let srcReg = /src=[\\'\\\"]?([^\\'\\\"]*)[\\'\\\"]?/i; // 匹配图片中的src\r\n let widthReg = /width=[\\'\\\"]?([^\\'\\\"]*)[\\'\\\"]?/i; // 匹配图片中的width\r\n let heightReg = /height=[\\'\\\"]?([^\\'\\\"]*)[\\'\\\"]?/i; // 匹配图片中的height\r\n\r\n let arr = htmlData.match(imgReg); //筛选出所有的img\r\n if (!arr || (Array.isArray(arr) && !arr.length)) {\r\n return false;\r\n }\r\n\r\n let srcArr = [];\r\n for (let i = 0; i < arr.length; i++) {\r\n let src = arr[i].match(srcReg);\r\n let width = arr[i].match(widthReg);\r\n let height = arr[i].match(heightReg);\r\n // 获取图片地址\r\n srcArr.push({\r\n width: width[1],\r\n height: height[1],\r\n url: src[1],\r\n img: arr[i],\r\n });\r\n }\r\n\r\n return srcArr;\r\n}\r\n// 处理为空的时候\r\nexport function withEmptyHtml(editor) {\r\n const { getHtml } = editor;\r\n const newEditor = editor;\r\n newEditor.getHtml = () => {\r\n if (newEditor.isEmpty()) {\r\n return '';\r\n }\r\n return getHtml();\r\n };\r\n\r\n return newEditor;\r\n}\r\n\r\nexport function extractImageDataFromRtf(rtfData) {\r\n if (!rtfData) {\r\n return [];\r\n }\r\n\r\n const regexPictureHeader = /{\\\\pict[\\s\\S]+?({\\\\\\*\\\\blipuid\\s?[\\da-fA-F]+)[\\s}]*/;\r\n const regexPicture = new RegExp(\r\n '(?:(' + regexPictureHeader.source + '))([\\\\da-fA-F\\\\s]+)\\\\}',\r\n 'g',\r\n );\r\n const images = rtfData.match(regexPicture);\r\n const result = [];\r\n\r\n if (images) {\r\n for (const image of images) {\r\n let imageType = false;\r\n\r\n if (image.includes('\\\\pngblip')) {\r\n imageType = 'image/png';\r\n } else if (image.includes('\\\\jpegblip')) {\r\n imageType = 'image/jpeg';\r\n }\r\n\r\n if (imageType) {\r\n result.push({\r\n hex: image.replace(regexPictureHeader, '').replace(/[^\\da-fA-F]/g, ''),\r\n type: imageType,\r\n });\r\n }\r\n }\r\n }\r\n\r\n return result;\r\n}\r\n\r\nexport async function replaceImagesFileSourceWithInlineRepresentation(\r\n htmlData,\r\n imageSrcs,\r\n imagesHexSources,\r\n isBase64Data = true,\r\n uploadUrl,\r\n downloadUrl,\r\n) {\r\n if (imageSrcs.length === imagesHexSources.length) {\r\n for (let i = 0; i < imageSrcs.length; i++) {\r\n const url = imageSrcs?.[i]?.url;\r\n const width = imageSrcs?.[i]?.width;\r\n const height = imageSrcs?.[i]?.height;\r\n const img = imageSrcs?.[i]?.img;\r\n const newSrc = isBase64Data\r\n ? `data:${imagesHexSources[i].type};base64,${_convertHexToBase64(\r\n imagesHexSources[i].hex,\r\n )}`\r\n : imagesHexSources[i];\r\n const formData = new FormData();\r\n let blob = convertBase64UrlToBlob(newSrc);\r\n let imgName = url.split('\\\\')?.slice(-1)?.[0] || 'image.jpg';\r\n let file = new File([blob], imgName);\r\n formData.append('file', file);\r\n const res = await window\r\n .fetch(uploadUrl, {\r\n method: 'POST',\r\n body: formData,\r\n })\r\n .then(function(response) {\r\n return response.json();\r\n });\r\n htmlData = htmlData.replace(\r\n img,\r\n `<img src=\"${downloadUrl}${res.data[0].id}\" style=\"width:${width}px;height:${height}px\"`,\r\n );\r\n }\r\n }\r\n return htmlData;\r\n}\r\n\r\nfunction _convertHexToBase64(hexString) {\r\n return btoa(\r\n hexString\r\n .match(/\\w{2}/g)\r\n .map(char => {\r\n return String.fromCharCode(parseInt(char, 16));\r\n })\r\n .join(''),\r\n );\r\n}\r\n\r\nfunction convertBase64UrlToBlob(dataurl) {\r\n const arr = dataurl.split(',');\r\n //注意base64的最后面中括号和引号是不转译的\r\n const _arr = arr[1].substring(0, arr[1].length - 2);\r\n const mime = arr[0].match(/:(.*?);/)[1],\r\n bstr = atob(_arr);\r\n let n = bstr.length;\r\n const u8arr = new Uint8Array(n);\r\n while (n--) {\r\n u8arr[n] = bstr.charCodeAt(n);\r\n }\r\n return new Blob([u8arr], {\r\n type: mime,\r\n });\r\n}\r\n"],"mappings":"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"}
1
+ {"version":3,"file":"wangEditorUtil.js","names":["replaceAllSpanFontSize","htmlData","spanReg","fontReg","fontSizeReg","spanArr","match","Array","isArray","length","fontSizeReplaceList","i","fontArr","fontSize","ptValue","split","replace","indexOf","value","toFontSize","parseInt","Number","replaceAll","size","result","sizeArr","includes","findAllImgSrcsFromHtml","imgReg","srcReg","widthReg","heightReg","arr","srcArr","src","width","height","push","url","img","withEmptyHtml","editor","getHtml","newEditor","isEmpty","extractImageDataFromRtf","rtfData","regexPictureHeader","regexPicture","RegExp","source","images","image","imageType","hex","type","replaceImagesFileSourceWithInlineRepresentation","imageSrcs","imagesHexSources","isBase64Data","uploadUrl","downloadUrl","newSrc","_convertHexToBase64","formData","FormData","blob","convertBase64UrlToBlob","imgName","slice","file","File","append","window","fetch","method","body","then","response","json","res","data","id","hexString","btoa","map","char","String","fromCharCode","join","dataurl","_arr","substring","mime","bstr","atob","n","u8arr","Uint8Array","charCodeAt","Blob"],"sources":["vtx-wang-editor/wangEditorUtil.js"],"sourcesContent":["export function replaceAllSpanFontSize(htmlData) {\n const spanReg = /\\<span([\\s\\S]+?)\\<\\/span\\>/g;\n const fontReg = /\\<font([\\s\\S]+?)\\<\\/font\\>/g;\n const fontSizeReg = /font-size:([\\s\\S]+?)\\;/g;\n\n let spanArr = htmlData.match(spanReg); // 筛选出所有的span\n if (!spanArr || (Array.isArray(spanArr) && !spanArr.length)) {\n return false;\n }\n let fontSizeReplaceList = {};\n for (let i = 0; i < spanArr.length; i++) {\n const fontArr = spanArr[i].match(fontReg);\n if (fontArr?.length > 0) {\n const fontSize = spanArr[i].match(fontSizeReg);\n if (fontSize?.length > 0) {\n const ptValue = fontSize[0].split(':')[1].replace(';', '');\n\n if (ptValue.indexOf('pt') > -1) {\n const value = toFontSize(parseInt(Number(ptValue.replace('pt', '')) / 0.75));\n fontSizeReplaceList[fontSize[0]] = `font-size:${value}px;`;\n }\n }\n }\n }\n for (let i in fontSizeReplaceList) {\n htmlData = htmlData.replaceAll(i, fontSizeReplaceList[i]);\n }\n return htmlData;\n}\n// 判断字体在这个范围之内,不在这个范围之内 则不显示字体大小\nfunction toFontSize(size) {\n let result = size;\n const sizeArr = [12, 13, 14, 15, 16, 19, 22, 24, 29, 32, 40, 48];\n if (sizeArr.includes(size)) {\n return result;\n }\n if (size < sizeArr[0]) {\n return sizeArr[0];\n }\n if (size > sizeArr[sizeArr.length - 1]) {\n return sizeArr[sizeArr.length - 1];\n }\n\n for (let i = 1; i < sizeArr.length; i++) {\n if (size >= sizeArr[i - 1] && size <= sizeArr[i]) {\n if (size - sizeArr[i - 1] < sizeArr[i] - size) {\n result = sizeArr[i - 1];\n } else {\n result = sizeArr[i];\n }\n break;\n }\n }\n return result;\n}\n\nexport function findAllImgSrcsFromHtml(htmlData) {\n let imgReg = /<img.*?(?:>|\\/>)/gi; //匹配图片中的img标签\n let srcReg = /src=[\\'\\\"]?([^\\'\\\"]*)[\\'\\\"]?/i; // 匹配图片中的src\n let widthReg = /width=[\\'\\\"]?([^\\'\\\"]*)[\\'\\\"]?/i; // 匹配图片中的width\n let heightReg = /height=[\\'\\\"]?([^\\'\\\"]*)[\\'\\\"]?/i; // 匹配图片中的height\n\n let arr = htmlData.match(imgReg); //筛选出所有的img\n if (!arr || (Array.isArray(arr) && !arr.length)) {\n return false;\n }\n\n let srcArr = [];\n for (let i = 0; i < arr.length; i++) {\n let src = arr[i].match(srcReg);\n let width = arr[i].match(widthReg);\n let height = arr[i].match(heightReg);\n // 获取图片地址\n srcArr.push({\n width: width[1],\n height: height[1],\n url: src[1],\n img: arr[i],\n });\n }\n\n return srcArr;\n}\n// 处理为空的时候\nexport function withEmptyHtml(editor) {\n const { getHtml } = editor;\n const newEditor = editor;\n newEditor.getHtml = () => {\n if (newEditor.isEmpty()) {\n return '';\n }\n return getHtml();\n };\n\n return newEditor;\n}\n\nexport function extractImageDataFromRtf(rtfData) {\n if (!rtfData) {\n return [];\n }\n\n const regexPictureHeader = /{\\\\pict[\\s\\S]+?({\\\\\\*\\\\blipuid\\s?[\\da-fA-F]+)[\\s}]*/;\n const regexPicture = new RegExp(\n '(?:(' + regexPictureHeader.source + '))([\\\\da-fA-F\\\\s]+)\\\\}',\n 'g',\n );\n const images = rtfData.match(regexPicture);\n const result = [];\n\n if (images) {\n for (const image of images) {\n let imageType = false;\n\n if (image.includes('\\\\pngblip')) {\n imageType = 'image/png';\n } else if (image.includes('\\\\jpegblip')) {\n imageType = 'image/jpeg';\n }\n\n if (imageType) {\n result.push({\n hex: image.replace(regexPictureHeader, '').replace(/[^\\da-fA-F]/g, ''),\n type: imageType,\n });\n }\n }\n }\n\n return result;\n}\n\nexport async function replaceImagesFileSourceWithInlineRepresentation(\n htmlData,\n imageSrcs,\n imagesHexSources,\n isBase64Data = true,\n uploadUrl,\n downloadUrl,\n) {\n if (imageSrcs.length === imagesHexSources.length) {\n for (let i = 0; i < imageSrcs.length; i++) {\n const url = imageSrcs?.[i]?.url;\n const width = imageSrcs?.[i]?.width;\n const height = imageSrcs?.[i]?.height;\n const img = imageSrcs?.[i]?.img;\n const newSrc = isBase64Data\n ? `data:${imagesHexSources[i].type};base64,${_convertHexToBase64(\n imagesHexSources[i].hex,\n )}`\n : imagesHexSources[i];\n const formData = new FormData();\n let blob = convertBase64UrlToBlob(newSrc);\n let imgName = url.split('\\\\')?.slice(-1)?.[0] || 'image.jpg';\n let file = new File([blob], imgName);\n formData.append('file', file);\n const res = await window\n .fetch(uploadUrl, {\n method: 'POST',\n body: formData,\n })\n .then(function(response) {\n return response.json();\n });\n htmlData = htmlData.replace(\n img,\n `<img src=\"${downloadUrl}${res.data[0].id}\" style=\"width:${width}px;height:${height}px\"`,\n );\n }\n }\n return htmlData;\n}\n\nfunction _convertHexToBase64(hexString) {\n return btoa(\n hexString\n .match(/\\w{2}/g)\n .map(char => {\n return String.fromCharCode(parseInt(char, 16));\n })\n .join(''),\n );\n}\n\nfunction convertBase64UrlToBlob(dataurl) {\n const arr = dataurl.split(',');\n //注意base64的最后面中括号和引号是不转译的\n const _arr = arr[1].substring(0, arr[1].length - 2);\n const mime = arr[0].match(/:(.*?);/)[1],\n bstr = atob(_arr);\n let n = bstr.length;\n const u8arr = new Uint8Array(n);\n while (n--) {\n u8arr[n] = bstr.charCodeAt(n);\n }\n return new Blob([u8arr], {\n type: mime,\n });\n}\n"],"mappings":"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"}
@@ -462,8 +462,8 @@ var VtxZtree = /*#__PURE__*/function (_React$Component) {
462
462
 
463
463
  processShowNodes(zTreeObj, nodesShow, _keywords); // nodes should be reprocessed to show correctly
464
464
  }
465
- /**
466
- * reprocess of nodes before showing
465
+ /**
466
+ * reprocess of nodes before showing
467
467
  */
468
468
 
469
469