2336 changed files with 97872 additions and 0 deletions
@ -0,0 +1 @@ |
|||||
|
node_modules |
@ -0,0 +1,53 @@ |
|||||
|
App({ |
||||
|
onLaunch: function (options) { |
||||
|
// 判断是否由分享进入小程序
|
||||
|
if (options.scene == 1007 || options.scene == 1008) { |
||||
|
this.globalData.share = true |
||||
|
} else { |
||||
|
this.globalData.share = false |
||||
|
}; |
||||
|
//获取设备顶部窗口的高度(不同设备窗口高度不一样,根据这个来设置自定义导航栏的高度)
|
||||
|
//这个最初我是在组件中获取,但是出现了一个问题,当第一次进入小程序时导航栏会把
|
||||
|
//页面内容盖住一部分,当打开调试重新进入时就没有问题,这个问题弄得我是莫名其妙
|
||||
|
//虽然最后解决了,但是花费了不少时间
|
||||
|
const menuButtonInfo = wx.getMenuButtonBoundingClientRect() |
||||
|
wx.getSystemInfo({ |
||||
|
success: (res) => { |
||||
|
this.globalData.height = res.statusBarHeight |
||||
|
this.globalData.deviceInfo.statusHeight = res.statusBarHeight |
||||
|
this.globalData.deviceInfo.navigationHeight = menuButtonInfo.height + (menuButtonInfo.top - res.statusBarHeight) * 2 |
||||
|
} |
||||
|
}) |
||||
|
}, |
||||
|
onShow () { |
||||
|
|
||||
|
}, |
||||
|
globalData: { |
||||
|
flag: false, |
||||
|
exitApp: false, |
||||
|
userInfo: null, |
||||
|
accountState: 0, // 未注册
|
||||
|
share: false, // 分享默认为false
|
||||
|
height: 0, |
||||
|
infoCompleted: 0, // 0-未完善 1,2,3...-已完善
|
||||
|
tempGridId: '', |
||||
|
userInfo : { // 当前登陆的用户信息
|
||||
|
userId: '', |
||||
|
username: '', |
||||
|
userMobile: '', |
||||
|
partyFlag: '' |
||||
|
}, |
||||
|
groupInfo: { // 友邻社群-当前展示的社群信息
|
||||
|
groupAvatar: '', |
||||
|
groupLeader: '', |
||||
|
groupName:'', |
||||
|
groupId: '', |
||||
|
lordFlag: '' |
||||
|
}, |
||||
|
previewImage: false, // 预览图片后会触发onShow,加个状态区分一下
|
||||
|
deviceInfo: { |
||||
|
statusHeight: 20, |
||||
|
navigationHeight: 40 |
||||
|
} |
||||
|
} |
||||
|
}) |
@ -0,0 +1,180 @@ |
|||||
|
{ |
||||
|
"pages": [ |
||||
|
"pages/index/index", |
||||
|
"pages/toRegister/toRegister", |
||||
|
"pages/heart/heart", |
||||
|
"pages/mine/mine", |
||||
|
"pages/association/association", |
||||
|
"pages/discussion/discussion", |
||||
|
"pages/toScan/toScan", |
||||
|
"pages/complete/complete", |
||||
|
"pages/formid/formid", |
||||
|
"pages/fromVirus/fromVirus", |
||||
|
"pages/register/register", |
||||
|
"pages/detail/detail", |
||||
|
"pages/fromVirus/detail/detail", |
||||
|
"pages/accept/accept", |
||||
|
"pages/gridLeaderRegister/gridLeaderRegister", |
||||
|
"pages/navigatetoApp/navigatetoApp" |
||||
|
], |
||||
|
"subPackages": [ |
||||
|
{ |
||||
|
"root": "subpages/home", |
||||
|
"name": "home", |
||||
|
"pages": [ |
||||
|
"pages/webview/webview", |
||||
|
"pages/agreement/agreement", |
||||
|
"pages/notice/notice", |
||||
|
"pages/consultation/consultation", |
||||
|
"pages/info/info", |
||||
|
"pages/noticeDetail/noticeDetail", |
||||
|
"pages/newsDetail/newsDetail" |
||||
|
] |
||||
|
}, |
||||
|
{ |
||||
|
"root": "subpages/changegrid", |
||||
|
"name": "changeGrid", |
||||
|
"pages": [ |
||||
|
"pages/changeGrid/changeGrid" |
||||
|
] |
||||
|
}, |
||||
|
{ |
||||
|
"root": "subpages/association", |
||||
|
"name": "association", |
||||
|
"pages": [ |
||||
|
"pages/joinassociation/joinassociation", |
||||
|
"pages/createassociation/createassociation", |
||||
|
"pages/associationMember/associationMember", |
||||
|
"pages/associationDetail/associationDetail", |
||||
|
"pages/inviteFriend/inviteFriend", |
||||
|
"pages/incomingVerify/incomingVerify", |
||||
|
"pages/unpassAssociation/unpassAssociation", |
||||
|
"pages/topicList/topicList", |
||||
|
"pages/addTopic/addTopic", |
||||
|
"pages/topicDetail/topicDetail", |
||||
|
"pages/replyOrRemark/replyOrRemark", |
||||
|
"pages/changeToIssue/changeToIssue" |
||||
|
] |
||||
|
}, |
||||
|
{ |
||||
|
"root": "subpages/heart", |
||||
|
"pages": [ |
||||
|
"pages/heartDetail/heartDetail", |
||||
|
"pages/leaderboard/leaderboard", |
||||
|
"pages/myNews/myNews", |
||||
|
"pages/clockIn/clockIn", |
||||
|
"pages/volunteer/volunteer", |
||||
|
"pages/signed/signed", |
||||
|
"pages/refusedOrEndedDetail/refusedOrEndedDetail", |
||||
|
"pages/cancelDetail/cancelDetail" |
||||
|
] |
||||
|
}, |
||||
|
{ |
||||
|
"root": "subpages/discussion/", |
||||
|
"name": "discussion", |
||||
|
"pages": [ |
||||
|
"pages/addIssue/addIssue", |
||||
|
"pages/discussionDetail/discussionDetail", |
||||
|
"pages/publishEvaluation/publishEvaluation", |
||||
|
"pages/remarkOrReply/remarkOrReply", |
||||
|
"pages/searchDiscussion/searchDiscussion", |
||||
|
"pages/categoryList/categoryList" |
||||
|
] |
||||
|
}, |
||||
|
{ |
||||
|
"root": "subpages/mine", |
||||
|
"name": "mine", |
||||
|
"pages": [ |
||||
|
"pages/eventDetail/eventDetail", |
||||
|
"pages/company/company", |
||||
|
"pages/companyInfo/companyInfo", |
||||
|
"pages/inviteRecord/inviteRecord", |
||||
|
"pages/gridManage/gridManage" |
||||
|
] |
||||
|
} |
||||
|
], |
||||
|
"preloadRule": { |
||||
|
"pages/index/index": { |
||||
|
"network": "all", |
||||
|
"packages": [ |
||||
|
"subpages/changegrid", |
||||
|
"subpages/home" |
||||
|
] |
||||
|
}, |
||||
|
"pages/discussion/discussion": { |
||||
|
"network": "all", |
||||
|
"packages": [ |
||||
|
"discussion" |
||||
|
] |
||||
|
}, |
||||
|
"pages/association/association": { |
||||
|
"network": "all", |
||||
|
"packages": [ |
||||
|
"subpages/association" |
||||
|
] |
||||
|
}, |
||||
|
"pages/mine/mine": { |
||||
|
"network": "all", |
||||
|
"packages": [ |
||||
|
"mine" |
||||
|
] |
||||
|
} |
||||
|
}, |
||||
|
"tabBar": { |
||||
|
"color": "#666666", |
||||
|
"selectedColor": "#FF0000", |
||||
|
"backgroundColor": "#FFFFFF", |
||||
|
"borderStyle": "white", |
||||
|
"list": [ |
||||
|
{ |
||||
|
"pagePath": "pages/index/index", |
||||
|
"text": "首页", |
||||
|
"iconPath": "images/home.png", |
||||
|
"selectedIconPath": "images/homeSelected.png" |
||||
|
}, |
||||
|
{ |
||||
|
"pagePath": "pages/discussion/discussion", |
||||
|
"text": "党群议事", |
||||
|
"iconPath": "images/discuss.png", |
||||
|
"selectedIconPath": "images/discussSelected.png" |
||||
|
}, |
||||
|
{ |
||||
|
"pagePath": "pages/association/association", |
||||
|
"text": "邻里党群", |
||||
|
"iconPath": "images/association.png", |
||||
|
"selectedIconPath": "images/association-select.png" |
||||
|
}, |
||||
|
{ |
||||
|
"pagePath": "pages/heart/heart", |
||||
|
"text": "初心互助", |
||||
|
"iconPath": "images/mutual.png", |
||||
|
"selectedIconPath": "images/mutualSelected.png" |
||||
|
}, |
||||
|
{ |
||||
|
"pagePath": "pages/mine/mine", |
||||
|
"text": "我的", |
||||
|
"iconPath": "images/mine.png", |
||||
|
"selectedIconPath": "images/mineSelected.png" |
||||
|
} |
||||
|
] |
||||
|
}, |
||||
|
"window": { |
||||
|
"backgroundTextStyle": "light", |
||||
|
"navigationBarBackgroundColor": "#fff", |
||||
|
"navigationBarTitleText": "WeChat", |
||||
|
"navigationBarTextStyle": "black" |
||||
|
}, |
||||
|
"networkTimeout": { |
||||
|
"request": 60000 |
||||
|
}, |
||||
|
"permission": { |
||||
|
"scope.userLocation": { |
||||
|
"desc": "党群e家将获取您的位置信息" |
||||
|
} |
||||
|
}, |
||||
|
"navigateToMiniProgramAppIdList": [ |
||||
|
"wx9f20a46906ab2c3e" |
||||
|
], |
||||
|
"sitemapLocation": "sitemap84.json", |
||||
|
"serviceProviderTicket": "BhBC8k6Lkgi+6uDaV2haUUUH7ZC81tEpXdNMtSxiPnrYRxkRxMu5f6gprJ5i+leAKUxHM1E5YWc3P9vtgTtu2BULafIVikYURVk=" |
||||
|
} |
@ -0,0 +1,68 @@ |
|||||
|
/**app.wxss**/ |
||||
|
/* Wux Weapp Utility 工具类 */ |
||||
|
@import './dist/styles/index.wxss'; |
||||
|
|
||||
|
.card { |
||||
|
display: flex; |
||||
|
margin: 10px 10px 10px 10px; |
||||
|
background: #ffffff; |
||||
|
border-radius: 8px; |
||||
|
height: calc(100% - 20px); |
||||
|
box-shadow: 0px 0px 5px #eeeeee; |
||||
|
flex-direction: column; |
||||
|
} |
||||
|
.fixed{ |
||||
|
margin: auto; |
||||
|
position: fixed; |
||||
|
bottom: 50px; |
||||
|
left: 0; |
||||
|
right: 0; |
||||
|
} |
||||
|
.fixed2{ |
||||
|
margin: auto; |
||||
|
position: fixed; |
||||
|
bottom: 125px; |
||||
|
left: 0; |
||||
|
right: 0; |
||||
|
} |
||||
|
.buttons { |
||||
|
width: 560rpx; |
||||
|
height: 84rpx; |
||||
|
font-size: 32rpx; |
||||
|
font-weight: bold; |
||||
|
margin: auto; |
||||
|
left: 0; |
||||
|
right: 0; |
||||
|
} |
||||
|
.btn_label{ |
||||
|
position: absolute; |
||||
|
color: #fff; |
||||
|
z-index: 99; |
||||
|
width: 560rpx; |
||||
|
height: 84rpx; |
||||
|
text-align: center; |
||||
|
line-height: 84rpx; |
||||
|
} |
||||
|
.btn_label2{ |
||||
|
position: absolute; |
||||
|
color: #fff; |
||||
|
z-index: 99; |
||||
|
width: 560rpx; |
||||
|
height: 84rpx; |
||||
|
text-align: center; |
||||
|
line-height: 84rpx; |
||||
|
} |
||||
|
.ic_btn { |
||||
|
width: 560rpx; |
||||
|
height: 84rpx; |
||||
|
position: fixed; |
||||
|
} |
||||
|
.ic_btn2 { |
||||
|
width: 560rpx; |
||||
|
height: 84rpx; |
||||
|
} |
||||
|
.btn { |
||||
|
width: 560rpx; |
||||
|
height: 84rpx; |
||||
|
opacity: 0; |
||||
|
} |
@ -0,0 +1,74 @@ |
|||||
|
var api = require('../../utils/activity.js') |
||||
|
|
||||
|
const app = getApp() |
||||
|
Component({ |
||||
|
properties: { |
||||
|
state: Number |
||||
|
}, |
||||
|
data: { |
||||
|
activityList: [], |
||||
|
nomore: false |
||||
|
}, |
||||
|
attached: function() {}, |
||||
|
ready: function() {}, |
||||
|
pageLifetimes: { |
||||
|
show: function() {}, |
||||
|
}, |
||||
|
methods: { |
||||
|
getActivityList(params) { |
||||
|
let that = this |
||||
|
if (params.qkdat == true) { |
||||
|
console.log('清空') |
||||
|
that.setData({ |
||||
|
activityList: [], |
||||
|
nomore: false |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
api.getActivityList(params).then((res) => { |
||||
|
console.log(res.data) |
||||
|
that.setData({ |
||||
|
activityList: that.data.activityList.concat(res.data) |
||||
|
}) |
||||
|
console.log(res.data.length) |
||||
|
//数据访问成功
|
||||
|
var myEventDetail = { |
||||
|
listLength: res.data.length |
||||
|
} |
||||
|
that.triggerEvent('toActDetail', myEventDetail) |
||||
|
if (res.data.length == 0) { |
||||
|
that.setData({ |
||||
|
nomore: true |
||||
|
}) |
||||
|
} |
||||
|
}) |
||||
|
}, |
||||
|
|
||||
|
toActDetail(e) { |
||||
|
const id = e.currentTarget.dataset.id |
||||
|
const actcurrentstate = e.currentTarget.dataset.actcurrentstate |
||||
|
const signupflag = e.currentTarget.dataset.signupflag |
||||
|
this.triggerEvent('toActDetail', { |
||||
|
actId: id |
||||
|
}) |
||||
|
wx.navigateTo({ |
||||
|
url: `/subpages/heart/pages/heartDetail/heartDetail?id=${id}&actcurrentstate=${actcurrentstate}&signupflag=${signupflag}` |
||||
|
}) |
||||
|
}, |
||||
|
updateActivityList(params) { |
||||
|
api.getActivityList(params).then(res => { |
||||
|
console.log('详情回列表刷新数据', res) |
||||
|
const index = this.data.activityList.findIndex(item => item.id === res.data[0].id) |
||||
|
if (index > -1) { |
||||
|
this.data.activityList.splice(index, 1, res.data[0]) |
||||
|
} else { |
||||
|
this.data.activityList.splice(index, 1) |
||||
|
} |
||||
|
this.setData({ |
||||
|
activityList: this.data.activityList |
||||
|
}) |
||||
|
}) |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
}) |
@ -0,0 +1,3 @@ |
|||||
|
{ |
||||
|
"component": true |
||||
|
} |
@ -0,0 +1,38 @@ |
|||||
|
<view class="layout" wx:for="{{activityList}}"> |
||||
|
<view data-id="{{item.id}}" |
||||
|
data-actCurrentState="{{item.actCurrentState}}" |
||||
|
data-signupFlag="{{item.signupFlag}}" |
||||
|
bindtap="toActDetail"> |
||||
|
<view class="img"> |
||||
|
<image class="imgsrc" src="{{item.headPic}}" mode="aspectFill"/> |
||||
|
<view class="user-state" wx:if="{{item.actCurrentState=='0'}}">报名中</view> |
||||
|
<view class="user-state" wx:if="{{item.actCurrentState=='1'}}">已报满</view> |
||||
|
<view class="user-state" wx:if="{{item.actCurrentState=='2'}}">未开始</view> |
||||
|
<view class="user-state" wx:if="{{item.actCurrentState=='3'}}">进行中</view> |
||||
|
<view class="user-state" wx:if="{{item.actCurrentState=='4'}}">已结束</view> |
||||
|
</view> |
||||
|
<view class="infos"> |
||||
|
<view class="infos_title">{{item.title}}</view> |
||||
|
<view class="infos_times"> |
||||
|
<view> |
||||
|
<image class="imgsize" src="/images/when.png" /> |
||||
|
活动时间:{{item.actStartTime}}至 |
||||
|
</view> |
||||
|
<view class="endtime">{{item.actEndTime}}</view> |
||||
|
<view> |
||||
|
<image class="imgsize" src="/images/where.png" /> |
||||
|
<text>活动地点:{{item.actAddress}}</text> |
||||
|
</view> |
||||
|
</view> |
||||
|
<view class="infos_nums"> |
||||
|
|
||||
|
<span wx:if="{{item.actQuotaCategory == 0}}" class="total">不限名额</span> |
||||
|
<span wx:else class="total">活动名额 {{item.actQuota}}人</span> |
||||
|
<span class="signed">已报名 {{item.signupNum}}人</span> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
<image class="signed-logo" wx:if="{{item.signupFlag=='1'}}" src="/images/signed.png" /> |
||||
|
</view> |
||||
|
<!-- <view hidden="{{nomore}}" class="loadmore">上滑加载更多</view> |
||||
|
<view hidden="{{!nomore}}" class="loadmore">没有更多了~</view> --> |
@ -0,0 +1,161 @@ |
|||||
|
.layout { |
||||
|
display: table; |
||||
|
width: calc(100% - 40rpx); |
||||
|
height: 276rpx; |
||||
|
border-radius: 10rpx; |
||||
|
background: #fff; |
||||
|
margin: 20rpx 20rpx 0rpx 20rpx; |
||||
|
/* flex-direction: column; |
||||
|
justify-content: space-between; |
||||
|
box-sizing: border-box; */ |
||||
|
} |
||||
|
|
||||
|
.img { |
||||
|
display: table-cell; |
||||
|
width: 220rpx; |
||||
|
padding: 20rpx 20rpx 10rpx 20rpx; |
||||
|
height: 246rpx; |
||||
|
} |
||||
|
|
||||
|
.img .imgsrc { |
||||
|
width: 220rpx; |
||||
|
height: 246rpx; |
||||
|
background: #f1f1f1; |
||||
|
border-radius: 16rpx; |
||||
|
position: absolute; |
||||
|
} |
||||
|
|
||||
|
.left { |
||||
|
display: table-cell; |
||||
|
padding: 20rpx 20rpx 10rpx 20rpx; |
||||
|
width: 220rpx; |
||||
|
height: 246rpx; |
||||
|
border-radius: 16rpx; |
||||
|
overflow: hidden; |
||||
|
margin-right: 20rpx; |
||||
|
position: relative; |
||||
|
} |
||||
|
|
||||
|
.activity-image { |
||||
|
width: 100%; |
||||
|
height: 100%; |
||||
|
object-fit: cover; |
||||
|
} |
||||
|
|
||||
|
.user-state { |
||||
|
position: absolute; |
||||
|
z-index: 999; |
||||
|
font-size: 24rpx; |
||||
|
color: #fff; |
||||
|
width: 92rpx; |
||||
|
height: 36rpx; |
||||
|
line-height: 37rpx; |
||||
|
text-align: center; |
||||
|
border-radius: 16rpx 0; |
||||
|
background: #d1d1d1; |
||||
|
} |
||||
|
|
||||
|
.signed-logo { |
||||
|
width: 174rpx; |
||||
|
height: 118rpx; |
||||
|
right: 20rpx; |
||||
|
margin: -262rpx 20rpx 0rpx 0rpx; |
||||
|
/* object-fit: cover; *//* right: 0; |
||||
|
top: 20rpx; */ |
||||
|
position: absolute; |
||||
|
z-index: 9999; |
||||
|
} |
||||
|
|
||||
|
.infos { |
||||
|
display: table-cell; |
||||
|
padding: 20rpx 20rpx 10rpx 0rpx; |
||||
|
height: 246rpx; |
||||
|
vertical-align: top; |
||||
|
-webkit-box-sizing: border-box; |
||||
|
-moz-box-sizing: border-box; |
||||
|
box-sizing: border-box; |
||||
|
} |
||||
|
|
||||
|
.infos .infos_title { |
||||
|
font-size: 36rpx; |
||||
|
line-height: 50rpx; |
||||
|
height: 100rpx; |
||||
|
overflow: hidden; |
||||
|
color: #333; |
||||
|
display: -webkit-box; |
||||
|
-webkit-box-orient: vertical; |
||||
|
-webkit-line-clamp: 2; |
||||
|
word-break: break-all; |
||||
|
} |
||||
|
|
||||
|
.infos .infos_times { |
||||
|
font-size: 24rpx; |
||||
|
height: 100rpx; |
||||
|
overflow: hidden; |
||||
|
color: #a8a8a8; |
||||
|
} |
||||
|
|
||||
|
.infos .infos_times view { |
||||
|
height: 28rpx; |
||||
|
padding-top: 4rpx; |
||||
|
display: flex; |
||||
|
align-items: center; |
||||
|
} |
||||
|
|
||||
|
.infos .infos_times view text { |
||||
|
display: -webkit-box; |
||||
|
-webkit-box-orient: vertical; |
||||
|
-webkit-line-clamp: 1; |
||||
|
} |
||||
|
|
||||
|
.endtime { |
||||
|
text-indent: 145rpx; |
||||
|
} |
||||
|
|
||||
|
.imgsize { |
||||
|
width: 24rpx; |
||||
|
height: 24rpx; |
||||
|
} |
||||
|
|
||||
|
.infos .infos_nums { |
||||
|
font-size: 26rpx; |
||||
|
height: 36rpx; |
||||
|
color: #666; |
||||
|
} |
||||
|
|
||||
|
.infos .infos_nums { |
||||
|
height: 40rpx; |
||||
|
width: 100%; |
||||
|
display: table; |
||||
|
} |
||||
|
|
||||
|
.loadmore { |
||||
|
width: 100%; |
||||
|
text-align: center; |
||||
|
height: 50px; |
||||
|
line-height: 50px; |
||||
|
background: #f6f8f8; |
||||
|
font-size: 12px; |
||||
|
color: #999; |
||||
|
} |
||||
|
|
||||
|
.total, .signed { |
||||
|
display: block; |
||||
|
font-size: 26rpx; |
||||
|
padding: 0px 20rpx 0px 20rpx; |
||||
|
height: 40rpx; |
||||
|
line-height: 40rpx; |
||||
|
border-radius: 20rpx; |
||||
|
margin: 10rpx 20rpx 0rpx 0rpx; |
||||
|
float: left; |
||||
|
} |
||||
|
|
||||
|
.total { |
||||
|
background: #d9d9d9; |
||||
|
color: #666; |
||||
|
} |
||||
|
|
||||
|
.signed { |
||||
|
background: #ffeaea; |
||||
|
color: #fc5555; |
||||
|
} |
@ -0,0 +1,34 @@ |
|||||
|
Component({ |
||||
|
data: { |
||||
|
visible: false |
||||
|
}, |
||||
|
properties: { |
||||
|
completeInfoDialogVisible: { |
||||
|
type: Boolean, |
||||
|
value: false, |
||||
|
observer (value) { |
||||
|
this.setData({ |
||||
|
visible: !this.data.visible |
||||
|
}) |
||||
|
} |
||||
|
} |
||||
|
}, |
||||
|
methods: { |
||||
|
navigateToComplete () { |
||||
|
wx.navigateTo({ |
||||
|
url: '/pages/complete/complete' |
||||
|
}) |
||||
|
this.setData({ |
||||
|
visible: false |
||||
|
}) |
||||
|
}, |
||||
|
closeDialog () { |
||||
|
this.setData({ |
||||
|
visible: false |
||||
|
}) |
||||
|
}, |
||||
|
catchmove () { |
||||
|
|
||||
|
} |
||||
|
} |
||||
|
}) |
@ -0,0 +1,3 @@ |
|||||
|
{ |
||||
|
"component": true |
||||
|
} |
@ -0,0 +1,13 @@ |
|||||
|
<view class="complete-info-dialog" wx:if="{{visible}}" catchtouchmove="catchmove"> |
||||
|
<view class="content"> |
||||
|
<view class="close-dialog"> |
||||
|
<image bindtap="closeDialog" src="../../images/association/IC_guanbi@2x.png" /> |
||||
|
</view> |
||||
|
<view class="title">提示</view> |
||||
|
<view class="tip">请先完善用户信息</view> |
||||
|
<view class="operation"> |
||||
|
<view class="cancel" bindtap="closeDialog">下次再说</view> |
||||
|
<view class="confirm" bindtap="navigateToComplete">立即完善</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
@ -0,0 +1,75 @@ |
|||||
|
.complete-info-dialog { |
||||
|
width: 100%; |
||||
|
height:100vh; |
||||
|
position: fixed; |
||||
|
left: 0rpx; |
||||
|
top: 0rpx; |
||||
|
background: rgba(0,0,0, 0.6); |
||||
|
display: flex; |
||||
|
justify-content: center; |
||||
|
align-items: center; |
||||
|
z-index: 1000; |
||||
|
} |
||||
|
.complete-info-dialog .content { |
||||
|
width: 530rpx; |
||||
|
border-radius: 16rpx; |
||||
|
background: #fff; |
||||
|
box-sizing: border-box; |
||||
|
padding: 0 20rpx; |
||||
|
} |
||||
|
.complete-info-dialog .content .close-dialog { |
||||
|
width: 100%; |
||||
|
height: 60rpx; |
||||
|
display: flex; |
||||
|
align-items: center; |
||||
|
justify-content: flex-end; |
||||
|
} |
||||
|
.complete-info-dialog .content .close-dialog image { |
||||
|
width:24rpx; |
||||
|
height:24rpx; |
||||
|
} |
||||
|
.complete-info-dialog .content .title { |
||||
|
font-size: 36rpx; |
||||
|
color: #333; |
||||
|
width:100%; |
||||
|
line-height: 60rpx; |
||||
|
height: 60rpx; |
||||
|
text-align: center; |
||||
|
margin-bottom: 27rpx; |
||||
|
} |
||||
|
.complete-info-dialog .content .tip { |
||||
|
font-size: 32rpx; |
||||
|
color: #666; |
||||
|
line-height: 50rpx; |
||||
|
text-align:center; |
||||
|
margin-bottom: 36rpx; |
||||
|
} |
||||
|
.complete-info-dialog .content .operation { |
||||
|
width: 100%; |
||||
|
height: 105rpx; |
||||
|
box-sizing: border-box; |
||||
|
padding: 15rpx 0; |
||||
|
display: flex; |
||||
|
justify-content: space-around; |
||||
|
align-items: center; |
||||
|
border-top: 1rpx solid #eaeaea; |
||||
|
} |
||||
|
.complete-info-dialog .content .operation .cancel { |
||||
|
width: 100%; |
||||
|
height:100%; |
||||
|
text-align: center; |
||||
|
line-height: 75rpx; |
||||
|
font-size: 36rpx; |
||||
|
color: #666; |
||||
|
} |
||||
|
.complete-info-dialog .content .operation .cancel + .confirm { |
||||
|
border-left: 1rpx solid #eaeaea; |
||||
|
} |
||||
|
.complete-info-dialog .content .operation .confirm { |
||||
|
width: 100%; |
||||
|
height:100%; |
||||
|
text-align: center; |
||||
|
line-height: 75rpx; |
||||
|
font-size: 36rpx; |
||||
|
color: #04BCA0; |
||||
|
} |
@ -0,0 +1,14 @@ |
|||||
|
Component({ |
||||
|
data: { |
||||
|
}, |
||||
|
properties: { |
||||
|
loadMoreVisible: { |
||||
|
type: Boolean, |
||||
|
value: false |
||||
|
}, |
||||
|
loadMoreType: { |
||||
|
type: String, |
||||
|
value: 'loading' |
||||
|
} |
||||
|
} |
||||
|
}) |
@ -0,0 +1,3 @@ |
|||||
|
{ |
||||
|
"component": true |
||||
|
} |
@ -0,0 +1,7 @@ |
|||||
|
<view class="load-more" style="visibility: {{loadMoreVisible ? 'visible' : 'hidden'}}"> |
||||
|
<block wx:if="{{loadMoreType == 'loading'}}"> |
||||
|
<image class="load-image" src="../../images/loading.gif" /> |
||||
|
<view class="load-text">正在加载中...</view> |
||||
|
</block> |
||||
|
<view wx:else class="load-text">没有更多了~</view> |
||||
|
</view> |
@ -0,0 +1,18 @@ |
|||||
|
.load-more { |
||||
|
width: 100%; |
||||
|
height: 100rpx; |
||||
|
background: #f7f7f7; |
||||
|
display: flex; |
||||
|
justify-content: center; |
||||
|
align-items: center; |
||||
|
} |
||||
|
.load-more .load-text { |
||||
|
color: #999; |
||||
|
font-size: 26rpx; |
||||
|
} |
||||
|
.load-more .load-image { |
||||
|
width: 30rpx; |
||||
|
height: 30rpx; |
||||
|
object-fit: cover; |
||||
|
margin-right: 10rpx; |
||||
|
} |
@ -0,0 +1,40 @@ |
|||||
|
const app = getApp() |
||||
|
Component({ |
||||
|
properties: { |
||||
|
navbarData: { //navbarData 由父页面传递的数据,变量名字自命名
|
||||
|
type: Object, |
||||
|
value: {}, |
||||
|
observer: function (newVal, oldVal) {} |
||||
|
} |
||||
|
}, |
||||
|
data: { |
||||
|
height: '', |
||||
|
//默认值 默认显示左上角
|
||||
|
navbarData: { |
||||
|
showCapsule: 1 |
||||
|
} |
||||
|
}, |
||||
|
attached: function () { |
||||
|
// 获取是否是通过分享进入的小程序
|
||||
|
this.setData({ |
||||
|
share: app.globalData.share |
||||
|
}) |
||||
|
// 定义导航栏的高度 方便对齐
|
||||
|
this.setData({ |
||||
|
height: app.globalData.height |
||||
|
}) |
||||
|
}, |
||||
|
methods: { |
||||
|
// 返回上一页面
|
||||
|
_navback() { |
||||
|
wx.navigateBack() |
||||
|
}, |
||||
|
//返回到首页
|
||||
|
_backhome() { |
||||
|
wx.switchTab({ |
||||
|
url: '/pages/index/index', |
||||
|
}) |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
}) |
@ -0,0 +1,3 @@ |
|||||
|
{ |
||||
|
"component": true |
||||
|
} |
@ -0,0 +1,14 @@ |
|||||
|
<view class='nav-wrap' style='height: {{height*2 + 20}}px;'> |
||||
|
<view class='nav-title' style='line-height: {{height*2 + 44}}px;'>{{navbarData.title}}</view> |
||||
|
<view style='display: flex; justify-content: space-around;flex-direction: column'> |
||||
|
<view class='nav-capsule' style='height: {{height*2 + 44}}px;' wx:if='{{navbarData.showCapsule}}'> |
||||
|
<!-- <view bindtap='_navback' wx:if='{{!share}}'> |
||||
|
<image src='/imgs/back-pre.png' mode='aspectFill' class='back-pre'></image> |
||||
|
</view> |
||||
|
<view class='navbar-v-line' wx:if='{{!share}}'></view> --> |
||||
|
<view bindtap='_backhome'> |
||||
|
<image src='/images/back-home.png' mode='aspectFill' class='back-home'></image> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
@ -0,0 +1,53 @@ |
|||||
|
/* 顶部要固定定位 标题要居中 自定义按钮和标题要和右边微信原生的胶囊上下对齐 */ |
||||
|
.nav-wrap { |
||||
|
position: fixed; |
||||
|
width: 100%; |
||||
|
top: 0; |
||||
|
background: #fff; |
||||
|
color: #000; |
||||
|
z-index: 9999999; |
||||
|
} |
||||
|
/* 标题要居中 */ |
||||
|
.nav-title { |
||||
|
position: absolute; |
||||
|
text-align: center; |
||||
|
max-width: 400rpx; |
||||
|
overflow: hidden; |
||||
|
text-overflow: ellipsis; |
||||
|
white-space: nowrap; |
||||
|
top: 0; |
||||
|
left: 0; |
||||
|
right: 0; |
||||
|
bottom: 0; |
||||
|
margin: auto; |
||||
|
font-size: 36rpx; |
||||
|
color: #2c2b2b; |
||||
|
font-weight: 600; |
||||
|
} |
||||
|
|
||||
|
.nav-capsule { |
||||
|
display: flex; |
||||
|
align-items: center; |
||||
|
margin-left: 30rpx; |
||||
|
width: 140rpx; |
||||
|
justify-content: space-between; |
||||
|
height: 100%; |
||||
|
} |
||||
|
|
||||
|
.navbar-v-line { |
||||
|
width: 1px; |
||||
|
height: 32rpx; |
||||
|
background-color: #e5e5e5; |
||||
|
} |
||||
|
|
||||
|
.back-pre, .back-home { |
||||
|
width: 36rpx; |
||||
|
height: 36rpx; |
||||
|
margin-top: 8rpx; |
||||
|
padding: 10rpx; |
||||
|
} |
||||
|
.nav-capsule .back-home { |
||||
|
width: 36rpx; |
||||
|
height: 36rpx; |
||||
|
margin-top: 6rpx; |
||||
|
} |
@ -0,0 +1,108 @@ |
|||||
|
Component({ |
||||
|
data: { |
||||
|
lastY: '', |
||||
|
translateHeight: 0, |
||||
|
state: -1, |
||||
|
scrollTop: 0, |
||||
|
enablePulldownFresh: false, |
||||
|
platform: '' |
||||
|
}, |
||||
|
options: { |
||||
|
multipleSlots: true |
||||
|
}, |
||||
|
properties: { |
||||
|
upperDistance: { |
||||
|
type: Number, |
||||
|
value: 80 |
||||
|
} |
||||
|
}, |
||||
|
ready() { |
||||
|
this.getSystemInfo() |
||||
|
}, |
||||
|
methods: { |
||||
|
/*解决ios下拉页面可以触发,安卓只有上划页面才可以触发 */ |
||||
|
onPageScroll(e) { |
||||
|
console.log('eonPageScroll', e) |
||||
|
this.data.scrollTop = e.scrollTop |
||||
|
this.data.enablePulldownFresh = false |
||||
|
}, |
||||
|
touchstart(e) { |
||||
|
console.log('下拉开始', e) |
||||
|
console.log('this.data.scrollTop', this.data.scrollTop) |
||||
|
this.data.lastY = e.touches[0].clientY |
||||
|
if (this.data.scrollTop === 0) { |
||||
|
this.data.enablePulldownFresh = true |
||||
|
} else { |
||||
|
this.data.enablePulldownFresh = false |
||||
|
} |
||||
|
}, |
||||
|
touchmove(e) { |
||||
|
console.log('下拉中', e) |
||||
|
let clientY = e.touches[0].clientY |
||||
|
let offset = clientY - this.data.lastY |
||||
|
if (this.data.scrollTop > 0 || offset < 0) { |
||||
|
return false |
||||
|
} |
||||
|
// this.data.translateHeight = offset
|
||||
|
/*解决ios下拉页面遮挡问题 */ |
||||
|
this.setData({ |
||||
|
// translateHeight:this.data.lastY
|
||||
|
translateHeight: 100 |
||||
|
}) |
||||
|
this.data.state = 1 |
||||
|
if (this.data.enablePulldownFresh) { |
||||
|
if (this.data.translateHeight > this.data.upperDistance) { |
||||
|
this.data.state = 2 |
||||
|
} |
||||
|
this.setData({ |
||||
|
translateHeight: this.data.translateHeight > 100 ? 100 : this.data.translateHeight, |
||||
|
state: this.data.state |
||||
|
}) |
||||
|
} |
||||
|
}, |
||||
|
touchend(e) { |
||||
|
if (this.data.translateHeight > this.data.upperDistance) { |
||||
|
// 解决ios下来刷新数据不更新的问题
|
||||
|
if (this.data.platform == 'android') { |
||||
|
if (this.data.enablePulldownFresh) { |
||||
|
this.setData({ |
||||
|
translateHeight: 100, |
||||
|
state: 3 |
||||
|
}) |
||||
|
this.triggerEvent('pullDownRefresh') |
||||
|
return |
||||
|
} |
||||
|
this.stopRefresh() |
||||
|
} else { |
||||
|
if (!this.data.enablePulldownFresh) { |
||||
|
this.setData({ |
||||
|
translateHeight: 100, |
||||
|
state: 3 |
||||
|
}) |
||||
|
this.triggerEvent('pullDownRefresh') |
||||
|
return |
||||
|
} |
||||
|
this.stopRefresh() |
||||
|
} |
||||
|
|
||||
|
} else if (this.data.scrollTop <= 0) { |
||||
|
console.log('停止下来刷新') |
||||
|
this.stopRefresh() |
||||
|
} |
||||
|
}, |
||||
|
stopRefresh() { |
||||
|
console.log('下拉刷新结束') |
||||
|
this.setData({ |
||||
|
translateHeight: 0, |
||||
|
state: -1 |
||||
|
}) |
||||
|
}, |
||||
|
getSystemInfo() { |
||||
|
const res = wx.getSystemInfoSync() |
||||
|
console.log('获取手机型号', res) |
||||
|
this.setData({ |
||||
|
platform: res.platform//android,ios
|
||||
|
}) |
||||
|
} |
||||
|
} |
||||
|
}) |
@ -0,0 +1,3 @@ |
|||||
|
{ |
||||
|
"component": true |
||||
|
} |
@ -0,0 +1,9 @@ |
|||||
|
<view class="pulldown-refresh" bindtouchstart="touchstart" bindtouchmove="touchmove" bindtouchend="touchend"> |
||||
|
<view class="pulldown-state"> |
||||
|
<image class="loading" src="../../images/loading.gif" /> |
||||
|
<view class="loading-state">{{state == 1 ? '下拉刷新' : state == 2 ? '松开刷新' : '刷新中...'}}</view> |
||||
|
</view> |
||||
|
<view class="pulldown-content" style="transform: translateY({{translateHeight}}rpx)"> |
||||
|
<slot name="content"></slot> |
||||
|
</view> |
||||
|
</view> |
@ -0,0 +1,28 @@ |
|||||
|
.pulldown-refresh { |
||||
|
box-sizing: border-box; |
||||
|
width:100%; |
||||
|
background: #f7f7f7; |
||||
|
} |
||||
|
.pulldown-refresh .pulldown-state { |
||||
|
width:100%; |
||||
|
height: 100rpx; |
||||
|
display:flex; |
||||
|
justify-content: center; |
||||
|
align-items: center; |
||||
|
margin-bottom: -100rpx; |
||||
|
} |
||||
|
.pulldown-refresh .pulldown-state .loading { |
||||
|
width: 30rpx; |
||||
|
height: 30rpx; |
||||
|
margin-right: 10rpx; |
||||
|
} |
||||
|
.pulldown-refresh .pulldown-state .loading-state { |
||||
|
font-size: 25rpx; |
||||
|
color:#666; |
||||
|
} |
||||
|
|
||||
|
.pulldown-refresh .pulldown-content { |
||||
|
width:100%; |
||||
|
height:auto; |
||||
|
transition: transform 0.05s linear; |
||||
|
} |
@ -0,0 +1 @@ |
|||||
|
"use strict";var _baseComponent=_interopRequireDefault(require("../helpers/baseComponent")),_classNames7=_interopRequireDefault(require("../helpers/classNames"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function ownKeys(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)}return n}function _objectSpread(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?ownKeys(n,!0).forEach(function(e){_defineProperty(t,e,n[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):ownKeys(n).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))})}return t}function _defineProperty(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var defaults={prefixCls:"wux-actionsheet",theme:"ios",className:"",titleText:"",buttons:[],buttonClicked:function(){},cancelText:"取消",cancel:function(){}};(0,_baseComponent.default)({useFunc:!0,data:defaults,computed:{classes:["prefixCls, theme, buttons, cancelText",function(n,e,t,r){var o,c=(0,_classNames7.default)(n),a="".concat(n,"__popup"),s=(0,_classNames7.default)("".concat(n,"__content"),(_defineProperty(o={},"".concat(n,"__content--theme-").concat(e),e),_defineProperty(o,"".concat(n,"__content--has-cancel"),r),o)),i=(0,_classNames7.default)("".concat(n,"__group"),_defineProperty({},"".concat(n,"__group--options"),!0)),u="".concat(n,"__title"),d=(0,_classNames7.default)("".concat(n,"__button"),_defineProperty({},"".concat(n,"__button--destructive"),!0));return{wrap:c,popup:a,content:s,options:i,title:u,button:t.map(function(e){var t;return{wrap:(0,_classNames7.default)("".concat(n,"__button"),(_defineProperty(t={},"".concat(n,"__button--option"),!0),_defineProperty(t,"".concat(n,"__button--disabled"),e.disabled),_defineProperty(t,"".concat(e.className),e.className),t)),hover:e.hoverClass&&"default"!==e.hoverClass?e.hoverClass:"".concat(n,"__button--hover")}}),icon:"".concat(n,"__icon"),text:"".concat(n,"__text"),destructive:d,group:(0,_classNames7.default)("".concat(n,"__group"),_defineProperty({},"".concat(n,"__group--cancel"),!0)),cancel:(0,_classNames7.default)("".concat(n,"__button"),_defineProperty({},"".concat(n,"__button--cancel"),!0)),hover:"".concat(n,"__button--hover")}}]},methods:{showSheet:function(e){var t=0<arguments.length&&void 0!==e?e:{},n=this.$$mergeOptionsAndBindMethods(Object.assign({},defaults,t));return this.removed=!1,this.$$setData(_objectSpread({in:!0},n)),this.cancel.bind(this)},removeSheet:function(e){if(this.removed)return!1;this.removed=!0,this.$$setData({in:!1}),"function"==typeof e&&e(this.data.buttons)},buttonClicked:function(e){var t=e.currentTarget.dataset.index;!0===this.fns.buttonClicked(t,this.data.buttons[t])&&this.removeSheet()},destructiveButtonClicked:function(){!0===this.fns.destructiveButtonClicked()&&this.removeSheet()},cancel:function(){this.removeSheet(this.fns.cancel)},bindgetuserinfo:function(e){this.triggerEvent("getuserinfo",_objectSpread({},e.detail,{},e.currentTarget.dataset))},bindcontact:function(e){this.triggerEvent("contact",_objectSpread({},e.detail,{},e.currentTarget.dataset))},bindgetphonenumber:function(e){this.triggerEvent("getphonenumber",_objectSpread({},e.detail,{},e.currentTarget.dataset))},bindopensetting:function(e){this.triggerEvent("opensetting",_objectSpread({},e.detail,{},e.currentTarget.dataset))},onError:function(e){this.triggerEvent("error",_objectSpread({},e.detail,{},e.currentTarget.dataset))}}}); |
@ -0,0 +1,6 @@ |
|||||
|
{ |
||||
|
"component": true, |
||||
|
"usingComponents": { |
||||
|
"wux-popup": "../popup/index" |
||||
|
} |
||||
|
} |
@ -0,0 +1,41 @@ |
|||||
|
<wux-popup wux-content-class="{{ theme === 'ios' ? classes.popup : '' }}" position="bottom" visible="{{ in }}" safeArea="bottom" bind:close="cancel"> |
||||
|
<view class="wux-class {{ classes.wrap }}"> |
||||
|
<view class="{{ classes.content }}"> |
||||
|
<view class="{{ classes.options }}"> |
||||
|
<view class="{{ classes.title }}" wx:if="{{ titleText }}">{{ titleText }}</view> |
||||
|
<block wx:for="{{ buttons }}" wx:for-item="button" wx:key="index"> |
||||
|
<button |
||||
|
class="{{ classes.button[index].wrap }}" |
||||
|
data-index="{{ index }}" |
||||
|
disabled="{{ button.disabled }}" |
||||
|
open-type="{{ button.openType }}" |
||||
|
hover-class="{{ !button.disabled ? classes.button[index].hover : 'none' }}" |
||||
|
hover-stop-propagation="{{ button.hoverStopPropagation }}" |
||||
|
hover-start-time="{{ button.hoverStartTime }}" |
||||
|
hover-stay-time="{{ button.hoverStayTime }}" |
||||
|
lang="{{ button.lang }}" |
||||
|
bindgetuserinfo="bindgetuserinfo" |
||||
|
session-from="{{ button.sessionFrom }}" |
||||
|
send-message-title="{{ button.sendMessageTitle }}" |
||||
|
send-message-path="{{ button.sendMessagePath }}" |
||||
|
send-message-img="{{ button.sendMessageImg }}" |
||||
|
show-message-card="{{ button.showMessageCard }}" |
||||
|
bindcontact="bindcontact" |
||||
|
bindgetphonenumber="bindgetphonenumber" |
||||
|
app-parameter="{{ button.appParameter }}" |
||||
|
binderror="onError" |
||||
|
bindopensetting="bindopensetting" |
||||
|
catchtap="buttonClicked" |
||||
|
> |
||||
|
<image class="{{ classes.icon }}" src="{{ button.icon }}" wx:if="{{ button.icon }}" /> |
||||
|
<text class="{{ classes.text }}">{{ button.text }}</text> |
||||
|
</button> |
||||
|
</block> |
||||
|
<button class="{{ classes.destructive }}" wx:if="{{ destructiveText }}" catchtap="destructiveButtonClicked">{{ destructiveText }}</button> |
||||
|
</view> |
||||
|
<view class="{{ classes.group }}" wx:if="{{ cancelText }}"> |
||||
|
<button class="{{ classes.cancel }}" hover-class="{{ classes.hover }}" catchtap="cancel">{{ cancelText }}</button> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
</wux-popup> |
@ -0,0 +1 @@ |
|||||
|
.wux-actionsheet__popup{background-color:transparent}.wux-actionsheet__content{margin-left:16rpx;margin-right:16rpx;width:auto;overflow:hidden}.wux-actionsheet__content--theme-wx{margin-left:0;margin-right:0;margin-bottom:0}.wux-actionsheet__content--theme-wx .wux-actionsheet__group{border-radius:0;margin-bottom:12rpx}.wux-actionsheet__content--theme-wx .wux-actionsheet__group--options{background-color:#fff}.wux-actionsheet__content--theme-wx .wux-actionsheet__group--cancel{margin-bottom:0}.wux-actionsheet__content--theme-wx .wux-actionsheet__button{font-size:36rpx;color:#000}.wux-actionsheet__content--theme-wx .wux-actionsheet__button--cancel{font-weight:400}.wux-actionsheet__content--theme-wx.wux-actionsheet__content--has-cancel{background-color:#efeff4}.wux-actionsheet__group{margin-bottom:16rpx;border-radius:8rpx;background-color:#fff;overflow:hidden}.wux-actionsheet__group--options{background-color:#f1f2f3}.wux-actionsheet__title{padding:32rpx;color:#8f8f8f;text-align:center;font-size:26rpx}.wux-actionsheet__button{position:relative;display:block;margin:0;padding:0;min-width:104rpx;min-height:96rpx;vertical-align:top;text-align:center;text-overflow:ellipsis;cursor:pointer;width:100%;border-radius:0;background-color:transparent;color:#007aff;font-size:42rpx;line-height:96rpx;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.wux-actionsheet__button--hover{box-shadow:none;border-color:#d1d3d6;color:#007aff;background:#e4e5e7}.wux-actionsheet__button--destructive{color:#ff3b30!important}.wux-actionsheet__button--cancel{font-weight:500}.wux-actionsheet__button--disabled{opacity:.3!important}.wux-actionsheet__group .wux-actionsheet__button{border-top:none}.wux-actionsheet__group .wux-actionsheet__button:after{transform:none;transform-origin:none;border:none;border-radius:0;content:" ";position:absolute;left:0;top:0;right:0;height:2rpx;border-top:2rpx solid #d9d9d9;color:#d9d9d9;transform-origin:0 0;transform:scaleY(.5)}.wux-actionsheet__group .wux-actionsheet__button:first-child:last-child:after{border-width:0}.wux-actionsheet__icon{display:inline-block;width:48rpx;height:48rpx;margin-right:20rpx} |
@ -0,0 +1 @@ |
|||||
|
"use strict";var _baseComponent=_interopRequireDefault(require("../helpers/baseComponent")),_classNames2=_interopRequireDefault(require("../helpers/classNames"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _defineProperty(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}(0,_baseComponent.default)({properties:{prefixCls:{type:String,value:"wux-alert"},classNames:{type:null,value:"wux-animate--fadeIn"},theme:{type:String,value:"balanced"},thumb:{type:String,value:""},title:{type:String,value:""},label:{type:String,value:""},closable:{type:Boolean,value:!1}},data:{visible:!0},computed:{classes:["prefixCls, theme",function(e,t){return{wrap:(0,_classNames2.default)(e,_defineProperty({},"".concat(e,"--").concat(t),t)),hd:"".concat(e,"__hd"),thumb:"".concat(e,"__thumb"),bd:"".concat(e,"__bd"),text:"".concat(e,"__text"),desc:"".concat(e,"__desc"),ft:"".concat(e,"__ft"),closable:"".concat(e,"__closable")}}]},methods:{onClose:function(){this.data.closable&&this.setData({visible:!1}),this.triggerEvent("click")},onClick:function(){this.triggerEvent("click")}}}); |
@ -0,0 +1,6 @@ |
|||||
|
{ |
||||
|
"component": true, |
||||
|
"usingComponents": { |
||||
|
"wux-animation-group": "../animation-group/index" |
||||
|
} |
||||
|
} |
@ -0,0 +1,25 @@ |
|||||
|
<wux-animation-group in="{{ visible }}" classNames="{{ classNames }}"> |
||||
|
<view class="wux-class {{ classes.wrap }}" bindtap="onClick"> |
||||
|
<view class="{{ classes.hd }}"> |
||||
|
<block wx:if="{{ thumb }}"> |
||||
|
<image class="{{ classes.thumb }}" src="{{ thumb }}" /> |
||||
|
</block> |
||||
|
<block wx:else> |
||||
|
<slot name="header"></slot> |
||||
|
</block> |
||||
|
</view> |
||||
|
<view class="{{ classes.bd }}"> |
||||
|
<view wx:if="{{ title }}" class="{{ classes.text }}">{{ title }}</view> |
||||
|
<view wx:if="{{ label }}" class="{{ classes.desc }}">{{ label }}</view> |
||||
|
<slot></slot> |
||||
|
</view> |
||||
|
<view class="{{ classes.ft }}"> |
||||
|
<block wx:if="{{ closable }}"> |
||||
|
<view class="{{ classes.closable }}" catchtap="onClose">×</view> |
||||
|
</block> |
||||
|
<block wx:else> |
||||
|
<slot name="footer"></slot> |
||||
|
</block> |
||||
|
</view> |
||||
|
</view> |
||||
|
</wux-animation-group> |
@ -0,0 +1 @@ |
|||||
|
.wux-alert{padding:20rpx 30rpx;position:relative;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;border-radius:4rpx;font-size:28rpx}.wux-alert__thumb{display:block;width:40rpx;height:40rpx;margin-right:10rpx}.wux-alert__bd{-ms-flex:1;flex:1}.wux-alert__text{text-align:left}.wux-alert__desc{text-align:left;line-height:1.2;font-size:24rpx}.wux-alert--light{color:#fff;background-color:#ddd}.wux-alert--stable{color:#fff;background-color:#b2b2b2}.wux-alert--positive{color:#fff;background-color:#387ef5}.wux-alert--calm{color:#fff;background-color:#11c1f3}.wux-alert--assertive{color:#fff;background-color:#ef473a}.wux-alert--balanced{color:#fff;background-color:#33cd5f}.wux-alert--energized{color:#fff;background-color:#ffc900}.wux-alert--royal{color:#fff;background-color:#886aea}.wux-alert--dark{color:#fff;background-color:#444} |
File diff suppressed because one or more lines are too long
@ -0,0 +1,3 @@ |
|||||
|
{ |
||||
|
"component": true |
||||
|
} |
@ -0,0 +1,3 @@ |
|||||
|
<view class="wux-class {{ wrapCls }} {{ animateCss }}" bindtap="onTap" catchtouchmove="{{ disableScroll ? 'noop' : '' }}" bindtransitionend="onTransitionEnd" bindanimationend="onAnimationEnd" wx:if="{{ animateStatus !== 'unmounted' }}" style="{{ extStyle }}"> |
||||
|
<slot></slot> |
||||
|
</view> |
@ -0,0 +1 @@ |
|||||
|
.wux-animate--fadeIn-enter{transition:opacity .3s;opacity:0}.wux-animate--fadeIn-enter-active,.wux-animate--fadeIn-enter-done{opacity:1}.wux-animate--fadeIn-exit{transition:opacity .3s;opacity:1}.wux-animate--fadeIn-exit-active,.wux-animate--fadeIn-exit-done{opacity:0}.wux-animate--fadeInDown-enter{transition:opacity .3s,transform .3s;opacity:0;transform:translate3d(0,-100%,0)}.wux-animate--fadeInDown-enter-active,.wux-animate--fadeInDown-enter-done{opacity:1;transform:none}.wux-animate--fadeInDown-exit{transition:opacity .3s,transform .3s;opacity:1;transform:none}.wux-animate--fadeInDown-exit-active,.wux-animate--fadeInDown-exit-done{opacity:0;transform:translate3d(0,-100%,0)}.wux-animate--fadeInLeft-enter{transition:opacity .3s,transform .3s;opacity:0;transform:translate3d(-100%,0,0)}.wux-animate--fadeInLeft-enter-active,.wux-animate--fadeInLeft-enter-done{opacity:1;transform:none}.wux-animate--fadeInLeft-exit{transition:opacity .3s,transform .3s;opacity:1;transform:none}.wux-animate--fadeInLeft-exit-active,.wux-animate--fadeInLeft-exit-done{opacity:0;transform:translate3d(-100%,0,0)}.wux-animate--fadeInRight-enter{transition:opacity .3s,transform .3s;opacity:0;transform:translate3d(100%,0,0)}.wux-animate--fadeInRight-enter-active,.wux-animate--fadeInRight-enter-done{opacity:1;transform:none}.wux-animate--fadeInRight-exit{transition:opacity .3s,transform .3s;opacity:1;transform:none}.wux-animate--fadeInRight-exit-active,.wux-animate--fadeInRight-exit-done{opacity:0;transform:translate3d(100%,0,0)}.wux-animate--fadeInUp-enter{transition:opacity .3s,transform .3s;opacity:0;transform:translate3d(0,100%,0)}.wux-animate--fadeInUp-enter-active,.wux-animate--fadeInUp-enter-done{opacity:1;transform:none}.wux-animate--fadeInUp-exit{transition:opacity .3s,transform .3s;opacity:1;transform:none}.wux-animate--fadeInUp-exit-active,.wux-animate--fadeInUp-exit-done{opacity:0;transform:translate3d(0,100%,0)}.wux-animate--slideInUp-enter{transition:transform .3s;transform:translate3d(0,100%,0);visibility:visible}.wux-animate--slideInUp-enter-active,.wux-animate--slideInUp-enter-done{transform:translateZ(0)}.wux-animate--slideInUp-exit{transition:transform .3s;transform:translateZ(0)}.wux-animate--slideInUp-exit-active,.wux-animate--slideInUp-exit-done{transform:translate3d(0,100%,0);visibility:visible}.wux-animate--slideInDown-enter{transition:transform .3s;transform:translate3d(0,-100%,0);visibility:visible}.wux-animate--slideInDown-enter-active,.wux-animate--slideInDown-enter-done{transform:translateZ(0)}.wux-animate--slideInDown-exit{transition:transform .3s;transform:translateZ(0)}.wux-animate--slideInDown-exit-active,.wux-animate--slideInDown-exit-done{transform:translate3d(0,-100%,0);visibility:visible}.wux-animate--slideInLeft-enter{transition:transform .3s;transform:translate3d(-100%,0,0);visibility:visible}.wux-animate--slideInLeft-enter-active,.wux-animate--slideInLeft-enter-done{transform:translateZ(0)}.wux-animate--slideInLeft-exit{transition:transform .3s;transform:translateZ(0)}.wux-animate--slideInLeft-exit-active,.wux-animate--slideInLeft-exit-done{transform:translate3d(-100%,0,0);visibility:visible}.wux-animate--slideInRight-enter{transition:transform .3s;transform:translate3d(100%,0,0);visibility:visible}.wux-animate--slideInRight-enter-active,.wux-animate--slideInRight-enter-done{transform:none}.wux-animate--slideInRight-exit{transition:transform .3s;transform:none}.wux-animate--slideInRight-exit-active,.wux-animate--slideInRight-exit-done{transform:translate3d(100%,0,0);visibility:visible}.wux-animate--zoom-enter{transition:all .3s cubic-bezier(.215,.61,.355,1);opacity:.01;transform:scale(.75)}.wux-animate--zoom-enter-active,.wux-animate--zoom-enter-done{opacity:1;transform:none}.wux-animate--zoom-exit{transition:all .25s linear;transform:none}.wux-animate--zoom-exit-active,.wux-animate--zoom-exit-done{opacity:.01;transform:scale(.75)}.wux-animate--punch-enter{transition:all .3s cubic-bezier(.215,.61,.355,1);opacity:.01;transform:scale(1.35)}.wux-animate--punch-enter-active,.wux-animate--punch-enter-done{opacity:1;transform:none}.wux-animate--punch-exit{transition:all .25s linear;transform:none}.wux-animate--punch-exit-active,.wux-animate--punch-exit-done{opacity:.01;transform:scale(1.35)} |
@ -0,0 +1 @@ |
|||||
|
"use strict";var _baseComponent=_interopRequireDefault(require("../helpers/baseComponent")),_classNames2=_interopRequireDefault(require("../helpers/classNames")),_styleToCssString=_interopRequireDefault(require("../helpers/styleToCssString"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _slicedToArray(e,t){return _arrayWithHoles(e)||_iterableToArrayLimit(e,t)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}function _iterableToArrayLimit(e,t){var r=[],n=!0,a=!1,i=void 0;try{for(var l,o=e[Symbol.iterator]();!(n=(l=o.next()).done)&&(r.push(l.value),!t||r.length!==t);n=!0);}catch(e){a=!0,i=e}finally{try{n||null==o.return||o.return()}finally{if(a)throw i}}return r}function _arrayWithHoles(e){if(Array.isArray(e))return e}function _defineProperty(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}(0,_baseComponent.default)({properties:{prefixCls:{type:String,value:"wux-avatar"},shape:{type:String,value:"circle"},size:{type:String,value:"default"},src:{type:String,value:""},bodyStyle:{type:[String,Object],value:"",observer:function(e){this.setData({extStyle:(0,_styleToCssString.default)(e)})}},scale:{type:Boolean,value:!1}},data:{extStyle:"",childrenStyle:""},computed:{classes:["prefixCls, shape, size, src",function(e,t,r,n){var a;return{wrap:(0,_classNames2.default)(e,(_defineProperty(a={},"".concat(e,"--").concat(t),t),_defineProperty(a,"".concat(e,"--").concat(r),r),_defineProperty(a,"".concat(e,"--thumb"),n),a)),string:"".concat(e,"__string")}}]},methods:{setScale:function(){var l=this,e=this.data.prefixCls,t=wx.createSelectorQuery().in(this);t.select(".".concat(e)).boundingClientRect(),t.select(".".concat(e,"__string")).boundingClientRect(),t.exec(function(e){if(!e.filter(function(e){return!e}).length){var t=_slicedToArray(e,2),r=t[0],n=t[1],a=r.width-8<n.width?(r.width-8)/n.width:1,i=1!=a?"position: absolute; display: inline-block; transform: scale(".concat(a,"); left: calc(50% - ").concat(Math.round(n.width/2),"px)"):"";l.setData({childrenStyle:i})}})}},ready:function(){!this.data.src&&this.data.scale&&this.setScale()}}); |
@ -0,0 +1,3 @@ |
|||||
|
{ |
||||
|
"component": true |
||||
|
} |
@ -0,0 +1,6 @@ |
|||||
|
<view class="wux-class {{ classes.wrap }}" style="{{ extStyle }}"> |
||||
|
<image src="{{ src }}" wx:if="{{ src }}" /> |
||||
|
<text class="{{ classes.string }}" style="{{ childrenStyle }}" wx:else> |
||||
|
<slot></slot> |
||||
|
</text> |
||||
|
</view> |
@ -0,0 +1 @@ |
|||||
|
.wux-avatar{font-family:Monospaced Number,Chinese Quote,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:28rpx;line-height:1.5;color:rgba(0,0,0,.65);box-sizing:border-box;display:inline-block;text-align:center;background:#ccc;color:#fff;white-space:nowrap;position:relative;overflow:hidden;vertical-align:middle;width:64rpx;height:64rpx;line-height:64rpx;border-radius:32rpx;font-size:36rpx}.wux-avatar .wux-avatar__string{line-height:64rpx}.wux-avatar--small{width:48rpx;height:48rpx;line-height:48rpx;border-radius:24rpx;font-size:28rpx}.wux-avatar--small .wux-avatar__string{line-height:48rpx}.wux-avatar--large{width:80rpx;height:80rpx;line-height:80rpx;border-radius:40rpx;font-size:48rpx}.wux-avatar--large .wux-avatar__string{line-height:80rpx}.wux-avatar--square{border-radius:8rpx}.wux-avatar--thumb{background:0 0}.wux-avatar>image{width:100%;height:100%} |
@ -0,0 +1 @@ |
|||||
|
"use strict";var _baseComponent=_interopRequireDefault(require("../helpers/baseComponent"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}(0,_baseComponent.default)({properties:{prefixCls:{type:String,value:"wux-backdrop"},transparent:{type:Boolean,value:!1},zIndex:{type:Number,value:1e3},classNames:{type:null,value:"wux-animate--fadeIn"}},computed:{classes:["prefixCls, transparent",function(e,t){return{wrap:t?"".concat(e,"--transparent"):e}}]},methods:{retain:function(){"number"==typeof this.backdropHolds&&this.backdropHolds||(this.backdropHolds=0),this.backdropHolds=this.backdropHolds+1,1===this.backdropHolds&&this.setData({in:!0})},release:function(){1===this.backdropHolds&&this.setData({in:!1}),this.backdropHolds=Math.max(0,this.backdropHolds-1)},onClick:function(){this.triggerEvent("click")}}}); |
@ -0,0 +1,6 @@ |
|||||
|
{ |
||||
|
"component": true, |
||||
|
"usingComponents": { |
||||
|
"wux-animation-group": "../animation-group/index" |
||||
|
} |
||||
|
} |
@ -0,0 +1 @@ |
|||||
|
<wux-animation-group wux-class="{{ classes.wrap }}" in="{{ in }}" classNames="{{ classNames }}" bind:click="onClick" wrapStyle="{{ { zIndex } }}" disableScroll /> |
@ -0,0 +1 @@ |
|||||
|
.wux-backdrop{background:rgba(0,0,0,.4)}.wux-backdrop,.wux-backdrop--transparent{position:fixed;z-index:1000;top:0;right:0;left:0;bottom:0}.wux-backdrop--transparent{background:0 0} |
@ -0,0 +1 @@ |
|||||
|
"use strict";var _baseComponent=_interopRequireDefault(require("../helpers/baseComponent")),_classNames2=_interopRequireDefault(require("../helpers/classNames"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _defineProperty(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}(0,_baseComponent.default)({externalClasses:["wux-class-badge"],properties:{prefixCls:{type:String,value:"wux-badge"},count:{type:Number,value:0,observer:"updated"},overflowCount:{type:Number,value:99},dot:{type:Boolean,value:!1},showZero:{type:Boolean,value:!1},status:{type:String,value:""},text:{type:String,value:""}},data:{finalCount:0},computed:{classes:["prefixCls, status",function(e,t){return{wrap:(0,_classNames2.default)(e),status:"".concat(e,"__status"),statusDot:(0,_classNames2.default)("".concat(e,"__status-dot"),_defineProperty({},"".concat(e,"__status-dot--").concat(t),t)),statusText:"".concat(e,"__status-text"),dot:"".concat(e,"__dot"),count:"".concat(e,"__count")}}]},methods:{updated:function(e){var t=0<arguments.length&&void 0!==e?e:this.data.count,a=this.data.overflowCount,s=a<=t?"".concat(a,"+"):t;this.setData({finalCount:s})}}}); |
@ -0,0 +1,3 @@ |
|||||
|
{ |
||||
|
"component": true |
||||
|
} |
@ -0,0 +1,10 @@ |
|||||
|
<view class="wux-class {{ classes.wrap }}"> |
||||
|
<slot></slot> |
||||
|
<view class="{{ classes.status }}" wx:if="{{ status }}"> |
||||
|
<view class="{{ classes.statusDot }}"></view> |
||||
|
<view class="{{ classes.statusText }}" wx:if="{{ text }}">{{ text }}</view> |
||||
|
</view> |
||||
|
<view class="{{ classes.dot }}" wx:elif="{{ dot }}"></view> |
||||
|
<view class="{{ classes.count }} wux-class-badge" wx:elif="{{ showZero && count === 0 }}">{{ finalCount }}</view> |
||||
|
<view class="{{ classes.count }} wux-class-badge" wx:elif="{{ count !== 0 }}">{{ finalCount }}</view> |
||||
|
</view> |
@ -0,0 +1 @@ |
|||||
|
.wux-badge{position:relative;display:inline-block;line-height:1;vertical-align:middle}.wux-badge__count{position:absolute;transform:translateX(50%);top:-12rpx;right:0;height:36rpx;border-radius:18rpx;min-width:36rpx;background:#ed3f14;border:2rpx solid transparent;color:#fff;line-height:36rpx;text-align:center;padding:0 10rpx;font-size:24rpx;white-space:nowrap;transform-origin:-10% center;z-index:10;box-shadow:0 0 0 2rpx #fff;box-sizing:border-box;text-rendering:optimizeLegibility}.wux-badge__dot{position:absolute;transform:translateX(-50%);transform-origin:0 center;top:-8rpx;right:-16rpx;height:16rpx;width:16rpx;border-radius:100%;background:#ed3f14;z-index:10;box-shadow:0 0 0 2rpx #fff}.wux-badge__status{line-height:inherit;vertical-align:baseline}.wux-badge__status-dot{width:12rpx;height:12rpx;display:inline-block;border-radius:50%;vertical-align:middle;position:relative;top:-2rpx}.wux-badge__status-dot--success{background-color:#52c41a}.wux-badge__status-dot--processing{background-color:#1890ff;position:relative}.wux-badge__status-dot--processing:after{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:50%;border:2rpx solid #1890ff;content:"";animation:statusProcessing 1.2s infinite ease-in-out}.wux-badge__status-dot--default{background-color:#d9d9d9}.wux-badge__status-dot--error{background-color:#f5222d}.wux-badge__status-dot--warning{background-color:#faad14}.wux-badge__status-text{display:inline-block;color:rgba(0,0,0,.65);font-size:28rpx;margin-left:16rpx}@keyframes statusProcessing{0%{transform:scale(.8);opacity:.5}to{transform:scale(2.4);opacity:0}} |
@ -0,0 +1 @@ |
|||||
|
"use strict";var _baseComponent=_interopRequireDefault(require("../helpers/baseComponent")),_classNames2=_interopRequireDefault(require("../helpers/classNames"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _defineProperty(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}(0,_baseComponent.default)({properties:{prefixCls:{type:String,value:"wux-button"},type:{type:String,value:"stable"},clear:{type:Boolean,value:!1},block:{type:Boolean,value:!1},full:{type:Boolean,value:!1},outline:{type:Boolean,value:!1},bordered:{type:Boolean,value:!0},size:{type:String,value:"default"},disabled:{type:Boolean,value:!1},loading:{type:Boolean,value:!1},formType:{type:String,value:""},openType:{type:String,value:""},hoverClass:{type:String,value:"default"},hoverStopPropagation:{type:Boolean,value:!1},hoverStartTime:{type:Number,value:20},hoverStayTime:{type:Number,value:70},lang:{type:String,value:"en"},sessionFrom:{type:String,value:""},sendMessageTitle:{type:String,value:""},sendMessagePath:{type:String,value:""},sendMessageImg:{type:String,value:""},showMessageCard:{type:Boolean,value:!1},appParameter:{type:String,value:""}},computed:{classes:["prefixCls, hoverClass, type, size, block, full, clear, outline, bordered, disabled",function(e,t,n,r,a,o,i,l,u,s){var p;return{wrap:(0,_classNames2.default)(e,(_defineProperty(p={},"".concat(e,"--").concat(n),n),_defineProperty(p,"".concat(e,"--").concat(r),r),_defineProperty(p,"".concat(e,"--block"),a),_defineProperty(p,"".concat(e,"--full"),o),_defineProperty(p,"".concat(e,"--clear"),i),_defineProperty(p,"".concat(e,"--outline"),l),_defineProperty(p,"".concat(e,"--bordered"),u),_defineProperty(p,"".concat(e,"--disabled"),s),p)),hover:t&&"default"!==t?t:"".concat(e,"--hover")}}]},methods:{onTap:function(){this.data.disabled||this.data.loading||this.triggerEvent("click")},bindgetuserinfo:function(e){this.triggerEvent("getuserinfo",e.detail)},bindcontact:function(e){this.triggerEvent("contact",e.detail)},bindgetphonenumber:function(e){this.triggerEvent("getphonenumber",e.detail)},bindopensetting:function(e){this.triggerEvent("opensetting",e.detail)},onError:function(e){this.triggerEvent("error",e.detail)}}}); |
@ -0,0 +1,3 @@ |
|||||
|
{ |
||||
|
"component": true |
||||
|
} |
@ -0,0 +1,26 @@ |
|||||
|
<button |
||||
|
class="wux-class {{ classes.wrap }}" |
||||
|
disabled="{{ disabled }}" |
||||
|
loading="{{ loading }}" |
||||
|
form-type="{{ formType }}" |
||||
|
open-type="{{ openType }}" |
||||
|
hover-class="wux-hover-class {{ !disabled ? classes.hover : 'none' }}" |
||||
|
hover-stop-propagation="{{ hoverStopPropagation }}" |
||||
|
hover-start-time="{{ hoverStartTime }}" |
||||
|
hover-stay-time="{{ hoverStayTime }}" |
||||
|
lang="{{ lang }}" |
||||
|
bindgetuserinfo="bindgetuserinfo" |
||||
|
session-from="{{ sessionFrom }}" |
||||
|
send-message-title="{{ sendMessageTitle }}" |
||||
|
send-message-path="{{ sendMessagePath }}" |
||||
|
send-message-img="{{ sendMessageImg }}" |
||||
|
show-message-card="{{ showMessageCard }}" |
||||
|
bindcontact="bindcontact" |
||||
|
bindgetphonenumber="bindgetphonenumber" |
||||
|
app-parameter="{{ appParameter }}" |
||||
|
binderror="onError" |
||||
|
bindopensetting="bindopensetting" |
||||
|
bindtap="onTap" |
||||
|
> |
||||
|
<slot></slot> |
||||
|
</button> |
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -0,0 +1,6 @@ |
|||||
|
{ |
||||
|
"component": true, |
||||
|
"usingComponents": { |
||||
|
"wux-popup": "../popup/index" |
||||
|
} |
||||
|
} |
@ -0,0 +1,67 @@ |
|||||
|
<wux-popup position="bottom" visible="{{ in }}" zIndex="1010" safeArea="bottom" bind:close="close"> |
||||
|
<view class="wux-class {{ classes.wrap }}"> |
||||
|
<view class="{{ classes.content }}"> |
||||
|
<view class="{{ classes.hd }}" wx:if="{{ toolbar }}"> |
||||
|
<view class="{{ classes.toolbar }}"> |
||||
|
<view class="{{ classes.picker }}"> |
||||
|
<view class="{{ classes.link }}" bindtap="prevMonth"> |
||||
|
<view class="{{ classes.prev }}"></view> |
||||
|
</view> |
||||
|
<view class="{{ classes.value }}">{{ currentMonthName }}</view> |
||||
|
<view class="{{ classes.link }}" bindtap="nextMonth"> |
||||
|
<view class="{{ classes.next }}"></view> |
||||
|
</view> |
||||
|
</view> |
||||
|
<view class="{{ classes.picker }}"> |
||||
|
<view class="{{ classes.link }}" bindtap="prevYear"> |
||||
|
<view class="{{ classes.prev }}"></view> |
||||
|
</view> |
||||
|
<text class="{{ classes.value }}">{{ currentYear }}</text> |
||||
|
<view class="{{ classes.link }}" bindtap="nextYear"> |
||||
|
<view class="{{ classes.next }}"></view> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
<view class="{{ classes.bd }}"> |
||||
|
<view class="{{ classes.weekdays }}" wx:if="{{ weekHeader }}"> |
||||
|
<block wx:for="{{ weeks }}" wx:key=""> |
||||
|
<view class="{{ classes.weekday }} {{ item.weekend ? prefixCls + '__weekday--weekend' : '' }}"> |
||||
|
{{ item.dayName }} |
||||
|
</view> |
||||
|
</block> |
||||
|
</view> |
||||
|
<view class="{{ classes.months }}"> |
||||
|
<view class="{{ classes.monthsContent }}" bindtouchstart="onTouchStart" catchtouchmove="{{ swiping ? 'noop' : '' }}" capture-bind:touchmove="onTouchMove" bindtouchend="onTouchEnd" style="{{ wrapperTranslate }}"> |
||||
|
<block wx:for="{{ months }}" wx:for-item="month" wx:key=""> |
||||
|
<view |
||||
|
data-year="{{ month.year }}" |
||||
|
data-month="{{ month.month }}" |
||||
|
class="{{ classes.month }} {{ index === 0 ? (prefixCls + '__month--prev') : index === 1 ? (prefixCls + '__month--current') : (prefixCls + '__month--next') }}" |
||||
|
style="{{ monthsTranslate[index] }}" |
||||
|
> |
||||
|
<block wx:for="{{ month.items }}" wx:for-item="row" wx:key=""> |
||||
|
<view class="{{ classes.days }}"> |
||||
|
<block wx:for="{{ row }}" wx:for-item="col" wx:key=""> |
||||
|
<view |
||||
|
data-year="{{ col.year }}" |
||||
|
data-month="{{ col.month }}" |
||||
|
data-day="{{ col.day }}" |
||||
|
data-date="{{ col.date }}" |
||||
|
data-type="{{ col.type }}" |
||||
|
class="{{ classes.day }} {{ col.type.prev ? prefixCls + '__day--prev' : '' }} {{ col.type.next ? prefixCls + '__day--next' : '' }} {{ col.type.today ? prefixCls + '__day--today' : '' }} {{ col.type.selected ? prefixCls + '__day--selected' : '' }} {{ col.type.weekend ? prefixCls + '__day--weekend' : '' }} {{ col.type.disabled ? prefixCls + '__day--disabled' : '' }}" |
||||
|
bindtap="onDayClick" |
||||
|
> |
||||
|
<text class="{{ classes.text }}">{{ col.day }}</text> |
||||
|
</view> |
||||
|
</block> |
||||
|
</view> |
||||
|
</block> |
||||
|
</view> |
||||
|
</block> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
</wux-popup> |
@ -0,0 +1 @@ |
|||||
|
.wux-calendar{position:relative;background:#fff;height:600rpx;width:100%;overflow:hidden}.wux-calendar__content{position:relative;width:100%;height:100%;transition:transform .3s}.wux-calendar__bd{height:100%;position:relative;overflow:hidden}.wux-calendar__hd{position:relative;width:100%}.wux-calendar__hd:before{content:" ";position:absolute;left:0;top:0;right:0;height:2rpx;border-top:2rpx solid #d9d9d9;color:#d9d9d9;transform-origin:0 0;transform:scaleY(.5)}.wux-calendar__hd+.wux-calendar__bd{height:calc(97.8%)}.wux-calendar__toolbar{height:2.2rem;display:-ms-flexbox;display:flex;text-align:center}.wux-calendar__picker{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;width:50%;max-width:400rpx;-ms-flex-negative:10;flex-shrink:10;display:block;line-height:2.2rem}.wux-calendar__link{float:left;width:25%;height:2.2rem;line-height:2rem;min-width:72rpx}.wux-calendar__icon{display:inline-block;vertical-align:middle;background-size:100% auto;background-position:center}.wux-calendar__icon--next,.wux-calendar__icon--prev{width:.75rem;height:.75rem}.wux-calendar__icon--next{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2015%2015'%3E%3Cg%3E%3Cpath%20fill%3D'%23007aff'%20d%3D'M1%2C1.6l11.8%2C5.8L1%2C13.4V1.6%20M0%2C0v15l15-7.6L0%2C0L0%2C0z'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E")}.wux-calendar__icon--prev{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2015%2015'%3E%3Cg%3E%3Cpath%20fill%3D'%23007aff'%20d%3D'M14%2C1.6v11.8L2.2%2C7.6L14%2C1.6%20M15%2C0L0%2C7.6L15%2C15V0L15%2C0z'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E")}.wux-calendar__value{-ms-flex-negative:1;flex-shrink:1;position:relative;overflow:hidden;text-overflow:ellipsis;float:left;width:50%;height:2.2rem}.wux-calendar__weekdays{height:36rpx;background:#f7f7f8;display:-ms-flexbox;display:flex;font-size:22rpx;box-sizing:border-box;position:relative}.wux-calendar__weekdays:after{content:" ";position:absolute;left:0;bottom:0;right:0;height:2rpx;border-bottom:2rpx solid #d9d9d9;color:#d9d9d9;transform-origin:0 100%;transform:scaleY(.5)}.wux-calendar__weekdays+.wux-calendar__months{height:calc(82%)}.wux-calendar__weekday{-ms-flex-negative:1;flex-shrink:1;width:14.28571429%;width:calc(14.28571429%);line-height:34rpx;text-align:center}.wux-calendar__months{width:100%;height:100%;overflow:hidden;position:relative}.wux-calendar__months-content{width:100%;height:100%;display:-ms-flexbox;display:flex;position:relative;-webkit-backface-visibility:hidden;transform:translate3d(0,0,0)}.wux-calendar__month{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;width:100%;height:100%;position:absolute;left:0;top:0}.wux-calendar__days{height:16.66666667%;height:calc(16.66666667%);display:-ms-flexbox;display:flex;-ms-flex-negative:1;flex-shrink:1;width:100%;position:relative}.wux-calendar__days:after{content:" ";position:absolute;left:0;bottom:0;right:0;height:2rpx;border-bottom:2rpx solid #d9d9d9;color:#d9d9d9;transform-origin:0 100%;transform:scaleY(.5)}.wux-calendar__days:last-child:after{display:none}.wux-calendar__day{-ms-flex-negative:1;flex-shrink:1;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;box-sizing:border-box;width:14.28571429%;width:calc(14.28571429%);text-align:center;color:#3d4145;font-size:30rpx;cursor:pointer}.wux-calendar__day--next,.wux-calendar__day--prev{color:#ccc}.wux-calendar__day--disabled{color:#d4d4d4;cursor:auto}.wux-calendar__day--today .wux-calendar__text{background:#e3e3e3}.wux-calendar__day--selected .wux-calendar__text{background:#0894ec;color:#fff}.wux-calendar__text{display:inline-block;border-radius:100%;width:60rpx;height:60rpx;line-height:60rpx} |
@ -0,0 +1 @@ |
|||||
|
"use strict";var _baseComponent=_interopRequireDefault(require("../helpers/baseComponent")),_classNames3=_interopRequireDefault(require("../helpers/classNames")),_styleToCssString=_interopRequireDefault(require("../helpers/styleToCssString"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _defineProperty(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}(0,_baseComponent.default)({properties:{prefixCls:{type:String,value:"wux-card"},bordered:{type:Boolean,value:!0},full:{type:Boolean,value:!1},title:{type:String,value:""},thumb:{type:String,value:""},thumbStyle:{type:[String,Object],value:"",observer:function(e){this.setData({extStyle:(0,_styleToCssString.default)(e)})}},extra:{type:String,value:""},actions:{type:Array,value:[]}},data:{extStyle:""},computed:{classes:["prefixCls, bordered, full, actions",function(a,e,t,n){var r;return{wrap:(0,_classNames3.default)(a,(_defineProperty(r={},"".concat(a,"--bordered"),e),_defineProperty(r,"".concat(a,"--full"),t),_defineProperty(r,"".concat(a,"--has-actions"),0<n.length),r)),hd:"".concat(a,"__hd"),content:"".concat(a,"__content"),thumb:"".concat(a,"__thumb"),extra:"".concat(a,"__extra"),bd:"".concat(a,"__bd"),ft:"".concat(a,"__ft"),actions:"".concat(a,"__actions"),action:n.map(function(e){var t;return{wrap:(0,_classNames3.default)("".concat(a,"__action"),(_defineProperty(t={},"".concat(a,"__action--").concat(e.type||"default"),e.type||"default"),_defineProperty(t,"".concat(a,"__action--bold"),e.bold),_defineProperty(t,"".concat(a,"__action--disabled"),e.disabled),_defineProperty(t,"".concat(e.className),e.className),t)),hover:e.hoverClass&&"default"!==e.hoverClass?e.hoverClass:"".concat(a,"__action--hover")}})}}]},methods:{onAction:function(e){var t=e.currentTarget.dataset.index,a=this.data.actions,n=a[t];n.disabled||this.triggerEvent("action",{index:t,action:n,actions:a})}}}); |
@ -0,0 +1,3 @@ |
|||||
|
{ |
||||
|
"component": true |
||||
|
} |
@ -0,0 +1,28 @@ |
|||||
|
<view class="wux-class {{ classes.wrap }}"> |
||||
|
<view class="{{ classes.hd }}" wx:if="{{ thumb || title || extra }}"> |
||||
|
<view class="{{ classes.content }}" wx:if="{{ thumb || title }}"> |
||||
|
<image class="{{ classes.thumb }}" src="{{ thumb }}" mode="aspectFit" style="{{ extStyle }}" wx:if="{{ thumb }}" /> |
||||
|
<text>{{ title }}</text> |
||||
|
</view> |
||||
|
<view class="{{ classes.extra }}" wx:if="{{ extra }}">{{ extra }}</view> |
||||
|
<slot name="extra" wx:else></slot> |
||||
|
</view> |
||||
|
<view class="{{ classes.bd }}"> |
||||
|
<slot name="body"></slot> |
||||
|
</view> |
||||
|
<view class="{{ classes.ft }}"> |
||||
|
<slot name="footer"></slot> |
||||
|
</view> |
||||
|
<view class="{{ classes.actions }}" wx:if="{{ actions.length > 0 }}"> |
||||
|
<block wx:for="{{ actions }}" wx:for-item="action" wx:key=""> |
||||
|
<view |
||||
|
class="{{ classes.action[index].wrap }}" |
||||
|
hover-class="{{ !action.disabled ? classes.action[index].hover : 'none' }}" |
||||
|
data-index="{{ index }}" |
||||
|
bindtap="onAction" |
||||
|
> |
||||
|
{{ action.text }} |
||||
|
</view> |
||||
|
</block> |
||||
|
</view> |
||||
|
</view> |
@ -0,0 +1 @@ |
|||||
|
.wux-card{position:relative;min-height:192rpx;padding-bottom:12rpx;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;background-color:#fff}.wux-card--bordered:before{content:" ";position:absolute;top:0;left:0;width:200%;height:200%;transform:scale(.5);transform-origin:0 0;pointer-events:none;box-sizing:border-box;border:0 solid #d9d9d9;border-radius:20rpx;border-top-width:2rpx;border-right-width:2rpx;border-bottom-width:2rpx;border-left-width:2rpx}.wux-card--full:before{border-radius:0;border-right-width:0;border-left-width:0}.wux-card--has-actions{padding-bottom:0}.wux-card__hd{position:relative;display:-ms-flexbox;display:flex;font-size:34rpx;padding:18rpx 30rpx;-ms-flex-align:center;align-items:center}.wux-card__hd:before{content:" ";position:absolute;left:0;bottom:0;right:0;height:2rpx;border-bottom:2rpx solid #d9d9d9;color:#d9d9d9;transform-origin:0 100%;transform:scaleY(.5)}.wux-card__content{-ms-flex:1;flex:1;text-align:left;color:#000}.wux-card__thumb{display:inline-block;width:64rpx;height:64rpx;position:relative;margin-left:auto;margin-right:10rpx;overflow:hidden;vertical-align:middle}.wux-card__extra{-ms-flex:1;flex:1;text-align:right;font-size:34rpx;color:#888}.wux-card__bd{position:relative;padding:30rpx 30rpx 12rpx;font-size:30rpx;color:#333;min-height:80rpx}.wux-card__ft{display:-ms-flexbox;display:flex;font-size:28rpx;color:#888;padding:0 30rpx}.wux-card__actions{position:relative;display:-ms-flexbox;display:flex;line-height:100rpx;margin-top:12rpx;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center}.wux-card__actions:before{content:" ";position:absolute;left:0;top:0;right:0;height:2rpx;border-top:2rpx solid #d9d9d9;color:#d9d9d9;transform-origin:0 0;transform:scaleY(.5)}.wux-card__action{position:relative;display:block;-ms-flex:1;flex:1;color:#33cd5f;text-align:center}.wux-card__action:before{content:" ";position:absolute;right:0;top:0;width:2rpx;bottom:0;border-right:2rpx solid #d9d9d9;color:#d9d9d9;transform-origin:100% 0;transform:scaleX(.5)}.wux-card__action:last-child:before{display:none}.wux-card__action--default{color:#353535}.wux-card__action--primary{color:#33cd5f!important}.wux-card__action--bold{font-weight:500!important}.wux-card__action--hover{background-color:#ececec!important}.wux-card__action--disabled{opacity:.3} |
@ -0,0 +1 @@ |
|||||
|
"use strict";var _baseComponent=_interopRequireDefault(require("../helpers/baseComponent")),_classNames=_interopRequireDefault(require("../helpers/classNames")),_arrayTreeFilter=_interopRequireDefault(require("../helpers/arrayTreeFilter")),_props=require("../multi-picker-view/props");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function _iterableToArray(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e)){for(var t=0,r=new Array(e.length);t<e.length;t++)r[t]=e[t];return r}}function ownKeys(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),r.push.apply(r,n)}return r}function _objectSpread(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?ownKeys(r,!0).forEach(function(e){_defineProperty(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):ownKeys(r).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function _defineProperty(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}(0,_baseComponent.default)({properties:_objectSpread({},_props.props,{cols:{type:Number,value:3}}),data:{inputValue:[],showOptions:[],fieldNames:_props.defaultFieldNames},observers:_defineProperty({inputValue:function(e){var r=this.getFieldName("value"),n=this.getFieldName("label"),t=this.getShowOptions(e).reduce(function(e,t){return[].concat(_toConsumableArray(e),[t.map(function(e){var t;return _defineProperty(t={},r,e[r]),_defineProperty(t,n,e[n]),_defineProperty(t,"disabled",!!e.disabled),t})])},[]);this.setData({showOptions:t})}},"value, options, cols",function(e,t,r){this.setValue(e,t,r)}),methods:{updated:function(e){this.data.inputValue!==e&&this.setData({inputValue:e})},setValue:function(e,t,r){var n=0<arguments.length&&void 0!==e?e:this.data.inputValue,i=1<arguments.length&&void 0!==t?t:this.data.options,a=2<arguments.length&&void 0!==r?r:this.data.cols,o=this.getRealValue(i,n,a);this.updated(o)},onValueChange:function(e){var t=e.detail,r=t.value,n=t.index,i=this.getNextValue(r,n),a=this.getRealValue(this.data.options,i),o=this.getValue(a);this.updated(a),this.triggerEvent("valueChange",_objectSpread({},o,{index:n}))},getValue:function(e){var t=0<arguments.length&&void 0!==e?e:this.data.inputValue,r=this.getRealValue(this.data.options,t),n=this.getShowOptions(r);return this.picker=this.picker||this.selectComponent("#wux-picker"),this.picker.getValue(r,n)},getNextValue:function(r,n){for(var e=this.data.options,i=this.getFieldName("value"),t=this.getFieldName("children"),a=(0,_arrayTreeFilter.default)(e,function(e,t){return t<=n&&e[i]===r[t]},{childrenKeyName:t})[n],o=n+1;o<this.data.cols;)a&&a[t]&&a[t].length&&(a=a[t][0],r[o]=a[i]),o++;return r.length=o,r},getRealValue:function(o,u,e){var l=this,s=2<arguments.length&&void 0!==e?e:this.data.cols;if(!u||!u.length||-1<u.indexOf(void 0)||u.length!==s){var t=function(){for(var t=l.getFieldName("value"),e=l.getFieldName("children"),r=[],n=_toConsumableArray(o),i=0;i<s;){if(n&&n.length){r[i]=u[i]||n[0][t];var a=0;r[i]&&-1===(a=n.map(function(e){return e[t]}).indexOf(r[i]))&&(a=0,r[i]=n[0][t]),n=n[a][e]}i++}return{v:r}}();if("object"===_typeof(t))return t.v}return u},getActiveOptions:function(r){var e=this.data.options,n=this.getFieldName("value"),t=this.getFieldName("children");return(0,_arrayTreeFilter.default)(e,function(e,t){return e[n]===r[t]},{childrenKeyName:t})},getShowOptions:function(e){var t=this.data,r=t.options,n=t.cols,i=this.getFieldName("children"),a=this.getActiveOptions(e).map(function(e){return e[i]}).filter(function(e){return!!e});return[r].concat(_toConsumableArray(a)).filter(function(e,t){return t<n})},getFieldName:function(e){return this.data.fieldNames[e]}},attached:function(){var e=this.data,t=e.value,r=e.options,n=e.cols,i=Object.assign({},_props.defaultFieldNames,this.data.defaultFieldNames);this.setData({fieldNames:i}),this.setValue(t,r,n)}}); |
@ -0,0 +1,6 @@ |
|||||
|
{ |
||||
|
"component": true, |
||||
|
"usingComponents": { |
||||
|
"wux-multi-picker-view": "../multi-picker-view/index" |
||||
|
} |
||||
|
} |
@ -0,0 +1,17 @@ |
|||||
|
<wux-multi-picker-view |
||||
|
id="wux-picker" |
||||
|
prefixCls="{{ prefixCls }}" |
||||
|
pickerPrefixCls="{{ pickerPrefixCls }}" |
||||
|
value="{{ inputValue }}" |
||||
|
itemHeight="{{ itemHeight }}" |
||||
|
itemStyle="{{ itemStyle }}" |
||||
|
indicatorStyle="{{ indicatorStyle }}" |
||||
|
indicatorClass="{{ indicatorClass }}" |
||||
|
maskStyle="{{ maskStyle }}" |
||||
|
maskClass="{{ maskClass }}" |
||||
|
labelAlign="{{ labelAlign }}" |
||||
|
defaultFieldNames="{{ fieldNames }}" |
||||
|
options="{{ showOptions }}" |
||||
|
loading="{{ loading }}" |
||||
|
bind:valueChange="onValueChange" |
||||
|
/> |
File diff suppressed because one or more lines are too long
@ -0,0 +1,6 @@ |
|||||
|
{ |
||||
|
"component": true, |
||||
|
"usingComponents": { |
||||
|
"wux-popup": "../popup/index" |
||||
|
} |
||||
|
} |
@ -0,0 +1,33 @@ |
|||||
|
<wux-popup position="bottom" visible="{{ visible }}" safeArea="bottom" bind:close="onPopupClose"> |
||||
|
<view class="wux-class {{ classes.wrap }}"> |
||||
|
<view class="{{ classes.hd }}"> |
||||
|
<view class="{{ classes.title }}" wx:if="{{ title }}">{{ title }}</view> |
||||
|
<view class="{{ classes.menus }}" wx:if="{{ activeOptions.length }}"> |
||||
|
<block wx:for="{{ activeOptions }}" wx:key=""> |
||||
|
<view class="{{ classes.menu }} {{ activeIndex === index ? prefixCls + '__menu--active' : '' }}" data-menu-index="{{ index }}" bindtap="onMenuClick">{{ item[fieldNames['label']] }}</view> |
||||
|
</block> |
||||
|
</view> |
||||
|
</view> |
||||
|
<view class="{{ classes.bd }}" style="{{ bodyStyle }}"> |
||||
|
<block wx:for="{{ showOptions }}" wx:for-item="option" wx:for-index="optionIndex" wx:key=""> |
||||
|
<view class="{{ classes.inner }}"> |
||||
|
<scroll-view scroll-y class="wux-scroll-view-class {{ classes.scrollView }}"> |
||||
|
<view class="{{ classes.option }}"> |
||||
|
<block wx:for="{{ option }}" wx:key=""> |
||||
|
<view |
||||
|
class="{{ classes.item }} {{ activeValue[optionIndex] === item[fieldNames['value']] ? prefixCls + '__item--active' : '' }} {{ item.disabled ? prefixCls + '__item--disabled' : '' }}" |
||||
|
data-option-index="{{ optionIndex }}" |
||||
|
data-item="{{ item }}" |
||||
|
bindtap="onItemSelect" |
||||
|
> |
||||
|
<text>{{ item[fieldNames['label']] }}</text> |
||||
|
<icon class="{{ classes.icon }}" type="success_no_circle" size="16" color="#ef473a" wx:if="{{ activeValue[optionIndex] === item[fieldNames['value']] }}" /> |
||||
|
</view> |
||||
|
</block> |
||||
|
</view> |
||||
|
</scroll-view> |
||||
|
</view> |
||||
|
</block> |
||||
|
</view> |
||||
|
</view> |
||||
|
</wux-popup> |
@ -0,0 +1 @@ |
|||||
|
.wux-cascader__hd{position:relative;width:100%;font-size:34rpx;line-height:1.5;color:#444}.wux-cascader__hd:after{content:" ";position:absolute;left:0;bottom:0;right:0;height:2rpx;border-bottom:2rpx solid #d9d9d9;color:#d9d9d9;transform-origin:0 100%;transform:scaleY(.5)}.wux-cascader__title{position:relative;height:88rpx;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;text-align:center;box-sizing:border-box}.wux-cascader__title:after{content:" ";position:absolute;left:0;bottom:0;right:0;height:2rpx;border-bottom:2rpx solid #d9d9d9;color:#d9d9d9;transform-origin:0 100%;transform:scaleY(.5)}.wux-cascader__menus{display:-ms-flexbox;display:flex;height:88rpx;padding:0 20rpx;-ms-flex-align:center;align-items:center;box-sizing:border-box}.wux-cascader__menu{font-size:26rpx;padding:0 20rpx;max-width:40%;width:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;word-wrap:normal}.wux-cascader__menu--active{color:#ef473a}.wux-cascader__bd{width:100%;display:-ms-flexbox;display:flex;transition:transform .3s;background-color:#f5f5f5}.wux-cascader__inner{display:block;height:inherit;width:50%;-ms-flex:0 0 50%;flex:0 0 50%;background-color:#fff}.wux-cascader__inner:nth-child(2n){background-color:#f5f5f5}.wux-cascader__scroll-view{max-height:540rpx}.wux-cascader__option{width:100%;height:inherit;display:block;padding:0 40rpx;box-sizing:border-box}.wux-cascader__item{position:relative;z-index:10;display:block;color:#333;font-size:26rpx;height:80rpx;line-height:80rpx;text-align:left;padding-right:36rpx;width:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;word-wrap:normal}.wux-cascader__item:after{content:" ";position:absolute;left:0;bottom:0;right:0;height:2rpx;border-bottom:2rpx solid #d9d9d9;color:#d9d9d9;transform-origin:0 100%;transform:scaleY(.5)}.wux-cascader__item--active{color:#ef473a}.wux-cascader__item--disabled{opacity:.3}.wux-cascader__icon{position:absolute;top:24rpx;right:0;z-index:20;font-size:0;line-height:1} |
@ -0,0 +1 @@ |
|||||
|
"use strict";var _baseComponent=_interopRequireDefault(require("../helpers/baseComponent")),_classNames=_interopRequireDefault(require("../helpers/classNames"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}(0,_baseComponent.default)({options:{multipleSlots:!1},relations:{"../cell/index":{type:"descendant",observer:function(){this.debounce(this.updateIsLastElement)}}},properties:{prefixCls:{type:String,value:"wux-cell-group"},title:{type:String,value:""},label:{type:String,value:""}},computed:{classes:["prefixCls",function(e){return{wrap:(0,_classNames.default)(e),hd:"".concat(e,"__hd"),bd:"".concat(e,"__bd"),ft:"".concat(e,"__ft")}}]},methods:{updateIsLastElement:function(){var e=this.getRelationNodes("../cell/index");if(0<e.length){var n=e.length-1;e.forEach(function(e,t){e.updateIsLastElement(t===n)})}},getBoundingClientRect:function(t){var n=this,e=".".concat(this.data.prefixCls);wx.createSelectorQuery().in(this).select(e).boundingClientRect(function(e){e&&t.call(n,e.height)}).exec()}}}); |
@ -0,0 +1,3 @@ |
|||||
|
{ |
||||
|
"component": true |
||||
|
} |
@ -0,0 +1,7 @@ |
|||||
|
<view class="wux-class {{ classes.wrap }}"> |
||||
|
<view class="{{ classes.hd }}" wx:if="{{ title }}">{{ title }}</view> |
||||
|
<view class="{{ classes.bd }}"> |
||||
|
<slot></slot> |
||||
|
</view> |
||||
|
<view class="{{ classes.ft }}" wx:if="{{ label }}">{{ label }}</view> |
||||
|
</view> |
@ -0,0 +1 @@ |
|||||
|
.wux-cell-group__hd{padding:30rpx 30rpx 18rpx;font-size:28rpx;color:#888;width:100%;box-sizing:border-box}.wux-cell-group__bd{position:relative;background-color:#fff}.wux-cell-group__bd:after{content:" ";position:absolute;top:0;left:0;width:200%;height:200%;transform:scale(.5);transform-origin:0 0;pointer-events:none;box-sizing:border-box;border:0 solid #d9d9d9;border-top-width:2rpx;border-bottom-width:2rpx}.wux-cell-group__ft{padding:18rpx 30rpx 30rpx;font-size:28rpx;color:#888} |
@ -0,0 +1 @@ |
|||||
|
"use strict";var _baseComponent=_interopRequireDefault(require("../helpers/baseComponent")),_classNames2=_interopRequireDefault(require("../helpers/classNames")),_eventsMixin=_interopRequireDefault(require("../helpers/eventsMixin"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _defineProperty(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var defaultEvents={onClick:function(){},onError:function(){}};(0,_baseComponent.default)({behaviors:[(0,_eventsMixin.default)({defaultEvents:defaultEvents})],relations:{"../cell-group/index":{type:"ancestor"},"../picker/index":{type:"parent"},"../date-picker/index":{type:"parent"},"../popup-select/index":{type:"parent"}},properties:{prefixCls:{type:String,value:"wux-cell"},disabled:{type:Boolean,value:!1},hoverClass:{type:String,value:"default"},hoverStopPropagation:{type:Boolean,value:!1},hoverStartTime:{type:Number,value:20},hoverStayTime:{type:Number,value:70},lang:{type:String,value:"en"},sessionFrom:{type:String,value:""},sendMessageTitle:{type:String,value:""},sendMessagePath:{type:String,value:""},sendMessageImg:{type:String,value:""},showMessageCard:{type:Boolean,value:!1},appParameter:{type:String,value:""},thumb:{type:String,value:""},title:{type:String,value:""},label:{type:String,value:""},extra:{type:String,value:""},isLink:{type:Boolean,value:!1},openType:{type:String,value:"navigateTo"},url:{type:String,value:""},delta:{type:Number,value:1}},data:{isLast:!1},computed:{classes:["prefixCls, hoverClass, isLast, isLink, disabled",function(e,t,n,a,i){var r;return{wrap:(0,_classNames2.default)(e,(_defineProperty(r={},"".concat(e,"--last"),n),_defineProperty(r,"".concat(e,"--access"),a),_defineProperty(r,"".concat(e,"--disabled"),i),r)),hd:"".concat(e,"__hd"),thumb:"".concat(e,"__thumb"),bd:"".concat(e,"__bd"),text:"".concat(e,"__text"),desc:"".concat(e,"__desc"),ft:"".concat(e,"__ft"),hover:t&&"default"!==t?t:"".concat(e,"--hover")}}]},methods:{onTap:function(){this.data.disabled||(this.triggerEvent("click"),this.linkTo())},bindgetuserinfo:function(e){this.triggerEvent("getuserinfo",e.detail)},bindcontact:function(e){this.triggerEvent("contact",e.detail)},bindgetphonenumber:function(e){this.triggerEvent("getphonenumber",e.detail)},bindopensetting:function(e){this.triggerEvent("opensetting",e.detail)},onError:function(e){this.triggerEvent("error",e.detail)},linkTo:function(){var e=this.data,t=e.url,n=e.isLink,a=e.openType,i=e.delta;return!!(n&&t&&["navigateTo","redirectTo","switchTab","navigateBack","reLaunch"].includes(a))&&("navigateBack"===a?wx[a].call(wx,{delta:i}):wx[a].call(wx,{url:t}))},updateIsLastElement:function(e){this.setData({isLast:e})}}}); |
@ -0,0 +1,3 @@ |
|||||
|
{ |
||||
|
"component": true |
||||
|
} |
@ -0,0 +1,42 @@ |
|||||
|
<button |
||||
|
class="wux-class {{ classes.wrap }}" |
||||
|
disabled="{{ disabled }}" |
||||
|
open-type="{{ openType }}" |
||||
|
hover-class="{{ !disabled ? classes.hover : 'none' }}" |
||||
|
hover-stop-propagation="{{ hoverStopPropagation }}" |
||||
|
hover-start-time="{{ hoverStartTime }}" |
||||
|
hover-stay-time="{{ hoverStayTime }}" |
||||
|
lang="{{ lang }}" |
||||
|
bindgetuserinfo="bindgetuserinfo" |
||||
|
session-from="{{ sessionFrom }}" |
||||
|
send-message-title="{{ sendMessageTitle }}" |
||||
|
send-message-path="{{ sendMessagePath }}" |
||||
|
send-message-img="{{ sendMessageImg }}" |
||||
|
show-message-card="{{ showMessageCard }}" |
||||
|
bindcontact="bindcontact" |
||||
|
bindgetphonenumber="bindgetphonenumber" |
||||
|
app-parameter="{{ appParameter }}" |
||||
|
binderror="onError" |
||||
|
bindopensetting="bindopensetting" |
||||
|
bindtap="onTap" |
||||
|
> |
||||
|
<view class="{{ classes.hd }}"> |
||||
|
<block wx:if="{{ thumb }}"> |
||||
|
<image class="{{ classes.thumb }}" src="{{ thumb }}" /> |
||||
|
</block> |
||||
|
<block wx:else> |
||||
|
<slot name="header"></slot> |
||||
|
</block> |
||||
|
</view> |
||||
|
<view class="{{ classes.bd }}"> |
||||
|
<view wx:if="{{ title }}" class="{{ classes.text }}">{{ title }}</view> |
||||
|
<view wx:if="{{ label }}" class="{{ classes.desc }}">{{ label }}</view> |
||||
|
<slot></slot> |
||||
|
</view> |
||||
|
<view class="{{ classes.ft }}"> |
||||
|
<block wx:if="{{ extra }}">{{ extra }}</block> |
||||
|
<block wx:else> |
||||
|
<slot name="footer"></slot> |
||||
|
</block> |
||||
|
</view> |
||||
|
</button> |
@ -0,0 +1 @@ |
|||||
|
.wux-cell{padding:0;margin:0;border-radius:0;color:inherit!important;background:0 0!important;font-size:inherit;font-weight:400;line-height:inherit;text-align:inherit;text-decoration:none;overflow:visible;min-height:0!important;width:auto!important;box-sizing:border-box;-webkit-tap-highlight-color:transparent;padding:20rpx 30rpx;position:relative;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;background:#fff}.wux-cell:after{display:block;position:static;top:auto;left:auto;width:auto;height:auto;border:none;border-radius:0;transform:none;transform-origin:0 0}.wux-cell:after{content:" ";position:absolute;left:0;bottom:0;right:0;height:2rpx;border-bottom:2rpx solid #d9d9d9;color:#d9d9d9;transform-origin:0 100%;transform:scaleY(.5);left:30rpx}.wux-cell--last:after{display:none}.wux-cell--hover{background-color:#ececec!important}.wux-cell--disabled{opacity:.3}.wux-cell__thumb{display:block;width:40rpx;height:40rpx;margin-right:10rpx}.wux-cell__bd{-ms-flex:1;flex:1}.wux-cell__text{text-align:left}.wux-cell__desc{text-align:left;line-height:1.2;font-size:24rpx;color:grey}.wux-cell__ft{text-align:right;color:grey}.wux-cell--access .wux-cell__ft{padding-right:26rpx;position:relative}.wux-cell--access .wux-cell__ft:after{content:" ";display:inline-block;height:12rpx;width:12rpx;border-width:4rpx 4rpx 0 0;border-color:#c8c8cd;border-style:solid;transform:matrix(.71,.71,-.71,.71,0,0);position:relative;top:-4rpx;position:absolute;top:50%;margin-top:-8rpx;right:4rpx} |
@ -0,0 +1 @@ |
|||||
|
"use strict";var _baseComponent=_interopRequireDefault(require("../helpers/baseComponent")),_eventsMixin=_interopRequireDefault(require("../helpers/eventsMixin"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function _iterableToArray(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t<e.length;t++)n[t]=e[t];return n}}function ownKeys(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)}return n}function _objectSpread(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?ownKeys(n,!0).forEach(function(e){_defineProperty(t,e,n[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):ownKeys(n).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))})}return t}function _defineProperty(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function getOptions(){return(0<arguments.length&&void 0!==arguments[0]?arguments[0]:[]).map(function(e,t){return"string"==typeof e?{title:e,value:e,index:t}:_objectSpread({},e,{index:t})})}function getCheckedValues(t){var e=_toConsumableArray(1<arguments.length&&void 0!==arguments[1]?arguments[1]:[]);return e=-1!==e.indexOf(t)?e.filter(function(e){return e!==t}):[].concat(_toConsumableArray(e),[t])}(0,_baseComponent.default)({useField:!0,behaviors:[(0,_eventsMixin.default)()],relations:{"../field/index":{type:"ancestor"},"../checkbox/index":{type:"descendant",observer:function(){this.debounce(this.changeValue)}}},properties:{prefixCls:{type:String,value:"wux-checkbox-group"},cellGroupPrefixCls:{type:String,value:"wux-cell-group"},value:{type:Array,value:[]},title:{type:String,value:""},label:{type:String,value:""},options:{type:Array,value:[]}},data:{inputValue:[],keys:[]},observers:{value:function(e){this.hasFieldDecorator||(this.updated(e),this.changeValue(e))},inputValue:function(e){this.hasFieldDecorator&&this.changeValue(e)},options:function(e){this.changeValue(this.data.inputValue,e)}},methods:{updated:function(e){this.data.inputValue!==e&&this.setData({inputValue:e})},changeValue:function(e,t){var n=0<arguments.length&&void 0!==e?e:this.data.inputValue,r=getOptions(1<arguments.length&&void 0!==t?t:this.data.options),a=this.getRelationNodes("../checkbox/index"),i=0<r.length?r:a?a.map(function(e){return e.data}):[];!r.length&&a&&0<a.length&&a.forEach(function(e,t){e.changeValue(Array.isArray(n)&&n.includes(e.data.value),t)}),this.data.keys!==i&&this.setData({keys:i})},onChange:function(e){var t=getCheckedValues(e.value,this.data.inputValue);this.hasFieldDecorator&&(e.value=t),this.triggerEvent("change",_objectSpread({},this.getValue(t),{},e,{name:this.data.name,value:e.value}))},onCheckboxChange:function(e){var t=e.currentTarget.dataset.index;this.onChange(_objectSpread({},e.detail,{index:t}))},getValue:function(e,t){var n=0<arguments.length&&void 0!==e?e:this.data.inputValue,r=1<arguments.length&&void 0!==t?t:this.data.keys,a=r.filter(function(e){return n.includes(e.value)}).map(function(e){return e.title})||[],i=r.map(function(e){return e.value}),o=n.map(function(e){return i.indexOf(e)});return{value:n,displayValue:a,selectedIndex:o,selectedValue:n,cols:r}},getBoundingClientRect:function(e){return this.cellGroup=this.cellGroup||this.selectComponent("#wux-cell-group"),this.cellGroup&&this.cellGroup.getBoundingClientRect(e)}}}); |
@ -0,0 +1,7 @@ |
|||||
|
{ |
||||
|
"component": true, |
||||
|
"usingComponents": { |
||||
|
"wux-cell-group": "../cell-group/index", |
||||
|
"wux-checkbox": "../checkbox/index" |
||||
|
} |
||||
|
} |
@ -0,0 +1,26 @@ |
|||||
|
<wux-cell-group id="wux-cell-group" wux-class="{{ prefixCls }}" prefixCls="{{ cellGroupPrefixCls }}" title="{{ title }}" label="{{ label }}"> |
||||
|
<block wx:for="{{ common.getOptions(options) }}" wx:for-item="option" wx:key="" wx:if="{{ options.length > 0 }}"> |
||||
|
<wux-checkbox |
||||
|
prefixCls="{{ option.prefixCls || 'wux-checkbox' }}" |
||||
|
cellPrefixCls="{{ option.cellPrefixCls || 'wux-cell' }}" |
||||
|
selectablePrefixCls="{{ option.selectablePrefixCls || 'wux-selectable' }}" |
||||
|
title="{{ option.title }}" |
||||
|
label="{{ option.label }}" |
||||
|
extra="{{ option.extra }}" |
||||
|
value="{{ option.value }}" |
||||
|
checked="{{ common.getChecked(inputValue, option) }}" |
||||
|
disabled="{{ option.disabled }}" |
||||
|
color="{{ option.color || 'balanced' }}" |
||||
|
data-index="{{ index }}" |
||||
|
bind:change="onCheckboxChange" |
||||
|
/> |
||||
|
</block> |
||||
|
<block wx:if="{{ options.length === 0 }}"> |
||||
|
<slot></slot> |
||||
|
</block> |
||||
|
</wux-cell-group> |
||||
|
|
||||
|
<wxs module="common"> |
||||
|
module.exports.getOptions = function(options) { return options.map(function(option) { if (option.constructor === 'String') { return { title: option, value: option } } return option }) } |
||||
|
module.exports.getChecked = function(values, option) { return values.indexOf(option.value) !== -1 } |
||||
|
</wxs> |
@ -0,0 +1 @@ |
|||||
|
"use strict";var _baseComponent=_interopRequireDefault(require("../helpers/baseComponent")),_classNames=_interopRequireDefault(require("../helpers/classNames"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}(0,_baseComponent.default)({relations:{"../checkbox-group/index":{type:"ancestor"}},properties:{prefixCls:{type:String,value:"wux-checkbox"},cellPrefixCls:{type:String,value:"wux-cell"},selectablePrefixCls:{type:String,value:"wux-selectable"},title:{type:String,value:""},label:{type:String,value:""},extra:{type:String,value:""},value:{type:String,value:""},checked:{type:Boolean,value:!1,observer:function(e){this.setData({inputChecked:e})}},disabled:{type:Boolean,value:!1},color:{type:String,value:"balanced"}},data:{index:0,inputChecked:!1},computed:{classes:["prefixCls",function(e){return{cell:(0,_classNames.default)(e),selectable:"".concat(e,"__selectable")}}]},methods:{checkboxChange:function(e){var t=this.data,a=t.value,l=t.index,n=t.disabled,i=this.getRelationNodes("../checkbox-group/index")[0],r={checked:e.detail.checked,value:a,index:l};n||(i?i.onChange(r):this.triggerEvent("change",r))},changeValue:function(e,t){var a=0<arguments.length&&void 0!==e&&e,l=1<arguments.length&&void 0!==t?t:0;this.setData({inputChecked:a,index:l})}}}); |
@ -0,0 +1,7 @@ |
|||||
|
{ |
||||
|
"component": true, |
||||
|
"usingComponents": { |
||||
|
"wux-cell": "../cell/index", |
||||
|
"wux-selectable": "../selectable/index" |
||||
|
} |
||||
|
} |
@ -0,0 +1,3 @@ |
|||||
|
<wux-cell wux-class="{{ classes.cell }}" prefixCls="{{ cellPrefixCls }}" title="{{ title }}" label="{{ label }}" extra="{{ extra }}"> |
||||
|
<wux-selectable slot="header" wux-class="{{ classes.selectable }}" prefixCls="{{ selectablePrefixCls }}" value="{{ value }}" checked="{{ inputChecked }}" color="{{ color }}" disabled="{{ disabled }}" controlled bind:change="checkboxChange" /> |
||||
|
</wux-cell> |
@ -0,0 +1 @@ |
|||||
|
.wux-checkbox__selectable{position:static!important} |
@ -0,0 +1 @@ |
|||||
|
"use strict";function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function _defineProperties(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}function _createClass(t,e,n){return e&&_defineProperties(t.prototype,e),n&&_defineProperties(t,n),t}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var Countdown=function(){function n(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{},e=1<arguments.length&&void 0!==arguments[1]?arguments[1]:getCurrentPages()[getCurrentPages().length-1];_classCallCheck(this,n),Object.assign(this,{page:e,options:t}),this.__init()}return _createClass(n,[{key:"__init",value:function(){this.setData=this.page.setData.bind(this.page),this.restart(this.options)}},{key:"setDefaults",value:function(){return{date:"June 7, 2087 15:03:25",refresh:1e3,offset:0,onEnd:function(){},render:function(t){}}}},{key:"mergeOptions",value:function(t){var e=this.setDefaults();for(var n in e)e.hasOwnProperty(n)&&(this.options[n]=void 0!==t[n]?t[n]:e[n],"date"===n&&"object"!=typeof this.options.date&&(this.options.date=new Date(this.options.date)),"function"==typeof this.options[n]&&(this.options[n]=this.options[n].bind(this)));"object"!=typeof this.options.date&&(this.options.date=new Date(this.options.date))}},{key:"getDiffDate",value:function(){var t=(this.options.date.getTime()-Date.now()+this.options.offset)/1e3,e={years:0,days:0,hours:0,min:0,sec:0,millisec:0};return t<=0?this.interval&&(this.stop(),this.options.onEnd()):(31557600<=t&&(e.years=Math.floor(t/31557600),t-=365.25*e.years*86400),86400<=t&&(e.days=Math.floor(t/86400),t-=86400*e.days),3600<=t&&(e.hours=Math.floor(t/3600),t-=3600*e.hours),60<=t&&(e.min=Math.floor(t/60),t-=60*e.min),e.sec=Math.round(t),e.millisec=t%1*1e3),e}},{key:"leadingZeros",value:function(t,e){var n=1<arguments.length&&void 0!==e?e:2;return(t=String(t)).length>n?t:(Array(n+1).join("0")+t).substr(-n)}},{key:"update",value:function(t){return this.options.date="object"!=typeof t?new Date(t):t,this.render(),this}},{key:"stop",value:function(){return this.interval&&(clearInterval(this.interval),this.interval=!1),this}},{key:"render",value:function(){return this.options.render(this.getDiffDate()),this}},{key:"start",value:function(){var t=this;return!this.interval&&(this.render(),this.options.refresh&&(this.interval=setInterval(function(){t.render()},this.options.refresh)),this)}},{key:"updateOffset",value:function(t){return this.options.offset=t,this}},{key:"restart",value:function(t){var e=0<arguments.length&&void 0!==t?t:{};return this.mergeOptions(e),this.interval=!1,this.start(),this}}]),n}(),_default=Countdown;exports.default=_default; |
@ -0,0 +1 @@ |
|||||
|
"use strict";function _classCallCheck(t,i){if(!(t instanceof i))throw new TypeError("Cannot call a class as a function")}function _defineProperties(t,i){for(var s=0;s<i.length;s++){var a=i[s];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),Object.defineProperty(t,a.key,a)}}function _createClass(t,i,s){return i&&_defineProperties(t.prototype,i),s&&_defineProperties(t,s),t}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var CountUp=function(){function r(t,i,s,a){var e=4<arguments.length&&void 0!==arguments[4]?arguments[4]:{},n=5<arguments.length&&void 0!==arguments[5]?arguments[5]:getCurrentPages()[getCurrentPages().length-1];_classCallCheck(this,r),Object.assign(this,{page:n,startVal:t,endVal:i,decimals:s,duration:a,options:e}),this.__init()}return _createClass(r,[{key:"__init",value:function(){this.setData=this.page.setData.bind(this.page),this.lastTime=0,this.mergeOptions(this.options),this.startVal=Number(this.startVal),this.cacheVal=this.startVal,this.endVal=Number(this.endVal),this.countDown=this.startVal>this.endVal,this.frameVal=this.startVal,this.decimals=Math.max(0,this.decimals||0),this.dec=Math.pow(10,this.decimals),this.duration=1e3*Number(this.duration)||2e3,this.printValue(this.formattingFn(this.startVal))}},{key:"setDefaultOptions",value:function(){return{useEasing:!0,useGrouping:!0,separator:",",decimal:".",easingFn:null,formattingFn:null,printValue:function(t){}}}},{key:"mergeOptions",value:function(t){var i=this.setDefaultOptions();for(var s in i)i.hasOwnProperty(s)&&(this.options[s]=void 0!==t[s]?t[s]:i[s],"function"==typeof this.options[s]&&(this.options[s]=this.options[s].bind(this)));""===this.options.separator&&(this.options.useGrouping=!1),this.options.prefix||(this.options.prefix=""),this.options.suffix||(this.options.suffix=""),this.easingFn=this.options.easingFn?this.options.easingFn:this.easeOutExpo,this.formattingFn=this.options.formattingFn?this.options.formattingFn:this.formatNumber,this.printValue=this.options.printValue?this.options.printValue:function(){}}},{key:"requestAnimationFrame",value:function(t){var i=this,s=(new Date).getTime(),a=Math.max(0,16-(s-this.lastTime)),e=setTimeout(function(){t.bind(i)(s+a)},a);return this.lastTime=s+a,e}},{key:"cancelAnimationFrame",value:function(t){clearTimeout(t)}},{key:"formatNumber",value:function(t){var i,s,a,e;if(t=t.toFixed(this.decimals),s=(i=(t+="").split("."))[0],a=1<i.length?this.options.decimal+i[1]:"",e=/(\d+)(\d{3})/,this.options.useGrouping)for(;e.test(s);)s=s.replace(e,"$1"+this.options.separator+"$2");return this.options.prefix+s+a+this.options.suffix}},{key:"easeOutExpo",value:function(t,i,s,a){return s*(1-Math.pow(2,-10*t/a))*1024/1023+i}},{key:"count",value:function(t){this.startTime||(this.startTime=t);var i=(this.timestamp=t)-this.startTime;this.remaining=this.duration-i,this.options.useEasing?this.countDown?this.frameVal=this.startVal-this.easingFn(i,0,this.startVal-this.endVal,this.duration):this.frameVal=this.easingFn(i,this.startVal,this.endVal-this.startVal,this.duration):this.countDown?this.frameVal=this.startVal-(this.startVal-this.endVal)*(i/this.duration):this.frameVal=this.startVal+(this.endVal-this.startVal)*(i/this.duration),this.countDown?this.frameVal=this.frameVal<this.endVal?this.endVal:this.frameVal:this.frameVal=this.frameVal>this.endVal?this.endVal:this.frameVal,this.frameVal=Math.round(this.frameVal*this.dec)/this.dec,this.printValue(this.formattingFn(this.frameVal)),i<this.duration?this.rAF=this.requestAnimationFrame(this.count):this.callback&&this.callback()}},{key:"start",value:function(t){return this.callback=t,this.rAF=this.requestAnimationFrame(this.count),!1}},{key:"pauseResume",value:function(){this.paused?(this.paused=!1,delete this.startTime,this.duration=this.remaining,this.startVal=this.frameVal,this.requestAnimationFrame(this.count)):(this.paused=!0,this.cancelAnimationFrame(this.rAF))}},{key:"reset",value:function(){this.paused=!1,delete this.startTime,this.startVal=this.cacheVal,this.cancelAnimationFrame(this.rAF),this.printValue(this.formattingFn(this.startVal))}},{key:"update",value:function(t){this.cancelAnimationFrame(this.rAF),this.paused=!1,delete this.startTime,this.startVal=this.frameVal,this.endVal=Number(t),this.countDown=this.startVal>this.endVal,this.rAF=this.requestAnimationFrame(this.count)}}]),r}(),_default=CountUp;exports.default=_default; |
@ -0,0 +1 @@ |
|||||
|
"use strict";var _baseComponent=_interopRequireDefault(require("../helpers/baseComponent")),_classNames3=_interopRequireDefault(require("../helpers/classNames"));function _interopRequireDefault(t){return t&&t.__esModule?t:{default:t}}function ownKeys(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,o)}return n}function _objectSpread(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ownKeys(n,!0).forEach(function(t){_defineProperty(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ownKeys(n).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function _defineProperty(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var defaults={prefixCls:"wux-dialog",title:"",content:"",buttons:[],verticalButtons:!1,resetOnClose:!1,closable:!1,mask:!0,maskClosable:!0,zIndex:1e3},defaultOptions={onCancel:function(){},cancelText:"取消",cancelType:"default",onConfirm:function(){},confirmText:"确定",confirmType:"primary"};(0,_baseComponent.default)({useFunc:!0,data:defaults,computed:{classes:["prefixCls, buttons, verticalButtons",function(n,t,e){return{prompt:"".concat(n,"__prompt"),input:"".concat(n,"__input"),buttons:(0,_classNames3.default)("".concat(n,"__buttons"),_defineProperty({},"".concat(n,"__buttons--").concat(e?"vertical":"horizontal"),!0)),button:t.map(function(t){var e;return{wrap:(0,_classNames3.default)("".concat(n,"__button"),(_defineProperty(e={},"".concat(n,"__button--").concat(t.type||"default"),t.type||"default"),_defineProperty(e,"".concat(n,"__button--bold"),t.bold),_defineProperty(e,"".concat(n,"__button--disabled"),t.disabled),_defineProperty(e,"".concat(t.className),t.className),e)),hover:t.hoverClass&&"default"!==t.hoverClass?t.hoverClass:"".concat(n,"__button--hover")}})}}]},methods:{onClosed:function(){if(this.data.resetOnClose){var t=_objectSpread({},this.$$mergeOptionsToData(defaults),{prompt:null});this.$$setData(t)}},onClose:function(){this.hide()},hide:function(t){this.$$setData({in:!1}),"function"==typeof t&&t.call(this)},show:function(t){var e=0<arguments.length&&void 0!==t?t:{},n=this.$$mergeOptionsAndBindMethods(Object.assign({},defaults,e));return this.$$setData(_objectSpread({in:!0},n)),this.originalButtons=n.buttons,this.hide.bind(this)},runCallbacks:function(t,e){var n=t.currentTarget.dataset.index,o=this.originalButtons[n];o.disabled||this.hide(function(){return"function"==typeof o[e]&&o[e](t)})},buttonTapped:function(t){this.runCallbacks(t,"onTap")},bindgetuserinfo:function(t){this.runCallbacks(t,"onGetUserInfo")},bindcontact:function(t){this.runCallbacks(t,"onContact")},bindgetphonenumber:function(t){this.runCallbacks(t,"onGotPhoneNumber")},bindopensetting:function(t){this.runCallbacks(t,"onOpenSetting")},onError:function(t){this.runCallbacks(t,"onError")},bindinput:function(t){this.$$setData({"prompt.response":t.detail.value})},open:function(t){var e=0<arguments.length&&void 0!==t?t:{};return this.show(e)},alert:function(t){var e=0<arguments.length&&void 0!==t?t:{};return this.open(Object.assign({buttons:[{text:e.confirmText||defaultOptions.confirmText,type:e.confirmType||defaultOptions.confirmType,onTap:function(t){"function"==typeof e.onConfirm&&e.onConfirm(t)}}]},e))},confirm:function(t){var e=0<arguments.length&&void 0!==t?t:{};return this.open(Object.assign({buttons:[{text:e.cancelText||defaultOptions.cancelText,type:e.cancelType||defaultOptions.cancelType,onTap:function(t){"function"==typeof e.onCancel&&e.onCancel(t)}},{text:e.confirmText||defaultOptions.confirmText,type:e.confirmType||defaultOptions.confirmType,onTap:function(t){"function"==typeof e.onConfirm&&e.onConfirm(t)}}]},e))},prompt:function(){var e=this,n=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{},t={fieldtype:n.fieldtype?n.fieldtype:"text",password:!!n.password,response:n.defaultText?n.defaultText:"",placeholder:n.placeholder?n.placeholder:"",maxlength:n.maxlength?parseInt(n.maxlength):""};return this.open(Object.assign({prompt:t,buttons:[{text:n.cancelText||defaultOptions.cancelText,type:n.cancelType||defaultOptions.cancelType,onTap:function(t){"function"==typeof n.onCancel&&n.onCancel(t)}},{text:n.confirmText||defaultOptions.confirmText,type:n.confirmType||defaultOptions.confirmType,onTap:function(t){"function"==typeof n.onConfirm&&n.onConfirm(t,e.data.prompt.response)}}]},n))}}}); |
@ -0,0 +1,6 @@ |
|||||
|
{ |
||||
|
"component": true, |
||||
|
"usingComponents": { |
||||
|
"wux-popup": "../popup/index" |
||||
|
} |
||||
|
} |
@ -0,0 +1,56 @@ |
|||||
|
<wux-popup |
||||
|
visible="{{ in }}" |
||||
|
z-index="{{ zIndex }}" |
||||
|
closable="{{ closable }}" |
||||
|
mask="{{ mask }}" |
||||
|
mask-closable="{{ maskClosable }}" |
||||
|
bind:close="onClose" |
||||
|
bind:closed="onClosed" |
||||
|
> |
||||
|
<view slot="header">{{ title }}</view> |
||||
|
<view wx:if="{{ content || prompt }}"> |
||||
|
<text>{{ content }}</text> |
||||
|
<view class="{{ classes.prompt }}" wx:if="{{ prompt }}"> |
||||
|
<label> |
||||
|
<input |
||||
|
type="{{ prompt.fieldtype }}" |
||||
|
class="{{ classes.input }}" |
||||
|
value="{{ prompt.response }}" |
||||
|
password="{{ prompt.password }}" |
||||
|
placeholder="{{ prompt.placeholder }}" |
||||
|
maxlength="{{ maxlength }}" |
||||
|
bindinput="bindinput" |
||||
|
/> |
||||
|
</label> |
||||
|
</view> |
||||
|
</view> |
||||
|
<view slot="footer" class="{{ classes.buttons }}"> |
||||
|
<block wx:for="{{ buttons }}" wx:for-item="button" wx:key=""> |
||||
|
<button |
||||
|
class="{{ classes.button[index].wrap }}" |
||||
|
disabled="{{ button.disabled }}" |
||||
|
open-type="{{ button.openType }}" |
||||
|
hover-class="{{ !button.disabled ? classes.button[index].hover : 'none' }}" |
||||
|
hover-stop-propagation="{{ button.hoverStopPropagation }}" |
||||
|
hover-start-time="{{ button.hoverStartTime || 20 }}" |
||||
|
hover-stay-time="{{ button.hoverStayTime || 70 }}" |
||||
|
lang="{{ button.lang || 'en' }}" |
||||
|
bindgetuserinfo="bindgetuserinfo" |
||||
|
session-from="{{ button.sessionFrom }}" |
||||
|
send-message-title="{{ button.sendMessageTitle }}" |
||||
|
send-message-path="{{ button.sendMessagePath }}" |
||||
|
send-message-img="{{ button.sendMessageImg }}" |
||||
|
show-message-card="{{ button.showMessageCard }}" |
||||
|
bindcontact="bindcontact" |
||||
|
bindgetphonenumber="bindgetphonenumber" |
||||
|
app-parameter="{{ button.appParameter }}" |
||||
|
binderror="onError" |
||||
|
bindopensetting="bindopensetting" |
||||
|
data-index="{{ index }}" |
||||
|
bindtap="buttonTapped" |
||||
|
> |
||||
|
{{ button.text }} |
||||
|
</button> |
||||
|
</block> |
||||
|
</view> |
||||
|
</wux-popup> |
@ -0,0 +1 @@ |
|||||
|
.wux-dialog__button{padding:0;margin:0;border-radius:0;color:inherit!important;background:0 0!important;font-size:inherit;font-weight:400;line-height:inherit;text-align:inherit;text-decoration:none;overflow:visible;min-height:0!important;width:auto!important;box-sizing:border-box;-webkit-tap-highlight-color:transparent;display:block;-ms-flex:1;flex:1;color:#33cd5f!important;position:relative}.wux-dialog__button:after{display:block;position:static;top:auto;left:auto;width:auto;height:auto;border:none;border-radius:0;transform:none;transform-origin:0 0}.wux-dialog__button--default{color:#353535!important}.wux-dialog__button--primary{color:#33cd5f!important}.wux-dialog__button--bold{font-weight:500!important}.wux-dialog__button--hover{background-color:#ececec!important}.wux-dialog__button--disabled{opacity:.3}.wux-dialog__prompt{position:relative;margin-top:20rpx}.wux-dialog__prompt:after{content:" ";position:absolute;top:0;left:0;width:200%;height:200%;transform:scale(.5);transform-origin:0 0;pointer-events:none;box-sizing:border-box;border:0 solid #d5d5d6;border-top-width:2rpx;border-right-width:2rpx;border-bottom-width:2rpx;border-left-width:2rpx;border-radius:12rpx}.wux-dialog__input{padding:8rpx 12rpx;height:72rpx;line-height:1;width:100%;text-align:left;box-sizing:border-box}.wux-dialog__buttons{display:-ms-flexbox;display:flex;-ms-flex:1;flex:1}.wux-dialog__buttons--horizontal .wux-dialog__button:after{content:" ";position:absolute;left:0;top:0;width:2rpx;bottom:0;border-left:2rpx solid #d5d5d6;color:#d5d5d6;transform-origin:0 0;transform:scaleX(.5)}.wux-dialog__buttons--horizontal .wux-dialog__button:first-child:after{display:none}.wux-dialog__buttons--vertical{display:block;height:auto}.wux-dialog__buttons--vertical .wux-dialog__button:after{content:" ";position:absolute;left:0;top:0;right:0;height:2rpx;border-top:2rpx solid #d5d5d6;color:#d5d5d6;transform-origin:0 0;transform:scaleY(.5)} |
@ -0,0 +1 @@ |
|||||
|
"use strict";var _baseComponent=_interopRequireDefault(require("../helpers/baseComponent")),_createFieldsStore=_interopRequireDefault(require("../helpers/createFieldsStore"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function _iterableToArray(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e)){for(var t=0,r=new Array(e.length);t<e.length;t++)r[t]=e[t];return r}}function ownKeys(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),r.push.apply(r,n)}return r}function _objectSpread(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?ownKeys(r,!0).forEach(function(e){_defineProperty(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):ownKeys(r).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function _defineProperty(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var DEFAULT_TRIGGER="onChange";function noop(){}function getValueFromEvent(e){return e&&e.detail?e.detail.value:"value"in e?e.value:e}var children=["picker","date-picker","popup-select","radio-group","checkbox-group","switch","input","input-number","rater","slider","textarea"],relations=children.map(function(e){return"../".concat(e,"/index")}).reduce(function(e,t){return _objectSpread({},e,_defineProperty({},t,{type:"descendant",observer:function(){this.debounce(this.changeValue)}}))},{});(0,_baseComponent.default)({useField:!0,relations:_objectSpread({"../form/index":{type:"ancestor"}},relations),properties:{initialValue:{type:null,value:null,observer:"changeValue"},valuePropName:{type:String,value:"inputValue"},trigger:{type:String,value:DEFAULT_TRIGGER}},methods:{getNodes:function(e){var t=this;return(0<arguments.length&&void 0!==e?e:[]).map(function(e){return t.getRelationNodes(e)[0]}).filter(function(e){return!!e})},changeValue:function(e){var t=this,r=0<arguments.length&&void 0!==e?e:this.data.value,n=this.getRelationsName(["descendant"]),o=this.getNodes(n);this.fieldsStore=this.fieldsStore||(0,_createFieldsStore.default)(),this.setValue(r),0<o.length&&o.forEach(function(e){e.hasFieldDecorator=!0,t.setValue(r,e,t.data.valuePropName,function(){t.forceUpdate(t.data.name,t.data,e)})})},setValue:function(e,t,r,n){var o=1<arguments.length&&void 0!==t?t:this,a=2<arguments.length&&void 0!==r?r:"value",i=3<arguments.length&&void 0!==n?n:noop;o.data[a]!==e?o.setData(_defineProperty({},a,e),i):i()},forceUpdate:function(e,t,r){var n=t.valuePropName,o=this.getFieldDecorator(e,t,r),a=o[n];delete o[n],r.setData(o),this.setValue(a,r,n)},onCollectCommon:function(e,t,r){var n=this.fieldsStore.getField(e),o=n.inputElem,a=n.oriInputProps.oriInputEvents;a&&a[t]&&a[t].apply(a,_toConsumableArray(r));var i=getValueFromEvent.apply(void 0,_toConsumableArray(r)),l=this.fieldsStore.getFieldValue(e),u=this.getRelationNodes("../form/index")[0];if(i!==l&&(this.setValue(i),this.setValue(i,o,n.valuePropName),u)){var s=_defineProperty({},e,i),p=this.fieldsStore.getFieldsValue();u.onChange(s,_objectSpread({},p,{},s))}return{name:e,field:_objectSpread({},n,{value:i})}},onCollect:function(e,t){for(var r=arguments.length,n=new Array(2<r?r-2:0),o=2;o<r;o++)n[o-2]=arguments[o];var a=this.onCollectCommon(e,t,n),i=a.name,l=a.field;this.fieldsStore.setFields(_defineProperty({},i,l))},getFieldDecorator:function(n,e,t){var o=this,r=this.fieldsStore.getField(n),a=t.data,i=e.trigger,l=void 0===i?DEFAULT_TRIGGER:i,u=_objectSpread({},r,{},e,{name:n,oriInputProps:a,inputElem:t});this.fieldsStore.setFields(_defineProperty({},n,u));var s=_objectSpread({},this.fieldsStore.getFieldValuePropValue(e));return l&&!a.oriInputEvents&&(s.oriInputEvents=_objectSpread({},a.inputEvents),s.inputEvents=_objectSpread({},a.inputEvents,_defineProperty({},l,function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return o.onCollect.apply(o,[n,l].concat(t))}))),s}}}); |
@ -0,0 +1,3 @@ |
|||||
|
{ |
||||
|
"component": true |
||||
|
} |
@ -0,0 +1 @@ |
|||||
|
<slot></slot> |
File diff suppressed because one or more lines are too long
@ -0,0 +1,11 @@ |
|||||
|
{ |
||||
|
"component": true, |
||||
|
"usingComponents": { |
||||
|
"wux-animation-group": "../animation-group/index", |
||||
|
"wux-backdrop": "../backdrop/index", |
||||
|
"wux-radio-group": "../radio-group/index", |
||||
|
"wux-radio": "../radio/index", |
||||
|
"wux-checkbox-group": "../checkbox-group/index", |
||||
|
"wux-checkbox": "../checkbox/index" |
||||
|
} |
||||
|
} |
@ -0,0 +1,134 @@ |
|||||
|
<view class="wux-class {{ classes.wrap }}"> |
||||
|
<wux-backdrop id="wux-backdrop" data-index="{{ index }}" bind:click="onClose" /> |
||||
|
<view class="{{ classes.bd }}"> |
||||
|
<block wx:for="{{ options }}" wx:key=""> |
||||
|
<view class="{{ classes.item }} {{ common.getItemCls(prefixCls, item) }}" bindtap="onClick" data-index="{{ index }}"> |
||||
|
<view class="{{ classes.text }}"> |
||||
|
{{ item.type !== 'filter' ? displayValues[index] : item.label }} |
||||
|
<view class="{{ classes.icon }} {{ common.getIconCls(prefixCls, item) }}" wx:if="{{ item.type !== 'text' }}"></view> |
||||
|
</view> |
||||
|
</view> |
||||
|
</block> |
||||
|
</view> |
||||
|
<block wx:for="{{ options }}" wx:key=""> |
||||
|
<wux-animation-group wux-class="{{ classes.pop }}" in="{{ item.visible }}" class-names="wux-animate--slideInRight" bind:enter="onEnter" bind:exit="onExit" wx:if="{{ item.type === 'filter' }}"> |
||||
|
<scroll-view class="{{ classes.scrollView }}" scroll-y bindscroll="onScroll"> |
||||
|
<block wx:for="{{ item.children }}" wx:for-item="p" wx:for-index="pIndex" wx:key=""> |
||||
|
<view class="{{ classes.panel }}"> |
||||
|
<view class="{{ classes.panelHd }}"> |
||||
|
<div class="{{ classes.panelTitle }}">{{ p.label }}</div> |
||||
|
<div class="{{ classes.panelSelected }}">{{ displayValues[index] && displayValues[index][pIndex] }}</div> |
||||
|
</view> |
||||
|
<view class="{{ classes.panelBd }}"> |
||||
|
<radio-group bindchange="onPopupSelectChange" data-parent-index="{{ index }}" data-index="{{ pIndex }}" wx:if="{{ p.type === 'radio' }}"> |
||||
|
<view class="{{ classes.groups }}"> |
||||
|
<block wx:for="{{ p.children }}" wx:for-item="g" wx:for-index="cIndex" wx:key=""> |
||||
|
<view class="{{ classes.group }}"> |
||||
|
<radio |
||||
|
class="{{ classes.radio }}" |
||||
|
value="{{ g.value }}" |
||||
|
checked="{{ common.getChecked(values[index] && values[index][pIndex], g.value) }}" |
||||
|
/> |
||||
|
<view class="{{ classes.btn }} {{ common.getChecked(values[index] && values[index][pIndex], g.value) ? prefixCls + '__btn--checked' : '' }}">{{ g.label }}</view> |
||||
|
</view> |
||||
|
</block> |
||||
|
</view> |
||||
|
</radio-group> |
||||
|
<checkbox-group bindchange="onPopupSelectChange" data-parent-index="{{ index }}" data-index="{{ pIndex }}" wx:else="{{ p.type === 'checkbox' }}"> |
||||
|
<view class="{{ classes.groups }}"> |
||||
|
<block wx:for="{{ p.children }}" wx:for-item="g" wx:for-index="cIndex" wx:key=""> |
||||
|
<view class="{{ classes.group }}"> |
||||
|
<checkbox |
||||
|
class="{{ classes.check }}" |
||||
|
value="{{ g.value }}" |
||||
|
checked="{{ common.getChecked(values[index] && values[index][pIndex], g.value) }}" |
||||
|
/> |
||||
|
<view class="{{ classes.btn }} {{ common.getChecked(values[index] && values[index][pIndex], g.value) ? prefixCls + '__btn--checked' : '' }}">{{ g.label }}</view> |
||||
|
</view> |
||||
|
</block> |
||||
|
</view> |
||||
|
</checkbox-group> |
||||
|
</view> |
||||
|
</view> |
||||
|
</block> |
||||
|
</scroll-view> |
||||
|
<div class="{{ classes.btns }}"> |
||||
|
<view class="{{ classes.btn }}" data-index="{{ index }}" bindtap="onSelectReset">{{ cancelText }}</view> |
||||
|
<view class="{{ classes.btn }} {{ prefixCls + '__btn--danger' }}" data-index="{{ index }}" bindtap="onSelectConfirm">{{ confirmText }}</view> |
||||
|
</div> |
||||
|
</wux-animation-group> |
||||
|
<wux-animation-group wux-class="{{ classes.select }}" in="{{ item.visible }}" class-names="wux-animate--fadeIn" bind:enter="onEnter" bind:exit="onExit" wx:if="{{ item.type === 'radio' }}"> |
||||
|
<scroll-view class="{{ classes.scrollView }}" scroll-y> |
||||
|
<wux-radio-group |
||||
|
value="{{ values[index] }}" |
||||
|
options="{{ common.getOptions(item.children) }}" |
||||
|
bind:change="onSelectChange" |
||||
|
data-index="{{ index }}" |
||||
|
data-type="{{ item.type }}" |
||||
|
/> |
||||
|
</scroll-view> |
||||
|
</wux-animation-group> |
||||
|
<wux-animation-group wux-class="{{ classes.select }}" in="{{ item.visible }}" class-names="wux-animate--fadeIn" bind:enter="onEnter" bind:exit="onExit" wx:if="{{ item.type === 'checkbox' }}"> |
||||
|
<scroll-view class="{{ classes.scrollView }}" scroll-y> |
||||
|
<wux-checkbox-group |
||||
|
value="{{ values[index] }}" |
||||
|
options="{{ common.getOptions(item.children) }}" |
||||
|
bind:change="onSelectChange" |
||||
|
data-index="{{ index }}" |
||||
|
data-type="{{ item.type }}" |
||||
|
/> |
||||
|
<div class="{{ classes.btns }}"> |
||||
|
<view class="{{ classes.btn }}" data-index="{{ index }}" bindtap="onSelectReset">{{ cancelText }}</view> |
||||
|
<view class="{{ classes.btn }} {{ prefixCls + '__btn--danger' }}" data-index="{{ index }}" bindtap="onSelectConfirm">{{ confirmText }}</view> |
||||
|
</div> |
||||
|
</scroll-view> |
||||
|
</wux-animation-group> |
||||
|
</block> |
||||
|
</view> |
||||
|
|
||||
|
<wxs module="common"> |
||||
|
module.exports = { |
||||
|
getOptions: function(options) { |
||||
|
return options.map(function(option) { |
||||
|
if (option.constructor === 'String') { |
||||
|
return { |
||||
|
title: option, |
||||
|
value: option |
||||
|
} |
||||
|
} |
||||
|
return { |
||||
|
title: option.label, |
||||
|
value: option.value |
||||
|
} |
||||
|
}) |
||||
|
}, |
||||
|
getChecked: function(values, value) { |
||||
|
if (!values || !values.length) return false |
||||
|
if (values.constructor === 'Array') { |
||||
|
return values.indexOf(value) !== -1 |
||||
|
} |
||||
|
return values === value |
||||
|
}, |
||||
|
getItemCls: function(prefixCls, item) { |
||||
|
var itemCls = [] |
||||
|
if (item.type !== 'text') { |
||||
|
itemCls.push(prefixCls + '__item--has-icon') |
||||
|
} |
||||
|
if (item.checked) { |
||||
|
itemCls.push(prefixCls + '__item--checked') |
||||
|
} |
||||
|
return itemCls.join(' ') |
||||
|
}, |
||||
|
getIconCls: function(prefixCls, icon) { |
||||
|
var iconCls = [prefixCls + '__icon--' + icon.type] |
||||
|
if (icon.type === 'sort') { |
||||
|
if (icon.sort === 1) { |
||||
|
iconCls.push(prefixCls + '__icon--sort-asc') |
||||
|
} else if (icon.sort === -1) { |
||||
|
iconCls.push(prefixCls + '__icon--sort-desc') |
||||
|
} |
||||
|
} |
||||
|
return iconCls.join(' ') |
||||
|
}, |
||||
|
} |
||||
|
</wxs> |
File diff suppressed because one or more lines are too long
@ -0,0 +1 @@ |
|||||
|
"use strict";var _baseComponent=_interopRequireDefault(require("../helpers/baseComponent")),_createFieldsStore=_interopRequireDefault(require("../helpers/createFieldsStore"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function ownKeys(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,r)}return i}function _objectSpread(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?ownKeys(i,!0).forEach(function(e){_defineProperty(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):ownKeys(i).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}function _defineProperty(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}(0,_baseComponent.default)({relations:{"../field/index":{type:"descendant",observer:function(e,t){var i=t.unlinked;this.renderFields[e.data.name]=!1===i,this.debounce(this.changeValue)}}},properties:{},methods:{changeValue:function(){var n=this,e=this.getRelationNodes("../field/index");if(0<e.length){var t=e.reduce(function(e,t){var i=t.data,r=i.name,s=_objectSpread({},i,{},n.fieldsStore.getField(r),{originalProps:i,fieldElem:t});return e[r]=s,n.renderFields[r]=!0,t.fieldsStore=n.fieldsStore,e},{});this.fieldsStore.updateFields(t),this.clearUnlinkedFields()}},clearUnlinkedFields:function(){var t=this,e=this.fieldsStore.getAllFieldsName().filter(function(e){return!t.renderFields[e]});0<e.length&&e.forEach(function(e){return t.clearField(e)})},clearField:function(e){this.fieldsStore.clearField(e),delete this.renderFields[e]},setFields:function(r){var s=this;Object.keys(r).forEach(function(e){var t=s.fieldsStore.getField(e),i=_objectSpread({},t,{value:r[e]});s.fieldsStore.setFields(_defineProperty({},e,i)),t&&t.fieldElem&&t.fieldElem.changeValue(r[e])})},setFieldsValue:function(i){var r=this.fieldsStore.fields,e=Object.keys(i).reduce(function(e,t){return r[t]&&(e[t]=i[t]),e},{});this.setFields(e);var t=this.getFieldsValue();this.onChange(e,t)},resetFields:function(e){var t=Array.isArray(e)?e:[e],i=this.fieldsStore.resetFields(t);0<Object.keys(i).length&&this.setFields(i)},getForm:function(){return{getFieldsValue:this.getFieldsValue,getFieldValue:this.getFieldValue,setFieldsValue:this.setFieldsValue,setFields:this.setFields,resetFields:this.resetFields}},onChange:function(e,t){this.triggerEvent("change",{form:this.getForm(),changedValues:e,allValues:t})}},created:function(){var i=this;this.fieldsStore=(0,_createFieldsStore.default)(),this.renderFields={},this.setFieldsValue=this.setFieldsValue.bind(this),this.setFields=this.setFields.bind(this),this.resetFields=this.resetFields.bind(this),["getFieldsValue","getFieldValue"].forEach(function(t){i[t]=function(){var e;return(e=i.fieldsStore)[t].apply(e,arguments)}})}}); |
@ -0,0 +1,3 @@ |
|||||
|
{ |
||||
|
"component": true |
||||
|
} |
Some files were not shown because too many files changed in this diff
Loading…
Reference in new issue