bri-components 1.2.0 → 1.2.2

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 (68) hide show
  1. package/lib/0.bri-components.min.js +1 -1
  2. package/lib/1.bri-components.min.js +1 -1
  3. package/lib/2.bri-components.min.js +1 -1
  4. package/lib/3.bri-components.min.js +1 -1
  5. package/lib/4.bri-components.min.js +1 -1
  6. package/lib/5.bri-components.min.js +1 -1
  7. package/lib/6.bri-components.min.js +1 -1
  8. package/lib/7.bri-components.min.js +1 -1
  9. package/lib/8.bri-components.min.js +1 -1
  10. package/lib/9.bri-components.min.js +1 -1
  11. package/lib/bri-components.min.js +6 -6
  12. package/package.json +1 -1
  13. package/src/.DS_Store +0 -0
  14. package/src/abolish/DshFlatTable.vue +1 -1
  15. package/src/components/.DS_Store +0 -0
  16. package/src/components/controls/.DS_Store +0 -0
  17. package/src/components/controls/base/BriUpload/BriUpload.vue +2 -1
  18. package/src/components/controls/base/BriUpload/BriUploadImage.vue +45 -32
  19. package/src/components/controls/base/BriUpload/uploadMixin.js +3 -2
  20. package/src/components/controls/base/DshCascader/DshCascader.vue +52 -53
  21. package/src/components/controls/base/DshCascader/InfoCascader.vue +3 -4
  22. package/src/components/controls/base/DshCheckbox.vue +133 -140
  23. package/src/components/controls/base/DshCoordinates.vue +121 -147
  24. package/src/components/controls/base/DshDaterange.vue +1 -1
  25. package/src/components/controls/base/DshEditor.vue +2 -1
  26. package/src/components/controls/base/DshSelect.vue +4 -14
  27. package/src/components/controls/base/DshSwitch.vue +13 -20
  28. package/src/components/controls/controlMap.js +4 -0
  29. package/src/components/controls/controlMixin.js +23 -12
  30. package/src/components/controls/senior/.DS_Store +0 -0
  31. package/src/components/controls/senior/BriLabels.vue +170 -158
  32. package/src/components/controls/senior/selectDepartments.vue +380 -0
  33. package/src/components/controls/senior/selectUsers/DepartmentMenu.vue +191 -0
  34. package/src/components/controls/senior/selectUsers/selectUsers.vue +482 -0
  35. package/src/components/list/BriCard.vue +52 -0
  36. package/src/components/list/BriTreeItem.vue +110 -0
  37. package/src/components/small/DshTags.vue +132 -9
  38. package/src/index.js +7 -3
  39. package/src/styles/.DS_Store +0 -0
  40. package/src/styles/common/control.less +61 -56
  41. package/src/styles/components/.DS_Store +0 -0
  42. package/src/styles/components/controls/.DS_Store +0 -0
  43. package/src/styles/components/controls/base/BriUpload/BriUpload.less +11 -3
  44. package/src/styles/components/controls/base/BriUpload/BriUploadImage.less +6 -0
  45. package/src/styles/components/controls/base/DshCascader/DshCascader.less +33 -81
  46. package/src/styles/components/controls/base/DshCheckbox.less +72 -103
  47. package/src/styles/components/controls/base/DshCoordinates.less +1 -35
  48. package/src/styles/components/controls/base/DshEditor.less +3 -2
  49. package/src/styles/components/controls/base/DshInput.less +4 -8
  50. package/src/styles/components/controls/base/DshNumber.less +2 -2
  51. package/src/styles/components/controls/base/DshSelect.less +19 -4
  52. package/src/styles/components/controls/base/DshSwitch.less +1 -31
  53. package/src/styles/components/controls/senior/.DS_Store +0 -0
  54. package/src/styles/components/controls/senior/BriLabels.less +32 -118
  55. package/src/styles/components/controls/senior/cascaderTable.less +1 -1
  56. package/src/styles/components/controls/senior/flatTable.less +1 -1
  57. package/src/styles/components/controls/senior/selectDepartments.less +106 -0
  58. package/src/styles/components/controls/senior/selectUsers/DepartmentMenu.less +37 -0
  59. package/src/styles/components/controls/senior/selectUsers/index.less +2 -0
  60. package/src/styles/components/controls/senior/selectUsers/selectUsers.less +167 -0
  61. package/src/styles/components/form/DshDefaultSearch.less +1 -2
  62. package/src/styles/components/index.less +7 -3
  63. package/src/styles/components/list/BriCard.less +50 -0
  64. package/src/styles/components/list/BriFlatTable.less +1 -1
  65. package/src/styles/components/list/BriTreeItem.less +50 -0
  66. package/src/styles/components/small/DshModal.less +20 -42
  67. package/src/styles/components/small/DshTags.less +32 -14
  68. package/src/styles/components/unit/DshFormItem.less +3 -26
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bri-components",
3
- "version": "1.2.0",
3
+ "version": "1.2.2",
4
4
  "author": "dengshanghui",
