shujie-ui 0.1.0 → 0.1.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.
- package/README.md +161 -132
- package/dist/shujie-ui.css +1 -1
- package/dist/shujie-ui.es.js +8 -8
- package/dist/shujie-ui.umd.js +1 -1
- package/easycom.json +8 -0
- package/package.json +98 -95
- package/src/components/sj-badge/index.ts +10 -0
- package/src/components/sj-badge/sj-badge.vue +132 -0
- package/src/components/sj-badge/types.ts +17 -0
- package/src/components/sj-button/index.ts +10 -0
- package/src/components/sj-button/sj-button.vue +267 -0
- package/src/components/sj-button/types.ts +37 -0
- package/src/components/sj-cell/index.ts +10 -0
- package/src/components/sj-cell/sj-cell.vue +170 -0
- package/src/components/sj-cell/types.ts +30 -0
- package/src/components/sj-divider/index.ts +10 -0
- package/src/components/sj-divider/sj-divider.vue +140 -0
- package/src/components/sj-divider/types.ts +16 -0
- package/src/components/sj-icon/iconfont.scss +36 -0
- package/src/components/sj-icon/index.ts +10 -0
- package/src/components/sj-icon/sj-icon.vue +51 -0
- package/src/components/sj-icon/types.ts +14 -0
- package/src/components/sj-loading/index.ts +10 -0
- package/src/components/sj-loading/sj-loading.vue +133 -0
- package/src/components/sj-loading/types.ts +20 -0
- package/src/components/sj-space/index.ts +10 -0
- package/src/components/sj-space/sj-space.vue +67 -0
- package/src/components/sj-space/types.ts +14 -0
- package/src/components/sj-tag/index.ts +10 -0
- package/src/components/sj-tag/sj-tag.vue +179 -0
- package/src/components/sj-tag/types.ts +16 -0
- package/src/env.d.ts +7 -0
- package/src/hooks/index.ts +3 -0
- package/src/hooks/useLoading.ts +30 -0
- package/src/hooks/useScroll.ts +42 -0
- package/src/hooks/useVisible.ts +22 -0
- package/src/index.ts +59 -0
- package/src/styles/index.scss +7 -0
- package/src/styles/mixins.scss +161 -0
- package/src/styles/prelude.scss +3 -0
- package/src/styles/reset.scss +33 -0
- package/src/styles/variables.scss +128 -0
- package/src/utils/format.ts +119 -0
- package/src/utils/index.ts +3 -0
- package/src/utils/platform.ts +63 -0
- package/src/utils/validate.ts +37 -0
package/README.md
CHANGED
|
@@ -1,132 +1,161 @@
|
|
|
1
|
-
# shujie-ui
|
|
2
|
-
|
|
3
|
-
一个基于 Vue 3 + TypeScript 的 UniApp 组件库,兼容小程序、H5、App。
|
|
4
|
-
|
|
5
|
-
## 特性
|
|
6
|
-
|
|
7
|
-
- Vue 3 + TypeScript + Composition API
|
|
8
|
-
- SCSS 设计系统(色彩/排版/间距/圆角/阴影)
|
|
9
|
-
- 全平台兼容(微信/支付宝/百度/字节/QQ 小程序 + H5 + App)
|
|
10
|
-
- 按需引入(easycom 自动注册)
|
|
11
|
-
- 单元测试覆盖
|
|
12
|
-
- VitePress 文档站
|
|
13
|
-
|
|
14
|
-
## 安装
|
|
15
|
-
|
|
16
|
-
```bash
|
|
17
|
-
npm install shujie-ui
|
|
18
|
-
```
|
|
19
|
-
|
|
20
|
-
## 快速上手
|
|
21
|
-
|
|
22
|
-
###
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
import {
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
```
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
```
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
1
|
+
# shujie-ui
|
|
2
|
+
|
|
3
|
+
一个基于 Vue 3 + TypeScript 的 UniApp 组件库,兼容小程序、H5、App。
|
|
4
|
+
|
|
5
|
+
## 特性
|
|
6
|
+
|
|
7
|
+
- Vue 3 + TypeScript + Composition API
|
|
8
|
+
- SCSS 设计系统(色彩/排版/间距/圆角/阴影)
|
|
9
|
+
- 全平台兼容(微信/支付宝/百度/字节/QQ 小程序 + H5 + App)
|
|
10
|
+
- 按需引入(easycom 自动注册)
|
|
11
|
+
- 单元测试覆盖
|
|
12
|
+
- VitePress 文档站
|
|
13
|
+
|
|
14
|
+
## 安装
|
|
15
|
+
|
|
16
|
+
```bash
|
|
17
|
+
npm install shujie-ui
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
## 快速上手
|
|
21
|
+
|
|
22
|
+
### 平台说明(必读)
|
|
23
|
+
|
|
24
|
+
| 场景 | 推荐方式 | 说明 |
|
|
25
|
+
|------|----------|------|
|
|
26
|
+
| **uni-app 小程序**(微信/支付宝等) | **easycom + 包内 `src/**/*.vue`** | 预打包的 `dist/*.es.js` 依赖标准 Vue 运行时辅助函数,与 `@dcloudio/uni-mp-vue` 不兼容,**请勿**在小程序里 `import SjUI from 'shujie-ui'` + `app.use`。 |
|
|
27
|
+
| **H5 / App、或仅工具函数** | `app.use(SjUI)` + `dist/shujie-ui.css`,或按需 `import { SjButton } from 'shujie-ui'` | 使用 npm 中的 **`dist`** 即可。 |
|
|
28
|
+
|
|
29
|
+
自 **v0.1.1** 起,发布包包含 **`src`**(组件源码、样式、utils、hooks),小程序请按下方 **easycom** 使用。
|
|
30
|
+
|
|
31
|
+
### 1. uni-app:easycom(小程序推荐)
|
|
32
|
+
|
|
33
|
+
将仓库根目录 **`easycom.json`** 中与 `pages.json` 同级的 `easycom` 段合并到你的 **`pages.json`**(或按下面手写):
|
|
34
|
+
|
|
35
|
+
```json
|
|
36
|
+
{
|
|
37
|
+
"easycom": {
|
|
38
|
+
"autoscan": true,
|
|
39
|
+
"custom": {
|
|
40
|
+
"^sj-(.*)": "shujie-ui/src/components/sj-$1/sj-$1.vue"
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
组件 SFC 已内置 `@import` 设计变量与 mixin,**宿主项目无需**再为 `shujie-ui` 配置 Vite `additionalData`。
|
|
47
|
+
|
|
48
|
+
模板里直接使用(**`sj-` 前缀 + 短横线**):
|
|
49
|
+
|
|
50
|
+
```vue
|
|
51
|
+
<template>
|
|
52
|
+
<view class="page">
|
|
53
|
+
<sj-button type="primary">按钮</sj-button>
|
|
54
|
+
<sj-cell title="标题" value="内容" is-link />
|
|
55
|
+
</view>
|
|
56
|
+
</template>
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
可选:在入口再引一次聚合样式(与 SFC scoped 并存,用于 reset等):
|
|
60
|
+
|
|
61
|
+
```ts
|
|
62
|
+
import 'shujie-ui/dist/shujie-ui.css'
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
### 2. uni-app:按路径按需引入 `.vue`
|
|
66
|
+
|
|
67
|
+
```vue
|
|
68
|
+
<script setup lang="ts">
|
|
69
|
+
import SjButton from 'shujie-ui/src/components/sj-button/sj-button.vue'
|
|
70
|
+
</script>
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
### 3. H5 / 非小程序:全局引入 `dist`
|
|
74
|
+
|
|
75
|
+
组件样式集中在 **`dist/shujie-ui.css`**。在 **`main.ts`**:
|
|
76
|
+
|
|
77
|
+
```ts
|
|
78
|
+
import { createSSRApp } from 'vue'
|
|
79
|
+
import App from './App.vue'
|
|
80
|
+
import SjUI from 'shujie-ui'
|
|
81
|
+
import 'shujie-ui/dist/shujie-ui.css'
|
|
82
|
+
|
|
83
|
+
export function createApp() {
|
|
84
|
+
const app = createSSRApp(App)
|
|
85
|
+
app.use(SjUI)
|
|
86
|
+
return { app }
|
|
87
|
+
}
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
### 4. H5 / 非小程序:按需 `import` 命名导出
|
|
91
|
+
|
|
92
|
+
```ts
|
|
93
|
+
import 'shujie-ui/dist/shujie-ui.css'
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
```vue
|
|
97
|
+
<script setup lang="ts">
|
|
98
|
+
import { SjButton, SjCell } from 'shujie-ui'
|
|
99
|
+
</script>
|
|
100
|
+
|
|
101
|
+
<template>
|
|
102
|
+
<sj-button type="primary">按钮</sj-button>
|
|
103
|
+
<SjCell title="标题" value="内容" />
|
|
104
|
+
</template>
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
## 组件列表
|
|
108
|
+
|
|
109
|
+
| 组件 | 说明 |
|
|
110
|
+
|------|------|
|
|
111
|
+
| sj-button | 按钮,多种类型/尺寸/形状/状态 |
|
|
112
|
+
| sj-icon | 图标(iconfont,需自行替换字体资源) |
|
|
113
|
+
| sj-cell | 单元格列表项 |
|
|
114
|
+
| sj-loading | 加载指示 |
|
|
115
|
+
| sj-divider | 分隔线 |
|
|
116
|
+
| sj-tag | 标签 |
|
|
117
|
+
| sj-badge | 徽标 |
|
|
118
|
+
| sj-space | 间距布局 |
|
|
119
|
+
|
|
120
|
+
## 设计系统
|
|
121
|
+
|
|
122
|
+
### 主色
|
|
123
|
+
|
|
124
|
+
| 名称 | 色值 | 用途 |
|
|
125
|
+
|------|------|------|
|
|
126
|
+
| Primary | `#2979ff` | 品牌主色 |
|
|
127
|
+
| Success | `#19be6b` | 成功状态 |
|
|
128
|
+
| Warning | `#ff9900` | 警告提示 |
|
|
129
|
+
| Danger | `#fa3534` | 错误/危险 |
|
|
130
|
+
| Info | `#909399` | 次要信息 |
|
|
131
|
+
|
|
132
|
+
### 自定义主题
|
|
133
|
+
|
|
134
|
+
```scss
|
|
135
|
+
// 覆盖变量
|
|
136
|
+
$sj-primary: #1890ff;
|
|
137
|
+
|
|
138
|
+
// 然后引入样式
|
|
139
|
+
@import 'shujie-ui/src/styles/index.scss';
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
## 工具函数
|
|
143
|
+
|
|
144
|
+
```ts
|
|
145
|
+
import { addUnit, debounce, throttle, deepClone, isPhone, isEmail } from 'shujie-ui'
|
|
146
|
+
```
|
|
147
|
+
|
|
148
|
+
## Hooks
|
|
149
|
+
|
|
150
|
+
```ts
|
|
151
|
+
import { useVisible, useLoading, useScroll } from 'shujie-ui'
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
## 链接
|
|
155
|
+
|
|
156
|
+
- [npm 包](https://www.npmjs.com/package/shujie-ui)
|
|
157
|
+
- [Gitee 仓库](https://gitee.com/jia-shujie666/shujie-ui)
|
|
158
|
+
|
|
159
|
+
## License
|
|
160
|
+
|
|
161
|
+
MIT
|
package/dist/shujie-ui.css
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
.sj-button[data-v-d5bd5c39]{box-sizing:border-box;text-align:center;white-space:nowrap;appearance:none;cursor:pointer;border:none;outline:none;justify-content:center;align-items:center;margin:0;padding:0;font-weight:500;line-height:1;transition:all .3s cubic-bezier(.645,.045,.355,1);display:inline-flex}.sj-button--small[data-v-d5bd5c39]{height:56rpx;padding:0 24rpx;font-size:24rpx}.sj-button--medium[data-v-d5bd5c39]{height:72rpx;padding:0 32rpx;font-size:28rpx}.sj-button--large[data-v-d5bd5c39]{height:88rpx;padding:0 48rpx;font-size:32rpx}.sj-button--default[data-v-d5bd5c39]{color:#606266;border:1rpx solid #e4e7ed;background:#fff}.sj-button--primary[data-v-d5bd5c39]{color:#fff;background:#2979ff}.sj-button--success[data-v-d5bd5c39]{color:#fff;background:#19be6b}.sj-button--warning[data-v-d5bd5c39]{color:#fff;background:#f90}.sj-button--danger[data-v-d5bd5c39]{color:#fff;background:#fa3534}.sj-button--info[data-v-d5bd5c39]{color:#fff;background:#909399}.sj-button--square[data-v-d5bd5c39]{border-radius:8rpx}.sj-button--round[data-v-d5bd5c39]{border-radius:999rpx}.sj-button--circle[data-v-d5bd5c39]{border-radius:50%;padding:0}.sj-button--circle.sj-button--small[data-v-d5bd5c39]{width:56rpx}.sj-button--circle.sj-button--medium[data-v-d5bd5c39]{width:72rpx}.sj-button--circle.sj-button--large[data-v-d5bd5c39]{width:88rpx}.sj-button--plain[data-v-d5bd5c39]{background:0 0!important}.sj-button--plain.sj-button--primary[data-v-d5bd5c39]{color:#2979ff;border:1rpx solid #2979ff}.sj-button--plain.sj-button--success[data-v-d5bd5c39]{color:#19be6b;border:1rpx solid #19be6b}.sj-button--plain.sj-button--warning[data-v-d5bd5c39]{color:#f90;border:1rpx solid #f90}.sj-button--plain.sj-button--danger[data-v-d5bd5c39]{color:#fa3534;border:1rpx solid #fa3534}.sj-button--plain.sj-button--info[data-v-d5bd5c39]{color:#909399;border:1rpx solid #909399}.sj-button--hairline[data-v-d5bd5c39]{position:relative;border-width:0!important}.sj-button--hairline[data-v-d5bd5c39]:after{content:"";border-radius:inherit;border:1px solid inherit;pointer-events:none;transform-origin:0 0;position:absolute;inset:0;transform:scale(.5)}.sj-button--hairline.sj-button--default[data-v-d5bd5c39]:after{border-color:#e4e7ed}.sj-button--hairline.sj-button--primary[data-v-d5bd5c39]:after{border-color:#2979ff}.sj-button--hairline.sj-button--success[data-v-d5bd5c39]:after{border-color:#19be6b}.sj-button--hairline.sj-button--warning[data-v-d5bd5c39]:after{border-color:#f90}.sj-button--hairline.sj-button--danger[data-v-d5bd5c39]:after{border-color:#fa3534}.sj-button--hairline.sj-button--info[data-v-d5bd5c39]:after{border-color:#909399}.sj-button--disabled[data-v-d5bd5c39]{opacity:.5;cursor:not-allowed;pointer-events:none}.sj-button--loading[data-v-d5bd5c39]{cursor:default}.sj-button--block[data-v-d5bd5c39]{width:100%;display:flex}.sj-button--active[data-v-d5bd5c39]{opacity:.7}.sj-button__icon[data-v-d5bd5c39],.sj-button__loading[data-v-d5bd5c39]{margin-right:8rpx}.sj-button__loading-spinner[data-v-d5bd5c39]{width:32rpx;height:32rpx;border:4rpx solid currentColor;border-top-color:#0000;border-radius:50%;animation:.6s linear infinite sj-spin-d5bd5c39}.sj-button__text[data-v-d5bd5c39]{align-items:center;display:flex}@keyframes sj-spin-d5bd5c39{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.sj-cell[data-v-17f18255]{box-sizing:border-box;width:100%;padding:24rpx 32rpx;font-size:28rpx;background:#fff;align-items:center;line-height:1.5;display:flex;position:relative}.sj-cell[data-v-17f18255]:after{content:"";pointer-events:none;border-bottom:1rpx solid #e4e7ed;transform-origin:0 100%;position:absolute;bottom:0;left:0;right:0}.sj-cell--clickable[data-v-17f18255]{cursor:pointer}.sj-cell--clickable[data-v-17f18255]:active{background:#f2f3f5}.sj-cell--required[data-v-17f18255]:before{content:"*";left:16rpx;color:#fa3534;font-size:32rpx;position:absolute}.sj-cell--borderless[data-v-17f18255]:after{display:none}.sj-cell__left-icon[data-v-17f18255]{margin-right:16rpx;color:#909399}.sj-cell__title[data-v-17f18255]{flex:1;min-width:0}.sj-cell__title-text[data-v-17f18255]{color:#303133;font-size:28rpx}.sj-cell__label[data-v-17f18255]{margin-top:8rpx;color:#909399;font-size:24rpx;line-height:1.2;display:block}.sj-cell__value[data-v-17f18255]{text-align:right;flex:1;min-width:0;overflow:hidden}.sj-cell__value-text[data-v-17f18255]{color:#909399;font-size:28rpx;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sj-cell__value--alone[data-v-17f18255]{color:#303133;text-align:left}.sj-cell__right-icon[data-v-17f18255]{margin-left:8rpx;color:#c0c4cc;font-size:28rpx}.sj-loading[data-v-48c28ad3]{align-items:center;gap:16rpx;color:#909399;display:inline-flex}.sj-loading--vertical[data-v-48c28ad3]{gap:8rpx;flex-direction:column}.sj-loading__spinner[data-v-48c28ad3]{box-sizing:border-box;animation:.8s linear infinite sj-loading-rotate-48c28ad3;position:relative}.sj-loading__circular[data-v-48c28ad3]{width:100%;height:100%}.sj-loading__circular-ring[data-v-48c28ad3]{border:4rpx solid currentColor;box-sizing:border-box;border-top-color:#0000;border-radius:50%;width:100%;height:100%}.sj-loading__spinner-dot[data-v-48c28ad3]{opacity:0;background:currentColor;border-radius:50%;width:20%;height:20%;margin-left:-10%;position:absolute;top:0;left:50%}.sj-loading__spinner-dot[data-v-48c28ad3]:first-child{opacity:0;transform:rotate(0)}.sj-loading__spinner-dot[data-v-48c28ad3]:nth-child(2){opacity:.0833333;transform:rotate(30deg)}.sj-loading__spinner-dot[data-v-48c28ad3]:nth-child(3){opacity:.166667;transform:rotate(60deg)}.sj-loading__spinner-dot[data-v-48c28ad3]:nth-child(4){opacity:.25;transform:rotate(90deg)}.sj-loading__spinner-dot[data-v-48c28ad3]:nth-child(5){opacity:.333333;transform:rotate(120deg)}.sj-loading__spinner-dot[data-v-48c28ad3]:nth-child(6){opacity:.416667;transform:rotate(150deg)}.sj-loading__spinner-dot[data-v-48c28ad3]:nth-child(7){opacity:.5;transform:rotate(180deg)}.sj-loading__spinner-dot[data-v-48c28ad3]:nth-child(8){opacity:.583333;transform:rotate(210deg)}.sj-loading__spinner-dot[data-v-48c28ad3]:nth-child(9){opacity:.666667;transform:rotate(240deg)}.sj-loading__spinner-dot[data-v-48c28ad3]:nth-child(10){opacity:.75;transform:rotate(270deg)}.sj-loading__spinner-dot[data-v-48c28ad3]:nth-child(11){opacity:.833333;transform:rotate(300deg)}.sj-loading__spinner-dot[data-v-48c28ad3]:nth-child(12){opacity:.916667;transform:rotate(330deg)}.sj-loading__spinner--spinner[data-v-48c28ad3]{animation:none}.sj-loading__text[data-v-48c28ad3]{color:#909399;font-size:28rpx;line-height:1.5}@keyframes sj-loading-rotate-48c28ad3{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.sj-divider[data-v-4e98255f]{box-sizing:border-box}.sj-divider--horizontal[data-v-4e98255f]{width:100%;margin:24rpx 0;align-items:center;display:flex}.sj-divider--vertical[data-v-4e98255f]{width:1rpx;min-height:32rpx;margin:0 16rpx;vertical-align:middle;align-self:stretch;display:inline-flex}.sj-divider--dashed .sj-divider__line[data-v-4e98255f]{border-style:dashed}.sj-divider--hairline .sj-divider__line[data-v-4e98255f]{border-width:1rpx}.sj-divider__line[data-v-4e98255f]{box-sizing:border-box;border:0 solid #e4e7ed}.sj-divider__line--full[data-v-4e98255f]{border-top-width:1rpx;flex:1;width:100%}.sj-divider__line--left[data-v-4e98255f],.sj-divider__line--right[data-v-4e98255f]{border-top-width:1rpx;flex:1}.sj-divider__text[data-v-4e98255f]{padding:0 24rpx;flex-shrink:0;max-width:80%}.sj-divider__text-inner[data-v-4e98255f]{color:#909399;font-size:24rpx;line-height:1.2}.sj-divider--vertical .sj-divider__line--full[data-v-4e98255f]{width:1rpx;height:100%;min-height:inherit;border-top-width:0;border-left-width:1rpx;flex:1}.sj-tag[data-v-2c263ebd]{box-sizing:border-box;align-items:center;max-width:100%;font-weight:400;line-height:1;display:inline-flex;position:relative}.sj-tag--medium[data-v-2c263ebd]{padding:8rpx 16rpx;font-size:24rpx}.sj-tag--small[data-v-2c263ebd]{padding:4rpx 12rpx;font-size:20rpx}.sj-tag--round[data-v-2c263ebd]{border-radius:999rpx}.sj-tag[data-v-2c263ebd]:not(.sj-tag--round){border-radius:4rpx}.sj-tag__text[data-v-2c263ebd]{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.sj-tag__close[data-v-2c263ebd]{margin-left:4rpx;padding:0 2rpx;opacity:.75;justify-content:center;align-items:center;display:flex}.sj-tag__close-icon[data-v-2c263ebd]{font-size:1.2em;line-height:1}.sj-tag--default[data-v-2c263ebd]{color:#606266;background:#f3f4f6}.sj-tag--default.sj-tag--plain[data-v-2c263ebd]{color:#606266;border:1rpx solid #e4e7ed;background:0 0}.sj-tag--primary[data-v-2c263ebd]{color:#fff;background:#2979ff}.sj-tag--primary.sj-tag--plain[data-v-2c263ebd]{color:#2979ff;border:1rpx solid #70b1ff;background:#e8f0fe}.sj-tag--success[data-v-2c263ebd]{color:#fff;background:#19be6b}.sj-tag--success.sj-tag--plain[data-v-2c263ebd]{color:#19be6b;border:1rpx solid #8ce8b5;background:#e8f9f0}.sj-tag--warning[data-v-2c263ebd]{color:#fff;background:#f90}.sj-tag--warning.sj-tag--plain[data-v-2c263ebd]{color:#f90;border:1rpx solid #ffcb57;background:#fff4e0}.sj-tag--danger[data-v-2c263ebd]{color:#fff;background:#fa3534}.sj-tag--danger.sj-tag--plain[data-v-2c263ebd]{color:#fa3534;border:1rpx solid #ff8a8a;background:#fee8e8}.sj-tag--info[data-v-2c263ebd]{color:#fff;background:#909399}.sj-tag--info.sj-tag--plain[data-v-2c263ebd]{color:#909399;border:1rpx solid #c0c4cc;background:#f4f4f5}.sj-badge[data-v-77de098c]{vertical-align:middle;justify-content:center;align-items:center;display:inline-flex;position:relative}.sj-badge__content[data-v-77de098c]{z-index:1;box-sizing:border-box;min-width:32rpx;padding:0 8rpx;color:#fff;font-size:20rpx;font-weight:500;line-height:32rpx;text-align:center;border:2rpx solid #fff;border-radius:999rpx;transform-origin:50%;background:#fa3534;position:absolute}.sj-badge__content--dot[data-v-77de098c]{min-width:16rpx;width:16rpx;height:16rpx;border-radius:50%;padding:0}.sj-badge__content--top-right[data-v-77de098c]{top:0;right:0}.sj-badge__content--top-left[data-v-77de098c]{top:0;left:0}.sj-badge__content--bottom-right[data-v-77de098c]{bottom:0;right:0}.sj-badge__content--bottom-left[data-v-77de098c]{bottom:0;left:0}.sj-badge__text[data-v-77de098c]{display:block;transform:scale(.92)}.sj-space[data-v-ab457af8],view,text,scroll-view,swiper,input,textarea,button,image{box-sizing:border-box}button{line-height:inherit;font-size:inherit;background:0 0;border:none;outline:none;margin:0;padding:0}button:after{display:none}input,textarea{box-sizing:border-box}
|
|
1
|
+
.sj-button[data-v-330c439c]{box-sizing:border-box;text-align:center;white-space:nowrap;appearance:none;cursor:pointer;border:none;outline:none;justify-content:center;align-items:center;margin:0;padding:0;font-weight:500;line-height:1;transition:all .3s cubic-bezier(.645,.045,.355,1);display:inline-flex}.sj-button--small[data-v-330c439c]{height:56rpx;padding:0 24rpx;font-size:24rpx}.sj-button--medium[data-v-330c439c]{height:72rpx;padding:0 32rpx;font-size:28rpx}.sj-button--large[data-v-330c439c]{height:88rpx;padding:0 48rpx;font-size:32rpx}.sj-button--default[data-v-330c439c]{color:#606266;border:1rpx solid #e4e7ed;background:#fff}.sj-button--primary[data-v-330c439c]{color:#fff;background:#2979ff}.sj-button--success[data-v-330c439c]{color:#fff;background:#19be6b}.sj-button--warning[data-v-330c439c]{color:#fff;background:#f90}.sj-button--danger[data-v-330c439c]{color:#fff;background:#fa3534}.sj-button--info[data-v-330c439c]{color:#fff;background:#909399}.sj-button--square[data-v-330c439c]{border-radius:8rpx}.sj-button--round[data-v-330c439c]{border-radius:999rpx}.sj-button--circle[data-v-330c439c]{border-radius:50%;padding:0}.sj-button--circle.sj-button--small[data-v-330c439c]{width:56rpx}.sj-button--circle.sj-button--medium[data-v-330c439c]{width:72rpx}.sj-button--circle.sj-button--large[data-v-330c439c]{width:88rpx}.sj-button--plain[data-v-330c439c]{background:0 0!important}.sj-button--plain.sj-button--primary[data-v-330c439c]{color:#2979ff;border:1rpx solid #2979ff}.sj-button--plain.sj-button--success[data-v-330c439c]{color:#19be6b;border:1rpx solid #19be6b}.sj-button--plain.sj-button--warning[data-v-330c439c]{color:#f90;border:1rpx solid #f90}.sj-button--plain.sj-button--danger[data-v-330c439c]{color:#fa3534;border:1rpx solid #fa3534}.sj-button--plain.sj-button--info[data-v-330c439c]{color:#909399;border:1rpx solid #909399}.sj-button--hairline[data-v-330c439c]{position:relative;border-width:0!important}.sj-button--hairline[data-v-330c439c]:after{content:"";border-radius:inherit;border:1px solid inherit;pointer-events:none;transform-origin:0 0;position:absolute;inset:0;transform:scale(.5)}.sj-button--hairline.sj-button--default[data-v-330c439c]:after{border-color:#e4e7ed}.sj-button--hairline.sj-button--primary[data-v-330c439c]:after{border-color:#2979ff}.sj-button--hairline.sj-button--success[data-v-330c439c]:after{border-color:#19be6b}.sj-button--hairline.sj-button--warning[data-v-330c439c]:after{border-color:#f90}.sj-button--hairline.sj-button--danger[data-v-330c439c]:after{border-color:#fa3534}.sj-button--hairline.sj-button--info[data-v-330c439c]:after{border-color:#909399}.sj-button--disabled[data-v-330c439c]{opacity:.5;cursor:not-allowed;pointer-events:none}.sj-button--loading[data-v-330c439c]{cursor:default}.sj-button--block[data-v-330c439c]{width:100%;display:flex}.sj-button--active[data-v-330c439c]{opacity:.7}.sj-button__icon[data-v-330c439c],.sj-button__loading[data-v-330c439c]{margin-right:8rpx}.sj-button__loading-spinner[data-v-330c439c]{width:32rpx;height:32rpx;border:4rpx solid currentColor;border-top-color:#0000;border-radius:50%;animation:.6s linear infinite sj-spin-330c439c}.sj-button__text[data-v-330c439c]{align-items:center;display:flex}@keyframes sj-spin-330c439c{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.sj-cell[data-v-e1850ef0]{box-sizing:border-box;width:100%;padding:24rpx 32rpx;font-size:28rpx;background:#fff;align-items:center;line-height:1.5;display:flex;position:relative}.sj-cell[data-v-e1850ef0]:after{content:"";pointer-events:none;border-bottom:1rpx solid #e4e7ed;transform-origin:0 100%;position:absolute;bottom:0;left:0;right:0}.sj-cell--clickable[data-v-e1850ef0]{cursor:pointer}.sj-cell--clickable[data-v-e1850ef0]:active{background:#f2f3f5}.sj-cell--required[data-v-e1850ef0]:before{content:"*";left:16rpx;color:#fa3534;font-size:32rpx;position:absolute}.sj-cell--borderless[data-v-e1850ef0]:after{display:none}.sj-cell__left-icon[data-v-e1850ef0]{margin-right:16rpx;color:#909399}.sj-cell__title[data-v-e1850ef0]{flex:1;min-width:0}.sj-cell__title-text[data-v-e1850ef0]{color:#303133;font-size:28rpx}.sj-cell__label[data-v-e1850ef0]{margin-top:8rpx;color:#909399;font-size:24rpx;line-height:1.2;display:block}.sj-cell__value[data-v-e1850ef0]{text-align:right;flex:1;min-width:0;overflow:hidden}.sj-cell__value-text[data-v-e1850ef0]{color:#909399;font-size:28rpx;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sj-cell__value--alone[data-v-e1850ef0]{color:#303133;text-align:left}.sj-cell__right-icon[data-v-e1850ef0]{margin-left:8rpx;color:#c0c4cc;font-size:28rpx}.sj-loading[data-v-e04c0de9]{align-items:center;gap:16rpx;color:#909399;display:inline-flex}.sj-loading--vertical[data-v-e04c0de9]{gap:8rpx;flex-direction:column}.sj-loading__spinner[data-v-e04c0de9]{box-sizing:border-box;animation:.8s linear infinite sj-loading-rotate-e04c0de9;position:relative}.sj-loading__circular[data-v-e04c0de9]{width:100%;height:100%}.sj-loading__circular-ring[data-v-e04c0de9]{border:4rpx solid currentColor;box-sizing:border-box;border-top-color:#0000;border-radius:50%;width:100%;height:100%}.sj-loading__spinner-dot[data-v-e04c0de9]{opacity:0;background:currentColor;border-radius:50%;width:20%;height:20%;margin-left:-10%;position:absolute;top:0;left:50%}.sj-loading__spinner-dot[data-v-e04c0de9]:first-child{opacity:0;transform:rotate(0)}.sj-loading__spinner-dot[data-v-e04c0de9]:nth-child(2){opacity:.0833333;transform:rotate(30deg)}.sj-loading__spinner-dot[data-v-e04c0de9]:nth-child(3){opacity:.166667;transform:rotate(60deg)}.sj-loading__spinner-dot[data-v-e04c0de9]:nth-child(4){opacity:.25;transform:rotate(90deg)}.sj-loading__spinner-dot[data-v-e04c0de9]:nth-child(5){opacity:.333333;transform:rotate(120deg)}.sj-loading__spinner-dot[data-v-e04c0de9]:nth-child(6){opacity:.416667;transform:rotate(150deg)}.sj-loading__spinner-dot[data-v-e04c0de9]:nth-child(7){opacity:.5;transform:rotate(180deg)}.sj-loading__spinner-dot[data-v-e04c0de9]:nth-child(8){opacity:.583333;transform:rotate(210deg)}.sj-loading__spinner-dot[data-v-e04c0de9]:nth-child(9){opacity:.666667;transform:rotate(240deg)}.sj-loading__spinner-dot[data-v-e04c0de9]:nth-child(10){opacity:.75;transform:rotate(270deg)}.sj-loading__spinner-dot[data-v-e04c0de9]:nth-child(11){opacity:.833333;transform:rotate(300deg)}.sj-loading__spinner-dot[data-v-e04c0de9]:nth-child(12){opacity:.916667;transform:rotate(330deg)}.sj-loading__spinner--spinner[data-v-e04c0de9]{animation:none}.sj-loading__text[data-v-e04c0de9]{color:#909399;font-size:28rpx;line-height:1.5}@keyframes sj-loading-rotate-e04c0de9{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.sj-divider[data-v-5ed68b48]{box-sizing:border-box}.sj-divider--horizontal[data-v-5ed68b48]{width:100%;margin:24rpx 0;align-items:center;display:flex}.sj-divider--vertical[data-v-5ed68b48]{width:1rpx;min-height:32rpx;margin:0 16rpx;vertical-align:middle;align-self:stretch;display:inline-flex}.sj-divider--dashed .sj-divider__line[data-v-5ed68b48]{border-style:dashed}.sj-divider--hairline .sj-divider__line[data-v-5ed68b48]{border-width:1rpx}.sj-divider__line[data-v-5ed68b48]{box-sizing:border-box;border:0 solid #e4e7ed}.sj-divider__line--full[data-v-5ed68b48]{border-top-width:1rpx;flex:1;width:100%}.sj-divider__line--left[data-v-5ed68b48],.sj-divider__line--right[data-v-5ed68b48]{border-top-width:1rpx;flex:1}.sj-divider__text[data-v-5ed68b48]{padding:0 24rpx;flex-shrink:0;max-width:80%}.sj-divider__text-inner[data-v-5ed68b48]{color:#909399;font-size:24rpx;line-height:1.2}.sj-divider--vertical .sj-divider__line--full[data-v-5ed68b48]{width:1rpx;height:100%;min-height:inherit;border-top-width:0;border-left-width:1rpx;flex:1}.sj-tag[data-v-2d115ec9]{box-sizing:border-box;align-items:center;max-width:100%;font-weight:400;line-height:1;display:inline-flex;position:relative}.sj-tag--medium[data-v-2d115ec9]{padding:8rpx 16rpx;font-size:24rpx}.sj-tag--small[data-v-2d115ec9]{padding:4rpx 12rpx;font-size:20rpx}.sj-tag--round[data-v-2d115ec9]{border-radius:999rpx}.sj-tag[data-v-2d115ec9]:not(.sj-tag--round){border-radius:4rpx}.sj-tag__text[data-v-2d115ec9]{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.sj-tag__close[data-v-2d115ec9]{margin-left:4rpx;padding:0 2rpx;opacity:.75;justify-content:center;align-items:center;display:flex}.sj-tag__close-icon[data-v-2d115ec9]{font-size:1.2em;line-height:1}.sj-tag--default[data-v-2d115ec9]{color:#606266;background:#f3f4f6}.sj-tag--default.sj-tag--plain[data-v-2d115ec9]{color:#606266;border:1rpx solid #e4e7ed;background:0 0}.sj-tag--primary[data-v-2d115ec9]{color:#fff;background:#2979ff}.sj-tag--primary.sj-tag--plain[data-v-2d115ec9]{color:#2979ff;border:1rpx solid #70b1ff;background:#e8f0fe}.sj-tag--success[data-v-2d115ec9]{color:#fff;background:#19be6b}.sj-tag--success.sj-tag--plain[data-v-2d115ec9]{color:#19be6b;border:1rpx solid #8ce8b5;background:#e8f9f0}.sj-tag--warning[data-v-2d115ec9]{color:#fff;background:#f90}.sj-tag--warning.sj-tag--plain[data-v-2d115ec9]{color:#f90;border:1rpx solid #ffcb57;background:#fff4e0}.sj-tag--danger[data-v-2d115ec9]{color:#fff;background:#fa3534}.sj-tag--danger.sj-tag--plain[data-v-2d115ec9]{color:#fa3534;border:1rpx solid #ff8a8a;background:#fee8e8}.sj-tag--info[data-v-2d115ec9]{color:#fff;background:#909399}.sj-tag--info.sj-tag--plain[data-v-2d115ec9]{color:#909399;border:1rpx solid #c0c4cc;background:#f4f4f5}.sj-badge[data-v-3ca66be2]{vertical-align:middle;justify-content:center;align-items:center;display:inline-flex;position:relative}.sj-badge__content[data-v-3ca66be2]{z-index:1;box-sizing:border-box;min-width:32rpx;padding:0 8rpx;color:#fff;font-size:20rpx;font-weight:500;line-height:32rpx;text-align:center;border:2rpx solid #fff;border-radius:999rpx;transform-origin:50%;background:#fa3534;position:absolute}.sj-badge__content--dot[data-v-3ca66be2]{min-width:16rpx;width:16rpx;height:16rpx;border-radius:50%;padding:0}.sj-badge__content--top-right[data-v-3ca66be2]{top:0;right:0}.sj-badge__content--top-left[data-v-3ca66be2]{top:0;left:0}.sj-badge__content--bottom-right[data-v-3ca66be2]{bottom:0;right:0}.sj-badge__content--bottom-left[data-v-3ca66be2]{bottom:0;left:0}.sj-badge__text[data-v-3ca66be2]{display:block;transform:scale(.92)}.sj-space[data-v-1a734be2],view,text,scroll-view,swiper,input,textarea,button,image{box-sizing:border-box}button{line-height:inherit;font-size:inherit;background:0 0;border:none;outline:none;margin:0;padding:0}button:after{display:none}input,textarea{box-sizing:border-box}
|
|
2
2
|
/*$vite$:1*/
|
package/dist/shujie-ui.es.js
CHANGED
|
@@ -80,7 +80,7 @@ var E = /* @__PURE__ */ s({
|
|
|
80
80
|
let n = e.__vccOpts || e;
|
|
81
81
|
for (let [e, r] of t) n[e] = r;
|
|
82
82
|
return n;
|
|
83
|
-
}, O = /* @__PURE__ */ D(E, [["__scopeId", "data-v-
|
|
83
|
+
}, O = /* @__PURE__ */ D(E, [["__scopeId", "data-v-b9c3bb46"]]), k = [
|
|
84
84
|
"disabled",
|
|
85
85
|
"form-type",
|
|
86
86
|
"hover-class"
|
|
@@ -159,7 +159,7 @@ var E = /* @__PURE__ */ s({
|
|
|
159
159
|
a("text", j, [t.loading && t.loadingText ? (u(), i(e, { key: 0 }, [o(m(t.loadingText), 1)], 64)) : p(s.$slots, "default", { key: 1 }, void 0, !0)])
|
|
160
160
|
], 14, k));
|
|
161
161
|
}
|
|
162
|
-
}), [["__scopeId", "data-v-
|
|
162
|
+
}), [["__scopeId", "data-v-330c439c"]]);
|
|
163
163
|
//#endregion
|
|
164
164
|
//#region src/components/sj-icon/index.ts
|
|
165
165
|
M.install = (e) => {
|
|
@@ -242,7 +242,7 @@ var N = { class: "sj-cell__title-text" }, P = {
|
|
|
242
242
|
}, null, 8, ["name"])) : p(t.$slots, "right-icon", { key: 4 }, void 0, !0)
|
|
243
243
|
], 6));
|
|
244
244
|
}
|
|
245
|
-
}), [["__scopeId", "data-v-
|
|
245
|
+
}), [["__scopeId", "data-v-e1850ef0"]]);
|
|
246
246
|
//#endregion
|
|
247
247
|
//#region src/components/sj-cell/index.ts
|
|
248
248
|
I.install = (e) => {
|
|
@@ -293,7 +293,7 @@ var L = {
|
|
|
293
293
|
style: l({ fontSize: n.textSize ? h(v)(n.textSize) : void 0 })
|
|
294
294
|
}, [p(t.$slots, "default", {}, () => [o(m(n.text), 1)], !0)], 4)) : r("", !0)], 6));
|
|
295
295
|
}
|
|
296
|
-
}), [["__scopeId", "data-v-
|
|
296
|
+
}), [["__scopeId", "data-v-e04c0de9"]]);
|
|
297
297
|
//#endregion
|
|
298
298
|
//#region src/components/sj-loading/index.ts
|
|
299
299
|
R.install = (e) => {
|
|
@@ -345,7 +345,7 @@ var z = { class: "sj-divider__text" }, B = { class: "sj-divider__text-inner" },
|
|
|
345
345
|
r[1] ||= a("view", { class: "sj-divider__line sj-divider__line--right" }, null, -1)
|
|
346
346
|
], 64)) : (u(), i("view", V))], 6));
|
|
347
347
|
}
|
|
348
|
-
}), [["__scopeId", "data-v-
|
|
348
|
+
}), [["__scopeId", "data-v-5ed68b48"]]);
|
|
349
349
|
//#endregion
|
|
350
350
|
//#region src/components/sj-divider/index.ts
|
|
351
351
|
H.install = (e) => {
|
|
@@ -405,7 +405,7 @@ var U = { class: "sj-tag__text" }, W = /* @__PURE__ */ D(/* @__PURE__ */ s({
|
|
|
405
405
|
onClick: _(m, ["stop"])
|
|
406
406
|
}, [...n[0] ||= [a("text", { class: "sj-tag__close-icon" }, "×", -1)]])) : r("", !0)], 6));
|
|
407
407
|
}
|
|
408
|
-
}), [["__scopeId", "data-v-
|
|
408
|
+
}), [["__scopeId", "data-v-2d115ec9"]]);
|
|
409
409
|
//#endregion
|
|
410
410
|
//#region src/components/sj-tag/index.ts
|
|
411
411
|
W.install = (e) => {
|
|
@@ -462,7 +462,7 @@ var G = {
|
|
|
462
462
|
style: l(f.value)
|
|
463
463
|
}, [e.dot ? r("", !0) : (u(), i("text", G, m(o.value), 1))], 6)) : r("", !0)], 6));
|
|
464
464
|
}
|
|
465
|
-
}), [["__scopeId", "data-v-
|
|
465
|
+
}), [["__scopeId", "data-v-3ca66be2"]]);
|
|
466
466
|
//#endregion
|
|
467
467
|
//#region src/components/sj-badge/index.ts
|
|
468
468
|
K.install = (e) => {
|
|
@@ -518,7 +518,7 @@ var q = /* @__PURE__ */ D(/* @__PURE__ */ s({
|
|
|
518
518
|
style: l(a.value)
|
|
519
519
|
}, [p(t.$slots, "default", {}, void 0, !0)], 6));
|
|
520
520
|
}
|
|
521
|
-
}), [["__scopeId", "data-v-
|
|
521
|
+
}), [["__scopeId", "data-v-1a734be2"]]);
|
|
522
522
|
//#endregion
|
|
523
523
|
//#region src/components/sj-space/index.ts
|
|
524
524
|
q.install = (e) => {
|
package/dist/shujie-ui.umd.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(e,t){typeof exports==`object`&&typeof module<`u`?t(exports,require(`vue`)):typeof define==`function`&&define.amd?define([`exports`,`vue`],t):(e=typeof globalThis<`u`?globalThis:e||self,t(e.SjUI={},e.Vue))})(this,function(e,t){Object.defineProperties(e,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});function n(e,t=`rpx`){return e==null?``:typeof e==`string`?/^\d+(\.\d+)?$/.test(e)?`${e}${t}`:e:`${e}${t}`}function r(e){return Number(e.replace(/rpx|px|rem|em|vw|vh/g,``))}function i(e,t,n){return Math.min(Math.max(e,t),n)}function a(e,t=2){return String(e).padStart(t,`0`)}function o(e){if(typeof e!=`object`||!e)return e;if(e instanceof Date)return new Date(e.getTime());if(Array.isArray(e))return e.map(e=>o(e));let t={};for(let n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=o(e[n]));return t}var s=0;function c(e=`sj`){return`${e}-${++s}-${Math.random().toString(36).slice(2,8)}`}function l(e,t=300){let n=null;return function(...r){n&&clearTimeout(n),n=setTimeout(()=>{e.apply(this,r),n=null},t)}}function u(e,t=300){let n=0;return function(...r){let i=Date.now();i-n>=t&&(e.apply(this,r),n=i)}}function d(e,t){return new Promise(n=>{uni.createSelectorQuery().in(t).select(e).boundingClientRect(e=>{n(e)}).exec()})}var f=(0,t.defineComponent)({__name:`sj-icon`,props:{name:{default:``},color:{default:``},size:{default:`inherit`},prefix:{default:`sj-icon`},customClass:{default:``},customStyle:{default:``}},emits:[`click`],setup(e,{emit:r}){let i=e,a=r,o=(0,t.computed)(()=>n(i.size)),s=e=>{a(`click`,e)};return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`text`,{class:(0,t.normalizeClass)([e.prefix,e.name?`${e.prefix}-${e.name}`:``,e.customClass]),style:(0,t.normalizeStyle)([{fontSize:o.value,color:e.color||void 0},e.customStyle]),onClick:s},null,6))}}),p=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n},m=p(f,[[`__scopeId`,`data-v-7cac47d7`]]),h=[`disabled`,`form-type`,`hover-class`],g={key:0,class:`sj-button__loading`},_={class:`sj-button__text`},v=p((0,t.defineComponent)({__name:`sj-button`,props:{type:{default:`default`},size:{default:`medium`},shape:{default:`square`},plain:{type:Boolean,default:!1},hairline:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},loadingText:{default:``},loadingSize:{default:`40rpx`},icon:{default:``},iconPrefix:{default:`sj-icon`},block:{type:Boolean,default:!1},nativeType:{default:`button`},customClass:{default:``},customStyle:{default:``}},emits:[`click`],setup(e,{emit:n}){let r=e,i=n,a=e=>{r.disabled||r.loading||i(`click`,e)};return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{class:(0,t.normalizeClass)([`sj-button`,`sj-button--${e.type}`,`sj-button--${e.size}`,`sj-button--${e.shape}`,{"sj-button--plain":e.plain,"sj-button--hairline":e.hairline,"sj-button--disabled":e.disabled,"sj-button--loading":e.loading,"sj-button--block":e.block},e.customClass]),style:(0,t.normalizeStyle)(e.customStyle),disabled:e.disabled||e.loading,"form-type":e.nativeType===`submit`||e.nativeType===`reset`?e.nativeType:void 0,"hover-class":e.disabled||e.loading?``:`sj-button--active`,"hover-start-time":`20`,"hover-stay-time":`70`,onClick:a},[e.loading?((0,t.openBlock)(),(0,t.createElementBlock)(`view`,g,[...r[0]||=[(0,t.createElementVNode)(`view`,{class:`sj-button__loading-spinner`},null,-1)]])):(0,t.createCommentVNode)(``,!0),e.icon&&!e.loading?((0,t.openBlock)(),(0,t.createBlock)(m,{key:1,name:e.icon,prefix:e.iconPrefix,class:`sj-button__icon`},null,8,[`name`,`prefix`])):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`text`,_,[e.loading&&e.loadingText?((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:0},[(0,t.createTextVNode)((0,t.toDisplayString)(e.loadingText),1)],64)):(0,t.renderSlot)(n.$slots,`default`,{key:1},void 0,!0)])],14,h))}}),[[`__scopeId`,`data-v-d5bd5c39`]]);v.install=e=>{e.component(`SjButton`,v)},m.install=e=>{e.component(`SjIcon`,m)};var y={class:`sj-cell__title-text`},b={key:0,class:`sj-cell__label`},x={class:`sj-cell__value-text`},S=p((0,t.defineComponent)({__name:`sj-cell`,props:{title:{default:``},value:{default:``},label:{default:``},isLink:{type:Boolean,default:!1},arrowDirection:{default:`right`},required:{type:Boolean,default:!1},clickable:{type:Boolean,default:!1},icon:{default:``},iconSize:{default:``},titleWidth:{default:``},titleAlign:{default:`left`},border:{type:Boolean,default:!0},customClass:{default:``},customStyle:{default:``}},emits:[`click`],setup(e,{emit:r}){let i=r,a=e=>{i(`click`,e)};return(r,i)=>((0,t.openBlock)(),(0,t.createElementBlock)(`view`,{class:(0,t.normalizeClass)([`sj-cell`,{"sj-cell--clickable":e.clickable||e.isLink,"sj-cell--required":e.required,"sj-cell--borderless":!e.border},e.customClass]),style:(0,t.normalizeStyle)(e.customStyle),onClick:a},[e.icon?((0,t.openBlock)(),(0,t.createBlock)(m,{key:0,name:e.icon,size:e.iconSize||`40rpx`,class:`sj-cell__left-icon`},null,8,[`name`,`size`])):(0,t.renderSlot)(r.$slots,`icon`,{key:1},void 0,!0),e.title||r.$slots.title||r.$slots.label||e.label?((0,t.openBlock)(),(0,t.createElementBlock)(`view`,{key:2,class:`sj-cell__title`,style:(0,t.normalizeStyle)({textAlign:e.titleAlign,flex:e.titleWidth?`0 0 ${(0,t.unref)(n)(e.titleWidth)}`:``})},[(0,t.renderSlot)(r.$slots,`title`,{},()=>[(0,t.createElementVNode)(`text`,y,(0,t.toDisplayString)(e.title),1)],!0),(0,t.renderSlot)(r.$slots,`label`,{},()=>[e.label?((0,t.openBlock)(),(0,t.createElementBlock)(`text`,b,(0,t.toDisplayString)(e.label),1)):(0,t.createCommentVNode)(``,!0)],!0)],4)):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`view`,{class:(0,t.normalizeClass)([`sj-cell__value`,{"sj-cell__value--alone":!e.title&&!r.$slots.title}])},[(0,t.renderSlot)(r.$slots,`default`,{},()=>[(0,t.createElementVNode)(`text`,x,(0,t.toDisplayString)(e.value),1)],!0)],2),e.isLink?((0,t.openBlock)(),(0,t.createBlock)(m,{key:3,name:`arrow-${e.arrowDirection}`,class:`sj-cell__right-icon`},null,8,[`name`])):(0,t.renderSlot)(r.$slots,`right-icon`,{key:4},void 0,!0)],6))}}),[[`__scopeId`,`data-v-17f18255`]]);S.install=e=>{e.component(`SjCell`,S)};var C={key:0,class:`sj-loading__circular`},w=p((0,t.defineComponent)({__name:`sj-loading`,props:{type:{default:`circular`},color:{default:``},size:{default:`64rpx`},textSize:{default:``},text:{default:``},vertical:{type:Boolean,default:!1},customClass:{default:``},customStyle:{default:``}},setup(e){let r=e,i=(0,t.computed)(()=>n(r.size));return(r,a)=>((0,t.openBlock)(),(0,t.createElementBlock)(`view`,{class:(0,t.normalizeClass)([`sj-loading`,{"sj-loading--vertical":e.vertical},e.customClass]),style:(0,t.normalizeStyle)(e.customStyle)},[(0,t.createElementVNode)(`view`,{class:(0,t.normalizeClass)([`sj-loading__spinner`,`sj-loading__spinner--${e.type}`]),style:(0,t.normalizeStyle)({width:i.value,height:i.value,color:e.color||void 0})},[e.type===`circular`?((0,t.openBlock)(),(0,t.createElementBlock)(`view`,C,[...a[0]||=[(0,t.createElementVNode)(`view`,{class:`sj-loading__circular-ring`},null,-1)]])):((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:1},(0,t.renderList)(12,e=>(0,t.createElementVNode)(`view`,{key:e,class:`sj-loading__spinner-dot`})),64))],6),e.text||r.$slots.default?((0,t.openBlock)(),(0,t.createElementBlock)(`text`,{key:0,class:`sj-loading__text`,style:(0,t.normalizeStyle)({fontSize:e.textSize?(0,t.unref)(n)(e.textSize):void 0})},[(0,t.renderSlot)(r.$slots,`default`,{},()=>[(0,t.createTextVNode)((0,t.toDisplayString)(e.text),1)],!0)],4)):(0,t.createCommentVNode)(``,!0)],6))}}),[[`__scopeId`,`data-v-48c28ad3`]]);w.install=e=>{e.component(`SjLoading`,w)};var T={class:`sj-divider__text`},E={class:`sj-divider__text-inner`},D={key:1,class:`sj-divider__line sj-divider__line--full`},O=p((0,t.defineComponent)({__name:`sj-divider`,props:{orientation:{default:`horizontal`},dashed:{type:Boolean,default:!1},hairline:{type:Boolean,default:!0},text:{default:``},height:{default:``},margin:{default:``},customClass:{default:``},customStyle:{default:``}},setup(e){let r=e,i=(0,t.useSlots)(),a=(0,t.computed)(()=>r.orientation===`horizontal`?!!(r.text||i.default):!1),o=(0,t.computed)(()=>{let e={};return r.margin&&(e.margin=n(r.margin)),r.orientation===`vertical`&&r.height&&(e.height=n(r.height),e.alignSelf=`stretch`),[e,r.customStyle]});return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`view`,{class:(0,t.normalizeClass)([`sj-divider`,`sj-divider--${e.orientation}`,{"sj-divider--dashed":e.dashed,"sj-divider--hairline":e.hairline,"sj-divider--with-text":a.value},e.customClass]),style:(0,t.normalizeStyle)(o.value)},[e.orientation===`horizontal`&&a.value?((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:0},[r[0]||=(0,t.createElementVNode)(`view`,{class:`sj-divider__line sj-divider__line--left`},null,-1),(0,t.createElementVNode)(`view`,T,[(0,t.renderSlot)(n.$slots,`default`,{},()=>[(0,t.createElementVNode)(`text`,E,(0,t.toDisplayString)(e.text),1)],!0)]),r[1]||=(0,t.createElementVNode)(`view`,{class:`sj-divider__line sj-divider__line--right`},null,-1)],64)):((0,t.openBlock)(),(0,t.createElementBlock)(`view`,D))],6))}}),[[`__scopeId`,`data-v-4e98255f`]]);O.install=e=>{e.component(`SjDivider`,O)};var k={class:`sj-tag__text`},A=p((0,t.defineComponent)({__name:`sj-tag`,props:{type:{default:`default`},plain:{type:Boolean,default:!1},round:{type:Boolean,default:!1},size:{default:`medium`},closable:{type:Boolean,default:!1},color:{default:``},bgColor:{default:``},customClass:{default:``},customStyle:{default:``}},emits:[`click`,`close`],setup(e,{emit:n}){let r=e,i=n,a=(0,t.computed)(()=>{let e={};return r.color&&(e.color=r.color),r.bgColor&&!r.plain&&(e.backgroundColor=r.bgColor),[e,r.customStyle]}),o=e=>{i(`click`,e)},s=e=>{i(`close`,e)};return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`view`,{class:(0,t.normalizeClass)([`sj-tag`,`sj-tag--${e.type}`,`sj-tag--${e.size}`,{"sj-tag--plain":e.plain,"sj-tag--round":e.round,"sj-tag--closable":e.closable},e.customClass]),style:(0,t.normalizeStyle)(a.value),onClick:o},[(0,t.createElementVNode)(`text`,k,[(0,t.renderSlot)(n.$slots,`default`,{},void 0,!0)]),e.closable?((0,t.openBlock)(),(0,t.createElementBlock)(`view`,{key:0,class:`sj-tag__close`,onClick:(0,t.withModifiers)(s,[`stop`])},[...r[0]||=[(0,t.createElementVNode)(`text`,{class:`sj-tag__close-icon`},`×`,-1)]])):(0,t.createCommentVNode)(``,!0)],6))}}),[[`__scopeId`,`data-v-2c263ebd`]]);A.install=e=>{e.component(`SjTag`,A)};var j={key:0,class:`sj-badge__text`},M=p((0,t.defineComponent)({__name:`sj-badge`,props:{dot:{type:Boolean,default:!1},content:{default:``},max:{default:99},position:{default:`top-right`},offset:{},color:{default:``},customClass:{default:``},customStyle:{default:``}},setup(e){let r=e,i=(0,t.computed)(()=>!!(r.dot||r.content===0||r.content===`0`||r.content!==``&&r.content!==null&&r.content!==void 0)),a=(0,t.computed)(()=>{let e=r.content;return typeof e==`number`&&e>r.max?`${r.max}+`:String(e)}),o=(0,t.computed)(()=>[`sj-badge__content`,{"sj-badge__content--dot":r.dot,[`sj-badge__content--${r.position}`]:!0}]),s={"top-right":`translate(40%, -40%)`,"top-left":`translate(-40%, -40%)`,"bottom-right":`translate(40%, 40%)`,"bottom-left":`translate(-40%, 40%)`},c=(0,t.computed)(()=>{let e={};r.color&&(e.backgroundColor=r.color);let t=s[r.position];if(r.offset&&r.offset.length===2){let[e,i]=r.offset;t+=` translate(${n(e)}, ${n(i)})`}return e.transform=t,e});return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`view`,{class:(0,t.normalizeClass)([`sj-badge`,e.customClass]),style:(0,t.normalizeStyle)(e.customStyle)},[(0,t.renderSlot)(n.$slots,`default`,{},void 0,!0),i.value?((0,t.openBlock)(),(0,t.createElementBlock)(`view`,{key:0,class:(0,t.normalizeClass)(o.value),style:(0,t.normalizeStyle)(c.value)},[e.dot?(0,t.createCommentVNode)(``,!0):((0,t.openBlock)(),(0,t.createElementBlock)(`text`,j,(0,t.toDisplayString)(a.value),1))],6)):(0,t.createCommentVNode)(``,!0)],6))}}),[[`__scopeId`,`data-v-77de098c`]]);M.install=e=>{e.component(`SjBadge`,M)};var N=p((0,t.defineComponent)({__name:`sj-space`,props:{direction:{default:`horizontal`},size:{default:`medium`},wrap:{type:Boolean,default:!1},align:{default:`center`},justify:{default:`start`},customClass:{default:``},customStyle:{default:``}},setup(e){let r=e,i={small:16,medium:24,large:32},a=(0,t.computed)(()=>{let e=typeof r.size==`number`?n(r.size):n(i[r.size]);return[{display:`flex`,flexDirection:r.direction===`vertical`?`column`:`row`,flexWrap:r.wrap?`wrap`:`nowrap`,alignItems:{start:`flex-start`,center:`center`,end:`flex-end`,stretch:`stretch`,baseline:`baseline`}[r.align]||`center`,justifyContent:{start:`flex-start`,center:`center`,end:`flex-end`,between:`space-between`,around:`space-around`,evenly:`space-evenly`}[r.justify]||`flex-start`,gap:e},r.customStyle]});return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`view`,{class:(0,t.normalizeClass)([`sj-space`,e.customClass]),style:(0,t.normalizeStyle)(a.value)},[(0,t.renderSlot)(n.$slots,`default`,{},void 0,!0)],6))}}),[[`__scopeId`,`data-v-ab457af8`]]);N.install=e=>{e.component(`SjSpace`,N)};function P(){return typeof uni<`u`?uni.getSystemInfoSync().uniPlatform||`unknown`:typeof window<`u`?`h5`:`unknown`}function F(){return P()===`h5`}function I(){return P().startsWith(`mp-`)}function L(){return P()===`mp-weixin`}function R(){return P()===`mp-alipay`}function z(){return P()===`app-plus`}function B(){try{return uni.getSystemInfoSync()}catch{return{screenWidth:375,screenHeight:667,windowWidth:375,windowHeight:667,pixelRatio:2,platform:`unknown`}}}function V(e){return e==null?!0:typeof e==`string`?e.trim()===``:Array.isArray(e)?e.length===0:typeof e==`object`?Object.keys(e).length===0:!1}function H(e){return typeof e==`number`&&!isNaN(e)}function U(e){return/^1[3-9]\d{9}$/.test(e)}function W(e){return/^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/.test(e)}function G(e){return/^https?:\/\/.+/.test(e)}function K(e){return/^\d{15}|\d{18}|\d{17}[Xx]$/.test(e)}function q(e=!1){let n=(0,t.ref)(e);return{visible:n,show:()=>{n.value=!0},hide:()=>{n.value=!1},toggle:()=>{n.value=!n.value}}}function J(e=!1){let n=(0,t.ref)(e),r=()=>{n.value=!0},i=()=>{n.value=!1};return{loading:n,startLoading:r,stopLoading:i,withLoading:async e=>{try{return r(),await e()}finally{i()}}}}function Y(e=50){let n=(0,t.ref)({scrollTop:0,scrollLeft:0,isScrollTop:!0,isScrollBottom:!1,direction:`none`}),r=0;return{scrollState:n,onScroll:u(t=>{let{scrollTop:i,scrollLeft:a}=t.detail,o=i>r?`down`:i<r?`up`:`none`;r=i,n.value={scrollTop:i,scrollLeft:a,isScrollTop:i<=e,isScrollBottom:!1,direction:o}},100)}}var X={SjButton:v,SjIcon:m,SjCell:S,SjLoading:w,SjDivider:O,SjTag:A,SjBadge:M,SjSpace:N};e.SjBadge=M,e.SjButton=v,e.SjCell=S,e.SjDivider=O,e.SjIcon=m,e.SjLoading=w,e.SjSpace=N,e.SjTag=A,e.addUnit=n,e.clamp=i,e.debounce=l,e.deepClone=o,e.default={install:e=>{Object.entries(X).forEach(([t,n])=>{e.component(t,n)})}},e.getPlatform=P,e.getRect=d,e.getSystemInfo=B,e.isAlipay=R,e.isApp=z,e.isEmail=W,e.isEmpty=V,e.isH5=F,e.isIdCard=K,e.isMP=I,e.isNumber=H,e.isPhone=U,e.isUrl=G,e.isWeixin=L,e.padZero=a,e.removeUnit=r,e.throttle=u,e.uniqueId=c,e.useLoading=J,e.useScroll=Y,e.useVisible=q});
|
|
1
|
+
(function(e,t){typeof exports==`object`&&typeof module<`u`?t(exports,require(`vue`)):typeof define==`function`&&define.amd?define([`exports`,`vue`],t):(e=typeof globalThis<`u`?globalThis:e||self,t(e.SjUI={},e.Vue))})(this,function(e,t){Object.defineProperties(e,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});function n(e,t=`rpx`){return e==null?``:typeof e==`string`?/^\d+(\.\d+)?$/.test(e)?`${e}${t}`:e:`${e}${t}`}function r(e){return Number(e.replace(/rpx|px|rem|em|vw|vh/g,``))}function i(e,t,n){return Math.min(Math.max(e,t),n)}function a(e,t=2){return String(e).padStart(t,`0`)}function o(e){if(typeof e!=`object`||!e)return e;if(e instanceof Date)return new Date(e.getTime());if(Array.isArray(e))return e.map(e=>o(e));let t={};for(let n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=o(e[n]));return t}var s=0;function c(e=`sj`){return`${e}-${++s}-${Math.random().toString(36).slice(2,8)}`}function l(e,t=300){let n=null;return function(...r){n&&clearTimeout(n),n=setTimeout(()=>{e.apply(this,r),n=null},t)}}function u(e,t=300){let n=0;return function(...r){let i=Date.now();i-n>=t&&(e.apply(this,r),n=i)}}function d(e,t){return new Promise(n=>{uni.createSelectorQuery().in(t).select(e).boundingClientRect(e=>{n(e)}).exec()})}var f=(0,t.defineComponent)({__name:`sj-icon`,props:{name:{default:``},color:{default:``},size:{default:`inherit`},prefix:{default:`sj-icon`},customClass:{default:``},customStyle:{default:``}},emits:[`click`],setup(e,{emit:r}){let i=e,a=r,o=(0,t.computed)(()=>n(i.size)),s=e=>{a(`click`,e)};return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`text`,{class:(0,t.normalizeClass)([e.prefix,e.name?`${e.prefix}-${e.name}`:``,e.customClass]),style:(0,t.normalizeStyle)([{fontSize:o.value,color:e.color||void 0},e.customStyle]),onClick:s},null,6))}}),p=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n},m=p(f,[[`__scopeId`,`data-v-b9c3bb46`]]),h=[`disabled`,`form-type`,`hover-class`],g={key:0,class:`sj-button__loading`},_={class:`sj-button__text`},v=p((0,t.defineComponent)({__name:`sj-button`,props:{type:{default:`default`},size:{default:`medium`},shape:{default:`square`},plain:{type:Boolean,default:!1},hairline:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},loadingText:{default:``},loadingSize:{default:`40rpx`},icon:{default:``},iconPrefix:{default:`sj-icon`},block:{type:Boolean,default:!1},nativeType:{default:`button`},customClass:{default:``},customStyle:{default:``}},emits:[`click`],setup(e,{emit:n}){let r=e,i=n,a=e=>{r.disabled||r.loading||i(`click`,e)};return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{class:(0,t.normalizeClass)([`sj-button`,`sj-button--${e.type}`,`sj-button--${e.size}`,`sj-button--${e.shape}`,{"sj-button--plain":e.plain,"sj-button--hairline":e.hairline,"sj-button--disabled":e.disabled,"sj-button--loading":e.loading,"sj-button--block":e.block},e.customClass]),style:(0,t.normalizeStyle)(e.customStyle),disabled:e.disabled||e.loading,"form-type":e.nativeType===`submit`||e.nativeType===`reset`?e.nativeType:void 0,"hover-class":e.disabled||e.loading?``:`sj-button--active`,"hover-start-time":`20`,"hover-stay-time":`70`,onClick:a},[e.loading?((0,t.openBlock)(),(0,t.createElementBlock)(`view`,g,[...r[0]||=[(0,t.createElementVNode)(`view`,{class:`sj-button__loading-spinner`},null,-1)]])):(0,t.createCommentVNode)(``,!0),e.icon&&!e.loading?((0,t.openBlock)(),(0,t.createBlock)(m,{key:1,name:e.icon,prefix:e.iconPrefix,class:`sj-button__icon`},null,8,[`name`,`prefix`])):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`text`,_,[e.loading&&e.loadingText?((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:0},[(0,t.createTextVNode)((0,t.toDisplayString)(e.loadingText),1)],64)):(0,t.renderSlot)(n.$slots,`default`,{key:1},void 0,!0)])],14,h))}}),[[`__scopeId`,`data-v-330c439c`]]);v.install=e=>{e.component(`SjButton`,v)},m.install=e=>{e.component(`SjIcon`,m)};var y={class:`sj-cell__title-text`},b={key:0,class:`sj-cell__label`},x={class:`sj-cell__value-text`},S=p((0,t.defineComponent)({__name:`sj-cell`,props:{title:{default:``},value:{default:``},label:{default:``},isLink:{type:Boolean,default:!1},arrowDirection:{default:`right`},required:{type:Boolean,default:!1},clickable:{type:Boolean,default:!1},icon:{default:``},iconSize:{default:``},titleWidth:{default:``},titleAlign:{default:`left`},border:{type:Boolean,default:!0},customClass:{default:``},customStyle:{default:``}},emits:[`click`],setup(e,{emit:r}){let i=r,a=e=>{i(`click`,e)};return(r,i)=>((0,t.openBlock)(),(0,t.createElementBlock)(`view`,{class:(0,t.normalizeClass)([`sj-cell`,{"sj-cell--clickable":e.clickable||e.isLink,"sj-cell--required":e.required,"sj-cell--borderless":!e.border},e.customClass]),style:(0,t.normalizeStyle)(e.customStyle),onClick:a},[e.icon?((0,t.openBlock)(),(0,t.createBlock)(m,{key:0,name:e.icon,size:e.iconSize||`40rpx`,class:`sj-cell__left-icon`},null,8,[`name`,`size`])):(0,t.renderSlot)(r.$slots,`icon`,{key:1},void 0,!0),e.title||r.$slots.title||r.$slots.label||e.label?((0,t.openBlock)(),(0,t.createElementBlock)(`view`,{key:2,class:`sj-cell__title`,style:(0,t.normalizeStyle)({textAlign:e.titleAlign,flex:e.titleWidth?`0 0 ${(0,t.unref)(n)(e.titleWidth)}`:``})},[(0,t.renderSlot)(r.$slots,`title`,{},()=>[(0,t.createElementVNode)(`text`,y,(0,t.toDisplayString)(e.title),1)],!0),(0,t.renderSlot)(r.$slots,`label`,{},()=>[e.label?((0,t.openBlock)(),(0,t.createElementBlock)(`text`,b,(0,t.toDisplayString)(e.label),1)):(0,t.createCommentVNode)(``,!0)],!0)],4)):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`view`,{class:(0,t.normalizeClass)([`sj-cell__value`,{"sj-cell__value--alone":!e.title&&!r.$slots.title}])},[(0,t.renderSlot)(r.$slots,`default`,{},()=>[(0,t.createElementVNode)(`text`,x,(0,t.toDisplayString)(e.value),1)],!0)],2),e.isLink?((0,t.openBlock)(),(0,t.createBlock)(m,{key:3,name:`arrow-${e.arrowDirection}`,class:`sj-cell__right-icon`},null,8,[`name`])):(0,t.renderSlot)(r.$slots,`right-icon`,{key:4},void 0,!0)],6))}}),[[`__scopeId`,`data-v-e1850ef0`]]);S.install=e=>{e.component(`SjCell`,S)};var C={key:0,class:`sj-loading__circular`},w=p((0,t.defineComponent)({__name:`sj-loading`,props:{type:{default:`circular`},color:{default:``},size:{default:`64rpx`},textSize:{default:``},text:{default:``},vertical:{type:Boolean,default:!1},customClass:{default:``},customStyle:{default:``}},setup(e){let r=e,i=(0,t.computed)(()=>n(r.size));return(r,a)=>((0,t.openBlock)(),(0,t.createElementBlock)(`view`,{class:(0,t.normalizeClass)([`sj-loading`,{"sj-loading--vertical":e.vertical},e.customClass]),style:(0,t.normalizeStyle)(e.customStyle)},[(0,t.createElementVNode)(`view`,{class:(0,t.normalizeClass)([`sj-loading__spinner`,`sj-loading__spinner--${e.type}`]),style:(0,t.normalizeStyle)({width:i.value,height:i.value,color:e.color||void 0})},[e.type===`circular`?((0,t.openBlock)(),(0,t.createElementBlock)(`view`,C,[...a[0]||=[(0,t.createElementVNode)(`view`,{class:`sj-loading__circular-ring`},null,-1)]])):((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:1},(0,t.renderList)(12,e=>(0,t.createElementVNode)(`view`,{key:e,class:`sj-loading__spinner-dot`})),64))],6),e.text||r.$slots.default?((0,t.openBlock)(),(0,t.createElementBlock)(`text`,{key:0,class:`sj-loading__text`,style:(0,t.normalizeStyle)({fontSize:e.textSize?(0,t.unref)(n)(e.textSize):void 0})},[(0,t.renderSlot)(r.$slots,`default`,{},()=>[(0,t.createTextVNode)((0,t.toDisplayString)(e.text),1)],!0)],4)):(0,t.createCommentVNode)(``,!0)],6))}}),[[`__scopeId`,`data-v-e04c0de9`]]);w.install=e=>{e.component(`SjLoading`,w)};var T={class:`sj-divider__text`},E={class:`sj-divider__text-inner`},D={key:1,class:`sj-divider__line sj-divider__line--full`},O=p((0,t.defineComponent)({__name:`sj-divider`,props:{orientation:{default:`horizontal`},dashed:{type:Boolean,default:!1},hairline:{type:Boolean,default:!0},text:{default:``},height:{default:``},margin:{default:``},customClass:{default:``},customStyle:{default:``}},setup(e){let r=e,i=(0,t.useSlots)(),a=(0,t.computed)(()=>r.orientation===`horizontal`?!!(r.text||i.default):!1),o=(0,t.computed)(()=>{let e={};return r.margin&&(e.margin=n(r.margin)),r.orientation===`vertical`&&r.height&&(e.height=n(r.height),e.alignSelf=`stretch`),[e,r.customStyle]});return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`view`,{class:(0,t.normalizeClass)([`sj-divider`,`sj-divider--${e.orientation}`,{"sj-divider--dashed":e.dashed,"sj-divider--hairline":e.hairline,"sj-divider--with-text":a.value},e.customClass]),style:(0,t.normalizeStyle)(o.value)},[e.orientation===`horizontal`&&a.value?((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:0},[r[0]||=(0,t.createElementVNode)(`view`,{class:`sj-divider__line sj-divider__line--left`},null,-1),(0,t.createElementVNode)(`view`,T,[(0,t.renderSlot)(n.$slots,`default`,{},()=>[(0,t.createElementVNode)(`text`,E,(0,t.toDisplayString)(e.text),1)],!0)]),r[1]||=(0,t.createElementVNode)(`view`,{class:`sj-divider__line sj-divider__line--right`},null,-1)],64)):((0,t.openBlock)(),(0,t.createElementBlock)(`view`,D))],6))}}),[[`__scopeId`,`data-v-5ed68b48`]]);O.install=e=>{e.component(`SjDivider`,O)};var k={class:`sj-tag__text`},A=p((0,t.defineComponent)({__name:`sj-tag`,props:{type:{default:`default`},plain:{type:Boolean,default:!1},round:{type:Boolean,default:!1},size:{default:`medium`},closable:{type:Boolean,default:!1},color:{default:``},bgColor:{default:``},customClass:{default:``},customStyle:{default:``}},emits:[`click`,`close`],setup(e,{emit:n}){let r=e,i=n,a=(0,t.computed)(()=>{let e={};return r.color&&(e.color=r.color),r.bgColor&&!r.plain&&(e.backgroundColor=r.bgColor),[e,r.customStyle]}),o=e=>{i(`click`,e)},s=e=>{i(`close`,e)};return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`view`,{class:(0,t.normalizeClass)([`sj-tag`,`sj-tag--${e.type}`,`sj-tag--${e.size}`,{"sj-tag--plain":e.plain,"sj-tag--round":e.round,"sj-tag--closable":e.closable},e.customClass]),style:(0,t.normalizeStyle)(a.value),onClick:o},[(0,t.createElementVNode)(`text`,k,[(0,t.renderSlot)(n.$slots,`default`,{},void 0,!0)]),e.closable?((0,t.openBlock)(),(0,t.createElementBlock)(`view`,{key:0,class:`sj-tag__close`,onClick:(0,t.withModifiers)(s,[`stop`])},[...r[0]||=[(0,t.createElementVNode)(`text`,{class:`sj-tag__close-icon`},`×`,-1)]])):(0,t.createCommentVNode)(``,!0)],6))}}),[[`__scopeId`,`data-v-2d115ec9`]]);A.install=e=>{e.component(`SjTag`,A)};var j={key:0,class:`sj-badge__text`},M=p((0,t.defineComponent)({__name:`sj-badge`,props:{dot:{type:Boolean,default:!1},content:{default:``},max:{default:99},position:{default:`top-right`},offset:{},color:{default:``},customClass:{default:``},customStyle:{default:``}},setup(e){let r=e,i=(0,t.computed)(()=>!!(r.dot||r.content===0||r.content===`0`||r.content!==``&&r.content!==null&&r.content!==void 0)),a=(0,t.computed)(()=>{let e=r.content;return typeof e==`number`&&e>r.max?`${r.max}+`:String(e)}),o=(0,t.computed)(()=>[`sj-badge__content`,{"sj-badge__content--dot":r.dot,[`sj-badge__content--${r.position}`]:!0}]),s={"top-right":`translate(40%, -40%)`,"top-left":`translate(-40%, -40%)`,"bottom-right":`translate(40%, 40%)`,"bottom-left":`translate(-40%, 40%)`},c=(0,t.computed)(()=>{let e={};r.color&&(e.backgroundColor=r.color);let t=s[r.position];if(r.offset&&r.offset.length===2){let[e,i]=r.offset;t+=` translate(${n(e)}, ${n(i)})`}return e.transform=t,e});return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`view`,{class:(0,t.normalizeClass)([`sj-badge`,e.customClass]),style:(0,t.normalizeStyle)(e.customStyle)},[(0,t.renderSlot)(n.$slots,`default`,{},void 0,!0),i.value?((0,t.openBlock)(),(0,t.createElementBlock)(`view`,{key:0,class:(0,t.normalizeClass)(o.value),style:(0,t.normalizeStyle)(c.value)},[e.dot?(0,t.createCommentVNode)(``,!0):((0,t.openBlock)(),(0,t.createElementBlock)(`text`,j,(0,t.toDisplayString)(a.value),1))],6)):(0,t.createCommentVNode)(``,!0)],6))}}),[[`__scopeId`,`data-v-3ca66be2`]]);M.install=e=>{e.component(`SjBadge`,M)};var N=p((0,t.defineComponent)({__name:`sj-space`,props:{direction:{default:`horizontal`},size:{default:`medium`},wrap:{type:Boolean,default:!1},align:{default:`center`},justify:{default:`start`},customClass:{default:``},customStyle:{default:``}},setup(e){let r=e,i={small:16,medium:24,large:32},a=(0,t.computed)(()=>{let e=typeof r.size==`number`?n(r.size):n(i[r.size]);return[{display:`flex`,flexDirection:r.direction===`vertical`?`column`:`row`,flexWrap:r.wrap?`wrap`:`nowrap`,alignItems:{start:`flex-start`,center:`center`,end:`flex-end`,stretch:`stretch`,baseline:`baseline`}[r.align]||`center`,justifyContent:{start:`flex-start`,center:`center`,end:`flex-end`,between:`space-between`,around:`space-around`,evenly:`space-evenly`}[r.justify]||`flex-start`,gap:e},r.customStyle]});return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`view`,{class:(0,t.normalizeClass)([`sj-space`,e.customClass]),style:(0,t.normalizeStyle)(a.value)},[(0,t.renderSlot)(n.$slots,`default`,{},void 0,!0)],6))}}),[[`__scopeId`,`data-v-1a734be2`]]);N.install=e=>{e.component(`SjSpace`,N)};function P(){return typeof uni<`u`?uni.getSystemInfoSync().uniPlatform||`unknown`:typeof window<`u`?`h5`:`unknown`}function F(){return P()===`h5`}function I(){return P().startsWith(`mp-`)}function L(){return P()===`mp-weixin`}function R(){return P()===`mp-alipay`}function z(){return P()===`app-plus`}function B(){try{return uni.getSystemInfoSync()}catch{return{screenWidth:375,screenHeight:667,windowWidth:375,windowHeight:667,pixelRatio:2,platform:`unknown`}}}function V(e){return e==null?!0:typeof e==`string`?e.trim()===``:Array.isArray(e)?e.length===0:typeof e==`object`?Object.keys(e).length===0:!1}function H(e){return typeof e==`number`&&!isNaN(e)}function U(e){return/^1[3-9]\d{9}$/.test(e)}function W(e){return/^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/.test(e)}function G(e){return/^https?:\/\/.+/.test(e)}function K(e){return/^\d{15}|\d{18}|\d{17}[Xx]$/.test(e)}function q(e=!1){let n=(0,t.ref)(e);return{visible:n,show:()=>{n.value=!0},hide:()=>{n.value=!1},toggle:()=>{n.value=!n.value}}}function J(e=!1){let n=(0,t.ref)(e),r=()=>{n.value=!0},i=()=>{n.value=!1};return{loading:n,startLoading:r,stopLoading:i,withLoading:async e=>{try{return r(),await e()}finally{i()}}}}function Y(e=50){let n=(0,t.ref)({scrollTop:0,scrollLeft:0,isScrollTop:!0,isScrollBottom:!1,direction:`none`}),r=0;return{scrollState:n,onScroll:u(t=>{let{scrollTop:i,scrollLeft:a}=t.detail,o=i>r?`down`:i<r?`up`:`none`;r=i,n.value={scrollTop:i,scrollLeft:a,isScrollTop:i<=e,isScrollBottom:!1,direction:o}},100)}}var X={SjButton:v,SjIcon:m,SjCell:S,SjLoading:w,SjDivider:O,SjTag:A,SjBadge:M,SjSpace:N};e.SjBadge=M,e.SjButton=v,e.SjCell=S,e.SjDivider=O,e.SjIcon=m,e.SjLoading=w,e.SjSpace=N,e.SjTag=A,e.addUnit=n,e.clamp=i,e.debounce=l,e.deepClone=o,e.default={install:e=>{Object.entries(X).forEach(([t,n])=>{e.component(t,n)})}},e.getPlatform=P,e.getRect=d,e.getSystemInfo=B,e.isAlipay=R,e.isApp=z,e.isEmail=W,e.isEmpty=V,e.isH5=F,e.isIdCard=K,e.isMP=I,e.isNumber=H,e.isPhone=U,e.isUrl=G,e.isWeixin=L,e.padZero=a,e.removeUnit=r,e.throttle=u,e.uniqueId=c,e.useLoading=J,e.useScroll=Y,e.useVisible=q});
|