gi-component 0.0.6 → 0.0.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 (59) hide show
  1. package/dist/gi.css +1 -1
  2. package/dist/index.d.ts +22 -10
  3. package/dist/index.es.js +42 -41
  4. package/dist/index.es.js.map +1 -1
  5. package/dist/index.umd.js +1 -1
  6. package/dist/index.umd.js.map +1 -1
  7. package/package.json +10 -3
  8. package/packages/components/button/index.ts +4 -4
  9. package/packages/components/button/src/button.vue +32 -32
  10. package/packages/components/button/src/type.ts +2 -2
  11. package/packages/components/card/index.ts +4 -4
  12. package/packages/components/card/src/card.vue +21 -21
  13. package/packages/components/card/src/type.ts +9 -9
  14. package/packages/components/dialog/index.ts +5 -5
  15. package/packages/components/dialog/src/dialog.ts +33 -33
  16. package/packages/components/dialog/src/dialog.vue +34 -32
  17. package/packages/components/dialog/src/type.ts +13 -13
  18. package/packages/components/edit-table/index.ts +4 -4
  19. package/packages/components/edit-table/src/edit-table.vue +49 -49
  20. package/packages/components/edit-table/src/type.ts +42 -62
  21. package/packages/components/form/index.ts +4 -4
  22. package/packages/components/form/src/form.vue +98 -98
  23. package/packages/components/form/src/type.ts +74 -88
  24. package/packages/components/grid/index.ts +6 -6
  25. package/packages/components/grid/src/context.ts +17 -17
  26. package/packages/components/grid/src/grid-item.vue +40 -40
  27. package/packages/components/grid/src/grid.vue +38 -38
  28. package/packages/components/grid/src/hook/use-index.ts +24 -24
  29. package/packages/components/grid/src/hook/use-responsive-state.ts +26 -26
  30. package/packages/components/grid/src/hook/use-responsive-value.ts +24 -24
  31. package/packages/components/grid/src/interface.ts +32 -32
  32. package/packages/components/grid/src/utils/global-config.ts +3 -3
  33. package/packages/components/grid/src/utils/index.ts +25 -25
  34. package/packages/components/grid/src/utils/is.ts +2 -2
  35. package/packages/components/grid/src/utils/responsive-observe.ts +53 -53
  36. package/packages/components/input-group/index.ts +4 -4
  37. package/packages/components/input-group/src/input-group.vue +2 -2
  38. package/packages/components/input-search/index.ts +4 -4
  39. package/packages/components/input-search/src/input-search.vue +15 -15
  40. package/packages/components/input-search/src/type.ts +4 -4
  41. package/packages/components/page-layout/index.ts +4 -4
  42. package/packages/components/page-layout/src/page-layout.vue +25 -25
  43. package/packages/components/page-layout/src/split-button.vue +22 -22
  44. package/packages/components/page-layout/src/type.ts +9 -9
  45. package/packages/components/table/index.ts +4 -4
  46. package/packages/components/table/src/TableColumn.vue +10 -10
  47. package/packages/components/table/src/table.vue +14 -14
  48. package/packages/components/table/src/type.ts +8 -16
  49. package/packages/components/tabs/index.ts +4 -4
  50. package/packages/components/tabs/src/tabs.vue +26 -36
  51. package/packages/components/tabs/src/type.ts +9 -9
  52. package/packages/hooks/index.ts +2 -2
  53. package/packages/hooks/useBemClass.ts +7 -7
  54. package/packages/hooks/useTable.ts +6 -7
  55. package/packages/index.ts +44 -44
  56. package/packages/styles/index.scss +6 -0
  57. package/packages/types/tool.ts +14 -0
  58. package/packages/utils/createSelectDialog.ts +28 -27
  59. package/packages/utils/index.ts +1 -1