5
5
  "description": "a component lib for vue project",
6
6
  "main": "src/index.js",
package/src/.DS_Store CHANGED
Binary file
@@ -1,5 +1,5 @@
1
1
  <template>
2
- <div :class="`DshFlatTable control-default`">
2
+ <div class="DshFlatTable">
3
3
  <!-- 表格内容 -->
4
4
  <div class="DshFlatTable-block">
5
5
  <table
Binary file
@@ -14,7 +14,8 @@
14
14
  `BriUpload-${showType}`,
15
15
  {
16
16
  'BriUpload-readonly': !canEdit,
17
- 'BriUpload-disabled': canEdit && !propsObj.canEdit
17
+ 'BriUpload-disabled': canEdit && !finalCanEdit,
18
+ 'BriUpload-unit': isUnitShow
18
19
  }
19
20
  ]"
20
21
  >
@@ -53,10 +53,7 @@
53
53
 
54
54
  </div>
55
55
  <div class="wrap">
56
- <Button
57
- type="default"
58
- class="btn-cancel-outline z-default"
59
- >点击上传</Button>
56
+ <Button type="default">点击上传</Button>
60
57
  <input
61
58
  id="fileupload"
62
59
  class="file"
@@ -67,36 +64,26 @@
67
64
  </div>
68
65
 
69
66
  <!-- 修改头像模态框 -->
70
- <Modal
71
- :title="propsObj._title || '修改头像'"
67
+ <dsh-modal
72
68
  v-model="avatarModal"
73
- class="bri-modal"
74
- width="500"
75
- :mask-closable="false"
76
- :footer-hide="true"
69
+ mode="custom"
70
+ :propsObj="modalPropsObj"
77
71
  @on-visible-change="visibleChange"
78
72
  >
79
- <div
80
- class="avatar-modal"
81
- style="width:400px;margin: 0 auto;"
82
- >
83
- <dsh-cropper
84
- style="width: 400px;height: 400px;"
85
- ref="cropper"
86
- :src="imgSrc"
87
- alt="Source Image"
88
- :cropmove="cropImage"
89
- >
90
- </dsh-cropper>
91
- <div class="avatar-modal-footer bri-footer">
92
- <Button @click="cancelAvatarModal()">取消</Button>
93
- <Button
94
- type="primary"
95
- @click="photoSubmit()"
96
- >保存</Button>
97
- </div>
98
- </div>
99
- </Modal>
73
+ <dsh-cropper
74
+ class="BriUploadImage-cropper"
75
+ ref="cropper"
76
+ :src="imgSrc"
77
+ alt="Source Image"
78
+ :cropmove="cropImage"
79
+ ></dsh-cropper>
80
+
81
+ <dsh-buttons
82
+ class="bri-modal-footer"
83
+ :list="$getOperationList(['cancel', 'confirm'])"
84
+ @click="$dispatchEvent($event)"
85
+ ></dsh-buttons>
86
+ </dsh-modal>
100
87
  </div>
101
88
  </template>
102
89
 
@@ -120,10 +107,29 @@
120
107
  isAvatar: {
121
108
  type: Boolean,
122
109
  default: false
110
+ },
111
+ // 阿里云上传方式
112
+ ossType: {
113
+ type: String,
114
+ default: "binaryMultipartUpload"
123
115
  }
124
116
  },
125
117
  data () {
126
118
  return {
119
+ operationMap: {
120
+ cancel: {
121
+ name: "取消",
122
+ type: "cancel",
123
+ btnType: "cancel",
124
+ event: "cancelAvatarModal"
125
+ },
126
+ confirm: {
127
+ name: "确认",
128
+ type: "confirm",
129
+ btnType: "primary",
130
+ event: "photoSubmit"
131
+ }
132
+ },
127
133
  // 头像
128
134
  avatarModal: false,
129
135
  inputType: "file",
@@ -132,6 +138,13 @@
132
138
  };
133
139
  },
