vue-devui 1.0.0-rc.7 → 1.0.0-rc.8

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 (125) hide show
  1. package/README.md +3 -0
  2. package/alert/index.es.js +37 -11
  3. package/alert/index.umd.js +1 -1
  4. package/alert/style.css +1 -1
  5. package/auto-complete/index.es.js +62 -26
  6. package/auto-complete/index.umd.js +5 -5
  7. package/auto-complete/style.css +1 -1
  8. package/avatar/index.es.js +32 -6
  9. package/avatar/index.umd.js +1 -1
  10. package/avatar/style.css +1 -1
  11. package/badge/index.es.js +27 -3
  12. package/badge/index.umd.js +1 -1
  13. package/badge/style.css +1 -1
  14. package/button/index.es.js +5548 -77
  15. package/button/index.umd.js +27 -1
  16. package/button/style.css +1 -1
  17. package/card/index.es.js +34 -13
  18. package/card/index.umd.js +1 -1
  19. package/card/style.css +1 -1
  20. package/checkbox/index.es.js +47 -29
  21. package/checkbox/index.umd.js +1 -1
  22. package/checkbox/style.css +1 -1
  23. package/date-picker/index.es.js +90 -138
  24. package/date-picker/index.umd.js +1 -1
  25. package/date-picker/style.css +1 -1
  26. package/drawer/index.es.js +28 -3
  27. package/drawer/index.umd.js +1 -1
  28. package/drawer/style.css +1 -1
  29. package/dropdown/index.es.js +36 -12
  30. package/dropdown/index.umd.js +1 -1
  31. package/dropdown/style.css +1 -1
  32. package/form/index.es.js +208 -73
  33. package/form/index.umd.js +12 -12
  34. package/form/style.css +1 -1
  35. package/fullscreen/index.es.js +28 -4
  36. package/fullscreen/index.umd.js +1 -1
  37. package/fullscreen/style.css +1 -1
  38. package/grid/index.es.js +68 -49
  39. package/grid/index.umd.js +1 -1
  40. package/grid/style.css +1 -1
  41. package/image-preview/index.es.js +34 -11
  42. package/image-preview/index.umd.js +1 -1
  43. package/image-preview/style.css +1 -1
  44. package/input/index.es.js +90 -138
  45. package/input/index.umd.js +1 -1
  46. package/input/style.css +1 -1
  47. package/layout/index.es.js +34 -6
  48. package/layout/index.umd.js +1 -1
  49. package/layout/style.css +1 -1
  50. package/loading/index.es.js +34 -10
  51. package/loading/index.umd.js +1 -1
  52. package/loading/style.css +1 -1
  53. package/modal/index.es.js +41 -15
  54. package/modal/index.umd.js +1 -1
  55. package/modal/style.css +1 -1
  56. package/notification/index.es.js +40 -13
  57. package/notification/index.umd.js +1 -1
  58. package/notification/style.css +1 -1
  59. package/nuxt/components/ButtonGroup.js +3 -0
  60. package/nuxt/components/buttonGroupInjectionKey.js +3 -0
  61. package/nuxt/components/buttonGroupProps.js +3 -0
  62. package/overlay/index.es.js +31 -9
  63. package/overlay/index.umd.js +1 -1
  64. package/overlay/style.css +1 -1
  65. package/package.json +1 -1
  66. package/pagination/index.es.js +59 -32
  67. package/pagination/index.umd.js +1 -1
  68. package/pagination/style.css +1 -1
  69. package/popover/index.es.js +53 -24
  70. package/popover/index.umd.js +13 -13
  71. package/popover/style.css +1 -1
  72. package/progress/index.es.js +31 -9
  73. package/progress/index.umd.js +3 -3
  74. package/progress/style.css +1 -1
  75. package/radio/index.es.js +32 -7
  76. package/radio/index.umd.js +1 -1
  77. package/radio/style.css +1 -1
  78. package/rate/index.es.js +32 -8
  79. package/rate/index.umd.js +1 -1
  80. package/rate/style.css +1 -1
  81. package/search/index.es.js +100 -146
  82. package/search/index.umd.js +13 -13
  83. package/search/style.css +1 -1
  84. package/select/index.es.js +74 -51
  85. package/select/index.umd.js +1 -1
  86. package/select/style.css +1 -1
  87. package/skeleton/index.es.js +37 -12
  88. package/skeleton/index.umd.js +1 -1
  89. package/skeleton/style.css +1 -1
  90. package/slider/index.es.js +34 -10
  91. package/slider/index.umd.js +1 -1
  92. package/slider/style.css +1 -1
  93. package/splitter/index.es.js +52 -24
  94. package/splitter/index.umd.js +15 -15
  95. package/splitter/style.css +1 -1
  96. package/status/index.es.js +26 -2
  97. package/status/index.umd.js +1 -1
  98. package/status/style.css +1 -1
  99. package/style.css +1 -1
  100. package/switch/index.es.js +30 -6
  101. package/switch/index.umd.js +1 -1
  102. package/switch/style.css +1 -1
  103. package/table/index.es.js +5710 -265
  104. package/table/index.umd.js +27 -1
  105. package/table/style.css +1 -1
  106. package/tabs/index.es.js +32 -8
  107. package/tabs/index.umd.js +1 -1
  108. package/tabs/style.css +1 -1
  109. package/tag/index.es.js +27 -2
  110. package/tag/index.umd.js +1 -1
  111. package/tag/style.css +1 -1
  112. package/textarea/index.es.js +93 -76
  113. package/textarea/index.umd.js +1 -1
  114. package/textarea/style.css +1 -1
  115. package/tooltip/index.es.js +41 -14
  116. package/tooltip/index.umd.js +12 -12
  117. package/tooltip/style.css +1 -1
  118. package/tree/index.es.js +60 -51
  119. package/tree/index.umd.js +1 -1
  120. package/tree/style.css +1 -1
  121. package/upload/index.es.js +53 -22
  122. package/upload/index.umd.js +1 -1
  123. package/upload/style.css +1 -1
  124. package/vue-devui.es.js +3703 -3560
  125. package/vue-devui.umd.js +20 -20