@@ -1,16 +1,16 @@
1
- import type { Ref } from 'vue';
2
- import type { ResponsiveValue } from '../interface';
3
- import type { ScreenMap } from '../utils/responsive-observe';
4
- import { computed, onMounted, onUnmounted, ref } from 'vue';
5
- import { isObject } from '../utils/is';
1
+ import type { Ref } from 'vue'
2
+ import type { ResponsiveValue } from '../interface'
3
+ import type { ScreenMap } from '../utils/responsive-observe'
4
+ import { computed, onMounted, onUnmounted, ref } from 'vue'
5
+ import { isObject } from '../utils/is'
6
6
  import ResponsiveObserve, {
7
7
  responsiveArray
8
- } from '../utils/responsive-observe';
8
+ } from '../utils/responsive-observe'
9
9
 
10
10
  function isResponsiveValue(
11
11
  val: number | ResponsiveValue
12
12
  ): val is ResponsiveValue {
13
- return isObject(val);
13
+ return isObject(val)
14
14
  }
15
15
 
16
16
  export function useResponsiveState(
@@ -25,42 +25,42 @@ export function useResponsiveState(
25
25
  lg: true,
26
26
  xl: true,
27
27
  xxl: true
28
- });
28
+ })
29
29
  const result = computed(() => {
30
- let res = defaultVal;
30
+ let res = defaultVal
31
31
  if (isResponsiveValue(val.value)) {
32
32
  for (let i = 0; i < responsiveArray.length; i++) {
33
- const breakpoint = responsiveArray[i];
33
+ const breakpoint = responsiveArray[i]
34
34
  if (
35
- (screens.value[breakpoint] ||
36
- (breakpoint === 'xs' && fallbackToXs)) &&
37
- val.value[breakpoint] !== undefined
35
+ (screens.value[breakpoint]
36
+ || (breakpoint === 'xs' && fallbackToXs))
37
+ && val.value[breakpoint] !== undefined
38
38
  ) {
39
- res = val.value[breakpoint] as number;
40
- break;
39
+ res = val.value[breakpoint] as number
40
+ break
41
41
  }
42
42
  }
43
43
  } else {
44
- res = val.value;
44
+ res = val.value
45
45
  }
46
- return res;
47
- });
46
+ return res
47
+ })
48
48
 
49
- let subscribeToken = '';
49
+ let subscribeToken = ''
50
50
 
51
51
  onMounted(() => {
52
- subscribeToken = ResponsiveObserve.subscribe(screensVal => {
52
+ subscribeToken = ResponsiveObserve.subscribe((screensVal) => {
53
53
  if (isResponsiveValue(val.value)) {
54
- screens.value = screensVal;
54
+ screens.value = screensVal
55
55
  }
56
- });
57
- });
56
+ })
57
+ })
58
58
 
59
59
  onUnmounted(() => {
60
60
  if (subscribeToken) {
61
- ResponsiveObserve.unsubscribe(subscribeToken);
61
+ ResponsiveObserve.unsubscribe(subscribeToken)
62
62
  }
63
- });
63
+ })
64
64
 
65
- return result;
65
+ return result
66
66
  }
@@ -1,36 +1,36 @@
1
- import type { Ref } from 'vue';
2
- import type { ResponsiveValue } from '../interface';
3
- import { computed } from 'vue';
4
- import { isNumber, isObject } from '../utils/is';
5
- import { responsiveArray } from '../utils/responsive-observe';
1
+ import type { Ref } from 'vue'
2
+ import type { ResponsiveValue } from '../interface'
3
+ import { computed } from 'vue'
4
+ import { isNumber, isObject } from '../utils/is'
5
+ import { responsiveArray } from '../utils/responsive-observe'
6
6
 