134
140
  computed: {
141
+ modalPropsObj () {
142
+ return {
143
+ title: this.propsObj._name,
144
+ class: "bri-modal",
145
+ width: 450
146
+ };
147
+ },
135
148
  imageResizeConfig () {
136
149
  return this.propsObj._imageResizeConfig || {
137
150
  m: "fixed",
@@ -170,7 +183,7 @@
170
183
  }
171
184
  if (typeof FileReader === "function") {
172
185
  const reader = new FileReader();
173
- if (this.propsObj._kind == "uploadImage") {
186
+ if (this.propsObj._kind == "uploadImage" && !this.propsObj.cropper) {
174
187
  reader.onload = (event) => {
175
188
  let data = event.target.result;
176
189
  this.inputType = "text";
@@ -255,7 +255,8 @@ export default {
255
255
  };
256
256
  };
257
257
  },
258
- putUpload (file, res, callback) {
258
+ // bri-upload-image 用的是这种方式
259
+ binaryMultipartUpload (file, res, callback) {
259
260
  let type = "jpg";
260
261
  let remoteName = `${this.randomTimeStampFn()}.${type}`;
261
262
 
@@ -277,7 +278,7 @@ export default {
277
278
  callbackBody: this.transferCallBody(callbackBody)
278
279
  };
279
280
 
280
- new this.$aliOss(res.ossConfig).put(remoteName, file, {
281
+ new this.$aliOss(res.ossConfig).multipartUpload(remoteName, file, {
281
282
  progress: (percentage) => {
282
283
  this.inProgress(Number((percentage * 100).toFixed(0)));
283
284
  this.handleProgress && this.handleProgress(percentage, file);
@@ -3,9 +3,9 @@
3
3
  <!-- 编辑 -->
4
4
  <template v-if="canEdit">
5
5
  <!-- 多选 多选的filterable必须是false,不然出bug -->
6
- <template v-if="useMultiple">
6
+ <template v-if="multipleMode">
7
7
  <Cascader
8
- class="DshCascader-multiple"
8
+ class="DshCascader-edit-multiple"
9
9
  :value="multipleSelectVal"
10
10
  :data="renderCascaderData"
11
11
  :disabled="!finalCanEdit"
@@ -22,30 +22,32 @@
22
22
  <div
23
23
  :class="{
24
24
  ...commonClass,
25
- 'DshCascader-multiple-input': true,
26
- 'DshCascader-multiple-input-row': isMultipleRow,
25
+ 'DshCascader-edit-multiple-edit': true,
26
+ 'DshCascader-row-edit': isMultipleRow,
27
27
  }"
28
28
  @click="clickInput"
29
29
  >
30
30
  <!-- 有值 -->
31
- <dsh-tags
32
- v-if="!$isEmptyData(curVal)"
33
- class="hasdata"
34
- :list="curValNameList"
35
- :propsObj="{
36
- disabled: !finalCanEdit,
37
- size: 'medium'
38
- }"
39
- @delete="deleteItem"
40
- ></dsh-tags>
31
+ <template v-if="!$isEmptyData(curValList)">
32
+ <dsh-tags
33
+ class="overflow"
34
+ :list="curValNameList"
35
+ :propsObj="{
36
+ disabled: !finalCanEdit
37
+ }"
38
+ @delete="deleteItem"
39
+ ></dsh-tags>
40
+
41
+ <Icon
42
+ class="icon-default"
43
+ type="ios-arrow-down"
44
+ />
45
+ </template>
41
46
 
42
47
  <!-- 无值 -->
43
- <div
44
- v-else
45
- class="nodata"
46
- >
48
+ <template v-else>
47
49
  {{ emptyShowVal }}
48
- </div>
50
+ </template>
49
51
  </div>
50
52
  </Cascader>
51
53
  </template>
@@ -57,7 +59,7 @@
57
59
  <div
58
60
  :class="{
59
61
  ...commonClass,
60
- 'DshCascader-custom-input': true
62
+ 'DshCascader-edit-custom': true
61
63
  }"
62
64
  @mouseenter="isHover = true"
63
65
  @mouseleave="isHover = false"
@@ -65,19 +67,19 @@
65
67
  >
66
68
  <!-- 内容 -->
67
69
  <div class="text">
68
- {{ showText }}
70
+ {{ showVal }}
69
71
  </div>
70
72
 
71
73
  <!-- 右侧图标 -->
72
74
  <Icon
73
75
  v-if="selfPropsObj._clearable && isHover"
74
- class="clear"
76
+ class="icon-close"
75
77
  type="md-close"
76
78
  @click.stop="clickClear"
77
79
  />
78
80
  <Icon
79
81
  v-else
80
- class="clear"
82
+ class="icon-default"
81
83
  type="ios-arrow-down"
82
84
  />
83
85
  </div>
@@ -97,7 +99,7 @@
97
99
  <!-- 输入框方式 -->
98
100
  <template v-else>
99
101
  <Cascader
100
- class="DshCascader-single"
102
+ class="DshCascader-edit-single"
101
103
  :value="curValList"
102
104
  :data="renderCascaderData"
103
105
  :placeholder="selfPropsObj._placeholder"
@@ -120,9 +122,9 @@
120
122
  <!-- 查看 -->
121
123
  <template v-else>
122
124
  <!-- 多选 -->
123
- <template v-if="useMultiple">
125
+ <template v-if="multipleMode">
124
126
  <bri-tooltip
125
- :content="showMultipleText"
127
+ :content="showMultipleVal"
126
128
  placement="top"
127
129
  maxWidth="200"
128
130
  :transfer="true"
@@ -130,29 +132,22 @@
130
132
  <div :class="{
131
133
  ...commonClass,
132
134
  'DshCascader-show-multiple': true,
133
- 'DshCascader-show-multiple-row': isMultipleRow,
135
+ 'DshCascader-row-show': isMultipleRow && !isUnitShow,
134
136
  }">
135
137
  <!-- 有值 -->
136
138
  <dsh-tags
137
- v-if="!$isEmptyData(curVal)"
138
- :class="{
139
- hasdata: true,
140
- 'hasdata-unit': isUnitShow
141
- }"
139
+ v-if="!$isEmptyData(curValList)"
140
+ class="text"
142
141
  :list="curValNameList"
143
142
  :propsObj="{
144
- disabled: true,
145
- size: 'medium'
143
+ closable: false
146
144
  }"
147
145
  ></dsh-tags>
148
146
 
149
147
  <!-- 无值 -->
150
- <div
151
- v-else
152
- class="nodata"
153
- >
148
+ <template v-else>
154
149
  {{ emptyShowVal }}
155
- </div>
150
+ </template>
156
151
  </div>
157
152
  </bri-tooltip>
158
153
  </template>
@@ -160,7 +155,7 @@
160
155
  <!-- 单选 -->
161
156
  <template v-else>
162
157
  <bri-tooltip
163
- :content="showText"
158
+ :content="showVal"
164
159
  placement="top"
165
160
  maxWidth="200"
166
161
  :transfer="true"
@@ -169,7 +164,7 @@
169
164
  ...commonClass,
170
165
  'DshCascader-show-single': true
171
166
  }">
172
- {{ showText }}
167
+ {{ showVal }}
173
168
  </div>
174
169
  </bri-tooltip>
175
170
  </template>
@@ -234,7 +229,7 @@
234
229
  return {
235
230
  _filterable: true,
236
231
  _showMode: false,
237
- _transfer: true,
232
+ _transfer: false,
238
233
  ...this.propsObj,
239
234
  ...this.commonDealPropsObj
240
235
  };
@@ -262,29 +257,33 @@
262
257
  },
263
258
 
264
259
  // 是否多选类型
265
- useMultiple () {
260
+ multipleMode () {
266
261
  return ["regions", "cascaders"].includes(this.propsObj._type);
267
262
  },
263
+ // 只有多选时有效
268
264
  isMultipleRow () {
269
- return this.useMultiple && (this.selfPropsObj._span === 24 || !this.selfPropsObj._span);
265
+ return this.multipleMode && (this.selfPropsObj._span === 24 || !this.selfPropsObj._span);
270
266
  },
267
+ // 只有单选时有效
271
268
  showMode () {
272
269
  return this.selfPropsObj._showMode;
273
270
  },
274
271
 
275
- showText () {
276
- return this.$isEmptyData(this.curVal)
277
- ? this.emptyShowVal
278
- : this.$getTreeLinealDatas(this.curValList, this.cascaderData, "name").join("/");
279
- },
280
- showMultipleText () {
281
- return this.curValNameList.join("、");
282
- },
283
- // 多选用的展示文字
272
+ // 多选用 名字组成的列表
284
273
  curValNameList () {
285
274
  return this.curValList.map(item =>
286
275
  this.$getTreeLinealDatas(item, this.cascaderData, "name").join("/")
287
276
  );
277
+ },
278
+ showVal () {
279
+ return this.$isEmptyData(this.curValList)
280
+ ? this.emptyShowVal
281
+ : this.$getTreeLinealDatas(this.curValList, this.cascaderData, "name").join("/");
282
+ },
283
+ showMultipleVal () {
284
+ return this.$isEmptyData(this.curValList)
285
+ ? this.emptyShowVal
286
+ : this.curValNameList.join("、");
288
287
  }
289
288
  },
290
289
  created () {},
@@ -124,10 +124,6 @@
124
124
  let newarr = [];
125
125
  treeList.forEach(element => {
126
126
  if (element.children && element.children.length) {
127
- if (element.title.indexOf(value) > -1) {
128
- element.expand = true;
129
- newarr.push(element);
130
- }
131
127
  const ab = rebuildData(value, element.children);
132
128
  const obj = {
133
129
  ...element,
@@ -136,6 +132,9 @@
136
132
  };
137
133
  if (ab && ab.length) {
138
134
  newarr.push(obj);
135
+ } else if (element.title.indexOf(value) > -1) {
136
+ element.expand = true;
137
+ newarr.push(element);
139
138
  }
140
139
  } else {
141
140
  if (element.title.indexOf(value) > -1) {