im-ui-mobile 0.0.44 → 0.0.46
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/package.json +3 -2
- package/theme.scss +158 -0
- package/types/components/loading.d.ts +20 -0
- package/types/components.d.ts +18 -0
- package/types/components/im-loading.d.ts +0 -20
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "im-ui-mobile",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.46",
|
|
4
4
|
"description": "A Vue3.0 + typescript instant messaging component library for Uniapp",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "index.js",
|
|
@@ -11,7 +11,8 @@
|
|
|
11
11
|
"types",
|
|
12
12
|
"utils",
|
|
13
13
|
"plugins",
|
|
14
|
-
"index.js"
|
|
14
|
+
"index.js",
|
|
15
|
+
"theme.scss"
|
|
15
16
|
],
|
|
16
17
|
"scripts": {
|
|
17
18
|
"wx": "cd examples && npm run dev:mp-weixin",
|
package/theme.scss
ADDED
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
// 颜色
|
|
2
|
+
$im-color-primary: #3e45d7;
|
|
3
|
+
$im-color-primary-light-1: mix(#fff, $im-color-primary, 10%);
|
|
4
|
+
$im-color-primary-light-2: mix(#fff, $im-color-primary, 20%);
|
|
5
|
+
$im-color-primary-light-3: mix(#fff, $im-color-primary, 30%);
|
|
6
|
+
$im-color-primary-light-4: mix(#fff, $im-color-primary, 40%);
|
|
7
|
+
$im-color-primary-light-5: mix(#fff, $im-color-primary, 50%);
|
|
8
|
+
$im-color-primary-light-6: mix(#fff, $im-color-primary, 60%);
|
|
9
|
+
$im-color-primary-light-7: mix(#fff, $im-color-primary, 70%);
|
|
10
|
+
$im-color-primary-light-8: mix(#fff, $im-color-primary, 80%);
|
|
11
|
+
$im-color-primary-light-9: mix(#fff, $im-color-primary, 90%);
|
|
12
|
+
$im-color-primary-dark-1: mix(#000, $im-color-primary, 10%);
|
|
13
|
+
$im-color-primary-dark-2: mix(#000, $im-color-primary, 20%);
|
|
14
|
+
$im-color-primary-dark-3: mix(#000, $im-color-primary, 30%);
|
|
15
|
+
$im-color-primary-dark-4: mix(#000, $im-color-primary, 40%);
|
|
16
|
+
|
|
17
|
+
$im-color-success: #18bc37;
|
|
18
|
+
$im-color-warning: #f3a73f;
|
|
19
|
+
$im-color-danger: #e43d33;
|
|
20
|
+
$im-color-info: #8f939c;
|
|
21
|
+
|
|
22
|
+
// 文字颜色
|
|
23
|
+
$im-text-color: #000000;
|
|
24
|
+
$im-text-color-light: #6a6a6a;
|
|
25
|
+
$im-text-color-lighter: #909399;
|
|
26
|
+
$im-text-color-lighter-extra: #c7c7c7;
|
|
27
|
+
|
|
28
|
+
// 边框颜色
|
|
29
|
+
$im-border: #F0F0F0;
|
|
30
|
+
$im-border-light: #EDEDED;
|
|
31
|
+
$im-border-lighter: #DCDCDC;
|
|
32
|
+
$im-border-lighter-extra: #B9B9B9;
|
|
33
|
+
|
|
34
|
+
// 文字大小
|
|
35
|
+
$im-font-size: 30rpx;
|
|
36
|
+
$im-font-size-small: 28rpx;
|
|
37
|
+
$im-font-size-smaller: 26rpx;
|
|
38
|
+
$im-font-size-smaller-extra: 24rpx;
|
|
39
|
+
$im-font-size-large: 32rpx;
|
|
40
|
+
$im-font-size-larger: 34rpx;
|
|
41
|
+
$im-font-size-larger-extra: 36rpx;
|
|
42
|
+
|
|
43
|
+
// 阴影
|
|
44
|
+
$im-box-shadow: 0 2px 4px rgba(0, 0, 0, .12), 0 0 6px rgba(0, 0, 0, .04);
|
|
45
|
+
$im-box-shadow-light: 0 2px 12px 0 rgba(0, 0, 0, 0.1);
|
|
46
|
+
$im-box-shadow-lighter: 0px 0px 6px rgba(0, 0, 0, .12);
|
|
47
|
+
$im-box-shadow-dark: 0px 1px 10px 2px rgba($color: #a5a4a4, $alpha: 0.5);
|
|
48
|
+
|
|
49
|
+
// 背景
|
|
50
|
+
$im-bg: #f8f9ff;
|
|
51
|
+
$im-bg-linear: linear-gradient(135deg, #f8f9ff 0%, #ffffff 100%);
|
|
52
|
+
$im-bg-active: #f7f8fc;
|
|
53
|
+
$im-bg-active-dark: $im-color-primary-light-9;
|
|
54
|
+
$im-bg-input: #fafafa;
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
// 标题
|
|
58
|
+
$im-title-size: 26px;
|
|
59
|
+
$im-title-size-1: 22px;
|
|
60
|
+
$im-title-size-2: 18px;
|
|
61
|
+
|
|
62
|
+
// $font-family: Helvetica Neue, Helvetica, PingFang SC, Hiragino Sans GB, Microsoft YaHei, SimSun, sans-serif;
|
|
63
|
+
|
|
64
|
+
$im-nav-bar-height: 50px;
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
// // #ifdef MP-WEIXIN
|
|
68
|
+
// // wx小程序只有button,没有uni-botton
|
|
69
|
+
// button {
|
|
70
|
+
// font-size: $im-font-size !important;
|
|
71
|
+
// }
|
|
72
|
+
|
|
73
|
+
// button[type='primary'] {
|
|
74
|
+
// color: #fff !important;
|
|
75
|
+
// background: linear-gradient(135deg, $im-color-primary, lighten($im-color-primary, 15%)) !important;
|
|
76
|
+
// }
|
|
77
|
+
|
|
78
|
+
// button[type='primary'][plain] {
|
|
79
|
+
// color: $im-color-primary !important;
|
|
80
|
+
// border: 2px solid $im-color-primary;
|
|
81
|
+
// background: transparent;
|
|
82
|
+
// }
|
|
83
|
+
|
|
84
|
+
// button[type='warn'] {
|
|
85
|
+
// color: #fff !important;
|
|
86
|
+
// background: linear-gradient(135deg, $im-color-danger, lighten($im-color-danger, 15%)) !important;
|
|
87
|
+
// }
|
|
88
|
+
|
|
89
|
+
// button[type='warn'][plain] {
|
|
90
|
+
// color: $im-color-danger !important;
|
|
91
|
+
// border: 1px solid $im-color-danger !important;
|
|
92
|
+
// background: transparent !important;
|
|
93
|
+
// }
|
|
94
|
+
|
|
95
|
+
// button[size='mini'] {
|
|
96
|
+
// font-size: $im-font-size-smaller !important;
|
|
97
|
+
// }
|
|
98
|
+
|
|
99
|
+
// // #endif
|
|
100
|
+
|
|
101
|
+
// .button-hover[type='primary'] {
|
|
102
|
+
// color: #fff !important;
|
|
103
|
+
// background-color: $im-color-primary-dark-1 !important;
|
|
104
|
+
// }
|
|
105
|
+
|
|
106
|
+
// .nav-bar {
|
|
107
|
+
// height: 100rpx;
|
|
108
|
+
// padding: 0 20rpx;
|
|
109
|
+
// display: flex;
|
|
110
|
+
// align-items: center;
|
|
111
|
+
// border-bottom: 1rpx solid $im-border;
|
|
112
|
+
|
|
113
|
+
// .nav-search {
|
|
114
|
+
// flex: 1;
|
|
115
|
+
// }
|
|
116
|
+
|
|
117
|
+
// .nav-add {
|
|
118
|
+
// cursor: pointer;
|
|
119
|
+
// }
|
|
120
|
+
// }
|
|
121
|
+
|
|
122
|
+
|
|
123
|
+
// .bottom-btn {
|
|
124
|
+
// margin: 40rpx 40rpx;
|
|
125
|
+
// }
|
|
126
|
+
|
|
127
|
+
// .emoji-large {
|
|
128
|
+
// width: 64rpx !important;
|
|
129
|
+
// height: 64rpx !important;
|
|
130
|
+
// vertical-align: bottom !important;
|
|
131
|
+
// }
|
|
132
|
+
|
|
133
|
+
// .emoji-normal {
|
|
134
|
+
// width: 54rpx !important;
|
|
135
|
+
// height: 54rpx !important;
|
|
136
|
+
// vertical-align: bottom !important;
|
|
137
|
+
// }
|
|
138
|
+
|
|
139
|
+
// .emoji-small {
|
|
140
|
+
// width: 36rpx !important;
|
|
141
|
+
// height: 36rpx !important;
|
|
142
|
+
// vertical-align: bottom !important;
|
|
143
|
+
// }
|
|
144
|
+
|
|
145
|
+
// .none-pointer-events {
|
|
146
|
+
// uni-image img {
|
|
147
|
+
// // 阻止微信默认长按菜单
|
|
148
|
+
// pointer-events: none;
|
|
149
|
+
// -webkit-pointer-events: none;
|
|
150
|
+
// -ms-pointer-events: none;
|
|
151
|
+
// -moz-pointer-events: none;
|
|
152
|
+
// }
|
|
153
|
+
// }
|
|
154
|
+
|
|
155
|
+
// p {
|
|
156
|
+
// margin-block-start: 1em;
|
|
157
|
+
// margin-block-end: 1em;
|
|
158
|
+
// }
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { AllowedComponentProps, VNodeProps } from './_common'
|
|
2
|
+
|
|
3
|
+
declare interface LoadingProps {
|
|
4
|
+
size?: number
|
|
5
|
+
iconColor?: string
|
|
6
|
+
mask?: boolean
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
declare interface LoadingSlots {
|
|
10
|
+
default?: () => any
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
declare interface _Loading {
|
|
14
|
+
new(): {
|
|
15
|
+
$props: AllowedComponentProps & VNodeProps & LoadingProps
|
|
16
|
+
$slots: LoadingSlots
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
export declare const Loading: _Loading
|
package/types/components.d.ts
CHANGED
|
@@ -1,6 +1,24 @@
|
|
|
1
1
|
declare module 'vue' {
|
|
2
2
|
export interface GlobalComponents {
|
|
3
|
+
['im-arrow-bar']: typeof import('./components/arrow-bar')['ArrowBar']
|
|
4
|
+
['im-bar-group']: typeof import('./components/bar-group')['BarGroup']
|
|
5
|
+
['im-btn-bar']: typeof import('./components/btn-bar')['BtnBar']
|
|
6
|
+
['im-chat-at-box']: typeof import('./components/chat-at-box')['ChatAtBox']
|
|
7
|
+
['im-chat-group-readed']: typeof import('./components/chat-group-readed')['ChatGroupReaded']
|
|
8
|
+
['im-chat-item']: typeof import('./components/chat-item')['ChatItem']
|
|
9
|
+
['im-chat-message-item']: typeof import('./components/chat-message-item')['ChatMessageItem']
|
|
10
|
+
['im-chat-record']: typeof import('./components/chat-record')['ChatRecord']
|
|
11
|
+
['im-chat-upload']: typeof import('./components/chat-upload')['ChatUpload']
|
|
12
|
+
['im-friend-item']: typeof import('./components/friend-item')['FriendItem']
|
|
13
|
+
['im-group-item']: typeof import('./components/group-item')['GroupItem']
|
|
14
|
+
['im-group-member-selector']: typeof import('./components/group-member-selector')['GroupMemberSelector']
|
|
15
|
+
['im-group-rtc-join']: typeof import('./components/group-rtc-join')['GroupRtcJoin']
|
|
16
|
+
['im-head-image']: typeof import('./components/head-image')['HeadImage']
|
|
17
|
+
['im-loading']: typeof import('./components/loading')['Loading']
|
|
18
|
+
['im-long-press-menu']: typeof import('./components/long-press-menu')['LongPressMenu']
|
|
3
19
|
['im-sample']: typeof import('./components/sample')['Sample']
|
|
20
|
+
['im-switch-bar']: typeof import('./components/switch-bar')['SwitchBar']
|
|
21
|
+
['im-virtual-scroller']: typeof import('./components/virtual-scroller')['VirtualScroller']
|
|
4
22
|
}
|
|
5
23
|
}
|
|
6
24
|
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { AllowedComponentProps, VNodeProps } from './_common'
|
|
2
|
-
|
|
3
|
-
declare interface ImLoadingProps {
|
|
4
|
-
size?: number
|
|
5
|
-
iconColor?: string
|
|
6
|
-
mask?: boolean
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
declare interface ImLoadingSlots {
|
|
10
|
-
default?: () => any
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
declare interface _ImLoading {
|
|
14
|
-
new(): {
|
|
15
|
-
$props: AllowedComponentProps & VNodeProps & ImLoadingProps
|
|
16
|
-
$slots: ImLoadingSlots
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
export declare const ImLoading: _ImLoading
|