@thestarweb/ui 1.7.1 → 2.0.0-beta.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 (236) hide show
  1. package/dist/_virtual/_plugin-vue_export-helper.js +7 -0
  2. package/dist/components/base/button/button.vue.js +5 -0
  3. package/dist/components/base/button/button.vue_vue_type_script_setup_true_lang.js +35 -0
  4. package/dist/components/data/card/card.vue.js +5 -0
  5. package/dist/components/data/card/card.vue_vue_type_script_setup_true_lang.js +50 -0
  6. package/dist/components/data/pagination/pagination.vue.js +5 -0
  7. package/dist/components/data/pagination/pagination.vue_vue_type_script_setup_true_lang.js +101 -0
  8. package/dist/components/data/popover/popover.vue.js +5 -0
  9. package/dist/components/data/popover/popover.vue_vue_type_script_setup_true_lang.js +122 -0
  10. package/dist/components/data/popover/utils.js +68 -0
  11. package/dist/components/data/table/table.vue.js +5 -0
  12. package/dist/components/data/table/table.vue_vue_type_script_setup_true_lang.js +45 -0
  13. package/dist/components/data/tag/tag.vue.js +5 -0
  14. package/dist/components/data/tag/tag.vue_vue_type_script_setup_true_lang.js +21 -0
  15. package/dist/components/data/tree/tree-item.vue.js +5 -0
  16. package/dist/components/data/tree/tree-item.vue_vue_type_script_setup_true_lang.js +75 -0
  17. package/dist/components/data/tree/tree-raw.vue.js +5 -0
  18. package/dist/components/data/tree/tree-raw.vue_vue_type_script_setup_true_lang.js +104 -0
  19. package/dist/components/data/tree/tree.vue.js +4 -0
  20. package/dist/components/data/tree/tree.vue_vue_type_script_setup_true_lang.js +60 -0
  21. package/dist/components/data/tree/utils.js +66 -0
  22. package/dist/components/form/checkbox/checkbox.vue.js +5 -0
  23. package/dist/components/form/checkbox/checkbox.vue_vue_type_script_setup_true_lang.js +50 -0
  24. package/dist/components/form/input/input.vue.js +5 -0
  25. package/dist/components/form/input/input.vue_vue_type_script_setup_true_lang.js +34 -0
  26. package/dist/components/form/select/select.vue.js +5 -0
  27. package/dist/components/form/select/select.vue_vue_type_script_setup_true_lang.js +146 -0
  28. package/dist/components/form/slider/slider.vue.js +5 -0
  29. package/dist/components/form/slider/slider.vue_vue_type_script_setup_true_lang.js +67 -0
  30. package/dist/components/form/switch/switch.vue.js +5 -0
  31. package/dist/components/form/switch/switch.vue_vue_type_script_setup_true_lang.js +38 -0
  32. package/dist/components/layout/layout/index.js +9 -0
  33. package/dist/components/layout/layout/layout-dividing.vue.js +10 -0
  34. package/dist/components/layout/layout/layout-main.vue.js +10 -0
  35. package/dist/components/layout/layout/layout.vue.js +5 -0
  36. package/dist/components/layout/layout/layout.vue_vue_type_script_setup_true_lang.js +14 -0
  37. package/dist/components/layout/page/Page.vue.js +5 -0
  38. package/dist/components/layout/page/Page.vue_vue_type_script_setup_true_lang.js +60 -0
  39. package/dist/components/other/calendar/calendar.vue.js +5 -0
  40. package/dist/components/other/calendar/calendar.vue_vue_type_script_setup_true_lang.js +103 -0
  41. package/dist/components/other/menu/index.vue.js +5 -0
  42. package/dist/components/other/menu/index.vue_vue_type_script_setup_true_lang.js +22 -0
  43. package/dist/components/other/menu/menu-h/index.vue.js +5 -0
  44. package/dist/components/other/menu/menu-h/index.vue_vue_type_script_setup_true_lang.js +22 -0
  45. package/dist/components/other/menu/menu-h/menu-h-item.vue.js +5 -0
  46. package/dist/components/other/menu/menu-h/menu-h-item.vue_vue_type_script_setup_true_lang.js +30 -0
  47. package/dist/components/other/menu/menu-v/index.vue.js +4 -0
  48. package/dist/components/other/menu/menu-v/index.vue_vue_type_script_setup_true_lang.js +32 -0
  49. package/dist/context/is-mobile.js +10 -0
  50. package/dist/icons/arrow-down.svg_component.js +12 -0
  51. package/dist/icons/arrow-right.svg_component.js +12 -0
  52. package/dist/icons/home.svg_component.js +12 -0
  53. package/dist/icons/menu.svg_component.js +12 -0
  54. package/dist/index.js +19 -0
  55. package/dist/style.css +2 -0
  56. package/dist/utils/index.js +9 -0
  57. package/dist/utils/z-index.js +6 -0
  58. package/package.json +38 -81
  59. package/types/src/components/base/button/button.vue.d.ts +22 -0
  60. package/types/src/components/base/button/example/base.vue.d.ts +3 -0
  61. package/types/src/components/base/button/index.d.ts +1 -0
  62. package/types/src/components/base/index.d.ts +1 -0
  63. package/types/src/components/data/card/card.vue.d.ts +32 -0
  64. package/types/src/components/data/card/index.d.ts +1 -0
  65. package/types/src/components/data/index.d.ts +6 -0
  66. package/types/src/components/data/pagination/example/base.vue.d.ts +3 -0
  67. package/types/src/components/data/pagination/index.d.ts +1 -0
  68. package/types/src/components/data/pagination/pagination.vue.d.ts +21 -0
  69. package/types/src/components/data/popover/example/base.vue.d.ts +3 -0
  70. package/types/src/components/data/popover/index.d.ts +1 -0
  71. package/types/src/components/data/popover/popover.vue.d.ts +39 -0
  72. package/types/src/components/data/popover/type.d.ts +1 -0
  73. package/types/src/components/data/popover/utils.d.ts +12 -0
  74. package/types/src/components/data/table/example/base.vue.d.ts +3 -0
  75. package/types/src/components/data/table/example/render.vue.d.ts +3 -0
  76. package/types/src/components/data/table/index.d.ts +2 -0
  77. package/types/src/components/data/table/table.vue.d.ts +36 -0
  78. package/types/src/components/data/table/types.d.ts +12 -0
  79. package/types/src/components/data/tag/example/base.vue.d.ts +3 -0
  80. package/types/src/components/data/tag/index.d.ts +1 -0
  81. package/types/src/components/data/tag/tag.vue.d.ts +20 -0
  82. package/types/src/components/data/tree/example/base.vue.d.ts +3 -0
  83. package/types/src/components/data/tree/index.d.ts +2 -0
  84. package/types/src/components/data/tree/tree-item.vue.d.ts +36 -0
  85. package/types/src/components/data/tree/tree-raw.vue.d.ts +47 -0
  86. package/types/src/components/data/tree/tree.vue.d.ts +34 -0
  87. package/types/src/components/data/tree/type.d.ts +40 -0
  88. package/types/src/components/data/tree/utils.d.ts +10 -0
  89. package/types/src/components/form/checkbox/checkbox.vue.d.ts +32 -0
  90. package/types/src/components/form/checkbox/example/base.vue.d.ts +3 -0
  91. package/types/src/components/form/checkbox/example/group.vue.d.ts +3 -0
  92. package/types/src/components/form/checkbox/index.d.ts +1 -0
  93. package/types/src/components/form/index.d.ts +5 -0
  94. package/types/src/components/form/input/example/base.vue.d.ts +3 -0
  95. package/types/src/components/form/input/index.d.ts +1 -0
  96. package/types/src/components/form/input/input.vue.d.ts +17 -0
  97. package/types/src/components/form/select/example/base.vue.d.ts +3 -0
  98. package/types/src/components/form/select/example/tree-select.vue.d.ts +3 -0
  99. package/types/src/components/form/select/index.d.ts +2 -0
  100. package/types/src/components/form/select/select.vue.d.ts +25 -0
  101. package/types/src/components/form/select/types.d.ts +25 -0
  102. package/types/src/components/form/slider/example/base.vue.d.ts +3 -0
  103. package/types/src/components/form/slider/index.d.ts +1 -0
  104. package/types/src/components/form/slider/slider.vue.d.ts +19 -0
  105. package/types/src/components/form/switch/example/base.vue.d.ts +3 -0
  106. package/types/src/components/form/switch/index.d.ts +1 -0
  107. package/types/src/components/form/switch/switch.vue.d.ts +17 -0
  108. package/types/src/components/index.d.ts +5 -0
  109. package/types/src/components/layout/index.d.ts +2 -0
  110. package/types/src/components/layout/layout/index.d.ts +42 -0
  111. package/types/src/components/layout/layout/layout-dividing.vue.d.ts +3 -0
  112. package/types/src/components/layout/layout/layout-main.vue.d.ts +15 -0
  113. package/types/src/components/layout/layout/layout.vue.d.ts +18 -0
  114. package/types/src/components/layout/page/Page.vue.d.ts +39 -0
  115. package/types/src/components/layout/page/index.d.ts +1 -0
  116. package/types/src/components/other/calendar/calendar.vue.d.ts +41 -0
  117. package/types/src/components/other/calendar/index.d.ts +1 -0
  118. package/types/src/components/other/index.d.ts +2 -0
  119. package/types/src/components/other/menu/index.d.ts +2 -0
  120. package/types/src/components/other/menu/index.vue.d.ts +46 -0
  121. package/types/src/components/other/menu/menu-h/index.vue.d.ts +19 -0
  122. package/types/src/components/other/menu/menu-h/menu-h-item.vue.d.ts +27 -0
  123. package/types/src/components/other/menu/menu-v/index.vue.d.ts +24 -0
  124. package/types/src/components/other/menu/types.d.ts +6 -0
  125. package/types/src/components/other/view-control/index.d.ts +1 -0
  126. package/types/src/components/other/view-control/view-control.vue.d.ts +20 -0
  127. package/types/src/context/index.d.ts +1 -0
  128. package/types/src/context/is-mobile.d.ts +4 -0
  129. package/types/src/icons/index.d.ts +4 -0
  130. package/types/src/index.d.ts +3 -0
  131. package/types/src/types.d.ts +2 -0
  132. package/types/src/utils/index.d.ts +6 -0
  133. package/types/src/utils/z-index.d.ts +1 -0
  134. package/types/vite.config.d.ts +2 -0
  135. package/build-ts/main.js +0 -63
  136. package/dist/demo.html +0 -8
  137. package/dist/star-ui.common.js +0 -33776
  138. package/dist/star-ui.common.js.map +0 -1
  139. package/dist/star-ui.umd.js +0 -33786
  140. package/dist/star-ui.umd.js.map +0 -1
  141. package/dist/star-ui.umd.min.js +0 -299
  142. package/dist/star-ui.umd.min.js.map +0 -1
  143. package/readme.md +0 -16
  144. package/src/components/button.vue +0 -34
  145. package/src/components/calendar.vue +0 -244
  146. package/src/components/call-render.tsx +0 -22
  147. package/src/components/card.vue +0 -126
  148. package/src/components/common/base-popper.vue +0 -132
  149. package/src/components/content/context-menu-box/index.vue +0 -117
  150. package/src/components/content/index.ts +0 -5
  151. package/src/components/content/menu/index.vue +0 -86
  152. package/src/components/content/menu/menu-h/index.vue +0 -68
  153. package/src/components/content/menu/menu-h/menu-h-child.vue +0 -74
  154. package/src/components/content/menu/menu-h/menu-h-item.vue +0 -66
  155. package/src/components/content/menu/menu-v/index.vue +0 -56
  156. package/src/components/content/modals/confirm.vue +0 -45
  157. package/src/components/content/modals/modal.vue +0 -110
  158. package/src/components/content/page.vue +0 -134
  159. package/src/components/form/form/form-item.vue +0 -116
  160. package/src/components/form/form/form.vue +0 -109
  161. package/src/components/form/form/index.ts +0 -2
  162. package/src/components/form/index.ts +0 -1
  163. package/src/components/input.vue +0 -89
  164. package/src/components/layout/auto-direction/index.vue +0 -28
  165. package/src/components/layout/index.ts +0 -1
  166. package/src/components/layout-h.vue +0 -34
  167. package/src/components/layout-main.vue +0 -25
  168. package/src/components/layout-v.vue +0 -36
  169. package/src/components/line-h.vue +0 -29
  170. package/src/components/line-v.vue +0 -29
  171. package/src/components/select.vue +0 -265
  172. package/src/components/slider.vue +0 -171
  173. package/src/components/switch.vue +0 -95
  174. package/src/components/table.vue +0 -59
  175. package/src/components/tree/index.vue +0 -116
  176. package/src/components/tree/tree-item.vue +0 -157
  177. package/src/components/view-control.vue +0 -83
  178. package/src/directives/is-focus.ts +0 -10
  179. package/src/func/download.ts +0 -15
  180. package/src/func/index.ts +0 -2
  181. package/src/func/modal/index.ts +0 -72
  182. package/src/global-style.css +0 -127
  183. package/src/icon-font/iconfont.css +0 -75
  184. package/src/icon-font/iconfont.eot +0 -0
  185. package/src/icon-font/iconfont.json +0 -114
  186. package/src/icon-font/iconfont.svg +0 -62
  187. package/src/icon-font/iconfont.ttf +0 -0
  188. package/src/icon-font/iconfont.woff +0 -0
  189. package/src/icon-font/iconfont.woff2 +0 -0
  190. package/src/main.ts +0 -57
  191. package/src/outher/index.ts +0 -8
  192. package/src/reg.ts +0 -129
  193. package/src/shims-vue.d.ts +0 -8
  194. package/src/types.d.ts +0 -15
  195. package/src/utils.ts +0 -24
  196. package/types/components/button.vue.d.ts +0 -5
  197. package/types/components/calendar.vue.d.ts +0 -26
  198. package/types/components/call-render.d.ts +0 -6
  199. package/types/components/card.vue.d.ts +0 -13
  200. package/types/components/common/base-popper.vue.d.ts +0 -21
  201. package/types/components/content/context-menu-box/index.vue.d.ts +0 -20
  202. package/types/components/content/index.d.ts +0 -5
  203. package/types/components/content/menu/index.vue.d.ts +0 -12
  204. package/types/components/content/menu/menu-h/index.vue.d.ts +0 -8
  205. package/types/components/content/menu/menu-h/menu-h-child.vue.d.ts +0 -7
  206. package/types/components/content/menu/menu-h/menu-h-item.vue.d.ts +0 -8
  207. package/types/components/content/menu/menu-v/index.vue.d.ts +0 -9
  208. package/types/components/content/modals/confirm.vue.d.ts +0 -7
  209. package/types/components/content/modals/modal.vue.d.ts +0 -12
  210. package/types/components/content/page.vue.d.ts +0 -9
  211. package/types/components/form/form/form-item.vue.d.ts +0 -22
  212. package/types/components/form/form/form.vue.d.ts +0 -24
  213. package/types/components/form/form/index.d.ts +0 -2
  214. package/types/components/form/index.d.ts +0 -1
  215. package/types/components/input.vue.d.ts +0 -17
  216. package/types/components/layout/auto-direction/index.vue.d.ts +0 -4
  217. package/types/components/layout/index.d.ts +0 -1
  218. package/types/components/layout-h.vue.d.ts +0 -4
  219. package/types/components/layout-main.vue.d.ts +0 -4
  220. package/types/components/layout-v.vue.d.ts +0 -4
  221. package/types/components/line-h.vue.d.ts +0 -4
  222. package/types/components/line-v.vue.d.ts +0 -4
  223. package/types/components/select.vue.d.ts +0 -26
  224. package/types/components/slider.vue.d.ts +0 -29
  225. package/types/components/switch.vue.d.ts +0 -12
  226. package/types/components/table.vue.d.ts +0 -5
  227. package/types/components/tree/index.vue.d.ts +0 -15
  228. package/types/components/tree/tree-item.vue.d.ts +0 -18
  229. package/types/components/view-control.vue.d.ts +0 -16
  230. package/types/directives/is-focus.d.ts +0 -4
  231. package/types/func/download.d.ts +0 -1
  232. package/types/func/index.d.ts +0 -2
  233. package/types/func/modal/index.d.ts +0 -13
  234. package/types/main.d.ts +0 -75
  235. package/types/outher/index.d.ts +0 -5
  236. 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,2 +0,0 @@
1
- export { default as SuForm } from "./form.vue";
2
- export { default as SuFormItem } from "./form-item.vue";
@@ -1 +0,0 @@
1
- export * from "./form/index";
@@ -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>