7
7
  export function useResponsiveValue(
8
8
  props: Ref<{
9
- val: number;
10
- key: string;
11
- xs?: number | { [key: string]: any };
12
- sm?: number | { [key: string]: any };
13
- md?: number | { [key: string]: any };
14
- lg?: number | { [key: string]: any };
15
- xl?: number | { [key: string]: any };
16
- xxl?: number | { [key: string]: any };
9
+ val: number
10
+ key: string
11
+ xs?: number | { [key: string]: any }
12
+ sm?: number | { [key: string]: any }
13
+ md?: number | { [key: string]: any }
14
+ lg?: number | { [key: string]: any }
15
+ xl?: number | { [key: string]: any }
16
+ xxl?: number | { [key: string]: any }
17
17
  }>
18
18
  ) {
19
19
  const value = computed(() => {
20
- const { val, key, xs, sm, md, lg, xl, xxl } = props.value;
20
+ const { val, key, xs, sm, md, lg, xl, xxl } = props.value
21
21
  if (!xs && !sm && !md && !lg && !xl && !xxl) {
22
- return val;
22
+ return val
23
23
  }
24
- const result: ResponsiveValue = {};
25
- responsiveArray.forEach(breakpoint => {
26
- const config = props.value[breakpoint];
24
+ const result: ResponsiveValue = {}
25
+ responsiveArray.forEach((breakpoint) => {
26
+ const config = props.value[breakpoint]
27
27
  if (isNumber(config)) {
28
- result[breakpoint] = config;
28
+ result[breakpoint] = config
29
29
  } else if (isObject(config) && isNumber(config[key])) {
30
- result[breakpoint] = config[key];
30
+ result[breakpoint] = config[key]
31
31
  }
32
- });
33
- return result;
34
- });
35
- return value;
32
+ })
33
+ return result
34
+ })
35
+ return value
36
36
  }
@@ -3,72 +3,72 @@ export interface ResponsiveValue {
3
3
  * @zh >= 1600px 响应式配置
4
4
  * @en >= 1600px responsive configuration
5
5
  */
6
- xxl?: number;
6
+ xxl?: number
7
7
  /**
8
8
  * @zh >= 1200px 响应式配置
9
9
  * @en >= 1200px responsive configuration
10
10
  */
11
- xl?: number;
11
+ xl?: number
12
12
  /**
13
13
  * @zh >= 992px 响应式配置
14
14
  * @en >= 992px responsive configuration
15
15
  */
16
- lg?: number;
16
+ lg?: number
17
17
  /**
18
18
  * @zh >= 768px 响应式配置
19
19
  * @en >= 768px responsive configuration
20
20
  */
21
- md?: number;
21
+ md?: number
22
22
  /**
23
23
  * @zh >= 576px 响应式配置
24
24
  * @en >= 576px responsive configuration
25
25
  */
26
- sm?: number;
26
+ sm?: number
27
27
  /**
28
28
  * @zh < 576px 响应式配置
29
29
  * @en <576px responsive configuration
30
30
  */
31
- xs?: number;
31
+ xs?: number
32
32
  }
33
33
 
34
- export type FlexType = number | string | 'initial' | 'auto' | 'none';
34
+ export type FlexType = number | string | 'initial' | 'auto' | 'none'
35
35
 
36
36
  export interface RowProps {
37
- gutter?: number | ResponsiveValue | ResponsiveValue[];
38
- justify?: 'start' | 'center' | 'end' | 'space-around' | 'space-between';
39
- align?: 'start' | 'center' | 'end' | 'stretch';
40
- div?: boolean;
41
- wrap?: boolean;
37
+ gutter?: number | ResponsiveValue | ResponsiveValue[]
38
+ justify?: 'start' | 'center' | 'end' | 'space-around' | 'space-between'
39
+ align?: 'start' | 'center' | 'end' | 'stretch'
40
+ div?: boolean
41
+ wrap?: boolean
42
42
  }
43
43
 
44
44
  export interface ColProps {
45
- span?: number;
46
- offset?: number | undefined;
47
- order?: number | undefined;
48
- xs?: number | { [key: string]: any } | undefined;
49
- sm?: number | { [key: string]: any } | undefined;
50
- md?: number | { [key: string]: any } | undefined;
51
- lg?: number | { [key: string]: any } | undefined;
52
- xl?: number | { [key: string]: any } | undefined;
53
- xxl?: number | { [key: string]: any } | undefined;
54
- flex?: number | string | 'initial' | 'auto' | 'none' | undefined;
45
+ span?: number
46
+ offset?: number | undefined
47
+ order?: number | undefined
48
+ xs?: number | { [key: string]: any } | undefined
49
+ sm?: number | { [key: string]: any } | undefined
50
+ md?: number | { [key: string]: any } | undefined
51
+ lg?: number | { [key: string]: any } | undefined
52
+ xl?: number | { [key: string]: any } | undefined
53
+ xxl?: number | { [key: string]: any } | undefined
54
+ flex?: number | string | 'initial' | 'auto' | 'none' | undefined
55
55
  }
