@thestarweb/ui 1.7.1 → 2.0.0-beta.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.
- package/dist/_virtual/_plugin-vue_export-helper.mjs +7 -0
- package/dist/components/base/button/button.vue.mjs +5 -0
- package/dist/components/base/button/button.vue_vue_type_script_setup_true_lang.mjs +27 -0
- package/dist/components/base/button/index.mjs +1 -0
- package/dist/components/base/index.mjs +2 -0
- package/dist/components/data/card/card.vue.mjs +5 -0
- package/dist/components/data/card/card.vue_vue_type_script_setup_true_lang.mjs +50 -0
- package/dist/components/data/card/index.mjs +1 -0
- package/dist/components/data/index.mjs +11 -0
- package/dist/components/data/popover/index.mjs +1 -0
- package/dist/components/data/popover/popover.vue.mjs +5 -0
- package/dist/components/data/popover/popover.vue_vue_type_script_setup_true_lang.mjs +123 -0
- package/dist/components/data/popover/utils.mjs +68 -0
- package/dist/components/data/table/index.mjs +1 -0
- package/dist/components/data/table/table.vue.mjs +5 -0
- package/dist/components/data/table/table.vue_vue_type_script_setup_true_lang.mjs +45 -0
- package/dist/components/data/tag/index.mjs +1 -0
- package/dist/components/data/tag/tag.vue.mjs +5 -0
- package/dist/components/data/tag/tag.vue_vue_type_script_setup_true_lang.mjs +21 -0
- package/dist/components/data/tree/index.mjs +1 -0
- package/dist/components/data/tree/tree-item.vue.mjs +5 -0
- package/dist/components/data/tree/tree-item.vue_vue_type_script_setup_true_lang.mjs +77 -0
- package/dist/components/data/tree/tree-raw.vue.mjs +5 -0
- package/dist/components/data/tree/tree-raw.vue_vue_type_script_setup_true_lang.mjs +104 -0
- package/dist/components/data/tree/tree.vue.mjs +4 -0
- package/dist/components/data/tree/tree.vue_vue_type_script_setup_true_lang.mjs +60 -0
- package/dist/components/data/tree/utils.mjs +66 -0
- package/dist/components/form/checkbox/checkbox.vue.mjs +5 -0
- package/dist/components/form/checkbox/checkbox.vue_vue_type_script_setup_true_lang.mjs +50 -0
- package/dist/components/form/checkbox/index.mjs +1 -0
- package/dist/components/form/index.mjs +11 -0
- package/dist/components/form/input/index.mjs +1 -0
- package/dist/components/form/input/input.vue.mjs +5 -0
- package/dist/components/form/input/input.vue_vue_type_script_setup_true_lang.mjs +34 -0
- package/dist/components/form/select/index.mjs +1 -0
- package/dist/components/form/select/select.vue.mjs +5 -0
- package/dist/components/form/select/select.vue_vue_type_script_setup_true_lang.mjs +148 -0
- package/dist/components/form/slider/index.mjs +1 -0
- package/dist/components/form/slider/slider.vue.mjs +5 -0
- package/dist/components/form/slider/slider.vue_vue_type_script_setup_true_lang.mjs +67 -0
- package/dist/components/form/switch/index.mjs +1 -0
- package/dist/components/form/switch/switch.vue.mjs +5 -0
- package/dist/components/form/switch/switch.vue_vue_type_script_setup_true_lang.mjs +38 -0
- package/dist/components/index.mjs +21 -0
- package/dist/components/layout/index.mjs +4 -0
- package/dist/components/layout/layout/index.mjs +9 -0
- package/dist/components/layout/layout/layout-dividing.vue.mjs +10 -0
- package/dist/components/layout/layout/layout-main.vue.mjs +10 -0
- package/dist/components/layout/layout/layout.vue.mjs +5 -0
- package/dist/components/layout/layout/layout.vue_vue_type_script_setup_true_lang.mjs +14 -0
- package/dist/components/layout/page/Page.vue.mjs +5 -0
- package/dist/components/layout/page/Page.vue_vue_type_script_setup_true_lang.mjs +63 -0
- package/dist/components/layout/page/index.mjs +1 -0
- package/dist/components/other/calendar/calendar.vue.mjs +5 -0
- package/dist/components/other/calendar/calendar.vue_vue_type_script_setup_true_lang.mjs +103 -0
- package/dist/components/other/calendar/index.mjs +1 -0
- package/dist/components/other/index.mjs +5 -0
- package/dist/components/other/menu/index.mjs +1 -0
- package/dist/components/other/menu/index.vue.mjs +5 -0
- package/dist/components/other/menu/index.vue_vue_type_script_setup_true_lang.mjs +22 -0
- package/dist/components/other/menu/menu-h/index.vue.mjs +5 -0
- package/dist/components/other/menu/menu-h/index.vue_vue_type_script_setup_true_lang.mjs +22 -0
- package/dist/components/other/menu/menu-h/menu-h-item.vue.mjs +5 -0
- package/dist/components/other/menu/menu-h/menu-h-item.vue_vue_type_script_setup_true_lang.mjs +30 -0
- package/dist/components/other/menu/menu-v/index.vue.mjs +4 -0
- package/dist/components/other/menu/menu-v/index.vue_vue_type_script_setup_true_lang.mjs +33 -0
- package/dist/context/index.mjs +1 -0
- package/dist/context/is-mobile.mjs +10 -0
- package/dist/icons/arrow-down.svg_component.mjs +12 -0
- package/dist/icons/arrow-right.svg_component.mjs +12 -0
- package/dist/icons/home.svg_component.mjs +12 -0
- package/dist/icons/index.mjs +5 -0
- package/dist/icons/menu.svg_component.mjs +12 -0
- package/dist/index.mjs +20 -0
- package/dist/style.css +2 -0
- package/dist/utils/index.mjs +9 -0
- package/dist/utils/z-index.mjs +6 -0
- package/package.json +33 -81
- package/types/src/components/base/button/button.vue.d.ts +21 -0
- package/types/src/components/base/button/example/base.vue.d.ts +3 -0
- package/types/src/components/base/button/index.d.ts +1 -0
- package/types/src/components/base/index.d.ts +1 -0
- package/types/src/components/data/card/card.vue.d.ts +32 -0
- package/types/src/components/data/card/index.d.ts +1 -0
- package/types/src/components/data/index.d.ts +5 -0
- package/types/src/components/data/pagination/example/base.vue.d.ts +3 -0
- package/types/src/components/data/pagination/index.d.ts +1 -0
- package/types/src/components/data/pagination/pagination.vue.d.ts +20 -0
- package/types/src/components/data/popover/example/base.vue.d.ts +3 -0
- package/types/src/components/data/popover/index.d.ts +1 -0
- package/types/src/components/data/popover/popover.vue.d.ts +39 -0
- package/types/src/components/data/popover/type.d.ts +1 -0
- package/types/src/components/data/popover/utils.d.ts +12 -0
- package/types/src/components/data/table/example/base.vue.d.ts +3 -0
- package/types/src/components/data/table/example/render.vue.d.ts +3 -0
- package/types/src/components/data/table/index.d.ts +2 -0
- package/types/src/components/data/table/table.vue.d.ts +36 -0
- package/types/src/components/data/table/types.d.ts +12 -0
- package/types/src/components/data/tag/example/base.vue.d.ts +3 -0
- package/types/src/components/data/tag/index.d.ts +1 -0
- package/types/src/components/data/tag/tag.vue.d.ts +20 -0
- package/types/src/components/data/tree/example/base.vue.d.ts +3 -0
- package/types/src/components/data/tree/index.d.ts +2 -0
- package/types/src/components/data/tree/tree-item.vue.d.ts +36 -0
- package/types/src/components/data/tree/tree-raw.vue.d.ts +47 -0
- package/types/src/components/data/tree/tree.vue.d.ts +34 -0
- package/types/src/components/data/tree/type.d.ts +40 -0
- package/types/src/components/data/tree/utils.d.ts +10 -0
- package/types/src/components/form/checkbox/checkbox.vue.d.ts +32 -0
- package/types/src/components/form/checkbox/example/base.vue.d.ts +3 -0
- package/types/src/components/form/checkbox/example/group.vue.d.ts +3 -0
- package/types/src/components/form/checkbox/index.d.ts +1 -0
- package/types/src/components/form/index.d.ts +5 -0
- package/types/src/components/form/input/example/base.vue.d.ts +3 -0
- package/types/src/components/form/input/index.d.ts +1 -0
- package/types/src/components/form/input/input.vue.d.ts +17 -0
- package/types/src/components/form/select/example/base.vue.d.ts +3 -0
- package/types/src/components/form/select/example/tree-select.vue.d.ts +3 -0
- package/types/src/components/form/select/index.d.ts +2 -0
- package/types/src/components/form/select/select.vue.d.ts +25 -0
- package/types/src/components/form/select/types.d.ts +25 -0
- package/types/src/components/form/slider/example/base.vue.d.ts +3 -0
- package/types/src/components/form/slider/index.d.ts +1 -0
- package/types/src/components/form/slider/slider.vue.d.ts +19 -0
- package/types/src/components/form/switch/example/base.vue.d.ts +3 -0
- package/types/src/components/form/switch/index.d.ts +1 -0
- package/types/src/components/form/switch/switch.vue.d.ts +17 -0
- package/types/src/components/index.d.ts +5 -0
- package/types/src/components/layout/index.d.ts +2 -0
- package/types/src/components/layout/layout/index.d.ts +42 -0
- package/types/src/components/layout/layout/layout-dividing.vue.d.ts +3 -0
- package/types/src/components/layout/layout/layout-main.vue.d.ts +15 -0
- package/types/src/components/layout/layout/layout.vue.d.ts +18 -0
- package/types/src/components/layout/page/Page.vue.d.ts +39 -0
- package/types/src/components/layout/page/index.d.ts +1 -0
- package/types/src/components/other/calendar/calendar.vue.d.ts +41 -0
- package/types/src/components/other/calendar/index.d.ts +1 -0
- package/types/src/components/other/index.d.ts +2 -0
- package/types/src/components/other/menu/index.d.ts +2 -0
- package/types/src/components/other/menu/index.vue.d.ts +46 -0
- package/types/src/components/other/menu/menu-h/index.vue.d.ts +19 -0
- package/types/src/components/other/menu/menu-h/menu-h-item.vue.d.ts +27 -0
- package/types/src/components/other/menu/menu-v/index.vue.d.ts +24 -0
- package/types/src/components/other/menu/types.d.ts +6 -0
- package/types/src/components/other/view-control/index.d.ts +1 -0
- package/types/src/components/other/view-control/view-control.vue.d.ts +20 -0
- package/types/src/context/index.d.ts +1 -0
- package/types/src/context/is-mobile.d.ts +4 -0
- package/types/src/icons/index.d.ts +4 -0
- package/types/src/index.d.ts +3 -0
- package/types/src/types.d.ts +2 -0
- package/types/src/utils/index.d.ts +6 -0
- package/types/src/utils/z-index.d.ts +1 -0
- package/types/vite.config.d.ts +2 -0
- package/build-ts/main.js +0 -63
- package/dist/demo.html +0 -8
- package/dist/star-ui.common.js +0 -33776
- package/dist/star-ui.common.js.map +0 -1
- package/dist/star-ui.umd.js +0 -33786
- package/dist/star-ui.umd.js.map +0 -1
- package/dist/star-ui.umd.min.js +0 -299
- package/dist/star-ui.umd.min.js.map +0 -1
- package/readme.md +0 -16
- package/src/components/button.vue +0 -34
- package/src/components/calendar.vue +0 -244
- package/src/components/call-render.tsx +0 -22
- package/src/components/card.vue +0 -126
- package/src/components/common/base-popper.vue +0 -132
- package/src/components/content/context-menu-box/index.vue +0 -117
- package/src/components/content/index.ts +0 -5
- package/src/components/content/menu/index.vue +0 -86
- package/src/components/content/menu/menu-h/index.vue +0 -68
- package/src/components/content/menu/menu-h/menu-h-child.vue +0 -74
- package/src/components/content/menu/menu-h/menu-h-item.vue +0 -66
- package/src/components/content/menu/menu-v/index.vue +0 -56
- package/src/components/content/modals/confirm.vue +0 -45
- package/src/components/content/modals/modal.vue +0 -110
- package/src/components/content/page.vue +0 -134
- package/src/components/form/form/form-item.vue +0 -116
- package/src/components/form/form/form.vue +0 -109
- package/src/components/form/form/index.ts +0 -2
- package/src/components/form/index.ts +0 -1
- package/src/components/input.vue +0 -89
- package/src/components/layout/auto-direction/index.vue +0 -28
- package/src/components/layout/index.ts +0 -1
- package/src/components/layout-h.vue +0 -34
- package/src/components/layout-main.vue +0 -25
- package/src/components/layout-v.vue +0 -36
- package/src/components/line-h.vue +0 -29
- package/src/components/line-v.vue +0 -29
- package/src/components/select.vue +0 -265
- package/src/components/slider.vue +0 -171
- package/src/components/switch.vue +0 -95
- package/src/components/table.vue +0 -59
- package/src/components/tree/index.vue +0 -116
- package/src/components/tree/tree-item.vue +0 -157
- package/src/components/view-control.vue +0 -83
- package/src/directives/is-focus.ts +0 -10
- package/src/func/download.ts +0 -15
- package/src/func/index.ts +0 -2
- package/src/func/modal/index.ts +0 -72
- package/src/global-style.css +0 -127
- package/src/icon-font/iconfont.css +0 -75
- package/src/icon-font/iconfont.eot +0 -0
- package/src/icon-font/iconfont.json +0 -114
- package/src/icon-font/iconfont.svg +0 -62
- package/src/icon-font/iconfont.ttf +0 -0
- package/src/icon-font/iconfont.woff +0 -0
- package/src/icon-font/iconfont.woff2 +0 -0
- package/src/main.ts +0 -57
- package/src/outher/index.ts +0 -8
- package/src/reg.ts +0 -129
- package/src/shims-vue.d.ts +0 -8
- package/src/types.d.ts +0 -15
- package/src/utils.ts +0 -24
- package/types/components/button.vue.d.ts +0 -5
- package/types/components/calendar.vue.d.ts +0 -26
- package/types/components/call-render.d.ts +0 -6
- package/types/components/card.vue.d.ts +0 -13
- package/types/components/common/base-popper.vue.d.ts +0 -21
- package/types/components/content/context-menu-box/index.vue.d.ts +0 -20
- package/types/components/content/index.d.ts +0 -5
- package/types/components/content/menu/index.vue.d.ts +0 -12
- package/types/components/content/menu/menu-h/index.vue.d.ts +0 -8
- package/types/components/content/menu/menu-h/menu-h-child.vue.d.ts +0 -7
- package/types/components/content/menu/menu-h/menu-h-item.vue.d.ts +0 -8
- package/types/components/content/menu/menu-v/index.vue.d.ts +0 -9
- package/types/components/content/modals/confirm.vue.d.ts +0 -7
- package/types/components/content/modals/modal.vue.d.ts +0 -12
- package/types/components/content/page.vue.d.ts +0 -9
- package/types/components/form/form/form-item.vue.d.ts +0 -22
- package/types/components/form/form/form.vue.d.ts +0 -24
- package/types/components/form/form/index.d.ts +0 -2
- package/types/components/form/index.d.ts +0 -1
- package/types/components/input.vue.d.ts +0 -17
- package/types/components/layout/auto-direction/index.vue.d.ts +0 -4
- package/types/components/layout/index.d.ts +0 -1
- package/types/components/layout-h.vue.d.ts +0 -4
- package/types/components/layout-main.vue.d.ts +0 -4
- package/types/components/layout-v.vue.d.ts +0 -4
- package/types/components/line-h.vue.d.ts +0 -4
- package/types/components/line-v.vue.d.ts +0 -4
- package/types/components/select.vue.d.ts +0 -26
- package/types/components/slider.vue.d.ts +0 -29
- package/types/components/switch.vue.d.ts +0 -12
- package/types/components/table.vue.d.ts +0 -5
- package/types/components/tree/index.vue.d.ts +0 -15
- package/types/components/tree/tree-item.vue.d.ts +0 -18
- package/types/components/view-control.vue.d.ts +0 -16
- package/types/directives/is-focus.d.ts +0 -4
- package/types/func/download.d.ts +0 -1
- package/types/func/index.d.ts +0 -2
- package/types/func/modal/index.d.ts +0 -13
- package/types/main.d.ts +0 -75
- package/types/outher/index.d.ts +0 -5
- package/types/reg.d.ts +0 -45
|
@@ -1,116 +0,0 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<div :class="`star-ui su-form-item star-ui-form-item star-ui-col-${col} star-ui-form--label-align-${labelAlign||pLabelAlign}`">
|
|
3
|
-
<div ref="labelDiv" class="start-ui star-ui-container star-ui-form-item--label" :style="labelStyle">
|
|
4
|
-
{{label}}
|
|
5
|
-
<slot name="label"></slot>
|
|
6
|
-
</div>
|
|
7
|
-
<div class="start-ui star-ui-container star-ui-form-item--content">
|
|
8
|
-
<slot></slot>
|
|
9
|
-
</div>
|
|
10
|
-
</div>
|
|
11
|
-
</template>
|
|
12
|
-
|
|
13
|
-
<script lang="ts">
|
|
14
|
-
import { Vue } from "vue-class-component";
|
|
15
|
-
import { Inject } from "vue-property-decorator";
|
|
16
|
-
import { Register, Prop } from "@ui-root/reg";
|
|
17
|
-
import { TypeFormLabelAlign } from "@ui-root/outher";
|
|
18
|
-
import { Bus } from "./form.vue";
|
|
19
|
-
|
|
20
|
-
import "@ui-root/global-style.css";
|
|
21
|
-
|
|
22
|
-
export const InjectLabelWidth = Symbol('InjectLabelWidth');
|
|
23
|
-
export const InjectLabelAlign = Symbol('InjectLabelAlign');
|
|
24
|
-
export const InjectEventBus = Symbol('InjectEventBus');
|
|
25
|
-
|
|
26
|
-
@Register({
|
|
27
|
-
name:"su-form-item",
|
|
28
|
-
hideInDoc:true,
|
|
29
|
-
watch:{
|
|
30
|
-
label(this:SuButton){
|
|
31
|
-
this.bus&&this.bus.labelUpdate(this);
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
})
|
|
35
|
-
export default class SuButton extends Vue {
|
|
36
|
-
declare $refs: {
|
|
37
|
-
labelDiv: HTMLDivElement
|
|
38
|
-
};
|
|
39
|
-
@Prop({
|
|
40
|
-
type:String,
|
|
41
|
-
default:()=>{
|
|
42
|
-
return 'label';
|
|
43
|
-
}
|
|
44
|
-
})
|
|
45
|
-
readonly label!:string;
|
|
46
|
-
@Prop({
|
|
47
|
-
type:[String, Number],
|
|
48
|
-
})
|
|
49
|
-
readonly labelWidth!:string|number|undefined;
|
|
50
|
-
@Inject({from:InjectLabelWidth,default:undefined})
|
|
51
|
-
readonly pLabelWidth!:string|number|undefined;
|
|
52
|
-
@Prop({
|
|
53
|
-
autoType: "FormLabelAlign",
|
|
54
|
-
})
|
|
55
|
-
readonly labelAlign!:TypeFormLabelAlign;
|
|
56
|
-
@Inject({from:InjectLabelAlign,default:"right"})
|
|
57
|
-
readonly pLabelAlign!:TypeFormLabelAlign;
|
|
58
|
-
@Prop({
|
|
59
|
-
type:Number,
|
|
60
|
-
default:()=>{
|
|
61
|
-
return 24;
|
|
62
|
-
}
|
|
63
|
-
})
|
|
64
|
-
readonly col!:number;
|
|
65
|
-
private get labelStyle():Record<string, unknown>{
|
|
66
|
-
const ret:Record<string, unknown>={};
|
|
67
|
-
const labelWidth = this.labelWidth || this.pLabelWidth;
|
|
68
|
-
if(labelWidth){
|
|
69
|
-
ret.width=typeof labelWidth === 'number' ? `${labelWidth}px` : labelWidth;
|
|
70
|
-
}
|
|
71
|
-
return ret;
|
|
72
|
-
}
|
|
73
|
-
@Inject({from:InjectEventBus})
|
|
74
|
-
readonly bus!:Bus|undefined;
|
|
75
|
-
created(){
|
|
76
|
-
if(this.bus){
|
|
77
|
-
this.bus.addItem(this);
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
beforeUnmount(){
|
|
81
|
-
if(this.bus){
|
|
82
|
-
this.bus.removeItem(this);
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
</script>
|
|
87
|
-
|
|
88
|
-
<style>
|
|
89
|
-
.star-ui-form-item{
|
|
90
|
-
display: flex;
|
|
91
|
-
flex-direction: row;
|
|
92
|
-
align-items: center;
|
|
93
|
-
overflow: hidden;
|
|
94
|
-
}
|
|
95
|
-
.star-ui-form-item--label{
|
|
96
|
-
overflow: hidden;
|
|
97
|
-
box-sizing: border-box;
|
|
98
|
-
}
|
|
99
|
-
.star-ui-form-item--content{
|
|
100
|
-
flex: 1;
|
|
101
|
-
}
|
|
102
|
-
.star-ui-form-item--content>.star-ui-select,.star-ui-form-item--content>.star-ui-input{
|
|
103
|
-
width: 100%;
|
|
104
|
-
}
|
|
105
|
-
|
|
106
|
-
.star-ui-form--label-align-left .star-ui-form-item--label, .star-ui-form--label-align-top .star-ui-form-item--label{
|
|
107
|
-
text-align: left;
|
|
108
|
-
}
|
|
109
|
-
.star-ui-form--label-align-right .star-ui-form-item--label{
|
|
110
|
-
text-align: right;
|
|
111
|
-
}
|
|
112
|
-
.star-ui-form-item.star-ui-form--label-align-top{
|
|
113
|
-
flex-direction: column;
|
|
114
|
-
align-items: stretch;
|
|
115
|
-
}
|
|
116
|
-
</style>
|
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<form :class="`star-ui su-form star-ui-form ${allowAotoMobile?'star-ui-form--auto-mobile':''}`">
|
|
3
|
-
<slot></slot>
|
|
4
|
-
</form>
|
|
5
|
-
</template>
|
|
6
|
-
|
|
7
|
-
<script lang="ts">
|
|
8
|
-
import { Vue } from "vue-class-component";
|
|
9
|
-
import { Register, Prop } from "@ui-root/reg";
|
|
10
|
-
import type { TypeFormLabelAlign } from "@ui-root/outher";
|
|
11
|
-
import { Provide } from "vue-property-decorator";
|
|
12
|
-
import Item, { InjectEventBus, InjectLabelAlign, InjectLabelWidth } from "./form-item.vue";
|
|
13
|
-
|
|
14
|
-
import "@ui-root/global-style.css";
|
|
15
|
-
|
|
16
|
-
export interface Bus{
|
|
17
|
-
addItem:(item:Item)=>void,
|
|
18
|
-
removeItem:(item:Item)=>void,
|
|
19
|
-
labelUpdate:(item:Item)=>void,
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
@Register({
|
|
23
|
-
name:"su-form",
|
|
24
|
-
})
|
|
25
|
-
export default class SuButton extends Vue {
|
|
26
|
-
@Prop({
|
|
27
|
-
autoType: "FormLabelAlign",
|
|
28
|
-
default:()=>{
|
|
29
|
-
return "right"
|
|
30
|
-
}
|
|
31
|
-
})
|
|
32
|
-
@Provide({to:InjectLabelAlign,reactive:true})
|
|
33
|
-
readonly labelAlign!:TypeFormLabelAlign;
|
|
34
|
-
@Prop({
|
|
35
|
-
type: Number
|
|
36
|
-
})
|
|
37
|
-
readonly labelWidth!:number|undefined;
|
|
38
|
-
@Prop({
|
|
39
|
-
type: Boolean,
|
|
40
|
-
default:()=>{
|
|
41
|
-
return true
|
|
42
|
-
}
|
|
43
|
-
})
|
|
44
|
-
readonly allowAotoMobile!:boolean;
|
|
45
|
-
@Provide({to:InjectEventBus,reactive:true})
|
|
46
|
-
private bus:Bus|undefined;
|
|
47
|
-
private items=new Set<Item>();
|
|
48
|
-
private addItem(item:Item):void{
|
|
49
|
-
this.items.add(item);
|
|
50
|
-
this.$nextTick(this.updateLabelWidth);
|
|
51
|
-
}
|
|
52
|
-
private removeItem(item:Item):void{
|
|
53
|
-
this.items.delete(item);
|
|
54
|
-
this.$nextTick(this.updateLabelWidth);
|
|
55
|
-
}
|
|
56
|
-
private updateLabelWidth(){
|
|
57
|
-
if(!this.isLoaded) return;
|
|
58
|
-
if(typeof this.labelWidth === 'undefined'){
|
|
59
|
-
this.sendLabelWidth = undefined;
|
|
60
|
-
}else if(this.labelWidth === 0){
|
|
61
|
-
this.sendLabelWidth=undefined;
|
|
62
|
-
this.$nextTick(() => {
|
|
63
|
-
let maxWidth = 0;
|
|
64
|
-
this.items.forEach((item => {
|
|
65
|
-
if((item.labelAlign||this.labelAlign) === 'top'){
|
|
66
|
-
return;
|
|
67
|
-
}
|
|
68
|
-
const width = item.$refs.labelDiv.offsetWidth;
|
|
69
|
-
if(width>maxWidth){
|
|
70
|
-
maxWidth=width;
|
|
71
|
-
}
|
|
72
|
-
}));
|
|
73
|
-
this.sendLabelWidth=maxWidth;
|
|
74
|
-
})
|
|
75
|
-
}else{
|
|
76
|
-
this.sendLabelWidth=this.labelWidth;
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
private isLoaded=false;
|
|
80
|
-
@Provide({to:InjectLabelWidth,reactive:true})
|
|
81
|
-
private sendLabelWidth:number|undefined=0;
|
|
82
|
-
created(){
|
|
83
|
-
this.bus={
|
|
84
|
-
addItem: this.addItem,
|
|
85
|
-
removeItem: this.removeItem,
|
|
86
|
-
labelUpdate: this.updateLabelWidth,
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
mounted(){
|
|
90
|
-
this.$nextTick(() => {
|
|
91
|
-
this.isLoaded=true;
|
|
92
|
-
this.updateLabelWidth();
|
|
93
|
-
});
|
|
94
|
-
}
|
|
95
|
-
beforeUnmount(){
|
|
96
|
-
this.isLoaded=false;
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
</script>
|
|
100
|
-
<style>
|
|
101
|
-
.star-ui-form{
|
|
102
|
-
display: flex;
|
|
103
|
-
flex-direction: row;
|
|
104
|
-
flex-wrap: wrap;
|
|
105
|
-
}
|
|
106
|
-
.star-ui-view-control.star-ui-view-control-mobile .star-ui-form--auto-mobile>.star-ui-form-item{
|
|
107
|
-
width: 100%;
|
|
108
|
-
}
|
|
109
|
-
</style>
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "./form/index";
|
package/src/components/input.vue
DELETED
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<div :class="['star-ui', 'su-input','star-ui-input',{'is-focus':isFocused}]">
|
|
3
|
-
<input type="text" ref="input" :value="modelValue" :name="name" :class="['star-ui','star-ui-input--inner','star-ui-size-'+size]" @input.stop="handleInput" @focus="handleFocus" @blur="handleBlur">
|
|
4
|
-
</div>
|
|
5
|
-
</template>
|
|
6
|
-
|
|
7
|
-
<script lang="ts">
|
|
8
|
-
import { Vue } from 'vue-class-component';
|
|
9
|
-
import { Register, Prop, Emit } from "@ui-root/reg";
|
|
10
|
-
import "../global-style.css";
|
|
11
|
-
|
|
12
|
-
@Register({
|
|
13
|
-
name:"su-input"
|
|
14
|
-
})
|
|
15
|
-
export default class SuInput extends Vue {
|
|
16
|
-
@Prop({
|
|
17
|
-
type:[String,Number],
|
|
18
|
-
default:""
|
|
19
|
-
})
|
|
20
|
-
modelValue!:string|number;
|
|
21
|
-
declare $refs:{
|
|
22
|
-
input:HTMLInputElement,
|
|
23
|
-
};
|
|
24
|
-
@Prop({
|
|
25
|
-
type:String,
|
|
26
|
-
default:""
|
|
27
|
-
})
|
|
28
|
-
name!:string;
|
|
29
|
-
@Prop({
|
|
30
|
-
type:String,
|
|
31
|
-
default:"medium"
|
|
32
|
-
})
|
|
33
|
-
size!:string;
|
|
34
|
-
isFocused=false;
|
|
35
|
-
@Emit("update:modelValue")
|
|
36
|
-
emitInput(data:string):string{
|
|
37
|
-
return data;
|
|
38
|
-
}
|
|
39
|
-
handleInput(event:InputEvent):void{
|
|
40
|
-
if(event.target){
|
|
41
|
-
var target=event.target as HTMLInputElement;
|
|
42
|
-
this.$emit("update:modelValue",target.value);
|
|
43
|
-
this.emitInput(target.value)
|
|
44
|
-
this.$nextTick(()=>target.value=(this.modelValue as string));//数字会自动转换成字符串
|
|
45
|
-
// return target.value;
|
|
46
|
-
}
|
|
47
|
-
// return "";
|
|
48
|
-
}
|
|
49
|
-
@Emit("focus")
|
|
50
|
-
private handleFocus():void{
|
|
51
|
-
this.isFocused=true;
|
|
52
|
-
}
|
|
53
|
-
@Emit("blur")
|
|
54
|
-
private handleBlur():void{
|
|
55
|
-
this.isFocused=false;
|
|
56
|
-
}
|
|
57
|
-
public focus():void{
|
|
58
|
-
this.$refs.input.focus();
|
|
59
|
-
}
|
|
60
|
-
public blur():void{
|
|
61
|
-
this.$refs.input.blur();
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
</script>
|
|
65
|
-
|
|
66
|
-
<style>
|
|
67
|
-
.star-ui-input{
|
|
68
|
-
display: inline-flex;
|
|
69
|
-
border: solid 1px var(--star-ui-input-border-color);
|
|
70
|
-
border-radius: var(--star-ui-border-radius);
|
|
71
|
-
flex-direction: row;
|
|
72
|
-
width:var(--star-ui-input-default-width);
|
|
73
|
-
overflow: hidden;
|
|
74
|
-
color: var(--star-ui-regular-text-color);
|
|
75
|
-
background: var(--star-ui-backgorund-color);
|
|
76
|
-
}
|
|
77
|
-
.star-ui-input:hover,.star-ui-input.is-focus{
|
|
78
|
-
border: solid 1px var(--star-ui-base-color);
|
|
79
|
-
}
|
|
80
|
-
.star-ui-input--inner,.star-ui-input--inner:hover,.star-ui-input--inner:active,.star-ui-input--inner:focus{
|
|
81
|
-
border-width: 0px;
|
|
82
|
-
outline: none;
|
|
83
|
-
margin: 0;
|
|
84
|
-
flex:1;
|
|
85
|
-
color: unset;
|
|
86
|
-
background: unset;
|
|
87
|
-
width: 100%;
|
|
88
|
-
}
|
|
89
|
-
</style>
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<div class="star-ui star-ui-auto-direction su-auto-direction">
|
|
3
|
-
<slot />
|
|
4
|
-
</div>
|
|
5
|
-
</template>
|
|
6
|
-
|
|
7
|
-
<script lang="ts">
|
|
8
|
-
import { Vue } from "vue-class-component";
|
|
9
|
-
import { Register } from "@ui-root/reg";
|
|
10
|
-
import "@ui-root/global-style.css";
|
|
11
|
-
|
|
12
|
-
@Register({
|
|
13
|
-
name:"su-auto-direction",
|
|
14
|
-
})
|
|
15
|
-
export default class SuAutoDirection extends Vue {
|
|
16
|
-
}
|
|
17
|
-
</script>
|
|
18
|
-
|
|
19
|
-
<style>
|
|
20
|
-
.star-ui-auto-direction{
|
|
21
|
-
display: flex;
|
|
22
|
-
padding: 0;
|
|
23
|
-
flex-direction: row;
|
|
24
|
-
}
|
|
25
|
-
.star-ui-view-control.star-ui-view-control-mobile .star-ui-auto-direction{
|
|
26
|
-
flex-direction: column;
|
|
27
|
-
}
|
|
28
|
-
</style>
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { default as SuAutoDirection } from "./auto-direction/index.vue";
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<div class="star-ui su-h-layout star-ui-h-layout">
|
|
3
|
-
<slot></slot>
|
|
4
|
-
</div>
|
|
5
|
-
</template>
|
|
6
|
-
|
|
7
|
-
<script lang="ts">
|
|
8
|
-
import { Vue } from "vue-class-component";
|
|
9
|
-
import { Register } from "@ui-root/reg";
|
|
10
|
-
import "../global-style.css";
|
|
11
|
-
|
|
12
|
-
@Register({
|
|
13
|
-
name:"su-h-layout",
|
|
14
|
-
})
|
|
15
|
-
export default class SuHLayout extends Vue {
|
|
16
|
-
}
|
|
17
|
-
</script>
|
|
18
|
-
|
|
19
|
-
<style>
|
|
20
|
-
.star-ui-h-layout{
|
|
21
|
-
display: flex;
|
|
22
|
-
flex-direction: row;
|
|
23
|
-
width: 100%;
|
|
24
|
-
height: 100%;
|
|
25
|
-
padding: 0;
|
|
26
|
-
overflow: hidden;
|
|
27
|
-
}
|
|
28
|
-
.star-ui-h-layout>*{
|
|
29
|
-
flex:0 0 auto;
|
|
30
|
-
}
|
|
31
|
-
.star-ui-h-layout>.star-ui-main{
|
|
32
|
-
width: 0;
|
|
33
|
-
}
|
|
34
|
-
</style>
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<div class="star-ui su-main star-ui-main">
|
|
3
|
-
<slot></slot>
|
|
4
|
-
</div>
|
|
5
|
-
</template>
|
|
6
|
-
|
|
7
|
-
<script lang="ts">
|
|
8
|
-
import { Vue } from "vue-class-component";
|
|
9
|
-
import { Register } from "@ui-root/reg";
|
|
10
|
-
import "../global-style.css";
|
|
11
|
-
|
|
12
|
-
@Register({
|
|
13
|
-
name:"su-main",
|
|
14
|
-
props: {
|
|
15
|
-
}
|
|
16
|
-
})
|
|
17
|
-
export default class SuMain extends Vue {
|
|
18
|
-
}
|
|
19
|
-
</script>
|
|
20
|
-
|
|
21
|
-
<style>
|
|
22
|
-
.star-ui-main{
|
|
23
|
-
flex: 1;
|
|
24
|
-
}
|
|
25
|
-
</style>
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<div class="star-ui su-v-layout star-ui-v-layout">
|
|
3
|
-
<slot></slot>
|
|
4
|
-
</div>
|
|
5
|
-
</template>
|
|
6
|
-
|
|
7
|
-
<script lang="ts">
|
|
8
|
-
import { Vue } from "vue-class-component";
|
|
9
|
-
import { Register } from "@ui-root/reg";
|
|
10
|
-
import "../global-style.css";
|
|
11
|
-
|
|
12
|
-
@Register({
|
|
13
|
-
name:"su-v-layout",
|
|
14
|
-
props: {
|
|
15
|
-
}
|
|
16
|
-
})
|
|
17
|
-
export default class SuVLayout extends Vue {
|
|
18
|
-
}
|
|
19
|
-
</script>
|
|
20
|
-
|
|
21
|
-
<style>
|
|
22
|
-
.star-ui-v-layout{
|
|
23
|
-
display: flex;
|
|
24
|
-
flex-direction: column;
|
|
25
|
-
width: 100%;
|
|
26
|
-
height: 100%;
|
|
27
|
-
padding: 0;
|
|
28
|
-
overflow: hidden;
|
|
29
|
-
}
|
|
30
|
-
.star-ui-v-layout>*{
|
|
31
|
-
flex:0 0 auto;
|
|
32
|
-
}
|
|
33
|
-
.star-ui-v-layout>.star-ui-main{
|
|
34
|
-
height: 0;
|
|
35
|
-
}
|
|
36
|
-
</style>
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<div class="star-ui su-h-line star-ui-h-line"></div>
|
|
3
|
-
</template>
|
|
4
|
-
|
|
5
|
-
<script lang="ts">
|
|
6
|
-
import { Vue } from "vue-class-component";
|
|
7
|
-
import { Register } from "@ui-root/reg";
|
|
8
|
-
import "../global-style.css";
|
|
9
|
-
|
|
10
|
-
@Register({
|
|
11
|
-
name:"su-h-line",
|
|
12
|
-
props: {
|
|
13
|
-
}
|
|
14
|
-
})
|
|
15
|
-
export default class SuHLine extends Vue {
|
|
16
|
-
}
|
|
17
|
-
</script>
|
|
18
|
-
|
|
19
|
-
<style>
|
|
20
|
-
.star-ui-h-line{
|
|
21
|
-
background-color:var(--star-ui-line-color);
|
|
22
|
-
width:100%;
|
|
23
|
-
height:var(--star-ui-line-width);
|
|
24
|
-
min-height:var(--star-ui-line-width);
|
|
25
|
-
max-height:var(--star-ui-line-width);
|
|
26
|
-
flex:0 0 var(--star-ui-line-width);
|
|
27
|
-
padding: 0;
|
|
28
|
-
}
|
|
29
|
-
</style>
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<div class="star-ui su-v-line star-ui-v-line"></div>
|
|
3
|
-
</template>
|
|
4
|
-
|
|
5
|
-
<script lang="ts">
|
|
6
|
-
import { Vue } from "vue-class-component";
|
|
7
|
-
import { Register } from "@ui-root/reg";
|
|
8
|
-
import "../global-style.css";
|
|
9
|
-
|
|
10
|
-
@Register({
|
|
11
|
-
name:"su-v-line",
|
|
12
|
-
props: {
|
|
13
|
-
}
|
|
14
|
-
})
|
|
15
|
-
export default class SuVLine extends Vue {
|
|
16
|
-
}
|
|
17
|
-
</script>
|
|
18
|
-
|
|
19
|
-
<style>
|
|
20
|
-
.star-ui-v-line{
|
|
21
|
-
background-color:var(--star-ui-line-color);
|
|
22
|
-
/*height:100%;*/
|
|
23
|
-
width:var(--star-ui-line-width);
|
|
24
|
-
min-width:var(--star-ui-line-width);
|
|
25
|
-
max-width:var(--star-ui-line-width);
|
|
26
|
-
flex:0 0 var(--star-ui-line-width);
|
|
27
|
-
padding: 0;
|
|
28
|
-
}
|
|
29
|
-
</style>
|