bri-components 1.1.2 → 1.1.4

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 (158) 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/10.bri-components.min.js +1 -0
  4. package/lib/2.bri-components.min.js +1 -1
  5. package/lib/3.bri-components.min.js +1 -1
  6. package/lib/4.bri-components.min.js +1 -1
  7. package/lib/5.bri-components.min.js +1 -1
  8. package/lib/6.bri-components.min.js +1 -1
  9. package/lib/7.bri-components.min.js +1 -1
  10. package/lib/8.bri-components.min.js +1 -1
  11. package/lib/9.bri-components.min.js +1 -1
  12. package/lib/bri-components.min.js +6 -6
  13. package/lib/styles/bri-components.css +1 -1
  14. package/package.json +1 -1
  15. package/src/abolish/DshCascaders.less +11 -0
  16. package/src/{components/controls/base/DshCascaderMultiple.vue → abolish/DshCascaders.vue} +17 -27
  17. package/src/{components/list → abolish}/DshFlatTable.vue +1 -1
  18. package/src/abolish/DshTexts.less +13 -0
  19. package/src/{components/controls/base/textMultiple/DshTextMultiple.vue → abolish/DshTexts.vue} +17 -25
  20. package/src/components/controls/base/{textMultiple/MultipleInput.vue → BriInputs.vue} +18 -17
  21. package/src/components/controls/base/{ZUpload/YUploadImage.vue → BriUpload/BriUploadImage.vue} +56 -15
  22. package/src/components/controls/base/{ZUpload → BriUpload}/index.vue +24 -21
  23. package/src/components/controls/base/{ZUpload → BriUpload}/upload-list.vue +20 -13
  24. package/src/components/controls/base/{ZUpload → BriUpload}/uploadMixin.js +7 -3
  25. package/src/components/controls/base/{DshCascader.vue → DshCascader/DshCascader.vue} +33 -26
  26. package/src/components/controls/base/DshCheckbox.vue +17 -20
  27. package/src/components/controls/base/DshCoordinates.vue +119 -110
  28. package/src/components/controls/base/DshDate.vue +24 -37
  29. package/src/components/controls/base/DshDaterange.vue +3 -1
  30. package/src/components/controls/base/DshEditor.vue +73 -60
  31. package/src/components/controls/base/DshInput.vue +72 -60
  32. package/src/components/controls/base/DshNumber/BriInputNumber/BriInputNumber.vue +1 -1
  33. package/src/components/controls/base/DshNumber/DshNumber.vue +52 -48
  34. package/src/components/controls/base/DshNumberange.vue +11 -21
  35. package/src/components/controls/base/DshSelect.vue +13 -17
  36. package/src/components/controls/controlMap.js +12 -11
  37. package/src/components/controls/controlMixin.js +40 -29
  38. package/src/components/controls/controlShow.vue +44 -0
  39. package/src/components/controls/{base → senior}/BriLabels.vue +7 -12
  40. package/src/components/controls/{base → senior}/DshPackage.vue +6 -25
  41. package/src/components/controls/senior/cascaderTable.vue +52 -51
  42. package/src/components/controls/senior/flatTable.vue +20 -17
  43. package/src/components/controls/{base → special}/DshBack.vue +4 -4
  44. package/src/components/controls/{base → special}/DshUndeveloped.vue +3 -1
  45. package/src/components/form/DshAdvSearchForm.vue +10 -1
  46. package/src/components/form/DshForm.vue +10 -3
  47. package/src/components/list/BriFlatTable.vue +5 -5
  48. package/src/components/list/BriTable.vue +6 -8
  49. package/src/components/list/DshBox/DshBox.vue +7 -24
  50. package/src/components/list/DshBox/DshCard.vue +15 -74
  51. package/src/components/list/DshBox/DshCrossTable.vue +4 -8
  52. package/src/components/list/DshBox/DshList.vue +8 -136
  53. package/src/components/list/DshBox/DshPanel.vue +0 -110
  54. package/src/components/list/DshBox/DshTable.vue +1 -4
  55. package/src/components/list/DshCascaderTable.vue +1 -1
  56. package/src/components/list/ZTree.vue +0 -58
  57. package/src/components/other/ZIframe.vue +5 -0
  58. package/src/components/small/DshControlDefine.vue +6 -2
  59. package/src/components/small/DshModal.vue +0 -134
  60. package/src/components/small/DshPage.vue +1 -0
  61. package/src/components/unit/DshFormItem.vue +7 -10
  62. package/src/components/unit/DshUnit.vue +1 -11
  63. package/src/components/unit/unitMixin.js +8 -5
  64. package/src/index.js +16 -33
  65. package/src/styles/common/control.less +63 -27
  66. package/src/styles/components/controls/{MultipleInput.less → BriInputs.less} +1 -1
  67. package/src/styles/components/controls/BriLabels.less +4 -2
  68. package/src/styles/components/controls/{ZUpload.less → BriUpload.less} +5 -6
  69. package/src/styles/components/controls/DshCheckbox.less +45 -42
  70. package/src/styles/components/controls/DshCoordinates.less +66 -59
  71. package/src/styles/components/controls/DshDate.less +1 -52
  72. package/src/styles/components/controls/DshEditor.less +51 -34
  73. package/src/styles/components/controls/DshInput.less +13 -34
  74. package/src/styles/components/controls/DshNumber.less +51 -0
  75. package/src/styles/components/controls/DshNumberange.less +8 -3
  76. package/src/styles/components/controls/DshSelect.less +78 -92
  77. package/src/styles/components/{other → controls}/InfoCascader.less +4 -4
  78. package/src/styles/components/controls/cascaderTable.less +10 -24
  79. package/src/styles/components/controls/controlShow.less +3 -1
  80. package/src/styles/components/controls/flatTable.less +10 -23
  81. package/src/styles/components/form/DshAdvSearchForm.less +0 -9
  82. package/src/styles/components/form/DshDefaultSearch.less +0 -20
  83. package/src/styles/components/index.less +24 -17
  84. package/src/styles/components/list/DshBox/DshBox.less +20 -0
  85. package/src/styles/components/list/DshBox/DshCard.less +59 -0
  86. package/src/styles/components/list/DshBox/DshList.less +142 -0
  87. package/src/styles/components/list/DshBox/DshPanel.less +107 -0
  88. package/src/styles/components/list/DshBox/DshTable.less +4 -0
  89. package/src/styles/components/list/ZTree.less +52 -0
  90. package/src/styles/components/small/DshControlDefine.less +4 -7
  91. package/src/styles/components/small/DshDropdown.less +1 -0
  92. package/src/styles/components/small/DshModal.less +207 -0
  93. package/src/styles/components/unit/DshFormItem.less +2 -0
  94. package/src/styles/reset.less +14 -0
  95. package/src/styles/variables.less +1 -0
  96. package/src/utils/table.js +5 -4
  97. package/src/components/controls/base/DshLabels.vue +0 -309
  98. package/src/components/controls/base/YSerialNumber.vue +0 -36
  99. package/src/components/controls/base/controlShow.vue +0 -52
  100. package/src/components/list/easyTable/index.js +0 -23
  101. package/src/components/list/easyTable/src/directives/clickoutside.js +0 -32
  102. package/src/components/list/easyTable/src/mixins/layerAdjustment.js +0 -62
  103. package/src/components/list/easyTable/src/settings/settings.js +0 -11
  104. package/src/components/list/easyTable/src/utils/deepClone.js +0 -256
  105. package/src/components/list/easyTable/src/utils/dom.js +0 -41
  106. package/src/components/list/easyTable/src/utils/utils.js +0 -190
  107. package/src/components/list/easyTable/v-checkbox/index.js +0 -7
  108. package/src/components/list/easyTable/v-checkbox/src/checkbox.vue +0 -127
  109. package/src/components/list/easyTable/v-checkbox-group/index.js +0 -7
  110. package/src/components/list/easyTable/v-checkbox-group/src/checkbox-group.vue +0 -68
  111. package/src/components/list/easyTable/v-dropdown/index.js +0 -7
  112. package/src/components/list/easyTable/v-dropdown/src/dropdown.vue +0 -337
  113. package/src/components/list/easyTable/v-table/index.js +0 -7
  114. package/src/components/list/easyTable/v-table/src/body-cell-merge-mixin.js +0 -141
  115. package/src/components/list/easyTable/v-table/src/cell-edit-mixin.js +0 -102
  116. package/src/components/list/easyTable/v-table/src/checkbox-selection-mixin.js +0 -189
  117. package/src/components/list/easyTable/v-table/src/classes-mixin.js +0 -56
  118. package/src/components/list/easyTable/v-table/src/drag-width-mixin.js +0 -202
  119. package/src/components/list/easyTable/v-table/src/export-csv.js +0 -74
  120. package/src/components/list/easyTable/v-table/src/frozen-columns-mixin.js +0 -134
  121. package/src/components/list/easyTable/v-table/src/loading.vue +0 -49
  122. package/src/components/list/easyTable/v-table/src/scroll-bar-control-mixin.js +0 -21
  123. package/src/components/list/easyTable/v-table/src/scroll-control-mixin.js +0 -92
  124. package/src/components/list/easyTable/v-table/src/sort-control-mixin.js +0 -108
  125. package/src/components/list/easyTable/v-table/src/table-empty-mixin.js +0 -73
  126. package/src/components/list/easyTable/v-table/src/table-empty.vue +0 -66
  127. package/src/components/list/easyTable/v-table/src/table-filters-mixin.js +0 -126
  128. package/src/components/list/easyTable/v-table/src/table-footer-mixin.js +0 -122
  129. package/src/components/list/easyTable/v-table/src/table-resize-mixin.js +0 -279
  130. package/src/components/list/easyTable/v-table/src/table-row-mouse-events-mixin.js +0 -123
  131. package/src/components/list/easyTable/v-table/src/table.vue +0 -1565
  132. package/src/components/list/easyTable/v-table/src/title-cell-merge-mixin.js +0 -115
  133. package/src/components/list/evTable/EvTable.vue +0 -321
  134. package/src/components/list/evTable/EvTableMixin.js +0 -26
  135. package/src/styles/components/controls/DshLabels.less +0 -187
  136. package/src/styles/components/list/evTable.less +0 -79
  137. package/src/styles/components/list/evtable/animation.less +0 -141
  138. package/src/styles/components/list/evtable/font/fontello.eot +0 -0
  139. package/src/styles/components/list/evtable/font/fontello.svg +0 -32
  140. package/src/styles/components/list/evtable/font/fontello.ttf +0 -0
  141. package/src/styles/components/list/evtable/font/fontello.woff +0 -0
  142. package/src/styles/components/list/evtable/font/fontello.woff2 +0 -0
  143. package/src/styles/components/list/evtable/fontello.less +0 -68
  144. package/src/styles/components/list/evtable/index.less +0 -5
  145. package/src/styles/components/list/evtable/v-checkbox.less +0 -167
  146. package/src/styles/components/list/evtable/v-dropdown.less +0 -235
  147. package/src/styles/components/list/evtable/v-table.less +0 -334
  148. package/src/styles/components/list/ivu_reset.less +0 -49
  149. /package/src/{styles/components/list → abolish}/DshFlatTable.less +0 -0
  150. /package/src/components/{pages/Error → Error}/Error403.vue +0 -0
  151. /package/src/components/{pages/Error → Error}/Error404.vue +0 -0
  152. /package/src/components/{pages/Error → Error}/Error500.vue +0 -0
  153. /package/src/components/{pages/Error → Error}/error.less +0 -0
  154. /package/src/components/{pages/Error → Error}/errorBack.vue +0 -0
  155. /package/src/components/controls/base/{ZUpload → BriUpload}/upload-listItem.vue +0 -0
  156. /package/src/components/{other → controls/base/DshCascader}/InfoCascader.vue +0 -0
  157. /package/src/styles/components/list/{DshCrossTable.less → DshBox/DshCrossTable.less} +0 -0
  158. /package/src/styles/components/list/{DshSingleData.less → DshBox/DshSingleData.less} +0 -0