56
56
 
57
57
  export interface GridProps {
58
- cols?: number | ResponsiveValue;
59
- rowGap?: number | ResponsiveValue;
60
- colGap?: number | ResponsiveValue;
61
- collapsed?: boolean;
62
- collapsedRows?: number;
58
+ cols?: number | ResponsiveValue
59
+ rowGap?: number | ResponsiveValue
60
+ colGap?: number | ResponsiveValue
61
+ collapsed?: boolean
62
+ collapsedRows?: number
63
63
  }
64
64
 
65
65
  export interface GridItemProps {
66
- span?: number | ResponsiveValue;
67
- offset?: number | ResponsiveValue;
68
- suffix?: boolean;
66
+ span?: number | ResponsiveValue
67
+ offset?: number | ResponsiveValue
68
+ suffix?: boolean
69
69
  }
70
70
 
71
71
  export interface GridItemData extends GridItemProps {
72
- span: number;
73
- offset: number;
72
+ span: number
73
+ offset: number
74
74
  }
@@ -1,6 +1,6 @@
1
- import { useBemClass } from '../../../../hooks';
1
+ import { useBemClass } from '../../../../hooks'
2
2
 
3
3
  export function getPrefixCls(name: string) {
4
- const { b } = useBemClass();
5
- return b(name);
4
+ const { b } = useBemClass()
5
+ return b(name)
6
6
  }
@@ -1,21 +1,21 @@
1
- import type { GridItemData } from '../interface';
1
+ import type { GridItemData } from '../interface'
2
2
 
3
3
  export function resolveItemData(
4
4
  cols: number,
5
5
  props: GridItemData
6
6
  ): GridItemData {
7
- const originSpan = props.span ?? 1;
8
- const originOffset = props.offset ?? 0;
9
- const offset = Math.min(originOffset, cols);
7
+ const originSpan = props.span ?? 1
8
+ const originOffset = props.offset ?? 0
9
+ const offset = Math.min(originOffset, cols)
10
10
  const span = Math.min(
11
11
  offset > 0 ? originSpan + originOffset : originSpan,
12
12
  cols
13
- );
13
+ )
14
14
  return {
15
15
  span,
16
16
  offset,
17
17
  suffix: 'suffix' in props ? props.suffix !== false : false
18
- };
18
+ }
19
19
  }
20
20
 
21
21
  export function setItemVisible({
@@ -24,50 +24,50 @@ export function setItemVisible({
24
24
  collapsedRows,
25
25
  itemDataList
26
26
  }: {
27
- cols: number;
28
- collapsed: boolean;
29
- collapsedRows: number;
30
- itemDataList: GridItemData[];
27
+ cols: number
28
+ collapsed: boolean
29
+ collapsedRows: number
30
+ itemDataList: GridItemData[]
31
31
  }) {
32
- let overflow = false;
33
- let displayIndexList: number[] = [];
32
+ let overflow = false
33
+ let displayIndexList: number[] = []
34
34
 
35
35
  function isOverflow(span: number) {
36
- return Math.ceil(span / cols) > collapsedRows;
36
+ return Math.ceil(span / cols) > collapsedRows
37
37
  }
38
38
 
39
39
  if (collapsed) {
40
- let spanSum = 0;
40
+ let spanSum = 0
41
41
  for (let i = 0; i < itemDataList.length; i++) {
42
42
  if (itemDataList[i].suffix) {
43
- spanSum += itemDataList[i].span;
44
- displayIndexList.push(i);
43
+ spanSum += itemDataList[i].span
44
+ displayIndexList.push(i)
45
45
  }
46
46
  }
47
47
  if (!isOverflow(spanSum)) {
48
- let current = 0;
48
+ let current = 0
49
49
  while (current < itemDataList.length) {
50
- const item = itemDataList[current];
50
+ const item = itemDataList[current]
51
51
  if (!item.suffix) {
52
- spanSum += item.span;
52
+ spanSum += item.span
53
53
 
54
54
  if (isOverflow(spanSum)) {
55
- break;
55
+ break
56
56
  }
57
- displayIndexList.push(current);
57
+ displayIndexList.push(current)
58
58
  }
59
- current++;
59
+ current++
60
60
  }
61
61
  }
62
62
  overflow = itemDataList.some(
63
63
  (item, index) => !item.suffix && !displayIndexList.includes(index)
64
- );
64
+ )
65
65
  } else {
66
- displayIndexList = itemDataList.map((_, index) => index);
66
+ displayIndexList = itemDataList.map((_, index) => index)
67
67
  }
68
68
 
69
69
  return {
70
70
  overflow,
71
71
  displayIndexList
72
- };
72
+ }
73
73
  }