@@ -33,6 +33,29 @@ const sliderProps = {
33
33
  default: ""
34
34
  }
35
35
  };
36
+ function createBem(namespace, element, modifier) {
37
+ let cls = namespace;
38
+ if (element) {
39
+ cls += `__${element}`;
40
+ }
41
+ if (modifier) {
42
+ cls += `--${modifier}`;
43
+ }
44
+ return cls;
45
+ }
46
+ function useNamespace(block) {
47
+ const namespace = `devui-${block}`;
48
+ const b = () => createBem(namespace);
49
+ const e = (element) => element ? createBem(namespace, element) : "";
50
+ const m = (modifier) => modifier ? createBem(namespace, "", modifier) : "";
51
+ const em = (element, modifier) => element && modifier ? createBem(namespace, element, modifier) : "";
52
+ return {
53
+ b,
54
+ e,
55
+ m,
56
+ em
57
+ };
58
+ }
36
59
  var slider = "";
37
60
  var Slider = defineComponent({
38
61
  name: "DSlider",
@@ -42,6 +65,7 @@ var Slider = defineComponent({
42
65
  let isClick = true;
43
66
  let startPosition = 0;
44
67
  let startX = 0;
68
+ const ns = useNamespace("slider");
45
69
  const popoverShow = ref(false);
46
70
  const sliderRunway = ref(null);
47
71
  const inputValue = ref(props.modelValue);
@@ -108,7 +132,7 @@ var Slider = defineComponent({
108
132
  }
109
133
  const renderShowInput = () => {
110
134
  return props.showInput ? createVNode("div", {
111
- "class": "devui-input__out-wrap"
135
+ "class": ns.e("input-wrap")
112
136
  }, [createVNode("input", {
113
137
  "onInput": handleOnInput,
114
138
  "value": inputValue.value + "",
@@ -152,35 +176,35 @@ var Slider = defineComponent({
152
176
  });
153
177
  const popover = () => {
154
178
  return createVNode("div", {
155
- "class": "devui-slider_popover",
179
+ "class": ns.e("popover"),
156
180
  "style": {
157
181
  left: percentDispaly.value,
158
182
  opacity: popoverShow.value ? 1 : 0
159
183
  }
160
184
  }, [createVNode("div", {
161
- "class": "devui-slider_popover-arrow"
185
+ "class": ns.e("popover-arrow")
162
186
  }, null), createVNode("div", {
163
- "class": "devui-slider_popover-content"
187
+ "class": ns.e("popover-content")
164
188
  }, [inputValue.value + " " + props.tipsRenderer])]);
165
189
  };
166
190
  const color = computed(() => {
167
191
  return props.disabled ? "" : props.color;
168
192
  });
169
193
  return () => createVNode("div", {
170
- "class": "devui-slider"
194
+ "class": ns.b()
171
195
  }, [createVNode("div", {
172
196
  "ref": sliderRunway,
173
- "class": "devui-slider__runway" + disableClass.value,
197
+ "class": [ns.e("runway"), disableClass.value],
174
198
  "onMousedown": handleRunwayMousedown,
175
199
  "onMouseout": () => popoverShow.value = false
176
200
  }, [createVNode("div", {
177
- "class": "devui-slider__bar" + disableClass.value,
201
+ "class": [ns.e("bar"), disableClass.value],
178
202
  "style": {
179
203
  width: percentDispaly.value,
180
204
  backgroundColor: color.value
181
205
  }
182
206
  }, null), createVNode("div", {
183
- "class": "devui-slider__button" + disableClass.value,
207
+ "class": [ns.e("button"), disableClass.value],
184
208
  "style": {
185
209
  left: percentDispaly.value,
186
210
  borderColor: color.value
@@ -189,9 +213,9 @@ var Slider = defineComponent({
189
213
  "onMouseenter": () => popoverShow.value = true,
190
214
  "onMouseout": () => popoverShow.value = false
191
215
  }, null), props.tipsRenderer === "null" ? "" : popover()]), createVNode("span", {
192
- "class": "devui-min_count"
216
+ "class": ns.e("min-count")
193
217
  }, [props.min]), createVNode("span", {
194
- "class": "devui-max_count"
218
+ "class": ns.e("max-count")
195
219
  }, [props.max]), renderShowInput()]);
196
220
  }
197
221
  });
@@ -1 +1 @@
1
- (function(a,t){typeof exports=="object"&&typeof module!="undefined"?t(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],t):(a=typeof globalThis!="undefined"?globalThis:a||self,t(a.index={},a.Vue))})(this,function(a,t){"use strict";const b={disabled:{type:Boolean,default:!1},max:{type:Number,default:100},min:{type:Number,default:0},modelValue:{type:Number,default:0},showInput:{type:Boolean,default:!1},step:{type:Number,default:1},tipsRenderer:{type:String,default:""},color:{type:String,default:""}};var L="",v=t.defineComponent({name:"DSlider",props:b,emits:["update:modelValue"],setup(e,m){let f=!0,h=0,r=0;const i=t.ref(!1),o=t.ref(null),n=t.ref(e.modelValue),s=t.ref(0),V=t.ref(0),u=t.ref("");function X(l){if(n.value=parseInt(l.target.value),!n.value)n.value=e.min,u.value="0%";else{if(n.value<e.min||n.value>e.max)return;/^(?:[1-9]?\d|100)$/.test(`${n.value}`)&&(u.value=(n.value-e.min)*100/(e.max-e.min)+"%",m.emit("update:modelValue",n.value))}}function _(l){const c=o.value?o.value.clientWidth:0,d=Math.round(c);l<0&&(l=0);const S=d/((e.max-e.min)/e.step),w=Math.round(l/S)*S;if(Math.round(w)>=d){s.value=d,n.value=e.max,u.value="100%",m.emit("update:modelValue",e.max);return}u.value=Math.round(w*100/d)+"%",n.value=Math.round(w*(e.max-e.min)/d)+e.min,s.value=l,m.emit("update:modelValue",n.value)}function C(l){f=!1,r=l.clientX,h=s.value,V.value=h}function g(l){i.value=!0;const d=l.clientX-r;V.value=h+d,_(V.value)}function M(){i.value=!1,setTimeout(()=>{f=!0},100),window.removeEventListener("mousemove",g),window.removeEventListener("mouseup",M)}const D=()=>e.showInput?t.createVNode("div",{class:"devui-input__out-wrap"},[t.createVNode("input",{onInput:X,value:n.value+"",disabled:e.disabled},null)]):"";e.modelValue>e.max?u.value="100%":e.modelValue<e.min?u.value="0%":u.value=(e.modelValue-e.min)*100/(e.max-e.min)+"%",t.onMounted(()=>{const l=o.value?o.value.clientWidth:0;s.value=l*(n.value-e.min)/(e.max-e.min)});function N(l){i.value=!0,!e.disabled&&(l.preventDefault(),C(l),window.addEventListener("mousemove",g),window.addEventListener("mouseup",M))}function I(l){if(!e.disabled&&f){r=l.target.getBoundingClientRect().left;const d=l.clientX;_(d-r),N(l)}else return}const y=t.computed(()=>e.disabled?" disabled":""),R=()=>t.createVNode("div",{class:"devui-slider_popover",style:{left:u.value,opacity:i.value?1:0}},[t.createVNode("div",{class:"devui-slider_popover-arrow"},null),t.createVNode("div",{class:"devui-slider_popover-content"},[n.value+" "+e.tipsRenderer])]),x=t.computed(()=>e.disabled?"":e.color);return()=>t.createVNode("div",{class:"devui-slider"},[t.createVNode("div",{ref:o,class:"devui-slider__runway"+y.value,onMousedown:I,onMouseout:()=>i.value=!1},[t.createVNode("div",{class:"devui-slider__bar"+y.value,style:{width:u.value,backgroundColor:x.value}},null),t.createVNode("div",{class:"devui-slider__button"+y.value,style:{left:u.value,borderColor:x.value},onMousedown:N,onMouseenter:()=>i.value=!0,onMouseout:()=>i.value=!1},null),e.tipsRenderer==="null"?"":R()]),t.createVNode("span",{class:"devui-min_count"},[e.min]),t.createVNode("span",{class:"devui-max_count"},[e.max]),D()])}}),E={title:"Slider \u6ED1\u5757",category:"\u6570\u636E\u5F55\u5165",status:"100%",install(e){e.component(v.name,v)}};a.Slider=v,a.default=E,a.sliderProps=b,Object.defineProperty(a,"__esModule",{value:!0}),a[Symbol.toStringTag]="Module"});
1
+ (function(o,t){typeof exports=="object"&&typeof module!="undefined"?t(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],t):(o=typeof globalThis!="undefined"?globalThis:o||self,t(o.index={},o.Vue))})(this,function(o,t){"use strict";const g={disabled:{type:Boolean,default:!1},max:{type:Number,default:100},min:{type:Number,default:0},modelValue:{type:Number,default:0},showInput:{type:Boolean,default:!1},step:{type:Number,default:1},tipsRenderer:{type:String,default:""},color:{type:String,default:""}};function v(e,u,m){let r=e;return u&&(r+=`__${u}`),m&&(r+=`--${m}`),r}function D(e){const u=`devui-${e}`;return{b:()=>v(u),e:a=>a?v(u,a):"",m:a=>a?v(u,"",a):"",em:(a,c)=>a&&c?v(u,a,c):""}}var W="",V=t.defineComponent({name:"DSlider",props:g,emits:["update:modelValue"],setup(e,u){let m=!0,r=0,f=0;const d=D("slider"),a=t.ref(!1),c=t.ref(null),l=t.ref(e.modelValue),b=t.ref(0),y=t.ref(0),i=t.ref("");function R(n){if(l.value=parseInt(n.target.value),!l.value)l.value=e.min,i.value="0%";else{if(l.value<e.min||l.value>e.max)return;/^(?:[1-9]?\d|100)$/.test(`${l.value}`)&&(i.value=(l.value-e.min)*100/(e.max-e.min)+"%",u.emit("update:modelValue",l.value))}}function M(n){const h=c.value?c.value.clientWidth:0,s=Math.round(h);n<0&&(n=0);const C=s/((e.max-e.min)/e.step),N=Math.round(n/C)*C;if(Math.round(N)>=s){b.value=s,l.value=e.max,i.value="100%",u.emit("update:modelValue",e.max);return}i.value=Math.round(N*100/s)+"%",l.value=Math.round(N*(e.max-e.min)/s)+e.min,b.value=n,u.emit("update:modelValue",l.value)}function _(n){m=!1,f=n.clientX,r=b.value,y.value=r}function x(n){a.value=!0;const s=n.clientX-f;y.value=r+s,M(y.value)}function S(){a.value=!1,setTimeout(()=>{m=!0},100),window.removeEventListener("mousemove",x),window.removeEventListener("mouseup",S)}const B=()=>e.showInput?t.createVNode("div",{class:d.e("input-wrap")},[t.createVNode("input",{onInput:R,value:l.value+"",disabled:e.disabled},null)]):"";e.modelValue>e.max?i.value="100%":e.modelValue<e.min?i.value="0%":i.value=(e.modelValue-e.min)*100/(e.max-e.min)+"%",t.onMounted(()=>{const n=c.value?c.value.clientWidth:0;b.value=n*(l.value-e.min)/(e.max-e.min)});function E(n){a.value=!0,!e.disabled&&(n.preventDefault(),_(n),window.addEventListener("mousemove",x),window.addEventListener("mouseup",S))}function L(n){if(!e.disabled&&m){f=n.target.getBoundingClientRect().left;const s=n.clientX;M(s-f),E(n)}else return}const w=t.computed(()=>e.disabled?" disabled":""),P=()=>t.createVNode("div",{class:d.e("popover"),style:{left:i.value,opacity:a.value?1:0}},[t.createVNode("div",{class:d.e("popover-arrow")},null),t.createVNode("div",{class:d.e("popover-content")},[l.value+" "+e.tipsRenderer])]),X=t.computed(()=>e.disabled?"":e.color);return()=>t.createVNode("div",{class:d.b()},[t.createVNode("div",{ref:c,class:[d.e("runway"),w.value],onMousedown:L,onMouseout:()=>a.value=!1},[t.createVNode("div",{class:[d.e("bar"),w.value],style:{width:i.value,backgroundColor:X.value}},null),t.createVNode("div",{class:[d.e("button"),w.value],style:{left:i.value,borderColor:X.value},onMousedown:E,onMouseenter:()=>a.value=!0,onMouseout:()=>a.value=!1},null),e.tipsRenderer==="null"?"":P()]),t.createVNode("span",{class:d.e("min-count")},[e.min]),t.createVNode("span",{class:d.e("max-count")},[e.max]),B()])}}),I={title:"Slider \u6ED1\u5757",category:"\u6570\u636E\u5F55\u5165",status:"100%",install(e){e.component(V.name,V)}};o.Slider=V,o.default=I,o.sliderProps=g,Object.defineProperty(o,"__esModule",{value:!0}),o[Symbol.toStringTag]="Module"});
package/slider/style.css CHANGED
@@ -1 +1 @@
1
- .devui-slider{position:relative;width:90%;display:block}.devui-slider.disabled{cursor:not-allowed;background-color:var(--devui-disabled-line, #dfe1e6);border-color:var(--devui-disabled-line, #dfe1e6)}.devui-slider__runway{position:relative;width:100%;padding:4px 0;margin:4px 0;cursor:pointer;box-sizing:border-box;height:5px;display:flex;align-items:center;background-color:var(--devui-default-bg, #f3f6f8)}.devui-slider__runway.disabled{cursor:not-allowed}.devui-slider__runway .devui-slider__bar{height:6px;background-color:var(--devui-default-line, #5e7ce0);border-top-left-radius:var(--devui-border-radius, 2px);border-bottom-left-radius:var(--devui-border-radius, 2px);position:absolute}.devui-slider__runway .devui-slider__bar.disabled{background-color:var(--devui-disabled-line, #dfe1e6);border-color:var(--devui-disabled-line, #dfe1e6)}.devui-slider__runway .devui-slider__bar.disabled:hover{cursor:not-allowed}.devui-slider__runway .devui-slider__button{position:absolute;width:14px;height:14px;border:2px solid var(--devui-default-line, #5e7ce0);background-color:var(--devui-base-bg, #ffffff);border-radius:50%;margin-left:-7px;transition:transform .2s ease-in-out}.devui-slider__runway .devui-slider__button:hover{transform:scale(1.2)}.devui-slider__runway .devui-slider__button.disabled{background-color:var(--devui-base-bg, #ffffff);border-color:var(--devui-disabled-line, #dfe1e6)}.devui-slider__runway .devui-slider__button.disabled:hover{cursor:not-allowed;transform:none}.devui-slider__runway .devui-slider_popover{position:relative;bottom:26px;transform:translate(-50%);border-radius:var(--devui-border-radius-feedback, 4px);font-size:var(--devui-font-size-sm, 12px);color:var(--devui-feedback-overlay-text, #dfe1e6)}.devui-slider__runway .devui-slider_popover .devui-slider_popover-arrow{position:absolute;left:50%;margin-left:-4px;bottom:-4px;width:8px;height:8px;transform:rotate(45deg);display:block;z-index:-1;background-color:var(--devui-feedback-overlay-bg, #464d6e)}.devui-slider__runway .devui-slider_popover .devui-slider_popover-content{padding:5px 14px;text-align:center;border-radius:var(--devui-border-radius-feedback, 4px);background-color:var(--devui-feedback-overlay-bg, #464d6e)}.devui-slider .devui-min_count{position:absolute;top:15px;left:0;font-size:var(--devui-font-size, 12px);color:var(--devui-text, #252b3a)}.devui-slider .devui-max_count{position:absolute;top:15px;right:0;font-size:var(--devui-font-size, 12px);color:var(--devui-text, #252b3a)}.devui-slider .devui-input__out-wrap{font-size:var(--devui-font-size, 12px);position:absolute;right:-60px;top:-12px;padding:5px 10px;cursor:text;margin-left:20px}.devui-slider .devui-input__out-wrap input{width:40px;text-align:center}
1
+ .devui-slider{position:relative;width:90%;display:block}.devui-slider.disabled{cursor:not-allowed;background-color:var(--devui-disabled-line, #dfe1e6);border-color:var(--devui-disabled-line, #dfe1e6)}.devui-slider__runway{position:relative;width:100%;padding:4px 0;margin:4px 0;cursor:pointer;box-sizing:border-box;height:5px;display:flex;align-items:center;background-color:var(--devui-default-bg, #f3f6f8)}.devui-slider__runway.disabled{cursor:not-allowed}.devui-slider__runway .devui-slider__bar{height:6px;background-color:var(--devui-default-line, #5e7ce0);border-top-left-radius:var(--devui-border-radius, 2px);border-bottom-left-radius:var(--devui-border-radius, 2px);position:absolute}.devui-slider__runway .devui-slider__bar.disabled{background-color:var(--devui-disabled-line, #dfe1e6);border-color:var(--devui-disabled-line, #dfe1e6)}.devui-slider__runway .devui-slider__bar.disabled:hover{cursor:not-allowed}.devui-slider__runway .devui-slider__button{position:absolute;width:14px;height:14px;border:2px solid var(--devui-default-line, #5e7ce0);background-color:var(--devui-base-bg, #ffffff);border-radius:50%;margin-left:-7px;transition:transform .2s ease-in-out}.devui-slider__runway .devui-slider__button:hover{transform:scale(1.2)}.devui-slider__runway .devui-slider__button.disabled{background-color:var(--devui-base-bg, #ffffff);border-color:var(--devui-disabled-line, #dfe1e6)}.devui-slider__runway .devui-slider__button.disabled:hover{cursor:not-allowed;transform:none}.devui-slider__runway .devui-slider__popover{position:relative;bottom:26px;transform:translate(-50%);border-radius:var(--devui-border-radius-feedback, 4px);font-size:var(--devui-font-size-sm, 12px);color:var(--devui-feedback-overlay-text, #dfe1e6)}.devui-slider__runway .devui-slider__popover .devui-slider__popover-arrow{position:absolute;left:50%;margin-left:-4px;bottom:-4px;width:8px;height:8px;transform:rotate(45deg);display:block;z-index:-1;background-color:var(--devui-feedback-overlay-bg, #464d6e)}.devui-slider__runway .devui-slider__popover .devui-slider__popover-content{padding:5px 14px;text-align:center;border-radius:var(--devui-border-radius-feedback, 4px);background-color:var(--devui-feedback-overlay-bg, #464d6e)}.devui-slider .devui-slider__min-count{position:absolute;top:15px;left:0;font-size:var(--devui-font-size, 12px);color:var(--devui-text, #252b3a)}.devui-slider .devui-slider__max-count{position:absolute;top:15px;right:0;font-size:var(--devui-font-size, 12px);color:var(--devui-text, #252b3a)}.devui-slider .devui-slider__input-wrap{font-size:var(--devui-font-size, 12px);position:absolute;right:-60px;top:-12px;padding:5px 10px;cursor:text;margin-left:20px}.devui-slider .devui-slider__input-wrap input{width:40px;text-align:center}
@@ -23,19 +23,43 @@ var __publicField = (obj, key, value) => {
23
23
  };
24
24
  import { defineComponent, createVNode, Teleport, Transition, renderSlot, isVNode, computed, onMounted, watch, onUnmounted, ref, unref, nextTick, mergeProps, toRefs, Fragment, inject, reactive, withDirectives, provide, resolveComponent, onUpdated } from "vue";
25
25
  import { offset, autoPlacement, arrow, shift, computePosition } from "@floating-ui/dom";
26
+ function createBem(namespace, element, modifier) {
27
+ let cls = namespace;
28
+ if (element) {
29
+ cls += `__${element}`;
30
+ }
31
+ if (modifier) {
32
+ cls += `--${modifier}`;
33
+ }
34
+ return cls;
35
+ }
36
+ function useNamespace(block) {
37
+ const namespace = `devui-${block}`;
38
+ const b = () => createBem(namespace);
39
+ const e = (element) => element ? createBem(namespace, element) : "";
40
+ const m = (modifier) => modifier ? createBem(namespace, "", modifier) : "";
41
+ const em = (element, modifier) => element && modifier ? createBem(namespace, element, modifier) : "";
42
+ return {
43
+ b,
44
+ e,
45
+ m,
46
+ em
47
+ };
48
+ }
26
49
  var baseOverlay = "";
27
50
  function _isSlot(s) {
28
51
  return typeof s === "function" || Object.prototype.toString.call(s) === "[object Object]" && !isVNode(s);
29
52
  }
30
53
  const CommonOverlay = defineComponent({
31
54
  setup(props, ctx) {
55
+ const ns = useNamespace("overlay");
32
56
  return () => {
33
57
  let _slot;
34
58
  return createVNode(Teleport, {
35
59
  "to": "#d-overlay-anchor"
36
60
  }, {
37
61
  default: () => [createVNode(Transition, {
38
- "name": "devui-overlay-fade"
62
+ "name": ns.e("fade")
39
63
  }, _isSlot(_slot = renderSlot(ctx.slots, "default")) ? _slot : {
40
64
  default: () => [_slot]
41
65
  })]
@@ -78,15 +102,12 @@ const fixedOverlayProps = __spreadProps(__spreadValues({}, overlayProps), {
78
102
  });
79
103
  const overlayEmits = ["update:visible", "backdropClick"];
80
104
  function useOverlayLogic(props, ctx) {
105
+ const ns = useNamespace("overlay");
81
106
  const backgroundClass = computed(() => {
82
- return [
83
- "devui-overlay-background",
84
- props.backgroundClass,
85
- !props.hasBackdrop ? "devui-overlay-background__disabled" : "devui-overlay-background__color"
86
- ];
107
+ return [ns.e("background"), props.backgroundClass, !props.hasBackdrop ? ns.em("background", "disabled") : ns.em("background", "color")];
87
108
  });
88
109
  const overlayClass = computed(() => {
89
- return "devui-overlay";
110
+ return ns.b();
90
111
  });
91
112
  const handleBackdropClick = (event) => {
92
113
  var _a;
@@ -296,6 +317,7 @@ const FlexibleOverlay = defineComponent({
296
317
  emit,
297
318
  expose
298
319
  }) {
320
+ const ns = useNamespace("flexible-overlay");
299
321
  const {
300
322
  arrowRef,
301
323
  overlayRef,
@@ -308,10 +330,10 @@ const FlexibleOverlay = defineComponent({
308
330
  var _a;
309
331
  return props.modelValue && createVNode("div", mergeProps({
310
332
  "ref": overlayRef,
311
- "class": "devui-flexible-overlay"
333
+ "class": ns.b()
312
334
  }, attrs), [(_a = slots.default) == null ? void 0 : _a.call(slots), props.showArrow && createVNode("div", {
313
335
  "ref": arrowRef,
314
- "class": "devui-flexible-overlay-arrow"
336
+ "class": ns.e("arrow")
315
337
  }, null)]);
316
338
  };
317
339
  }
@@ -5786,7 +5808,7 @@ function useTooltip(origin, props) {
5786
5808
  origin.value.addEventListener("mouseenter", onMouseenter);
5787
5809
  origin.value.addEventListener("mouseleave", onMouseleave);
5788
5810
  });
5789
- return { visible, placement, positionArr, overlayStyles, onPositionChange };
5811
+ return { visible, placement, positionArr, overlayStyles, onPositionChange, onMouseenter, onMouseleave };
5790
5812
  }
5791
5813
  var tooltip = "";
5792
5814
  var DToolTip = defineComponent({
@@ -5806,13 +5828,16 @@ var DToolTip = defineComponent({
5806
5828
  placement,
5807
5829
  positionArr,
5808
5830
  overlayStyles,
5809
- onPositionChange
5831
+ onPositionChange,
5832
+ onMouseenter,
5833
+ onMouseleave
5810
5834
  } = useTooltip(origin, props);
5835
+ const ns = useNamespace("tooltip");
5811
5836
  return () => {
5812
5837
  var _a;
5813
5838
  return createVNode(Fragment, null, [createVNode("div", {
5814
5839
  "ref": origin,
5815
- "class": "devui-tooltip-reference"
5840
+ "class": ns.e("reference")
5816
5841
  }, [(_a = slots.default) == null ? void 0 : _a.call(slots)]), createVNode(Teleport, {
5817
5842
  "to": "body"
5818
5843
  }, {
@@ -5823,13 +5848,15 @@ var DToolTip = defineComponent({
5823
5848
  "modelValue": visible.value,
5824
5849
  "onUpdate:modelValue": ($event) => visible.value = $event,
5825
5850
  "ref": tooltipRef,
5826
- "class": "devui-tooltip",
5851
+ "class": ns.b(),
5827
5852
  "origin": origin.value,
5828
5853
  "position": positionArr.value,
5829
5854
  "offset": 6,
5830
5855
  "show-arrow": true,
5831
5856
  "style": overlayStyles.value,
5832
- "onPositionChange": onPositionChange
5857
+ "onPositionChange": onPositionChange,
5858
+ "onMouseenter": onMouseenter,
5859
+ "onMouseleave": onMouseleave
5833
5860
  }, {
5834
5861
  default: () => [createVNode("span", {
5835
5862
  "innerHTML": content.value
@@ -5957,9 +5984,10 @@ var DSplitterBar = defineComponent({
5957
5984
  },
5958
5985
  props: splitterBarProps,
5959
5986
  setup(props) {
5987
+ const ns = useNamespace("splitter");
5960
5988
  const store = inject("splitterStore");
5961
5989
  const state = reactive({
5962
- wrapperClass: `devui-splitter-bar devui-splitter-bar-${props.orientation}`
5990
+ wrapperClass: `${ns.e("bar")} ${ns.em("bar", props.orientation)} `
5963
5991
  });
5964
5992
  const domRef = ref();
5965
5993
  watch([() => props.splitBarSize, domRef], ([curSplitBarSize, ele]) => {
@@ -6003,7 +6031,7 @@ var DSplitterBar = defineComponent({
6003
6031
  const isCollapsed = (_d = (_c = pane == null ? void 0 : pane.component) == null ? void 0 : _c.props) == null ? void 0 : _d.collapsed;
6004
6032
  const isNearPaneCollapsed = nearPane == null ? void 0 : nearPane.collapsed;
6005
6033
  return {
6006
- "devui-collapse": isCollapsible,
6034
+ [ns.e("collapse")]: isCollapsible,
6007
6035
  collapsed: isCollapsed,
6008
6036
  hidden: isNearPaneCollapsed
6009
6037
  };
@@ -6158,9 +6186,7 @@ var DSplitterBar = defineComponent({
6158
6186
  handleCollapsePrePane();
6159
6187
  }
6160
6188
  }, null)]
6161
- }), createVNode("div", {
6162
- "class": "devui-resize-handle"
6163
- }, null), props.showCollapseButton && createVNode(DToolTip, {
6189
+ }), props.showCollapseButton && createVNode(DToolTip, {
6164
6190
  "content": renderCollapsedTip()
6165
6191
  }, {
6166
6192
  default: () => [createVNode("div", {
@@ -6313,6 +6339,7 @@ var Splitter = defineComponent({
6313
6339
  const state = reactive({
6314
6340
  panes: []
6315
6341
  });
6342
+ const ns = useNamespace("splitter");
6316
6343
  state.panes = ((_b = (_a = ctx.slots).DSplitterPane) == null ? void 0 : _b.call(_a)) || [];
6317
6344
  store.setPanes({
6318
6345
  panes: state.panes
@@ -6353,7 +6380,7 @@ var Splitter = defineComponent({
6353
6380
  orientation,
6354
6381
  showCollapseButton
6355
6382
  } = props;
6356
- const wrapperClass = ["devui-splitter", `devui-splitter-${orientation}`];
6383
+ const wrapperClass = [ns.b(), ns.m(orientation)];
6357
6384
  return createVNode("div", {
6358
6385
  "class": wrapperClass,
6359
6386
  "ref": domRef
@@ -6417,6 +6444,7 @@ var SplitterPane = defineComponent({
6417
6444
  const store = inject("splitterStore");
6418
6445
  const domRef = ref();
6419
6446
  const orderRef = ref();
6447
+ const ns = useNamespace("splitter");
6420
6448
  watch([orderRef, domRef], ([order, ele]) => {
6421
6449
  if (!ele) {
6422
6450
  return;
@@ -6430,7 +6458,7 @@ var SplitterPane = defineComponent({
6430
6458
  return;
6431
6459
  }
6432
6460
  ele.style.flexBasis = curSize;
6433
- const paneFixedClass = "devui-splitter-pane-fixed";
6461
+ const paneFixedClass = ns.em("pane", "fixed");
6434
6462
  if (curSize) {
6435
6463
  addClass(ele, paneFixedClass);
6436
6464
  } else {
@@ -6478,7 +6506,7 @@ var SplitterPane = defineComponent({
6478
6506
  if (!ele) {
6479
6507
  return;
6480
6508
  }
6481
- const paneHiddenClass = "devui-splitter-pane-hidden";
6509
+ const paneHiddenClass = ns.em("pane", "hidden");
6482
6510
  if (!collapsed) {
6483
6511
  removeClass(ele, paneHiddenClass);
6484
6512
  } else {
@@ -6502,7 +6530,7 @@ var SplitterPane = defineComponent({
6502
6530
  if (!(ele instanceof HTMLElement)) {
6503
6531
  return;
6504
6532
  }
6505
- const flexGrowClass = "devui-splitter-pane-grow";
6533
+ const flexGrowClass = ns.em("pane", "grow");
6506
6534
  if (hasClass(ele, flexGrowClass)) {
6507
6535
  removeClass(ele, flexGrowClass);
6508
6536
  } else if (collapsed) {
@@ -6517,7 +6545,7 @@ var SplitterPane = defineComponent({
6517
6545
  return () => {
6518
6546
  var _a;
6519
6547
  return createVNode("div", {
6520
- "class": "devui-splitter-pane",
6548
+ "class": ns.e("pane"),
6521
6549
  "ref": domRef
6522
6550
  }, [(_a = slots.default) == null ? void 0 : _a.call(slots)]);
6523
6551
  };