ocpview-plus 0.0.1

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 (195) hide show
  1. package/LICENSE +0 -0
  2. package/README.md +0 -0
  3. package/dist/efviewplus.min.esm.js +99954 -0
  4. package/dist/efviewplus.min.js +142 -0
  5. package/dist/locale/lang.js +1 -0
  6. package/dist/locale/zh-CN.js +1 -0
  7. package/dist/locale/zh-TW.js +1 -0
  8. package/dist/locale/zh-UG.js +1 -0
  9. package/dist/style.css +9 -0
  10. package/dist/styles/efviewplus.css +1 -0
  11. package/package.json +144 -0
  12. package/src/components/base/controlbase.vue +191 -0
  13. package/src/components/base/controlbox.vue +102 -0
  14. package/src/components/base/index.js +3 -0
  15. package/src/components/base/load.js +20 -0
  16. package/src/components/base/probase.js +220 -0
  17. package/src/components/base/size.js +78 -0
  18. package/src/components/billbox/billbox.vue +68 -0
  19. package/src/components/billbox/index.js +2 -0
  20. package/src/components/cascaderbox/cascaderbox.vue +184 -0
  21. package/src/components/cascaderbox/index.js +2 -0
  22. package/src/components/checkbox/checkbox.vue +76 -0
  23. package/src/components/checkbox/checkgroupbox.vue +104 -0
  24. package/src/components/checkbox/index.js +3 -0
  25. package/src/components/colorbox/colorbox.vue +44 -0
  26. package/src/components/colorbox/index.js +2 -0
  27. package/src/components/combobox/combobox.vue +220 -0
  28. package/src/components/combobox/index.js +2 -0
  29. package/src/components/conditionbox/conditionbase.vue +195 -0
  30. package/src/components/conditionbox/conditionbox.vue +63 -0
  31. package/src/components/conditionbox/conditionfilterbox.vue +477 -0
  32. package/src/components/conditionbox/conditionselectorbox.vue +237 -0
  33. package/src/components/conditionbox/index.js +5 -0
  34. package/src/components/conditionbox/queryconditionbox.vue +26 -0
  35. package/src/components/conditionbox/queryconditionboxbase.vue +124 -0
  36. package/src/components/conditionbox/searchconditionbox.vue +114 -0
  37. package/src/components/conditionbox/searchgrid.vue +391 -0
  38. package/src/components/datebox/datebox.vue +129 -0
  39. package/src/components/datebox/daterangebox.vue +155 -0
  40. package/src/components/datebox/index.js +3 -0
  41. package/src/components/form/baseform.vue +677 -0
  42. package/src/components/form/detailsbox.vue +487 -0
  43. package/src/components/form/formbox.vue +29 -0
  44. package/src/components/form/formcardbox.vue +268 -0
  45. package/src/components/form/formcardgroupbox.vue +252 -0
  46. package/src/components/form/formcompro.js +19 -0
  47. package/src/components/form/formdetail.vue +129 -0
  48. package/src/components/form/formdetailtwo.vue +302 -0
  49. package/src/components/form/index.js +8 -0
  50. package/src/components/form/toolanchor.js +46 -0
  51. package/src/components/form/workform.vue +168 -0
  52. package/src/components/grid/basegrid.vue +1061 -0
  53. package/src/components/grid/editgrid.vue +51 -0
  54. package/src/components/grid/editgridbase.vue +947 -0
  55. package/src/components/grid/editgridcard.vue +193 -0
  56. package/src/components/grid/expandrow.vue +137 -0
  57. package/src/components/grid/index.js +6 -0
  58. package/src/components/grid/viewgrid.vue +122 -0
  59. package/src/components/grid/viewgridbase.vue +1284 -0
  60. package/src/components/icon/common-icon.vue +53 -0
  61. package/src/components/icon/eicon.vue +29 -0
  62. package/src/components/icon/icons.vue +42 -0
  63. package/src/components/icon/index.js +2 -0
  64. package/src/components/label/index.js +3 -0
  65. package/src/components/label/showtext.vue +95 -0
  66. package/src/components/load/loadcartoon.vue +228 -0
  67. package/src/components/map/index.js +2 -0
  68. package/src/components/map/mapbox.vue +348 -0
  69. package/src/components/masterplate/appendix.vue +586 -0
  70. package/src/components/masterplate/approval.vue +803 -0
  71. package/src/components/masterplate/base.vue +985 -0
  72. package/src/components/masterplate/billasyncimport.vue +614 -0
  73. package/src/components/masterplate/billconditionbox.vue +224 -0
  74. package/src/components/masterplate/billconditionsbox.vue +427 -0
  75. package/src/components/masterplate/billdetailform.vue +990 -0
  76. package/src/components/masterplate/billimport.vue +263 -0
  77. package/src/components/masterplate/billquerygrid.vue +316 -0
  78. package/src/components/masterplate/billsinglegrid.vue +234 -0
  79. package/src/components/masterplate/birtreport.vue +185 -0
  80. package/src/components/masterplate/detailbtntoolbar.vue +311 -0
  81. package/src/components/masterplate/detailsbox.vue +386 -0
  82. package/src/components/masterplate/editgridcard.vue +222 -0
  83. package/src/components/masterplate/editgridcard2.vue +109 -0
  84. package/src/components/masterplate/formcard.vue +106 -0
  85. package/src/components/masterplate/formcardgroupbox.vue +168 -0
  86. package/src/components/masterplate/formdetailtwo.vue +356 -0
  87. package/src/components/masterplate/gridcolset.vue +227 -0
  88. package/src/components/masterplate/index.js +23 -0
  89. package/src/components/masterplate/layouttemplate.vue +33 -0
  90. package/src/components/masterplate/leftlistrightdetails.vue +474 -0
  91. package/src/components/masterplate/leftlistrightlist.vue +465 -0
  92. package/src/components/masterplate/lefttreerightdetails.vue +619 -0
  93. package/src/components/masterplate/levelreport.vue +510 -0
  94. package/src/components/masterplate/listbtntoolbar.vue +257 -0
  95. package/src/components/masterplate/listdetails.vue +769 -0
  96. package/src/components/masterplate/operlog.vue +272 -0
  97. package/src/components/masterplate/options.vue +110 -0
  98. package/src/components/masterplate/page.vue +102 -0
  99. package/src/components/masterplate/promptmessage.vue +74 -0
  100. package/src/components/masterplate/querybar.vue +490 -0
  101. package/src/components/masterplate/report.vue +357 -0
  102. package/src/components/masterplate/rowbtntoolbar.vue +126 -0
  103. package/src/components/masterplate/simpletree.vue +129 -0
  104. package/src/components/masterplate/simpleviewgrid.vue +144 -0
  105. package/src/components/mychart/bar/bar.vue +202 -0
  106. package/src/components/mychart/basechart.vue +190 -0
  107. package/src/components/mychart/complexmychart/barline.vue +154 -0
  108. package/src/components/mychart/gauge/gauge.vue +83 -0
  109. package/src/components/mychart/index.js +9 -0
  110. package/src/components/mychart/line/line.vue +202 -0
  111. package/src/components/mychart/liquidfill/liquidfill.vue +109 -0
  112. package/src/components/mychart/pie/pie.vue +96 -0
  113. package/src/components/mychart/radar/radar.vue +122 -0
  114. package/src/components/mychart/scatter/scatter.vue +76 -0
  115. package/src/components/numberbox/append.js +11 -0
  116. package/src/components/numberbox/index.js +3 -0
  117. package/src/components/numberbox/numberbox.vue +303 -0
  118. package/src/components/numberbox/numberrangebox.vue +423 -0
  119. package/src/components/picturebox/filebox.vue +365 -0
  120. package/src/components/picturebox/index.js +3 -0
  121. package/src/components/picturebox/picturebox.vue +541 -0
  122. package/src/components/picturebox/uploadbox.vue +164 -0
  123. package/src/components/poptagbox/index.js +2 -0
  124. package/src/components/poptagbox/poptagbox.vue +389 -0
  125. package/src/components/poptextbox/index.js +2 -0
  126. package/src/components/poptextbox/poptextbox.vue +601 -0
  127. package/src/components/radiobox/index.js +2 -0
  128. package/src/components/radiobox/radiogroupbox.vue +76 -0
  129. package/src/components/richtextbox/editor.vue +150 -0
  130. package/src/components/richtextbox/index.js +2 -0
  131. package/src/components/richtextbox/richtextbox.vue +448 -0
  132. package/src/components/textbox/index.js +2 -0
  133. package/src/components/textbox/textbox.vue +98 -0
  134. package/src/components/timebox/index.js +2 -0
  135. package/src/components/timebox/timebox.vue +76 -0
  136. package/src/components/toolbar/ebutton.vue +169 -0
  137. package/src/components/toolbar/index.js +3 -0
  138. package/src/components/toolbar/toolbar.vue +446 -0
  139. package/src/components/tree/basetree.vue +725 -0
  140. package/src/components/tree/index.js +3 -0
  141. package/src/components/tree/treedata.vue +51 -0
  142. package/src/components/tree/treedatabase.vue +189 -0
  143. package/src/components/upload/billimport.vue +233 -0
  144. package/src/components/upload/index.js +2 -0
  145. package/src/components/videobox/index.js +2 -0
  146. package/src/components/videobox/uploadbox.vue +148 -0
  147. package/src/components/videobox/videobox.vue +503 -0
  148. package/src/components/wrichtextbox/editor.vue +219 -0
  149. package/src/components/wrichtextbox/index.js +2 -0
  150. package/src/components/wrichtextbox/wrichtextbox.vue +63 -0
  151. package/src/index.js +215 -0
  152. package/src/locale/format.js +51 -0
  153. package/src/locale/index.js +63 -0
  154. package/src/locale/lang/zh-CN.js +123 -0
  155. package/src/locale/lang/zh-TW.js +114 -0
  156. package/src/locale/lang/zh-UG.js +115 -0
  157. package/src/locale/lang.js +15 -0
  158. package/src/method/case/case.js +1180 -0
  159. package/src/method/config/queryconfig.js +24 -0
  160. package/src/method/const/const.js +815 -0
  161. package/src/method/index.js +8 -0
  162. package/src/static/excel/exportexcel.js +627 -0
  163. package/src/static/iview/coustom.js +463 -0
  164. package/src/store/index.js +19 -0
  165. package/src/store/modules/app.js +53 -0
  166. package/src/styles/README.md +3 -0
  167. package/src/styles/common.less +75 -0
  168. package/src/styles/components/anchor.less +74 -0
  169. package/src/styles/components/approval.less +136 -0
  170. package/src/styles/components/button.less +208 -0
  171. package/src/styles/components/card.less +51 -0
  172. package/src/styles/components/content.less +38 -0
  173. package/src/styles/components/font.less +314 -0
  174. package/src/styles/components/form.less +72 -0
  175. package/src/styles/components/iconfont/fonts/iconfont.less +1376 -0
  176. package/src/styles/components/iconfont/fonts/iconfont.svg +699 -0
  177. package/src/styles/components/iconfont/fonts/iconfont.ttf +0 -0
  178. package/src/styles/components/iconfont/fonts/iconfont.woff +0 -0
  179. package/src/styles/components/iconfont/fonts/iconfont.woff2 +0 -0
  180. package/src/styles/components/index.less +16 -0
  181. package/src/styles/components/input.less +290 -0
  182. package/src/styles/components/modal.less +203 -0
  183. package/src/styles/components/page.less +340 -0
  184. package/src/styles/components/select.less +361 -0
  185. package/src/styles/components/steps.less +367 -0
  186. package/src/styles/components/table.less +544 -0
  187. package/src/styles/components/tabs.less +249 -0
  188. package/src/styles/components/upload.less +83 -0
  189. package/src/styles/custom.less +67 -0
  190. package/src/styles/index.less +6 -0
  191. package/src/styles/pack.less +6 -0
  192. package/src/utils/EfuMessenger.js +155 -0
  193. package/src/utils/assist.js +353 -0
  194. package/src/utils/index.js +1 -0
  195. package/src/utils/random_str.js +10 -0