@@ -1,7 +1,7 @@
1
- const opt = Object.prototype.toString;
1
+ const opt = Object.prototype.toString
2
2
 
3
3
  export function isObject(obj: unknown): obj is Record<string, any> {
4
- return opt.call(obj) === '[object Object]';
4
+ return opt.call(obj) === '[object Object]'
5
5
  }
6
6
 
7
7
  export function isNumber(obj: any): obj is number {
@@ -1,8 +1,8 @@
1
1
  // https://github.com/ant-design/ant-design/blob/master/components/_util/responsiveObserve.ts
2
2
 
3
- export type Breakpoint = 'xxl' | 'xl' | 'lg' | 'md' | 'sm' | 'xs';
4
- export type BreakpointMap = Partial<Record<Breakpoint, string>>;
5
- export type ScreenMap = Partial<Record<Breakpoint, boolean>>;
3
+ export type Breakpoint = 'xxl' | 'xl' | 'lg' | 'md' | 'sm' | 'xs'
4
+ export type BreakpointMap = Partial<Record<Breakpoint, string>>
5
+ export type ScreenMap = Partial<Record<Breakpoint, boolean>>
6
6
 
7
7
  export const responsiveArray: Breakpoint[] = [
8
8
  'xxl',
@@ -11,7 +11,7 @@ export const responsiveArray: Breakpoint[] = [
11
11
  'md',
12
12
  'sm',
13
13
  'xs'
14
- ];
14
+ ]
15
15
 
16
16
  export const responsiveMap: BreakpointMap = {
17
17
  xs: '(max-width: 575px)',
@@ -20,91 +20,91 @@ export const responsiveMap: BreakpointMap = {
20
20
  lg: '(min-width: 992px)',
21
21
  xl: '(min-width: 1200px)',
22
22
  xxl: '(min-width: 1600px)'
23
- };
23
+ }
24
24
 
25
25
  type SubscribeFunc = (
26
26
  screens: ScreenMap,
27
27
  breakpointChecked: Breakpoint
28
- ) => void;
28
+ ) => void
29
29
 
30
30
  interface MediaQueryResult {
31
- matches: boolean;
31
+ matches: boolean
32
32
  }
33
33
 
34
- type MediaQueryListener = (matches: MediaQueryResult) => void;
34
+ type MediaQueryListener = (matches: MediaQueryResult) => void
35
35
 
36
36
  let subscribers: Array<{
37
- token: string;
38
- func: SubscribeFunc;
39
- }> = [];
40
- let subUid = -1;
41
- let screens = {};
37
+ token: string
38
+ func: SubscribeFunc
39
+ }> = []
40
+ let subUid = -1
41
+ let screens = {}
42
42
 