@@ -1,23 +0,0 @@
1
- import VTable from "./v-table/index";
2
- import VCheckbox from "./v-checkbox/index";
3
- import VCheckboxGroup from "./v-checkbox-group/index";
4
- import VDropdown from "./v-dropdown/index";
5
-
6
- const install = function (Vue, opts = {}) {
7
- Vue.component(VTable.name, VTable);
8
- Vue.component(VCheckbox.name, VCheckbox);
9
- Vue.component(VCheckboxGroup.name, VCheckboxGroup);
10
- Vue.component(VDropdown.name, VDropdown);
11
- };
12
-
13
- // auto install
14
- if (typeof window !== "undefined" && window.Vue) {
15
- install(window.Vue);
16
- }
17
-
18
- export {
19
- VTable,
20
- VCheckbox,
21
- VCheckboxGroup,
22
- VDropdown
23
- };
@@ -1,32 +0,0 @@
1
- export default {
2
- bind: function (el, binding, vNode) {
3
- if (typeof binding.value !== "function") {
4
-
5
- let msg = `in [clickoutside] directives, provided expression '${binding.expression}' is not a function `;
6
-
7
- const compName = vNode.context.name;
8
-
9
- if (compName) {
10
- msg += `in ${compName}`;
11
- }
12
- console.error(msg);
13
- }
14
-
15
- let handler = (e) => {
16
- if (!el.contains(e.target) && el !== e.target) {
17
- binding.value(e);
18
- } else {
19
- return false;
20
- }
21
- };
22
- el.__clickOutSide__ = handler;
23
-
24
- document.addEventListener("click", handler, true);
25
- },
26
-
27
- unbind: function (el) {
28
- document.removeEventListener("click", el.__clickOutSide__, true);
29
- el.__clickOutSide__ = null;
30
-
31
- }
32
- };
@@ -1,62 +0,0 @@
1
- import utils from "../utils/utils";
2
-
3
- let __autoAdjustmentEvents__ = [];
4
-
5
- export default {
6
- methods: {
7
-
8
- /*
9
- * 自动调整浮层(不绑定事件)
10
- *
11
- * @method layerAdjustmentBind
12
- * @param {Dom} layerElement 浮层元素
13
- * @param {Dom} targetElement 控制元素
14
- * @param {Number} distance 浮层元素和控制元素的上下间距
15
- */
16
- layerAdjustmentOnce (layerElement, targetElement, distance) {
17
-
18
- let viewportOffset = utils.getViewportOffset(targetElement);
19
- let layerElemHeight = typeof layerElement.getBoundingClientRect !== "undefined" ? layerElement.getBoundingClientRect().height : layerElement.clientHeight;
20
-
21
- if (viewportOffset.bottom < layerElemHeight) {
22
-
23
- layerElement.style.top = (viewportOffset.top - layerElemHeight - distance) + "px";
24
- } else {
25
-
26
- layerElement.style.top = (viewportOffset.top + targetElement.clientHeight + distance) + "px";
27
- }
28
-
29
- layerElement.style.left = viewportOffset.left + "px";
30
- },
31
-
32
- /*
33
- * 滚动时自动调整浮层
34
- *
35
- * @method layerAdjustmentBind
36
- * @param {Dom} layerElement 浮层元素
37
- * @param {Dom} targetElement 控制元素
38
- * @param {Number} distance 浮层元素和控制元素的上下间距
39
- */
40
- layerAdjustmentBind (layerElement, targetElement, distance) {
41
-
42
- let handler = (e) => {
43
-
44
- setTimeout(x => {
45
-
46
- this.layerAdjustmentOnce(layerElement, targetElement, distance);
47
- });
48
- };
49
-
50
- __autoAdjustmentEvents__.push(handler);
51
- utils.bind(window, "scroll", handler);
52
- utils.bind(window, "resize", handler);
53
-
54
- }
55
- },
56
- beforeDestroy () {
57
-
58
- utils.unbind(window, "scroll", __autoAdjustmentEvents__);
59
- utils.unbind(window, "resize", __autoAdjustmentEvents__);
60
-
61
- }
62
- };
@@ -1,11 +0,0 @@
1
- export default {
2
- sizeMaps: {
3
- "large": 40,
4
- "middle": 32,
5
- "small": 24
6
- },
7
-
8
- sizeMapDefault: 32,
9
-
10
- scrollbarClass: "v-scrollbar-wrap"
11
- };
@@ -1,256 +0,0 @@
1
- /*
2
- *
3
- * source:https://github.com/pvorb/clone/blob/master/clone.js
4
- *
5
- *
6
- * */
7
-
8
- let clone = (function () {
9
- "use strict";
10
-
11
- function _instanceof (obj, type) {
12
- return type != null && obj instanceof type;
13
- }
14
-
15
- let NativeMap;
16
- try {
17
- NativeMap = Map;
18
- } catch (_) {
19
- // maybe a reference error because no `Map`. Give it a dummy value that no
20
- // value will ever be an instanceof.
21
- NativeMap = function () {};
22
- }
23
-
24
- let NativeSet;
25
- try {
26
- NativeSet = Set;
27
- } catch (_) {
28
- NativeSet = function () {};
29
- }
30
-
31
- let NativePromise;
32
- try {
33
- NativePromise = Promise;
34
- } catch (_) {
35
- NativePromise = function () {};
36
- }
37
-
38
- /**
39
- * Clones (copies) an Object using deep copying.
40
- *
41
- * This function supports circular references by default, but if you are certain
42
- * there are no circular references in your object, you can save some CPU time
43
- * by calling clone(obj, false).
44
- *
45
- * Caution: if `circular` is false and `parent` contains circular references,
46
- * your program may enter an infinite loop and crash.
47
- *
48
- * @param `parent` - the object to be cloned
49
- * @param `circular` - set to true if the object to be cloned may contain
50
- * circular references. (optional - true by default)
51
- * @param `depth` - set to a number if the object is only to be cloned to
52
- * a particular depth. (optional - defaults to Infinity)
53
- * @param `prototype` - sets the prototype to be used when cloning an object.
54
- * (optional - defaults to parent prototype).
55
- * @param `includeNonEnumerable` - set to true if the non-enumerable properties
56
- * should be cloned as well. Non-enumerable properties on the prototype
57
- * chain will be ignored. (optional - false by default)
58
- */
59
- function clone (parent, circular, depth, prototype, includeNonEnumerable) {
60
- if (typeof circular === "object") {
61
- depth = circular.depth;
62
- prototype = circular.prototype;
63
- includeNonEnumerable = circular.includeNonEnumerable;
64
- circular = circular.circular;
65
- }
66
- // maintain two arrays for circular references, where corresponding parents
67
- // and children have the same index
68
- let allParents = [];
69
- let allChildren = [];
70
-
71
- let useBuffer = typeof Buffer != "undefined";
72
-
73
- if (typeof circular == "undefined")
74
- { circular = true; }
75
-
76
- if (typeof depth == "undefined")
77
- { depth = Infinity; }
78
-
79
- // recurse this function so we don't reset allParents and allChildren
80
- function _clone (parent, depth) {
81
- // cloning null always returns null
82
- if (parent === null)
83
- { return null; }
84
-
85
- if (depth === 0)
86
- { return parent; }
87
-
88
- let child;
89
- let proto;
90
- if (typeof parent != "object") {
91
- return parent;
92
- }
93
-
94
- if (_instanceof(parent, NativeMap)) {
95
- child = new NativeMap();
96
- } else if (_instanceof(parent, NativeSet)) {
97
- child = new NativeSet();
98
- } else if (_instanceof(parent, NativePromise)) {
99
- child = new NativePromise(function (resolve, reject) {
100
- parent.then(function (value) {
101
- resolve(_clone(value, depth - 1));
102
- }, function (err) {
103
- reject(_clone(err, depth - 1));
104
- });
105
- });
106
- } else if (clone.__isArray(parent)) {
107
- child = [];
108
- } else if (clone.__isRegExp(parent)) {
109
- child = new RegExp(parent.source, __getRegExpFlags(parent));
110
- if (parent.lastIndex) child.lastIndex = parent.lastIndex;
111
- } else if (clone.__isDate(parent)) {
112
- child = new Date(parent.getTime());
113
- } else if (useBuffer && Buffer.isBuffer(parent)) {
114
- child = Buffer.alloc(parent.length);
115
- parent.copy(child);
116
- return child;
117
- } else if (_instanceof(parent, Error)) {
118
- child = Object.create(parent);
119
- } else {
120
- if (typeof prototype == "undefined") {
121
- proto = Object.getPrototypeOf(parent);
122
- child = Object.create(proto);
123
- }
124
- else {
125
- child = Object.create(prototype);
126
- proto = prototype;
127
- }
128
- }
129
-
130
- if (circular) {
131
- let index = allParents.indexOf(parent);
132
-
133
- if (index != -1) {
134
- return allChildren[index];
135
- }
136
- allParents.push(parent);
137
- allChildren.push(child);
138
- }
139
-
140
- if (_instanceof(parent, NativeMap)) {
141
- parent.forEach(function (value, key) {
142
- let keyChild = _clone(key, depth - 1);
143
- let valueChild = _clone(value, depth - 1);
144
- child.set(keyChild, valueChild);
145
- });
146
- }
147
- if (_instanceof(parent, NativeSet)) {
148
- parent.forEach(function (value) {
149
- let entryChild = _clone(value, depth - 1);
150
- child.add(entryChild);
151
- });
152
- }
153
-
154
- for (let i in parent) {
155
- let attrs;
156
- if (proto) {
157
- attrs = Object.getOwnPropertyDescriptor(proto, i);
158
- }
159
-
160
- if (attrs && attrs.set == null) {
161
- continue;
162
- }
163
- child[i] = _clone(parent[i], depth - 1);
164
- }
165
-
166
- if (Object.getOwnPropertySymbols) {
167
- let symbols = Object.getOwnPropertySymbols(parent);
168
- for (let i = 0; i < symbols.length; i++) {
169
- // Don't need to worry about cloning a symbol because it is a primitive,
170
- // like a number or string.
171
- let symbol = symbols[i];
172
- let descriptor = Object.getOwnPropertyDescriptor(parent, symbol);
173
- if (descriptor && !descriptor.enumerable && !includeNonEnumerable) {
174
- continue;
175
- }
176
- child[symbol] = _clone(parent[symbol], depth - 1);
177
- if (!descriptor.enumerable) {
178
- Object.defineProperty(child, symbol, {
179
- enumerable: false
180
- });
181
- }
182
- }
183
- }
184
-
185
- if (includeNonEnumerable) {
186
- let allPropertyNames = Object.getOwnPropertyNames(parent);
187
- for (let i = 0; i < allPropertyNames.length; i++) {
188
- let propertyName = allPropertyNames[i];
189
- let descriptor = Object.getOwnPropertyDescriptor(parent, propertyName);
190
- if (descriptor && descriptor.enumerable) {
191
- continue;
192
- }
193
- child[propertyName] = _clone(parent[propertyName], depth - 1);
194
- Object.defineProperty(child, propertyName, {
195
- enumerable: false
196
- });
197
- }
198
- }
199
-
200
- return child;
201
- }
202
-
203
- return _clone(parent, depth);
204
- }
205
-
206
- /**
207
- * Simple flat clone using prototype, accepts only objects, usefull for property
208
- * override on FLAT configuration object (no nested props).
209
- *
210
- * USE WITH CAUTION! This may not behave as you wish if you do not know how this
211
- * works.
212
- */
213
- clone.clonePrototype = function clonePrototype (parent) {
214
- if (parent === null)
215
- { return null; }
216
-
217
- let C = function () {};
218
- C.prototype = parent;
219
- return new C();
220
- };
221
-
222
- // private utility functions
223
-
224
- function __objToStr (o) {
225
- return Object.prototype.toString.call(o);
226
- }
227
- clone.__objToStr = __objToStr;
228
-
229
- function __isDate (o) {
230
- return typeof o === "object" && __objToStr(o) === "[object Date]";
231
- }
232
- clone.__isDate = __isDate;
233
-
234
- function __isArray (o) {
235
- return typeof o === "object" && __objToStr(o) === "[object Array]";
236
- }
237
- clone.__isArray = __isArray;
238
-
239
- function __isRegExp (o) {
240
- return typeof o === "object" && __objToStr(o) === "[object RegExp]";
241
- }
242
- clone.__isRegExp = __isRegExp;
243
-
244
- function __getRegExpFlags (re) {
245
- let flags = "";
246
- if (re.global) flags += "g";
247
- if (re.ignoreCase) flags += "i";
248
- if (re.multiline) flags += "m";
249
- return flags;
250
- }
251
- clone.__getRegExpFlags = __getRegExpFlags;
252
-
253
- return clone;
254
- })();
255
-
256
- export default clone;
@@ -1,41 +0,0 @@
1
-
2
- // has class
3
- export function hasClass (el, cls) {
4
- if (!el || !cls) return false;
5
- if (cls.indexOf(" ") !== -1) throw new Error("className should not contain space.");
6
- if (el.classList) {
7
- return el.classList.contains(cls);
8
- } else {
9
- return (" " + el.className + " ").indexOf(" " + cls + " ") > -1;
10
- }
11
- };
12
-
13
- // add class
14
- export function addClass (el, cls) {
15
- if (!el || !cls) return;
16
-
17
- if (el.classList) {
18
- el.classList.add(cls);
19
-
20
- } else {
21
-
22
- let clsArr = el.className.split(" ");
23
-
24
- if (clsArr.indexOf(cls) === -1) {
25
- el.className += " " + cls;
26
- }
27
- }
28
- };
29
-
30
- // remove class
31
- export function removeClass (el, cls) {
32
- if (!el || !cls) return;
33
-
34
- if (el.classList) {
35
- el.classList.remove(cls);
36
- } else {
37
-
38
- let reg = new RegExp("(\\s|^)" + cls + "(\\s|$)");
39
- el.className = el.className.replace(reg, " "); // For IE9 and earlier
40
- }
41
- };
@@ -1,190 +0,0 @@
1
- import settings from "../settings/settings";
2
-
3
- export default {
4
- /* 获取当前元素的left、top偏移
5
- * left:元素最左侧距离文档左侧的距离
6
- * top:元素最顶端距离文档顶端的距离
7
- * right:元素最右侧距离文档右侧的距离
8
- * bottom:元素最底端距离文档底端的距离
9
- * right2:元素最左侧距离文档右侧的距离
10
- * bottom2:元素最底端距离文档最底部的距离
11
- * */
12
- getViewportOffset (element) {
13
-
14
- let doc = document.documentElement;
15
- let box = typeof element.getBoundingClientRect !== "undefined" ? element.getBoundingClientRect() : 0;
16
- let scrollLeft = (window.pageXOffset || doc.scrollLeft) - (doc.clientLeft || 0);
17
- let scrollTop = (window.pageYOffset || doc.scrollTop) - (doc.clientTop || 0);
18
- let offsetLeft = box.left + window.pageXOffset;
19
- let offsetTop = box.top + window.pageYOffset;
20
-
21
- let left = offsetLeft - scrollLeft;
22
- let top = offsetTop - scrollTop;
23
-
24
- return {
25
- left: left,
26
- top: top,
27
- right: window.document.documentElement.clientWidth - box.width - left,
28
- bottom: window.document.documentElement.clientHeight - box.height - top,
29
- right2: window.document.documentElement.clientWidth - left,
30
- bottom2: window.document.documentElement.clientHeight - top
31
- };
32
- },
33
-
34
- /*
35
- * 事件绑定
36
- *
37
- * @method bind
38
- * @param {dom||window} elem 需要绑定的dom节点或window对象
39
- * @param {String} event 绑定的事件名称
40
- * @param {Function} handler 事件处理方法
41
- */
42
- bind (elem, event, handler) {
43
- if (elem && elem !== "undefined" && event && handler) {
44
-
45
- event = event === "mousewheel" ? (document.onmousewheel !== undefined ? "mousewheel" : "DOMMouseScroll") : event;
46
-
47
- if (document.attachEvent) { // if IE (and Opera depending on user setting)
48
-
49
- elem.attachEvent("on" + event, handler);
50
- }
51
- else { // WC3 browsers
52
-
53
- elem.addEventListener(event, handler, false);
54
- }
55
- }
56
- },
57
-
58
- /*
59
- * 移除事件绑定
60
- *
61
- * @method unbind
62
- * @param {dom||window} elem 需要移除绑定的dom节点或window对象
63
- * @param {String} event 绑定的事件名称
64
- * @param {Function||Array<Function>} handler 事件处理方法,可以为数组
65
- */
66
- unbind (elem, event, handler) {
67
- if (elem && elem !== "undefined" && event && handler) {
68
-
69
- event = event === "mousewheel" ? (document.onmousewheel !== undefined ? "mousewheel" : "DOMMouseScroll") : event;
70
-
71
- let handlers = [];
72
- if (Array.isArray(handler) && handler.length > 0) {
73
- handlers = handler;
74
- } else {
75
- handlers.push(handler);
76
- }
77
-
78
- if (document.removeEventListener) {
79
-
80
- handlers.forEach(e => {
81
- elem.removeEventListener(event, e, false);
82
- });
83
- }
84
- else {
85
-
86
- handlers.forEach(e => {
87
- elem.removeEventListener("on" + event, e);
88
- });
89
- }
90
- }
91
- },
92
-
93
- // 判断当前是否包含html元素
94
- isHtml (val) {
95
- return /<[a-z][\s\S]*>/i.test(val);
96
- },
97
-
98
- // 获取当前dislpay值
99
- getDisplayValue (ele) {
100
-
101
- if (ele) {
102
- return ele.currentStyle ? ele.currentStyle.display : getComputedStyle(ele, null).display;
103
- }
104
-
105
- },
106
-
107
- // 是否包含横向滚动条
108
- hasHorizontalScrollBar (ele) {
109
-
110
- if (ele) {
111
-
112
- return ele.scrollWidth > ele.clientWidth;
113
- }
114
- },
115
-
116
- // 是否包含纵向滚动条
117
- hasVerticalScrollBar (ele) {
118
-
119
- if (ele) {
120
-
121
- return ele.scrollHeight > ele.clientHeight;
122
- }
123
- },
124
-
125
- // 获取滚动条的宽度
126
- getScrollbarWidth () {
127
-
128
- const outer = document.createElement("div");
129
- outer.className = settings.scrollbarClass;
130
- outer.style.visibility = "hidden";
131
- outer.style.width = "100px";
132
- outer.style.position = "absolute";
133
- outer.style.top = "-9999px";
134
- document.body.appendChild(outer);
135
-
136
- const widthNoScroll = outer.offsetWidth;
137
- outer.style.overflow = "scroll";
138
-
139
- const inner = document.createElement("div");
140
- inner.style.width = "100%";
141
- outer.appendChild(inner);
142
-
143
- const widthWithScroll = inner.offsetWidth;
144
- outer.parentNode.removeChild(outer);
145
-
146
- return widthNoScroll - widthWithScroll;
147
-
148
- },
149
-
150
- // 获取父组件信息
151
- getParentCompByName (context, name) {
152
-
153
- let parent = context.$parent;
154
-
155
- while (parent) {
156
- if (parent.$options.name !== name) {
157
- parent = parent.$parent;
158
- } else {
159
- return parent;
160
- }
161
- }
162
-
163
- return null;
164
- },
165
-
166
- // 获取多个符合条件的子组件信息
167
- getChildCompsByName (context, name) {
168
-
169
- let result = [];
170
-
171
- let childrens = context.$children;
172
-
173
- while (childrens && childrens.length > 0) {
174
-
175
- childrens.forEach(child => {
176
-
177
- childrens = child.$children ? child.$children : null;
178
-
179
- if (child.$options.name === name) {
180
-
181
- result.push(child);
182
- }
183
-
184
- });
185
- }
186
-
187
- return result;
188
- }
189
-
190
- };
@@ -1,7 +0,0 @@
1
- import VCheckbox from "./src/checkbox.vue";
2
-
3
- VCheckbox.install = function (Vue) {
4
- Vue.component(VCheckbox.name, VCheckbox);
5
- };
6
-
7
- export default VCheckbox;