@@ -0,0 +1,219 @@
1
+ <template>
2
+ <div>
3
+ <div style="border: 1px solid #ccc; margin-top: 10px;">
4
+ <Toolbar
5
+ :editor="editorRef"
6
+ :defaultConfig="toolbarConfig"
7
+ :mode="mode"
8
+ style="border-bottom: 1px solid #ccc"
9
+ />
10
+ <Editor
11
+ :defaultConfig="editorConfig"
12
+ :mode="mode"
13
+ v-model="valueHtml"
14
+ :style="editorStyle"
15
+ @onCreated="handleCreated"
16
+ @onChange="handleChange"
17
+ @onDestroyed="handleDestroyed"
18
+ @onFocus="handleFocus"
19
+ @onBlur="handleBlur"
20
+ @customAlert="customAlert"
21
+ @customPaste="customPaste"
22
+ />
23
+ </div>
24
+ </div>
25
+ </template>
26
+
27
+ <script>
28
+ import '@wangeditor/editor/dist/css/style.css'
29
+ import { onBeforeUnmount, ref, shallowRef, onMounted ,watch, computed} from 'vue'
30
+ import { Editor, Toolbar } from '@wangeditor/editor-for-vue'
31
+
32
+ export default {
33
+ components: { Editor, Toolbar },
34
+ props:["value","myConfig"],
35
+ setup(props, context) {
36
+ // 编辑器实例,必须用 shallowRef,重要!
37
+ const editorRef = shallowRef()
38
+ const readOnly = ref(true);
39
+ // 内容 HTML
40
+ const valueHtml = ref('')
41
+
42
+ const myConfig = computed(()=>{
43
+ return props.myConfig;
44
+ })
45
+ if (myConfig.value.readOnly !== undefined) {
46
+ readOnly.value = myConfig.value.readOnly;
47
+ }
48
+ // 模拟 ajax 异步获取内容
49
+ onMounted(() => {
50
+ setTimeout(() => {
51
+ const editor = editorRef.value
52
+ if (editor == null) return
53
+ if (readOnly.value) {
54
+ editor.disable()
55
+ } else {
56
+ editor.enable()
57
+ }
58
+ }, 1500)
59
+ })
60
+ const editorStyle = computed(()=>{
61
+ let style = {};
62
+ style['overflow-y'] = 'hidden';
63
+ if (myConfig.value.editorStyle) {
64
+ Object.assign(style,myConfig.value.editorStyle);
65
+ }
66
+ return style;
67
+ })
68
+ const fatherValue = computed(()=>{
69
+ return props.value;
70
+ })
71
+ watch(() => fatherValue, (val) => {
72
+ const text = valueHtml.value
73
+ if (text !== val.value) {
74
+ valueHtml.value = val.value;
75
+ }
76
+ },{deep:true, immediate: true})
77
+
78
+ const toolbarConfig = {
79
+ excludeKeys: ["group-image","group-video","codeBlock"]
80
+ }
81
+ const editorConfig = {
82
+ placeholder: '请输入内容...',
83
+ MENU_CONF:{
84
+ fontSize: {
85
+ fontSizeList: [
86
+ { name: '初号', value: '42px' },
87
+ { name: '小初', value: '36px' },
88
+ { name: '一号', value: '26px' },
89
+ { name: '小一', value: '24px' },
90
+ { name: '二号', value: '22px' },
91
+ { name: '小二', value: '18px' },
92
+ { name: '三号', value: '16px' },
93
+ { name: '小三', value: '15px' },
94
+ { name: '小四', value: '12px' },
95
+ { name: '五号', value: '10.5px' },
96
+ { name: '小五', value: '9px' },
97
+ { name: '六号', value: '7.5px' },
98
+ { name: '小六', value: '6.5px' },
99
+ { name: '七号', value: '5.5px' },
100
+ { name: '八号', value: '5px' },
101
+ ]
102
+ },
103
+ fontFamily: {
104
+ fontFamilyList:[
105
+ { name: '宋体', value: 'SimSun' },
106
+ { name: '楷体', value: 'KaiTi' },
107
+ { name: '仿宋', value: 'FangSong' },
108
+ { name: '黑体', value: 'SimHei' },
109
+ { name: '微软雅黑', value: 'Microsoft-YaHei' },
110
+ 'PmingLiu',
111
+ 'Impact',
112
+ 'Georgia',
113
+ 'Tahoma',
114
+ 'Arial',
115
+ 'Verdana'
116
+ ]
117
+ }
118
+ }
119
+ }
120
+
121
+ // 组件销毁时,也及时销毁编辑器,重要!
122
+ onBeforeUnmount(() => {
123
+ const editor = editorRef.value
124
+ if (editor == null) return
125
+
126
+ editor.destroy()
127
+ })
128
+
129
+ // 编辑器回调函数
130
+ const handleCreated = (editor) => {
131
+ console.log('created', editor);
132
+ editorRef.value = editor // 记录 editor 实例,重要!
133
+ }
134
+ const handleChange = (editor) => {
135
+ const text = editor.getHtml()
136
+ console.log('change:', text)
137
+ context.emit('updateValue', text)
138
+ }
139
+ const handleDestroyed = (editor) => {
140
+ console.log('destroyed', editor)
141
+ }
142
+ const handleFocus = (editor) => {
143
+ console.log('focus', editor)
144
+ }
145
+ const handleBlur = (editor) => {
146
+ console.log('blur', editor)
147
+ const text = editor.getHtml()
148
+ console.log('blur:', text)
149
+ context.emit('updateValue', text)
150
+ }
151
+ const customAlert = (info, type) => {
152
+ alert(`【自定义提示】${type} - ${info}`)
153
+ }
154
+ const customPaste = (editor, event, callback) => {
155
+ //console.log('ClipboardEvent 粘贴事件对象', event)
156
+ // 自定义插入内容
157
+ //editor.insertText('xxx')
158
+ // 返回值(注意,vue 事件的返回值,不能用 return)
159
+ //callback(false) // 返回 false ,阻止默认粘贴行为
160
+ callback(true) // 返回 true ,继续默认的粘贴行为
161
+ }
162
+
163
+ const insertText = (value) => {
164
+ const editor = editorRef.value
165
+ if (editor == null) return
166
+ editor.focus()
167
+ editor.insertText(value)
168
+ }
169
+
170
+ const printHtml = () => {
171
+ const editor = editorRef.value
172
+ if (editor == null) return
173
+ console.log(editor.getHtml())
174
+ }
175
+
176
+ const disable = () => {
177
+ const editor = editorRef.value
178
+ if (editor == null) return
179
+ editor.disable()
180
+ }
181
+ const setReadOnly = (value) =>{
182
+ readOnly.value = value;
183
+ const editor = editorRef.value
184
+ if (editor == null) return;
185
+ if (readOnly.value) {
186
+ editor.disable()
187
+ }else {
188
+ editor.enable()
189
+ }
190
+ }
191
+ const getValue = () => {
192
+ const editor = editorRef.value
193
+ if (editor == null) return
194
+ return editor.getHtml();
195
+ }
196
+
197
+ return {
198
+ editorRef,
199
+ mode: 'default',
200
+ valueHtml,
201
+ toolbarConfig,
202
+ editorConfig,
203
+ handleCreated,
204
+ handleChange,
205
+ handleDestroyed,
206
+ handleFocus,
207
+ handleBlur,
208
+ customAlert,
209
+ customPaste,
210
+ insertText,
211
+ printHtml,
212
+ disable,
213
+ setReadOnly,
214
+ getValue,
215
+ editorStyle
216
+ };
217
+ }
218
+ }
219
+ </script>
@@ -0,0 +1,2 @@
1
+ import wRichTextBox from './wrichtextbox.vue';
2
+ export default wRichTextBox;
@@ -0,0 +1,63 @@
1
+ <template>
2
+ <div v-show="myConfig.visible" @keydown.enter.stop="keyDown">
3
+ <Editor ref="myControl" :myConfig="myConfig" :value="value" @updateValue="onEditorChange"/>
4
+ </div>
5
+ </template>
6
+ <script>
7
+ // 工具栏配置
8
+ import Base from '@/components/base/controlbase.vue';
9
+ import Editor from './editor.vue';
10
+ export default {
11
+ name: 'wrichtextbox',
12
+ components:{
13
+ Editor
14
+ },
15
+ extends: Base,
16
+ data () {
17
+ return {
18
+ myConfig:{
19
+ editorStyle:{
20
+ 'height':'auto'
21
+ },
22
+ }
23
+ };
24
+ },
25
+
26
+ mounted () {
27
+ //eslint-disable-next-line no-labels
28
+ },
29
+ methods:{
30
+ customInit () {
31
+ },
32
+ onEditorFocus () {
33
+ if (this.$refs.myControl) {
34
+ this.$refs.myControl.setReadOnly(this.myConfig.readOnly);
35
+ }
36
+
37
+ },
38
+ onEditorChange (value) {
39
+ this.value = value;
40
+ // 内容改变事件
41
+ this.setFatherValue();
42
+ //this.$emit('inputValue', this.content);
43
+ },
44
+
45
+ keyDown (e) {
46
+ //e.stopPropagation();
47
+ },
48
+ setDynamicText(value) {
49
+ if (this.$refs.myControl) {
50
+ this.$refs.myControl.insertText(value);
51
+ }
52
+ },
53
+ setCustomPro(obj) {
54
+ if (obj) {
55
+ this.myConfig = Object.assign({}, this.myConfig, obj);
56
+ }
57
+ if (obj.readOnly !== undefined) {
58
+ this.onEditorFocus();
59
+ }
60
+ }
61
+ }
62
+ };
63
+ </script>
package/src/index.js ADDED
@@ -0,0 +1,215 @@
1
+ import ViewUI from 'view-ui-plus';
2
+ import iviewCoustom from './static/iview/coustom';
3
+ import pkg from '../package.json';
4
+ // import 'view-ui-plus/dist/styles/viewuiplus.css'
5
+ /** 自定义封装 */
6
+ // import './styles/components/iconfont/index.js';
7
+ import Method from './method/index';
8
+ import store from './store/index';
9
+ import 'viewerjs/dist/viewer.css';
10
+ import '@vueup/vue-quill/dist/vue-quill.snow.css';
11
+ import { Ebutton, Toolbar } from './components/toolbar';
12
+ import ComboBox from './components/combobox';
13
+ import {
14
+ ExpandRow,
15
+ EditGrid,
16
+ ViewGrid,
17
+ ViewGridBase,
18
+ EditGridCard,
19
+ } from './components/grid';
20
+ import TextBox from './components/textbox';
21
+ import RichTextBox from './components/richtextbox';
22
+ import { NumberBox, NumberRangeBox } from './components/numberbox';
23
+ import { DateBox, DateRangeBox } from './components/datebox';
24
+ import TimePicBox from './components/timebox';
25
+ import PopTextBox from './components/poptextbox';
26
+ import { ControlBox, ControlBase} from './components/base';
27
+ import {
28
+ ConditionBox,
29
+ QueryConditionBoxBase,
30
+ ConditionSelectorBox,
31
+ ConditionFilterBox,
32
+ } from './components/conditionbox';
33
+ import {PictureBox,FileBox} from './components/picturebox';
34
+ import VideoBox from './components/videobox';
35
+ import { CheckBox, CheckGroupBox } from './components/checkbox';
36
+ import {
37
+ FormBox,
38
+ FormDetail,
39
+ WorkForm,
40
+ BaseForm,
41
+ FormCardBox,
42
+ FormCardGroupBox,
43
+ DetailsBox,
44
+ } from './components/form';
45
+ import ShowText from './components/label';
46
+ import BillImport from './components/upload';
47
+ import { TreeBox, TreeBoxBase } from './components/tree';
48
+ import CommonIcon from './components/icon';
49
+ import BillBox from './components/billbox';
50
+ import RadioGroupBox from './components/radiobox';
51
+ import ColorBox from './components/colorbox';
52
+ import {
53
+ MyBar,
54
+ MyPie,
55
+ MyBarLine,
56
+ MyLine,
57
+ MyScatter,
58
+ MyGauge,
59
+ MyRadar,
60
+ MyLiquidFill
61
+ } from './components/mychart';
62
+ import PopTagBox from './components/poptagbox';
63
+ import CascaderBox from './components/cascaderbox';
64
+
65
+ import {
66
+ RowBtnToolbar,
67
+ PageCustom,
68
+ SimpleViewGrid,
69
+ DetailBtnToolbar,
70
+ BillTemplate,
71
+ SimpleTree,
72
+ mListDetails,
73
+ mLeftListRightDetails,
74
+ mLeftTreeRightDetails,
75
+ mLeftListRightList,
76
+ mBillSingleGrid,
77
+ mReportBill,
78
+ mLevelReport,
79
+ mBirtReport,
80
+ ListBtnToolbar,
81
+ mAppendixBoxs,
82
+ PromptMessages,
83
+ BillOperLog,
84
+ mFormCardBox,
85
+ mEditGridCard,
86
+ mBillAsyncImport,
87
+ mBillImport
88
+ } from './components/masterplate';
89
+
90
+ import MapBox from './components/map';
91
+ import wRichTextBox from './components/wrichtextbox';
92
+
93
+ const components = {
94
+ /*自定义组件*/
95
+ Ebutton,
96
+ Toolbar,
97
+ ComboBox,
98
+ ExpandRow,
99
+ EditGrid,
100
+ ViewGridBase,
101
+ ViewGrid,
102
+ EditGridCard,
103
+ TextBox,
104
+ RichTextBox,
105
+ NumberBox,
106
+ NumberRangeBox,
107
+ DateBox,
108
+ DateRangeBox,
109
+ TimePicBox,
110
+ PopTextBox,
111
+ ControlBox,
112
+ ControlBase,
113
+ ConditionBox,
114
+ QueryConditionBoxBase,
115
+ ConditionSelectorBox,
116
+ ConditionFilterBox,
117
+ FormBox,
118
+ FormDetail,
119
+ WorkForm,
120
+ FormCardBox,
121
+ FormCardGroupBox,
122
+ DetailsBox,
123
+ PictureBox,
124
+ FileBox,
125
+ VideoBox,
126
+ CheckBox,
127
+ CheckGroupBox,
128
+ BillBox,
129
+ ShowText,
130
+ BillImport,
131
+ TreeBoxBase,
132
+ TreeBox,
133
+ CommonIcon,
134
+ RadioGroupBox,
135
+ BaseForm,
136
+ MyBar,
137
+ MyBarLine,
138
+ MyPie,
139
+ MyLine,
140
+ MyScatter,
141
+ MyGauge,
142
+ MyRadar,
143
+ MyLiquidFill,
144
+ PopTagBox,
145
+ CascaderBox,
146
+ ColorBox,
147
+ RowBtnToolbar,
148
+ PageCustom,
149
+ DetailBtnToolbar,
150
+ BillTemplate,
151
+ SimpleViewGrid,
152
+ SimpleTree,
153
+ mListDetails,
154
+ mLeftListRightDetails,
155
+ mLeftTreeRightDetails,
156
+ mLeftListRightList,
157
+ mBillSingleGrid,
158
+ mReportBill,
159
+ mLevelReport,
160
+ mBirtReport,
161
+ ListBtnToolbar,
162
+ mAppendixBoxs,
163
+ MapBox,
164
+ PromptMessages,
165
+ BillOperLog,
166
+ mFormCardBox,
167
+ mEditGridCard,
168
+ mBillAsyncImport,
169
+ mBillImport,
170
+ wRichTextBox
171
+ };
172
+
173
+ const iview = {
174
+ ...components
175
+ };
176
+
177
+ const install = function(app, opts = {}) {
178
+ if (install.installed) return;
179
+
180
+ iviewCoustom.initEview(ViewUI);
181
+ app.use(ViewUI);
182
+ Object.keys(iview).forEach(key => {
183
+ app.component(key, iview[key]);
184
+ });
185
+
186
+
187
+ /**自定义方法**/
188
+ app.config.globalProperties.$Method = Method.commonMethod;
189
+ app.config.globalProperties.$Store = store;
190
+ app.config.globalProperties.query = Method.query;
191
+ app.config.globalProperties.BillTemplate = components.BillTemplate;
192
+ for (let v in Method.caseMethod) {
193
+ app.config.globalProperties[v] = Method.caseMethod[v];
194
+ }
195
+ };
196
+
197
+ // auto install
198
+ if (typeof window !== 'undefined' && window.Vue) {
199
+ install(window.Vue);
200
+ }
201
+
202
+ const API = {
203
+ version: pkg.version, // eslint-disable-line no-undef
204
+ install,
205
+ //...ViewUI,
206
+ ...components
207
+ };
208
+
209
+ /*API.lang = (code) => {
210
+ const langObject = window['iview/locale'].default;
211
+ if (code === langObject.i.locale) locale.use(langObject);
212
+ else console.log(`The ${code} language pack is not loaded.`); // eslint-disable-line no-console
213
+ };*/
214
+
215
+ export default API; // eslint-disable-line no-undef
@@ -0,0 +1,51 @@
1
+ /**
2
+ * String format template
3
+ * - Inspired:
4
+ * https://github.com/Matt-Esch/string-template/index.js
5
+ */
6
+
7
+ const RE_NARGS = /(%|)\{([0-9a-zA-Z_]+)\}/g;
8
+
9
+ export default function () {
10
+ function hasOwn(obj, key) {
11
+ return Object.prototype.hasOwnProperty.call(obj, key);
12
+ }
13
+
14
+ /**
15
+ * template
16
+ *
17
+ * @param {String} string
18
+ * @param {Array} ...args
19
+ * @return {String}
20
+ */
21
+
22
+ function template(string, ...args) {
23
+ if (args.length === 1 && typeof args[0] === 'object') {
24
+ args = args[0];
25
+ }
26
+
27
+ if (!args || !args.hasOwnProperty) {
28
+ args = {};
29
+ }
30
+ if (string === undefined) {
31
+ return '';
32
+ }
33
+
34
+ return string.replace(RE_NARGS, (match, prefix, i, index) => {
35
+ let result;
36
+
37
+ if (string[index - 1] === '{' && string[index + match.length] === '}') {
38
+ return i;
39
+ } else {
40
+ result = hasOwn(args, i) ? args[i] : null;
41
+ if (result === null || result === undefined) {
42
+ return '';
43
+ }
44
+
45
+ return result;
46
+ }
47
+ });
48
+ }
49
+
50
+ return template;
51
+ }
@@ -0,0 +1,63 @@
1
+ import zhLang from './lang/zh-CN';
2
+ import deepmerge from 'deepmerge';
3
+ import Format from './format';
4
+
5
+ const format = Format();
6
+ let lang = zhLang;
7
+ const langs = {
8
+ zh: zhLang
9
+ };
10
+ let nowLang = null;
11
+ let merged = {};
12
+ let vuei18n = null;
13
+ let i18nHandler = function () {
14
+ if (Reflect.has(this, '$t')) {
15
+ return this.$t(...arguments);
16
+ }
17
+ if (vuei18n && vuei18n.global) {
18
+ return vuei18n.global.t(...arguments);
19
+ }
20
+ if (vuei18n && vuei18n.locale) {
21
+ if (!merged[vuei18n.locale] || nowLang != vuei18n.locale) {
22
+ merged[vuei18n.locale] = true;
23
+ let localMessage = vuei18n.getLocaleMessage(vuei18n.locale) || {};
24
+ let newLocalMessage = {};
25
+ deepmerge(newLocalMessage, langs[vuei18n.locale], localMessage, { clone: true })
26
+ lang = newLocalMessage;
27
+ vuei18n.setLocaleMessage(vuei18n.locale, newLocalMessage);
28
+ nowLang = vuei18n.locale;
29
+ }
30
+ return vuei18n.hlang(...arguments);
31
+ }
32
+ };
33
+
34
+ export const t = function (path, options) {
35
+ let value = i18nHandler.apply(this, arguments);
36
+ if (value !== null && value !== undefined) return value;
37
+
38
+ const array = path.split('.');
39
+ let current = lang;
40
+
41
+ for (let i = 0, j = array.length; i < j; i++) {
42
+ const property = array[i];
43
+ value = current[property];
44
+ if (i === j - 1) return format(value, options);
45
+ if (!value) return '';
46
+ current = value;
47
+ }
48
+ return '';
49
+ };
50
+
51
+ export const use = function (l) {
52
+ lang = l || lang;
53
+ };
54
+
55
+ export const i18n = function (initI18n) {
56
+ vuei18n = initI18n;
57
+ };
58
+
59
+ export default {
60
+ use,
61
+ t,
62
+ i18n
63
+ };