43
43
  const responsiveObserve: {
44
44
  matchHandlers: {
45
45
  [key: string]: {
46
- mql: MediaQueryList;
47
- listener: MediaQueryListener;
48
- };
49
- };
50
- dispatch: (pointMap: ScreenMap, breakpointChecked: Breakpoint) => boolean;
51
- subscribe: (func: SubscribeFunc) => string;
52
- unsubscribe: (token: string) => void;
53
- unregister: () => void;
54
- register: () => void;
46
+ mql: MediaQueryList
47
+ listener: MediaQueryListener
48
+ }
49
+ }
50
+ dispatch: (pointMap: ScreenMap, breakpointChecked: Breakpoint) => boolean
51
+ subscribe: (func: SubscribeFunc) => string
52
+ unsubscribe: (token: string) => void
53
+ unregister: () => void
54
+ register: () => void
55
55
  } = {
56
56
  matchHandlers: {},
57
57
  dispatch(pointMap: ScreenMap, breakpointChecked: Breakpoint) {
58
- screens = pointMap;
58
+ screens = pointMap
59
59
  if (subscribers.length < 1) {
60
- return false;
60
+ return false
61
61
  }
62
62
 
63
- subscribers.forEach(item => {
64
- item.func(screens, breakpointChecked);
65
- });
63
+ subscribers.forEach((item) => {
64
+ item.func(screens, breakpointChecked)
65
+ })
66
66
 
67
- return true;
67
+ return true
68
68
  },
69
69
  subscribe(func: SubscribeFunc) {
70
70
  if (subscribers.length === 0) {
71
- this.register();
71
+ this.register()
72
72
  }
73
- const token = (++subUid).toString();
73
+ const token = (++subUid).toString()
74
74
  subscribers.push({
75
75
  token,
76
76
  func
77
- });
78
- func(screens, null as unknown as Breakpoint);
79
- return token;
77
+ })
78
+ func(screens, null as unknown as Breakpoint)
79
+ return token
80
80
  },
81
81
  unsubscribe(token: string) {
82
- subscribers = subscribers.filter(item => item.token !== token);
82
+ subscribers = subscribers.filter((item) => item.token !== token)
83
83
  if (subscribers.length === 0) {
84
- this.unregister();
84
+ this.unregister()
85
85
  }
86
86
  },
87
87
  unregister() {
88
88
  (Object.keys(responsiveMap) as Breakpoint[]).forEach(
89
89
  (screen: Breakpoint) => {
90
- const matchMediaQuery = responsiveMap[screen];
91
- if (!matchMediaQuery) return;
92
- const handler = this.matchHandlers[matchMediaQuery];
90
+ const matchMediaQuery = responsiveMap[screen]
91
+ if (!matchMediaQuery) return
92
+ const handler = this.matchHandlers[matchMediaQuery]
93
93
  if (handler && handler.mql && handler.listener) {
94
94
  if (handler.mql.removeEventListener) {
95
- handler.mql.removeEventListener('change', handler.listener);
95
+ handler.mql.removeEventListener('change', handler.listener)
96
96
  } else {
97
- handler.mql.removeListener(handler.listener);
97
+ handler.mql.removeListener(handler.listener)
98
98
  }
99
99
  }
100
100
  }
101
- );
101
+ )
102
102
  },
103
103
  register() {
104
104
  (Object.keys(responsiveMap) as Breakpoint[]).forEach(
105
105
  (screen: Breakpoint) => {
106
- const matchMediaQuery = responsiveMap[screen];
107
- if (!matchMediaQuery) return;
106
+ const matchMediaQuery = responsiveMap[screen]
107
+ if (!matchMediaQuery) return
108
108
  const listener = ({ matches }: MediaQueryResult) => {
109
109
  this.dispatch(
110
110
  {
@@ -112,24 +112,24 @@ const responsiveObserve: {
112
112
  [screen]: matches
113
113
  },
114
114
  screen
115
- );
116
- };
117
- const mql = window.matchMedia(matchMediaQuery);
115
+ )
116
+ }
117
+ const mql = window.matchMedia(matchMediaQuery)
118
118
  if (mql.addEventListener) {
119
- mql.addEventListener('change', listener);
119
+ mql.addEventListener('change', listener)
120
120
  } else {
121
- mql.addListener(listener);
121
+ mql.addListener(listener)
122
122
  }
123
123
 
124
124
  this.matchHandlers[matchMediaQuery] = {
125
125
  mql,
126
126
  listener
127
- };
127
+ }
128
128
 
129
- listener(mql);
129
+ listener(mql)
130
130
  }
131
- );
131
+ )
132
132
  }
133
- };
133
+ }
134
134
 
135
- export default responsiveObserve;
135
+ export default responsiveObserve
@@ -1,5 +1,5 @@
1
- import InputGroup from './src/input-group.vue';
1
+ import InputGroup from './src/input-group.vue'
2
2
 
3
- export type InputGroupInstance = InstanceType<typeof InputGroup>;
4
- export * from './src/type';
5
- export default InputGroup;
3
+ export type InputGroupInstance = InstanceType<typeof InputGroup>
4
+ export * from './src/type'
5
+ export default InputGroup
@@ -5,9 +5,9 @@
5
5
  </template>
6
6
 
7
7
  <script lang="ts" setup>
8
- import { useBemClass } from '../../../hooks';
8
+ import { useBemClass } from '../../../hooks'
9
9
 
10
- const { b } = useBemClass();
10
+ const { b } = useBemClass()
11
11
  </script>
12
12
 
13
13
  <style lang="scss" scoped>
@@ -1,5 +1,5 @@
1
- import InputSearch from './src/input-search.vue';
1
+ import InputSearch from './src/input-search.vue'
2
2
 
3
- export type InputSearchInstance = InstanceType<typeof InputSearch>;
4
- export * from './src/type';
5
- export default InputSearch;
3
+ export type InputSearchInstance = InstanceType<typeof InputSearch>
4
+ export * from './src/type'
5
+ export default InputSearch
@@ -23,35 +23,35 @@
23
23
  </template>
24
24
 
25
25
  <script setup lang="ts">
26
- import type { InputSearchProps } from './type';
27
- import { Close, Search } from '@element-plus/icons-vue';
28
- import { computed } from 'vue';
29
- import { useBemClass } from '../../../hooks';
30
- import InputGroup from '../../input-group/src/input-group.vue';
26
+ import type { InputSearchProps } from './type'
27
+ import { Close, Search } from '@element-plus/icons-vue'
28
+ import { computed } from 'vue'
29
+ import { useBemClass } from '../../../hooks'
30
+ import InputGroup from '../../input-group/src/input-group.vue'
31
31
 
32
- const model = defineModel({ type: String });
32
+ const model = defineModel({ type: String })
33
33
 
34
34
  const props = withDefaults(defineProps<InputSearchProps>(), {
35
35
  disabled: false,
36
36
  readonly: false,
37
37
  placeholder: '请选择',
38
38
  disabledHideButton: false
39
- });
39
+ })
40
40
 
41
41
  const emit = defineEmits<{
42
- (e: 'search'): void;
43
- (e: 'clear'): void;
44
- }>();
42
+ (e: 'search'): void
43
+ (e: 'clear'): void
44
+ }>()
45
45
 
46
- const { b } = useBemClass();
46
+ const { b } = useBemClass()
47
47
 
48
48
  const showButton = computed(() => {
49
- if (props.readonly) return false;
49
+ if (props.readonly) return false
50
50
  if (props.disabled) {
51
- return !props.disabledHideButton;
51
+ return !props.disabledHideButton
52
52
  }
53
- return true;
54
- });
53
+ return true
54
+ })
55
55
  </script>
56
56
 
57
57
  <style lang="scss" scoped>
@@ -1,6 +1,6 @@
1
1
  export interface InputSearchProps {
2
- disabled?: boolean;
3
- readonly?: boolean;
4
- placeholder?: string;
5
- disabledHideButton?: boolean; // 禁用的时候隐藏按钮
2
+ disabled?: boolean
3
+ readonly?: boolean
4
+ placeholder?: string
5
+ disabledHideButton?: boolean // 禁用的时候隐藏按钮
6
6
  }
@@ -1,5 +1,5 @@
1
- import PageLayout from './src/page-layout.vue';
1
+ import PageLayout from './src/page-layout.vue'
2
2
 
3
- export type PageLayoutInstance = InstanceType<typeof PageLayout>;
4
- export * from './src/type';
5
- export default PageLayout;
3
+ export type PageLayoutInstance = InstanceType<typeof PageLayout>
4
+ export * from './src/type'
5
+ export default PageLayout