diff --git a/src/mindspore/app.json b/src/mindspore/app.json
index 926017a9830c018495c5010ccd0cb2c1bec31534..7db45e0f94960c5bd2bd0fa999442e707126c3c5 100644
--- a/src/mindspore/app.json
+++ b/src/mindspore/app.json
@@ -36,14 +36,9 @@
"publish/publish",
"publish/success",
"events/event-detail",
- "sign-up/sign-up",
- "sign-up/sign-up-success",
"events/poster",
- "sign-up/career-direction",
- "sign-up/career-name",
"events/sign",
- "events/sign-success",
- "sign-up/save-success"
+ "events/sign-success"
]
},
{
diff --git a/src/mindspore/components/meeting-list/meeting-list.js b/src/mindspore/components/meeting-list/meeting-list.js
index 41b3746cfe2b0e7b6754f61216c8762697ba96f2..62a1a3b973466150adfd72004b8978d03891d146 100644
--- a/src/mindspore/components/meeting-list/meeting-list.js
+++ b/src/mindspore/components/meeting-list/meeting-list.js
@@ -291,7 +291,7 @@ Component({
},
del: function () {
that = this;
- remoteMethods.delMeeting(this.data.curMmid, function (data) {
+ remoteMethods.delMeeting(this.data.curMid, function (data) {
if (data.code == 200) {
wx.redirectTo({
url: that.properties.isHome
diff --git a/src/mindspore/components/meeting-list/meeting-list.wxml b/src/mindspore/components/meeting-list/meeting-list.wxml
index 789b6359573ec0611b11d8ea338220c9c9ba49a8..31e1da2dfb05643ecb00c7301ae4682f48d0b6c0 100644
--- a/src/mindspore/components/meeting-list/meeting-list.wxml
+++ b/src/mindspore/components/meeting-list/meeting-list.wxml
@@ -1,77 +1,77 @@
-
-{{isHome?'最近':'今天'}}的会议({{list.length}})
-
-
-
-
-
- {{curFilterName}}
-
-
-
-
-
-
-
-
- {{item.named}}
-
-
-
- {{item.dates||item.date}} {{item.start}}-{{item.end}} (可回放)
-
- {{item.dates||item.date}} {{item.start}}-{{item.end}}
-
-
-
- {{item.group_names}}
-
-
-
- {{item.agenda}}
-
-
-
-
-
-
-
-
-
- 暂无会议!
- 当前暂无任何会议哦
-
-
-
-
- {{curMid}}
- {{curJoinUrl}}
-
-
-
-
-
-
-
-
-
- 请确认删除当前会议
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+{{isHome?'最近':'今天'}}的会议({{list.length}})
+
+
+
+
+
+ {{curFilterName}}
+
+
+
+
+
+
+
+
+ {{item.named}}
+
+
+
+ {{item.dates||item.date}} {{item.start}}-{{item.end}} (可回放)
+
+ {{item.dates||item.date}} {{item.start}}-{{item.end}}
+
+
+
+ {{item.group_names}}
+
+
+
+ {{item.agenda}}
+
+
+
+
+
+
+
+
+
+ 暂无会议!
+ 当前暂无任何会议哦
+
+
+
+
+ {{curMid}}
+ {{curJoinUrl}}
+
+
+
+
+
+
+
+
+
+ 请确认删除当前会议
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/mindspore/config/constants.js b/src/mindspore/config/constants.js
index 641038cce6c0a12f45a9b94a92699e95093c1af6..bf5c7cc5a5c862a9bfd621052612ead49a864493 100644
--- a/src/mindspore/config/constants.js
+++ b/src/mindspore/config/constants.js
@@ -1,21 +1,20 @@
-/**
- * 常量配置
- */
-var _ = require('../utils/underscore-extend.js');
-
-// 服务连接配置
-var serviceConfig = {
- // SERVICE_URL: 'https://api.mindspore.cn/meetings', // 正式环境
- SERVICE_URL: "http://119.8.32.82", // 测试环境
-
-};
-
-// 存储配置
-var storageConfig = {
- APP_USERINFO_SESSION: '_app_userinfo_session',
-};
-
-// 所有配置
-var constants = _.deepExtend(true, serviceConfig, storageConfig);
-
-module.exports = constants;
+/**
+ * 常量配置
+ */
+var _ = require('../utils/underscore-extend.js');
+
+// 服务连接配置
+var serviceConfig = {
+ SERVICE_URL: 'https://api.mindspore.cn/meetings', // 正式环境
+ // SERVICE_URL: "http://119.8.32.82", // 测试环境
+};
+
+// 存储配置
+var storageConfig = {
+ APP_USERINFO_SESSION: '_app_userinfo_session',
+};
+
+// 所有配置
+var constants = _.deepExtend(true, serviceConfig, storageConfig);
+
+module.exports = constants;
diff --git a/src/mindspore/package-events/events/event-detail.js b/src/mindspore/package-events/events/event-detail.js
index c96bebd5626812acd53fbc4629491d2f7908667a..ab13189b05255bfd0c6b2e9307058bcea4fc4d32 100644
--- a/src/mindspore/package-events/events/event-detail.js
+++ b/src/mindspore/package-events/events/event-detail.js
@@ -1,367 +1,379 @@
-// package-events/events/event-detail.js
-const appAjax = require('./../../utils/app-ajax');
-const sessionUtil = require('../../utils/app-session.js');
-
-let that = null;
-let remoteMethods = {
- getDraftDetail: function (_callback) {
- let service = 'EVENT_DETAIL';
- if (that.data.type == 5) {
- service = 'EVENT_DETAIL';
- } else if (that.data.type == 1) {
- service = 'EXAMINE_DETAIL';
- } else if (that.data.type == 4) {
- service = 'DRAFT_DETAIL';
- }
- appAjax.postJson({
- autoShowWait: true,
- type: 'GET',
- service,
- otherParams: {
- id: that.data.id,
- },
- success: function (ret) {
- _callback && _callback(ret);
- },
- });
- },
- reject: function (_callback) {
- appAjax.postJson({
- autoShowWait: true,
- type: 'PUT',
- service: 'REJECT_PUBLISH',
- otherParams: {
- id: that.data.id || '',
- },
- success: function (ret) {
- _callback && _callback(ret);
- },
- });
- },
- resolve: function (_callback) {
- appAjax.postJson({
- autoShowWait: true,
- type: 'PUT',
- service: 'RESOLVE_PUBLISH',
- otherParams: {
- id: that.data.id || '',
- },
- success: function (ret) {
- _callback && _callback(ret);
- },
- });
- },
- draftPublish: function (postData, _callback) {
- appAjax.postJson({
- autoShowWait: true,
- type: 'PUT',
- service: 'EDIT_DETAIL_PUBLISH',
- data: postData,
- otherParams: {
- id: that.data.id || '',
- },
- success: function (ret) {
- _callback && _callback(ret);
- },
- });
- },
- collect: function (_callback) {
- appAjax.postJson({
- autoShowWait: true,
- type: 'POST',
- service: 'EVENT_COLLECT',
- data: {
- activity: that.data.id,
- },
- success: function (ret) {
- _callback && _callback(ret);
- },
- });
- },
- unCollect: function (_callback) {
- appAjax.postJson({
- autoShowWait: true,
- type: 'DELETE',
- service: 'EVENT_UNCOLLECT',
- otherParams: {
- id: that.data.info.collection_id,
- },
- success: function (ret) {
- _callback && _callback(ret);
- },
- });
- },
-};
-Page({
- /**
- * 页面的初始数据
- */
-
- data: {
- info: {},
- showReplay:false,
- id: '',
- startTime:'',
- endTime:'',
- steps: [],
- tabIndex: 0,
- activeNames:0,
- betweenDay:[],
- showDialog:false,
- type: 0,
- level: 1,
- user: '',
- scene: '',
- isIphoneX: false,
- },
-
- onLoad: function (options) {
- that = this;
- this.setData({
- id: options.id || decodeURIComponent(options.scene),
- scene: decodeURIComponent(options.scene) || '',
- type: options.type,
- level: sessionUtil.getUserInfoByKey('eventLevel') || 1,
- });
- wx.getSystemInfo({
- success(res) {
- if (res.model.indexOf('iPhone X') >= 0 || res.model.indexOf('iPhone 11') >= 0) {
- that.setData({
- isIphoneX: true,
- });
- }
- },
- });
- },
-
- onShow: function () {
- this.setData({
- user: sessionUtil.getUserInfoByKey('userId'),
- });
- remoteMethods.getDraftDetail((res) => {
- let betweenDay = this.getBetweenDateStr(res.start_date,res.end_date)
- this.setData({
- info: res,
- startTime:res.start_date.replaceAll('-','.'),
- endTime:res.end_date.replaceAll('-','.'),
- betweenDay:betweenDay
- });
- let arr = [];
- JSON.parse(res.schedules).forEach((dayTime,index) => {
- arr.push([])
- dayTime.forEach(item => {
- if(item.speakerList){
- arr[index].push({
- duration: item.start + '-' + item.end,
- title: item.topic,
- speakerList: item.speakerList
- })
- } else {
- arr.push({
- duration: item.start + '-' + item.end,
- title: item.topic,
- speakerList: [{
- name: item.speaker || '',
- title: item.desc || ''
- }]
- })
- }
- })
- });
- this.setData({
- steps: arr,
- });
- });
- },
- linkClick() {
- this.setData({
- showDialog:true
- })
- },
- colseDiglog() {
- this.setData({
- showReplay:false,
- showDialog:false
- })
- },
- maskClick () {
- if (this.data.info.replay_url && this.data.info.status == 5) {
- this.setData({
- showReplay:true
- })
- } else {
- this.setData({
- showDialog:true
- })
- }
-
- },
- copyLink(e) {
- let link = e.currentTarget.dataset.link
- let that = this
- wx.setClipboardData({
- data: link,
- success: function () {
- that.setData({
- showDialog: false,
- showReplay:false
- })
- },
- fail:function () {
- that.setData({
- showDialog: false,
- showReplay:false
- })
- }
- })
- },
- getBetweenDateStr(start, end) {
- let startDate = Date.parse(start);
- let endDate = Date.parse(end);
- if (startDate > endDate) {
- return false;
- } else if (startDate == endDate) {
- return [start]
- }
- let result = [];
- let beginDay = start.split("-");
- let endDay = end.split("-");
- let diffDay = new Date();
- let dateList = new Array;
- let i = 0;
- diffDay.setDate(beginDay[2]);
- diffDay.setMonth(beginDay[1] - 1);
- diffDay.setFullYear(beginDay[0]);
- result.push(start);
- while (i == 0) {
- let countDay = diffDay.getTime() + 24 * 60 * 60 * 1000;
- diffDay.setTime(countDay);
- dateList[2] = diffDay.getDate();
- dateList[1] = diffDay.getMonth() + 1;
- dateList[0] = diffDay.getFullYear();
- if (String(dateList[1]).length == 1) {
- dateList[1] = "0" + dateList[1]
- }
- if (String(dateList[2]).length == 1) {
- dateList[2] = "0" + dateList[2]
- }
- result.push(dateList[0] + "-" + dateList[1] + "-" + dateList[2]);
- if (dateList[0] == endDay[0] && dateList[1] == endDay[1] && dateList[2] == endDay[2]) {
- i = 1;
- }
- }
- return result;
- },
- dateChange(event) {
- this.setData({
- activeNames: event.detail,
- });
- },
- switchTab(e) {
- this.setData({
- tabIndex: e.currentTarget.dataset.index,
- });
- },
- openLocation(e) {
- if (e.currentTarget.dataset.item.activity_type == 2) {
- return;
- }
- wx.openLocation({
- latitude: Number(e.currentTarget.dataset.item.latitude),
- longitude: Number(e.currentTarget.dataset.item.longitude),
- name: e.currentTarget.dataset.item.detail_address, // 名称
- address: e.currentTarget.dataset.item.address, // 地址
- });
- },
- toEditDraft() {
- wx.redirectTo({
- url: `/package-events/publish/publish?id=${this.data.id}&type=${this.data.type}`,
- });
- },
- draftPublish() {
- let postData = this.data.info;
- postData.schedules = JSON.parse(postData.schedules);
- remoteMethods.draftPublish(postData, (res) => {
- if (res.code === 201) {
- wx.redirectTo({
- url: '/package-events/publish/success?type=2',
- });
- } else {
- setTimeout(function () {
- wx.showToast(
- {
- title: res.message,
- icon: 'none',
- duration: 2000,
- },
- 100
- );
- });
- }
- });
- },
- reject() {
- remoteMethods.reject(() => {
- wx.navigateBack();
- });
- },
- resolve() {
- remoteMethods.resolve(() => {
- wx.navigateBack();
- });
- },
- editSchedule() {
- wx.redirectTo({
- url: `/package-events/publish/publish?id=${this.data.id}&type=${this.data.type}`,
- });
- },
- switchTab2() {
- this.setData({
- tabIndex: 1,
- });
- },
- toSignUp() {
- if (!sessionUtil.getUserInfoByKey('access')) {
- wx.navigateTo({
- url: '/pages/auth/auth'
- })
- return;
- }
- wx.navigateTo({
- url: `/package-events/sign-up/sign-up?id=${this.data.info.id}&title=${this.data.info.title}&poster=${this.data.info.poster}`
- })
-},
- onShareAppMessage() {
- return {
- title: '活动详情',
- path: `/package-events/events/event-detail?id=${that.data.id}&type=5`,
- };
- },
- toPoster(e) {
- wx.navigateTo({
- url: `/package-events/events/poster?isDraft=${e.currentTarget.dataset.flag || ''}&id=${this.data.info.id}`,
- });
- },
- redrictLogin() {
- if (this.data.scene) {
- wx.navigateTo({
- url: '/pages/auth/auth?id=' + that.data.id,
- });
- } else {
- wx.navigateTo({
- url: '/pages/auth/auth',
- });
- }
- },
- collect() {
- if (!this.data.info.collection_id) {
- remoteMethods.collect(() => {
- this.onShow();
- });
- } else {
- remoteMethods.unCollect(() => {
- this.onShow();
- });
- }
- },
-});
+// package-events/events/event-detail.js
+const appAjax = require('./../../utils/app-ajax');
+const sessionUtil = require('../../utils/app-session.js');
+
+let that = null;
+let remoteMethods = {
+ getDraftDetail: function (_callback) {
+ let service = 'EVENT_DETAIL';
+ if (that.data.type == 5) {
+ service = 'EVENT_DETAIL';
+ } else if (that.data.type == 1) {
+ service = 'EXAMINE_DETAIL';
+ } else if (that.data.type == 4) {
+ service = 'DRAFT_DETAIL';
+ }
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'GET',
+ service,
+ otherParams: {
+ id: that.data.id,
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ },
+ });
+ },
+ reject: function (_callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'PUT',
+ service: 'REJECT_PUBLISH',
+ otherParams: {
+ id: that.data.id || '',
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ },
+ });
+ },
+ resolve: function (_callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'PUT',
+ service: 'RESOLVE_PUBLISH',
+ otherParams: {
+ id: that.data.id || '',
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ },
+ });
+ },
+ draftPublish: function (postData, _callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'PUT',
+ service: 'EDIT_DETAIL_PUBLISH',
+ data: postData,
+ otherParams: {
+ id: that.data.id || '',
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ },
+ });
+ },
+ collect: function (_callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'POST',
+ service: 'EVENT_COLLECT',
+ data: {
+ activity: that.data.id,
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ },
+ });
+ },
+ unCollect: function (_callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'DELETE',
+ service: 'EVENT_UNCOLLECT',
+ otherParams: {
+ id: that.data.info.collection_id,
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ },
+ });
+ },
+};
+Page({
+ /**
+ * 页面的初始数据
+ */
+
+ data: {
+ info: {},
+ showReplay:false,
+ id: '',
+ startTime:'',
+ endTime:'',
+ steps: [],
+ tabIndex: 0,
+ activeNames:0,
+ betweenDay:[],
+ showDialog:false,
+ showRegister:false,
+ type: 0,
+ level: 1,
+ user: '',
+ scene: '',
+ isIphoneX: false,
+ },
+
+ onLoad: function (options) {
+ that = this;
+ this.setData({
+ id: options.id || decodeURIComponent(options.scene),
+ scene: decodeURIComponent(options.scene) || '',
+ type: options.type,
+ level: sessionUtil.getUserInfoByKey('eventLevel') || 1,
+ });
+ wx.getSystemInfo({
+ success(res) {
+ if (res.model.indexOf('iPhone X') >= 0 || res.model.indexOf('iPhone 11') >= 0) {
+ that.setData({
+ isIphoneX: true,
+ });
+ }
+ },
+ });
+ },
+
+ onShow: function () {
+ this.setData({
+ user: sessionUtil.getUserInfoByKey('userId'),
+ });
+ remoteMethods.getDraftDetail((res) => {
+ let betweenDay = this.getBetweenDateStr(res.start_date,res.end_date)
+ this.setData({
+ info: res,
+ startTime:res.start_date.replaceAll('-','.'),
+ endTime:res.end_date.replaceAll('-','.'),
+ betweenDay:betweenDay
+ });
+ let arr = [];
+ JSON.parse(res.schedules).forEach((dayTime,index) => {
+ arr.push([])
+ dayTime.forEach(item => {
+ if(item.speakerList){
+ arr[index].push({
+ duration: item.start + '-' + item.end,
+ title: item.topic,
+ speakerList: item.speakerList
+ })
+ } else {
+ arr.push({
+ duration: item.start + '-' + item.end,
+ title: item.topic,
+ speakerList: [{
+ name: item.speaker || '',
+ title: item.desc || ''
+ }]
+ })
+ }
+ })
+ });
+ this.setData({
+ steps: arr,
+ });
+ });
+ },
+ linkClick() {
+ this.setData({
+ showDialog:true
+ })
+ },
+ colseDiglog() {
+ this.setData({
+ showReplay:false,
+ showDialog:false,
+ showRegister:false,
+ })
+ },
+ maskClick () {
+ if (this.data.info.replay_url && this.data.info.status == 5) {
+ this.setData({
+ showReplay:true
+ })
+ } else {
+ this.setData({
+ showDialog:true
+ })
+ }
+
+ },
+ copyLink(e) {
+ let link = e.currentTarget.dataset.link
+ let that = this
+ wx.setClipboardData({
+ data: link,
+ success: function () {
+ that.setData({
+ showDialog: false,
+ showReplay:false,
+ showRegister:false,
+ })
+ },
+ fail:function () {
+ that.setData({
+ showDialog: false,
+ showReplay:false,
+ showRegister:false
+ })
+ }
+ })
+ },
+ getBetweenDateStr(starDay, endDay) {
+ let startDate = Date.parse(starDay);
+ let endDate = Date.parse(endDay);
+ if (startDate > endDate) {
+ return false;
+ } else if (startDate == endDate) {
+ starDay = starDay.split('')
+ starDay[4] = '年'
+ starDay[7] = '月'
+ starDay[10] = '日'
+ starDay = starDay.join('')
+ return [starDay]
+ }
+ let arr = [];
+ let dates = [];
+
+ // 设置两个日期UTC时间
+ let db = new Date(starDay);
+ let de = new Date(endDay);
+
+ // 获取两个日期GTM时间
+ let s = db.getTime() - 24 * 60 * 60 * 1000;
+ let d = de.getTime() - 24 * 60 * 60 * 1000;
+
+ // 获取到两个日期之间的每一天的毫秒数
+ for (let i = s; i <= d;) {
+ i = i + 24 * 60 * 60 * 1000;
+ arr.push(parseInt(i))
+ }
+
+ // 获取每一天的时间 YY-MM-DD
+ for (let j in arr) {
+ let time = new Date(arr[j]);
+ let year = time.getFullYear(time);
+ let mouth = (time.getMonth() + 1) >= 10 ? (time.getMonth() + 1) : ('0' + (time.getMonth() + 1));
+ let day = time.getDate() >= 10 ? time.getDate() : ('0' + time.getDate());
+ let YYMMDD =year + '年-' + mouth + '月' + '-' + day + '日';
+ dates.push(YYMMDD)
+ }
+
+ return dates
+ },
+ dateChange(event) {
+ this.setData({
+ activeNames: event.detail,
+ });
+ },
+ switchTab(e) {
+ this.setData({
+ tabIndex: e.currentTarget.dataset.index,
+ });
+ },
+ openLocation(e) {
+ if (e.currentTarget.dataset.item.activity_type == 2) {
+ return;
+ }
+ wx.openLocation({
+ latitude: Number(e.currentTarget.dataset.item.latitude),
+ longitude: Number(e.currentTarget.dataset.item.longitude),
+ name: e.currentTarget.dataset.item.detail_address, // 名称
+ address: e.currentTarget.dataset.item.address, // 地址
+ });
+ },
+ toEditDraft() {
+ wx.redirectTo({
+ url: `/package-events/publish/publish?id=${this.data.id}&type=${this.data.type}`,
+ });
+ },
+ draftPublish() {
+ let postData = this.data.info;
+ postData.schedules = JSON.parse(postData.schedules);
+ remoteMethods.draftPublish(postData, (res) => {
+ if (res.code === 201) {
+ wx.redirectTo({
+ url: '/package-events/publish/success?type=2',
+ });
+ } else {
+ setTimeout(function () {
+ wx.showToast(
+ {
+ title: res.message,
+ icon: 'none',
+ duration: 2000,
+ },
+ 100
+ );
+ });
+ }
+ });
+ },
+ reject() {
+ remoteMethods.reject(() => {
+ wx.navigateBack();
+ });
+ },
+ resolve() {
+ remoteMethods.resolve(() => {
+ wx.navigateBack();
+ });
+ },
+ editSchedule() {
+ wx.redirectTo({
+ url: `/package-events/publish/publish?id=${this.data.id}&type=${this.data.type}`,
+ });
+ },
+ switchTab2() {
+ this.setData({
+ tabIndex: 1,
+ });
+ },
+ toSignUp() {
+ // if (!sessionUtil.getUserInfoByKey('access')) {
+ // wx.navigateTo({
+ // url: '/pages/auth/auth'
+ // })
+ // return;
+ // }
+ // wx.navigateTo({
+ // url: `/package-events/sign-up/sign-up?id=${this.data.info.id}&title=${this.data.info.title}&poster=${this.data.info.poster}`
+ // })
+ this.setData({
+ showRegister:true
+ })
+},
+ onShareAppMessage() {
+ return {
+ title: '活动详情',
+ path: `/package-events/events/event-detail?id=${that.data.id}&type=5`,
+ };
+ },
+ toPoster(e) {
+ wx.navigateTo({
+ url: `/package-events/events/poster?isDraft=${e.currentTarget.dataset.flag || ''}&id=${this.data.info.id}`,
+ });
+ },
+ redrictLogin() {
+ if (this.data.scene) {
+ wx.navigateTo({
+ url: '/pages/auth/auth?id=' + that.data.id,
+ });
+ } else {
+ wx.navigateTo({
+ url: '/pages/auth/auth',
+ });
+ }
+ },
+ collect() {
+ if (!this.data.info.collection_id) {
+ remoteMethods.collect(() => {
+ this.onShow();
+ });
+ } else {
+ remoteMethods.unCollect(() => {
+ this.onShow();
+ });
+ }
+ },
+});
diff --git a/src/mindspore/package-events/events/event-detail.wxml b/src/mindspore/package-events/events/event-detail.wxml
index 37f79a4baedacae9d3c6264af889e76157e7d215..9482fbe7f448c2979c59dabe76bd2720e34ccb82 100644
--- a/src/mindspore/package-events/events/event-detail.wxml
+++ b/src/mindspore/package-events/events/event-detail.wxml
@@ -145,6 +145,16 @@
+
+
+
+ {{info.register_url}}
+
+
+
+
+
+
diff --git a/src/mindspore/package-events/manage/member-detail.wxml b/src/mindspore/package-events/manage/member-detail.wxml
index bccb84f1a17b2ed8b5824273f82238f9fa62ba10..76667bd5b931cc5e60201124e25827f2384a4fb6 100644
--- a/src/mindspore/package-events/manage/member-detail.wxml
+++ b/src/mindspore/package-events/manage/member-detail.wxml
@@ -9,10 +9,10 @@
输入ID
- 输入手机
-
- 输入邮箱
-
+ 备注一
+
+ 备注二
+
diff --git a/src/mindspore/package-events/publish/publish.js b/src/mindspore/package-events/publish/publish.js
index 292326ea8bfdeb29a2edab34bc862a5f24ba3294..fc3332ee2e28515102288a38bdbe86691b895b90 100644
--- a/src/mindspore/package-events/publish/publish.js
+++ b/src/mindspore/package-events/publish/publish.js
@@ -1,909 +1,907 @@
-// package-events/publish/publish.js
-const appAjax = require('./../../utils/app-ajax');
-const utils = require('./../../utils/utils.js');
-utils.formateDate();
-let that = null;
-let remoteMethods = {
- addEvents: function (postData, _callback) {
- let type = 'POST';
- let service = 'PUBLISH_EVENT';
- if (that.data.detailType == 4) {
- type = 'PUT';
- service = 'EDIT_DETAIL_PUBLISH';
- }
- appAjax.postJson({
- autoShowWait: true,
- type,
- service,
- data: postData,
- otherParams: {
- id: that.data.id || '',
- },
- success: function (ret) {
- if (ret.code == 400) {
- localMethods.toast(ret.msg);
- return;
- }
- _callback && _callback(ret);
- },
- });
- },
- saveDraft: function (postData, _callback) {
- let type = 'POST';
- let service = 'SAVE_DRAFT';
- if (that.data.detailType == 4) {
- type = 'PUT';
- service = 'EDIT_DETAIL';
- } else if (that.data.detailType == 5) {
- type = 'PUT';
- service = 'EDIT_SCHEDULE';
- }
- appAjax.postJson({
- autoShowWait: true,
- type,
- service,
- data: postData,
- otherParams: {
- id: that.data.id || '',
- },
- success: function (ret) {
- if (ret.code == 400) {
- localMethods.toast(ret.msg);
- return;
- }
- _callback && _callback(ret);
- },
- });
- },
- getDraftDetail: function (_callback) {
- let service = 'DRAFT_DETAIL';
- if (that.data.detailType == 5) {
- service = 'EVENT_DETAIL';
- }
- appAjax.postJson({
- autoShowWait: true,
- type: 'GET',
- service,
- otherParams: {
- id: that.data.id,
- },
- success: function (ret) {
- _callback && _callback(ret);
- },
- });
- },
-};
-let localMethods = {
- validation: function (data) {
- if (data.activity_type === 1) {
- if (!data.title) {
- this.toast('请输入活动标题');
- return;
- }
- if (!data.start_date) {
- this.toast('请选择活动起始日期');
- return;
- }
- if (!data.end_date) {
- this.toast('请选择活动结束日期');
- return;
- }
- if (!data.address) {
- this.toast('请输入活动城市');
- return;
- }
- if (!data.detail_address) {
- this.toast('请输入具体地址');
- return;
- }
- if (data.register_method === 2 && data.register_url=='') {
- this.toast('请输入报名链接')
- return
- }
- let flag = true;
- data.schedules.forEach((dayItem) => {
- dayItem.forEach(item => {
- if (!item.start) {
- flag = false;
- }
- if (!item.end) {
- flag = false;
- }
- if (!item.topic) {
- flag = false;
- }
- })
- });
- if (!flag) {
- this.toast('请补充日程必填信息');
- return;
- }
- } else if (data.activity_type === 2) {
- if (!data.title) {
- this.toast('请输入活动标题');
- return;
- }
- if (data.activity_category === 2) {
- this.toast('MSG活动需添加线下地址');
- return;
- }
- if (!data.online_url) {
- this.toast('请输入线上链接地址');
- return;
- }
- if (data.register_method === 2 && data.register_url=='') {
- this.toast('请输入报名链接')
- return
- }
- let flag = true;
- data.schedules.forEach((dayItem) => {
- dayItem.forEach(item => {
- if (!item.start) {
- flag = false;
- }
- if (!item.end) {
- flag = false;
- }
- if (!item.topic) {
- flag = false;
- }
- })
- });
- if (!flag) {
- this.toast('请补充填写日程必填信息');
- return;
- }
- } else {
- if (!data.title) {
- this.toast('请输入活动标题');
- return;
- }
- if (!data.start_date) {
- this.toast('请选择活动起始日期');
- return;
- }
- if (!data.end_date) {
- this.toast('请选择活动结束日期');
- return;
- }
- if (!data.online_url) {
- this.toast('请输入线上链接地址');
- return;
- }
- if (!data.address) {
- this.toast('请输入活动城市');
- return;
- }
- if (!data.detail_address) {
- this.toast('请输入具体地址');
- return;
- }
- if (data.register_method === 2 && data.register_url=='') {
- this.toast('请输入报名链接')
- return
- }
- let flag = true;
- data.schedules.forEach((dayItem) => {
- dayItem.forEach(item => {
- if (!item.start) {
- flag = false;
- }
- if (!item.end) {
- flag = false;
- }
- if (!item.topic) {
- flag = false;
- }
- })
- });
- if (!flag) {
- this.toast('请补充填写日程必填信息');
- return;
- }
- }
-
- return true;
- },
- toast: function (msg) {
- wx.showToast({
- title: msg,
- icon: 'none',
- duration: 2000,
- });
- },
-};
-Page({
- data: {
- isStar: false,
- isEnd: false,
- starTime: '',
- endTime: '',
- id: '',
- playback:'',
- activeNames: [0],
- detailType: 0,
- title: '',
- date: '',
- type: '课程',
- form: ['1'],
- mode: '小程序报名',
- address: '',
- addressName: '',
- registerUrl:'',
- desc: '',
- betweenDay: [],
- schedule: [{
- start: '',
- end: '',
- topic: '',
- speakerList: [{
- name: '',
- title: '',
- mail: ''
- }]
- }, ],
- allSchedule: [],
- typeList: [
- '课程',
- 'MSG',
- '赛事',
- '其他'
- ],
- modeList: [
- '小程序报名',
- '跳转其他链接报名'
- ],
- datePopShow: false,
- timePopShow: false,
- formShow: false,
- curDate: new Date().getTime(),
- currentDate: new Date().getTime(),
- minDate: new Date().getTime(),
- startTimeIndex: 0,
- endTimeIndex: 0,
- start: '',
- end: '',
- currentTime: '08:00',
- method:1,
- actegory:1,
- tiemIndex: 1,
- minTime: 8,
- maxTime: 22,
- minEndTime: 8,
- maxEndTime: 22,
- filter(type, options) {
- if (type === 'minute') {
- return options.filter((option) => option % 15 === 0);
- }
- return options;
- },
- endTimePopShow: false,
- currentEndTime: '08:00',
- topicSelIndex: 1,
- longitude: '',
- latitude: '',
- liveAddress: '',
- },
-
- /**
- * 生命周期函数--监听页面加载
- */
- onLoad: function (options) {
- that = this;
- this.setData({
- id: options.id,
- detailType: options.type || 0,
- });
- if ((this.data.id && this.data.detailType == 5) || (this.data.id && this.data.detailType == 4)) {
- remoteMethods.getDraftDetail((res) => {
- res.activity_type == 3 ? res.activity_type = ['1', '2'] : res.activity_type = [`${res.activity_type}`]
- this.setData({
- title: res.title,
- starTime: res.start_date,
- endTime: res.end_date,
- actegory:res.activity_category,
- form: res.activity_type,
- playback:res.replay_url ||'',
- method:res.register_method,
- type:this.data.typeList[res.activity_category-1],
- mode:this.data.modeList[res.register_method-1],
- registerUrl:res.register_url || '',
- liveAddress: res.online_url || '',
- longitude: res.longitude || '',
- latitude: res.latitude || '',
- address: res.address || '',
- addressName: res.detail_address || '',
- desc: res.synopsis || '',
- betweenDay:this.getBetweenDateStr(res.start_date,res.end_date),
- topicSelIndex: res.poster,
- allSchedule: JSON.parse(res.schedules),
- });
- });
- }
- },
- /**
- * 生命周期函数--监听页面显示
- */
- onShow: function () {},
- titleInput(e) {
- this.setData({
- title: e.detail.value,
- });
- },
- playbackInput(e) {
- this.setData({
- playback:e.detail.value
- })
- },
- setStar: function () {
- this.setData({
- datePopShow: true,
- isStar: true
- });
- },
- setEnd: function () {
- this.setData({
- datePopShow: true,
- isEnd: true
- });
- },
- dateChange(event) {
- this.setData({
- activeNames: event.detail,
- });
- },
- onTypeShow: function () {
- this.setData({
- typeShow: true,
- })
- },
- getBetweenDateStr(start, end) {
- let startDate = Date.parse(start);
- let endDate = Date.parse(end);
- if (startDate > endDate) {
- return false;
- } else if (startDate == endDate) {
- return [start]
- }
- let result = [];
- let beginDay = start.split("-");
- let endDay = end.split("-");
- let diffDay = new Date();
- let dateList = new Array;
- let i = 0;
- diffDay.setDate(beginDay[2]);
- diffDay.setMonth(beginDay[1] - 1);
- diffDay.setFullYear(beginDay[0]);
- result.push(start);
- while (i == 0) {
- let countDay = diffDay.getTime() + 24 * 60 * 60 * 1000;
- diffDay.setTime(countDay);
- dateList[2] = diffDay.getDate();
- dateList[1] = diffDay.getMonth() + 1;
- dateList[0] = diffDay.getFullYear();
- if (String(dateList[1]).length == 1) {
- dateList[1] = "0" + dateList[1]
- }
- if (String(dateList[2]).length == 1) {
- dateList[2] = "0" + dateList[2]
- }
- result.push(dateList[0] + "-" + dateList[1] + "-" + dateList[2]);
- if (dateList[0] == endDay[0] && dateList[1] == endDay[1] && dateList[2] == endDay[2]) {
- i = 1;
- }
- }
- return result;
- },
- onModeShow: function () {
- this.setData({
- modeShow: true,
- })
- },
- dateCancel: function () {
- this.setData({
- datePopShow: false,
- isStar: false,
- isEnd: false
- });
- },
- dateOnInput: function (e) {
- this.setData({
- currentDate: e.detail,
- });
- },
- dateConfirm: function () {
- let time = new Date(this.data.currentDate).Format('yyyy-MM-dd')
- let between = []
- if (this.data.isStar) {
- if (this.data.endTime) {
- between = this.getBetweenDateStr(time, this.data.endTime)
- if (between) {
- let allSchedule = []
- for (let i = 0; i < between.length; i++) {
- allSchedule.push(
- [{
- start: '',
- end: '',
- topic: '',
- speakerList: [{
- name: '',
- title: '',
- mail: ''
- }]
- }, ],
- )
- }
- between.length > 10 ? localMethods.toast('暂只支持10天以内活动') :
- this.setData({
- starTime: time,
- betweenDay: between,
- allSchedule: allSchedule
- })
- } else {
- localMethods.toast('请正确填写日期')
- }
- } else {
- this.setData({
- starTime: time
- })
- }
- } else if (this.data.starTime) {
- between = this.getBetweenDateStr(this.data.starTime, time)
- if (between) {
- let allSchedule = []
- for (let i = 0; i < between.length; i++) {
- allSchedule.push(
- [{
- start: '',
- end: '',
- topic: '',
- speakerList: [{
- name: '',
- title: '',
- mail: ''
- }]
- }, ],
- )
- }
- between.length > 10 ? localMethods.toast('暂只支持10天以内活动') :
- this.setData({
- endTime: time,
- betweenDay: between,
- allSchedule: allSchedule
- })
- } else {
- localMethods.toast('请正确填写日期')
- }
- } else {
- this.setData({
- endTime: time
- })
- }
- this.setData({
- datePopShow: false,
- isStar: false,
- isEnd: false
- });
- },
- radioOnChange(e) {
- this.setData({
- form: e.detail,
- });
- },
- typeRadioOnChange: function (e) {
- this.setData({
- type: e.detail,
- });
- },
- typeClick(e) {
- this.setData({
- actegory: e.currentTarget.dataset.index,
- });
- },
- addSpeaker(e) {
- const length = this.data.allSchedule[e.currentTarget.dataset.dayindex][e.currentTarget.dataset.index].speakerList.length;
- const key = `allSchedule[${e.currentTarget.dataset.dayindex}][${e.currentTarget.dataset.index}].speakerList[${length}]`;
- this.setData({
- [key]: {
- name: '',
- title: '',
- mail: ''
- }
- })
- },
- modeRadioOnChange: function (e) {
- this.setData({
- mode: e.detail,
- });
- },
- radioClick(e) {
- this.setData({
- method: e.currentTarget.dataset.index,
- });
- },
- selAddress() {
- wx.chooseLocation({
- success: function (res) {
- that.setData({
- address: res.address,
- addressName: res.name,
- longitude: res.longitude,
- latitude: res.latitude,
- });
- },
- });
- },
- addressNameInput(e) {
- this.setData({
- addressName: e.detail.value,
- });
- },
- registerUrlInput(e) {
- this.setData({
- registerUrl: e.detail.value,
- });
- },
- descInput(e) {
- this.setData({
- desc: e.detail.value,
- });
- },
- scheduleTitleInput(e) {
- const key = `allSchedule[${e.currentTarget.dataset.dayindex}][${e.currentTarget.dataset.index}].topic`;
- this.setData({
- [key]: e.detail.value
- })
- },
- nameInput(e) {
- const key = `allSchedule[${e.currentTarget.dataset.dayindex}][${e.currentTarget.dataset.outindex}].speakerList[${e.currentTarget.dataset.innerindex}].name`;
- this.setData({
- [key]: e.detail.value
- })
- },
- speakerTitleInput(e) {
- const key = `allSchedule[${e.currentTarget.dataset.dayindex}][${e.currentTarget.dataset.outindex}].speakerList[${e.currentTarget.dataset.innerindex}].title`;
- this.setData({
- [key]: e.detail.value
- })
- },
- mailInput(e) {
- const key = `allSchedule[${e.currentTarget.dataset.dayindex}][${e.currentTarget.dataset.outindex}].speakerList[${e.currentTarget.dataset.innerindex}].mail`;
- this.setData({
- [key]: e.detail.value
- })
- },
- speakerInput(e) {
- const key = `allSchedule[${e.currentTarget.dataset.dayindex}][${e.currentTarget.dataset.index}].speaker`;
- this.setData({
- [key]: e.detail.value,
- });
- },
- scheduleDescInput(e) {
- const key = `allSchedule[${e.currentTarget.dataset.dayindex}][${e.currentTarget.dataset.index}].desc`;
- this.setData({
- [key]: e.detail.value,
- });
- },
- addSchedule(e) {
- let arrTemp = this.data.allSchedule;
- let index = e.currentTarget.dataset.index
- arrTemp[index].push({
- start: '',
- end: '',
- topic: '',
- speakerList: []
- })
- this.setData({
- allSchedule: arrTemp
- })
- },
- delSchedule(e) {
- let index = e.currentTarget.dataset.index
- let arrTemp = this.data.allSchedule;
- arrTemp[e.currentTarget.dataset.dayindex].splice(index, 1);
- this.setData({
- allSchedule: arrTemp
- })
- },
- delSpeaker(e) {
- let arrTemp = this.data.allSchedule[e.currentTarget.dataset.index][e.currentTarget.dataset.outindex].speakerList;
- let key = `allSchedule[${e.currentTarget.dataset.index}][${e.currentTarget.dataset.outindex}].speakerList`;
- arrTemp.splice(e.currentTarget.dataset.innerindex, 1);
- this.setData({
- [key]: arrTemp
- })
- },
- selTime: function (e) {
- this.setData({
- tiemIndex: e.currentTarget.dataset.dayindex,
- timePopShow: true,
- startTimeIndex: e.currentTarget.dataset.index,
- });
- },
- timeCancel: function () {
- this.setData({
- timePopShow: false,
- });
- },
- timeOnInput: function (e) {
- this.setData({
- currentTime: e.detail,
- });
- },
- timeConfirm: function () {
- const key = `allSchedule[${this.data.tiemIndex}][${this.data.startTimeIndex}].start`;
- this.setData({
- [key]: this.data.currentTime,
- timePopShow: false,
- });
- },
- typeCancel: function () {
- this.setData({
- typeShow: false,
- });
- },
- typeConfirm: function () {
- this.setData({
- typeShow: false,
- });
- },
- modeCancel: function () {
- this.setData({
- modeShow: false,
- });
- },
- modeConfirm: function () {
- this.setData({
- modeShow: false,
- });
- },
- selEndTime: function (e) {
- this.setData({
- tiemIndex: e.currentTarget.dataset.dayindex,
- endTimePopShow: true,
- endTimeIndex: e.currentTarget.dataset.index,
- });
- },
- endTimeOnInput: function (e) {
- this.setData({
- currentEndTime: e.detail,
- });
- },
- endTimeConfirm: function () {
- const key = `allSchedule[${this.data.tiemIndex}][${this.data.endTimeIndex}].end`;
- this.setData({
- [key]: this.data.currentEndTime,
- endTimePopShow: false,
- });
- },
- endTimeCancel: function () {
- this.setData({
- endTimePopShow: false,
- });
- },
- selTop(e) {
- this.setData({
- topicSelIndex: e.currentTarget.dataset.index,
- });
- },
- liveAddressInput(e) {
- this.setData({
- liveAddress: e.detail.value,
- });
- },
- publish() {
- let postData = {};
- if (this.data.form.length === 0) {
- localMethods.toast('请选择活动类型')
- return false
- }
- if (this.data.form[0] - 0 === 1 && this.data.form.length !== 2) {
- postData = {
- title: this.data.title,
- activity_category: this.data.actegory,
- activity_type:1,
- register_method:this.data.method,
- register_url:this.data.registerUrl,
- start_date: this.data.starTime,
- detail_address: this.data.addressName,
- end_date: this.data.endTime,
- synopsis: this.data.desc,
- address: this.data.address,
- longitude: this.data.longitude,
- latitude: this.data.latitude,
- poster: this.data.topicSelIndex,
- schedules: this.data.allSchedule,
- };
- } else if (this.data.form[0] - 0 === 2 && this.data.form[0].length !== 2) {
- postData = {
- title: this.data.title,
- activity_category: this.data.actegory,
- register_method:this.data.method,
- register_url:this.data.registerUrl,
- activity_type:2,
- start_date: this.data.starTime,
- end_date: this.data.endTime,
- synopsis: this.data.desc,
- online_url: this.data.liveAddress,
- longitude: this.data.longitude,
- latitude: this.data.latitude,
- poster: this.data.topicSelIndex,
- schedules: this.data.allSchedule,
- };
- } else {
- postData = {
- title: this.data.title,
- activity_category: this.data.actegory,
- register_method:this.data.method,
- register_url:this.data.registerUrl,
- activity_type:3,
- online_url: this.data.liveAddress,
- start_date:this.data.starTime,
- end_date:this.data.endTime,
- synopsis: this.data.desc,
- address: this.data.address,
- detail_address: this.data.addressName,
- longitude: this.data.longitude,
- latitude: this.data.latitude,
- poster: this.data.topicSelIndex,
- schedules: this.data.allSchedule,
- };
- }
- if (!localMethods.validation(postData)) {
- return;
- }
- remoteMethods.addEvents(postData, () => {
- wx.redirectTo({
- url: '/package-events/publish/success?type=2',
- });
- });
- },
- saveDraft() {
- let postData = {};
- if (this.data.form[0] == 1 && this.data.form.length !== 2) {
- postData = {
- title: this.data.title,
- activity_category: this.data.actegory,
- activity_type:1,
- register_method:this.data.method,
- register_url:this.data.registerUrl,
- start_date: this.data.starTime,
- end_date: this.data.endTime,
- synopsis: this.data.desc,
- address: this.data.address,
- detail_address: this.data.addressName,
- longitude: this.data.longitude,
- latitude: this.data.latitude,
- poster: this.data.topicSelIndex,
- schedules: this.data.allSchedule,
- };
- } else if (this.data.form[0] == 2 && this.data.form.length !== 2) {
- postData = {
- title: this.data.title,
- activity_category: this.data.actegory,
- activity_type:2,
- register_url:this.data.registerUrl,
- register_method:this.data.method,
- start_date: this.data.starTime,
- end_date: this.data.endTime,
- synopsis: this.data.desc,
- online_url: this.data.liveAddress,
- longitude: this.data.longitude,
- latitude: this.data.latitude,
- poster: this.data.topicSelIndex,
- schedules: this.data.allSchedule,
- };
- } else {
- postData = {
- title: this.data.title,
- activity_category: this.data.actegory,
- activity_type:3,
- register_method:this.data.method,
- register_url:this.data.registerUrl,
- online_url: this.data.liveAddress,
- start_date:this.data.starTime,
- end_date:this.data.endTime,
- synopsis: this.data.desc,
- address: this.data.address,
- detail_address: this.data.addressName,
- longitude: this.data.longitude,
- latitude: this.data.latitude,
- poster: this.data.topicSelIndex,
- schedules: this.data.allSchedule,
- };
- }
- if (!localMethods.validation(postData)) {
- return;
- }
- remoteMethods.saveDraft(postData, () => {
- wx.redirectTo({
- url: '/package-events/publish/success?type=1',
- });
- });
- },
- cancelEditSchedule() {
- wx.navigateBack();
- },
- editScheduleConfirm() {
- let postData = {};
- if (this.data.form[0] == 1 && this.data.form.length !== 2) {
- postData = {
- title: this.data.title,
- activity_category: this.actegory,
- activity_type:1,
- replay_url:this.data.playback,
- register_method:this.data.method,
- register_url:this.data.registerUrl,
- start_date: this.data.starTime,
- end_date: this.data.endTime,
- synopsis: this.data.desc,
- address: this.data.address,
- detail_address: this.data.addressName,
- longitude: this.data.longitude,
- latitude: this.data.latitude,
- poster: this.data.topicSelIndex,
- schedules: this.data.allSchedule,
- };
- } else if (this.data.form[0] == 2 && this.data.form.length !== 2) {
- postData = {
- title: this.data.title,
- activity_category: this.data.actegory,
- activity_type:2,
- replay_url:this.data.playback,
- register_url:this.data.registerUrl,
- register_method:this.data.method,
- start_date: this.data.starTime,
- end_date: this.data.endTime,
- synopsis: this.data.desc,
- online_url: this.data.liveAddress,
- longitude: this.data.longitude,
- latitude: this.data.latitude,
- poster: this.data.topicSelIndex,
- schedules: this.data.allSchedule,
- };
- } else {
- postData = {
- title: this.data.title,
- activity_category: this.data.actegory,
- activity_type:3,
- replay_url:this.data.playback,
- register_method:this.data.method,
- register_url:this.data.registerUrl,
- online_url: this.data.liveAddress,
- start_date:this.data.starTime,
- end_date:this.data.endTime,
- synopsis: this.data.desc,
- address: this.data.address,
- detail_address: this.data.addressName,
- longitude: this.data.longitude,
- latitude: this.data.latitude,
- poster: this.data.topicSelIndex,
- schedules: this.data.allSchedule,
- };
- }
- if (!localMethods.validation(postData)) {
- return;
- }
- postData.schedules = JSON.stringify(this.data.allSchedule);
- remoteMethods.saveDraft(postData, () => {
- wx.redirectTo({
- url: '/package-events/publish/success?type=3',
- });
- });
- },
- toPoster() {
- let activityType = 0
- if (this.data.form[0] == 1 && this.data.form.length !== 2) {
- activityType = 1
- } else if (this.data.form[0] == 2) {
- activityType = 2
- } else {
- activityType = 3
- }
- const address = this.data.addressName;
- const liveAddress = this.data.liveAddress;
- wx.navigateTo({
- url: `/package-events/events/poster?title=${this.data.title}&starTime=${this.data.starTime}&endTime=${this.data.endTime}&address=${address}&poster=${this.data.topicSelIndex}&liveAddress=${liveAddress}&activity_type=${activityType}`,
- });
- },
+// package-events/publish/publish.js
+const appAjax = require('./../../utils/app-ajax');
+const utils = require('./../../utils/utils.js');
+utils.formateDate();
+let that = null;
+let remoteMethods = {
+ addEvents: function (postData, _callback) {
+ let type = 'POST';
+ let service = 'PUBLISH_EVENT';
+ if (that.data.detailType == 4) {
+ type = 'PUT';
+ service = 'EDIT_DETAIL_PUBLISH';
+ }
+ appAjax.postJson({
+ autoShowWait: true,
+ type,
+ service,
+ data: postData,
+ otherParams: {
+ id: that.data.id || '',
+ },
+ success: function (ret) {
+ if (ret.code == 400) {
+ localMethods.toast(ret.msg);
+ return;
+ }
+ _callback && _callback(ret);
+ },
+ });
+ },
+ saveDraft: function (postData, _callback) {
+ let type = 'POST';
+ let service = 'SAVE_DRAFT';
+ if (that.data.detailType == 4) {
+ type = 'PUT';
+ service = 'EDIT_DETAIL';
+ } else if (that.data.detailType == 5) {
+ type = 'PUT';
+ service = 'EDIT_SCHEDULE';
+ }
+ appAjax.postJson({
+ autoShowWait: true,
+ type,
+ service,
+ data: postData,
+ otherParams: {
+ id: that.data.id || '',
+ },
+ success: function (ret) {
+ if (ret.code == 400) {
+ localMethods.toast(ret.msg);
+ return;
+ }
+ _callback && _callback(ret);
+ },
+ });
+ },
+ getDraftDetail: function (_callback) {
+ let service = 'DRAFT_DETAIL';
+ if (that.data.detailType == 5) {
+ service = 'EVENT_DETAIL';
+ }
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'GET',
+ service,
+ otherParams: {
+ id: that.data.id,
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ },
+ });
+ },
+};
+let localMethods = {
+ validation: function (data) {
+ if (data.activity_type === 1) {
+ if (!data.title) {
+ this.toast('请输入活动名称');
+ return;
+ }
+ if (!data.start_date) {
+ this.toast('请选择活动起始日期');
+ return;
+ }
+ if (!data.end_date) {
+ this.toast('请选择活动结束日期');
+ return;
+ }
+ if (!data.address) {
+ this.toast('请输入活动城市');
+ return;
+ }
+ if (!data.detail_address) {
+ this.toast('请输入具体地址');
+ return;
+ }
+ if (data.register_method === 2 && data.register_url=='') {
+ this.toast('请输入报名链接')
+ return
+ }
+ let flag = true;
+ data.schedules.forEach((dayItem) => {
+ dayItem.forEach(item => {
+ if (!item.start) {
+ flag = false;
+ }
+ if (!item.end) {
+ flag = false;
+ }
+ if (!item.topic) {
+ flag = false;
+ }
+ })
+ });
+ if (!flag) {
+ this.toast('请补充日程必填信息');
+ return;
+ }
+ } else if (data.activity_type === 2) {
+ if (!data.title) {
+ this.toast('请输入活动标题');
+ return;
+ }
+ if (!data.online_url) {
+ this.toast('请输入线上链接地址');
+ return;
+ }
+ if (data.register_method === 2 && data.register_url=='') {
+ this.toast('请输入报名链接')
+ return
+ }
+ let flag = true;
+ data.schedules.forEach((dayItem) => {
+ dayItem.forEach(item => {
+ if (!item.start) {
+ flag = false;
+ }
+ if (!item.end) {
+ flag = false;
+ }
+ if (!item.topic) {
+ flag = false;
+ }
+ })
+ });
+ if (!flag) {
+ this.toast('请补充填写日程必填信息');
+ return;
+ }
+ } else {
+ if (!data.title) {
+ this.toast('请输入活动标题');
+ return;
+ }
+ if (!data.start_date) {
+ this.toast('请选择活动起始日期');
+ return;
+ }
+ if (!data.end_date) {
+ this.toast('请选择活动结束日期');
+ return;
+ }
+ if (!data.online_url) {
+ this.toast('请输入线上链接地址');
+ return;
+ }
+ if (!data.address) {
+ this.toast('请输入活动城市');
+ return;
+ }
+ if (!data.detail_address) {
+ this.toast('请输入具体地址');
+ return;
+ }
+ if (data.register_method === 2 && data.register_url=='') {
+ this.toast('请输入报名链接')
+ return
+ }
+ let flag = true;
+ data.schedules.forEach((dayItem) => {
+ dayItem.forEach(item => {
+ if (!item.start) {
+ flag = false;
+ }
+ if (!item.end) {
+ flag = false;
+ }
+ if (!item.topic) {
+ flag = false;
+ }
+ })
+ });
+ if (!flag) {
+ this.toast('请补充填写日程必填信息');
+ return;
+ }
+ }
+
+ return true;
+ },
+ toast: function (msg) {
+ wx.showToast({
+ title: msg,
+ icon: 'none',
+ duration: 2000,
+ });
+ },
+};
+Page({
+ data: {
+ isStar: false,
+ isEnd: false,
+ starTime: '',
+ endTime: '',
+ id: '',
+ playback:'',
+ activeNames: [0],
+ detailType: 0,
+ title: '',
+ date: '',
+ type: '课程',
+ form: ['1'],
+ mode: '小程序报名',
+ address: '',
+ addressName: '',
+ registerUrl:'',
+ desc: '',
+ betweenDay: [],
+ schedule: [{
+ start: '',
+ end: '',
+ topic: '',
+ speakerList: [{
+ name: '',
+ title: '',
+ mail: ''
+ }]
+ }, ],
+ allSchedule: [],
+ typeList: [
+ '课程',
+ 'MSG',
+ '赛事',
+ '其他'
+ ],
+ modeList: [
+ '小程序报名',
+ '跳转其他链接报名'
+ ],
+ datePopShow: false,
+ timePopShow: false,
+ formShow: false,
+ curDate: new Date().getTime(),
+ currentDate: new Date().getTime(),
+ minDate: new Date().getTime(),
+ startTimeIndex: 0,
+ endTimeIndex: 0,
+ start: '',
+ end: '',
+ currentTime: '08:00',
+ method:1,
+ actegory:1,
+ tiemIndex: 1,
+ minTime: 8,
+ maxTime: 22,
+ minEndTime: 8,
+ maxEndTime: 22,
+ filter(type, options) {
+ if (type === 'minute') {
+ return options.filter((option) => option % 5 === 0);
+ }
+ return options;
+ },
+ endTimePopShow: false,
+ currentEndTime: '08:00',
+ topicSelIndex: 1,
+ longitude: '',
+ latitude: '',
+ liveAddress: '',
+ },
+
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad: function (options) {
+ that = this;
+ this.setData({
+ id: options.id,
+ detailType: options.type || 0,
+ });
+ if ((this.data.id && this.data.detailType == 5) || (this.data.id && this.data.detailType == 4)) {
+ remoteMethods.getDraftDetail((res) => {
+ res.activity_type == 3 ? res.activity_type = ['1', '2'] : res.activity_type = [`${res.activity_type}`]
+ this.setData({
+ title: res.title,
+ starTime: res.start_date,
+ endTime: res.end_date,
+ actegory:res.activity_category,
+ form: res.activity_type,
+ playback:res.replay_url ||'',
+ method:res.register_method,
+ type:this.data.typeList[res.activity_category-1],
+ mode:this.data.modeList[res.register_method-1],
+ registerUrl:res.register_url || '',
+ liveAddress: res.online_url || '',
+ longitude: res.longitude || '',
+ latitude: res.latitude || '',
+ address: res.address || '',
+ addressName: res.detail_address || '',
+ desc: res.synopsis || '',
+ betweenDay:this.getBetweenDateStr(res.start_date,res.end_date),
+ topicSelIndex: res.poster,
+ allSchedule: JSON.parse(res.schedules),
+ });
+ });
+ }
+ },
+ /**
+ * 生命周期函数--监听页面显示
+ */
+ onShow: function () {},
+ titleInput(e) {
+ this.setData({
+ title: e.detail.value,
+ });
+ },
+ playbackInput(e) {
+ this.setData({
+ playback:e.detail.value
+ })
+ },
+ setStar: function () {
+ this.setData({
+ datePopShow: true,
+ isStar: true
+ });
+ },
+ setEnd: function () {
+ this.setData({
+ datePopShow: true,
+ isEnd: true
+ });
+ },
+ dateChange(event) {
+ this.setData({
+ activeNames: event.detail,
+ });
+ },
+ onTypeShow: function () {
+ this.setData({
+ typeShow: true,
+ })
+ },
+ getBetweenDateStr(starDay, endDay) {
+ let startDate = Date.parse(starDay);
+ let endDate = Date.parse(endDay);
+ if (startDate > endDate) {
+ return false;
+ } else if (startDate == endDate) {
+ starDay = starDay.split('')
+ starDay[4] = '年'
+ starDay[7] = '月'
+ starDay[10] = '日'
+ starDay = starDay.join('')
+ return [starDay]
+ }
+ let arr = [];
+ let dates = [];
+
+ // 设置两个日期UTC时间
+ let db = new Date(starDay);
+ let de = new Date(endDay);
+
+ // 获取两个日期GTM时间
+ let s = db.getTime() - 24 * 60 * 60 * 1000;
+ let d = de.getTime() - 24 * 60 * 60 * 1000;
+
+ // 获取到两个日期之间的每一天的毫秒数
+ for (let i = s; i <= d;) {
+ i = i + 24 * 60 * 60 * 1000;
+ arr.push(parseInt(i))
+ }
+
+ // 获取每一天的时间 YY-MM-DD
+ for (let j in arr) {
+ let time = new Date(arr[j]);
+ let year = time.getFullYear(time);
+ let mouth = (time.getMonth() + 1) >= 10 ? (time.getMonth() + 1) : ('0' + (time.getMonth() + 1));
+ let day = time.getDate() >= 10 ? time.getDate() : ('0' + time.getDate());
+ let YYMMDD =year + '年-' + mouth + '月' + '-' + day + '日';
+ dates.push(YYMMDD)
+ }
+
+ return dates
+ },
+ onModeShow: function () {
+ this.setData({
+ modeShow: true,
+ })
+ },
+ dateCancel: function () {
+ this.setData({
+ datePopShow: false,
+ isStar: false,
+ isEnd: false
+ });
+ },
+ dateOnInput: function (e) {
+ this.setData({
+ currentDate: e.detail,
+ });
+ },
+ dateConfirm: function () {
+ let time = new Date(this.data.currentDate).Format('yyyy-MM-dd')
+ let between = []
+ if (this.data.isStar) {
+ if (this.data.endTime) {
+ between = this.getBetweenDateStr(time, this.data.endTime)
+ if (between) {
+ let allSchedule = []
+ for (let i = 0; i < between.length; i++) {
+ allSchedule.push(
+ [{
+ start: '',
+ end: '',
+ topic: '',
+ speakerList: [{
+ name: '',
+ title: '',
+ mail: ''
+ }]
+ }, ],
+ )
+ }
+ between.length > 10 ? localMethods.toast('暂只支持10天以内活动') :
+ this.setData({
+ starTime: time,
+ betweenDay: between,
+ allSchedule: allSchedule
+ })
+ } else {
+ localMethods.toast('结束日期应大于等于开始日期')
+ }
+ } else {
+ this.setData({
+ starTime: time
+ })
+ }
+ } else if (this.data.starTime) {
+ between = this.getBetweenDateStr(this.data.starTime, time)
+ if (between) {
+ let allSchedule = []
+ for (let i = 0; i < between.length; i++) {
+ allSchedule.push(
+ [{
+ start: '',
+ end: '',
+ topic: '',
+ speakerList: [{
+ name: '',
+ title: '',
+ mail: ''
+ }]
+ }, ],
+ )
+ }
+ between.length > 10 ? localMethods.toast('暂只支持10天以内活动') :
+ this.setData({
+ endTime: time,
+ betweenDay: between,
+ allSchedule: allSchedule
+ })
+ } else {
+ localMethods.toast('请正确填写日期')
+ }
+ } else {
+ this.setData({
+ endTime: time
+ })
+ }
+ this.setData({
+ datePopShow: false,
+ isStar: false,
+ isEnd: false
+ });
+ },
+ radioOnChange(e) {
+ this.setData({
+ form: e.detail,
+ });
+ },
+ typeRadioOnChange: function (e) {
+ this.setData({
+ type: e.detail,
+ });
+ },
+ typeClick(e) {
+ this.setData({
+ actegory: e.currentTarget.dataset.index,
+ });
+ },
+ addSpeaker(e) {
+ const length = this.data.allSchedule[e.currentTarget.dataset.dayindex][e.currentTarget.dataset.index].speakerList.length;
+ const key = `allSchedule[${e.currentTarget.dataset.dayindex}][${e.currentTarget.dataset.index}].speakerList[${length}]`;
+ this.setData({
+ [key]: {
+ name: '',
+ title: '',
+ mail: ''
+ }
+ })
+ },
+ modeRadioOnChange: function (e) {
+ this.setData({
+ mode: e.detail,
+ });
+ },
+ radioClick(e) {
+ this.setData({
+ method: e.currentTarget.dataset.index,
+ });
+ },
+ selAddress() {
+ wx.chooseLocation({
+ success: function (res) {
+ that.setData({
+ address: res.address,
+ addressName: res.name,
+ longitude: res.longitude,
+ latitude: res.latitude,
+ });
+ },
+ fail:function(res) {
+ console.log(res);
+ }
+ });
+ },
+ addressNameInput(e) {
+ this.setData({
+ addressName: e.detail.value,
+ });
+ },
+ registerUrlInput(e) {
+ this.setData({
+ registerUrl: e.detail.value,
+ });
+ },
+ descInput(e) {
+ this.setData({
+ desc: e.detail.value,
+ });
+ },
+ scheduleTitleInput(e) {
+ const key = `allSchedule[${e.currentTarget.dataset.dayindex}][${e.currentTarget.dataset.index}].topic`;
+ this.setData({
+ [key]: e.detail.value
+ })
+ },
+ nameInput(e) {
+ const key = `allSchedule[${e.currentTarget.dataset.dayindex}][${e.currentTarget.dataset.outindex}].speakerList[${e.currentTarget.dataset.innerindex}].name`;
+ this.setData({
+ [key]: e.detail.value
+ })
+ },
+ speakerTitleInput(e) {
+ const key = `allSchedule[${e.currentTarget.dataset.dayindex}][${e.currentTarget.dataset.outindex}].speakerList[${e.currentTarget.dataset.innerindex}].title`;
+ this.setData({
+ [key]: e.detail.value
+ })
+ },
+ mailInput(e) {
+ const key = `allSchedule[${e.currentTarget.dataset.dayindex}][${e.currentTarget.dataset.outindex}].speakerList[${e.currentTarget.dataset.innerindex}].mail`;
+ this.setData({
+ [key]: e.detail.value
+ })
+ },
+ speakerInput(e) {
+ const key = `allSchedule[${e.currentTarget.dataset.dayindex}][${e.currentTarget.dataset.index}].speaker`;
+ this.setData({
+ [key]: e.detail.value,
+ });
+ },
+ scheduleDescInput(e) {
+ const key = `allSchedule[${e.currentTarget.dataset.dayindex}][${e.currentTarget.dataset.index}].desc`;
+ this.setData({
+ [key]: e.detail.value,
+ });
+ },
+ addSchedule(e) {
+ let arrTemp = this.data.allSchedule;
+ let index = e.currentTarget.dataset.index
+ arrTemp[index].push({
+ start: '',
+ end: '',
+ topic: '',
+ speakerList: []
+ })
+ this.setData({
+ allSchedule: arrTemp
+ })
+ },
+ delSchedule(e) {
+ let index = e.currentTarget.dataset.index
+ let arrTemp = this.data.allSchedule;
+ arrTemp[e.currentTarget.dataset.dayindex].splice(index, 1);
+ this.setData({
+ allSchedule: arrTemp
+ })
+ },
+ delSpeaker(e) {
+ let arrTemp = this.data.allSchedule[e.currentTarget.dataset.index][e.currentTarget.dataset.outindex].speakerList;
+ let key = `allSchedule[${e.currentTarget.dataset.index}][${e.currentTarget.dataset.outindex}].speakerList`;
+ arrTemp.splice(e.currentTarget.dataset.innerindex, 1);
+ this.setData({
+ [key]: arrTemp
+ })
+ },
+ selTime: function (e) {
+ this.setData({
+ tiemIndex: e.currentTarget.dataset.dayindex,
+ timePopShow: true,
+ startTimeIndex: e.currentTarget.dataset.index,
+ });
+ },
+ timeCancel: function () {
+ this.setData({
+ timePopShow: false,
+ });
+ },
+ timeOnInput: function (e) {
+ this.setData({
+ currentTime: e.detail,
+ });
+ },
+ timeConfirm: function () {
+ const key = `allSchedule[${this.data.tiemIndex}][${this.data.startTimeIndex}].start`;
+ this.setData({
+ [key]: this.data.currentTime,
+ timePopShow: false,
+ });
+ },
+ typeCancel: function () {
+ this.setData({
+ typeShow: false,
+ });
+ },
+ typeConfirm: function () {
+ this.setData({
+ typeShow: false,
+ });
+ },
+ modeCancel: function () {
+ this.setData({
+ modeShow: false,
+ });
+ },
+ modeConfirm: function () {
+ this.setData({
+ modeShow: false,
+ });
+ },
+ selEndTime: function (e) {
+ this.setData({
+ tiemIndex: e.currentTarget.dataset.dayindex,
+ endTimePopShow: true,
+ endTimeIndex: e.currentTarget.dataset.index,
+ });
+ },
+ endTimeOnInput: function (e) {
+ this.setData({
+ currentEndTime: e.detail,
+ });
+ },
+ endTimeConfirm: function () {
+ const key = `allSchedule[${this.data.tiemIndex}][${this.data.endTimeIndex}].end`;
+ this.setData({
+ [key]: this.data.currentEndTime,
+ endTimePopShow: false,
+ });
+ },
+ endTimeCancel: function () {
+ this.setData({
+ endTimePopShow: false,
+ });
+ },
+ selTop(e) {
+ this.setData({
+ topicSelIndex: e.currentTarget.dataset.index,
+ });
+ },
+ liveAddressInput(e) {
+ this.setData({
+ liveAddress: e.detail.value,
+ });
+ },
+ publish() {
+ let postData = {};
+ if (this.data.form.length === 0) {
+ localMethods.toast('请选择活动类型')
+ return false
+ }
+ if (this.data.form[0] - 0 === 1 && this.data.form.length !== 2) {
+ postData = {
+ title: this.data.title,
+ activity_category: this.data.actegory,
+ activity_type:1,
+ register_method:this.data.method,
+ register_url:this.data.registerUrl,
+ start_date: this.data.starTime,
+ detail_address: this.data.addressName,
+ end_date: this.data.endTime,
+ synopsis: this.data.desc,
+ address: this.data.address,
+ longitude: this.data.longitude,
+ latitude: this.data.latitude,
+ poster: this.data.topicSelIndex,
+ schedules: this.data.allSchedule,
+ };
+ } else if (this.data.form[0] - 0 === 2 && this.data.form.length !== 2) {
+ postData = {
+ title: this.data.title,
+ activity_category: this.data.actegory,
+ register_method:this.data.method,
+ register_url:this.data.registerUrl,
+ activity_type:2,
+ start_date: this.data.starTime,
+ end_date: this.data.endTime,
+ synopsis: this.data.desc,
+ online_url: this.data.liveAddress,
+ poster: this.data.topicSelIndex,
+ schedules: this.data.allSchedule,
+ };
+ } else {
+ postData = {
+ title: this.data.title,
+ activity_category: this.data.actegory,
+ register_method:this.data.method,
+ register_url:this.data.registerUrl,
+ activity_type:3,
+ online_url: this.data.liveAddress,
+ start_date:this.data.starTime,
+ end_date:this.data.endTime,
+ synopsis: this.data.desc,
+ address: this.data.address,
+ detail_address: this.data.addressName,
+ longitude: this.data.longitude,
+ latitude: this.data.latitude,
+ poster: this.data.topicSelIndex,
+ schedules: this.data.allSchedule,
+ };
+ }
+ if (!localMethods.validation(postData)) {
+ return;
+ }
+ remoteMethods.addEvents(postData, () => {
+ wx.redirectTo({
+ url: '/package-events/publish/success?type=2',
+ });
+ });
+ },
+ saveDraft() {
+ let postData = {};
+ if (this.data.form[0] == 1 && this.data.form.length !== 2) {
+ postData = {
+ title: this.data.title,
+ activity_category: this.data.actegory,
+ activity_type:1,
+ register_method:this.data.method,
+ register_url:this.data.registerUrl,
+ start_date: this.data.starTime,
+ end_date: this.data.endTime,
+ synopsis: this.data.desc,
+ address: this.data.address,
+ detail_address: this.data.addressName,
+ longitude: this.data.longitude,
+ latitude: this.data.latitude,
+ poster: this.data.topicSelIndex,
+ schedules: this.data.allSchedule,
+ };
+ } else if (this.data.form[0] == 2 && this.data.form.length !== 2) {
+ postData = {
+ title: this.data.title,
+ activity_category: this.data.actegory,
+ activity_type:2,
+ register_url:this.data.registerUrl,
+ register_method:this.data.method,
+ start_date: this.data.starTime,
+ end_date: this.data.endTime,
+ synopsis: this.data.desc,
+ online_url: this.data.liveAddress,
+ poster: this.data.topicSelIndex,
+ schedules: this.data.allSchedule,
+ };
+ } else {
+ postData = {
+ title: this.data.title,
+ activity_category: this.data.actegory,
+ activity_type:3,
+ register_method:this.data.method,
+ register_url:this.data.registerUrl,
+ online_url: this.data.liveAddress,
+ start_date:this.data.starTime,
+ end_date:this.data.endTime,
+ synopsis: this.data.desc,
+ address: this.data.address,
+ detail_address: this.data.addressName,
+ longitude: this.data.longitude,
+ latitude: this.data.latitude,
+ poster: this.data.topicSelIndex,
+ schedules: this.data.allSchedule,
+ };
+ }
+ if (!localMethods.validation(postData)) {
+ return;
+ }
+ remoteMethods.saveDraft(postData, () => {
+ wx.redirectTo({
+ url: '/package-events/publish/success?type=1',
+ });
+ });
+ },
+ cancelEditSchedule() {
+ wx.navigateBack();
+ },
+ editScheduleConfirm() {
+ let postData = {};
+ if (this.data.form[0] == 1 && this.data.form.length !== 2) {
+ postData = {
+ title: this.data.title,
+ activity_category: this.actegory,
+ activity_type:1,
+ replay_url:this.data.playback,
+ register_method:this.data.method,
+ register_url:this.data.registerUrl,
+ start_date: this.data.starTime,
+ end_date: this.data.endTime,
+ synopsis: this.data.desc,
+ address: this.data.address,
+ detail_address: this.data.addressName,
+ longitude: this.data.longitude,
+ latitude: this.data.latitude,
+ poster: this.data.topicSelIndex,
+ schedules: this.data.allSchedule,
+ };
+ } else if (this.data.form[0] == 2 && this.data.form.length !== 2) {
+ postData = {
+ title: this.data.title,
+ activity_category: this.data.actegory,
+ activity_type:2,
+ replay_url:this.data.playback,
+ register_url:this.data.registerUrl,
+ register_method:this.data.method,
+ start_date: this.data.starTime,
+ end_date: this.data.endTime,
+ synopsis: this.data.desc,
+ online_url: this.data.liveAddress,
+ poster: this.data.topicSelIndex,
+ schedules: this.data.allSchedule,
+ };
+ } else {
+ postData = {
+ title: this.data.title,
+ activity_category: this.data.actegory,
+ activity_type:3,
+ replay_url:this.data.playback,
+ register_method:this.data.method,
+ register_url:this.data.registerUrl,
+ online_url: this.data.liveAddress,
+ start_date:this.data.starTime,
+ end_date:this.data.endTime,
+ synopsis: this.data.desc,
+ address: this.data.address,
+ detail_address: this.data.addressName,
+ longitude: this.data.longitude,
+ latitude: this.data.latitude,
+ poster: this.data.topicSelIndex,
+ schedules: this.data.allSchedule,
+ };
+ }
+ if (!localMethods.validation(postData)) {
+ return;
+ }
+ postData.schedules = JSON.stringify(this.data.allSchedule);
+ remoteMethods.saveDraft(postData, () => {
+ wx.redirectTo({
+ url: '/package-events/publish/success?type=3',
+ });
+ });
+ },
+ toPoster() {
+ let activityType = 0
+ if (this.data.form[0] == 1 && this.data.form.length !== 2) {
+ activityType = 1
+ } else if (this.data.form[0] == 2) {
+ activityType = 2
+ } else {
+ activityType = 3
+ }
+ const address = this.data.addressName;
+ const liveAddress = this.data.liveAddress;
+ wx.navigateTo({
+ url: `/package-events/events/poster?title=${this.data.title}&starTime=${this.data.starTime}&endTime=${this.data.endTime}&address=${address}&poster=${this.data.topicSelIndex}&liveAddress=${liveAddress}&activity_type=${activityType}`,
+ });
+ },
});
\ No newline at end of file
diff --git a/src/mindspore/package-events/publish/publish.wxml b/src/mindspore/package-events/publish/publish.wxml
index 6226eb991adc7c0945f063f041372faf914c2056..9b9a81b570ccf8cec0913388347581d3bc2ef127 100644
--- a/src/mindspore/package-events/publish/publish.wxml
+++ b/src/mindspore/package-events/publish/publish.wxml
@@ -77,7 +77,7 @@
-
+
+
报名链接
*
diff --git a/src/mindspore/package-events/sign-up/career-direction.js b/src/mindspore/package-events/sign-up/career-direction.js
deleted file mode 100644
index 1a89d423604fcb39bea7dde0b7d27c180bcef0f3..0000000000000000000000000000000000000000
--- a/src/mindspore/package-events/sign-up/career-direction.js
+++ /dev/null
@@ -1,176 +0,0 @@
-const {
- all
-} = require("../../utils/underscore")
-
-Page({
- data: {
- checkedList: [],
- seachList:[],
- addShow: false,
- renderList:[],
- allCareer: [{
- value: '网络方向',
- isActive: false
- },
- {
- value: '运维方向',
- isActive: false
- },
- {
- value: '数据库方向',
- isActive: false
- },
- {
- value: '开发方向',
- isActive: false
- },
- {
- value: '测试方向',
- isActive: false
- },
- {
- value: '项目产品方向',
- isActive: false
- },
- {
- value: '安全方向',
- isActive: false
- },
- {
- value: '新型产业',
- isActive: false
- },
- {
- value: '技术管理和架构',
- isActive: false
- },
- ],
- seachValue: '',
- newTag: ''
- },
- onLoad(options) {
- let active = JSON.parse(options.directionList);
- let render = this.data.allCareer
- try {
- active.forEach(item =>{
- render[item.index].isActive = true
- })
- } catch (error) {
- render = this.data.allCareer
- }
- this.setData({
- renderList:render,
- checkedList:active
- })
- },
- itemClick(e) {
- let renderList = this.data.renderList
- let index = e.currentTarget.dataset.index
- if (this.data.checkedList.length >= 3 && !renderList[index].isActive) {
- wx.showToast({
- title: "最多可选3个标签",
- icon: 'error',
- });
- } else {
- renderList[index].isActive = !renderList[index].isActive
- let pushItem = renderList[index]
- pushItem['index'] = index
- if (renderList[index].isActive) {
- this.data.checkedList.push(pushItem)
- } else {
- let delIndex = this.data.checkedList.findIndex(item => {
- return item.index == index
- })
- this.data.checkedList.splice(delIndex, 1)
- }
- }
- this.setData({
- renderList: renderList,
- checkedList: this.data.checkedList
- })
- },
- onSearch(e) {
- let value = e.detail;
- let seach = this.data.allCareer.filter(item => {
- return item.value.includes(value)
- })
- this.setData({
- renderList:seach
- })
- },
- onCancel() {
- this.setData({
- renderList:this.data.allCareer
- })
- },
- cancelChecked() {
- this.data.renderList.forEach(item => {
- item.isActive = false
- })
- this.setData({
- checkedList: [],
- renderList: this.data.renderList
- })
- },
- confirmChecked() {
- let pages = getCurrentPages();
- let prevPage = pages[pages.length - 2]; //上一个页面
- //直接调用上一个页面的setData()方法,把数据存到上一个页面中去
- prevPage.setData({
- directionList: this.data.checkedList
- })
-
- wx.navigateBack({
- delta: 1
- })
- },
- addNew() {
- this.setData({
- addShow: true
- })
- },
- addCancel() {
- this.setData({
- addShow: false
- })
- },
- addConfirm() {
-
- if (this.data.checkedList.length >= 3) {
- wx.showToast({
- title: "最多可选3个标签",
- icon: 'error',
- });
- } else {
- let length = this.data.renderList.length
- let newTag = {
- value: this.data.newTag,
- index: length,
- isActive: true
- }
- this.data.checkedList.push(newTag)
- this.data.renderList.push(newTag)
- this.setData({
- addShow: false,
- newTag: '',
- checkedList: this.data.checkedList,
- renderList: this.data.renderList
- })
- }
-
- },
- tagInput(e) {
- this.setData({
- newTag: e.detail.value,
- });
- },
- back() {
- if (this.data.isScan) {
- wx.switchTab({
- url: '/pages/events/events'
- })
- return;
- }
- wx.navigateBack();
- }
-})
\ No newline at end of file
diff --git a/src/mindspore/package-events/sign-up/career-direction.json b/src/mindspore/package-events/sign-up/career-direction.json
deleted file mode 100644
index 77623236e940325e0500253e4378bd75f889409c..0000000000000000000000000000000000000000
--- a/src/mindspore/package-events/sign-up/career-direction.json
+++ /dev/null
@@ -1,8 +0,0 @@
-{
- "usingComponents": {
- "van-search": "@vant/weapp/search/index"
- },
- "navigationBarTitleText": "职业方向",
- "navigationBarBackgroundColor": "#40ADFF",
- "navigationBarTextStyle": "white"
-}
\ No newline at end of file
diff --git a/src/mindspore/package-events/sign-up/career-direction.wxml b/src/mindspore/package-events/sign-up/career-direction.wxml
deleted file mode 100644
index 3a946060c4999772e699508624bf8b3bf420ef09..0000000000000000000000000000000000000000
--- a/src/mindspore/package-events/sign-up/career-direction.wxml
+++ /dev/null
@@ -1,40 +0,0 @@
-
-
-
-
-
-
-
- {{item.value}}
-
-
-
-
- 个人岗位从事方向
-
-
- {{item.value}}
-
-
- 新建其他
-
-
-
-
-
-
-
-
-
- 新建标签
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/mindspore/package-events/sign-up/career-direction.wxss b/src/mindspore/package-events/sign-up/career-direction.wxss
deleted file mode 100644
index 86d713d0e1ae859a355f23130da4a15deac86365..0000000000000000000000000000000000000000
--- a/src/mindspore/package-events/sign-up/career-direction.wxss
+++ /dev/null
@@ -1,105 +0,0 @@
-.container {
- padding: 0 0 129rpx;
- background-color: #F5F7FA;
-}
-
-.career-top {
- margin-top: 30rpx;
- background-color: #ffffff;
-}
-.career-body {
- padding: 40rpx 30rpx 0;
-}
-.title {
- font-size: 40rpx;
-}
-.career-item {
- margin-right: 15rpx;
- margin-bottom: 20rpx;
- padding: 8rpx 14rpx;
- color: #6189FF;
- font-size: 27rpx;
- border: 1px solid #6189FF;
- border-radius: 30rpx;
- background: rgba(97, 137, 255, 0.3);
-}
-.all-list {
- display: flex;
- flex-wrap: wrap;
- margin-top: 40rpx;
- margin-bottom: 100rpx;
-}
-.checked-list {
- display: flex;
- flex-wrap: wrap;
- padding: 0 30rpx;
-}
-.all-item {
- margin-right: 15rpx;
- margin-bottom: 30rpx;
- padding: 8rpx 14rpx;
- border-radius: 30rpx;
- font-size: 27rpx;
- color: #9FA8B1;
- border: 1px solid transparent;
- background-color: #ffffff;
-}
-
-.career-item {
- margin-right: 15rpx;
- padding: 8rpx 14rpx;
- color: #6189FF;
- font-size: 27rpx;
- border: 1px solid #6189FF;
- border-radius: 30rpx;
- background: rgba(97, 137, 255, 0.3);
-}
-
-.create-new {
- color: #40ADFF;
- margin-right: 15rpx;
- margin-bottom: 30rpx;
- padding: 8rpx 18rpx;
- border-radius: 30rpx;
- font-size: 27rpx;
- border: 1px dashed #40ADFF;
-}
-.create-new image {
- margin-right: 10rpx;
- width: 20rpx;
- height: 20rpx;
-}
-.tag {
- color: #81888f;
- padding: 40rpx;
- box-sizing: content-box;
- background-color: rgba(159, 168, 177, 0.13);
-}
-
-.btn-wrapper {
- display: flex;
- align-items: center;
- justify-content: space-between;
- height: 90rpx;
- font-size: 36rpx;
- margin: 60rpx 0;
-}
-
- .btn-wrapper .confirm {
- height: 100%;
- width: 320rpx;
- text-align: center;
- line-height: 90rpx;
- color: #fff;
- background-color: #40ADFF;
-}
-
- .btn-wrapper .cancel {
- height: 100%;
- width: 320rpx;
- text-align: center;
- line-height: 90rpx;
- color: #40ADFF;
- background-color: #fff;
- border: 1px solid #40ADFF;
-}
\ No newline at end of file
diff --git a/src/mindspore/package-events/sign-up/career-name.js b/src/mindspore/package-events/sign-up/career-name.js
deleted file mode 100644
index cc925fe4877864c41eb1057376e7d3bce0a127b3..0000000000000000000000000000000000000000
--- a/src/mindspore/package-events/sign-up/career-name.js
+++ /dev/null
@@ -1,239 +0,0 @@
-const {
- all
-} = require("../../utils/underscore")
-
-Page({
- data: {
- checkedList: [],
- seachList: [],
- addShow: false,
- renderList: [],
- allCareer: [{
- value: '管理',
- isActive: false
- },
- {
- value: '后端开发',
- isActive: false
- },
- {
- value: '前端开发',
- isActive: false
- },
- {
- value: '移动开发',
- isActive: false
- },
- {
- value: '测试',
- isActive: false
- },
- {
- value: 'DBA',
- isActive: false
- },
- {
- value: '运维',
- isActive: false
- },
- {
- value: '产品经理',
- isActive: false
- },
- {
- value: '产品设计师',
- isActive: false
- },
- {
- value: '视觉设计',
- isActive: false
- },
- {
- value: '交互设计',
- isActive: false
- },
- {
- value: '用户研究',
- isActive: false
- },
- {
- value: '市场/营销',
- isActive: false
- },
- {
- value: '媒介/公关',
- isActive: false
- },
- {
- value: '品牌/广告',
- isActive: false
- },
- {
- value: '渠道/推广',
- isActive: false
- },
- {
- value: '活动策划',
- isActive: false
- },
- {
- value: '用户运营',
- isActive: false
- },
- {
- value: '产品运营',
- isActive: false
- },
- {
- value: '新媒体运营',
- isActive: false
- },
- {
- value: '内容运营',
- isActive: false
- },
- {
- value: '社群运营',
- isActive: false
- },
- {
- value: '财务',
- isActive: false
- },
- {
- value: '人力资源(HR)',
- isActive: false
- },
- {
- value: '行政',
- isActive: false
- },
- ],
- seachValue: '',
- newTag: ''
- },
- onLoad(options) {
- let active = JSON.parse(options.nameList);
- let render = this.data.allCareer
- try {
- active.forEach(item =>{
- render[item.index].isActive = true
- })
- } catch (error) {
- render = this.data.allCareer
- }
- this.setData({
- renderList:render,
- checkedList:JSON.parse(options.nameList)
- })
- },
- itemClick(e) {
- let renderList = this.data.renderList
- let index = e.currentTarget.dataset.index
- if (this.data.checkedList.length >= 3 && !renderList[index].isActive) {
- wx.showToast({
- title: "最多可选3个标签",
- icon: 'error',
- });
- } else {
- renderList[index].isActive = !renderList[index].isActive
- let pushItem = renderList[index]
- pushItem['index'] = index
- if (renderList[index].isActive) {
- this.data.checkedList.push(pushItem)
- } else {
- let delIndex = this.data.checkedList.findIndex(item => {
- return item.index == index
- })
- this.data.checkedList.splice(delIndex, 1)
- }
- }
- this.setData({
- renderList: renderList,
- checkedList: this.data.checkedList
- })
- },
- onSearch(e) {
- let value = e.detail;
- let seach = this.data.allCareer.filter(item => {
- return item.value.includes(value)
- })
- this.setData({
- renderList: seach
- })
- },
- onCancel() {
- this.setData({
- renderList: this.data.allCareer
- })
- },
- cancelChecked() {
- this.data.renderList.forEach(item => {
- item.isActive = false
- })
- this.setData({
- checkedList: [],
- renderList: this.data.renderList
- })
- },
- confirmChecked() {
- let pages = getCurrentPages();
- let prevPage = pages[pages.length - 2]; //上一个页面
- //直接调用上一个页面的setData()方法,把数据存到上一个页面中去
- prevPage.setData({
- nameList: this.data.checkedList
- })
- wx.navigateBack({
- delta: 1
- })
- },
- addNew() {
- this.setData({
- addShow: true
- })
- },
- addCancel() {
- this.setData({
- addShow: false
- })
- },
- addConfirm() {
-
- if (this.data.checkedList.length >= 3) {
- wx.showToast({
- title: "最多可选3个标签",
- icon: 'error',
- });
- } else {
- let length = this.data.renderList.length
- let newTag = {
- value: this.data.newTag,
- index: length,
- isActive: true
- }
- this.data.checkedList.push(newTag)
- this.data.renderList.push(newTag)
- this.setData({
- addShow: false,
- newTag: '',
- checkedList: this.data.checkedList,
- renderList: this.data.renderList
- })
- }
-
- },
- tagInput(e) {
- this.setData({
- newTag: e.detail.value,
- });
- },
- back() {
- if (this.data.isScan) {
- wx.switchTab({
- url: '/pages/events/events'
- })
- return;
- }
- wx.navigateBack();
- }
-})
\ No newline at end of file
diff --git a/src/mindspore/package-events/sign-up/career-name.json b/src/mindspore/package-events/sign-up/career-name.json
deleted file mode 100644
index 910d3947471a83ab4bfb3fa9cfcab64a68748845..0000000000000000000000000000000000000000
--- a/src/mindspore/package-events/sign-up/career-name.json
+++ /dev/null
@@ -1,8 +0,0 @@
-{
- "usingComponents": {
- "van-search": "@vant/weapp/search/index"
- },
- "navigationBarTitleText": "职业名称",
- "navigationBarBackgroundColor": "#40ADFF",
- "navigationBarTextStyle": "white"
-}
\ No newline at end of file
diff --git a/src/mindspore/package-events/sign-up/career-name.wxml b/src/mindspore/package-events/sign-up/career-name.wxml
deleted file mode 100644
index b11bb1ee948d526e4f3c7e504529c5f3027ac7e4..0000000000000000000000000000000000000000
--- a/src/mindspore/package-events/sign-up/career-name.wxml
+++ /dev/null
@@ -1,40 +0,0 @@
-
-
-
-
-
-
-
- {{item.value}}
-
-
-
-
- 个人目前所在岗位名称
-
-
- {{item.value}}
-
-
- 新建其他
-
-
-
-
-
-
-
-
-
- 新建标签
-
-
-
-
-
-
-
-
diff --git a/src/mindspore/package-events/sign-up/career-name.wxss b/src/mindspore/package-events/sign-up/career-name.wxss
deleted file mode 100644
index 86d713d0e1ae859a355f23130da4a15deac86365..0000000000000000000000000000000000000000
--- a/src/mindspore/package-events/sign-up/career-name.wxss
+++ /dev/null
@@ -1,105 +0,0 @@
-.container {
- padding: 0 0 129rpx;
- background-color: #F5F7FA;
-}
-
-.career-top {
- margin-top: 30rpx;
- background-color: #ffffff;
-}
-.career-body {
- padding: 40rpx 30rpx 0;
-}
-.title {
- font-size: 40rpx;
-}
-.career-item {
- margin-right: 15rpx;
- margin-bottom: 20rpx;
- padding: 8rpx 14rpx;
- color: #6189FF;
- font-size: 27rpx;
- border: 1px solid #6189FF;
- border-radius: 30rpx;
- background: rgba(97, 137, 255, 0.3);
-}
-.all-list {
- display: flex;
- flex-wrap: wrap;
- margin-top: 40rpx;
- margin-bottom: 100rpx;
-}
-.checked-list {
- display: flex;
- flex-wrap: wrap;
- padding: 0 30rpx;
-}
-.all-item {
- margin-right: 15rpx;
- margin-bottom: 30rpx;
- padding: 8rpx 14rpx;
- border-radius: 30rpx;
- font-size: 27rpx;
- color: #9FA8B1;
- border: 1px solid transparent;
- background-color: #ffffff;
-}
-
-.career-item {
- margin-right: 15rpx;
- padding: 8rpx 14rpx;
- color: #6189FF;
- font-size: 27rpx;
- border: 1px solid #6189FF;
- border-radius: 30rpx;
- background: rgba(97, 137, 255, 0.3);
-}
-
-.create-new {
- color: #40ADFF;
- margin-right: 15rpx;
- margin-bottom: 30rpx;
- padding: 8rpx 18rpx;
- border-radius: 30rpx;
- font-size: 27rpx;
- border: 1px dashed #40ADFF;
-}
-.create-new image {
- margin-right: 10rpx;
- width: 20rpx;
- height: 20rpx;
-}
-.tag {
- color: #81888f;
- padding: 40rpx;
- box-sizing: content-box;
- background-color: rgba(159, 168, 177, 0.13);
-}
-
-.btn-wrapper {
- display: flex;
- align-items: center;
- justify-content: space-between;
- height: 90rpx;
- font-size: 36rpx;
- margin: 60rpx 0;
-}
-
- .btn-wrapper .confirm {
- height: 100%;
- width: 320rpx;
- text-align: center;
- line-height: 90rpx;
- color: #fff;
- background-color: #40ADFF;
-}
-
- .btn-wrapper .cancel {
- height: 100%;
- width: 320rpx;
- text-align: center;
- line-height: 90rpx;
- color: #40ADFF;
- background-color: #fff;
- border: 1px solid #40ADFF;
-}
\ No newline at end of file
diff --git a/src/mindspore/package-events/sign-up/save-success.js b/src/mindspore/package-events/sign-up/save-success.js
deleted file mode 100644
index f7ad4c7501fab576f9a8845796e928c938c7ab10..0000000000000000000000000000000000000000
--- a/src/mindspore/package-events/sign-up/save-success.js
+++ /dev/null
@@ -1,11 +0,0 @@
-Page({
-
- data: {
-
- },
- toList() {
- wx.navigateTo({
- url: '../../package-events/events/event-list',
- })
- }
-})
\ No newline at end of file
diff --git a/src/mindspore/package-events/sign-up/sign-up.js b/src/mindspore/package-events/sign-up/sign-up.js
deleted file mode 100644
index e5b0944f4ed97697271548544985b62287ece411..0000000000000000000000000000000000000000
--- a/src/mindspore/package-events/sign-up/sign-up.js
+++ /dev/null
@@ -1,278 +0,0 @@
-// package-events/sign-up/sign-up.js
-const appAjax = require('./../../utils/app-ajax');
-const sessionUtil = require('../../utils/app-session.js');
-const validationConfig = require('./../../config/field-validate-rules');
-
-let that = null;
-
-let remoteMethods = {
- getUserInfo: function (_callback) {
- appAjax.postJson({
- autoShowWait: true,
- type: 'GET',
- service: 'APPLICANT_INFO',
- otherParams: {
- id: sessionUtil.getUserInfoByKey('userId'),
- },
- success: function (ret) {
- _callback && _callback(ret);
- },
- });
- },
- signUp: function (postData, _callback) {
- appAjax.postJson({
- autoShowWait: true,
- type: 'POST',
- data: postData,
- service: 'SAVE_SIGNUP_INFO',
- success: function (ret) {
- _callback && _callback(ret);
- },
- });
- },
-};
-
-let localMethods = {
- validation() {
- if (!that.data.name) {
- this.toast('请输入您的姓名');
- return;
- }
- if (!that.data.wechat) {
- this.toast('请输入您的微信号');
- return;
- }
- if (!that.data.gender) {
- this.toast('请选择性别');
- return;
- }
- if (!that.data.age) {
- this.toast('请选择年龄段');
- return;
- }
- if (!validationConfig.phone.regex.test(that.data.tel)) {
- this.toast('请输入正确的手机号码');
- return;
- }
- if (!validationConfig.email.regex.test(that.data.mail)) {
- this.toast('请输入正确的邮箱地址');
- return;
- }
- if (!that.data.enterprise) {
- this.toast('请输入您的公司名称或学校');
- return;
- }
- if (that.data.directionList.length === 0) {
- this.toast('请选择职业方向');
- return;
- }
- if (that.data.nameList.length === 0) {
- this.toast('请选择职业名称');
- return;
- }
- if (!that.data.work) {
- this.toast('请选择工作年限');
- return;
- }
- return true;
- },
- toast(msg) {
- wx.showToast({
- title: msg,
- icon: 'none',
- duration: 2000,
- });
- },
-};
-
-Page({
- /**
- * 页面的初始数据
- */
- data: {
- name: '',
- tel: '',
- mail: '',
- enterprise: '',
- gitee: '',
- id: '',
- wechat:'',
- eventTitle: '',
- directionList:[],
- nameList:[],
- poster: 1,
- gender:0,
- ageShow:false,
- workShow:false,
- age:'',
- work:'',
- ageList:[
- '18岁以下',
- '18-25',
- '26-30',
- '31-40',
- '41-50',
- '51-60',
- '61以上'
- ],
- workList:[
- '0-3(不包含3年)',
- '3-5(不包含5年)',
- '5-10(不包含10年)',
- '10年及以上',
- ]
- },
-
- /**
- * 生命周期函数--监听页面加载
- */
- onLoad: function (options) {
- that = this;
- this.setData({
-
- });
- },
-
- /**
- * 生命周期函数--监听页面显示
- */
- onLoad: function (options) {
- that = this;
- let pages = getCurrentPages();
- let currPage = pages[pages.length - 1];
- remoteMethods.getUserInfo((res) => {
- let nameList = null;
- let directionList =null;
- currPage.__data__.nameList.length ===0 ? nameList = JSON.parse(res.profession) : nameList = currPage.__data__.nameList
- currPage.__data__.directionList.length === 0 ? directionList = JSON.parse(res.career_direction):directionList = currPage.__data__.directionList
- this.setData({
- name: res.name || '',
- tel: res.telephone || '',
- mail: res.email || '',
- wechat:res.wx_account || '',
- enterprise: res.company || '',
- gender:res.gender||'',
- work:res.working_years||'',
- age:res.age||'',
- gitee: res.gitee_name || '',
- work:res.working_years||'',
- nameList: nameList,
- directionList:directionList,
- id: options.id,
- eventTitle: options.title,
- poster: options.poster,
- });
- });
- },
- nameInput(e) {
- this.setData({
- name: e.detail.value,
- });
- },
- wechatInput(e) {
- this.setData({
- wechat: e.detail.value,
- });
- },
- telInput(e) {
- this.setData({
- tel: e.detail.value,
- });
- },
- mailInput(e) {
- this.setData({
- mail: e.detail.value,
- });
- },
- ageConfirm: function () {
- this.setData({
- ageShow: false,
- });
- },
- workConfirm: function () {
- this.setData({
- workShow: false,
- });
- },
- ageRadioOnChange(e) {
- this.setData({
- age: e.detail,
- });
- },
- workRadioOnChange(e) {
- this.setData({
- work: e.detail,
- });
- },
- enterpriseInput(e) {
- this.setData({
- enterprise: e.detail.value,
- });
- },
- occupationInput(e) {
- this.setData({
- occupation: e.detail.value,
- });
- },
- careerNameClick() {
- wx.navigateTo({
- url: `/package-events/sign-up/career-name?nameList=${JSON.stringify(this.data.nameList)}`
- });
- },
- radioOnChange(e) {
- this.setData({
- gender: e.detail
- })
- },
- onAgeShow() {
- this.setData({
- ageShow: true,
- })
- },
- onWorkShow() {
- this.setData({
- workShow: true,
- })
- },
- careerClick() {
- wx.navigateTo({
- url: `/package-events/sign-up/career-direction?directionList=${JSON.stringify(this.data.directionList)}`
- });
- },
- giteeInput(e) {
- this.setData({
- gitee: e.detail.value,
- });
- },
- signUp() {
- if (!localMethods.validation()) {
- return;
- }
- const postData = {
- company: this.data.enterprise,
- wx_account:this.data.wechat,
- age:this.data.age,
- gender:this.data.gender,
- email: this.data.mail,
- gitee_id: this.data.gitee,
- name: this.data.name,
- career_direction:JSON.stringify(this.data.directionList),
- profession: JSON.stringify(this.data.nameList),
- working_years:this.data.work,
- telephone: this.data.tel,
- activity: this.data.id,
- };
- remoteMethods.signUp(postData, () => {
- wx.redirectTo({
- url: `/package-events/sign-up/sign-up-success?name=${encodeURIComponent(
- this.data.name
- )}&title=${encodeURIComponent(this.data.eventTitle)}&tel=${encodeURIComponent(
- this.data.tel
- )}&poster=${encodeURIComponent(this.data.poster)}&id=${encodeURIComponent(this.data.id)}`,
- });
- });
- },
- back() {
- wx.navigateBack();
- },
-});
diff --git a/src/mindspore/package-events/sign-up/sign-up.wxml b/src/mindspore/package-events/sign-up/sign-up.wxml
deleted file mode 100644
index ce99c422f4a669290a9fe5de95b4afa05c185beb..0000000000000000000000000000000000000000
--- a/src/mindspore/package-events/sign-up/sign-up.wxml
+++ /dev/null
@@ -1,167 +0,0 @@
-
-
-
-
-
-
- 您的姓名
- *
-
-
-
-
-
- 微信号
- *
-
-
-
-
-
- 性别
- *
-
-
-
-
- 男
-
-
- 女
-
-
-
-
-
-
- 年龄段
- *
-
-
- {{ age }}
-
-
-
-
-
- 您的手机
- *
-
-
-
-
-
- 您的邮箱
- *
-
-
-
-
-
- 就职公司/所读学校
- *
-
-
-
-
-
- 职业方向
- *
-
-
-
- {{ item.value }}
-
-
-
-
-
- 职业名称
- *
-
-
-
- {{ item.value }}
-
-
-
-
-
- 工作年限
- *
-
-
- {{ work }}
-
-
-
-
-
- 您的Gitee ID
-
-
-
-
-
-
-
-
-
- *
- 号为必填项
-
-
-
-
-
-
-
-
-
- 选择年龄段
-
-
-
-
- {{item}}
-
-
-
-
-
-
-
-
-
-
-
-
- 选择工作年限
-
-
-
-
- {{item}}
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/mindspore/package-events/sign-up/wxml-to-canvas.js b/src/mindspore/package-events/sign-up/wxml-to-canvas.js
deleted file mode 100644
index 1cfe6c7fbec1d78d682f7f7cee861bc8c5f155c1..0000000000000000000000000000000000000000
--- a/src/mindspore/package-events/sign-up/wxml-to-canvas.js
+++ /dev/null
@@ -1,97 +0,0 @@
-const wxml = (data) => {
- return `
-
-
-
-
- 报名成功!
- ${data.title}
- 您的参会凭证
- 姓名: ${data.name}
- 手机: ${data.tel}
-
-
-
- `;
-};
-
-const style = () => {
- return {
- container: {
- width: 375,
- height: 750,
- flexDirection: 'column',
- alignItems: 'center',
- },
- absolute: {
- width: 375,
- height: 750,
- flexDirection: 'column',
- alignItems: 'center',
- },
- avatar: {
- marginTop: 110,
- width: 176,
- height: 58,
- },
- successText: {
- color: '#333333',
- fontSize: 20,
- marginTop: 80,
- fontWeight: 500,
- height: 28,
- width: 100,
- textAlign: 'center',
- },
- title: {
- color: '#40ADFF',
- fontSize: 17,
- marginTop: 15,
- height: 25,
- width: 300,
- textAlign: 'center',
- },
- voucher: {
- color: '#333333',
- fontSize: 17,
- marginTop: 15,
- height: 25,
- width: 300,
- textAlign: 'center',
- },
- name: {
- marginTop: 33,
- fontSize: 17,
- color: '#40ADFF',
- height: 25,
- width: 300,
- textAlign: 'center',
- },
- tel: {
- marginTop: 15,
- fontSize: 17,
- color: '#40ADFF',
- height: 25,
- width: 350,
- textAlign: 'center',
- },
- qrcode: {
- marginTop: 30,
- height: 150,
- width: 150,
- borderRadius: 75
- },
- bgImg: {
- position: 'absolute',
- width: 375,
- height: 750,
- top: 0,
- left: 0,
- },
- };
-};
-
-module.exports = {
- wxml,
- style,
-};
diff --git a/src/mindspore/package-meeting/meeting/detail.wxml b/src/mindspore/package-meeting/meeting/detail.wxml
index 7399a6c61a3b55182adf93c1859baaa6abe459d2..0c4617bff83823db33e9936be56f2b36e174fcb8 100644
--- a/src/mindspore/package-meeting/meeting/detail.wxml
+++ b/src/mindspore/package-meeting/meeting/detail.wxml
@@ -1,73 +1,74 @@
-
-
-
- {{info.topic}}
-
-
- {{info.date}} {{info.start}}-{{info.end}}
-
-
-
-
- {{info.group_name}}
-
-
-
- {{info.agenda}}
-
-
-
- Etherpad链接
-
-
- {{info.etherpad}}
-
-
-
-
-
-
- 腾讯会议
-
-
- ID: {{info.mid}}
-
-
-
- {{info.join_url}}
-
-
-
-
-
-
-
-
- 录屏上传链接
-
-
- {{info.replay_url}}
-
-
-
-
-
-
-
-
-
- 一键收藏此会议,即可收到会议提醒通知哦!
-
+
+
+
+ {{info.topic}}
+
+
+ {{info.date}} {{info.start}}-{{info.end}}
+
+
+
+
+ {{info.group_name}}
+
+
+
+ {{info.agenda}}
+
+
+
+ Etherpad链接
+
+
+ {{info.etherpad}}
+
+
+
+
+
+
+ 腾讯会议
+ WeLink
+
+
+ ID: {{info.mid}}
+
+
+
+ {{info.join_url}}
+
+
+
+
+
+
+
+
+ 录屏上传链接
+
+
+ {{info.replay_url}}
+
+
+
+
+
+
+
+
+
+ 一键收藏此会议,即可收到会议提醒通知哦!
+
\ No newline at end of file
diff --git a/src/mindspore/package-meeting/reserve/reserve.js b/src/mindspore/package-meeting/reserve/reserve.js
index bea736d8c0333e0503392c61ca540896df35f76b..93a9faca66e6d5655cc68ecda9c757e3d0fbaea7 100644
--- a/src/mindspore/package-meeting/reserve/reserve.js
+++ b/src/mindspore/package-meeting/reserve/reserve.js
@@ -1,708 +1,733 @@
-// pages/reserve/reserve.js
-var appAjax = require('./../../utils/app-ajax');
-var appSession = require('./../../utils/app-session.js');
-var utils = require('./../../utils/utils.js');
-const sessionUtil = require('../../utils/app-session.js');
-const appUser = require('../../utils/app-user.js');
-utils.formateDate();
-let remoteMethods = {
- getUserGroup: function (id, _callback) {
- appAjax.postJson({
- autoShowWait: true,
- type: 'GET',
- service: 'GET_USER_GROUP',
- otherParams: {
- id: id,
- },
- success: function (ret) {
- _callback && _callback(ret);
- },
- });
- },
- saveMeeting: function (postData, _callback) {
- appAjax.postJson({
- autoShowWait: true,
- type: 'POST',
- service: 'SAVE_MEETING',
- data: postData,
- success: function (ret) {
- _callback && _callback(ret);
- },
- });
- },
- getMsgList: function (keyword, _callback) {
- appAjax.postJson({
- autoShowWait: true,
- type: 'GET',
- service: 'MSG_LIST',
- data: {
- search: keyword,
- },
- success: function (ret) {
- _callback && _callback(ret);
- },
- });
- },
- getSigList: function (keyword, _callback) {
- appAjax.postJson({
- autoShowWait: true,
- type: 'GET',
- service: 'SIG_LIST',
- data: {
- search: keyword,
- },
- success: function (ret) {
- _callback && _callback(ret);
- },
- });
- },
- getUserCityList:function (keyword, _callback) {
- appAjax.postJson({
- autoShowWait: true,
- type: 'GET',
- service: 'GROUP_USER_CITY',
- otherParams: {
- id: keyword
- },
- success: function (ret) {
- _callback && _callback(ret);
- },
- });
- },
-};
-let localMethods = {
- validation: function (that) {
- if (!that.data.topic) {
- this.toast('请输入会议名称');
- return;
- }
- if (!that.data.sponsor) {
- this.toast('请联系管理员编辑您的gitee name');
- return;
- }
- if (!that.data.typeMeeting) {
- this.toast('请选择会议类型');
- return;
- }
- if (that.data.meeting_type == 1 && !that.data.sigResult) {
- this.toast('请选择所在SIG');
- return;
- }
- if (that.data.meeting_type == 2 && !that.data.msgResult) {
- this.toast('请选择所在城市');
- return;
- }
- if (!that.data.date) {
- this.toast('请选择日期');
- return;
- }
- if (!that.data.start) {
- this.toast('请选择开始时间');
- return;
- }
- if (!that.data.end) {
- this.toast('请选择结束时间');
- return;
- }
- if (
- that.data.start.split(':')[0] > that.data.end.split(':')[0] ||
- (that.data.start.split(':')[0] == that.data.end.split(':')[0] &&
- that.data.start.split(':')[1] >= that.data.end.split(':')[1])
- ) {
- this.toast('开始时间必须小于结束时间');
- return;
- }
- return true;
- },
- toast: function (msg) {
- wx.showToast({
- title: msg,
- icon: 'none',
- duration: 2000,
- });
- },
-};
-Page({
- /**
- * 页面的初始数据
- */
- data: {
- record: false,
- topic: '',
- sponsor: '',
- date: '',
- start: '',
- end: '',
- etherpad: '',
- agenda: '',
- emaillist: '',
- sigPopShow: false,
- msgPopShow:false,
- typeResult: '',
- typeMeeting:'',
- group_name: '',
- city:'',
- meeting_type: 1,
- sigResult: '',
- msgResult:'',
- sigList: ['abc','bbc'],
- msgList: ['上海','北京'],
- datePopShow: false,
- curDate: new Date().getTime(),
- currentDate: new Date().getTime(),
- minDate: new Date().getTime(),
- timePopShow: false,
- currentTime: '08:00',
- minTime: 8,
- maxTime: 22,
- endTimePopShow: false,
- currentEndTime: '08:00',
- minEndTime: 8,
- maxEndTime: 22,
- showDialogWarn: false,
- isSig: false,
- isMSG:false,
- showMeetType: false,
- allData: [],
- typeKey:'',
- type:{
- Tech:'专家委员会',
- MSG:'MSG会议',
- SIG:'SIG会议'
- },
- msgListAll:[],
- sigListAll:[],
- permission:[],
- msgCityList:[],
- tipsType:'',
- filter(type, options) {
- if (type === 'minute') {
- return options.filter((option) => option % 15 === 0);
- }
-
- return options;
- },
- level:''
- },
-
- /**
- * 生命周期函数--监听页面加载
- */
- onLoad: function () {
- let that=this
- let e=sessionUtil.getUserInfoByKey('avatarUrl')
- appUser.updateUserInfo(function () {
- that.setData({
- level: sessionUtil.getUserInfoByKey('level'),
- });
- });
- },
- /**
- * 生命周期函数--监听页面显示
- */
- onShow: function () {
- this.setData({
- sponsor: appSession.getUserInfoByKey('gitee') || '',
- });
- let that = this;
- const level=sessionUtil.getUserInfoByKey('level')
- // appSession.getUserInfoByKey('userId')
- if(level==3){
- remoteMethods.getMsgList('', function (list) {
- let tempList=[]
- list.forEach(item=>{
- tempList.push(item.name)
- })
- that.setData({
- msgListAll: list,
- permission:['Tech','MSG','SIG'],
- msgList:tempList,
- msgCityList:list
- });
- });
- remoteMethods.getSigList('',function (list) {
- let tempList=[]
- list.forEach(item=>{
- tempList.push(item.name)
- })
- that.setData({
- sigListAll: list,
- sigList:tempList
- });
- })
- }else{
- remoteMethods.getUserGroup(appSession.getUserInfoByKey('userId'), function (data) {
- let permissionTemp=[]
- {
- // if (data && data.length) {
- // that.setData({
- // allData: data,
- // });
- // let temp = [];
- // let sigValue = '';
- // let typeTemp = [];
- // data.forEach((item) => {
- // if (item.group_type == '1') {
- // temp.push(item.group_name);
- // sigValue = item.description;
- // if(!permissionTemp.includes("SIG")){
- // permissionTemp.push('SIG')
- // }
- // } else {
- // typeTemp.push(item.description);
- // if(item.group_type == '2'&&!permissionTemp.includes("MSG")){
- // permissionTemp.push('MSG')
- // }
- // if(item.group_type == '3'&&!permissionTemp.includes("Tech")){
- // permissionTemp.push('Tech')
- // }
- // }
- // });
- // if (sigValue) {
- // typeTemp.push(sigValue);
- // }
- // that.setData({
- // sigList: temp,
- // typeList: typeTemp,
- // });
- // if (that.data.typeList[0].includes('SIG')) {
- // that.setData({
- // typeResult: that.data.typeList[0],
- // isSig: true,
- // });
- // } else {
- // that.data.allData.forEach((item) => {
- // if (item.group_type != 1) {
- // if (item.group_name == 'MSG' && that.data.typeList[0].includes('MSG')) {
- // that.setData({
- // typeResult: that.data.typeList[0],
- // etherpad: item.etherpad,
- // group_name: item.group_name,
- // meeting_type: item.group_type,
- // });
- // } else if (item.group_name == 'Tech' && that.data.typeList[0].includes('专家')) {
- // that.setData({
- // typeResult: that.data.typeList[0],
- // etherpad: item.etherpad,
- // group_name: item.group_name,
- // meeting_type: item.group_type,
- // });
-
- // }
- // }
- // });
- // }
- // }
- }
- if(data && data.length){
- that.setData({
- allData: data,
- });
- let msgListAll=[]
- let sigListAll=[]
- let sigList=[]
- data.forEach((item)=>{
- if(item.group_type==3){
- permissionTemp.push('Tech')
- }else if(item.group_type==2){
- permissionTemp.push('MSG')
- }else if(item.group_type==1){
- item.name=item.group_name
- permissionTemp.push('SIG')
- sigList.push(item.group_name)
- sigListAll.push(item)
- }
- })
- permissionTemp=[...new Set(permissionTemp)]
- that.setData({
- permission:permissionTemp,
- sigListAll:sigListAll,
- sigList:sigList
- })
- if(permissionTemp.includes('MSG')){
- remoteMethods.getUserCityList(appSession.getUserInfoByKey('userId'),function(data){
- let tempList=[]
- data.forEach(item=>{
- item.name=item.city_name
- tempList.push(item.city_name)
- })
- that.setData({
- msgListAll:data,
- msgList:tempList
- })
- })
- remoteMethods.getMsgList('', function (list) {
- that.setData({
- msgCityList:list
- })
- })
- }
- }
-
- });
- }
- },
- recordoOnChange: function (event) {
- this.setData({
- record: event.detail,
- });
- },
- reset: function () {
- this.setData({
- topic: '',
- typeResult: '',
- sigResult: '',
- msgResult:'',
- date: '',
- start: '',
- end: '',
- etherpad: '',
- agenda: '',
- emaillist: '',
- record: '',
- });
- },
- meeting: function () {
- if (!localMethods.validation(this)) {
- return;
- }
- let that = this;
- wx.requestSubscribeMessage({
- tmplIds: ['tK51rqE72oFo5e5ajCnvkPwnsCncfydgcV1jb9ed6Qc'],
- success() {},
- complete() {
- let param={
- topic: that.data.topic,
- sponsor: that.data.sponsor,
- group_name: that.data.group_name,
- date: that.data.date,
- start: that.data.start,
- end: that.data.end,
- etherpad: that.data.etherpad,
- meeting_type: that.data.meeting_type,
- emaillist: that.data.emaillist,
- record: that.data.record ? 'cloud' : '',
- agenda: that.data.agenda,
- }
- if(that.data.meeting_type==2){
- param.city=that.data.city
- }
- remoteMethods.saveMeeting(
- param,
- function (data) {
- if (data.id) {
- wx.redirectTo({
- url: '/package-meeting/meeting/meeting-success?id=' + data.id,
- });
- } else {
- setTimeout(function () {
- wx.showToast(
- {
- title: data.message,
- icon: 'none',
- duration: 2000,
- },
- 100
- );
- });
- }
- }
- );
- },
- });
- },
- sigNameInput: function (e) {
- this.setData({
- topic: e.detail.value,
- });
- },
- etherInput: function (e) {
- this.setData({
- etherpad: e.detail.value,
- });
- },
- agendaInput: function (e) {
- this.setData({
- agenda: e.detail.value,
- });
- },
- emailInput: function (e) {
- this.setData({
- emaillist: e.detail.value,
- });
- },
- sigConfirm: function () {
- // this.data.allData.forEach((item) => {
- // if (item.group_name == this.data.sigResult) {
- // this.setData({
- // etherpad: item.etherpad,
- // sigPopShow: false,
- // group_name: item.group_name,
- // });
- // }
- // });
- this.data.sigListAll.forEach((item)=>{
- if(item.name==this.data.sigResult){
- this.setData({
- etherpad: item.etherpad,
- sigPopShow: false,
- group_name: item.name,
- city:''
- });
- }
- })
- },
- msgConfirm:function(){
- // this.data.msgListAll.forEach((item)=>{
- // if(item.name==this.data.msgResult){
- // this.setData({
- // etherpad: item.etherpad||'',
- // msgPopShow: false,
- // city: item.name,
- // group_name:'MSG'
- // });
- // }
- // })
- this.data.msgCityList.forEach((item)=>{
- if(item.name==this.data.msgResult){
- this.setData({
- etherpad: item.etherpad,
- msgPopShow: false,
- city: item.name,
- group_name:'MSG'
- });
- }
- })
- },
- typeConfirm: function (e) {
- this.setData({
- typeMeeting:this.data.type[this.data.typeKey]
- })
- if(this.data.typeKey=='Tech'){
- if(this.data.permission.includes(this.data.typeKey)){
- this.setData({
- showMeetType: false,
- meeting_type: 3,
- isSig: false,
- isMSG:false,
- city:'',
- group_name:'Tech',
- etherpad: 'https://etherpad.mindspore.cn/p/meetings-Tech',
- sigResult:'',
- msgResult:''
- });
- }else{
- this.setData({
- showDialogWarn: true,
- tipsType:'Tech'
- });
- }
- }else if(this.data.typeKey=='SIG'){
- if(this.data.permission.includes(this.data.typeKey)){
- this.setData({
- showMeetType: false,
- isMSG:false,
- isSig: true,
- meeting_type: 1,
- etherpad:'',
- sigResult:'',
- msgResult:''
- });
- }else{
- this.setData({
- showDialogWarn: true,
- tipsType:'SIG'
- });
- }
- }else if(this.data.typeKey=='MSG'){
- if(this.data.permission.includes(this.data.typeKey)){
- this.setData({
- showMeetType: false,
- isSig: false,
- meeting_type: 2,
- isMSG:true,
- etherpad:'',
- sigResult:'',
- msgResult:''
- });
- }else{
- this.setData({
- showDialogWarn: true,
- tipsType:'MSG'
- });
- }
- }
-
- // if (this.data.typeResult.includes('SIG')) {
- // this.setData({
- // isSig: true,
- // showMeetType: false,
- // meeting_type: 1,
- // });
- // } else {
- // this.setData({
- // showMeetType: false,
- // isSig: false,
- // });
- // this.data.allData.forEach((item) => {
- // if (item.group_type != 1) {
- // if (this.data.typeResult.includes('MSG') && item.group_name == 'MSG') {
- // this.setData({
- // etherpad: item.etherpad,
- // group_name: 'MSG',
- // meeting_type: 2,
- // });
- // } else {
- // this.setData({
- // etherpad: item.etherpad,
- // group_name: 'Tech',
- // meeting_type: 3,
- // });
- // }
- // }
- // });
- // }
- },
- dateConfirm: function () {
- this.setData({
- date: new Date(this.data.currentDate).Format('yyyy-MM-dd'),
- datePopShow: false,
- });
- },
- timeConfirm: function () {
- this.setData({
- start: this.data.currentTime,
- timePopShow: false,
- });
- },
- endTimeConfirm: function () {
- this.setData({
- end: this.data.currentEndTime,
- endTimePopShow: false,
- });
- },
-
- typeRadioOnChange: function (e) {
- this.setData({
- typeKey: e.detail,
- });
- },
- sigRadioOnChange: function (e) {
- this.setData({
- sigResult:e.detail
- })
- },
- msgRadioOnChange: function (e) {
- this.setData({
- msgResult:e.detail
- })
- },
- selType: function () {
- this.setData({
- showMeetType: true,
- });
- },
- selSig: function () {
- if (!this.data.msgList.length) {
- this.setData({
- showDialogWarn: true,
- });
- return;
- }
- this.setData({
- sigPopShow: true,
- });
- },
- selMSG:function(){
- if (!this.data.msgList.length) {
- this.setData({
- showDialogWarn: true,
- });
- return;
- }
- this.setData({
- msgPopShow:true
- })
- },
- warnCancel: function () {
- this.setData({
- showDialogWarn: false,
- });
- },
- sigCancel: function () {
- this.setData({
- sigPopShow: false,
- sigResult:''
- });
- },
- msgCancel:function(){
- this.setData({
- msgPopShow: false,
- msgResult:''
- });
- },
- typeCancel: function () {
- this.setData({
- showMeetType: false,
- });
- },
- selDate: function () {
- this.setData({
- datePopShow: true,
- });
- },
- selTime: function () {
- this.setData({
- timePopShow: true,
- });
- },
- selEndTime: function () {
- this.setData({
- endTimePopShow: true,
- });
- },
- dateCancel: function () {
- this.setData({
- datePopShow: false,
- });
- },
- timeCancel: function () {
- this.setData({
- timePopShow: false,
- });
- },
- endTimeCancel: function () {
- this.setData({
- endTimePopShow: false,
- });
- },
- dateOnInput: function (e) {
- this.setData({
- currentDate: e.detail,
- });
- },
- timeOnInput: function (e) {
- this.setData({
- currentTime: e.detail,
- });
- },
- endTimeOnInput: function (e) {
- this.setData({
- currentEndTime: e.detail,
- });
- },
- copyWechat() {
- wx.setClipboardData({
- data: 'mindspore0328',
- success: () => {
- this.setData({
- showDialogWarn: false,
- tipsType:'',
- typeMeeting:'',
- isSig:false,
- isMSG:false
- });
- },
- });
- },
-});
+// pages/reserve/reserve.js
+var appAjax = require('./../../utils/app-ajax');
+var appSession = require('./../../utils/app-session.js');
+var utils = require('./../../utils/utils.js');
+const sessionUtil = require('../../utils/app-session.js');
+const appUser = require('../../utils/app-user.js');
+utils.formateDate();
+let remoteMethods = {
+ getUserGroup: function (id, _callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'GET',
+ service: 'GET_USER_GROUP',
+ otherParams: {
+ id: id,
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ },
+ });
+ },
+ saveMeeting: function (postData, _callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'POST',
+ service: 'SAVE_MEETING',
+ data: postData,
+ success: function (ret) {
+ _callback && _callback(ret);
+ },
+ });
+ },
+ getMsgList: function (keyword, _callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'GET',
+ service: 'MSG_LIST',
+ data: {
+ search: keyword,
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ },
+ });
+ },
+ getSigList: function (keyword, _callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'GET',
+ service: 'SIG_LIST',
+ data: {
+ search: keyword,
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ },
+ });
+ },
+ getUserCityList:function (keyword, _callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'GET',
+ service: 'GROUP_USER_CITY',
+ otherParams: {
+ id: keyword
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ },
+ });
+ },
+};
+let localMethods = {
+ validation: function (that) {
+ if (!that.data.topic) {
+ this.toast('请输入会议名称');
+ return;
+ }
+ if (!that.data.sponsor) {
+ this.toast('请联系管理员编辑您的gitee name');
+ return;
+ }
+ if (!that.data.typeMeeting) {
+ this.toast('请选择会议类型');
+ return;
+ }
+ if (that.data.meeting_type == 1 && !that.data.sigResult) {
+ this.toast('请选择所在SIG');
+ return;
+ }
+ if (that.data.meeting_type == 2 && !that.data.msgResult) {
+ this.toast('请选择所在城市');
+ return;
+ }
+ if (!that.data.date) {
+ this.toast('请选择日期');
+ return;
+ }
+ if (!that.data.start) {
+ this.toast('请选择开始时间');
+ return;
+ }
+ if (!that.data.end) {
+ this.toast('请选择结束时间');
+ return;
+ }
+ if (
+ that.data.start.split(':')[0] > that.data.end.split(':')[0] ||
+ (that.data.start.split(':')[0] == that.data.end.split(':')[0] &&
+ that.data.start.split(':')[1] >= that.data.end.split(':')[1])
+ ) {
+ this.toast('开始时间必须小于结束时间');
+ return;
+ }
+ return true;
+ },
+ toast: function (msg) {
+ wx.showToast({
+ title: msg,
+ icon: 'none',
+ duration: 2000,
+ });
+ },
+};
+Page({
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ record: false,
+ topic: '',
+ sponsor: '',
+ date: '',
+ start: '',
+ end: '',
+ meetingType:'腾讯会议',
+ typeList:['腾讯会议','WeLink(蓝版)'],
+ etherpad: '',
+ agenda: '',
+ emaillist: '',
+ sigPopShow: false,
+ msgPopShow:false,
+ typeResult: '',
+ typeMeeting:'',
+ group_name: '',
+ city:'',
+ meeting_type: 1,
+ sigResult: '',
+ msgResult:'',
+ sigList: ['abc','bbc'],
+ msgList: ['上海','北京'],
+ datePopShow: false,
+ curDate: new Date().getTime(),
+ currentDate: new Date().getTime(),
+ minDate: new Date().getTime(),
+ timePopShow: false,
+ currentTime: '08:00',
+ minTime: 8,
+ maxTime: 22,
+ endTimePopShow: false,
+ currentEndTime: '08:00',
+ minEndTime: 8,
+ maxEndTime: 22,
+ showDialogWarn: false,
+ isSig: false,
+ isMSG:false,
+ showMeetType: false,
+ allData: [],
+ typeKey:'',
+ type:{
+ Tech:'专家委员会',
+ MSG:'MSG会议',
+ SIG:'SIG会议'
+ },
+ msgListAll:[],
+ sigListAll:[],
+ permission:[],
+ msgCityList:[],
+ tipsType:'',
+ filter(type, options) {
+ if (type === 'minute') {
+ return options.filter((option) => option % 15 === 0);
+ }
+
+ return options;
+ },
+ level:''
+ },
+
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad: function () {
+ let that=this
+ let e=sessionUtil.getUserInfoByKey('avatarUrl')
+ appUser.updateUserInfo(function () {
+ that.setData({
+ level: sessionUtil.getUserInfoByKey('level'),
+ });
+ });
+ },
+ /**
+ * 生命周期函数--监听页面显示
+ */
+ onShow: function () {
+ this.setData({
+ sponsor: appSession.getUserInfoByKey('gitee') || '',
+ });
+ let that = this;
+ const level=sessionUtil.getUserInfoByKey('level')
+ // appSession.getUserInfoByKey('userId')
+ if(level==3){
+ remoteMethods.getMsgList('', function (list) {
+ let tempList=[]
+ list.forEach(item=>{
+ tempList.push(item.name)
+ })
+ that.setData({
+ msgListAll: list,
+ permission:['Tech','MSG','SIG'],
+ msgList:tempList,
+ msgCityList:list
+ });
+ });
+ remoteMethods.getSigList('',function (list) {
+ let tempList=[]
+ list.forEach(item=>{
+ tempList.push(item.name)
+ })
+ that.setData({
+ sigListAll: list,
+ sigList:tempList
+ });
+ })
+ }else{
+ remoteMethods.getUserGroup(appSession.getUserInfoByKey('userId'), function (data) {
+ let permissionTemp=[]
+ {
+ // if (data && data.length) {
+ // that.setData({
+ // allData: data,
+ // });
+ // let temp = [];
+ // let sigValue = '';
+ // let typeTemp = [];
+ // data.forEach((item) => {
+ // if (item.group_type == '1') {
+ // temp.push(item.group_name);
+ // sigValue = item.description;
+ // if(!permissionTemp.includes("SIG")){
+ // permissionTemp.push('SIG')
+ // }
+ // } else {
+ // typeTemp.push(item.description);
+ // if(item.group_type == '2'&&!permissionTemp.includes("MSG")){
+ // permissionTemp.push('MSG')
+ // }
+ // if(item.group_type == '3'&&!permissionTemp.includes("Tech")){
+ // permissionTemp.push('Tech')
+ // }
+ // }
+ // });
+ // if (sigValue) {
+ // typeTemp.push(sigValue);
+ // }
+ // that.setData({
+ // sigList: temp,
+ // typeList: typeTemp,
+ // });
+ // if (that.data.typeList[0].includes('SIG')) {
+ // that.setData({
+ // typeResult: that.data.typeList[0],
+ // isSig: true,
+ // });
+ // } else {
+ // that.data.allData.forEach((item) => {
+ // if (item.group_type != 1) {
+ // if (item.group_name == 'MSG' && that.data.typeList[0].includes('MSG')) {
+ // that.setData({
+ // typeResult: that.data.typeList[0],
+ // etherpad: item.etherpad,
+ // group_name: item.group_name,
+ // meeting_type: item.group_type,
+ // });
+ // } else if (item.group_name == 'Tech' && that.data.typeList[0].includes('专家')) {
+ // that.setData({
+ // typeResult: that.data.typeList[0],
+ // etherpad: item.etherpad,
+ // group_name: item.group_name,
+ // meeting_type: item.group_type,
+ // });
+
+ // }
+ // }
+ // });
+ // }
+ // }
+ }
+ if(data && data.length){
+ that.setData({
+ allData: data,
+ });
+ let msgListAll=[]
+ let sigListAll=[]
+ let sigList=[]
+ data.forEach((item)=>{
+ if(item.group_type==3){
+ permissionTemp.push('Tech')
+ }else if(item.group_type==2){
+ permissionTemp.push('MSG')
+ }else if(item.group_type==1){
+ item.name=item.group_name
+ permissionTemp.push('SIG')
+ sigList.push(item.group_name)
+ sigListAll.push(item)
+ }
+ })
+ permissionTemp=[...new Set(permissionTemp)]
+ that.setData({
+ permission:permissionTemp,
+ sigListAll:sigListAll,
+ sigList:sigList
+ })
+ if(permissionTemp.includes('MSG')){
+ remoteMethods.getUserCityList(appSession.getUserInfoByKey('userId'),function(data){
+ let tempList=[]
+ data.forEach(item=>{
+ item.name=item.city_name
+ tempList.push(item.city_name)
+ })
+ that.setData({
+ msgListAll:data,
+ msgList:tempList
+ })
+ })
+ remoteMethods.getMsgList('', function (list) {
+ that.setData({
+ msgCityList:list
+ })
+ })
+ }
+ }
+
+ });
+ }
+ },
+ recordoOnChange: function (event) {
+ this.setData({
+ record: event.detail,
+ });
+ },
+ reset: function () {
+ this.setData({
+ topic: '',
+ typeResult: '',
+ sigResult: '',
+ msgResult:'',
+ date: '',
+ start: '',
+ end: '',
+ etherpad: '',
+ agenda: '',
+ emaillist: '',
+ record: '',
+ });
+ },
+ meeting: function () {
+ if (!localMethods.validation(this)) {
+ return;
+ }
+ let that = this;
+ wx.requestSubscribeMessage({
+ tmplIds: ['tK51rqE72oFo5e5ajCnvkPwnsCncfydgcV1jb9ed6Qc'],
+ success() {},
+ complete() {
+ let platform = '';
+ that.data.meetingType.includes('WeLink') ? platform = that.data.meetingType.slice(0,6):platform = 'tencent';
+ let param={
+ topic: that.data.topic,
+ sponsor: that.data.sponsor,
+ platform:platform,
+ group_name: that.data.group_name,
+ date: that.data.date,
+ start: that.data.start,
+ end: that.data.end,
+ etherpad: that.data.etherpad,
+ meeting_type: that.data.meeting_type,
+ emaillist: that.data.emaillist,
+ record: that.data.record ? 'cloud' : '',
+ agenda: that.data.agenda,
+ }
+ if(that.data.meeting_type==2){
+ param.city=that.data.city
+ }
+ remoteMethods.saveMeeting(
+ param,
+ function (data) {
+ if (data.id) {
+ wx.redirectTo({
+ url: '/package-meeting/meeting/meeting-success?id=' + data.id,
+ });
+ } else {
+ setTimeout(function () {
+ wx.showToast(
+ {
+ title: data.message,
+ icon: 'none',
+ duration: 2000,
+ },
+ 100
+ );
+ });
+ }
+ }
+ );
+ },
+ });
+ },
+ sigNameInput: function (e) {
+ this.setData({
+ topic: e.detail.value,
+ });
+ },
+ etherInput: function (e) {
+ this.setData({
+ etherpad: e.detail.value,
+ });
+ },
+ agendaInput: function (e) {
+ this.setData({
+ agenda: e.detail.value,
+ });
+ },
+ emailInput: function (e) {
+ this.setData({
+ emaillist: e.detail.value,
+ });
+ },
+ sigConfirm: function () {
+ // this.data.allData.forEach((item) => {
+ // if (item.group_name == this.data.sigResult) {
+ // this.setData({
+ // etherpad: item.etherpad,
+ // sigPopShow: false,
+ // group_name: item.group_name,
+ // });
+ // }
+ // });
+ this.data.sigListAll.forEach((item)=>{
+ if(item.name==this.data.sigResult){
+ this.setData({
+ etherpad: item.etherpad,
+ sigPopShow: false,
+ group_name: item.name,
+ city:''
+ });
+ }
+ })
+ },
+ msgConfirm:function(){
+ // this.data.msgListAll.forEach((item)=>{
+ // if(item.name==this.data.msgResult){
+ // this.setData({
+ // etherpad: item.etherpad||'',
+ // msgPopShow: false,
+ // city: item.name,
+ // group_name:'MSG'
+ // });
+ // }
+ // })
+ this.data.msgCityList.forEach((item)=>{
+ if(item.name==this.data.msgResult){
+ this.setData({
+ etherpad: item.etherpad,
+ msgPopShow: false,
+ city: item.name,
+ group_name:'MSG'
+ });
+ }
+ })
+ },
+ onTypeShow: function () {
+ this.setData({
+ typeShow: true,
+ })
+ },
+ platformTypeCancel: function () {
+ this.setData({
+ typeShow: false,
+ });
+ },
+ platformTypeConfirm: function () {
+ this.setData({
+ typeShow: false,
+ });
+ },
+ typeRadioOnChange1: function (e) {
+ this.setData({
+ meetingType:e.detail
+ });
+ },
+ typeConfirm: function (e) {
+ this.setData({
+ typeMeeting:this.data.type[this.data.typeKey]
+ })
+ if(this.data.typeKey=='Tech'){
+ if(this.data.permission.includes(this.data.typeKey)){
+ this.setData({
+ showMeetType: false,
+ meeting_type: 3,
+ isSig: false,
+ isMSG:false,
+ city:'',
+ group_name:'Tech',
+ etherpad: 'https://etherpad.mindspore.cn/p/meetings-Tech',
+ sigResult:'',
+ msgResult:''
+ });
+ }else{
+ this.setData({
+ showDialogWarn: true,
+ tipsType:'Tech'
+ });
+ }
+ }else if(this.data.typeKey=='SIG'){
+ if(this.data.permission.includes(this.data.typeKey)){
+ this.setData({
+ showMeetType: false,
+ isMSG:false,
+ isSig: true,
+ meeting_type: 1,
+ etherpad:'',
+ sigResult:'',
+ msgResult:''
+ });
+ }else{
+ this.setData({
+ showDialogWarn: true,
+ tipsType:'SIG'
+ });
+ }
+ }else if(this.data.typeKey=='MSG'){
+ if(this.data.permission.includes(this.data.typeKey)){
+ this.setData({
+ showMeetType: false,
+ isSig: false,
+ meeting_type: 2,
+ isMSG:true,
+ etherpad:'',
+ sigResult:'',
+ msgResult:''
+ });
+ }else{
+ this.setData({
+ showDialogWarn: true,
+ tipsType:'MSG'
+ });
+ }
+ }
+
+ // if (this.data.typeResult.includes('SIG')) {
+ // this.setData({
+ // isSig: true,
+ // showMeetType: false,
+ // meeting_type: 1,
+ // });
+ // } else {
+ // this.setData({
+ // showMeetType: false,
+ // isSig: false,
+ // });
+ // this.data.allData.forEach((item) => {
+ // if (item.group_type != 1) {
+ // if (this.data.typeResult.includes('MSG') && item.group_name == 'MSG') {
+ // this.setData({
+ // etherpad: item.etherpad,
+ // group_name: 'MSG',
+ // meeting_type: 2,
+ // });
+ // } else {
+ // this.setData({
+ // etherpad: item.etherpad,
+ // group_name: 'Tech',
+ // meeting_type: 3,
+ // });
+ // }
+ // }
+ // });
+ // }
+ },
+ dateConfirm: function () {
+ this.setData({
+ date: new Date(this.data.currentDate).Format('yyyy-MM-dd'),
+ datePopShow: false,
+ });
+ },
+ timeConfirm: function () {
+ this.setData({
+ start: this.data.currentTime,
+ timePopShow: false,
+ });
+ },
+ endTimeConfirm: function () {
+ this.setData({
+ end: this.data.currentEndTime,
+ endTimePopShow: false,
+ });
+ },
+
+ typeRadioOnChange: function (e) {
+ this.setData({
+ typeKey: e.detail,
+ });
+ },
+ sigRadioOnChange: function (e) {
+ this.setData({
+ sigResult:e.detail
+ })
+ },
+ msgRadioOnChange: function (e) {
+ this.setData({
+ msgResult:e.detail
+ })
+ },
+ selType: function () {
+ this.setData({
+ showMeetType: true,
+ });
+ },
+ selSig: function () {
+ if (!this.data.msgList.length) {
+ this.setData({
+ showDialogWarn: true,
+ });
+ return;
+ }
+ this.setData({
+ sigPopShow: true,
+ });
+ },
+ selMSG:function(){
+ if (!this.data.msgList.length) {
+ this.setData({
+ showDialogWarn: true,
+ });
+ return;
+ }
+ this.setData({
+ msgPopShow:true
+ })
+ },
+ warnCancel: function () {
+ this.setData({
+ showDialogWarn: false,
+ });
+ },
+ sigCancel: function () {
+ this.setData({
+ sigPopShow: false,
+ sigResult:''
+ });
+ },
+ msgCancel:function(){
+ this.setData({
+ msgPopShow: false,
+ msgResult:''
+ });
+ },
+ typeCancel: function () {
+ this.setData({
+ showMeetType: false,
+ });
+ },
+ selDate: function () {
+ this.setData({
+ datePopShow: true,
+ });
+ },
+ selTime: function () {
+ this.setData({
+ timePopShow: true,
+ });
+ },
+ selEndTime: function () {
+ this.setData({
+ endTimePopShow: true,
+ });
+ },
+ dateCancel: function () {
+ this.setData({
+ datePopShow: false,
+ });
+ },
+ timeCancel: function () {
+ this.setData({
+ timePopShow: false,
+ });
+ },
+ endTimeCancel: function () {
+ this.setData({
+ endTimePopShow: false,
+ });
+ },
+ dateOnInput: function (e) {
+ this.setData({
+ currentDate: e.detail,
+ });
+ },
+ timeOnInput: function (e) {
+ this.setData({
+ currentTime: e.detail,
+ });
+ },
+ endTimeOnInput: function (e) {
+ this.setData({
+ currentEndTime: e.detail,
+ });
+ },
+ copyWechat() {
+ wx.setClipboardData({
+ data: 'mindspore0328',
+ success: () => {
+ this.setData({
+ showDialogWarn: false,
+ tipsType:'',
+ typeMeeting:'',
+ isSig:false,
+ isMSG:false
+ });
+ },
+ });
+ },
+});
diff --git a/src/mindspore/package-meeting/reserve/reserve.wxml b/src/mindspore/package-meeting/reserve/reserve.wxml
index 4db65eb9917bef1c8218eaa53f525ffb0ee790d5..515314fe65c42946d20c43249e5b1960caf81549 100644
--- a/src/mindspore/package-meeting/reserve/reserve.wxml
+++ b/src/mindspore/package-meeting/reserve/reserve.wxml
@@ -1,214 +1,242 @@
-
-
-
-
-
-
-
- 会议名称
- *
-
-
-
-
- 发起人
-
-
-
-
- 会议类型
- *
-
-
- {{typeMeeting}}
-
-
-
-
-
- 选取所属SIG
- *
-
-
- {{sigResult}}
-
-
-
-
-
- 选取所属城市
- *
-
-
- {{msgResult}}
-
-
-
-
-
- 日期
- *
-
-
- {{date}}
-
-
-
-
-
- 时间
- *
-
-
- {{start||'请选择'}}
- 至
- {{end||'请选择'}}
-
-
-
- Etherpad链接
-
-
-
-
- 是否自动录制会议
-
-
-
-
-
-
-
-
- 勾选此项进入会议自动开启录屏,录制服务由Zoom提供,会后自动上传至B站mindspore的账号下
-
-
-
- 会议内容
-
-
-
- 邮件地址
-
-
-
-
-
-
- 多个邮箱地址用分号;隔开
-
-
-
-
- *
- 号为必填项
-
-
-
-
-
-
-
-
-
- 选择所属SIG
-
-
-
-
- {{item}}
-
-
-
-
-
-
-
-
-
-
-
-
- 选择所属城市
-
-
-
-
- {{item}}
-
-
-
-
-
-
-
-
-
-
-
-
- 选择会议类型
-
-
-
-
- {{value}}
-
-
-
-
-
-
-
-
-
-
-
-
- 选择预定会议日期
-
-
-
-
-
-
-
-
-
- 选择会议开始时间
-
-
-
-
-
-
-
-
-
- 选择会议结束时间
-
-
-
-
-
-
-
-
-
- 当前您不属于任何SIG组,请联系
- 小助手(微信号mindspore0328) 为您关联SIG组
-
- 当前您不属于专家委员会,请联系
- 小助手(微信号mindspore0328) 为您关联专家委员会
-
- 当前您不属于任何MSG,请联系
- 小助手(微信号mindspore0328) 为您关联MSG城市
-
-
-
-
-
-
+
+
+
+
+
+
+
+ 会议名称
+ *
+
+
+
+
+ 发起人
+
+
+
+
+ 会议平台
+ *
+
+
+ {{meetingType}}
+
+
+
+
+
+ 会议类型
+ *
+
+
+ {{typeMeeting}}
+
+
+
+
+
+ 选取所属SIG
+ *
+
+
+ {{sigResult}}
+
+
+
+
+
+ 选取所属城市
+ *
+
+
+ {{msgResult}}
+
+
+
+
+
+ 日期
+ *
+
+
+ {{date}}
+
+
+
+
+
+ 时间
+ *
+
+
+ {{start||'请选择'}}
+ 至
+ {{end||'请选择'}}
+
+
+
+ Etherpad链接
+
+
+
+
+ 是否自动录制会议
+
+
+
+
+
+
+
+
+ 勾选此项进入会议自动开启录屏,录制服务由{{meetingType}}提供,会后自动上传至B站mindspore的账号下
+
+
+
+ 会议内容
+
+
+
+ 邮件地址
+
+
+
+
+
+
+ 多个邮箱地址用分号;隔开
+
+
+
+
+ *
+ 号为必填项
+
+
+
+
+
+
+
+
+
+ 选择所属SIG
+
+
+
+
+ {{item}}
+
+
+
+
+
+
+
+
+
+
+
+
+ 选择所属城市
+
+
+
+
+ {{item}}
+
+
+
+
+
+
+
+
+
+
+
+
+ 选择会议类型
+
+
+
+
+ {{value}}
+
+
+
+
+
+
+
+
+
+
+
+
+ 选择预定会议日期
+
+
+
+
+
+
+
+
+
+ 选择会议开始时间
+
+
+
+
+
+
+
+
+
+ 选择会议结束时间
+
+
+
+
+
+
+
+
+
+ 当前您不属于任何SIG组,请联系
+ 小助手(微信号mindspore0328) 为您关联SIG组
+
+ 当前您不属于专家委员会,请联系
+ 小助手(微信号mindspore0328) 为您关联专家委员会
+
+ 当前您不属于任何MSG,请联系
+ 小助手(微信号mindspore0328) 为您关联MSG城市
+
+
+
+
+
+
+
+
+ 选择会议平台
+
+
+
+
+ {{item}}
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/mindspore/package-meeting/sig/member-detail.js b/src/mindspore/package-meeting/sig/member-detail.js
index 2ab36fffac1acc3291d752aede66a8c9cbc9bc1a..ec7ec692f306b04572bba37dcbe6652dc59508c0 100644
--- a/src/mindspore/package-meeting/sig/member-detail.js
+++ b/src/mindspore/package-meeting/sig/member-detail.js
@@ -12,7 +12,7 @@ let remoteMethods = {
data: {
gitee_name: postData.gitee_name,
email: postData.email,
- telephone: postData.email,
+ telephone: postData.telephone,
},
success: function (ret) {
_callback && _callback(ret);
diff --git a/src/mindspore/package-meeting/sig/member-detail.wxml b/src/mindspore/package-meeting/sig/member-detail.wxml
index 6cc5d767d57f5355014ca7c1fdc647241e5dcb9e..3a89a19a1bc2cc9601a7364f6957366944b2c2a1 100644
--- a/src/mindspore/package-meeting/sig/member-detail.wxml
+++ b/src/mindspore/package-meeting/sig/member-detail.wxml
@@ -13,10 +13,10 @@
输入ID
- 输入手机
-
- 输入邮箱
-
+ 备注一
+
+ 备注二
+
diff --git a/src/mindspore/package-my/events/my-list.wxml b/src/mindspore/package-my/events/my-list.wxml
index cd51139a3ef02fd9707794419f88bff0e6ae626a..d9693e69cc02c74ad1746045d6fe91ce086881c8 100644
--- a/src/mindspore/package-my/events/my-list.wxml
+++ b/src/mindspore/package-my/events/my-list.wxml
@@ -34,9 +34,9 @@
-
+
+
+
diff --git a/src/mindspore/pages/auth/auth.js b/src/mindspore/pages/auth/auth.js
index 6f6078e99e74a51d4a8dd10b3bacafc115a5ba03..957aefdb59a0435c81305e588ebbe943994594da 100644
--- a/src/mindspore/pages/auth/auth.js
+++ b/src/mindspore/pages/auth/auth.js
@@ -35,7 +35,7 @@ Page(
if (res.authSetting['scope.userInfo']) {
appUser.wxLogin(function () {
const pages = getCurrentPages(); // 当前页面
- const beforePage = pages[pages.length - 2]; // 前一个页面
+ const beforePage = ((pages[pages.length - 2].route === 'pages/auth/auth') ? pages[pages.length - 3] : pages[pages.length - 2]); // 前一个页面
const id = beforePage.options.id || that.data.id;
const url = id ? '/' + beforePage.route + '?id=' + id : '/' + beforePage.route;
wx.reLaunch({
@@ -52,7 +52,7 @@ Page(
success: (res) => {
appUser.wxGetUserProfileLogin(function () {
const pages = getCurrentPages(); // 当前页面
- const beforePage = pages[pages.length - 2]; // 前一个页面
+ const beforePage = ((pages[pages.length - 2].route === 'pages/auth/auth') ? pages[pages.length - 3] : pages[pages.length - 2]); // 前一个页面
const id = beforePage.options.id || that.data.id;
const url = id ? '/' + beforePage.route + '?id=' + id : '/' + beforePage.route;
wx.reLaunch({
diff --git a/src/mindspore/static/index/banner-2.png b/src/mindspore/static/index/banner-2.png
new file mode 100644
index 0000000000000000000000000000000000000000..fb7bc361f53e8bdc2c2d0a488defe1e478b6fafb
Binary files /dev/null and b/src/mindspore/static/index/banner-2.png differ
diff --git a/src/mindspore/utils/app-user.js b/src/mindspore/utils/app-user.js
index c7b4636a3a67d440c9c3f2805ccd277f75c0a2aa..4d4636d7eca4909f0674e79cbb6f298f20fe214c 100644
--- a/src/mindspore/utils/app-user.js
+++ b/src/mindspore/utils/app-user.js
@@ -169,38 +169,6 @@ var appUser = {
* 获取微信地址
* @param {Object} callback 回调
*/
- getWxAddress: function (self, callback) {
- wx.getSetting({
- success(res) {
- var status = res.authSetting['scope.address'];
- if (status == undefined) {
- wx.authorize({
- scope: 'scope.address',
- success() {
- // 用户已经同意小程序使用地址功能,后续调用地址接口不会弹窗询问
- wx.chooseAddress({
- success: function (result) {
- callback && callback(result);
- },
- });
- },
- fail() {
- self.setData({
- wxAddressShow: true,
- });
- },
- });
- } else if (status) {
- // 已获取权限
- wx.chooseAddress({
- success: function (result) {
- callback && callback(result);
- },
- });
- }
- },
- });
- },
/**
* 微信登录
diff --git a/src/openeuler/.gitignore b/src/openeuler/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..cac557056a071f9dd48542e4fba1064ba45a7011
--- /dev/null
+++ b/src/openeuler/.gitignore
@@ -0,0 +1,2 @@
+/node_modules
+/package-lock.json
\ No newline at end of file
diff --git a/src/openeuler/app.js b/src/openeuler/app.js
new file mode 100644
index 0000000000000000000000000000000000000000..7428e5d2e9845f5687bd24614ac618bf097b6f65
--- /dev/null
+++ b/src/openeuler/app.js
@@ -0,0 +1,50 @@
+//app.js
+var appSession = require("./utils/app-session.js");
+App({
+ onLaunch: function () {
+ var self = this
+ //判断微信版本是否 兼容小程序更新机制API的使用
+ if (wx.canIUse('getUpdateManager')) {
+ //创建 UpdateManager 实例
+ const updateManager = wx.getUpdateManager();
+ console.log('是否进入模拟更新');
+ //检测版本更新
+ updateManager.onCheckForUpdate(function (res) {
+ console.log('是否获取版本');
+ // 请求完新版本信息的回调
+ if (res.hasUpdate) {
+ //监听小程序有版本更新事件
+ updateManager.onUpdateReady(function () {
+
+ updateManager.applyUpdate();
+ })
+ updateManager.onUpdateFailed(function () {
+ wx.showModal({
+ title: '已经有新版本喽~',
+ content: '请您删除当前小程序,到微信 “发现-小程序” 页,重新搜索打开哦~',
+ })
+ })
+ }
+ })
+ } else {
+ wx.showModal({
+ title: '溫馨提示',
+ content: '当前微信版本过低,无法使用该功能,请升级到最新微信版本后重试。'
+ })
+ }
+ wx.getSystemInfo({
+ success(res) {
+ if (res.model.indexOf('iPhone X') >= 0) {
+ self.globalData.iPhoneX = true;
+ }
+ }
+ })
+
+ },
+
+ onShow() {},
+ loginCallback: null,
+ globalData: {
+ iphoneX: false
+ }
+})
\ No newline at end of file
diff --git a/src/openeuler/app.json b/src/openeuler/app.json
new file mode 100644
index 0000000000000000000000000000000000000000..be6162097f8f07a15254a9238e1bd046f8486f63
--- /dev/null
+++ b/src/openeuler/app.json
@@ -0,0 +1,123 @@
+{
+ "pages": [
+ "pages/index/index",
+ "pages/auth/auth",
+ "components/user-info/user-info",
+ "pages/meeting/meeting",
+ "pages/events/events",
+ "pages/my/my"
+ ],
+ "subpackages": [
+ {
+ "root": "package-meeting",
+ "pages": [
+ "sig/sig-list",
+ "reserve/reserve",
+ "sig/add-sig-member",
+ "sig/add-member",
+ "sig/del-member",
+ "meeting/detail",
+ "meeting/meeting-success",
+ "meeting/meeting-list"
+ ]
+ },
+ {
+ "root": "package-events",
+ "pages": [
+ "events/event-list",
+ "manage/enterprise-list",
+ "manage/add-member",
+ "manage/del-member",
+ "publish/publish",
+ "publish/success",
+ "events/event-detail",
+ "sign-up/sign-up",
+ "sign-up/sign-up-success",
+ "events/poster",
+ "events/sign",
+ "events/sign-success"
+ ]
+ },
+ {
+ "root": "package-my",
+ "pages": [
+ "my/privecy",
+ "my/my-meetings",
+ "my/my-collection",
+ "my/help",
+ "my/qrcode",
+ "events/my-list",
+ "events/send-email",
+ "my/feedback"
+ ]
+ }
+ ],
+ "preloadRule": {
+ "pages/index/index": {
+ "network": "all",
+ "packages": [
+ "package-meeting",
+ "package-events",
+ "package-my"
+ ]
+ }
+ },
+ "window": {
+ "backgroundTextStyle": "light",
+ "navigationBarBackgroundColor": "#fff",
+ "navigationBarTitleText": "openEuler",
+ "navigationBarTextStyle": "black",
+ "backgroundColor": "#fff"
+ },
+ "usingComponents": {
+ "van-swipe-cell": "@vant/weapp/swipe-cell/index",
+ "van-dialog": "@vant/weapp/dialog/index",
+ "van-checkbox": "@vant/weapp/checkbox/index",
+ "van-checkbox-group": "@vant/weapp/checkbox-group/index",
+ "van-popup": "@vant/weapp/popup/index",
+ "van-radio": "@vant/weapp/radio/index",
+ "van-radio-group": "@vant/weapp/radio-group/index",
+ "van-datetime-picker": "@vant/weapp/datetime-picker/index",
+ "van-picker": "@vant/weapp/picker/index",
+ "van-action-sheet": "@vant/weapp/action-sheet/index",
+ "wxml-to-canvas": "wxml-to-canvas"
+ },
+ "sitemapLocation": "sitemap.json",
+ "tabBar": {
+ "custom": true,
+ "color": "#000000",
+ "selectedColor": "#002fa7",
+ "backgroundColor": "#fff",
+ "list": [
+ {
+ "iconPath": "static/tabbar/home.png",
+ "selectedIconPath": "static/tabbar/home-selected.png",
+ "pagePath": "pages/index/index",
+ "text": "首页"
+ },
+ {
+ "iconPath": "static/tabbar/meeting.png",
+ "selectedIconPath": "static/tabbar/meeting-selected.png",
+ "pagePath": "pages/meeting/meeting",
+ "text": "会议"
+ },
+ {
+ "iconPath": "static/tabbar/events.png",
+ "selectedIconPath": "static/tabbar/events-selected.png",
+ "pagePath": "pages/events/events",
+ "text": "活动"
+ },
+ {
+ "iconPath": "static/tabbar/my.png",
+ "selectedIconPath": "static/tabbar/my-selected.png",
+ "pagePath": "pages/my/my",
+ "text": "我的"
+ }
+ ]
+ },
+ "permission": {
+ "scope.userLocation": {
+ "desc": "您的位置信息将用于确定活动地址"
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/openeuler/app.wxss b/src/openeuler/app.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..eaf3dc42b785905e1a76db6c9d6e67f3b6190e71
--- /dev/null
+++ b/src/openeuler/app.wxss
@@ -0,0 +1,175 @@
+/**app.wxss**/
+page {
+ height: 100vh;
+ background-color: #fff;
+ font-family: PingFangSC-Regular, PingFangSC;
+ font-weight: 400;
+}
+
+.container {
+ padding: 0 30rpx 129rpx 30rpx;
+}
+
+.container-x {
+ padding-bottom: 195rpx;
+}
+
+page,
+view,
+scroll-view,
+swiper,
+swiper-item,
+movable-area,
+movable-view,
+cover-view,
+cover-image,
+icon,
+text,
+rich-text,
+progress,
+button,
+checkbox-group,
+checkbox,
+form,
+input,
+label,
+picker,
+picker-view,
+radio-group,
+radio,
+slider,
+switch,
+textarea,
+navigator,
+functional-page-navigator,
+image,
+video,
+camera,
+live-player,
+live-pusher,
+map,
+canvas,
+open-data,
+web-view,
+ad {
+ box-sizing: border-box;
+}
+
+.dialog-index--sig-dialog {
+ border-radius: 8rpx;
+ width: 550rpx;
+}
+
+.van-dialog__header {
+ padding-top: 30rpx;
+ color: #222;
+ font-size: 36rpx;
+ line-height: 50rpx;
+}
+
+.dialog-slot-content {
+ color: #6d7278;
+ font-size: 32rpx;
+}
+
+.dialog-slot-content text {
+ word-break: break-all;
+ display: inherit;
+ text-align: center;
+ overflow: hidden;
+ line-height: 45rpx;
+ margin-top: 19rpx;
+ padding: 0 30rpx;
+}
+
+.dialog-slot-content .blue {
+ color: #002fa7;
+ margin-top: 0;
+}
+
+.dialog-slot-content view {
+ margin-top: 52rpx;
+ border-top: 1px solid #f0f3f7;
+ height: 88rpx;
+ display: flex;
+ align-items: center;
+ justify-content: space-around;
+}
+
+.dialog-slot-content view button {
+ font-size: 28rpx;
+ line-height: 88rpx;
+ text-align: center;
+ background-color: #fff;
+ color: #002fa7;
+}
+
+
+.sig-pop-wrapper {
+ padding: 0 30rpx;
+}
+
+.sig-pop-wrapper .title {
+ margin: 30rpx 0 40rpx 0;
+ color: #222;
+ font-size: 36rpx;
+}
+
+.sig-pop-wrapper .item .radio {
+ flex-direction: row-reverse;
+ justify-content: space-between;
+}
+
+.sig-pop-wrapper .item .name {
+ font-size: 34rpx;
+ color: #6d7278;
+ width: 600rpx;
+}
+
+.sig-pop-wrapper .item {
+ height: 108rpx;
+ display: flex;
+ align-items: center;
+ border-bottom: 1px solid #f0f3f7;
+}
+
+.sig-pop-wrapper .item:last-child {
+ border: none;
+}
+
+.sig-pop-wrapper .btn-wrapper {
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+ height: 90rpx;
+ font-size: 36rpx;
+ margin: 60rpx 0;
+}
+
+.sig-pop-wrapper .btn-wrapper .confirm {
+ height: 100%;
+ width: 320rpx;
+ text-align: center;
+ line-height: 90rpx;
+ color: #fff;
+ background-color: #002fa7;
+}
+
+.sig-pop-wrapper .btn-wrapper .cancel {
+ height: 100%;
+ width: 320rpx;
+ text-align: center;
+ line-height: 90rpx;
+ color: #002fa7;
+ background-color: #fff;
+ border: 1px solid #002fa7;
+}
+
+
+button::after {
+ content: unset;
+}
+
+button {
+ background-color: unset;
+}
diff --git a/src/openeuler/components/meeting-list/meeting-list.js b/src/openeuler/components/meeting-list/meeting-list.js
new file mode 100644
index 0000000000000000000000000000000000000000..dbd38cc5293a80e88e33e8078c19bd0f67da88dd
--- /dev/null
+++ b/src/openeuler/components/meeting-list/meeting-list.js
@@ -0,0 +1,416 @@
+// components/meeting-list/meeting-list.js
+const appAjax = require('./../../utils/app-ajax');
+const sessionUtil = require("../../utils/app-session.js");
+let that = null;
+const remoteMethods = {
+ getSigList: function (_callback) {
+ appAjax.postJson({
+ type: 'GET',
+ service: "SIG_LIST",
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ },
+ getMeettingData: function (_callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'GET',
+ service: that.properties.apiUrl,
+ success: function (ret) {
+ _callback && _callback(ret);
+ if (that.properties.pageType === 2) {
+ that.setData({
+ filterList: ret
+ })
+ localMethod.filterData();
+ }
+ }
+ });
+ },
+ delMeeting: function (id, _callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'DELETE',
+ service: "DEL_MEETING",
+ otherParams: {
+ id: id
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ },
+ collect: function (id, _callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'POST',
+ service: "COLLECT",
+ data: {
+ meeting: id
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ },
+ uncollect: function (id, _callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'DELETE',
+ service: "UNCOLLECT",
+ otherParams: {
+ id: id
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ }
+}
+const localMethod = {
+ filterData: function () {
+ let listTemp = [];
+ if (that.data.curFilterSigId === '' && that.data.curKeyword === '') {
+ that.setData({
+ list: that.data.filterList
+ })
+ return;
+ }
+ if (that.data.curFilterSigId === '') {
+ that.data.filterList.forEach(function (item, index) {
+ if (item.topic.toLowerCase().includes(that.data.curKeyword.toLowerCase()) || item.group_name.toLowerCase().includes(that.data.curKeyword.toLowerCase())) {
+ listTemp.push(item);
+ }
+ })
+ that.setData({
+ list: listTemp
+ })
+ return;
+ }
+ if (that.data.curKeyword === '') {
+ that.data.filterList.forEach(function (item, index) {
+ if (item.group_name.includes(that.data.filterSigName)) {
+ listTemp.push(item);
+ }
+ })
+ that.setData({
+ list: listTemp
+ })
+ return;
+ }
+ that.data.filterList.forEach(function (item, index) {
+ if (item.group_name.includes(that.data.filterSigName) && item.topic.toLowerCase().includes(that.data.curKeyword.toLowerCase())) {
+ listTemp.push(item);
+ }
+ })
+ that.setData({
+ list: listTemp
+ })
+ },
+ checkLogin() {
+ if (!sessionUtil.getUserInfoByKey('access')) {
+ wx.navigateTo({
+ url: '/pages/auth/auth'
+ })
+ return;
+ }
+ return true;
+ }
+}
+Component({
+ /**
+ * 组件的属性列表
+ * apiUrl: 接口资源路径
+ * pageType: 1、首页 2、会议列表页 3、我的会议页面 4、我的收藏会议页面
+ */
+ properties: {
+ apiUrl: {
+ type: String,
+ value: 'GET_MEETING_DAILY'
+ },
+ pageType: {
+ type: Number,
+ value: 1
+ },
+ isHome: {
+ type: Boolean,
+ value: false
+ }
+ },
+
+ /**
+ * 组件的初始数据
+ */
+ data: {
+ list: [],
+ curMid: '',
+ curJoinUrl: '',
+ collectionId: '',
+ id: '',
+ showDialog: false,
+ showDialogDel: false,
+ actionShow: false,
+ actions: [],
+ popShow: false,
+ filterSigId: '',
+ filterSigName: '全部SIG',
+ columns: [],
+ curKeyword: '',
+ curFilterSigId: '',
+ curFilterSigName: '全部SIG',
+ filterList: [],
+ },
+ attached() {
+ this.properties.pageType === 2 && remoteMethods.getSigList(function (data) {
+ if (data && data.length) {
+ data.unshift({
+ group_name: '全部SIG',
+ id: ''
+ })
+ that.setData({
+ columns: data
+ })
+ }
+ })
+ },
+ pageLifetimes: {
+ // 组件所在页面的生命周期函数
+ show: function () {
+ that = this;
+ if((this.properties.pageType === 3) || (this.properties.pageType === 4)){
+ this.initData();
+ }
+ }
+ },
+ /**
+ * 组件的方法列表
+ */
+ methods: {
+ collect: function (e) {
+ if (this.data.collectionId) {
+ remoteMethods.uncollect(this.data.collectionId, function (res) {
+ remoteMethods.getMeettingData(function (data) {
+ that.setData({
+ list: data
+ })
+ })
+ })
+ } else {
+ wx.requestSubscribeMessage({
+ tmplIds: ['2xSske0tAcOVKNG9EpBjlb1I-cjPWSZrpwPDTgqAmWI', 'UpxRbZf8Z9QiEPlZeRCgp_MKvvqHlo6tcToY8fToK50'],
+ success(res) {
+ remoteMethods.collect(that.data.id, function (res) {
+ if (res.code == 201) {
+ remoteMethods.getMeettingData(function (data) {
+ that.setData({
+ list: data
+ })
+ })
+ }
+ })
+ }
+ })
+
+ }
+ },
+ getAddr: function (e) {
+ this.setData({
+ showDialog: true
+ })
+
+ },
+ copyLink: function () {
+ wx.setClipboardData({
+ data: this.data.curJoinUrl,
+ success: function (res) {
+ that.setData({
+ showDialog: false
+ })
+ }
+ })
+
+ },
+ copyId: function () {
+ wx.setClipboardData({
+ data: this.data.curMid,
+ success: function (res) {
+ that.setData({
+ showDialog: false
+ })
+ }
+ })
+ },
+ closeDialog: function () {
+ this.setData({
+ showDialog: false
+ })
+ },
+ delMeeting: function () {
+ this.setData({
+ showDialogDel: true
+ })
+ },
+ del: function () {
+ remoteMethods.delMeeting(this.data.curMid, function (data) {
+ if (data.code == 204) {
+ that.setData({
+ showDialogDel: false
+ })
+ remoteMethods.getMeettingData(function (data) {
+ that.setData({
+ list: data
+ })
+ })
+ }
+ })
+ },
+ delCancel: function () {
+ this.setData({
+ showDialogDel: false
+ })
+ },
+ toDetail: function (e) {
+ if(!localMethod.checkLogin()){
+ return;
+ }
+ wx.navigateTo({
+ url: '/package-meeting/meeting/detail?id=' + e.currentTarget.dataset.id
+ })
+ },
+ initData() {
+ remoteMethods.getMeettingData(function (data) {
+ that.setData({
+ list: data
+ })
+ })
+ },
+ getMore(e) {
+ if(!localMethod.checkLogin()){
+ return;
+ }
+ this.setData({
+ curMid: e.currentTarget.dataset.item.mid,
+ curJoinUrl: e.currentTarget.dataset.item.join_url,
+ collectionId: e.currentTarget.dataset.item.collection_id || '',
+ id: e.currentTarget.dataset.item.id
+ })
+ const collectDesc = this.data.collectionId ? '取消收藏' : '收藏会议';
+ const userId = e.currentTarget.dataset.item.user_id;
+ if (sessionUtil.getUserInfoByKey('level') === 1) {
+ this.setData({
+ actions: [{
+ name: collectDesc,
+ operaType: 1
+ }, {
+ name: '获取地址',
+ operaType: 2
+ }]
+ })
+ } else if (sessionUtil.getUserInfoByKey('level') === 2) {
+ if (sessionUtil.getUserInfoByKey('userId') === userId) {
+ this.setData({
+ actions: [{
+ name: collectDesc,
+ operaType: 1
+ }, {
+ name: '获取地址',
+ operaType: 2
+ }, {
+ name: '删除会议',
+ operaType: 3
+ }]
+ })
+ } else {
+ this.setData({
+ actions: [{
+ name: collectDesc,
+ operaType: 1
+ }, {
+ name: '获取地址',
+ operaType: 2
+ }]
+ })
+ }
+ } else {
+ this.setData({
+ actions: [{
+ name: collectDesc,
+ operaType: 1
+ }, {
+ name: '获取地址',
+ operaType: 2
+ }, {
+ name: '删除会议',
+ operaType: 3
+ }]
+ })
+ }
+ this.setData({
+ actionShow: true
+ })
+ this.triggerEvent("action-status", 1);
+ },
+ onActionClose() {
+ this.setData({
+ actionShow: false
+ })
+ this.triggerEvent("action-status", 0);
+ },
+ onActionSelect(e) {
+ if (e.detail.operaType === 1) {
+ this.collect();
+ } else if (e.detail.operaType === 2) {
+ this.getAddr();
+ } else {
+ this.delMeeting();
+ }
+ },
+ filterSig: function () {
+ this.setData({
+ popShow: true
+ })
+ },
+ popCancel: function () {
+ this.setData({
+ popShow: false
+ })
+ this.setData({
+ filterSigId: this.data.curFilterSigId,
+ filterSigName: this.data.curFilterSigName
+ })
+ },
+ pickerChange: function (e) {
+ this.setData({
+ filterSigId: e.detail.value.id,
+ filterSigName: e.detail.value.group_name
+ })
+ },
+ popConfirm: function () {
+ this.setData({
+ popShow: false,
+ curFilterSigId: this.data.filterSigId,
+ curFilterSigName: this.data.filterSigName
+ })
+ localMethod.filterData();
+ },
+ popCancel: function () {
+ this.setData({
+ popShow: false,
+ filterSigId: this.data.curFilterSigId,
+ filterSigName: this.data.curFilterSigName
+ })
+ },
+ search: function (e) {
+ this.setData({
+ curKeyword: e.detail.value
+ })
+ localMethod.filterData();
+ }
+ },
+ ready() {
+ if ((this.properties.pageType === 1) || (this.properties.pageType === 2)) {
+ this.initData();
+ }
+ }
+})
\ No newline at end of file
diff --git a/src/openeuler/components/meeting-list/meeting-list.json b/src/openeuler/components/meeting-list/meeting-list.json
new file mode 100644
index 0000000000000000000000000000000000000000..2e31abd5be997e69b8dc05d2ffbbd56b358eaf0b
--- /dev/null
+++ b/src/openeuler/components/meeting-list/meeting-list.json
@@ -0,0 +1,4 @@
+{
+ "component": true,
+ "usingComponents": {}
+}
\ No newline at end of file
diff --git a/src/openeuler/components/meeting-list/meeting-list.wxml b/src/openeuler/components/meeting-list/meeting-list.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..d61006749e57d40bfde3e87c05c927085184cf0a
--- /dev/null
+++ b/src/openeuler/components/meeting-list/meeting-list.wxml
@@ -0,0 +1,81 @@
+
+{{isHome?'最近':'今天'}}的会议({{list.length}})
+
+
+
+
+
+ {{curFilterSigName}}
+
+
+
+
+
+
+
+
+ {{item.topic}}
+
+
+ {{item.date}} {{item.start}}-{{item.end}} (可回放)
+ {{item.date}} {{item.start}}-{{item.end}}
+
+
+
+ {{item.agenda||'暂无描述'}}
+
+
+
+
+
+
+
+
+
+ 暂无收藏!
+ 当前暂未收藏任何会议哦
+
+
+
+ 暂无会议!
+ 当前暂未创建任何会议哦
+
+
+
+ 暂无会议!
+ 当前暂无任何会议哦
+
+
+
+
+ {{curMid}}
+ {{curJoinUrl}}
+
+
+
+
+
+
+
+
+
+ 请确认删除当前会议
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/openeuler/components/meeting-list/meeting-list.wxss b/src/openeuler/components/meeting-list/meeting-list.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..519aad16459ec09f5db22e1986a7a42ac611a035
--- /dev/null
+++ b/src/openeuler/components/meeting-list/meeting-list.wxss
@@ -0,0 +1,175 @@
+/* components/meeting-list/meeting-list.wxss */
+@import "../../app.wxss";
+
+.today-meeting {
+ margin-bottom: 30rpx;
+ font-size: 36rpx;
+ font-weight: 400;
+ color: #333;
+ line-height: 50rpx;
+}
+
+.list {
+ color: #6d7278;
+ font-size: 28rpx;
+ font-weight: 400;
+}
+
+.list .item {
+ position: relative;
+ margin-bottom: 30rpx;
+ background-color: #fff;
+ box-shadow: 0rpx 5rpx 15rpx 0rpx rgba(0, 47, 167, 0.1);
+ border-radius: 8rpx;
+ font-size: 24rpx;
+}
+
+.list .item .collection {
+ width: 40rpx;
+ height: 26rpx;
+ position: absolute;
+ top: 33rpx;
+ left: 0;
+}
+
+.list .item .name {
+ font-size: 30rpx;
+ color: #333;
+ font-weight: 400;
+ line-height: 48rpx;
+ margin-top: 0;
+}
+
+.list .item .header {
+ height: 90rpx;
+ border-bottom: 2rpx solid #f0f3f7;
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ padding: 0 30rpx;
+ color: #333;
+ font-size: 28rpx;
+}
+
+.list .item .isCollection {
+ padding-left: 60rpx;
+}
+
+.list .item .header image {
+ height: 36rpx;
+ width: 8rpx;
+}
+
+.list .item .wrapper {
+ line-height: 40rpx;
+ padding: 20rpx 30rpx 30rpx;
+}
+
+.list .item .wrapper image {
+ vertical-align: middle;
+ width: 28rpx;
+ height: 28rpx;
+ margin-right: 22rpx;
+}
+
+.list .item .wrapper text {
+ vertical-align: middle;
+}
+
+.list .item .wrapper .date {
+ margin: 20rpx 0;
+}
+
+.list .item .desc {
+ white-space: nowrap;
+ overflow: hidden;
+ text-overflow: ellipsis;
+ display: flex;
+ align-items: baseline;
+}
+
+.input-wraper {
+ box-sizing: border-box;
+ margin: 20rpx 0 30rpx;
+ height: 108rpx;
+ position: relative;
+ box-shadow: 0px 5px 15px 0px rgba(225, 230, 238, 1);
+ border-radius: 8rpx;
+ overflow: hidden;
+ background-color: #fff;
+}
+
+.input-wraper .keyword {
+ padding-left: 94rpx;
+ border-left: 1px solid #f0f3f7;
+ height: 108rpx;
+ position: absolute;
+ top: 0;
+ right: 0;
+ width: 70%;
+ font-size: 28rpx;
+ line-height: 40rpx;
+}
+
+.input-wraper .keyword .search-icon {
+ height: 39rpx;
+ width: 39rpx;
+ display: inline-block;
+ position: absolute;
+ top: 34rpx;
+ left: 32rpx;
+}
+
+.input-wraper .filter-wraper {
+ position: absolute;
+ height: 108rpx;
+ left: 0;
+ top: 0;
+ width: 30%;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+}
+
+.input-wraper .filter-wraper text {
+ width: 110rpx;
+ overflow: hidden;
+ white-space: nowrap;
+ text-overflow: ellipsis;
+ font-size: 28rpx;
+ color: #6d7278;
+}
+
+.input-wraper .filter-wraper image {
+ margin-left: 17rpx;
+ width: 30rpx;
+ height: 30rpx;
+}
+
+.empty-status .suc-wrapper {
+ position: absolute;
+ top: 50%;
+ transform: translate(-50%, -50%);
+ left: 50%;
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ justify-content: center;
+}
+
+.empty-status .suc-wrapper image {
+ width: 234rpx;
+ height: 218rpx;
+}
+
+.empty-status .suc-wrapper text {
+ text-align: center;
+ margin-top: 20rpx;
+ font-size: 34rpx;
+ color: #333;
+}
+
+.empty-status .suc-wrapper text:last-child {
+ font-size: 28rpx;
+ color: #6d7278;
+}
\ No newline at end of file
diff --git a/src/openeuler/components/user-info/user-info.js b/src/openeuler/components/user-info/user-info.js
new file mode 100644
index 0000000000000000000000000000000000000000..f9b51c3b7050d5bf0a7ba8486eb9cb1460451c81
--- /dev/null
+++ b/src/openeuler/components/user-info/user-info.js
@@ -0,0 +1,72 @@
+// components/user-info/user-info.js
+const sessionUtil = require("../../utils/app-session.js");
+const localMethods = {
+ getCurText() {
+ var timestamp = Date.parse(new Date());
+ timestamp = timestamp / 1000;
+ var n = timestamp * 1000;
+ var date = new Date(n);
+ var h = date.getHours();
+ var m = date.getMinutes();
+ var hm = parseFloat(h + '.' + m);
+ if (23 < hm || hm <= 6) {
+ return '请睡吧';
+ }
+ if (6 < hm && hm <= 12) {
+ return '上午好';
+ }
+ if (12 < hm && hm <= 14) {
+ return '中午好';
+ }
+ if (14 < hm && hm <= 18) {
+ return '下午好';
+ }
+ if (18 < hm && hm <= 23) {
+ return '晚上好';
+ }
+ }
+}
+Component({
+ /**
+ * 组件的属性列表
+ */
+ properties: {
+
+ },
+
+ /**
+ * 组件的初始数据
+ */
+ data: {
+ isLogin: false,
+ avatarUrl: '',
+ text: '',
+ nickName: ''
+ },
+ pageLifetimes: {
+ // 组件所在页面的生命周期函数
+
+ show: function () {
+ this.setData({
+ isLogin: sessionUtil.getUserInfoByKey('access')
+ })
+ if (this.data.isLogin) {
+ this.setData({
+ avatarUrl: sessionUtil.getUserInfoByKey('avatarUrl'),
+ text: localMethods.getCurText(),
+ nickName: sessionUtil.getUserInfoByKey('nickName')
+ })
+ }
+ }
+ },
+ /**
+ * 组件的方法列表
+ */
+ methods: {
+ login() {
+ wx.navigateTo({
+ url: '/pages/auth/auth'
+ })
+ }
+ }
+})
\ No newline at end of file
diff --git a/src/openeuler/components/user-info/user-info.json b/src/openeuler/components/user-info/user-info.json
new file mode 100644
index 0000000000000000000000000000000000000000..2e31abd5be997e69b8dc05d2ffbbd56b358eaf0b
--- /dev/null
+++ b/src/openeuler/components/user-info/user-info.json
@@ -0,0 +1,4 @@
+{
+ "component": true,
+ "usingComponents": {}
+}
\ No newline at end of file
diff --git a/src/openeuler/components/user-info/user-info.wxml b/src/openeuler/components/user-info/user-info.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..39492cbcefbe370831bddcba3230f4514b156ea8
--- /dev/null
+++ b/src/openeuler/components/user-info/user-info.wxml
@@ -0,0 +1,9 @@
+
+
+
+ 登录
+
+
+
+ {{text}},{{nickName}}
+
\ No newline at end of file
diff --git a/src/openeuler/components/user-info/user-info.wxss b/src/openeuler/components/user-info/user-info.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..39de9299e0c1df023493ad464bc6c3c4ebe99617
--- /dev/null
+++ b/src/openeuler/components/user-info/user-info.wxss
@@ -0,0 +1,22 @@
+/* components/user-info/user-info.wxss */
+.userinfo {
+ padding-top: 30rpx;
+ margin-bottom: 30rpx;
+ line-height: 84rpx;
+}
+
+.userinfo .image {
+ vertical-align: middle;
+ height: 84rpx;
+ width: 84rpx;
+ border-radius: 100%;
+ margin-right: 30rpx;
+}
+
+.userinfo .text {
+ vertical-align: middle;
+ font-size: 36rpx;
+ line-height: 50rpx;
+ font-weight: 400;
+ color: #333;
+}
\ No newline at end of file
diff --git a/src/openeuler/config/constants.js b/src/openeuler/config/constants.js
new file mode 100644
index 0000000000000000000000000000000000000000..337d2572f3bea9a0c2556ec391162ce2af26ed16
--- /dev/null
+++ b/src/openeuler/config/constants.js
@@ -0,0 +1,23 @@
+/**
+ * 常量配置
+ */
+var _ = require('../utils/underscore-extend.js');
+
+// 服务连接配置
+var serviceConfig = {
+ SERVICE_URL: "https://api.openeuler.org/meetings", // 正式环境
+ // SERVICE_URL: "http://119.8.32.82", // 测试环境
+};
+
+// 存储配置
+var storageConfig = {
+ APP_USERINFO_SESSION: "_app_userinfo_session"
+};
+
+// 所有配置
+var constants = _.deepExtend(true,
+ serviceConfig,
+ storageConfig
+);
+
+module.exports = constants;
\ No newline at end of file
diff --git a/src/openeuler/config/field-validate-rules.js b/src/openeuler/config/field-validate-rules.js
new file mode 100644
index 0000000000000000000000000000000000000000..281719b60070d858344a7e1a9be3f468832730c1
--- /dev/null
+++ b/src/openeuler/config/field-validate-rules.js
@@ -0,0 +1,267 @@
+const rules = {
+
+ // 6位数字验证码
+ "numberCode6" : {
+ "regex": /^\d{6,6}$/,
+ "errorMsg": "请输入6位数字验证码"
+ },
+
+ // 8位数字验证码
+ "numberCode8" : {
+ "regex": /^\d{8,8}$/,
+ "errorMsg": "请输入8位数字验证码"
+ },
+
+ // 手机号码校验
+ "phone": {
+ "regex": /(^1[3456789]\d{9}$)|^$/,
+ "errorMsg": "请输入正确的手机号码"
+ },
+
+ // 电子邮箱校验
+ "email": {
+ "regex": /^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/i,
+ "errorMsg": " 无效的邮件地址"
+ },
+
+ // 电子邮箱和手机号码校验
+ "emailOrPhone": {
+ "regex": /(^1[34578]\d{9}$)|(^[0-9a-z_][_.0-9a-z-]{0,31}@([0-9a-z][0-9a-z-]{0,30}\.){1,4}[a-z]{2,4}$)/,
+ "errorMsg": " 无效的手机号/邮箱"
+ },
+
+ // 金额类型
+ "money": {
+ "regex": /^(\d+)(\.\d+)?$/,
+ "errorMsg": "请输入正确的金额"
+ },
+
+ // 最多输入两位小数
+ "validateTwoDecimal": {
+ "regex": /^(\d+)(\.\d+)?$/,
+ "errorMsg": "最多输入两位小数"
+ },
+
+ // 正整数类型
+ "checkUnsignInt": {
+ "regex": /^[1-9]{1}\d*$/,
+ "errorMsg": "请输入正整数"
+ },
+
+ // 整数类型
+ "integer": {
+ "regex": /^[\-\+]?\d+$/,
+ "errorMsg": " 无效的整数"
+ },
+
+ // 数字类型
+ "number": {
+ "regex": /^[\-\+]?((([0-9]{1,3})([,][0-9]{3})*)|([0-9]+))?([\.]([0-9]+))?$/,
+ "errorMsg": " 无效的数值"
+ },
+
+ // 浮点数类型
+ "float": {
+ "regex": /^(-?\d+)(\.\d+)?$/,
+ "errorMsg": "请输入正确的浮点数"
+ },
+
+ // 日期YYYY-MM-DD
+ "date": {
+ "regex": /^\d{4}[\/\-](0?[1-9]|1[012])[\/\-](0?[1-9]|[12][0-9]|3[01])$/,
+ "errorMsg": " 无效的日期,格式必需为 YYYY-MM-DD"
+ },
+
+ // 校验日期格式
+ "dateFormat": {
+ "regex": /^\d{4}[\/\-](0?[1-9]|1[012])[\/\-](0?[1-9]|[12][0-9]|3[01])$|^(?:(?:(?:0?[13578]|1[02])(\/|-)31)|(?:(?:0?[1,3-9]|1[0-2])(\/|-)(?:29|30)))(\/|-)(?:[1-9]\d\d\d|\d[1-9]\d\d|\d\d[1-9]\d|\d\d\d[1-9])$|^(?:(?:0?[1-9]|1[0-2])(\/|-)(?:0?[1-9]|1\d|2[0-8]))(\/|-)(?:[1-9]\d\d\d|\d[1-9]\d\d|\d\d[1-9]\d|\d\d\d[1-9])$|^(0?2(\/|-)29)(\/|-)(?:(?:0[48]00|[13579][26]00|[2468][048]00)|(?:\d\d)?(?:0[48]|[2468][048]|[13579][26]))$/,
+ "errorMsg": " 无效的日期格式"
+ },
+
+ // 日期时间校验
+ "dateTimeFormat": {
+ "regex": /^\d{4}[\/\-](0?[1-9]|1[012])[\/\-](0?[1-9]|[12][0-9]|3[01])\s+(1[012]|0?[1-9]){1}:(0?[1-5]|[0-6][0-9]){1}:(0?[0-6]|[0-6][0-9]){1}\s+(am|pm|AM|PM){1}$|^(?:(?:(?:0?[13578]|1[02])(\/|-)31)|(?:(?:0?[1,3-9]|1[0-2])(\/|-)(?:29|30)))(\/|-)(?:[1-9]\d\d\d|\d[1-9]\d\d|\d\d[1-9]\d|\d\d\d[1-9])$|^((1[012]|0?[1-9]){1}\/(0?[1-9]|[12][0-9]|3[01]){1}\/\d{2,4}\s+(1[012]|0?[1-9]){1}:(0?[1-5]|[0-6][0-9]){1}:(0?[0-6]|[0-6][0-9]){1}\s+(am|pm|AM|PM){1})$/,
+ "errorMsg": " 无效的日期或时间格式"
+ },
+
+ // ipv4地址校验
+ "ipv4": {
+ "regex": /^((([01]?[0-9]{1,2})|(2[0-4][0-9])|(25[0-5]))[.]){3}(([0-1]?[0-9]{1,2})|(2[0-4][0-9])|(25[0-5]))$/,
+ "errorMsg": " 无效的 IP 地址"
+ },
+
+ // 网址校验
+ "url": {
+ "regex": /^(https?|ftp):\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(\#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i,
+ "errorMsg": " 无效的网址"
+ },
+
+ // 校验英文字母
+ "onlyLetter": {
+ "regex": /^[a-zA-Z\ \']+$/,
+ "errorMsg": " 只能填写英文字母"
+ },
+
+ // 英文和数字校验
+ "onlyLetterNumber": {
+ "regex": /^[0-9a-zA-Z]+$/,
+ "errorMsg": " 只能填写数字与英文字母"
+ },
+
+ // 汉字校验
+ "chinese": {
+ "regex": /^[\u4E00-\u9FA5]+$/,
+ "errorMsg": " 只能填写中文汉字"
+ },
+
+ // 身份证校验
+ "chinaId": {
+ "regex": /^[1-9]\d{5}[1-9]\d{3}(((0[13578]|1[02])(0[1-9]|[12]\d|3[0-1]))|((0[469]|11)(0[1-9]|[12]\d|30))|(02(0[1-9]|[12]\d)))(\d{4}|\d{3}[xX])$/,
+ "errorMsg": " 无效的身份证号码"
+ },
+
+ // 邮政编码校验
+ "chinaZip": {
+ "regex": /^\d{6}$/,
+ "errorMsg": " 无效的邮政编码"
+ },
+
+ // QQ号码校验
+ "qq": {
+ "regex": /(^[0-9]{5,15}$)|^$/,
+ "errorMsg": " 无效的 QQ 号码"
+ },
+ // 密码验证
+ "checkPassword618": {
+ "regex": /^([\w~`!@#$%^&*()_+-=\[\]\{\}\|\\:;'"<>,\.\?\/]{6,18}|[\w~`!@#$%^&*()_+-=\[\]\{\}\|\\:;'"<>,\.\?\/]{32}|^)$/,
+ "errorMsg": " 请输入6-18位密码"
+ },
+
+ // 密码验证-字母和数字组合
+ "checkPasswordLetterNumber": {
+ "regex": /^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{6,18}$/,
+ "errorMsg": "密码应为6-18位字母和数字组合"
+ },
+
+ // 姓名格式验证
+ "checkRealName": {
+ "regex": /^[A-Za-z\u4e00-\u9fa5]{0,15}$/,
+ "errorMsg": "最多可输入15字,包含中文、字母"
+ },
+
+ // 验证昵称
+ "checkName": {
+ "regex": /^[0-9A-Za-z\u4e00-\u9fa5]{0,15}$/,
+ "errorMsg": " 最多可输入15字,包含中文,字母,数字"
+ },
+ // 验证邮编
+ "checkCode": {
+ "regex": /^[0-9]{6}$/,
+ "errorMsg": " 请输入合法的邮政编码"
+ },
+
+ // 验证公司名称、工作描述
+ "checkSomeName": {
+ "regex": /^[0-9A-Za-z\u4e00-\u9fa5]{0,30}$/,
+ "errorMsg": " 最多可输入30字,包含中文、字母、数字"
+ },
+
+ // 验证政府事业单位中(组织机构代码)包含数字或字母,且长度为15-30位
+ "checkOrganizationCode": {
+ "regex": /^[0-9A-Za-z]{15,30}$/,
+ "errorMsg": " 请输入正确的组织机构代码"
+ },
+
+ // 企业认证-验证企业名称
+ "chenckCompanyName": {
+ "regex": /^[0-9A-Za-z\u4e00-\u9fa5\()\()]{0,50}$/,
+ "errorMsg": "最多可输入50字,包含中文、字母、数字"
+ },
+
+ // 企业认证-验证证件号
+ "checkCertificateLicense": {
+ "regex": /^[0-9A-Za-z()-]{9,30}$/,
+ "errorMsg": "请输入正确的证件号"
+ },
+
+ // 验证法定代表人
+ "validateLegalPerson": {
+ "regex": /^[A-Za-z\u4e00-\u9fa5]{0,15}$/,
+ "errorMsg": "请输入正确的法定代表人"
+ },
+
+ // 验证微信号
+ "validateWeixin": {
+ "regex": /^(([A-Za-z]+[0-9A-Za-z_-]*))*$/,
+ "errorMsg": "请输入正确的微信号"
+ },
+
+ // 验证微博地址
+ "validateWeibo": {
+ "regex": /^(http[s]{0,1}:\/\/.+)*$/,
+ "errorMsg": "请输入正确的微博地址"
+ },
+
+ // 银行卡号验证
+ "validateBankCard": {
+ "regex": /^[0-9]{10,19}$/,
+ "errorMsg": "请输入正确的银行卡号验证"
+ },
+
+ // 用户输入内容
+ "checkIntro": {
+ "regex": /^[0-9A-Za-z\u4e00-\u9fa5]{0,500}$/,
+ "errorMsg": "只能包含汉字、字母、数字,且最多为500字"
+ },
+
+ // 校验手机号码
+ "phonenumber": {
+ "regex": /^[\-\+]?((([0-9]{1,3})([,][0-9]{3})*)|([0-9]+))?([\.]([0-9]+))?$/,
+ "errorMsg": " 无效的电话号码"
+ },
+
+ // 校验护照
+ "validatePassport" : {
+ "regex" : /^1[45][0-9]{7}|([P|p|S|s]\\d{7})|([S|s|G|g]\\d{8})|([Gg|Tt|Ss|Ll|Qq|Dd|Aa|Ff]\\d{8})|([H|h|M|m]\\d{8,10})$/,
+ "errorMsg" : "请输入正确的护照"
+ },
+
+ // 校验香港身份证
+ "validateIdentityHK": {
+ "regex": /^[A-Z]\d{6}\(\d|[A-Z]\)$/,
+ "errorMsg": "请输入正确的香港身份证"
+ },
+
+ // 澳门身份证验证
+ "validateIdentityMC": {
+ "regex": /^\d{7}\(\d\)$/,
+ "errorMsg": "请输入正确的澳门身份证"
+ },
+
+ // 台湾身份证验证
+ "validateIdentityTW": {
+ "regex": /^[A-Z]\d{9}$/,
+ "errorMsg": "请输入正确的台湾身份证"
+ },
+
+ // 关键词校验
+ "keywordcheck": {
+ "regex": /^[A-Za-z0-9\u4e00-\u9fa5]+(,[A-Za-z0-9\u4e00-\u9fa5]{1,15})*$/,
+ "errorMsg":'必须以","(英文逗号)分隔符,最后一个关键词不需要逗号'
+ },
+
+ // 关键词最多输入10个
+ "validateKeywordMax10": {
+ "regex": /^([A-Za-z0-9\u4e00-\u9fa5]+(\;|\;){0,1}){1,10}$/,
+ "errorMsg": "请输入正确的关键词格式:最多可输入10个,以;隔开"
+ },
+
+ // 敏感词最多输入十个
+ "sensitiveWordsMax10": {
+ "regex": /^[A-Za-z0-9\u4e00-\u9fa5]{1,10}$/,
+ "errorMsg": "请输入需要新增的敏感词"
+ }
+
+};
+
+module.exports = rules;
diff --git a/src/openeuler/config/services-config.js b/src/openeuler/config/services-config.js
new file mode 100644
index 0000000000000000000000000000000000000000..40884df48771e5cb5df4f3450d39990ebb3f9f6c
--- /dev/null
+++ b/src/openeuler/config/services-config.js
@@ -0,0 +1,176 @@
+var _ = require('../utils/underscore-extend.js');
+
+// 通用接口配置
+var commonServiceConfig = {
+
+ // 登录接口
+ LOGIN : "/login/",
+
+ // 登录接口
+ SIG_LIST : "/groups/",
+
+ // 获取sig组已添加成员列表
+ SIG_MEMBER_LIST: "/users_include/{id}/",
+
+ // 获取sig组未添加成员列表
+ SIG_EXCLUDE_MEMBER_LIST: "/users_exclude/{id}/",
+
+ // 获取sig组未添加成员列表
+ ADD_MEMBER_LIST: "/groupuser/action/new/",
+
+ // 获取sig组已添加成员列表
+ SIG_CLUDE_MEMBER_LIST: "/users_include/{id}/",
+
+ // 获取sig组未添加成员列表
+ DEL_MEMBER_LIST: "/groupuser/action/del/",
+
+ // 获取sig组未添加成员列表
+ GET_USER_GROUP: "/usergroup/{id}/",
+
+ // 创建会议
+ SAVE_MEETING: "/meetings/",
+
+ // 获取会议详情
+ GET_MEETING_DETAIL: "/meetings/{id}/",
+
+ // 获取当日会议列表
+ GET_MEETING_DAILY: "/meetings_daily/",
+
+ // 获取前后一周会议列表
+ GET_MEETING_WEEKLY: "/meetings_weekly/",
+
+ // 删除会议
+ DEL_MEETING: "/meeting/{id}/",
+
+ // 获取用户状态
+ GET_USER_STATUS: "/userinfo/{id}/",
+
+ // 保存用户giteename
+ SAVE_MEMBER_DETAIL: '/user/{id}/',
+
+ // 我创建的会议列表
+ MY_MEETINGS_LIST: '/mymeetings/',
+
+ // 收藏会议
+ COLLECT: '/collect/',
+
+ // 取消收藏
+ UNCOLLECT: '/collect/{id}/',
+
+ // 收藏列表
+ MY_COLLECT_LIST: '/collections/',
+
+ // 获取发起人列表
+ ENTERPRISE_MEMBER_LIST: '/sponsors/',
+
+ // 获取未添加发起人名单
+ ENTERPRISE_EXCLUDE_MEMBER_LIST: '/nonsponsors/',
+
+ // 添加发起人
+ ENTERPRISE_ADD_MEMBER_LIST: '/sponsor/action/new/',
+
+ // 编辑发起人信息
+ ENTERPRISE_SAVE_MEMBER_DETAIL: '/sponsorinfo/{id}/',
+
+ // 删除发起人
+ ENTERPRISE_DEL_MEMBER_LIST: '/sponsor/action/del/',
+
+ // 发布
+ PUBLISH_EVENT: '/activity/',
+
+ // 保存草稿
+ SAVE_DRAFT: '/activitydraft/',
+
+ // 获取草稿箱活动列表
+ GET_DRAFT_LIST: '/activitiesdraft/',
+
+ // 获取全量待发布
+ DRAFTS: '/drafts/',
+
+ //草稿详情
+ DRAFT_DETAIL: '/sponsoractivitydraft/{id}/',
+
+ // 修改草稿
+ EDIT_DETAIL: '/draftupdate/{id}/',
+
+ // 修改草稿并发布
+
+ EDIT_DETAIL_PUBLISH: '/draftpublish/{id}/',
+
+ // 驳回活动发布
+ REJECT_PUBLISH: '/activityreject/{id}/',
+
+ // 活动审核通过
+ RESOLVE_PUBLISH: '/activitypublish/{id}/',
+
+ // 活动审核通过
+ PUBLISHER_EVENTS_LIST: '/sponsoractivitiespublishing/',
+
+ // 我发布的活动
+ MY_EVENTS_LIST: '/sponsoractivities/',
+
+ // 我发布的活动
+ DEL_EVENT: '/activitydel/{id}/',
+
+ // 所有活动
+ ALL_EVENTS_LIST: '/activities/',
+
+ // 所有活动
+ EVENT_DETAIL: '/activity/{id}/',
+
+ // 修改日程
+ EDIT_SCHEDULE: '/activityupdate/{id}/',
+
+ // 修改日程
+ EXAMINE_DETAIL: '/draft/{id}/',
+
+ // 修改日程
+ EVENT_COLLECT: '/collectactivity/',
+
+ // 修改日程
+ EVENT_UNCOLLECT: '/collectactivitydel/{id}/',
+
+ // 活动收藏列表
+ EVENT_COLLECT_LIST: '/collectactivities/',
+
+ // 最新活动列表
+ LATEST_EVENTS: '/recentactivities/',
+
+ // 获取报名者信息
+ APPLICANT_INFO: '/applicantinfo/{id}/',
+
+ // 报名
+ SAVE_SIGNUP_INFO: '/activityregister/',
+
+ // 我报名的活动
+ MY_SIGNUP_EVENTS: '/registeractivities/',
+
+ // 报名表单
+ SEND_SIGNUP_INFO: '/applicantsinfo/',
+
+ // 保存意见反馈
+ SAVE_FEEDBACK: '/feedback/',
+
+ // 获取已发布分类数量
+ GET_EVENTS_COUNT: '/countactivities/',
+
+ // 获取我的页面各类计数
+ GET_MY_COUNT: '/mycounts/',
+
+ // 获取我的活动报名信息
+ GET_SIGNUP_INFO: '/ticket/{id}/',
+
+ // 最近的会议列表
+ RECENTLY_MEETINGS: '/meetings_recently/',
+
+ // 签到
+ SIGN: '/activitysign/'
+};
+
+
+
+let servicesConfig = _.deepExtend(true,
+ commonServiceConfig
+);
+
+module.exports = servicesConfig;
\ No newline at end of file
diff --git a/src/openeuler/custom-tab-bar/index.js b/src/openeuler/custom-tab-bar/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..199f86f0358f8ca5d106b874ee44ce2f9d435f3d
--- /dev/null
+++ b/src/openeuler/custom-tab-bar/index.js
@@ -0,0 +1,57 @@
+// custom-tab-bar/index.js
+const sessionUtil = require("./../utils/app-session.js");
+Component({
+ /**
+ * 组件的属性列表
+ */
+ properties: {
+
+ },
+
+ /**
+ * 组件的初始数据
+ */
+ data: {
+ show: true,
+ _tabbat: 0,
+ iPhoneX: null,
+ urls: [
+ '/pages/index/index',
+ '/pages/meeting/meeting',
+ '/pages/events/events',
+ '/pages/my/my'
+ ]
+ },
+ attached() {
+ var self = this
+ wx.getSystemInfo({
+ success(res) {
+ if ((res.model.indexOf('iPhone X') >= 0) || (res.model.indexOf('iPhone 11') >= 0)) {
+ self.setData({
+ iPhoneX: true
+ });
+ }
+ }
+ })
+ },
+ /**
+ * 组件的方法列表
+ */
+ methods: {
+ switchTap: function (e) {
+ if(!sessionUtil.getUserInfoByKey('access')){
+ wx.navigateTo({
+ url: '/pages/auth/auth'
+ })
+ return;
+ }
+ var self = this
+ var index = e.currentTarget.dataset.index;
+ var urls = self.data.urls
+ wx.switchTab({
+ url: urls[index],
+ })
+
+ }
+ }
+})
\ No newline at end of file
diff --git a/src/mindspore/package-events/sign-up/save-success.json b/src/openeuler/custom-tab-bar/index.json
similarity index 39%
rename from src/mindspore/package-events/sign-up/save-success.json
rename to src/openeuler/custom-tab-bar/index.json
index 65a24d12eba22ca0cf7bd47bd6c2eddb69d71765..fa590336b4927e544ac83a1d2803e685f240451e 100644
--- a/src/mindspore/package-events/sign-up/save-success.json
+++ b/src/openeuler/custom-tab-bar/index.json
@@ -1,4 +1,4 @@
-{
- "usingComponents": {},
- "navigationBarTitleText": "保存成功"
+{
+ "usingComponents": {},
+ "component": true
}
\ No newline at end of file
diff --git a/src/openeuler/custom-tab-bar/index.wxml b/src/openeuler/custom-tab-bar/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..4419a3633839c42c4f8e1d4edebcddadc327841f
--- /dev/null
+++ b/src/openeuler/custom-tab-bar/index.wxml
@@ -0,0 +1,19 @@
+
+
+
+
+ 首页
+
+
+
+ 会议
+
+
+
+ 活动
+
+
+
+ 我的
+
+
\ No newline at end of file
diff --git a/src/openeuler/custom-tab-bar/index.wxss b/src/openeuler/custom-tab-bar/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..f9d2d4cda274b2b478dcd3f3b854d12c0a1bb9fb
--- /dev/null
+++ b/src/openeuler/custom-tab-bar/index.wxss
@@ -0,0 +1,36 @@
+/* custom-tab-bar/index.wxss */
+._tabbar {
+ width: 100%;
+ height: 99rpx;
+ display: flex;
+ align-items: center;
+ background: #fff;
+ font-size: 20rpx;
+ color: #c7cad0;
+ box-shadow: 0px -3px 10px 0px rgba(185, 192, 203, 0.47);
+}
+
+._tabbar .titem {
+ text-align: center;
+ width: 25%;
+}
+
+._tabbar .titem .img {
+ display: block;
+ margin: auto;
+ width: 54rpx;
+ height: 54rpx;
+ margin-bottom: 6rpx;
+}
+
+._tabbar .tCdk {
+ color: #002fa7;
+}
+
+._iPhoneX {
+ height: 165rpx;
+}
+
+._iPhoneX .titem {
+ margin-bottom: 66rpx;
+}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/action-sheet/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/action-sheet/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..946264e82c6ed93f2dae4c3d1a5f6edef6e25632
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/action-sheet/index.js
@@ -0,0 +1,64 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+var button_1 = require('../mixins/button');
+var open_type_1 = require('../mixins/open-type');
+component_1.VantComponent({
+ mixins: [button_1.button, open_type_1.openType],
+ props: {
+ show: Boolean,
+ title: String,
+ cancelText: String,
+ description: String,
+ round: {
+ type: Boolean,
+ value: true,
+ },
+ zIndex: {
+ type: Number,
+ value: 100,
+ },
+ actions: {
+ type: Array,
+ value: [],
+ },
+ overlay: {
+ type: Boolean,
+ value: true,
+ },
+ closeOnClickOverlay: {
+ type: Boolean,
+ value: true,
+ },
+ closeOnClickAction: {
+ type: Boolean,
+ value: true,
+ },
+ safeAreaInsetBottom: {
+ type: Boolean,
+ value: true,
+ },
+ },
+ methods: {
+ onSelect: function (event) {
+ var index = event.currentTarget.dataset.index;
+ var item = this.data.actions[index];
+ if (item && !item.disabled && !item.loading) {
+ this.$emit('select', item);
+ if (this.data.closeOnClickAction) {
+ this.onClose();
+ }
+ }
+ },
+ onCancel: function () {
+ this.$emit('cancel');
+ },
+ onClose: function () {
+ this.$emit('close');
+ },
+ onClickOverlay: function () {
+ this.$emit('click-overlay');
+ this.onClose();
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/action-sheet/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/action-sheet/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..b3548bd8665eaffd79661be32c0c0c3e1ab6e2ce
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/action-sheet/index.json
@@ -0,0 +1,8 @@
+{
+ "component": true,
+ "usingComponents": {
+ "van-icon": "../icon/index",
+ "van-popup": "../popup/index",
+ "van-loading": "../loading/index"
+ }
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/action-sheet/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/action-sheet/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..ba802e8cf5ef560c832aade4f76702745af7cf3f
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/action-sheet/index.wxml
@@ -0,0 +1,69 @@
+
+
+
+
+
+ {{ description }}
+
+
+
+
+
+
+
+
+
+ {{ cancelText }}
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/action-sheet/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/action-sheet/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..9b247d5d81acaf35e41a90a4c959f6e48738de1f
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/action-sheet/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-action-sheet{max-height:90%!important;max-height:var(--action-sheet-max-height,90%)!important;color:#323233;color:var(--action-sheet-item-text-color,#323233)}.van-action-sheet__cancel,.van-action-sheet__item{padding:14px 16px;text-align:center;font-size:16px;font-size:var(--action-sheet-item-font-size,16px);line-height:22px;line-height:var(--action-sheet-item-line-height,22px);background-color:#fff;background-color:var(--action-sheet-item-background,#fff)}.van-action-sheet__cancel--hover,.van-action-sheet__item--hover{background-color:#f2f3f5;background-color:var(--active-color,#f2f3f5)}.van-action-sheet__cancel:after,.van-action-sheet__item:after{border-width:0}.van-action-sheet__cancel{color:#646566;color:var(--action-sheet-cancel-text-color,#646566)}.van-action-sheet__gap{display:block;height:8px;height:var(--action-sheet-cancel-padding-top,8px);background-color:#f7f8fa;background-color:var(--action-sheet-cancel-padding-color,#f7f8fa)}.van-action-sheet__item--disabled{color:#c8c9cc;color:var(--action-sheet-item-disabled-text-color,#c8c9cc)}.van-action-sheet__item--disabled.van-action-sheet__item--hover{background-color:#fff;background-color:var(--action-sheet-item-background,#fff)}.van-action-sheet__subname{margin-top:8px;margin-top:var(--padding-xs,8px);font-size:12px;font-size:var(--action-sheet-subname-font-size,12px);color:#969799;color:var(--action-sheet-subname-color,#969799);line-height:20px;line-height:var(--action-sheet-subname-line-height,20px)}.van-action-sheet__header{text-align:center;font-weight:500;font-weight:var(--font-weight-bold,500);font-size:16px;font-size:var(--action-sheet-header-font-size,16px);line-height:48px;line-height:var(--action-sheet-header-height,48px)}.van-action-sheet__description{text-align:center;padding:20px 16px;padding:20px var(--padding-md,16px);color:#969799;color:var(--action-sheet-description-color,#969799);font-size:14px;font-size:var(--action-sheet-description-font-size,14px);line-height:20px;line-height:var(--action-sheet-description-line-height,20px)}.van-action-sheet__close{position:absolute!important;top:0;right:0;line-height:inherit!important;padding:0 16px;padding:var(--action-sheet-close-icon-padding,0 16px);font-size:22px!important;font-size:var(--action-sheet-close-icon-size,22px)!important;color:#c8c9cc;color:var(--action-sheet-close-icon-color,#c8c9cc)}.van-action-sheet__loading{display:-webkit-flex!important;display:flex!important}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/area/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/area/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..a194ddeebd15a2113c8a3c3e8240dad6a43b41c6
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/area/index.js
@@ -0,0 +1,263 @@
+'use strict';
+var __assign =
+ (this && this.__assign) ||
+ function () {
+ __assign =
+ Object.assign ||
+ function (t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s)
+ if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+ };
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+var shared_1 = require('../picker/shared');
+var utils_1 = require('../common/utils');
+var EMPTY_CODE = '000000';
+component_1.VantComponent({
+ classes: ['active-class', 'toolbar-class', 'column-class'],
+ props: __assign(__assign({}, shared_1.pickerProps), {
+ value: {
+ type: String,
+ observer: function (value) {
+ this.code = value;
+ this.setValues();
+ },
+ },
+ areaList: {
+ type: Object,
+ value: {},
+ observer: 'setValues',
+ },
+ columnsNum: {
+ type: null,
+ value: 3,
+ },
+ columnsPlaceholder: {
+ type: Array,
+ observer: function (val) {
+ this.setData({
+ typeToColumnsPlaceholder: {
+ province: val[0] || '',
+ city: val[1] || '',
+ county: val[2] || '',
+ },
+ });
+ },
+ },
+ }),
+ data: {
+ columns: [{ values: [] }, { values: [] }, { values: [] }],
+ typeToColumnsPlaceholder: {},
+ },
+ mounted: function () {
+ var _this = this;
+ utils_1.requestAnimationFrame(function () {
+ _this.setValues();
+ });
+ },
+ methods: {
+ getPicker: function () {
+ if (this.picker == null) {
+ this.picker = this.selectComponent('.van-area__picker');
+ }
+ return this.picker;
+ },
+ onCancel: function (event) {
+ this.emit('cancel', event.detail);
+ },
+ onConfirm: function (event) {
+ var index = event.detail.index;
+ var value = event.detail.value;
+ value = this.parseValues(value);
+ this.emit('confirm', { value: value, index: index });
+ },
+ emit: function (type, detail) {
+ detail.values = detail.value;
+ delete detail.value;
+ this.$emit(type, detail);
+ },
+ parseValues: function (values) {
+ var columnsPlaceholder = this.data.columnsPlaceholder;
+ return values.map(function (value, index) {
+ if (
+ value &&
+ (!value.code || value.name === columnsPlaceholder[index])
+ ) {
+ return __assign(__assign({}, value), { code: '', name: '' });
+ }
+ return value;
+ });
+ },
+ onChange: function (event) {
+ var _this = this;
+ var _a = event.detail,
+ index = _a.index,
+ picker = _a.picker,
+ value = _a.value;
+ this.code = value[index].code;
+ this.setValues().then(function () {
+ _this.$emit('change', {
+ picker: picker,
+ values: _this.parseValues(picker.getValues()),
+ index: index,
+ });
+ });
+ },
+ getConfig: function (type) {
+ var areaList = this.data.areaList;
+ return (areaList && areaList[type + '_list']) || {};
+ },
+ getList: function (type, code) {
+ if (type !== 'province' && !code) {
+ return [];
+ }
+ var typeToColumnsPlaceholder = this.data.typeToColumnsPlaceholder;
+ var list = this.getConfig(type);
+ var result = Object.keys(list).map(function (code) {
+ return {
+ code: code,
+ name: list[code],
+ };
+ });
+ if (code != null) {
+ // oversea code
+ if (code[0] === '9' && type === 'city') {
+ code = '9';
+ }
+ result = result.filter(function (item) {
+ return item.code.indexOf(code) === 0;
+ });
+ }
+ if (typeToColumnsPlaceholder[type] && result.length) {
+ // set columns placeholder
+ var codeFill =
+ type === 'province'
+ ? ''
+ : type === 'city'
+ ? EMPTY_CODE.slice(2, 4)
+ : EMPTY_CODE.slice(4, 6);
+ result.unshift({
+ code: '' + code + codeFill,
+ name: typeToColumnsPlaceholder[type],
+ });
+ }
+ return result;
+ },
+ getIndex: function (type, code) {
+ var compareNum = type === 'province' ? 2 : type === 'city' ? 4 : 6;
+ var list = this.getList(type, code.slice(0, compareNum - 2));
+ // oversea code
+ if (code[0] === '9' && type === 'province') {
+ compareNum = 1;
+ }
+ code = code.slice(0, compareNum);
+ for (var i = 0; i < list.length; i++) {
+ if (list[i].code.slice(0, compareNum) === code) {
+ return i;
+ }
+ }
+ return 0;
+ },
+ setValues: function () {
+ var picker = this.getPicker();
+ if (!picker) {
+ return;
+ }
+ var code = this.code || this.getDefaultCode();
+ var provinceList = this.getList('province');
+ var cityList = this.getList('city', code.slice(0, 2));
+ var stack = [];
+ var indexes = [];
+ var columnsNum = this.data.columnsNum;
+ if (columnsNum >= 1) {
+ stack.push(picker.setColumnValues(0, provinceList, false));
+ indexes.push(this.getIndex('province', code));
+ }
+ if (columnsNum >= 2) {
+ stack.push(picker.setColumnValues(1, cityList, false));
+ indexes.push(this.getIndex('city', code));
+ if (cityList.length && code.slice(2, 4) === '00') {
+ code = cityList[0].code;
+ }
+ }
+ if (columnsNum === 3) {
+ stack.push(
+ picker.setColumnValues(
+ 2,
+ this.getList('county', code.slice(0, 4)),
+ false
+ )
+ );
+ indexes.push(this.getIndex('county', code));
+ }
+ return Promise.all(stack)
+ .catch(function () {})
+ .then(function () {
+ return picker.setIndexes(indexes);
+ })
+ .catch(function () {});
+ },
+ getDefaultCode: function () {
+ var columnsPlaceholder = this.data.columnsPlaceholder;
+ if (columnsPlaceholder.length) {
+ return EMPTY_CODE;
+ }
+ var countyCodes = Object.keys(this.getConfig('county'));
+ if (countyCodes[0]) {
+ return countyCodes[0];
+ }
+ var cityCodes = Object.keys(this.getConfig('city'));
+ if (cityCodes[0]) {
+ return cityCodes[0];
+ }
+ return '';
+ },
+ getValues: function () {
+ var picker = this.getPicker();
+ if (!picker) {
+ return [];
+ }
+ return this.parseValues(
+ picker.getValues().filter(function (value) {
+ return !!value;
+ })
+ );
+ },
+ getDetail: function () {
+ var values = this.getValues();
+ var area = {
+ code: '',
+ country: '',
+ province: '',
+ city: '',
+ county: '',
+ };
+ if (!values.length) {
+ return area;
+ }
+ var names = values.map(function (item) {
+ return item.name;
+ });
+ area.code = values[values.length - 1].code;
+ if (area.code[0] === '9') {
+ area.country = names[1] || '';
+ area.province = names[2] || '';
+ } else {
+ area.province = names[0] || '';
+ area.city = names[1] || '';
+ area.county = names[2] || '';
+ }
+ return area;
+ },
+ reset: function (code) {
+ this.code = code || '';
+ return this.setValues();
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/area/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/area/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..9176008a698d51dccffe6d7e89c018fcb3ea3a94
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/area/index.json
@@ -0,0 +1,6 @@
+{
+ "component": true,
+ "usingComponents": {
+ "van-picker": "../picker/index"
+ }
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/area/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/area/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..9ee9bd932191b8fc8a7c9ad46c1340ab4ebf8616
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/area/index.wxml
@@ -0,0 +1,20 @@
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/area/index.wxs b/src/openeuler/miniprogram_npm/@vant/weapp/area/index.wxs
new file mode 100644
index 0000000000000000000000000000000000000000..bd1072ca56e3932b98c035d3b8ffe632aa386081
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/area/index.wxs
@@ -0,0 +1,8 @@
+/* eslint-disable */
+function displayColumns(columns, columnsNum) {
+ return columns.slice(0, +columnsNum);
+}
+
+module.exports = {
+ displayColumns: displayColumns,
+};
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/area/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/area/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..99694d603361421fe8f1acfc76a09eae443cb3aa
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/area/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/button/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/button/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..7466dfe30f7b174a4a3a41402260be1b95ff2a6e
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/button/index.js
@@ -0,0 +1,60 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+var button_1 = require('../mixins/button');
+var open_type_1 = require('../mixins/open-type');
+var version_1 = require('../common/version');
+var mixins = [button_1.button, open_type_1.openType];
+if (version_1.canIUseFormFieldButton()) {
+ mixins.push('wx://form-field-button');
+}
+component_1.VantComponent({
+ mixins: mixins,
+ classes: ['hover-class', 'loading-class'],
+ data: {
+ baseStyle: '',
+ },
+ props: {
+ formType: String,
+ icon: String,
+ classPrefix: {
+ type: String,
+ value: 'van-icon',
+ },
+ plain: Boolean,
+ block: Boolean,
+ round: Boolean,
+ square: Boolean,
+ loading: Boolean,
+ hairline: Boolean,
+ disabled: Boolean,
+ loadingText: String,
+ customStyle: String,
+ loadingType: {
+ type: String,
+ value: 'circular',
+ },
+ type: {
+ type: String,
+ value: 'default',
+ },
+ dataset: null,
+ size: {
+ type: String,
+ value: 'normal',
+ },
+ loadingSize: {
+ type: String,
+ value: '20px',
+ },
+ color: String,
+ },
+ methods: {
+ onClick: function () {
+ if (!this.data.loading) {
+ this.$emit('click');
+ }
+ },
+ noop: function () {},
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/button/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/button/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..8e23ad65ccf807f24fa7798cd2cc046a78153e59
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/button/index.json
@@ -0,0 +1,7 @@
+{
+ "component": true,
+ "usingComponents": {
+ "van-icon": "../icon/index",
+ "van-loading": "../loading/index"
+ }
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/button/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/button/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..a0059c73811b736483915a1eb6d4edaa4ffb8d9d
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/button/index.wxml
@@ -0,0 +1,53 @@
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/button/index.wxs b/src/openeuler/miniprogram_npm/@vant/weapp/button/index.wxs
new file mode 100644
index 0000000000000000000000000000000000000000..f5b7ab2b6ae3a164807ddf1f711517bb0e43cd33
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/button/index.wxs
@@ -0,0 +1,39 @@
+/* eslint-disable */
+var style = require('../wxs/style.wxs');
+
+function rootStyle(data) {
+ if (!data.color) {
+ return data.customStyle;
+ }
+
+ var properties = {
+ color: data.plain ? data.color : '#fff',
+ background: data.plain ? null : data.color,
+ };
+
+ // hide border when color is linear-gradient
+ if (data.color.indexOf('gradient') !== -1) {
+ properties.border = 0;
+ } else {
+ properties['border-color'] = data.color;
+ }
+
+ return style([properties, data.customStyle]);
+}
+
+function loadingColor(data) {
+ if (data.plain) {
+ return data.color ? data.color : '#c9c9c9';
+ }
+
+ if (data.type === 'default') {
+ return '#c9c9c9';
+ }
+
+ return '#fff';
+}
+
+module.exports = {
+ rootStyle: rootStyle,
+ loadingColor: loadingColor,
+};
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/button/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/button/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..5a591fbd5ebe777d649cc7e6378a25d40615767f
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/button/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-button{position:relative;display:-webkit-inline-flex;display:inline-flex;-webkit-align-items:center;align-items:center;-webkit-justify-content:center;justify-content:center;box-sizing:border-box;padding:0;text-align:center;vertical-align:middle;-webkit-appearance:none;-webkit-text-size-adjust:100%;height:44px;height:var(--button-default-height,44px);line-height:20px;line-height:var(--button-line-height,20px);font-size:16px;font-size:var(--button-default-font-size,16px);transition:opacity .2s;transition:opacity var(--animation-duration-fast,.2s);border-radius:2px;border-radius:var(--button-border-radius,2px)}.van-button:before{position:absolute;top:50%;left:50%;width:100%;height:100%;border:inherit;border-radius:inherit;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);opacity:0;content:" ";background-color:#000;background-color:var(--black,#000);border-color:#000;border-color:var(--black,#000)}.van-button:after{border-width:0}.van-button--active:before{opacity:.15}.van-button--unclickable:after{display:none}.van-button--default{color:#323233;color:var(--button-default-color,#323233);background:#fff;background:var(--button-default-background-color,#fff);border:1px solid #ebedf0;border:var(--button-border-width,1px) solid var(--button-default-border-color,#ebedf0)}.van-button--primary{color:#fff;color:var(--button-primary-color,#fff);background:#07c160;background:var(--button-primary-background-color,#07c160);border:1px solid #07c160;border:var(--button-border-width,1px) solid var(--button-primary-border-color,#07c160)}.van-button--info{color:#fff;color:var(--button-info-color,#fff);background:#1989fa;background:var(--button-info-background-color,#1989fa);border:1px solid #1989fa;border:var(--button-border-width,1px) solid var(--button-info-border-color,#1989fa)}.van-button--danger{color:#fff;color:var(--button-danger-color,#fff);background:#ee0a24;background:var(--button-danger-background-color,#ee0a24);border:1px solid #ee0a24;border:var(--button-border-width,1px) solid var(--button-danger-border-color,#ee0a24)}.van-button--warning{color:#fff;color:var(--button-warning-color,#fff);background:#ff976a;background:var(--button-warning-background-color,#ff976a);border:1px solid #ff976a;border:var(--button-border-width,1px) solid var(--button-warning-border-color,#ff976a)}.van-button--plain{background:#fff;background:var(--button-plain-background-color,#fff)}.van-button--plain.van-button--primary{color:#07c160;color:var(--button-primary-background-color,#07c160)}.van-button--plain.van-button--info{color:#1989fa;color:var(--button-info-background-color,#1989fa)}.van-button--plain.van-button--danger{color:#ee0a24;color:var(--button-danger-background-color,#ee0a24)}.van-button--plain.van-button--warning{color:#ff976a;color:var(--button-warning-background-color,#ff976a)}.van-button--large{width:100%;height:50px;height:var(--button-large-height,50px)}.van-button--normal{padding:0 15px;font-size:14px;font-size:var(--button-normal-font-size,14px)}.van-button--small{min-width:60px;min-width:var(--button-small-min-width,60px);height:30px;height:var(--button-small-height,30px);padding:0 8px;padding:0 var(--padding-xs,8px);font-size:12px;font-size:var(--button-small-font-size,12px)}.van-button--mini{display:inline-block;min-width:50px;min-width:var(--button-mini-min-width,50px);height:22px;height:var(--button-mini-height,22px);font-size:10px;font-size:var(--button-mini-font-size,10px)}.van-button--mini+.van-button--mini{margin-left:5px}.van-button--block{display:-webkit-flex;display:flex;width:100%}.van-button--round{border-radius:999px;border-radius:var(--button-round-border-radius,999px)}.van-button--square{border-radius:0}.van-button--disabled{opacity:.5;opacity:var(--button-disabled-opacity,.5)}.van-button__text{display:inline}.van-button__icon+.van-button__text:not(:empty),.van-button__loading-text{margin-left:4px}.van-button__icon{min-width:1em;line-height:inherit!important;vertical-align:top}.van-button--hairline{padding-top:1px;border-width:0}.van-button--hairline:after{border-color:inherit;border-width:1px;border-radius:4px;border-radius:calc(var(--button-border-radius, 2px)*2)}.van-button--hairline.van-button--round:after{border-radius:999px;border-radius:var(--button-round-border-radius,999px)}.van-button--hairline.van-button--square:after{border-radius:0}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/calendar/calendar.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/calendar/calendar.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..b59ffe9e6a2b05583b3fe70a12bd09d490356703
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/calendar/calendar.wxml
@@ -0,0 +1,65 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/calendar/components/header/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/calendar/components/header/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..f4d70c2676457705ed0f7706ad983f9af3df1622
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/calendar/components/header/index.js
@@ -0,0 +1,18 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../../../common/component');
+component_1.VantComponent({
+ props: {
+ title: {
+ type: String,
+ value: '日期选择',
+ },
+ subtitle: String,
+ showTitle: Boolean,
+ showSubtitle: Boolean,
+ },
+ data: {
+ weekdays: ['日', '一', '二', '三', '四', '五', '六'],
+ },
+ methods: {},
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/calendar/components/header/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/calendar/components/header/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..efdc3c823a323c17832b921a6bccbcd398609183
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/calendar/components/header/index.json
@@ -0,0 +1,3 @@
+{
+ "component": true
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/calendar/components/header/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/calendar/components/header/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..08e62a6fa83d9f3fe19f47792a9c7c448ee74d24
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/calendar/components/header/index.wxml
@@ -0,0 +1,16 @@
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/calendar/components/header/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/calendar/components/header/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..4075e48f17ccea9eb15348c86b332b9464d534aa
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/calendar/components/header/index.wxss
@@ -0,0 +1 @@
+@import '../../../common/index.wxss';.van-calendar__header{-webkit-flex-shrink:0;flex-shrink:0;box-shadow:0 2px 10px rgba(125,126,128,.16);box-shadow:var(--calendar-header-box-shadow,0 2px 10px rgba(125,126,128,.16))}.van-calendar__header-subtitle,.van-calendar__header-title{text-align:center;height:44px;height:var(--calendar-header-title-height,44px);font-weight:500;font-weight:var(--font-weight-bold,500);line-height:44px;line-height:var(--calendar-header-title-height,44px)}.van-calendar__header-title+.van-calendar__header-title,.van-calendar__header-title:empty{display:none}.van-calendar__header-title:empty+.van-calendar__header-title{display:block!important}.van-calendar__weekdays{display:-webkit-flex;display:flex}.van-calendar__weekday{-webkit-flex:1;flex:1;text-align:center;font-size:12px;font-size:var(--calendar-weekdays-font-size,12px);line-height:30px;line-height:var(--calendar-weekdays-height,30px)}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/calendar/components/month/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/calendar/components/month/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..470b31b51a42c1d688b8fe13dabddd41603d7bcd
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/calendar/components/month/index.js
@@ -0,0 +1,167 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../../../common/component');
+var utils_1 = require('../../utils');
+component_1.VantComponent({
+ props: {
+ date: {
+ type: null,
+ observer: 'setDays',
+ },
+ type: {
+ type: String,
+ observer: 'setDays',
+ },
+ color: String,
+ minDate: {
+ type: null,
+ observer: 'setDays',
+ },
+ maxDate: {
+ type: null,
+ observer: 'setDays',
+ },
+ showMark: Boolean,
+ rowHeight: null,
+ formatter: {
+ type: null,
+ observer: 'setDays',
+ },
+ currentDate: {
+ type: null,
+ observer: 'setDays',
+ },
+ allowSameDay: Boolean,
+ showSubtitle: Boolean,
+ showMonthTitle: Boolean,
+ },
+ data: {
+ visible: true,
+ days: [],
+ },
+ methods: {
+ onClick: function (event) {
+ var index = event.currentTarget.dataset.index;
+ var item = this.data.days[index];
+ if (item.type !== 'disabled') {
+ this.$emit('click', item);
+ }
+ },
+ setDays: function () {
+ var days = [];
+ var startDate = new Date(this.data.date);
+ var year = startDate.getFullYear();
+ var month = startDate.getMonth();
+ var totalDay = utils_1.getMonthEndDay(
+ startDate.getFullYear(),
+ startDate.getMonth() + 1
+ );
+ for (var day = 1; day <= totalDay; day++) {
+ var date = new Date(year, month, day);
+ var type = this.getDayType(date);
+ var config = {
+ date: date,
+ type: type,
+ text: day,
+ bottomInfo: this.getBottomInfo(type),
+ };
+ if (this.data.formatter) {
+ config = this.data.formatter(config);
+ }
+ days.push(config);
+ }
+ this.setData({ days: days });
+ },
+ getMultipleDayType: function (day) {
+ var currentDate = this.data.currentDate;
+ if (!Array.isArray(currentDate)) {
+ return '';
+ }
+ var isSelected = function (date) {
+ return currentDate.some(function (item) {
+ return utils_1.compareDay(item, date) === 0;
+ });
+ };
+ if (isSelected(day)) {
+ var prevDay = utils_1.getPrevDay(day);
+ var nextDay = utils_1.getNextDay(day);
+ var prevSelected = isSelected(prevDay);
+ var nextSelected = isSelected(nextDay);
+ if (prevSelected && nextSelected) {
+ return 'multiple-middle';
+ }
+ if (prevSelected) {
+ return 'end';
+ }
+ return nextSelected ? 'start' : 'multiple-selected';
+ }
+ return '';
+ },
+ getRangeDayType: function (day) {
+ var _a = this.data,
+ currentDate = _a.currentDate,
+ allowSameDay = _a.allowSameDay;
+ if (!Array.isArray(currentDate)) {
+ return;
+ }
+ var startDay = currentDate[0],
+ endDay = currentDate[1];
+ if (!startDay) {
+ return;
+ }
+ var compareToStart = utils_1.compareDay(day, startDay);
+ if (!endDay) {
+ return compareToStart === 0 ? 'start' : '';
+ }
+ var compareToEnd = utils_1.compareDay(day, endDay);
+ if (compareToStart === 0 && compareToEnd === 0 && allowSameDay) {
+ return 'start-end';
+ }
+ if (compareToStart === 0) {
+ return 'start';
+ }
+ if (compareToEnd === 0) {
+ return 'end';
+ }
+ if (compareToStart > 0 && compareToEnd < 0) {
+ return 'middle';
+ }
+ },
+ getDayType: function (day) {
+ var _a = this.data,
+ type = _a.type,
+ minDate = _a.minDate,
+ maxDate = _a.maxDate,
+ currentDate = _a.currentDate;
+ if (
+ utils_1.compareDay(day, minDate) < 0 ||
+ utils_1.compareDay(day, maxDate) > 0
+ ) {
+ return 'disabled';
+ }
+ if (type === 'single') {
+ return utils_1.compareDay(day, currentDate) === 0 ? 'selected' : '';
+ }
+ if (type === 'multiple') {
+ return this.getMultipleDayType(day);
+ }
+ /* istanbul ignore else */
+ if (type === 'range') {
+ return this.getRangeDayType(day);
+ }
+ },
+ getBottomInfo: function (type) {
+ if (this.data.type === 'range') {
+ if (type === 'start') {
+ return '开始';
+ }
+ if (type === 'end') {
+ return '结束';
+ }
+ if (type === 'start-end') {
+ return '开始/结束';
+ }
+ }
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/calendar/components/month/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/calendar/components/month/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..efdc3c823a323c17832b921a6bccbcd398609183
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/calendar/components/month/index.json
@@ -0,0 +1,3 @@
+{
+ "component": true
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/calendar/components/month/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/calendar/components/month/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..b4b431ad8ad33d179e28862bb1c76d71b02ea88b
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/calendar/components/month/index.wxml
@@ -0,0 +1,39 @@
+
+
+
+
+
+ {{ computed.formatMonthTitle(date) }}
+
+
+
+
+ {{ computed.getMark(date) }}
+
+
+
+
+ {{ item.topInfo }}
+ {{ item.text }}
+
+ {{ item.bottomInfo }}
+
+
+
+
+ {{ item.topInfo }}
+ {{ item.text }}
+
+ {{ item.bottomInfo }}
+
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/calendar/components/month/index.wxs b/src/openeuler/miniprogram_npm/@vant/weapp/calendar/components/month/index.wxs
new file mode 100644
index 0000000000000000000000000000000000000000..00c909dbc5704e755ca2bd288f7ed3fd2ebd2c0b
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/calendar/components/month/index.wxs
@@ -0,0 +1,67 @@
+/* eslint-disable */
+var utils = require('../../utils.wxs');
+
+function getMark(date) {
+ return getDate(date).getMonth() + 1;
+}
+
+var ROW_HEIGHT = 64;
+
+function getDayStyle(type, index, date, rowHeight, color) {
+ var style = [];
+ var offset = getDate(date).getDay();
+
+ if (index === 0) {
+ style.push(['margin-left', (100 * offset) / 7 + '%']);
+ }
+
+ if (rowHeight !== ROW_HEIGHT) {
+ style.push(['height', rowHeight + 'px']);
+ }
+
+ if (color) {
+ if (
+ type === 'start' ||
+ type === 'end' ||
+ type === 'multiple-selected' ||
+ type === 'multiple-middle'
+ ) {
+ style.push(['background', color]);
+ } else if (type === 'middle') {
+ style.push(['color', color]);
+ }
+ }
+
+ return style
+ .map(function(item) {
+ return item.join(':');
+ })
+ .join(';');
+}
+
+function formatMonthTitle(date) {
+ date = getDate(date);
+ return date.getFullYear() + '年' + (date.getMonth() + 1) + '月';
+}
+
+function getMonthStyle(visible, date, rowHeight) {
+ if (!visible) {
+ date = getDate(date);
+
+ var totalDay = utils.getMonthEndDay(
+ date.getFullYear(),
+ date.getMonth() + 1
+ );
+ var offset = getDate(date).getDay();
+ var padding = Math.ceil((totalDay + offset) / 7) * rowHeight;
+
+ return 'padding-bottom:' + padding + 'px';
+ }
+}
+
+module.exports = {
+ getMark: getMark,
+ getDayStyle: getDayStyle,
+ formatMonthTitle: formatMonthTitle,
+ getMonthStyle: getMonthStyle
+};
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/calendar/components/month/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/calendar/components/month/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..17c12f4e60009cbbe9457f4370d57e30953fc0d4
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/calendar/components/month/index.wxss
@@ -0,0 +1 @@
+@import '../../../common/index.wxss';.van-calendar{display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column;height:100%;background-color:#fff;background-color:var(--calendar-background-color,#fff)}.van-calendar__month-title{text-align:center;height:44px;height:var(--calendar-header-title-height,44px);font-weight:500;font-weight:var(--font-weight-bold,500);font-size:14px;font-size:var(--calendar-month-title-font-size,14px);line-height:44px;line-height:var(--calendar-header-title-height,44px)}.van-calendar__days{position:relative;display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap;-webkit-user-select:none;user-select:none}.van-calendar__month-mark{position:absolute;top:50%;left:50%;z-index:0;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);pointer-events:none;color:rgba(242,243,245,.8);color:var(--calendar-month-mark-color,rgba(242,243,245,.8));font-size:160px;font-size:var(--calendar-month-mark-font-size,160px)}.van-calendar__day,.van-calendar__selected-day{display:-webkit-flex;display:flex;-webkit-align-items:center;align-items:center;-webkit-justify-content:center;justify-content:center;text-align:center}.van-calendar__day{position:relative;width:14.285%;height:64px;height:var(--calendar-day-height,64px);font-size:16px;font-size:var(--calendar-day-font-size,16px)}.van-calendar__day--end,.van-calendar__day--multiple-middle,.van-calendar__day--multiple-selected,.van-calendar__day--start,.van-calendar__day--start-end{color:#fff;color:var(--calendar-range-edge-color,#fff);background-color:#ee0a24;background-color:var(--calendar-range-edge-background-color,#ee0a24)}.van-calendar__day--start{border-radius:4px 0 0 4px;border-radius:var(--border-radius-md,4px) 0 0 var(--border-radius-md,4px)}.van-calendar__day--end{border-radius:0 4px 4px 0;border-radius:0 var(--border-radius-md,4px) var(--border-radius-md,4px) 0}.van-calendar__day--multiple-selected,.van-calendar__day--start-end{border-radius:4px;border-radius:var(--border-radius-md,4px)}.van-calendar__day--middle{color:#ee0a24;color:var(--calendar-range-middle-color,#ee0a24)}.van-calendar__day--middle:after{position:absolute;top:0;right:0;bottom:0;left:0;background-color:currentColor;content:"";opacity:.1;opacity:var(--calendar-range-middle-background-opacity,.1)}.van-calendar__day--disabled{cursor:default;color:#c8c9cc;color:var(--calendar-day-disabled-color,#c8c9cc)}.van-calendar__bottom-info,.van-calendar__top-info{position:absolute;right:0;left:0;font-size:10px;font-size:var(--calendar-info-font-size,10px);line-height:14px;line-height:var(--calendar-info-line-height,14px)}@media (max-width:350px){.van-calendar__bottom-info,.van-calendar__top-info{font-size:9px}}.van-calendar__top-info{top:6px}.van-calendar__bottom-info{bottom:6px}.van-calendar__selected-day{width:54px;width:var(--calendar-selected-day-size,54px);height:54px;height:var(--calendar-selected-day-size,54px);color:#fff;color:var(--calendar-selected-day-color,#fff);background-color:#ee0a24;background-color:var(--calendar-selected-day-background-color,#ee0a24);border-radius:4px;border-radius:var(--border-radius-md,4px)}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/calendar/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/calendar/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..f64f31873f142245e3442db75114f37ac834c516
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/calendar/index.js
@@ -0,0 +1,325 @@
+'use strict';
+var __spreadArrays =
+ (this && this.__spreadArrays) ||
+ function () {
+ for (var s = 0, i = 0, il = arguments.length; i < il; i++)
+ s += arguments[i].length;
+ for (var r = Array(s), k = 0, i = 0; i < il; i++)
+ for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
+ r[k] = a[j];
+ return r;
+ };
+var __importDefault =
+ (this && this.__importDefault) ||
+ function (mod) {
+ return mod && mod.__esModule ? mod : { default: mod };
+ };
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+var utils_1 = require('./utils');
+var toast_1 = __importDefault(require('../toast/toast'));
+var utils_2 = require('../common/utils');
+component_1.VantComponent({
+ props: {
+ title: {
+ type: String,
+ value: '日期选择',
+ },
+ color: String,
+ show: {
+ type: Boolean,
+ observer: function (val) {
+ if (val) {
+ this.initRect();
+ this.scrollIntoView();
+ }
+ },
+ },
+ formatter: null,
+ confirmText: {
+ type: String,
+ value: '确定',
+ },
+ rangePrompt: String,
+ defaultDate: {
+ type: null,
+ observer: function (val) {
+ this.setData({ currentDate: val });
+ this.scrollIntoView();
+ },
+ },
+ allowSameDay: Boolean,
+ confirmDisabledText: String,
+ type: {
+ type: String,
+ value: 'single',
+ observer: 'reset',
+ },
+ minDate: {
+ type: null,
+ value: Date.now(),
+ },
+ maxDate: {
+ type: null,
+ value: new Date(
+ new Date().getFullYear(),
+ new Date().getMonth() + 6,
+ new Date().getDate()
+ ).getTime(),
+ },
+ position: {
+ type: String,
+ value: 'bottom',
+ },
+ rowHeight: {
+ type: null,
+ value: utils_1.ROW_HEIGHT,
+ },
+ round: {
+ type: Boolean,
+ value: true,
+ },
+ poppable: {
+ type: Boolean,
+ value: true,
+ },
+ showMark: {
+ type: Boolean,
+ value: true,
+ },
+ showTitle: {
+ type: Boolean,
+ value: true,
+ },
+ showConfirm: {
+ type: Boolean,
+ value: true,
+ },
+ showSubtitle: {
+ type: Boolean,
+ value: true,
+ },
+ safeAreaInsetBottom: {
+ type: Boolean,
+ value: true,
+ },
+ closeOnClickOverlay: {
+ type: Boolean,
+ value: true,
+ },
+ maxRange: {
+ type: null,
+ value: null,
+ },
+ },
+ data: {
+ subtitle: '',
+ currentDate: null,
+ scrollIntoView: '',
+ },
+ created: function () {
+ this.setData({
+ currentDate: this.getInitialDate(),
+ });
+ },
+ mounted: function () {
+ if (this.data.show || !this.data.poppable) {
+ this.initRect();
+ this.scrollIntoView();
+ }
+ },
+ methods: {
+ reset: function () {
+ this.setData({ currentDate: this.getInitialDate() });
+ this.scrollIntoView();
+ },
+ initRect: function () {
+ var _this = this;
+ if (this.contentObserver != null) {
+ this.contentObserver.disconnect();
+ }
+ var contentObserver = this.createIntersectionObserver({
+ thresholds: [0, 0.1, 0.9, 1],
+ observeAll: true,
+ });
+ this.contentObserver = contentObserver;
+ contentObserver.relativeTo('.van-calendar__body');
+ contentObserver.observe('.month', function (res) {
+ if (res.boundingClientRect.top <= res.relativeRect.top) {
+ // @ts-ignore
+ _this.setData({
+ subtitle: utils_1.formatMonthTitle(res.dataset.date),
+ });
+ }
+ });
+ },
+ getInitialDate: function () {
+ var _a = this.data,
+ type = _a.type,
+ defaultDate = _a.defaultDate,
+ minDate = _a.minDate;
+ if (type === 'range') {
+ var _b = defaultDate || [],
+ startDay = _b[0],
+ endDay = _b[1];
+ return [
+ startDay || minDate,
+ endDay || utils_1.getNextDay(new Date(minDate)).getTime(),
+ ];
+ }
+ if (type === 'multiple') {
+ return defaultDate || [minDate];
+ }
+ return defaultDate || minDate;
+ },
+ scrollIntoView: function () {
+ var _this = this;
+ utils_2.requestAnimationFrame(function () {
+ var _a = _this.data,
+ currentDate = _a.currentDate,
+ type = _a.type,
+ show = _a.show,
+ poppable = _a.poppable,
+ minDate = _a.minDate,
+ maxDate = _a.maxDate;
+ // @ts-ignore
+ var targetDate = type === 'single' ? currentDate : currentDate[0];
+ var displayed = show || !poppable;
+ if (!targetDate || !displayed) {
+ return;
+ }
+ var months = utils_1.getMonths(minDate, maxDate);
+ months.some(function (month, index) {
+ if (utils_1.compareMonth(month, targetDate) === 0) {
+ _this.setData({ scrollIntoView: 'month' + index });
+ return true;
+ }
+ return false;
+ });
+ });
+ },
+ onOpen: function () {
+ this.$emit('open');
+ },
+ onOpened: function () {
+ this.$emit('opened');
+ },
+ onClose: function () {
+ this.$emit('close');
+ },
+ onClosed: function () {
+ this.$emit('closed');
+ },
+ onClickDay: function (event) {
+ var date = event.detail.date;
+ var _a = this.data,
+ type = _a.type,
+ currentDate = _a.currentDate,
+ allowSameDay = _a.allowSameDay;
+ if (type === 'range') {
+ // @ts-ignore
+ var startDay = currentDate[0],
+ endDay = currentDate[1];
+ if (startDay && !endDay) {
+ var compareToStart = utils_1.compareDay(date, startDay);
+ if (compareToStart === 1) {
+ this.select([startDay, date], true);
+ } else if (compareToStart === -1) {
+ this.select([date, null]);
+ } else if (allowSameDay) {
+ this.select([date, date]);
+ }
+ } else {
+ this.select([date, null]);
+ }
+ } else if (type === 'multiple') {
+ var selectedIndex_1;
+ // @ts-ignore
+ var selected = currentDate.some(function (dateItem, index) {
+ var equal = utils_1.compareDay(dateItem, date) === 0;
+ if (equal) {
+ selectedIndex_1 = index;
+ }
+ return equal;
+ });
+ if (selected) {
+ // @ts-ignore
+ var cancelDate = currentDate.splice(selectedIndex_1, 1);
+ this.setData({ currentDate: currentDate });
+ this.unselect(cancelDate);
+ } else {
+ // @ts-ignore
+ this.select(__spreadArrays(currentDate, [date]));
+ }
+ } else {
+ this.select(date, true);
+ }
+ },
+ unselect: function (dateArray) {
+ var date = dateArray[0];
+ if (date) {
+ this.$emit('unselect', utils_1.copyDates(date));
+ }
+ },
+ select: function (date, complete) {
+ if (complete && this.data.type === 'range') {
+ var valid = this.checkRange(date);
+ if (!valid) {
+ // auto selected to max range if showConfirm
+ if (this.data.showConfirm) {
+ this.emit([
+ date[0],
+ utils_1.getDayByOffset(date[0], this.data.maxRange - 1),
+ ]);
+ } else {
+ this.emit(date);
+ }
+ return;
+ }
+ }
+ this.emit(date);
+ if (complete && !this.data.showConfirm) {
+ this.onConfirm();
+ }
+ },
+ emit: function (date) {
+ var getTime = function (date) {
+ return date instanceof Date ? date.getTime() : date;
+ };
+ this.setData({
+ currentDate: Array.isArray(date) ? date.map(getTime) : getTime(date),
+ });
+ this.$emit('select', utils_1.copyDates(date));
+ },
+ checkRange: function (date) {
+ var _a = this.data,
+ maxRange = _a.maxRange,
+ rangePrompt = _a.rangePrompt;
+ if (maxRange && utils_1.calcDateNum(date) > maxRange) {
+ toast_1.default({
+ context: this,
+ message:
+ rangePrompt ||
+ '\u9009\u62E9\u5929\u6570\u4E0D\u80FD\u8D85\u8FC7 ' +
+ maxRange +
+ ' \u5929',
+ });
+ return false;
+ }
+ return true;
+ },
+ onConfirm: function () {
+ var _this = this;
+ if (
+ this.data.type === 'range' &&
+ !this.checkRange(this.data.currentDate)
+ ) {
+ return;
+ }
+ wx.nextTick(function () {
+ // @ts-ignore
+ _this.$emit('confirm', utils_1.copyDates(_this.data.currentDate));
+ });
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/calendar/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/calendar/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..fbb2d4e379fdd94391af589637a6c5b2f327a885
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/calendar/index.json
@@ -0,0 +1,10 @@
+{
+ "component": true,
+ "usingComponents": {
+ "header": "./components/header/index",
+ "month": "./components/month/index",
+ "van-button": "../button/index",
+ "van-popup": "../popup/index",
+ "van-toast": "../toast/index"
+ }
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/calendar/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/calendar/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..9a194ce0176db78ce5662238f5fd7b1c3bb0abee
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/calendar/index.wxml
@@ -0,0 +1,25 @@
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/calendar/index.wxs b/src/openeuler/miniprogram_npm/@vant/weapp/calendar/index.wxs
new file mode 100644
index 0000000000000000000000000000000000000000..f4647137931d6d61cf04a14fcfd28acc39978724
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/calendar/index.wxs
@@ -0,0 +1,37 @@
+/* eslint-disable */
+var utils = require('./utils.wxs');
+
+function getMonths(minDate, maxDate) {
+ var months = [];
+ var cursor = getDate(minDate);
+
+ cursor.setDate(1);
+
+ do {
+ months.push(cursor.getTime());
+ cursor.setMonth(cursor.getMonth() + 1);
+ } while (utils.compareMonth(cursor, getDate(maxDate)) !== 1);
+
+ return months;
+}
+
+function getButtonDisabled(type, currentDate) {
+ if (currentDate == null) {
+ return true;
+ }
+
+ if (type === 'range') {
+ return !currentDate[0] || !currentDate[1];
+ }
+
+ if (type === 'multiple') {
+ return !currentDate.length;
+ }
+
+ return !currentDate;
+}
+
+module.exports = {
+ getMonths: getMonths,
+ getButtonDisabled: getButtonDisabled
+};
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/calendar/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/calendar/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..9d78e0f4be3971db4a709cab484ee70dd38e61ce
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/calendar/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-calendar{display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column;height:100%;height:var(--calendar-height,100%);background-color:#fff;background-color:var(--calendar-background-color,#fff)}.van-calendar__close-icon{top:11px}.van-calendar__popup--bottom,.van-calendar__popup--top{height:80%;height:var(--calendar-popup-height,80%)}.van-calendar__popup--left,.van-calendar__popup--right{height:100%}.van-calendar__body{-webkit-flex:1;flex:1;overflow:auto;-webkit-overflow-scrolling:touch}.van-calendar__footer{-webkit-flex-shrink:0;flex-shrink:0;padding:0 16px;padding:0 var(--padding-md,16px)}.van-calendar__footer--safe-area-inset-bottom{padding-bottom:env(safe-area-inset-bottom)}.van-calendar__footer+.van-calendar__footer,.van-calendar__footer:empty{display:none}.van-calendar__footer:empty+.van-calendar__footer{display:block!important}.van-calendar__confirm{height:36px!important;height:var(--calendar-confirm-button-height,36px)!important;margin:7px 0!important;margin:var(--calendar-confirm-button-margin,7px 0)!important;line-height:34px!important;line-height:var(--calendar-confirm-button-line-height,34px)!important}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/calendar/utils.js b/src/openeuler/miniprogram_npm/@vant/weapp/calendar/utils.js
new file mode 100644
index 0000000000000000000000000000000000000000..39b9916821e6d85bb5634368c22520bce0576c51
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/calendar/utils.js
@@ -0,0 +1,91 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+exports.getMonths = exports.getMonthEndDay = exports.copyDates = exports.calcDateNum = exports.getNextDay = exports.getPrevDay = exports.getDayByOffset = exports.compareDay = exports.compareMonth = exports.formatMonthTitle = exports.ROW_HEIGHT = void 0;
+exports.ROW_HEIGHT = 64;
+function formatMonthTitle(date) {
+ if (!(date instanceof Date)) {
+ date = new Date(date);
+ }
+ return date.getFullYear() + '\u5E74' + (date.getMonth() + 1) + '\u6708';
+}
+exports.formatMonthTitle = formatMonthTitle;
+function compareMonth(date1, date2) {
+ if (!(date1 instanceof Date)) {
+ date1 = new Date(date1);
+ }
+ if (!(date2 instanceof Date)) {
+ date2 = new Date(date2);
+ }
+ var year1 = date1.getFullYear();
+ var year2 = date2.getFullYear();
+ var month1 = date1.getMonth();
+ var month2 = date2.getMonth();
+ if (year1 === year2) {
+ return month1 === month2 ? 0 : month1 > month2 ? 1 : -1;
+ }
+ return year1 > year2 ? 1 : -1;
+}
+exports.compareMonth = compareMonth;
+function compareDay(day1, day2) {
+ if (!(day1 instanceof Date)) {
+ day1 = new Date(day1);
+ }
+ if (!(day2 instanceof Date)) {
+ day2 = new Date(day2);
+ }
+ var compareMonthResult = compareMonth(day1, day2);
+ if (compareMonthResult === 0) {
+ var date1 = day1.getDate();
+ var date2 = day2.getDate();
+ return date1 === date2 ? 0 : date1 > date2 ? 1 : -1;
+ }
+ return compareMonthResult;
+}
+exports.compareDay = compareDay;
+function getDayByOffset(date, offset) {
+ date = new Date(date);
+ date.setDate(date.getDate() + offset);
+ return date;
+}
+exports.getDayByOffset = getDayByOffset;
+function getPrevDay(date) {
+ return getDayByOffset(date, -1);
+}
+exports.getPrevDay = getPrevDay;
+function getNextDay(date) {
+ return getDayByOffset(date, 1);
+}
+exports.getNextDay = getNextDay;
+function calcDateNum(date) {
+ var day1 = new Date(date[0]).getTime();
+ var day2 = new Date(date[1]).getTime();
+ return (day2 - day1) / (1000 * 60 * 60 * 24) + 1;
+}
+exports.calcDateNum = calcDateNum;
+function copyDates(dates) {
+ if (Array.isArray(dates)) {
+ return dates.map(function (date) {
+ if (date === null) {
+ return date;
+ }
+ return new Date(date);
+ });
+ }
+ return new Date(dates);
+}
+exports.copyDates = copyDates;
+function getMonthEndDay(year, month) {
+ return 32 - new Date(year, month - 1, 32).getDate();
+}
+exports.getMonthEndDay = getMonthEndDay;
+function getMonths(minDate, maxDate) {
+ var months = [];
+ var cursor = new Date(minDate);
+ cursor.setDate(1);
+ do {
+ months.push(cursor.getTime());
+ cursor.setMonth(cursor.getMonth() + 1);
+ } while (compareMonth(cursor, maxDate) !== 1);
+ return months;
+}
+exports.getMonths = getMonths;
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/calendar/utils.wxs b/src/openeuler/miniprogram_npm/@vant/weapp/calendar/utils.wxs
new file mode 100644
index 0000000000000000000000000000000000000000..2efe4a6ad16501f679a4a36286a4888d6f4b5542
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/calendar/utils.wxs
@@ -0,0 +1,25 @@
+/* eslint-disable */
+function getMonthEndDay(year, month) {
+ return 32 - getDate(year, month - 1, 32).getDate();
+}
+
+function compareMonth(date1, date2) {
+ date1 = getDate(date1);
+ date2 = getDate(date2);
+
+ var year1 = date1.getFullYear();
+ var year2 = date2.getFullYear();
+ var month1 = date1.getMonth();
+ var month2 = date2.getMonth();
+
+ if (year1 === year2) {
+ return month1 === month2 ? 0 : month1 > month2 ? 1 : -1;
+ }
+
+ return year1 > year2 ? 1 : -1;
+}
+
+module.exports = {
+ getMonthEndDay: getMonthEndDay,
+ compareMonth: compareMonth
+};
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/card/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/card/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..fa32fb919a81c811c6d6fc22a64572b075a0e341
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/card/index.js
@@ -0,0 +1,51 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var link_1 = require('../mixins/link');
+var component_1 = require('../common/component');
+component_1.VantComponent({
+ classes: [
+ 'num-class',
+ 'desc-class',
+ 'thumb-class',
+ 'title-class',
+ 'price-class',
+ 'origin-price-class',
+ ],
+ mixins: [link_1.link],
+ props: {
+ tag: String,
+ num: String,
+ desc: String,
+ thumb: String,
+ title: String,
+ price: {
+ type: String,
+ observer: 'updatePrice',
+ },
+ centered: Boolean,
+ lazyLoad: Boolean,
+ thumbLink: String,
+ originPrice: String,
+ thumbMode: {
+ type: String,
+ value: 'aspectFit',
+ },
+ currency: {
+ type: String,
+ value: '¥',
+ },
+ },
+ methods: {
+ updatePrice: function () {
+ var price = this.data.price;
+ var priceArr = price.toString().split('.');
+ this.setData({
+ integerStr: priceArr[0],
+ decimalStr: priceArr[1] ? '.' + priceArr[1] : '',
+ });
+ },
+ onClickThumb: function () {
+ this.jumpLink('thumbLink');
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/card/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/card/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..2b603f213877cd6d6cec8f82d69537e8026166ad
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/card/index.json
@@ -0,0 +1,6 @@
+{
+ "component": true,
+ "usingComponents": {
+ "van-tag": "../tag/index"
+ }
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/card/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/card/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..c00776fe84780cff0b125ccbf8bafe9c780ffdd9
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/card/index.wxml
@@ -0,0 +1,56 @@
+
+
+
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/card/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/card/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..a21a5995810a30a1ba04a92fcd830d1b79b32ee6
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/card/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-card{position:relative;box-sizing:border-box;padding:8px 16px;padding:var(--card-padding,8px 16px);font-size:12px;font-size:var(--card-font-size,12px);color:#323233;color:var(--card-text-color,#323233);background-color:#fafafa;background-color:var(--card-background-color,#fafafa)}.van-card__header{display:-webkit-flex;display:flex}.van-card__header--center{-webkit-align-items:center;align-items:center;-webkit-justify-content:center;justify-content:center}.van-card__thumb{position:relative;-webkit-flex:none;flex:none;width:88px;width:var(--card-thumb-size,88px);height:88px;height:var(--card-thumb-size,88px);margin-right:8px;margin-right:var(--padding-xs,8px)}.van-card__thumb:empty{display:none}.van-card__img{width:100%;height:100%;border-radius:8px;border-radius:var(--border-radius-lg,8px)}.van-card__content{position:relative;display:-webkit-flex;display:flex;-webkit-flex:1;flex:1;-webkit-flex-direction:column;flex-direction:column;-webkit-justify-content:space-between;justify-content:space-between;min-width:0;min-height:88px;min-height:var(--card-thumb-size,88px)}.van-card__content--center{-webkit-justify-content:center;justify-content:center}.van-card__desc,.van-card__title{word-wrap:break-word}.van-card__title{font-weight:700;line-height:16px;line-height:var(--card-title-line-height,16px)}.van-card__desc{line-height:20px;line-height:var(--card-desc-line-height,20px);color:#646566;color:var(--card-desc-color,#646566)}.van-card__bottom{line-height:20px}.van-card__price{display:inline-block;font-weight:700;color:#ee0a24;color:var(--card-price-color,#ee0a24);font-size:12px;font-size:var(--card-price-font-size,12px)}.van-card__price-integer{font-size:16px;font-size:var(--card-price-integer-font-size,16px)}.van-card__price-decimal,.van-card__price-integer{font-family:Avenir-Heavy,PingFang SC,Helvetica Neue,Arial,sans-serif;font-family:var(--card-price-font-family,Avenir-Heavy,PingFang SC,Helvetica Neue,Arial,sans-serif)}.van-card__origin-price{display:inline-block;margin-left:5px;text-decoration:line-through;font-size:10px;font-size:var(--card-origin-price-font-size,10px);color:#646566;color:var(--card-origin-price-color,#646566)}.van-card__num{float:right}.van-card__tag{position:absolute!important;top:2px;left:0}.van-card__footer{-webkit-flex:none;flex:none;width:100%;text-align:right}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/cell-group/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/cell-group/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..45b8ab61c580c091e22f191ede1ae85d421b82a9
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/cell-group/index.js
@@ -0,0 +1,12 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+component_1.VantComponent({
+ props: {
+ title: String,
+ border: {
+ type: Boolean,
+ value: true,
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/cell-group/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/cell-group/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..efdc3c823a323c17832b921a6bccbcd398609183
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/cell-group/index.json
@@ -0,0 +1,3 @@
+{
+ "component": true
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/cell-group/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/cell-group/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..88351a4e1687200fcf09ceb8db46c9343e29bf57
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/cell-group/index.wxml
@@ -0,0 +1,9 @@
+
+ {{ title }}
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/cell-group/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/cell-group/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..edbccd5958c63dccfd0b9c3a53630e63d1ef483c
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/cell-group/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-cell-group__title{padding:16px 16px 8px;padding:var(--cell-group-title-padding,16px 16px 8px);font-size:14px;font-size:var(--cell-group-title-font-size,14px);line-height:16px;line-height:var(--cell-group-title-line-height,16px);color:#969799;color:var(--cell-group-title-color,#969799)}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/cell/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/cell/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..75691a1ae149f4a6ca36730753d887be7746385c
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/cell/index.js
@@ -0,0 +1,40 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var link_1 = require('../mixins/link');
+var component_1 = require('../common/component');
+component_1.VantComponent({
+ classes: [
+ 'title-class',
+ 'label-class',
+ 'value-class',
+ 'right-icon-class',
+ 'hover-class',
+ ],
+ mixins: [link_1.link],
+ props: {
+ title: null,
+ value: null,
+ icon: String,
+ size: String,
+ label: String,
+ center: Boolean,
+ isLink: Boolean,
+ required: Boolean,
+ clickable: Boolean,
+ titleWidth: String,
+ customStyle: String,
+ arrowDirection: String,
+ useLabelSlot: Boolean,
+ border: {
+ type: Boolean,
+ value: true,
+ },
+ titleStyle: String,
+ },
+ methods: {
+ onClick: function (event) {
+ this.$emit('click', event.detail);
+ this.jumpLink();
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/cell/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/cell/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..8abfe203d0f960f68e62ffbf80021664bc8aae0a
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/cell/index.json
@@ -0,0 +1,6 @@
+{
+ "component": true,
+ "usingComponents": {
+ "van-icon": "../icon/index"
+ }
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/cell/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/cell/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..dac1fbffe0d7b5b142a922830faad5fc25b6f3b8
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/cell/index.wxml
@@ -0,0 +1,46 @@
+
+
+
+
+
+
+
+
+ {{ title }}
+
+
+
+
+ {{ label }}
+
+
+
+
+ {{ value }}
+
+
+
+
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/cell/index.wxs b/src/openeuler/miniprogram_npm/@vant/weapp/cell/index.wxs
new file mode 100644
index 0000000000000000000000000000000000000000..8bceeae2660afd236d524a6fa13923b8df51c6d3
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/cell/index.wxs
@@ -0,0 +1,17 @@
+/* eslint-disable */
+var style = require('../wxs/style.wxs');
+var addUnit = require('../wxs/add-unit.wxs');
+
+function titleStyle(data) {
+ return style([
+ {
+ 'max-width': addUnit(data.titleWidth),
+ 'min-width': addUnit(data.titleWidth),
+ },
+ data.titleStyle,
+ ]);
+}
+
+module.exports = {
+ titleStyle: titleStyle,
+};
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/cell/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/cell/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..605570db7dd8b26f23fb33fe3e8ca8a312e2d559
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/cell/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-cell{position:relative;display:-webkit-flex;display:flex;box-sizing:border-box;width:100%;padding:10px 16px;padding:var(--cell-vertical-padding,10px) var(--cell-horizontal-padding,16px);font-size:14px;font-size:var(--cell-font-size,14px);line-height:24px;line-height:var(--cell-line-height,24px);color:#323233;color:var(--cell-text-color,#323233);background-color:#fff;background-color:var(--cell-background-color,#fff)}.van-cell:after{position:absolute;box-sizing:border-box;-webkit-transform-origin:center;transform-origin:center;content:" ";pointer-events:none;right:16px;bottom:0;left:16px;border-bottom:1px solid #ebedf0;-webkit-transform:scaleY(.5);transform:scaleY(.5)}.van-cell--borderless:after{display:none}.van-cell-group{background-color:#fff;background-color:var(--cell-background-color,#fff)}.van-cell__label{margin-top:3px;margin-top:var(--cell-label-margin-top,3px);font-size:12px;font-size:var(--cell-label-font-size,12px);line-height:18px;line-height:var(--cell-label-line-height,18px);color:#969799;color:var(--cell-label-color,#969799)}.van-cell__value{overflow:hidden;text-align:right;vertical-align:middle;color:#969799;color:var(--cell-value-color,#969799)}.van-cell__title,.van-cell__value{-webkit-flex:1;flex:1}.van-cell__title:empty,.van-cell__value:empty{display:none}.van-cell__left-icon-wrap,.van-cell__right-icon-wrap{display:-webkit-flex;display:flex;-webkit-align-items:center;align-items:center;height:24px;height:var(--cell-line-height,24px);font-size:16px;font-size:var(--cell-icon-size,16px)}.van-cell__left-icon-wrap{margin-right:4px;margin-right:var(--padding-base,4px)}.van-cell__right-icon-wrap{margin-left:4px;margin-left:var(--padding-base,4px);color:#969799;color:var(--cell-right-icon-color,#969799)}.van-cell__left-icon{vertical-align:middle}.van-cell__left-icon,.van-cell__right-icon{line-height:24px;line-height:var(--cell-line-height,24px)}.van-cell--clickable.van-cell--hover{background-color:#f2f3f5;background-color:var(--cell-active-color,#f2f3f5)}.van-cell--required{overflow:visible}.van-cell--required:before{position:absolute;content:"*";left:8px;left:var(--padding-xs,8px);font-size:14px;font-size:var(--cell-font-size,14px);color:#ee0a24;color:var(--cell-required-color,#ee0a24)}.van-cell--center{-webkit-align-items:center;align-items:center}.van-cell--large{padding-top:12px;padding-top:var(--cell-large-vertical-padding,12px);padding-bottom:12px;padding-bottom:var(--cell-large-vertical-padding,12px)}.van-cell--large .van-cell__title{font-size:16px;font-size:var(--cell-large-title-font-size,16px)}.van-cell--large .van-cell__value{font-size:16px;font-size:var(--cell-large-value-font-size,16px)}.van-cell--large .van-cell__label{font-size:14px;font-size:var(--cell-large-label-font-size,14px)}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/checkbox-group/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/checkbox-group/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..9836f097951fc0f983f12f7eead6b98fe5b9d0b6
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/checkbox-group/index.js
@@ -0,0 +1,38 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var relation_1 = require('../common/relation');
+var component_1 = require('../common/component');
+component_1.VantComponent({
+ field: true,
+ relation: relation_1.useChildren('checkbox', function (target) {
+ this.updateChild(target);
+ }),
+ props: {
+ max: Number,
+ value: {
+ type: Array,
+ observer: 'updateChildren',
+ },
+ disabled: {
+ type: Boolean,
+ observer: 'updateChildren',
+ },
+ },
+ methods: {
+ updateChildren: function () {
+ var _this = this;
+ this.children.forEach(function (child) {
+ return _this.updateChild(child);
+ });
+ },
+ updateChild: function (child) {
+ var _a = this.data,
+ value = _a.value,
+ disabled = _a.disabled;
+ child.setData({
+ value: value.indexOf(child.data.name) !== -1,
+ parentDisabled: disabled,
+ });
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/checkbox-group/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/checkbox-group/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..efdc3c823a323c17832b921a6bccbcd398609183
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/checkbox-group/index.json
@@ -0,0 +1,3 @@
+{
+ "component": true
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/checkbox-group/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/checkbox-group/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..a8f3249c75c420f5ca13ed393b8ad0b91965d968
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/checkbox-group/index.wxml
@@ -0,0 +1 @@
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/checkbox-group/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/checkbox-group/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..99694d603361421fe8f1acfc76a09eae443cb3aa
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/checkbox-group/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/checkbox/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/checkbox/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..93fc39ad0e427cf7f41002f3e77e41473de8c90b
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/checkbox/index.js
@@ -0,0 +1,83 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var relation_1 = require('../common/relation');
+var component_1 = require('../common/component');
+function emit(target, value) {
+ target.$emit('input', value);
+ target.$emit('change', value);
+}
+component_1.VantComponent({
+ field: true,
+ relation: relation_1.useParent('checkbox-group'),
+ classes: ['icon-class', 'label-class'],
+ props: {
+ value: Boolean,
+ disabled: Boolean,
+ useIconSlot: Boolean,
+ checkedColor: String,
+ labelPosition: {
+ type: String,
+ value: 'right',
+ },
+ labelDisabled: Boolean,
+ shape: {
+ type: String,
+ value: 'round',
+ },
+ iconSize: {
+ type: null,
+ value: 20,
+ },
+ },
+ data: {
+ parentDisabled: false,
+ },
+ methods: {
+ emitChange: function (value) {
+ if (this.parent) {
+ this.setParentValue(this.parent, value);
+ } else {
+ emit(this, value);
+ }
+ },
+ toggle: function () {
+ var _a = this.data,
+ parentDisabled = _a.parentDisabled,
+ disabled = _a.disabled,
+ value = _a.value;
+ if (!disabled && !parentDisabled) {
+ this.emitChange(!value);
+ }
+ },
+ onClickLabel: function () {
+ var _a = this.data,
+ labelDisabled = _a.labelDisabled,
+ parentDisabled = _a.parentDisabled,
+ disabled = _a.disabled,
+ value = _a.value;
+ if (!disabled && !labelDisabled && !parentDisabled) {
+ this.emitChange(!value);
+ }
+ },
+ setParentValue: function (parent, value) {
+ var parentValue = parent.data.value.slice();
+ var name = this.data.name;
+ var max = parent.data.max;
+ if (value) {
+ if (max && parentValue.length >= max) {
+ return;
+ }
+ if (parentValue.indexOf(name) === -1) {
+ parentValue.push(name);
+ emit(parent, parentValue);
+ }
+ } else {
+ var index = parentValue.indexOf(name);
+ if (index !== -1) {
+ parentValue.splice(index, 1);
+ emit(parent, parentValue);
+ }
+ }
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/checkbox/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/checkbox/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..8abfe203d0f960f68e62ffbf80021664bc8aae0a
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/checkbox/index.json
@@ -0,0 +1,6 @@
+{
+ "component": true,
+ "usingComponents": {
+ "van-icon": "../icon/index"
+ }
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/checkbox/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/checkbox/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..4b3e8d3d2869675a34e7c0f9b020da3458098b19
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/checkbox/index.wxml
@@ -0,0 +1,31 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/checkbox/index.wxs b/src/openeuler/miniprogram_npm/@vant/weapp/checkbox/index.wxs
new file mode 100644
index 0000000000000000000000000000000000000000..6ae3d25149a6fcc6440d03569d4edb737052feb5
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/checkbox/index.wxs
@@ -0,0 +1,20 @@
+/* eslint-disable */
+var style = require('../wxs/style.wxs');
+var addUnit = require('../wxs/add-unit.wxs');
+
+function iconStyle(checkedColor, value, disabled, parentDisabled, iconSize) {
+ var styles = {
+ 'font-size': addUnit(iconSize),
+ };
+
+ if (checkedColor && value && !disabled && !parentDisabled) {
+ styles['border-color'] = checkedColor;
+ styles['background-color'] = checkedColor;
+ }
+
+ return style(styles);
+}
+
+module.exports = {
+ iconStyle: iconStyle,
+};
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/checkbox/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/checkbox/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..afaf37bec1fdd0db46f6e8521e46a44f07e8cb1f
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/checkbox/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-checkbox{display:-webkit-flex;display:flex;-webkit-align-items:center;align-items:center;overflow:hidden;-webkit-user-select:none;user-select:none}.van-checkbox__icon-wrap,.van-checkbox__label{line-height:20px;line-height:var(--checkbox-size,20px)}.van-checkbox__icon-wrap{-webkit-flex:none;flex:none}.van-checkbox__icon{display:-webkit-flex;display:flex;-webkit-align-items:center;align-items:center;-webkit-justify-content:center;justify-content:center;box-sizing:border-box;width:1em;height:1em;color:transparent;text-align:center;transition-property:color,border-color,background-color;font-size:20px;font-size:var(--checkbox-size,20px);border:1px solid #c8c9cc;border:1px solid var(--checkbox-border-color,#c8c9cc);transition-duration:.2s;transition-duration:var(--checkbox-transition-duration,.2s)}.van-checkbox__icon--round{border-radius:100%}.van-checkbox__icon--checked{color:#fff;color:var(--white,#fff);background-color:#1989fa;background-color:var(--checkbox-checked-icon-color,#1989fa);border-color:#1989fa;border-color:var(--checkbox-checked-icon-color,#1989fa)}.van-checkbox__icon--disabled{background-color:#ebedf0;background-color:var(--checkbox-disabled-background-color,#ebedf0);border-color:#c8c9cc;border-color:var(--checkbox-disabled-icon-color,#c8c9cc)}.van-checkbox__icon--disabled.van-checkbox__icon--checked{color:#c8c9cc;color:var(--checkbox-disabled-icon-color,#c8c9cc)}.van-checkbox__label{word-wrap:break-word;margin-left:10px;margin-left:var(--checkbox-label-margin,10px);color:#323233;color:var(--checkbox-label-color,#323233)}.van-checkbox__label--left{float:left;margin:0 10px 0 0;margin:0 var(--checkbox-label-margin,10px) 0 0}.van-checkbox__label--disabled{color:#c8c9cc;color:var(--checkbox-disabled-label-color,#c8c9cc)}.van-checkbox__label:empty{margin:0}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/circle/canvas.js b/src/openeuler/miniprogram_npm/@vant/weapp/circle/canvas.js
new file mode 100644
index 0000000000000000000000000000000000000000..932a42aa1eeefb98a9c287ff2e7d8e77b3448a10
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/circle/canvas.js
@@ -0,0 +1,47 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+exports.adaptor = void 0;
+function adaptor(ctx) {
+ // @ts-ignore
+ return Object.assign(ctx, {
+ setStrokeStyle: function (val) {
+ ctx.strokeStyle = val;
+ },
+ setLineWidth: function (val) {
+ ctx.lineWidth = val;
+ },
+ setLineCap: function (val) {
+ ctx.lineCap = val;
+ },
+ setFillStyle: function (val) {
+ ctx.fillStyle = val;
+ },
+ setFontSize: function (val) {
+ ctx.font = String(val);
+ },
+ setGlobalAlpha: function (val) {
+ ctx.globalAlpha = val;
+ },
+ setLineJoin: function (val) {
+ ctx.lineJoin = val;
+ },
+ setTextAlign: function (val) {
+ ctx.textAlign = val;
+ },
+ setMiterLimit: function (val) {
+ ctx.miterLimit = val;
+ },
+ setShadow: function (offsetX, offsetY, blur, color) {
+ ctx.shadowOffsetX = offsetX;
+ ctx.shadowOffsetY = offsetY;
+ ctx.shadowBlur = blur;
+ ctx.shadowColor = color;
+ },
+ setTextBaseline: function (val) {
+ ctx.textBaseline = val;
+ },
+ createCircularGradient: function () {},
+ draw: function () {},
+ });
+}
+exports.adaptor = adaptor;
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/circle/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/circle/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..c3313ba1e0d3dfe73db4cf8838b86743d9f5692b
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/circle/index.js
@@ -0,0 +1,211 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var color_1 = require('../common/color');
+var component_1 = require('../common/component');
+var utils_1 = require('../common/utils');
+var validator_1 = require('../common/validator');
+var version_1 = require('../common/version');
+var canvas_1 = require('./canvas');
+function format(rate) {
+ return Math.min(Math.max(rate, 0), 100);
+}
+var PERIMETER = 2 * Math.PI;
+var BEGIN_ANGLE = -Math.PI / 2;
+var STEP = 1;
+component_1.VantComponent({
+ props: {
+ text: String,
+ lineCap: {
+ type: String,
+ value: 'round',
+ },
+ value: {
+ type: Number,
+ value: 0,
+ observer: 'reRender',
+ },
+ speed: {
+ type: Number,
+ value: 50,
+ },
+ size: {
+ type: Number,
+ value: 100,
+ observer: function () {
+ this.drawCircle(this.currentValue);
+ },
+ },
+ fill: String,
+ layerColor: {
+ type: String,
+ value: color_1.WHITE,
+ },
+ color: {
+ type: null,
+ value: color_1.BLUE,
+ observer: function () {
+ var _this = this;
+ this.setHoverColor().then(function () {
+ _this.drawCircle(_this.currentValue);
+ });
+ },
+ },
+ type: {
+ type: String,
+ value: '',
+ },
+ strokeWidth: {
+ type: Number,
+ value: 4,
+ },
+ clockwise: {
+ type: Boolean,
+ value: true,
+ },
+ },
+ data: {
+ hoverColor: color_1.BLUE,
+ },
+ methods: {
+ getContext: function () {
+ var _this = this;
+ var _a = this.data,
+ type = _a.type,
+ size = _a.size;
+ if (type === '' || !version_1.canIUseCanvas2d()) {
+ var ctx = wx.createCanvasContext('van-circle', this);
+ return Promise.resolve(ctx);
+ }
+ var dpr = utils_1.getSystemInfoSync().pixelRatio;
+ return new Promise(function (resolve) {
+ wx.createSelectorQuery()
+ .in(_this)
+ .select('#van-circle')
+ .node()
+ .exec(function (res) {
+ var canvas = res[0].node;
+ var ctx = canvas.getContext(type);
+ if (!_this.inited) {
+ _this.inited = true;
+ canvas.width = size * dpr;
+ canvas.height = size * dpr;
+ ctx.scale(dpr, dpr);
+ }
+ resolve(canvas_1.adaptor(ctx));
+ });
+ });
+ },
+ setHoverColor: function () {
+ var _this = this;
+ var _a = this.data,
+ color = _a.color,
+ size = _a.size;
+ if (validator_1.isObj(color)) {
+ return this.getContext().then(function (context) {
+ var LinearColor = context.createLinearGradient(size, 0, 0, 0);
+ Object.keys(color)
+ .sort(function (a, b) {
+ return parseFloat(a) - parseFloat(b);
+ })
+ .map(function (key) {
+ return LinearColor.addColorStop(
+ parseFloat(key) / 100,
+ color[key]
+ );
+ });
+ _this.hoverColor = LinearColor;
+ });
+ }
+ this.hoverColor = color;
+ return Promise.resolve();
+ },
+ presetCanvas: function (context, strokeStyle, beginAngle, endAngle, fill) {
+ var _a = this.data,
+ strokeWidth = _a.strokeWidth,
+ lineCap = _a.lineCap,
+ clockwise = _a.clockwise,
+ size = _a.size;
+ var position = size / 2;
+ var radius = position - strokeWidth / 2;
+ context.setStrokeStyle(strokeStyle);
+ context.setLineWidth(strokeWidth);
+ context.setLineCap(lineCap);
+ context.beginPath();
+ context.arc(position, position, radius, beginAngle, endAngle, !clockwise);
+ context.stroke();
+ if (fill) {
+ context.setFillStyle(fill);
+ context.fill();
+ }
+ },
+ renderLayerCircle: function (context) {
+ var _a = this.data,
+ layerColor = _a.layerColor,
+ fill = _a.fill;
+ this.presetCanvas(context, layerColor, 0, PERIMETER, fill);
+ },
+ renderHoverCircle: function (context, formatValue) {
+ var clockwise = this.data.clockwise;
+ // 结束角度
+ var progress = PERIMETER * (formatValue / 100);
+ var endAngle = clockwise
+ ? BEGIN_ANGLE + progress
+ : 3 * Math.PI - (BEGIN_ANGLE + progress);
+ this.presetCanvas(context, this.hoverColor, BEGIN_ANGLE, endAngle);
+ },
+ drawCircle: function (currentValue) {
+ var _this = this;
+ var size = this.data.size;
+ this.getContext().then(function (context) {
+ context.clearRect(0, 0, size, size);
+ _this.renderLayerCircle(context);
+ var formatValue = format(currentValue);
+ if (formatValue !== 0) {
+ _this.renderHoverCircle(context, formatValue);
+ }
+ context.draw();
+ });
+ },
+ reRender: function () {
+ var _this = this;
+ // tofector 动画暂时没有想到好的解决方案
+ var _a = this.data,
+ value = _a.value,
+ speed = _a.speed;
+ if (speed <= 0 || speed > 1000) {
+ this.drawCircle(value);
+ return;
+ }
+ this.clearInterval();
+ this.currentValue = this.currentValue || 0;
+ this.interval = setInterval(function () {
+ if (_this.currentValue !== value) {
+ if (_this.currentValue < value) {
+ _this.currentValue += STEP;
+ } else {
+ _this.currentValue -= STEP;
+ }
+ _this.drawCircle(_this.currentValue);
+ } else {
+ _this.clearInterval();
+ }
+ }, 1000 / speed);
+ },
+ clearInterval: function () {
+ if (this.interval) {
+ clearInterval(this.interval);
+ this.interval = null;
+ }
+ },
+ },
+ mounted: function () {
+ var _this = this;
+ this.currentValue = this.data.value;
+ this.setHoverColor().then(function () {
+ _this.drawCircle(_this.currentValue);
+ });
+ },
+ destroyed: function () {
+ this.clearInterval();
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/circle/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/circle/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..efdc3c823a323c17832b921a6bccbcd398609183
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/circle/index.json
@@ -0,0 +1,3 @@
+{
+ "component": true
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/circle/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/circle/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..010ae1a5211994c4726b9e19bcca4c71cc55f2b6
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/circle/index.wxml
@@ -0,0 +1,9 @@
+
+
+
+
+
+
+
+ {{ text }}
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/circle/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/circle/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..3ab63dfd1e7220e500bd44170a7368236f93949d
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/circle/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-circle{position:relative;display:inline-block;text-align:center}.van-circle__text{position:absolute;top:50%;left:0;width:100%;-webkit-transform:translateY(-50%);transform:translateY(-50%);color:#323233;color:var(--circle-text-color,#323233)}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/col/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/col/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..47d89c7aad4a02394c509eb4a1a8a39a2969aeb0
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/col/index.js
@@ -0,0 +1,11 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var relation_1 = require('../common/relation');
+var component_1 = require('../common/component');
+component_1.VantComponent({
+ relation: relation_1.useParent('row'),
+ props: {
+ span: Number,
+ offset: Number,
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/col/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/col/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..efdc3c823a323c17832b921a6bccbcd398609183
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/col/index.json
@@ -0,0 +1,3 @@
+{
+ "component": true
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/col/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/col/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..aa603b98b1ac4524f95b2ad49458bad842a20c6b
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/col/index.wxml
@@ -0,0 +1,9 @@
+
+
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/col/index.wxs b/src/openeuler/miniprogram_npm/@vant/weapp/col/index.wxs
new file mode 100644
index 0000000000000000000000000000000000000000..2e65493b33e0ad7cc72e12559afe3be538c17ffb
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/col/index.wxs
@@ -0,0 +1,18 @@
+/* eslint-disable */
+var style = require('../wxs/style.wxs');
+var addUnit = require('../wxs/add-unit.wxs');
+
+function rootStyle(data) {
+ if (!data.gutter) {
+ return '';
+ }
+
+ return style({
+ 'padding-right': addUnit(data.gutter / 2),
+ 'padding-left': addUnit(data.gutter / 2),
+ });
+}
+
+module.exports = {
+ rootStyle: rootStyle,
+};
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/col/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/col/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..44c896a3ea71de650188e5d7c02ac697db680110
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/col/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-col{float:left;box-sizing:border-box}.van-col--1{width:4.16666667%}.van-col--offset-1{margin-left:4.16666667%}.van-col--2{width:8.33333333%}.van-col--offset-2{margin-left:8.33333333%}.van-col--3{width:12.5%}.van-col--offset-3{margin-left:12.5%}.van-col--4{width:16.66666667%}.van-col--offset-4{margin-left:16.66666667%}.van-col--5{width:20.83333333%}.van-col--offset-5{margin-left:20.83333333%}.van-col--6{width:25%}.van-col--offset-6{margin-left:25%}.van-col--7{width:29.16666667%}.van-col--offset-7{margin-left:29.16666667%}.van-col--8{width:33.33333333%}.van-col--offset-8{margin-left:33.33333333%}.van-col--9{width:37.5%}.van-col--offset-9{margin-left:37.5%}.van-col--10{width:41.66666667%}.van-col--offset-10{margin-left:41.66666667%}.van-col--11{width:45.83333333%}.van-col--offset-11{margin-left:45.83333333%}.van-col--12{width:50%}.van-col--offset-12{margin-left:50%}.van-col--13{width:54.16666667%}.van-col--offset-13{margin-left:54.16666667%}.van-col--14{width:58.33333333%}.van-col--offset-14{margin-left:58.33333333%}.van-col--15{width:62.5%}.van-col--offset-15{margin-left:62.5%}.van-col--16{width:66.66666667%}.van-col--offset-16{margin-left:66.66666667%}.van-col--17{width:70.83333333%}.van-col--offset-17{margin-left:70.83333333%}.van-col--18{width:75%}.van-col--offset-18{margin-left:75%}.van-col--19{width:79.16666667%}.van-col--offset-19{margin-left:79.16666667%}.van-col--20{width:83.33333333%}.van-col--offset-20{margin-left:83.33333333%}.van-col--21{width:87.5%}.van-col--offset-21{margin-left:87.5%}.van-col--22{width:91.66666667%}.van-col--offset-22{margin-left:91.66666667%}.van-col--23{width:95.83333333%}.van-col--offset-23{margin-left:95.83333333%}.van-col--24{width:100%}.van-col--offset-24{margin-left:100%}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/collapse-item/animate.js b/src/openeuler/miniprogram_npm/@vant/weapp/collapse-item/animate.js
new file mode 100644
index 0000000000000000000000000000000000000000..255025c0739d820debdcc4bea86b83d55eec7197
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/collapse-item/animate.js
@@ -0,0 +1,77 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+exports.setContentAnimate = void 0;
+var version_1 = require('../common/version');
+var utils_1 = require('../common/utils');
+function useAnimate(context, expanded, mounted, height) {
+ var selector = '.van-collapse-item__wrapper';
+ if (expanded) {
+ context.animate(
+ selector,
+ [
+ { height: 0, ease: 'ease-in-out', offset: 0 },
+ { height: height + 'px', ease: 'ease-in-out', offset: 1 },
+ { height: 'auto', ease: 'ease-in-out', offset: 1 },
+ ],
+ mounted ? 300 : 0,
+ function () {
+ context.clearAnimation(selector);
+ }
+ );
+ return;
+ }
+ context.animate(
+ selector,
+ [
+ { height: height + 'px', ease: 'ease-in-out', offset: 0 },
+ { height: 0, ease: 'ease-in-out', offset: 1 },
+ ],
+ 300,
+ function () {
+ context.clearAnimation(selector);
+ }
+ );
+}
+function useAnimation(context, expanded, mounted, height) {
+ var animation = wx.createAnimation({
+ duration: 0,
+ timingFunction: 'ease-in-out',
+ });
+ if (expanded) {
+ if (height === 0) {
+ animation.height('auto').top(1).step();
+ } else {
+ animation
+ .height(height)
+ .top(1)
+ .step({
+ duration: mounted ? 300 : 1,
+ })
+ .height('auto')
+ .step();
+ }
+ context.setData({
+ animation: animation.export(),
+ });
+ return;
+ }
+ animation.height(height).top(0).step({ duration: 1 }).height(0).step({
+ duration: 300,
+ });
+ context.setData({
+ animation: animation.export(),
+ });
+}
+function setContentAnimate(context, expanded, mounted) {
+ utils_1
+ .getRect(context, '.van-collapse-item__content')
+ .then(function (rect) {
+ return rect.height;
+ })
+ .then(function (height) {
+ version_1.canIUseAnimate()
+ ? useAnimate(context, expanded, mounted, height)
+ : useAnimation(context, expanded, mounted, height);
+ });
+}
+exports.setContentAnimate = setContentAnimate;
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/collapse-item/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/collapse-item/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..288ab825e5aff288f99b2a54c13019505456ea2e
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/collapse-item/index.js
@@ -0,0 +1,68 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+var relation_1 = require('../common/relation');
+var animate_1 = require('./animate');
+component_1.VantComponent({
+ classes: ['title-class', 'content-class'],
+ relation: relation_1.useParent('collapse'),
+ props: {
+ name: null,
+ title: null,
+ value: null,
+ icon: String,
+ label: String,
+ disabled: Boolean,
+ clickable: Boolean,
+ border: {
+ type: Boolean,
+ value: true,
+ },
+ isLink: {
+ type: Boolean,
+ value: true,
+ },
+ },
+ data: {
+ expanded: false,
+ },
+ mounted: function () {
+ this.updateExpanded();
+ this.mounted = true;
+ },
+ methods: {
+ updateExpanded: function () {
+ if (!this.parent) {
+ return;
+ }
+ var _a = this.parent.data,
+ value = _a.value,
+ accordion = _a.accordion;
+ var _b = this.parent.children,
+ children = _b === void 0 ? [] : _b;
+ var name = this.data.name;
+ var index = children.indexOf(this);
+ var currentName = name == null ? index : name;
+ var expanded = accordion
+ ? value === currentName
+ : (value || []).some(function (name) {
+ return name === currentName;
+ });
+ if (expanded !== this.data.expanded) {
+ animate_1.setContentAnimate(this, expanded, this.mounted);
+ }
+ this.setData({ index: index, expanded: expanded });
+ },
+ onClick: function () {
+ if (this.data.disabled) {
+ return;
+ }
+ var _a = this.data,
+ name = _a.name,
+ expanded = _a.expanded;
+ var index = this.parent.children.indexOf(this);
+ var currentName = name == null ? index : name;
+ this.parent.switch(currentName, !expanded);
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/collapse-item/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/collapse-item/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..7069216d021a1a9b865d67964a61326b17debebb
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/collapse-item/index.json
@@ -0,0 +1,6 @@
+{
+ "component": true,
+ "usingComponents": {
+ "van-cell": "../cell/index"
+ }
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/collapse-item/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/collapse-item/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..94705ff87e29fd7b94a7dde39792ffbb45f43c82
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/collapse-item/index.wxml
@@ -0,0 +1,44 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/collapse-item/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/collapse-item/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..0bb936c00343dc591c86395261d00f2e08c00cb3
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/collapse-item/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-collapse-item__title .van-cell__right-icon{-webkit-transform:rotate(90deg);transform:rotate(90deg);transition:-webkit-transform .3s;transition:transform .3s;transition:transform .3s,-webkit-transform .3s;transition:-webkit-transform var(--collapse-item-transition-duration,.3s);transition:transform var(--collapse-item-transition-duration,.3s);transition:transform var(--collapse-item-transition-duration,.3s),-webkit-transform var(--collapse-item-transition-duration,.3s)}.van-collapse-item__title--expanded .van-cell__right-icon{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}.van-collapse-item__title--disabled .van-cell,.van-collapse-item__title--disabled .van-cell__right-icon{color:#c8c9cc!important;color:var(--collapse-item-title-disabled-color,#c8c9cc)!important}.van-collapse-item__title--disabled .van-cell--hover{background-color:#fff!important;background-color:var(--white,#fff)!important}.van-collapse-item__wrapper{overflow:hidden}.van-collapse-item__content{padding:15px;padding:var(--collapse-item-content-padding,15px);color:#969799;color:var(--collapse-item-content-text-color,#969799);font-size:13px;font-size:var(--collapse-item-content-font-size,13px);line-height:1.5;line-height:var(--collapse-item-content-line-height,1.5);background-color:#fff;background-color:var(--collapse-item-content-background-color,#fff)}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/collapse/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/collapse/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..3d90fb38ce10d3d00bc776086dd3c146c6dba03f
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/collapse/index.js
@@ -0,0 +1,50 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+var relation_1 = require('../common/relation');
+component_1.VantComponent({
+ relation: relation_1.useChildren('collapse-item'),
+ props: {
+ value: {
+ type: null,
+ observer: 'updateExpanded',
+ },
+ accordion: {
+ type: Boolean,
+ observer: 'updateExpanded',
+ },
+ border: {
+ type: Boolean,
+ value: true,
+ },
+ },
+ methods: {
+ updateExpanded: function () {
+ this.children.forEach(function (child) {
+ child.updateExpanded();
+ });
+ },
+ switch: function (name, expanded) {
+ var _a = this.data,
+ accordion = _a.accordion,
+ value = _a.value;
+ var changeItem = name;
+ if (!accordion) {
+ name = expanded
+ ? (value || []).concat(name)
+ : (value || []).filter(function (activeName) {
+ return activeName !== name;
+ });
+ } else {
+ name = expanded ? name : '';
+ }
+ if (expanded) {
+ this.$emit('open', changeItem);
+ } else {
+ this.$emit('close', changeItem);
+ }
+ this.$emit('change', name);
+ this.$emit('input', name);
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/collapse/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/collapse/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..efdc3c823a323c17832b921a6bccbcd398609183
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/collapse/index.json
@@ -0,0 +1,3 @@
+{
+ "component": true
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/collapse/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/collapse/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..f689405bf2d062fdd2564e5087b066b9b049f296
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/collapse/index.wxml
@@ -0,0 +1,3 @@
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/collapse/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/collapse/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..99694d603361421fe8f1acfc76a09eae443cb3aa
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/collapse/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/common/color.js b/src/openeuler/miniprogram_npm/@vant/weapp/common/color.js
new file mode 100644
index 0000000000000000000000000000000000000000..11be12add21a2b2fa2ccb7cacad0a26dae4c5965
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/common/color.js
@@ -0,0 +1,10 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+exports.GRAY_DARK = exports.GRAY = exports.ORANGE = exports.GREEN = exports.WHITE = exports.BLUE = exports.RED = void 0;
+exports.RED = '#ee0a24';
+exports.BLUE = '#1989fa';
+exports.WHITE = '#fff';
+exports.GREEN = '#07c160';
+exports.ORANGE = '#ff976a';
+exports.GRAY = '#323233';
+exports.GRAY_DARK = '#969799';
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/common/component.js b/src/openeuler/miniprogram_npm/@vant/weapp/common/component.js
new file mode 100644
index 0000000000000000000000000000000000000000..6401bad7580d0384d38ae4ec0693948e7d4e5163
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/common/component.js
@@ -0,0 +1,48 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+exports.VantComponent = void 0;
+var basic_1 = require('../mixins/basic');
+function mapKeys(source, target, map) {
+ Object.keys(map).forEach(function (key) {
+ if (source[key]) {
+ target[map[key]] = source[key];
+ }
+ });
+}
+function VantComponent(vantOptions) {
+ var options = {};
+ mapKeys(vantOptions, options, {
+ data: 'data',
+ props: 'properties',
+ mixins: 'behaviors',
+ methods: 'methods',
+ beforeCreate: 'created',
+ created: 'attached',
+ mounted: 'ready',
+ destroyed: 'detached',
+ classes: 'externalClasses',
+ });
+ // add default externalClasses
+ options.externalClasses = options.externalClasses || [];
+ options.externalClasses.push('custom-class');
+ // add default behaviors
+ options.behaviors = options.behaviors || [];
+ options.behaviors.push(basic_1.basic);
+ // add relations
+ var relation = vantOptions.relation;
+ if (relation) {
+ options.relations = relation.relations;
+ options.behaviors.push(relation.mixin);
+ }
+ // map field to form-field behavior
+ if (vantOptions.field) {
+ options.behaviors.push('wx://form-field');
+ }
+ // add default options
+ options.options = {
+ multipleSlots: true,
+ addGlobalClass: true,
+ };
+ Component(options);
+}
+exports.VantComponent = VantComponent;
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/common/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/common/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..976825d7bfe20937b22d9ba32315561e6cadf953
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/common/index.wxss
@@ -0,0 +1 @@
+.van-ellipsis{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.van-multi-ellipsis--l2{-webkit-line-clamp:2}.van-multi-ellipsis--l2,.van-multi-ellipsis--l3{display:-webkit-box;overflow:hidden;text-overflow:ellipsis;-webkit-box-orient:vertical}.van-multi-ellipsis--l3{-webkit-line-clamp:3}.van-clearfix:after{display:table;clear:both;content:""}.van-hairline,.van-hairline--bottom,.van-hairline--left,.van-hairline--right,.van-hairline--surround,.van-hairline--top,.van-hairline--top-bottom{position:relative}.van-hairline--bottom:after,.van-hairline--left:after,.van-hairline--right:after,.van-hairline--surround:after,.van-hairline--top-bottom:after,.van-hairline--top:after,.van-hairline:after{position:absolute;box-sizing:border-box;-webkit-transform-origin:center;transform-origin:center;content:" ";pointer-events:none;top:-50%;right:-50%;bottom:-50%;left:-50%;border:0 solid #ebedf0;-webkit-transform:scale(.5);transform:scale(.5)}.van-hairline--top:after{border-top-width:1px}.van-hairline--left:after{border-left-width:1px}.van-hairline--right:after{border-right-width:1px}.van-hairline--bottom:after{border-bottom-width:1px}.van-hairline--top-bottom:after{border-width:1px 0}.van-hairline--surround:after{border-width:1px}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/common/relation.js b/src/openeuler/miniprogram_npm/@vant/weapp/common/relation.js
new file mode 100644
index 0000000000000000000000000000000000000000..a7372bc9335ce2adfcbfc631513ed2a9c22525e5
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/common/relation.js
@@ -0,0 +1,79 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+exports.useChildren = exports.useParent = void 0;
+function useParent(name, onEffect) {
+ var _a;
+ var path = '../' + name + '/index';
+ return {
+ relations:
+ ((_a = {}),
+ (_a[path] = {
+ type: 'ancestor',
+ linked: function () {
+ onEffect && onEffect.call(this);
+ },
+ linkChanged: function () {
+ onEffect && onEffect.call(this);
+ },
+ unlinked: function () {
+ onEffect && onEffect.call(this);
+ },
+ }),
+ _a),
+ mixin: Behavior({
+ created: function () {
+ var _this = this;
+ Object.defineProperty(this, 'parent', {
+ get: function () {
+ return _this.getRelationNodes(path)[0];
+ },
+ });
+ Object.defineProperty(this, 'index', {
+ // @ts-ignore
+ get: function () {
+ var _a, _b;
+ return (_b =
+ (_a = _this.parent) === null || _a === void 0
+ ? void 0
+ : _a.children) === null || _b === void 0
+ ? void 0
+ : _b.indexOf(_this);
+ },
+ });
+ },
+ }),
+ };
+}
+exports.useParent = useParent;
+function useChildren(name, onEffect) {
+ var _a;
+ var path = '../' + name + '/index';
+ return {
+ relations:
+ ((_a = {}),
+ (_a[path] = {
+ type: 'descendant',
+ linked: function (target) {
+ onEffect && onEffect.call(this, target);
+ },
+ linkChanged: function (target) {
+ onEffect && onEffect.call(this, target);
+ },
+ unlinked: function (target) {
+ onEffect && onEffect.call(this, target);
+ },
+ }),
+ _a),
+ mixin: Behavior({
+ created: function () {
+ var _this = this;
+ Object.defineProperty(this, 'children', {
+ get: function () {
+ return _this.getRelationNodes(path) || [];
+ },
+ });
+ },
+ }),
+ };
+}
+exports.useChildren = useChildren;
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/common/style/clearfix.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/common/style/clearfix.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..a0ca83843c90df59e257b60edac727b42dd94c90
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/common/style/clearfix.wxss
@@ -0,0 +1 @@
+.van-clearfix:after{display:table;clear:both;content:""}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/common/style/ellipsis.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/common/style/ellipsis.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..1e9dbc9e0952cef028b287b07744fa8b3343e980
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/common/style/ellipsis.wxss
@@ -0,0 +1 @@
+.van-ellipsis{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.van-multi-ellipsis--l2{-webkit-line-clamp:2}.van-multi-ellipsis--l2,.van-multi-ellipsis--l3{display:-webkit-box;overflow:hidden;text-overflow:ellipsis;-webkit-box-orient:vertical}.van-multi-ellipsis--l3{-webkit-line-clamp:3}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/common/style/hairline.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/common/style/hairline.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..49b9e656fcb701be7db42660c9040740158d48f4
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/common/style/hairline.wxss
@@ -0,0 +1 @@
+.van-hairline,.van-hairline--bottom,.van-hairline--left,.van-hairline--right,.van-hairline--surround,.van-hairline--top,.van-hairline--top-bottom{position:relative}.van-hairline--bottom:after,.van-hairline--left:after,.van-hairline--right:after,.van-hairline--surround:after,.van-hairline--top-bottom:after,.van-hairline--top:after,.van-hairline:after{position:absolute;box-sizing:border-box;-webkit-transform-origin:center;transform-origin:center;content:" ";pointer-events:none;top:-50%;right:-50%;bottom:-50%;left:-50%;border:0 solid #ebedf0;-webkit-transform:scale(.5);transform:scale(.5)}.van-hairline--top:after{border-top-width:1px}.van-hairline--left:after{border-left-width:1px}.van-hairline--right:after{border-right-width:1px}.van-hairline--bottom:after{border-bottom-width:1px}.van-hairline--top-bottom:after{border-width:1px 0}.van-hairline--surround:after{border-width:1px}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/common/style/mixins/clearfix.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/common/style/mixins/clearfix.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/common/style/mixins/ellipsis.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/common/style/mixins/ellipsis.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/common/style/mixins/hairline.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/common/style/mixins/hairline.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/common/style/theme.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/common/style/theme.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/common/style/var.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/common/style/var.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/common/utils.js b/src/openeuler/miniprogram_npm/@vant/weapp/common/utils.js
new file mode 100644
index 0000000000000000000000000000000000000000..6f445065d077acdbc1cab13b77c7a54defec099b
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/common/utils.js
@@ -0,0 +1,113 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+exports.getCurrentPage = exports.toPromise = exports.groupSetData = exports.getAllRect = exports.getRect = exports.pickExclude = exports.requestAnimationFrame = exports.addUnit = exports.getSystemInfoSync = exports.nextTick = exports.range = void 0;
+var validator_1 = require('./validator');
+var version_1 = require('./version');
+function range(num, min, max) {
+ return Math.min(Math.max(num, min), max);
+}
+exports.range = range;
+function nextTick(cb) {
+ if (version_1.canIUseNextTick()) {
+ wx.nextTick(cb);
+ } else {
+ setTimeout(function () {
+ cb();
+ }, 1000 / 30);
+ }
+}
+exports.nextTick = nextTick;
+var systemInfo;
+function getSystemInfoSync() {
+ if (systemInfo == null) {
+ systemInfo = wx.getSystemInfoSync();
+ }
+ return systemInfo;
+}
+exports.getSystemInfoSync = getSystemInfoSync;
+function addUnit(value) {
+ if (!validator_1.isDef(value)) {
+ return undefined;
+ }
+ value = String(value);
+ return validator_1.isNumber(value) ? value + 'px' : value;
+}
+exports.addUnit = addUnit;
+function requestAnimationFrame(cb) {
+ var systemInfo = getSystemInfoSync();
+ if (systemInfo.platform === 'devtools') {
+ return setTimeout(function () {
+ cb();
+ }, 1000 / 30);
+ }
+ return wx
+ .createSelectorQuery()
+ .selectViewport()
+ .boundingClientRect()
+ .exec(function () {
+ cb();
+ });
+}
+exports.requestAnimationFrame = requestAnimationFrame;
+function pickExclude(obj, keys) {
+ if (!validator_1.isPlainObject(obj)) {
+ return {};
+ }
+ return Object.keys(obj).reduce(function (prev, key) {
+ if (!keys.includes(key)) {
+ prev[key] = obj[key];
+ }
+ return prev;
+ }, {});
+}
+exports.pickExclude = pickExclude;
+function getRect(context, selector) {
+ return new Promise(function (resolve) {
+ wx.createSelectorQuery()
+ .in(context)
+ .select(selector)
+ .boundingClientRect()
+ .exec(function (rect) {
+ if (rect === void 0) {
+ rect = [];
+ }
+ return resolve(rect[0]);
+ });
+ });
+}
+exports.getRect = getRect;
+function getAllRect(context, selector) {
+ return new Promise(function (resolve) {
+ wx.createSelectorQuery()
+ .in(context)
+ .selectAll(selector)
+ .boundingClientRect()
+ .exec(function (rect) {
+ if (rect === void 0) {
+ rect = [];
+ }
+ return resolve(rect[0]);
+ });
+ });
+}
+exports.getAllRect = getAllRect;
+function groupSetData(context, cb) {
+ if (version_1.canIUseGroupSetData()) {
+ context.groupSetData(cb);
+ } else {
+ cb();
+ }
+}
+exports.groupSetData = groupSetData;
+function toPromise(promiseLike) {
+ if (validator_1.isPromise(promiseLike)) {
+ return promiseLike;
+ }
+ return Promise.resolve(promiseLike);
+}
+exports.toPromise = toPromise;
+function getCurrentPage() {
+ var pages = getCurrentPages();
+ return pages[pages.length - 1];
+}
+exports.getCurrentPage = getCurrentPage;
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/common/validator.js b/src/openeuler/miniprogram_npm/@vant/weapp/common/validator.js
new file mode 100644
index 0000000000000000000000000000000000000000..e61af2c89e6cd07990ddb591fb73e191c223edcf
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/common/validator.js
@@ -0,0 +1,42 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+exports.isVideoUrl = exports.isImageUrl = exports.isBoolean = exports.isNumber = exports.isObj = exports.isDef = exports.isPromise = exports.isPlainObject = exports.isFunction = void 0;
+function isFunction(val) {
+ return typeof val === 'function';
+}
+exports.isFunction = isFunction;
+function isPlainObject(val) {
+ return val !== null && typeof val === 'object' && !Array.isArray(val);
+}
+exports.isPlainObject = isPlainObject;
+function isPromise(val) {
+ return isPlainObject(val) && isFunction(val.then) && isFunction(val.catch);
+}
+exports.isPromise = isPromise;
+function isDef(value) {
+ return value !== undefined && value !== null;
+}
+exports.isDef = isDef;
+function isObj(x) {
+ var type = typeof x;
+ return x !== null && (type === 'object' || type === 'function');
+}
+exports.isObj = isObj;
+function isNumber(value) {
+ return /^\d+(\.\d+)?$/.test(value);
+}
+exports.isNumber = isNumber;
+function isBoolean(value) {
+ return typeof value === 'boolean';
+}
+exports.isBoolean = isBoolean;
+var IMAGE_REGEXP = /\.(jpeg|jpg|gif|png|svg|webp|jfif|bmp|dpg)/i;
+var VIDEO_REGEXP = /\.(mp4|mpg|mpeg|dat|asf|avi|rm|rmvb|mov|wmv|flv|mkv)/i;
+function isImageUrl(url) {
+ return IMAGE_REGEXP.test(url);
+}
+exports.isImageUrl = isImageUrl;
+function isVideoUrl(url) {
+ return VIDEO_REGEXP.test(url);
+}
+exports.isVideoUrl = isVideoUrl;
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/common/version.js b/src/openeuler/miniprogram_npm/@vant/weapp/common/version.js
new file mode 100644
index 0000000000000000000000000000000000000000..3a5d83754e4eb4478101c199055812958cddcc10
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/common/version.js
@@ -0,0 +1,54 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+exports.canIUseCanvas2d = exports.canIUseNextTick = exports.canIUseGroupSetData = exports.canIUseAnimate = exports.canIUseFormFieldButton = exports.canIUseModel = void 0;
+var utils_1 = require('./utils');
+function compareVersion(v1, v2) {
+ v1 = v1.split('.');
+ v2 = v2.split('.');
+ var len = Math.max(v1.length, v2.length);
+ while (v1.length < len) {
+ v1.push('0');
+ }
+ while (v2.length < len) {
+ v2.push('0');
+ }
+ for (var i = 0; i < len; i++) {
+ var num1 = parseInt(v1[i], 10);
+ var num2 = parseInt(v2[i], 10);
+ if (num1 > num2) {
+ return 1;
+ }
+ if (num1 < num2) {
+ return -1;
+ }
+ }
+ return 0;
+}
+function gte(version) {
+ var system = utils_1.getSystemInfoSync();
+ return compareVersion(system.SDKVersion, version) >= 0;
+}
+function canIUseModel() {
+ return gte('2.9.3');
+}
+exports.canIUseModel = canIUseModel;
+function canIUseFormFieldButton() {
+ return gte('2.10.3');
+}
+exports.canIUseFormFieldButton = canIUseFormFieldButton;
+function canIUseAnimate() {
+ return gte('2.9.0');
+}
+exports.canIUseAnimate = canIUseAnimate;
+function canIUseGroupSetData() {
+ return gte('2.4.0');
+}
+exports.canIUseGroupSetData = canIUseGroupSetData;
+function canIUseNextTick() {
+ return wx.canIUse('nextTick');
+}
+exports.canIUseNextTick = canIUseNextTick;
+function canIUseCanvas2d() {
+ return gte('2.9.0');
+}
+exports.canIUseCanvas2d = canIUseCanvas2d;
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/count-down/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/count-down/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..f88ea09ff948628efb0ee7331d08a92ab669d7d4
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/count-down/index.js
@@ -0,0 +1,103 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+var utils_1 = require('./utils');
+function simpleTick(fn) {
+ return setTimeout(fn, 30);
+}
+component_1.VantComponent({
+ props: {
+ useSlot: Boolean,
+ millisecond: Boolean,
+ time: {
+ type: Number,
+ observer: 'reset',
+ },
+ format: {
+ type: String,
+ value: 'HH:mm:ss',
+ },
+ autoStart: {
+ type: Boolean,
+ value: true,
+ },
+ },
+ data: {
+ timeData: utils_1.parseTimeData(0),
+ formattedTime: '0',
+ },
+ destroyed: function () {
+ clearTimeout(this.tid);
+ this.tid = null;
+ },
+ methods: {
+ // 开始
+ start: function () {
+ if (this.counting) {
+ return;
+ }
+ this.counting = true;
+ this.endTime = Date.now() + this.remain;
+ this.tick();
+ },
+ // 暂停
+ pause: function () {
+ this.counting = false;
+ clearTimeout(this.tid);
+ },
+ // 重置
+ reset: function () {
+ this.pause();
+ this.remain = this.data.time;
+ this.setRemain(this.remain);
+ if (this.data.autoStart) {
+ this.start();
+ }
+ },
+ tick: function () {
+ if (this.data.millisecond) {
+ this.microTick();
+ } else {
+ this.macroTick();
+ }
+ },
+ microTick: function () {
+ var _this = this;
+ this.tid = simpleTick(function () {
+ _this.setRemain(_this.getRemain());
+ if (_this.remain !== 0) {
+ _this.microTick();
+ }
+ });
+ },
+ macroTick: function () {
+ var _this = this;
+ this.tid = simpleTick(function () {
+ var remain = _this.getRemain();
+ if (!utils_1.isSameSecond(remain, _this.remain) || remain === 0) {
+ _this.setRemain(remain);
+ }
+ if (_this.remain !== 0) {
+ _this.macroTick();
+ }
+ });
+ },
+ getRemain: function () {
+ return Math.max(this.endTime - Date.now(), 0);
+ },
+ setRemain: function (remain) {
+ this.remain = remain;
+ var timeData = utils_1.parseTimeData(remain);
+ if (this.data.useSlot) {
+ this.$emit('change', timeData);
+ }
+ this.setData({
+ formattedTime: utils_1.parseFormat(this.data.format, timeData),
+ });
+ if (remain === 0) {
+ this.pause();
+ this.$emit('finish');
+ }
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/count-down/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/count-down/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..efdc3c823a323c17832b921a6bccbcd398609183
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/count-down/index.json
@@ -0,0 +1,3 @@
+{
+ "component": true
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/count-down/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/count-down/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..49c4db299dd42ceb13c0fe9904970977a6ea465a
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/count-down/index.wxml
@@ -0,0 +1,4 @@
+
+
+ {{ formattedTime }}
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/count-down/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/count-down/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..bc33f5dc8faedad81144c8c4fac06c831727e29f
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/count-down/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-count-down{color:#323233;color:var(--count-down-text-color,#323233);font-size:14px;font-size:var(--count-down-font-size,14px);line-height:20px;line-height:var(--count-down-line-height,20px)}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/count-down/utils.js b/src/openeuler/miniprogram_npm/@vant/weapp/count-down/utils.js
new file mode 100644
index 0000000000000000000000000000000000000000..ef6f9823674232999ab9b7cedbf65fb5fbc9fa2b
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/count-down/utils.js
@@ -0,0 +1,65 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+exports.isSameSecond = exports.parseFormat = exports.parseTimeData = void 0;
+function padZero(num, targetLength) {
+ if (targetLength === void 0) {
+ targetLength = 2;
+ }
+ var str = num + '';
+ while (str.length < targetLength) {
+ str = '0' + str;
+ }
+ return str;
+}
+var SECOND = 1000;
+var MINUTE = 60 * SECOND;
+var HOUR = 60 * MINUTE;
+var DAY = 24 * HOUR;
+function parseTimeData(time) {
+ var days = Math.floor(time / DAY);
+ var hours = Math.floor((time % DAY) / HOUR);
+ var minutes = Math.floor((time % HOUR) / MINUTE);
+ var seconds = Math.floor((time % MINUTE) / SECOND);
+ var milliseconds = Math.floor(time % SECOND);
+ return {
+ days: days,
+ hours: hours,
+ minutes: minutes,
+ seconds: seconds,
+ milliseconds: milliseconds,
+ };
+}
+exports.parseTimeData = parseTimeData;
+function parseFormat(format, timeData) {
+ var days = timeData.days;
+ var hours = timeData.hours,
+ minutes = timeData.minutes,
+ seconds = timeData.seconds,
+ milliseconds = timeData.milliseconds;
+ if (format.indexOf('DD') === -1) {
+ hours += days * 24;
+ } else {
+ format = format.replace('DD', padZero(days));
+ }
+ if (format.indexOf('HH') === -1) {
+ minutes += hours * 60;
+ } else {
+ format = format.replace('HH', padZero(hours));
+ }
+ if (format.indexOf('mm') === -1) {
+ seconds += minutes * 60;
+ } else {
+ format = format.replace('mm', padZero(minutes));
+ }
+ if (format.indexOf('ss') === -1) {
+ milliseconds += seconds * 1000;
+ } else {
+ format = format.replace('ss', padZero(seconds));
+ }
+ return format.replace('SSS', padZero(milliseconds, 3));
+}
+exports.parseFormat = parseFormat;
+function isSameSecond(time1, time2) {
+ return Math.floor(time1 / 1000) === Math.floor(time2 / 1000);
+}
+exports.isSameSecond = isSameSecond;
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/datetime-picker/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/datetime-picker/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..d2e4a03776d620f61298052ad061e19b6f2329af
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/datetime-picker/index.js
@@ -0,0 +1,381 @@
+'use strict';
+var __assign =
+ (this && this.__assign) ||
+ function () {
+ __assign =
+ Object.assign ||
+ function (t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s)
+ if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+ };
+var __spreadArrays =
+ (this && this.__spreadArrays) ||
+ function () {
+ for (var s = 0, i = 0, il = arguments.length; i < il; i++)
+ s += arguments[i].length;
+ for (var r = Array(s), k = 0, i = 0; i < il; i++)
+ for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
+ r[k] = a[j];
+ return r;
+ };
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+var validator_1 = require('../common/validator');
+var shared_1 = require('../picker/shared');
+var currentYear = new Date().getFullYear();
+function isValidDate(date) {
+ return validator_1.isDef(date) && !isNaN(new Date(date).getTime());
+}
+function range(num, min, max) {
+ return Math.min(Math.max(num, min), max);
+}
+function padZero(val) {
+ return ('00' + val).slice(-2);
+}
+function times(n, iteratee) {
+ var index = -1;
+ var result = Array(n < 0 ? 0 : n);
+ while (++index < n) {
+ result[index] = iteratee(index);
+ }
+ return result;
+}
+function getTrueValue(formattedValue) {
+ if (formattedValue === undefined) {
+ formattedValue = '1';
+ }
+ while (isNaN(parseInt(formattedValue, 10))) {
+ formattedValue = formattedValue.slice(1);
+ }
+ return parseInt(formattedValue, 10);
+}
+function getMonthEndDay(year, month) {
+ return 32 - new Date(year, month - 1, 32).getDate();
+}
+var defaultFormatter = function (type, value) {
+ return value;
+};
+component_1.VantComponent({
+ classes: ['active-class', 'toolbar-class', 'column-class'],
+ props: __assign(__assign({}, shared_1.pickerProps), {
+ value: {
+ type: null,
+ observer: 'updateValue',
+ },
+ filter: null,
+ type: {
+ type: String,
+ value: 'datetime',
+ observer: 'updateValue',
+ },
+ showToolbar: {
+ type: Boolean,
+ value: true,
+ },
+ formatter: {
+ type: null,
+ value: defaultFormatter,
+ },
+ minDate: {
+ type: Number,
+ value: new Date(currentYear - 10, 0, 1).getTime(),
+ observer: 'updateValue',
+ },
+ maxDate: {
+ type: Number,
+ value: new Date(currentYear + 10, 11, 31).getTime(),
+ observer: 'updateValue',
+ },
+ minHour: {
+ type: Number,
+ value: 0,
+ observer: 'updateValue',
+ },
+ maxHour: {
+ type: Number,
+ value: 23,
+ observer: 'updateValue',
+ },
+ minMinute: {
+ type: Number,
+ value: 0,
+ observer: 'updateValue',
+ },
+ maxMinute: {
+ type: Number,
+ value: 59,
+ observer: 'updateValue',
+ },
+ }),
+ data: {
+ innerValue: Date.now(),
+ columns: [],
+ },
+ methods: {
+ updateValue: function () {
+ var _this = this;
+ var data = this.data;
+ var val = this.correctValue(data.value);
+ var isEqual = val === data.innerValue;
+ if (!isEqual) {
+ this.updateColumnValue(val).then(function () {
+ _this.$emit('input', val);
+ });
+ } else {
+ this.updateColumns();
+ }
+ },
+ getPicker: function () {
+ if (this.picker == null) {
+ this.picker = this.selectComponent('.van-datetime-picker');
+ var picker_1 = this.picker;
+ var setColumnValues_1 = picker_1.setColumnValues;
+ picker_1.setColumnValues = function () {
+ var args = [];
+ for (var _i = 0; _i < arguments.length; _i++) {
+ args[_i] = arguments[_i];
+ }
+ return setColumnValues_1.apply(
+ picker_1,
+ __spreadArrays(args, [false])
+ );
+ };
+ }
+ return this.picker;
+ },
+ updateColumns: function () {
+ var _a = this.data.formatter,
+ formatter = _a === void 0 ? defaultFormatter : _a;
+ var results = this.getOriginColumns().map(function (column) {
+ return {
+ values: column.values.map(function (value) {
+ return formatter(column.type, value);
+ }),
+ };
+ });
+ return this.set({ columns: results });
+ },
+ getOriginColumns: function () {
+ var filter = this.data.filter;
+ var results = this.getRanges().map(function (_a) {
+ var type = _a.type,
+ range = _a.range;
+ var values = times(range[1] - range[0] + 1, function (index) {
+ var value = range[0] + index;
+ value = type === 'year' ? '' + value : padZero(value);
+ return value;
+ });
+ if (filter) {
+ values = filter(type, values);
+ }
+ return { type: type, values: values };
+ });
+ return results;
+ },
+ getRanges: function () {
+ var data = this.data;
+ if (data.type === 'time') {
+ return [
+ {
+ type: 'hour',
+ range: [data.minHour, data.maxHour],
+ },
+ {
+ type: 'minute',
+ range: [data.minMinute, data.maxMinute],
+ },
+ ];
+ }
+ var _a = this.getBoundary('max', data.innerValue),
+ maxYear = _a.maxYear,
+ maxDate = _a.maxDate,
+ maxMonth = _a.maxMonth,
+ maxHour = _a.maxHour,
+ maxMinute = _a.maxMinute;
+ var _b = this.getBoundary('min', data.innerValue),
+ minYear = _b.minYear,
+ minDate = _b.minDate,
+ minMonth = _b.minMonth,
+ minHour = _b.minHour,
+ minMinute = _b.minMinute;
+ var result = [
+ {
+ type: 'year',
+ range: [minYear, maxYear],
+ },
+ {
+ type: 'month',
+ range: [minMonth, maxMonth],
+ },
+ {
+ type: 'day',
+ range: [minDate, maxDate],
+ },
+ {
+ type: 'hour',
+ range: [minHour, maxHour],
+ },
+ {
+ type: 'minute',
+ range: [minMinute, maxMinute],
+ },
+ ];
+ if (data.type === 'date') result.splice(3, 2);
+ if (data.type === 'year-month') result.splice(2, 3);
+ return result;
+ },
+ correctValue: function (value) {
+ var data = this.data;
+ // validate value
+ var isDateType = data.type !== 'time';
+ if (isDateType && !isValidDate(value)) {
+ value = data.minDate;
+ } else if (!isDateType && !value) {
+ var minHour = data.minHour;
+ value = padZero(minHour) + ':00';
+ }
+ // time type
+ if (!isDateType) {
+ var _a = value.split(':'),
+ hour = _a[0],
+ minute = _a[1];
+ hour = padZero(range(hour, data.minHour, data.maxHour));
+ minute = padZero(range(minute, data.minMinute, data.maxMinute));
+ return hour + ':' + minute;
+ }
+ // date type
+ value = Math.max(value, data.minDate);
+ value = Math.min(value, data.maxDate);
+ return value;
+ },
+ getBoundary: function (type, innerValue) {
+ var _a;
+ var value = new Date(innerValue);
+ var boundary = new Date(this.data[type + 'Date']);
+ var year = boundary.getFullYear();
+ var month = 1;
+ var date = 1;
+ var hour = 0;
+ var minute = 0;
+ if (type === 'max') {
+ month = 12;
+ date = getMonthEndDay(value.getFullYear(), value.getMonth() + 1);
+ hour = 23;
+ minute = 59;
+ }
+ if (value.getFullYear() === year) {
+ month = boundary.getMonth() + 1;
+ if (value.getMonth() + 1 === month) {
+ date = boundary.getDate();
+ if (value.getDate() === date) {
+ hour = boundary.getHours();
+ if (value.getHours() === hour) {
+ minute = boundary.getMinutes();
+ }
+ }
+ }
+ }
+ return (
+ (_a = {}),
+ (_a[type + 'Year'] = year),
+ (_a[type + 'Month'] = month),
+ (_a[type + 'Date'] = date),
+ (_a[type + 'Hour'] = hour),
+ (_a[type + 'Minute'] = minute),
+ _a
+ );
+ },
+ onCancel: function () {
+ this.$emit('cancel');
+ },
+ onConfirm: function () {
+ this.$emit('confirm', this.data.innerValue);
+ },
+ onChange: function () {
+ var _this = this;
+ var data = this.data;
+ var value;
+ var picker = this.getPicker();
+ var originColumns = this.getOriginColumns();
+ if (data.type === 'time') {
+ var indexes = picker.getIndexes();
+ value =
+ +originColumns[0].values[indexes[0]] +
+ ':' +
+ +originColumns[1].values[indexes[1]];
+ } else {
+ var indexes = picker.getIndexes();
+ var values = indexes.map(function (value, index) {
+ return originColumns[index].values[value];
+ });
+ var year = getTrueValue(values[0]);
+ var month = getTrueValue(values[1]);
+ var maxDate = getMonthEndDay(year, month);
+ var date = getTrueValue(values[2]);
+ if (data.type === 'year-month') {
+ date = 1;
+ }
+ date = date > maxDate ? maxDate : date;
+ var hour = 0;
+ var minute = 0;
+ if (data.type === 'datetime') {
+ hour = getTrueValue(values[3]);
+ minute = getTrueValue(values[4]);
+ }
+ value = new Date(year, month - 1, date, hour, minute);
+ }
+ value = this.correctValue(value);
+ this.updateColumnValue(value).then(function () {
+ _this.$emit('input', value);
+ _this.$emit('change', picker);
+ });
+ },
+ updateColumnValue: function (value) {
+ var _this = this;
+ var values = [];
+ var type = this.data.type;
+ var formatter = this.data.formatter || defaultFormatter;
+ var picker = this.getPicker();
+ if (type === 'time') {
+ var pair = value.split(':');
+ values = [formatter('hour', pair[0]), formatter('minute', pair[1])];
+ } else {
+ var date = new Date(value);
+ values = [
+ formatter('year', '' + date.getFullYear()),
+ formatter('month', padZero(date.getMonth() + 1)),
+ ];
+ if (type === 'date') {
+ values.push(formatter('day', padZero(date.getDate())));
+ }
+ if (type === 'datetime') {
+ values.push(
+ formatter('day', padZero(date.getDate())),
+ formatter('hour', padZero(date.getHours())),
+ formatter('minute', padZero(date.getMinutes()))
+ );
+ }
+ }
+ return this.set({ innerValue: value })
+ .then(function () {
+ return _this.updateColumns();
+ })
+ .then(function () {
+ return picker.setValues(values);
+ });
+ },
+ },
+ created: function () {
+ var _this = this;
+ var innerValue = this.correctValue(this.data.value);
+ this.updateColumnValue(innerValue).then(function () {
+ _this.$emit('input', innerValue);
+ });
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/datetime-picker/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/datetime-picker/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..9176008a698d51dccffe6d7e89c018fcb3ea3a94
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/datetime-picker/index.json
@@ -0,0 +1,6 @@
+{
+ "component": true,
+ "usingComponents": {
+ "van-picker": "../picker/index"
+ }
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/datetime-picker/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/datetime-picker/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..33659f2e902e0feabef6b14011ade4e3e4f2c17f
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/datetime-picker/index.wxml
@@ -0,0 +1,16 @@
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/datetime-picker/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/datetime-picker/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..99694d603361421fe8f1acfc76a09eae443cb3aa
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/datetime-picker/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/definitions/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/definitions/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..ce03781e221944df94f81c1abe468aadc42e2599
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/definitions/index.js
@@ -0,0 +1,2 @@
+"use strict";
+Object.defineProperty(exports, "__esModule", { value: true });
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/dialog/dialog.js b/src/openeuler/miniprogram_npm/@vant/weapp/dialog/dialog.js
new file mode 100644
index 0000000000000000000000000000000000000000..64c5f5f378dd5136da2b89007a4049f2b89f3987
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/dialog/dialog.js
@@ -0,0 +1,104 @@
+'use strict';
+var __assign =
+ (this && this.__assign) ||
+ function () {
+ __assign =
+ Object.assign ||
+ function (t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s)
+ if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+ };
+Object.defineProperty(exports, '__esModule', { value: true });
+var queue = [];
+var defaultOptions = {
+ show: false,
+ title: '',
+ width: null,
+ theme: 'default',
+ message: '',
+ zIndex: 100,
+ overlay: true,
+ selector: '#van-dialog',
+ className: '',
+ asyncClose: false,
+ beforeClose: null,
+ transition: 'scale',
+ customStyle: '',
+ messageAlign: '',
+ overlayStyle: '',
+ confirmButtonText: '确认',
+ cancelButtonText: '取消',
+ showConfirmButton: true,
+ showCancelButton: false,
+ closeOnClickOverlay: false,
+ confirmButtonOpenType: '',
+};
+var currentOptions = __assign({}, defaultOptions);
+function getContext() {
+ var pages = getCurrentPages();
+ return pages[pages.length - 1];
+}
+var Dialog = function (options) {
+ options = __assign(__assign({}, currentOptions), options);
+ return new Promise(function (resolve, reject) {
+ var context = options.context || getContext();
+ var dialog = context.selectComponent(options.selector);
+ delete options.context;
+ delete options.selector;
+ if (dialog) {
+ dialog.setData(
+ __assign(
+ {
+ callback: function (action, instance) {
+ action === 'confirm' ? resolve(instance) : reject(instance);
+ },
+ },
+ options
+ )
+ );
+ wx.nextTick(function () {
+ dialog.setData({ show: true });
+ });
+ queue.push(dialog);
+ } else {
+ console.warn(
+ '未找到 van-dialog 节点,请确认 selector 及 context 是否正确'
+ );
+ }
+ });
+};
+Dialog.alert = function (options) {
+ return Dialog(options);
+};
+Dialog.confirm = function (options) {
+ return Dialog(__assign({ showCancelButton: true }, options));
+};
+Dialog.close = function () {
+ queue.forEach(function (dialog) {
+ dialog.close();
+ });
+ queue = [];
+};
+Dialog.stopLoading = function () {
+ queue.forEach(function (dialog) {
+ dialog.stopLoading();
+ });
+};
+Dialog.currentOptions = currentOptions;
+Dialog.defaultOptions = defaultOptions;
+Dialog.setDefaultOptions = function (options) {
+ currentOptions = __assign(__assign({}, currentOptions), options);
+ Dialog.currentOptions = currentOptions;
+};
+Dialog.resetDefaultOptions = function () {
+ currentOptions = __assign({}, defaultOptions);
+ Dialog.currentOptions = currentOptions;
+};
+Dialog.resetDefaultOptions();
+exports.default = Dialog;
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/dialog/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/dialog/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..3f26daab9a67016555a9d863fe6f544f00044ffa
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/dialog/index.js
@@ -0,0 +1,127 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+var button_1 = require('../mixins/button');
+var open_type_1 = require('../mixins/open-type');
+var color_1 = require('../common/color');
+var utils_1 = require('../common/utils');
+component_1.VantComponent({
+ mixins: [button_1.button, open_type_1.openType],
+ props: {
+ show: {
+ type: Boolean,
+ observer: function (show) {
+ !show && this.stopLoading();
+ },
+ },
+ title: String,
+ message: String,
+ theme: {
+ type: String,
+ value: 'default',
+ },
+ useSlot: Boolean,
+ className: String,
+ customStyle: String,
+ asyncClose: Boolean,
+ messageAlign: String,
+ beforeClose: null,
+ overlayStyle: String,
+ useTitleSlot: Boolean,
+ showCancelButton: Boolean,
+ closeOnClickOverlay: Boolean,
+ confirmButtonOpenType: String,
+ width: null,
+ zIndex: {
+ type: Number,
+ value: 2000,
+ },
+ confirmButtonText: {
+ type: String,
+ value: '确认',
+ },
+ cancelButtonText: {
+ type: String,
+ value: '取消',
+ },
+ confirmButtonColor: {
+ type: String,
+ value: color_1.RED,
+ },
+ cancelButtonColor: {
+ type: String,
+ value: color_1.GRAY,
+ },
+ showConfirmButton: {
+ type: Boolean,
+ value: true,
+ },
+ overlay: {
+ type: Boolean,
+ value: true,
+ },
+ transition: {
+ type: String,
+ value: 'scale',
+ },
+ },
+ data: {
+ loading: {
+ confirm: false,
+ cancel: false,
+ },
+ callback: function () {},
+ },
+ methods: {
+ onConfirm: function () {
+ this.handleAction('confirm');
+ },
+ onCancel: function () {
+ this.handleAction('cancel');
+ },
+ onClickOverlay: function () {
+ this.close('overlay');
+ },
+ close: function (action) {
+ var _this = this;
+ this.setData({ show: false });
+ wx.nextTick(function () {
+ _this.$emit('close', action);
+ var callback = _this.data.callback;
+ if (callback) {
+ callback(action, _this);
+ }
+ });
+ },
+ stopLoading: function () {
+ this.setData({
+ loading: {
+ confirm: false,
+ cancel: false,
+ },
+ });
+ },
+ handleAction: function (action) {
+ var _a;
+ var _this = this;
+ this.$emit(action, { dialog: this });
+ var _b = this.data,
+ asyncClose = _b.asyncClose,
+ beforeClose = _b.beforeClose;
+ if (!asyncClose && !beforeClose) {
+ this.close(action);
+ return;
+ }
+ this.setData(((_a = {}), (_a['loading.' + action] = true), _a));
+ if (beforeClose) {
+ utils_1.toPromise(beforeClose(action)).then(function (value) {
+ if (value) {
+ _this.close(action);
+ } else {
+ _this.stopLoading();
+ }
+ });
+ }
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/dialog/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/dialog/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..d45a906d16bae75c4cfbe25a6d9ae0406a3276cb
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/dialog/index.json
@@ -0,0 +1,9 @@
+{
+ "component": true,
+ "usingComponents": {
+ "van-popup": "../popup/index",
+ "van-button": "../button/index",
+ "van-goods-action": "../goods-action/index",
+ "van-goods-action-button": "../goods-action-button/index"
+ }
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/dialog/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/dialog/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..886d471018c8ee754d470747fa05fe265d885e3f
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/dialog/index.wxml
@@ -0,0 +1,113 @@
+
+
+
+
+
+
+
+ {{ message }}
+
+
+
+
+ {{ cancelButtonText }}
+
+
+ {{ confirmButtonText }}
+
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/dialog/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/dialog/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..c6bac95745e625478d4203d82168e6e7f4f6bbf0
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/dialog/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-dialog{top:45%!important;overflow:hidden;width:320px;width:var(--dialog-width,320px);font-size:16px;font-size:var(--dialog-font-size,16px);border-radius:16px;border-radius:var(--dialog-border-radius,16px);background-color:#fff;background-color:var(--dialog-background-color,#fff)}@media (max-width:321px){.van-dialog{width:90%;width:var(--dialog-small-screen-width,90%)}}.van-dialog__header{text-align:center;padding-top:24px;padding-top:var(--dialog-header-padding-top,24px);font-weight:500;font-weight:var(--dialog-header-font-weight,500);line-height:24px;line-height:var(--dialog-header-line-height,24px)}.van-dialog__header--isolated{padding:24px 0;padding:var(--dialog-header-isolated-padding,24px 0)}.van-dialog__message{overflow-y:auto;text-align:center;-webkit-overflow-scrolling:touch;font-size:14px;font-size:var(--dialog-message-font-size,14px);line-height:20px;line-height:var(--dialog-message-line-height,20px);max-height:60vh;max-height:var(--dialog-message-max-height,60vh);padding:24px;padding:var(--dialog-message-padding,24px)}.van-dialog__message-text{word-wrap:break-word}.van-dialog__message--hasTitle{padding-top:8px;padding-top:var(--dialog-has-title-message-padding-top,8px);color:#646566;color:var(--dialog-has-title-message-text-color,#646566)}.van-dialog__message--round-button{padding-bottom:16px;color:#323233}.van-dialog__message--left{text-align:left}.van-dialog__message--right{text-align:right}.van-dialog__footer{display:-webkit-flex;display:flex}.van-dialog__footer--round-button{position:relative!important;padding:8px 24px 16px!important}.van-dialog__button{-webkit-flex:1;flex:1}.van-dialog__cancel,.van-dialog__confirm{border:0!important}.van-dialog-bounce-enter{-webkit-transform:translate3d(-50%,-50%,0) scale(.7);transform:translate3d(-50%,-50%,0) scale(.7);opacity:0}.van-dialog-bounce-leave-active{-webkit-transform:translate3d(-50%,-50%,0) scale(.9);transform:translate3d(-50%,-50%,0) scale(.9);opacity:0}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/divider/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/divider/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..d039925e878270342cbde27d534f232c4afdd604
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/divider/index.js
@@ -0,0 +1,14 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+component_1.VantComponent({
+ props: {
+ dashed: Boolean,
+ hairline: Boolean,
+ contentPosition: String,
+ fontSize: String,
+ borderColor: String,
+ textColor: String,
+ customStyle: String,
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/divider/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/divider/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..f71941163b8dc6bf6ccd68ed33b662fdf6c9b725
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/divider/index.json
@@ -0,0 +1,4 @@
+{
+ "component": true,
+ "usingComponents": {}
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/divider/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/divider/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..45e267e213b7e02ed6981a553f36658116877fb5
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/divider/index.wxml
@@ -0,0 +1,9 @@
+
+
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/divider/index.wxs b/src/openeuler/miniprogram_npm/@vant/weapp/divider/index.wxs
new file mode 100644
index 0000000000000000000000000000000000000000..6ecf3c4722e5c4b3c115b4f8df2bb8c0e2badc20
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/divider/index.wxs
@@ -0,0 +1,18 @@
+/* eslint-disable */
+var style = require('../wxs/style.wxs');
+var addUnit = require('../wxs/add-unit.wxs');
+
+function rootStyle(data) {
+ return style([
+ {
+ 'border-color': data.borderColor,
+ color: data.textColor,
+ 'font-size': addUnit(data.fontSize),
+ },
+ data.customStyle,
+ ]);
+}
+
+module.exports = {
+ rootStyle: rootStyle,
+};
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/divider/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/divider/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..c055e3af96b3f03d78fefbcc8405efa234bcc84b
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/divider/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-divider{display:-webkit-flex;display:flex;-webkit-align-items:center;align-items:center;margin:16px 0;margin:var(--divider-margin,16px 0);color:#969799;color:var(--divider-text-color,#969799);font-size:14px;font-size:var(--divider-font-size,14px);line-height:24px;line-height:var(--divider-line-height,24px);border:0 solid #ebedf0;border-color:var(--divider-border-color,#ebedf0)}.van-divider:after,.van-divider:before{display:block;-webkit-flex:1;flex:1;box-sizing:border-box;height:1px;border-color:inherit;border-style:inherit;border-width:1px 0 0}.van-divider:before{content:""}.van-divider--hairline:after,.van-divider--hairline:before{-webkit-transform:scaleY(.5);transform:scaleY(.5)}.van-divider--dashed{border-style:dashed}.van-divider--center:before,.van-divider--left:before,.van-divider--right:before{margin-right:16px;margin-right:var(--divider-content-padding,16px)}.van-divider--center:after,.van-divider--left:after,.van-divider--right:after{content:"";margin-left:16px;margin-left:var(--divider-content-padding,16px)}.van-divider--left:before{max-width:10%;max-width:var(--divider-content-left-width,10%)}.van-divider--right:after{max-width:10%;max-width:var(--divider-content-right-width,10%)}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/dropdown-item/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/dropdown-item/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..b97d1d9c8af7a18168774563b53062a7084dc5b6
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/dropdown-item/index.js
@@ -0,0 +1,117 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var relation_1 = require('../common/relation');
+var component_1 = require('../common/component');
+component_1.VantComponent({
+ field: true,
+ relation: relation_1.useParent('dropdown-menu', function () {
+ this.updateDataFromParent();
+ }),
+ props: {
+ value: {
+ type: null,
+ observer: 'rerender',
+ },
+ title: {
+ type: String,
+ observer: 'rerender',
+ },
+ disabled: Boolean,
+ titleClass: {
+ type: String,
+ observer: 'rerender',
+ },
+ options: {
+ type: Array,
+ value: [],
+ observer: 'rerender',
+ },
+ popupStyle: String,
+ },
+ data: {
+ transition: true,
+ showPopup: false,
+ showWrapper: false,
+ displayTitle: '',
+ },
+ methods: {
+ rerender: function () {
+ var _this = this;
+ wx.nextTick(function () {
+ var _a;
+ (_a = _this.parent) === null || _a === void 0
+ ? void 0
+ : _a.updateItemListData();
+ });
+ },
+ updateDataFromParent: function () {
+ if (this.parent) {
+ var _a = this.parent.data,
+ overlay = _a.overlay,
+ duration = _a.duration,
+ activeColor = _a.activeColor,
+ closeOnClickOverlay = _a.closeOnClickOverlay,
+ direction = _a.direction;
+ this.setData({
+ overlay: overlay,
+ duration: duration,
+ activeColor: activeColor,
+ closeOnClickOverlay: closeOnClickOverlay,
+ direction: direction,
+ });
+ }
+ },
+ onOpen: function () {
+ this.$emit('open');
+ },
+ onOpened: function () {
+ this.$emit('opened');
+ },
+ onClose: function () {
+ this.$emit('close');
+ },
+ onClosed: function () {
+ this.$emit('closed');
+ this.setData({ showWrapper: false });
+ },
+ onOptionTap: function (event) {
+ var option = event.currentTarget.dataset.option;
+ var value = option.value;
+ var shouldEmitChange = this.data.value !== value;
+ this.setData({ showPopup: false, value: value });
+ this.$emit('close');
+ this.rerender();
+ if (shouldEmitChange) {
+ this.$emit('change', value);
+ }
+ },
+ toggle: function (show, options) {
+ var _this = this;
+ var _a;
+ if (options === void 0) {
+ options = {};
+ }
+ var showPopup = this.data.showPopup;
+ if (typeof show !== 'boolean') {
+ show = !showPopup;
+ }
+ if (show === showPopup) {
+ return;
+ }
+ this.setData({
+ transition: !options.immediate,
+ showPopup: show,
+ });
+ if (show) {
+ (_a = this.parent) === null || _a === void 0
+ ? void 0
+ : _a.getChildWrapperStyle().then(function (wrapperStyle) {
+ _this.setData({ wrapperStyle: wrapperStyle, showWrapper: true });
+ _this.rerender();
+ });
+ } else {
+ this.rerender();
+ }
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/dropdown-item/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/dropdown-item/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..b30d74be9bb3648d9710fd814ad7058e9c4b09d1
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/dropdown-item/index.json
@@ -0,0 +1,8 @@
+{
+ "component": true,
+ "usingComponents": {
+ "van-popup": "../popup/index",
+ "van-cell": "../cell/index",
+ "van-icon": "../icon/index"
+ }
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/dropdown-item/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/dropdown-item/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..f09727670adf14a988e9c92b36af22c2ebaa1495
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/dropdown-item/index.wxml
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+ {{ item.text }}
+
+
+
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/dropdown-item/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/dropdown-item/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..7cab3f28a7de958bc08be86cb2012f7a2076eb3e
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/dropdown-item/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-dropdown-item{position:fixed;right:0;left:0;overflow:hidden}.van-dropdown-item__option{text-align:left}.van-dropdown-item__option--active .van-dropdown-item__icon,.van-dropdown-item__option--active .van-dropdown-item__title{color:#ee0a24;color:var(--dropdown-menu-option-active-color,#ee0a24)}.van-dropdown-item--up{top:0}.van-dropdown-item--down{bottom:0}.van-dropdown-item__icon{display:block;line-height:inherit}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/dropdown-item/shared.js b/src/openeuler/miniprogram_npm/@vant/weapp/dropdown-item/shared.js
new file mode 100644
index 0000000000000000000000000000000000000000..b02af38ed8e9883ec026b8a465e4eb3b069ba683
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/dropdown-item/shared.js
@@ -0,0 +1,2 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/dropdown-menu/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/dropdown-menu/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..98c9eb56bda878aa90530ff28b238273bb11ab62
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/dropdown-menu/index.js
@@ -0,0 +1,126 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+var relation_1 = require('../common/relation');
+var utils_1 = require('../common/utils');
+var ARRAY = [];
+component_1.VantComponent({
+ field: true,
+ relation: relation_1.useChildren('dropdown-item', function () {
+ this.updateItemListData();
+ }),
+ props: {
+ activeColor: {
+ type: String,
+ observer: 'updateChildrenData',
+ },
+ overlay: {
+ type: Boolean,
+ value: true,
+ observer: 'updateChildrenData',
+ },
+ zIndex: {
+ type: Number,
+ value: 10,
+ },
+ duration: {
+ type: Number,
+ value: 200,
+ observer: 'updateChildrenData',
+ },
+ direction: {
+ type: String,
+ value: 'down',
+ observer: 'updateChildrenData',
+ },
+ closeOnClickOverlay: {
+ type: Boolean,
+ value: true,
+ observer: 'updateChildrenData',
+ },
+ closeOnClickOutside: {
+ type: Boolean,
+ value: true,
+ },
+ },
+ data: {
+ itemListData: [],
+ },
+ beforeCreate: function () {
+ var windowHeight = utils_1.getSystemInfoSync().windowHeight;
+ this.windowHeight = windowHeight;
+ ARRAY.push(this);
+ },
+ destroyed: function () {
+ var _this = this;
+ ARRAY = ARRAY.filter(function (item) {
+ return item !== _this;
+ });
+ },
+ methods: {
+ updateItemListData: function () {
+ this.setData({
+ itemListData: this.children.map(function (child) {
+ return child.data;
+ }),
+ });
+ },
+ updateChildrenData: function () {
+ this.children.forEach(function (child) {
+ child.updateDataFromParent();
+ });
+ },
+ toggleItem: function (active) {
+ this.children.forEach(function (item, index) {
+ var showPopup = item.data.showPopup;
+ if (index === active) {
+ item.toggle();
+ } else if (showPopup) {
+ item.toggle(false, { immediate: true });
+ }
+ });
+ },
+ close: function () {
+ this.children.forEach(function (child) {
+ child.toggle(false, { immediate: true });
+ });
+ },
+ getChildWrapperStyle: function () {
+ var _this = this;
+ var _a = this.data,
+ zIndex = _a.zIndex,
+ direction = _a.direction;
+ return utils_1.getRect(this, '.van-dropdown-menu').then(function (rect) {
+ var _a = rect.top,
+ top = _a === void 0 ? 0 : _a,
+ _b = rect.bottom,
+ bottom = _b === void 0 ? 0 : _b;
+ var offset = direction === 'down' ? bottom : _this.windowHeight - top;
+ var wrapperStyle = 'z-index: ' + zIndex + ';';
+ if (direction === 'down') {
+ wrapperStyle += 'top: ' + utils_1.addUnit(offset) + ';';
+ } else {
+ wrapperStyle += 'bottom: ' + utils_1.addUnit(offset) + ';';
+ }
+ return wrapperStyle;
+ });
+ },
+ onTitleTap: function (event) {
+ var _this = this;
+ var index = event.currentTarget.dataset.index;
+ var child = this.children[index];
+ if (!child.data.disabled) {
+ ARRAY.forEach(function (menuItem) {
+ if (
+ menuItem &&
+ menuItem.data.closeOnClickOutside &&
+ menuItem !== _this
+ ) {
+ menuItem.close();
+ }
+ });
+ this.toggleItem(index);
+ }
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/dropdown-menu/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/dropdown-menu/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..efdc3c823a323c17832b921a6bccbcd398609183
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/dropdown-menu/index.json
@@ -0,0 +1,3 @@
+{
+ "component": true
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/dropdown-menu/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/dropdown-menu/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..2d3451fc06e8f2000393453ee3fce944a50e134f
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/dropdown-menu/index.wxml
@@ -0,0 +1,23 @@
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/dropdown-menu/index.wxs b/src/openeuler/miniprogram_npm/@vant/weapp/dropdown-menu/index.wxs
new file mode 100644
index 0000000000000000000000000000000000000000..ffa262f144e3191b7f2d6aaf5c0d9b68636ca298
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/dropdown-menu/index.wxs
@@ -0,0 +1,16 @@
+/* eslint-disable */
+function displayTitle(item) {
+ if (item.title) {
+ return item.title;
+ }
+
+ var match = item.options.filter(function(option) {
+ return option.value === item.value;
+ });
+ var displayTitle = match.length ? match[0].text : '';
+ return displayTitle;
+}
+
+module.exports = {
+ displayTitle: displayTitle
+};
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/dropdown-menu/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/dropdown-menu/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..ec6caff634f767b19e169b2a74d8434bb512fa48
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/dropdown-menu/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-dropdown-menu{display:-webkit-flex;display:flex;box-shadow:0 2px 12px rgba(100,101,102,.12);-webkit-user-select:none;user-select:none;height:50px;height:var(--dropdown-menu-height,50px);background-color:#fff;background-color:var(--dropdown-menu-background-color,#fff)}.van-dropdown-menu__item{display:-webkit-flex;display:flex;-webkit-flex:1;flex:1;-webkit-align-items:center;align-items:center;-webkit-justify-content:center;justify-content:center;min-width:0}.van-dropdown-menu__item:active{opacity:.7}.van-dropdown-menu__item--disabled:active{opacity:1}.van-dropdown-menu__item--disabled .van-dropdown-menu__title{color:#969799;color:var(--dropdown-menu-title-disabled-text-color,#969799)}.van-dropdown-menu__title{position:relative;box-sizing:border-box;max-width:100%;padding:0 8px;padding:var(--dropdown-menu-title-padding,0 8px);color:#323233;color:var(--dropdown-menu-title-text-color,#323233);font-size:15px;font-size:var(--dropdown-menu-title-font-size,15px);line-height:18px;line-height:var(--dropdown-menu-title-line-height,18px)}.van-dropdown-menu__title:after{position:absolute;top:50%;right:-4px;margin-top:-5px;border-color:transparent transparent currentcolor currentcolor;border-style:solid;border-width:3px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);opacity:.8;content:""}.van-dropdown-menu__title--active{color:#ee0a24;color:var(--dropdown-menu-title-active-text-color,#ee0a24)}.van-dropdown-menu__title--down:after{margin-top:-1px;-webkit-transform:rotate(135deg);transform:rotate(135deg)}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/empty/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/empty/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..fa0bac93e10634aedbe308461298dd7ede08705c
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/empty/index.js
@@ -0,0 +1,12 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+component_1.VantComponent({
+ props: {
+ description: String,
+ image: {
+ type: String,
+ value: 'default',
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/empty/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/empty/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..011372eb4664a095246f98b09f2373710d11a4d7
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/empty/index.json
@@ -0,0 +1,4 @@
+{
+ "component": true,
+ "usingComponents": {}
+}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/empty/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/empty/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..75f6788e4cd5b85e923811514f95ffe35195832d
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/empty/index.wxml
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ description }}
+
+
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/empty/index.wxs b/src/openeuler/miniprogram_npm/@vant/weapp/empty/index.wxs
new file mode 100644
index 0000000000000000000000000000000000000000..b7089d665f2b44b35a1d8ade9fb4c4e037c07aa7
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/empty/index.wxs
@@ -0,0 +1,14 @@
+/* eslint-disable */
+var PRESETS = ['error', 'search', 'default', 'network'];
+
+function imageUrl(image) {
+ if (PRESETS.indexOf(image) !== -1) {
+ return 'https://img.yzcdn.cn/vant/empty-image-' + image + '.png';
+ }
+
+ return image;
+}
+
+module.exports = {
+ imageUrl: imageUrl,
+};
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/empty/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/empty/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..aeb9d4b1506b5b2f37a288b8d5f41e6d209dbb92
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/empty/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-empty{display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column;-webkit-align-items:center;align-items:center;-webkit-justify-content:center;justify-content:center;box-sizing:border-box;padding:32px 0}.van-empty__image{width:160px;height:160px}.van-empty__image:empty{display:none}.van-empty__image__img{width:100%;height:100%}.van-empty__image:not(:empty)+.van-empty__image{display:none}.van-empty__description{margin-top:16px;padding:0 60px;color:#969799;font-size:14px;line-height:20px}.van-empty__description:empty,.van-empty__description:not(:empty)+.van-empty__description{display:none}.van-empty__bottom{margin-top:24px}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/field/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/field/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..b2ea182357219d7860b3074241eae313f4b149f8
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/field/index.js
@@ -0,0 +1,151 @@
+'use strict';
+var __assign =
+ (this && this.__assign) ||
+ function () {
+ __assign =
+ Object.assign ||
+ function (t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s)
+ if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+ };
+Object.defineProperty(exports, '__esModule', { value: true });
+var utils_1 = require('../common/utils');
+var component_1 = require('../common/component');
+var props_1 = require('./props');
+component_1.VantComponent({
+ field: true,
+ classes: ['input-class', 'right-icon-class', 'label-class'],
+ props: __assign(
+ __assign(
+ __assign(__assign({}, props_1.commonProps), props_1.inputProps),
+ props_1.textareaProps
+ ),
+ {
+ size: String,
+ icon: String,
+ label: String,
+ error: Boolean,
+ center: Boolean,
+ isLink: Boolean,
+ leftIcon: String,
+ rightIcon: String,
+ autosize: null,
+ required: Boolean,
+ iconClass: String,
+ clickable: Boolean,
+ inputAlign: String,
+ customStyle: String,
+ errorMessage: String,
+ arrowDirection: String,
+ showWordLimit: Boolean,
+ errorMessageAlign: String,
+ readonly: {
+ type: Boolean,
+ observer: 'setShowClear',
+ },
+ clearable: {
+ type: Boolean,
+ observer: 'setShowClear',
+ },
+ border: {
+ type: Boolean,
+ value: true,
+ },
+ titleWidth: {
+ type: String,
+ value: '6.2em',
+ },
+ }
+ ),
+ data: {
+ focused: false,
+ innerValue: '',
+ showClear: false,
+ },
+ created: function () {
+ this.value = this.data.value;
+ this.setData({ innerValue: this.value });
+ },
+ methods: {
+ onInput: function (event) {
+ var _a = (event.detail || {}).value,
+ value = _a === void 0 ? '' : _a;
+ this.value = value;
+ this.setShowClear();
+ this.emitChange();
+ },
+ onFocus: function (event) {
+ this.focused = true;
+ this.setShowClear();
+ this.$emit('focus', event.detail);
+ },
+ onBlur: function (event) {
+ this.focused = false;
+ this.setShowClear();
+ this.$emit('blur', event.detail);
+ },
+ onClickIcon: function () {
+ this.$emit('click-icon');
+ },
+ onClickInput: function (event) {
+ this.$emit('click-input', event.detail);
+ },
+ onClear: function () {
+ var _this = this;
+ this.setData({ innerValue: '' });
+ this.value = '';
+ this.setShowClear();
+ utils_1.nextTick(function () {
+ _this.emitChange();
+ _this.$emit('clear', '');
+ });
+ },
+ onConfirm: function (event) {
+ var _a = (event.detail || {}).value,
+ value = _a === void 0 ? '' : _a;
+ this.value = value;
+ this.setShowClear();
+ this.$emit('confirm', value);
+ },
+ setValue: function (value) {
+ this.value = value;
+ this.setShowClear();
+ if (value === '') {
+ this.setData({ innerValue: '' });
+ }
+ this.emitChange();
+ },
+ onLineChange: function (event) {
+ this.$emit('linechange', event.detail);
+ },
+ onKeyboardHeightChange: function (event) {
+ this.$emit('keyboardheightchange', event.detail);
+ },
+ emitChange: function () {
+ var _this = this;
+ this.setData({ value: this.value });
+ utils_1.nextTick(function () {
+ _this.$emit('input', _this.value);
+ _this.$emit('change', _this.value);
+ });
+ },
+ setShowClear: function () {
+ var _a = this.data,
+ clearable = _a.clearable,
+ readonly = _a.readonly;
+ var _b = this,
+ focused = _b.focused,
+ value = _b.value;
+ this.setData({
+ showClear: !!clearable && !!focused && !!value && !readonly,
+ });
+ },
+ noop: function () {},
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/field/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/field/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..2c5d25e5a9fce2ef87ff76d00cb10b109a200aac
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/field/index.json
@@ -0,0 +1,7 @@
+{
+ "component": true,
+ "usingComponents": {
+ "van-cell": "../cell/index",
+ "van-icon": "../icon/index"
+ }
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/field/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/field/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..d40e8506011205e7ef6e1e0c7506b44215c17811
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/field/index.wxml
@@ -0,0 +1,56 @@
+
+
+
+
+
+
+ {{ label }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ value.length >= maxlength ? maxlength : value.length }}/{{ maxlength }}
+
+
+ {{ errorMessage }}
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/field/index.wxs b/src/openeuler/miniprogram_npm/@vant/weapp/field/index.wxs
new file mode 100644
index 0000000000000000000000000000000000000000..6b90dd2c9a5bea346ef94b64fe2d02746f6c8bac
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/field/index.wxs
@@ -0,0 +1,18 @@
+/* eslint-disable */
+var style = require('../wxs/style.wxs');
+var addUnit = require('../wxs/add-unit.wxs');
+
+function inputStyle(autosize) {
+ if (autosize && autosize.constructor === 'Object') {
+ return style({
+ 'min-height': addUnit(autosize.minHeight),
+ 'max-height': addUnit(autosize.maxHeight),
+ });
+ }
+
+ return '';
+}
+
+module.exports = {
+ inputStyle: inputStyle,
+};
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/field/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/field/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..171f6133ee799d41f6454361fa4b9a37674cc70b
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/field/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-field{--cell-icon-size:16px;--cell-icon-size:var(--field-icon-size,16px)}.van-field__label{color:#646566;color:var(--field-label-color,#646566)}.van-field__label--disabled{color:#c8c9cc;color:var(--field-disabled-text-color,#c8c9cc)}.van-field__body{display:-webkit-flex;display:flex;-webkit-align-items:center;align-items:center}.van-field__body--textarea{box-sizing:border-box;padding:3.6px 0;line-height:1.2em;min-height:24px;min-height:var(--cell-line-height,24px)}.van-field__control:empty+.van-field__control{display:block}.van-field__control{position:relative;display:none;box-sizing:border-box;width:100%;margin:0;padding:0;line-height:inherit;text-align:left;background-color:initial;border:0;resize:none;color:#323233;color:var(--field-input-text-color,#323233);height:24px;height:var(--cell-line-height,24px);min-height:24px;min-height:var(--cell-line-height,24px)}.van-field__control:empty{display:none}.van-field__control--textarea{height:18px;height:var(--field-text-area-min-height,18px);min-height:18px;min-height:var(--field-text-area-min-height,18px)}.van-field__control--error{color:#ee0a24;color:var(--field-input-error-text-color,#ee0a24)}.van-field__control--disabled{background-color:initial;opacity:1;color:#c8c9cc;color:var(--field-input-disabled-text-color,#c8c9cc)}.van-field__control--center{text-align:center}.van-field__control--right{text-align:right}.van-field__control--custom{display:-webkit-flex;display:flex;-webkit-align-items:center;align-items:center;min-height:24px;min-height:var(--cell-line-height,24px)}.van-field__placeholder{position:absolute;top:0;right:0;left:0;pointer-events:none;color:#c8c9cc;color:var(--field-placeholder-text-color,#c8c9cc)}.van-field__placeholder--error{color:#ee0a24;color:var(--field-error-message-color,#ee0a24)}.van-field__icon-root{display:-webkit-flex;display:flex;-webkit-align-items:center;align-items:center;min-height:24px;min-height:var(--cell-line-height,24px)}.van-field__clear-root,.van-field__icon-container{line-height:inherit;vertical-align:middle;padding:0 8px;padding:0 var(--padding-xs,8px);margin-right:-8px;margin-right:-var(--padding-xs,8px)}.van-field__button,.van-field__clear-root,.van-field__icon-container{-webkit-flex-shrink:0;flex-shrink:0}.van-field__clear-root{font-size:16px;font-size:var(--field-clear-icon-size,16px);color:#c8c9cc;color:var(--field-clear-icon-color,#c8c9cc)}.van-field__icon-container{font-size:16px;font-size:var(--field-icon-size,16px);color:#969799;color:var(--field-icon-container-color,#969799)}.van-field__icon-container:empty{display:none}.van-field__button{padding-left:8px;padding-left:var(--padding-xs,8px)}.van-field__button:empty{display:none}.van-field__error-message{text-align:left;font-size:12px;font-size:var(--field-error-message-text-font-size,12px);color:#ee0a24;color:var(--field-error-message-color,#ee0a24)}.van-field__error-message--center{text-align:center}.van-field__error-message--right{text-align:right}.van-field__word-limit{text-align:right;margin-top:4px;margin-top:var(--padding-base,4px);color:#646566;color:var(--field-word-limit-color,#646566);font-size:12px;font-size:var(--field-word-limit-font-size,12px);line-height:16px;line-height:var(--field-word-limit-line-height,16px)}.van-field__word-num{display:inline}.van-field__word-num--full{color:#ee0a24;color:var(--field-word-num-full-color,#ee0a24)}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/field/input.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/field/input.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..06680df7406afe1e50e2799f62c0874165a91b80
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/field/input.wxml
@@ -0,0 +1,27 @@
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/field/props.js b/src/openeuler/miniprogram_npm/@vant/weapp/field/props.js
new file mode 100644
index 0000000000000000000000000000000000000000..6de6d6cc655e476f9c0f26a9ff08436911da3aca
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/field/props.js
@@ -0,0 +1,66 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+exports.textareaProps = exports.inputProps = exports.commonProps = void 0;
+exports.commonProps = {
+ value: {
+ type: String,
+ observer: function (value) {
+ if (value !== this.value) {
+ this.setData({ innerValue: value });
+ this.value = value;
+ }
+ },
+ },
+ placeholder: String,
+ placeholderStyle: String,
+ placeholderClass: String,
+ disabled: Boolean,
+ maxlength: {
+ type: Number,
+ value: -1,
+ },
+ cursorSpacing: {
+ type: Number,
+ value: 50,
+ },
+ autoFocus: Boolean,
+ focus: Boolean,
+ cursor: {
+ type: Number,
+ value: -1,
+ },
+ selectionStart: {
+ type: Number,
+ value: -1,
+ },
+ selectionEnd: {
+ type: Number,
+ value: -1,
+ },
+ adjustPosition: {
+ type: Boolean,
+ value: true,
+ },
+ holdKeyboard: Boolean,
+};
+exports.inputProps = {
+ type: {
+ type: String,
+ value: 'text',
+ },
+ password: Boolean,
+ confirmType: String,
+ confirmHold: Boolean,
+};
+exports.textareaProps = {
+ autoHeight: Boolean,
+ fixed: Boolean,
+ showConfirmBar: {
+ type: Boolean,
+ value: true,
+ },
+ disableDefaultPadding: {
+ type: Boolean,
+ value: true,
+ },
+};
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/field/textarea.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/field/textarea.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..cceecb4b55a5b0652993f1b4c623f32c7d369182
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/field/textarea.wxml
@@ -0,0 +1,29 @@
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/goods-action-button/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/goods-action-button/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..9a617b65b7ff7d559c6bc929f20e5411869e339e
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/goods-action-button/index.js
@@ -0,0 +1,40 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+var relation_1 = require('../common/relation');
+var button_1 = require('../mixins/button');
+var link_1 = require('../mixins/link');
+var open_type_1 = require('../mixins/open-type');
+component_1.VantComponent({
+ mixins: [link_1.link, button_1.button, open_type_1.openType],
+ relation: relation_1.useParent('goods-action'),
+ props: {
+ text: String,
+ color: String,
+ loading: Boolean,
+ disabled: Boolean,
+ plain: Boolean,
+ type: {
+ type: String,
+ value: 'danger',
+ },
+ },
+ methods: {
+ onClick: function (event) {
+ this.$emit('click', event.detail);
+ this.jumpLink();
+ },
+ updateStyle: function () {
+ if (this.parent == null) {
+ return;
+ }
+ var index = this.index;
+ var _a = this.parent.children,
+ children = _a === void 0 ? [] : _a;
+ this.setData({
+ isFirst: index === 0,
+ isLast: index === children.length - 1,
+ });
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/goods-action-button/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/goods-action-button/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..79baa710d22ee8c2e5a359a2e50310dcb487c9b4
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/goods-action-button/index.json
@@ -0,0 +1,6 @@
+{
+ "component": true,
+ "usingComponents": {
+ "van-button": "../button/index"
+ }
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/goods-action-button/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/goods-action-button/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..35c69a3017578f58a52fb272efa362a90d98122f
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/goods-action-button/index.wxml
@@ -0,0 +1,30 @@
+
+
+ {{ text }}
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/goods-action-button/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/goods-action-button/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..77d16c6711710bbf12ec70c3e7f68462aff0a2e4
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/goods-action-button/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';:host{-webkit-flex:1;flex:1}.van-goods-action-button{--button-warning-background-color:linear-gradient(90deg,#ffd01e,#ff8917);--button-warning-background-color:var(--goods-action-button-warning-color,linear-gradient(90deg,#ffd01e,#ff8917));--button-danger-background-color:linear-gradient(90deg,#ff6034,#ee0a24);--button-danger-background-color:var(--goods-action-button-danger-color,linear-gradient(90deg,#ff6034,#ee0a24));--button-default-height:40px;--button-default-height:var(--goods-action-button-height,40px);--button-line-height:20px;--button-line-height:var(--goods-action-button-line-height,20px);--button-plain-background-color:#fff;--button-plain-background-color:var(--goods-action-button-plain-color,#fff);display:block;--button-border-width:0}.van-goods-action-button--first{margin-left:5px;--button-border-radius:20px 0 0 20px;--button-border-radius:var(--goods-action-button-border-radius,20px) 0 0 var(--goods-action-button-border-radius,20px)}.van-goods-action-button--last{margin-right:5px;--button-border-radius:0 20px 20px 0;--button-border-radius:0 var(--goods-action-button-border-radius,20px) var(--goods-action-button-border-radius,20px) 0}.van-goods-action-button--first.van-goods-action-button--last{--button-border-radius:20px;--button-border-radius:var(--goods-action-button-border-radius,20px)}.van-goods-action-button--plain{--button-border-width:1px}.van-goods-action-button__inner{width:100%;font-weight:500!important;font-weight:var(--font-weight-bold,500)!important}@media (max-width:321px){.van-goods-action-button{font-size:13px}}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/goods-action-icon/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/goods-action-icon/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..b208d430c8af667076ab2046805e13c581d8ab84
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/goods-action-icon/index.js
@@ -0,0 +1,24 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+var button_1 = require('../mixins/button');
+var link_1 = require('../mixins/link');
+var open_type_1 = require('../mixins/open-type');
+component_1.VantComponent({
+ classes: ['icon-class', 'text-class'],
+ mixins: [link_1.link, button_1.button, open_type_1.openType],
+ props: {
+ text: String,
+ dot: Boolean,
+ info: String,
+ icon: String,
+ disabled: Boolean,
+ loading: Boolean,
+ },
+ methods: {
+ onClick: function (event) {
+ this.$emit('click', event.detail);
+ this.jumpLink();
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/goods-action-icon/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/goods-action-icon/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..0d8373d78df6167928d73440417dafc813f7ce03
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/goods-action-icon/index.json
@@ -0,0 +1,7 @@
+{
+ "component": true,
+ "usingComponents": {
+ "van-icon": "../icon/index",
+ "van-button": "../button/index"
+ }
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/goods-action-icon/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/goods-action-icon/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..accfee4995dd2a301c7e4fb9ac819174be184125
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/goods-action-icon/index.wxml
@@ -0,0 +1,35 @@
+
+
+
+ {{ text }}
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/goods-action-icon/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/goods-action-icon/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..eeef19113b9eb2e81c321ecdfd8b2403c9ac20dd
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/goods-action-icon/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-goods-action-icon{display:-webkit-flex!important;display:flex!important;-webkit-flex-direction:column;flex-direction:column;-webkit-justify-content:center!important;justify-content:center!important;line-height:1!important;border:none!important;font-size:10px!important;font-size:var(--goods-action-icon-font-size,10px)!important;color:#646566!important;color:var(--goods-action-icon-text-color,#646566)!important;min-width:48px;min-width:var(--goods-action-icon-width,48px);height:50px!important;height:var(--goods-action-icon-height,50px)!important}.van-goods-action-icon__icon{display:-webkit-flex;display:flex;margin:0 auto 5px;color:#323233;color:var(--goods-action-icon-color,#323233);font-size:18px;font-size:var(--goods-action-icon-size,18px)}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/goods-action/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/goods-action/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..2f59255e3d0e4f82bb2ce7f57bb2b05e647c5b4c
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/goods-action/index.js
@@ -0,0 +1,17 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+var relation_1 = require('../common/relation');
+component_1.VantComponent({
+ relation: relation_1.useChildren('goods-action-button', function () {
+ this.children.forEach(function (item) {
+ item.updateStyle();
+ });
+ }),
+ props: {
+ safeAreaInsetBottom: {
+ type: Boolean,
+ value: true,
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/goods-action/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/goods-action/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..efdc3c823a323c17832b921a6bccbcd398609183
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/goods-action/index.json
@@ -0,0 +1,3 @@
+{
+ "component": true
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/goods-action/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/goods-action/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..c9bc8c722730063ae47134333ef329f56d5e5ece
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/goods-action/index.wxml
@@ -0,0 +1,5 @@
+
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/goods-action/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/goods-action/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..d0def95e14dab0f01319eb27e1fc9620e7e7f28b
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/goods-action/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-goods-action{position:fixed;right:0;bottom:0;left:0;display:-webkit-flex;display:flex;-webkit-align-items:center;align-items:center;box-sizing:initial;height:50px;height:var(--goods-action-height,50px);background-color:#fff;background-color:var(--goods-action-background-color,#fff)}.van-goods-action--safe{padding-bottom:env(safe-area-inset-bottom)}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/grid-item/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/grid-item/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..5fe1a24ffcd7ef518bd88fbbd5faa8a09b4d4988
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/grid-item/index.js
@@ -0,0 +1,58 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+var relation_1 = require('../common/relation');
+var link_1 = require('../mixins/link');
+component_1.VantComponent({
+ relation: relation_1.useParent('grid'),
+ classes: ['content-class', 'icon-class', 'text-class'],
+ mixins: [link_1.link],
+ props: {
+ icon: String,
+ iconColor: String,
+ dot: Boolean,
+ info: null,
+ badge: null,
+ text: String,
+ useSlot: Boolean,
+ },
+ data: {
+ viewStyle: '',
+ },
+ mounted: function () {
+ this.updateStyle();
+ },
+ methods: {
+ updateStyle: function () {
+ if (!this.parent) {
+ return;
+ }
+ var _a = this.parent,
+ data = _a.data,
+ children = _a.children;
+ var columnNum = data.columnNum,
+ border = data.border,
+ square = data.square,
+ gutter = data.gutter,
+ clickable = data.clickable,
+ center = data.center,
+ direction = data.direction,
+ iconSize = data.iconSize;
+ this.setData({
+ center: center,
+ border: border,
+ square: square,
+ gutter: gutter,
+ clickable: clickable,
+ direction: direction,
+ iconSize: iconSize,
+ index: children.indexOf(this),
+ columnNum: columnNum,
+ });
+ },
+ onClick: function () {
+ this.$emit('click');
+ this.jumpLink();
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/grid-item/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/grid-item/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..8abfe203d0f960f68e62ffbf80021664bc8aae0a
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/grid-item/index.json
@@ -0,0 +1,6 @@
+{
+ "component": true,
+ "usingComponents": {
+ "van-icon": "../icon/index"
+ }
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/grid-item/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/grid-item/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..a0fd7027e100372640cc4b0582781a11a3f143e3
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/grid-item/index.wxml
@@ -0,0 +1,27 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ text }}
+
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/grid-item/index.wxs b/src/openeuler/miniprogram_npm/@vant/weapp/grid-item/index.wxs
new file mode 100644
index 0000000000000000000000000000000000000000..7d09bf9f32af34e3770f076079e2dfd80dd4b15a
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/grid-item/index.wxs
@@ -0,0 +1,32 @@
+/* eslint-disable */
+var style = require('../wxs/style.wxs');
+var addUnit = require('../wxs/add-unit.wxs');
+
+function wrapperStyle(data) {
+ var width = 100 / data.columnNum + '%';
+
+ return style({
+ width: width,
+ 'padding-top': data.square ? width : null,
+ 'padding-right': addUnit(data.gutter),
+ 'margin-top':
+ data.index >= data.columnNum && !data.square
+ ? addUnit(data.gutter)
+ : null,
+ });
+}
+
+function contentStyle(data) {
+ return data.square
+ ? style({
+ right: addUnit(data.gutter),
+ bottom: addUnit(data.gutter),
+ height: 'auto',
+ })
+ : '';
+}
+
+module.exports = {
+ wrapperStyle: wrapperStyle,
+ contentStyle: contentStyle,
+};
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/grid-item/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/grid-item/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..ed7facb8e330fa9ec917360063ca9d975de22a0b
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/grid-item/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-grid-item{position:relative;float:left;box-sizing:border-box}.van-grid-item--square{height:0}.van-grid-item__content{display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column;box-sizing:border-box;height:100%;padding:16px 8px;padding:var(--grid-item-content-padding,16px 8px);background-color:#fff;background-color:var(--grid-item-content-background-color,#fff)}.van-grid-item__content:after{z-index:1;border-width:0 1px 1px 0;border-bottom-width:var(--border-width-base,1px);border-right-width:var(--border-width-base,1px);border-top-width:0}.van-grid-item__content--surround:after{border-width:1px;border-width:var(--border-width-base,1px)}.van-grid-item__content--center{-webkit-align-items:center;align-items:center;-webkit-justify-content:center;justify-content:center}.van-grid-item__content--square{position:absolute;top:0;right:0;left:0}.van-grid-item__content--horizontal{-webkit-flex-direction:row;flex-direction:row}.van-grid-item__content--horizontal .van-grid-item__icon+.van-grid-item__text{margin-top:0;margin-left:8px}.van-grid-item__content--clickable:active{background-color:#f2f3f5;background-color:var(--grid-item-content-active-color,#f2f3f5)}.van-grid-item__icon{display:-webkit-flex;display:flex;-webkit-align-items:center;align-items:center;font-size:26px;font-size:var(--grid-item-icon-size,26px);height:26px;height:var(--grid-item-icon-size,26px)}.van-grid-item__text{word-wrap:break-word;color:#646566;color:var(--grid-item-text-color,#646566);font-size:12px;font-size:var(--grid-item-text-font-size,12px)}.van-grid-item__icon+.van-grid-item__text{margin-top:8px}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/grid/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/grid/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..ef4008cdea2c848afbe0719ddf7adb438b347d0c
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/grid/index.js
@@ -0,0 +1,52 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+var relation_1 = require('../common/relation');
+component_1.VantComponent({
+ relation: relation_1.useChildren('grid-item'),
+ props: {
+ square: {
+ type: Boolean,
+ observer: 'updateChildren',
+ },
+ gutter: {
+ type: null,
+ value: 0,
+ observer: 'updateChildren',
+ },
+ clickable: {
+ type: Boolean,
+ observer: 'updateChildren',
+ },
+ columnNum: {
+ type: Number,
+ value: 4,
+ observer: 'updateChildren',
+ },
+ center: {
+ type: Boolean,
+ value: true,
+ observer: 'updateChildren',
+ },
+ border: {
+ type: Boolean,
+ value: true,
+ observer: 'updateChildren',
+ },
+ direction: {
+ type: String,
+ observer: 'updateChildren',
+ },
+ iconSize: {
+ type: String,
+ observer: 'updateChildren',
+ },
+ },
+ methods: {
+ updateChildren: function () {
+ this.children.forEach(function (child) {
+ child.updateStyle();
+ });
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/grid/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/grid/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..efdc3c823a323c17832b921a6bccbcd398609183
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/grid/index.json
@@ -0,0 +1,3 @@
+{
+ "component": true
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/grid/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/grid/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..df228a694091250f284693572a413dadc032a91e
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/grid/index.wxml
@@ -0,0 +1,8 @@
+
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/grid/index.wxs b/src/openeuler/miniprogram_npm/@vant/weapp/grid/index.wxs
new file mode 100644
index 0000000000000000000000000000000000000000..2c837deb6401f8d5aa0806ce375f3b7b070c792c
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/grid/index.wxs
@@ -0,0 +1,13 @@
+/* eslint-disable */
+var style = require('../wxs/style.wxs');
+var addUnit = require('../wxs/add-unit.wxs');
+
+function rootStyle(data) {
+ return style({
+ 'padding-left': addUnit(data.gutter),
+ });
+}
+
+module.exports = {
+ rootStyle: rootStyle,
+};
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/grid/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/grid/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..327fc5efd0a95e2527496046f24c6028cf86d7b9
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/grid/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-grid{position:relative;box-sizing:border-box;overflow:hidden}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/icon/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/icon/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..be5ea09af2336ea83d821c30e858ee1d239967f6
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/icon/index.js
@@ -0,0 +1,22 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+component_1.VantComponent({
+ props: {
+ dot: Boolean,
+ info: null,
+ size: null,
+ color: String,
+ customStyle: String,
+ classPrefix: {
+ type: String,
+ value: 'van-icon',
+ },
+ name: String,
+ },
+ methods: {
+ onClick: function () {
+ this.$emit('click');
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/icon/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/icon/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..82369bf271b60657b16aaff43895995402281de0
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/icon/index.json
@@ -0,0 +1,6 @@
+{
+ "component": true,
+ "usingComponents": {
+ "van-info": "../info/index"
+ }
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/icon/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/icon/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..05bad39cdc6aa26be11d665145ac9937017d4489
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/icon/index.wxml
@@ -0,0 +1,20 @@
+
+
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/icon/index.wxs b/src/openeuler/miniprogram_npm/@vant/weapp/icon/index.wxs
new file mode 100644
index 0000000000000000000000000000000000000000..2fbbbbe678bd5a9544aed7ad6659c27e7f9f304e
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/icon/index.wxs
@@ -0,0 +1,39 @@
+/* eslint-disable */
+var style = require('../wxs/style.wxs');
+var addUnit = require('../wxs/add-unit.wxs');
+
+function isImage(name) {
+ return name.indexOf('/') !== -1;
+}
+
+function rootClass(data) {
+ var classes = ['custom-class'];
+
+ if (data.classPrefix != null) {
+ classes.push(data.classPrefix);
+ }
+
+ if (isImage(data.name)) {
+ classes.push('van-icon--image');
+ } else if (data.classPrefix != null) {
+ classes.push(data.classPrefix + '-' + data.name);
+ }
+
+ return classes.join(' ');
+}
+
+function rootStyle(data) {
+ return style([
+ {
+ color: data.color,
+ 'font-size': addUnit(data.size),
+ },
+ data.customStyle,
+ ]);
+}
+
+module.exports = {
+ isImage: isImage,
+ rootClass: rootClass,
+ rootStyle: rootStyle,
+};
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/icon/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/icon/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..2d5f87998691b472f320d8799321f6469ff4b3c1
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/icon/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';@font-face{font-weight:400;font-family:vant-icon;font-style:normal;font-display:auto;src:url(https://img01.yzcdn.cn/vant/vant-icon-f463a9.woff2) format("woff2"),url(https://img01.yzcdn.cn/vant/vant-icon-f463a9.woff) format("woff"),url(https://img01.yzcdn.cn/vant/vant-icon-f463a9.ttf) format("truetype")}.van-icon{position:relative;font:normal normal normal 14px/1 vant-icon;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased}.van-icon,.van-icon:before{display:inline-block}.van-icon-add-o:before{content:"\F000"}.van-icon-add-square:before{content:"\F001"}.van-icon-add:before{content:"\F002"}.van-icon-after-sale:before{content:"\F003"}.van-icon-aim:before{content:"\F004"}.van-icon-alipay:before{content:"\F005"}.van-icon-apps-o:before{content:"\F006"}.van-icon-arrow-down:before{content:"\F007"}.van-icon-arrow-left:before{content:"\F008"}.van-icon-arrow-up:before{content:"\F009"}.van-icon-arrow:before{content:"\F00A"}.van-icon-ascending:before{content:"\F00B"}.van-icon-audio:before{content:"\F00C"}.van-icon-award-o:before{content:"\F00D"}.van-icon-award:before{content:"\F00E"}.van-icon-back-top:before{content:"\F0E6"}.van-icon-bag-o:before{content:"\F00F"}.van-icon-bag:before{content:"\F010"}.van-icon-balance-list-o:before{content:"\F011"}.van-icon-balance-list:before{content:"\F012"}.van-icon-balance-o:before{content:"\F013"}.van-icon-balance-pay:before{content:"\F014"}.van-icon-bar-chart-o:before{content:"\F015"}.van-icon-bars:before{content:"\F016"}.van-icon-bell:before{content:"\F017"}.van-icon-bill-o:before{content:"\F018"}.van-icon-bill:before{content:"\F019"}.van-icon-birthday-cake-o:before{content:"\F01A"}.van-icon-bookmark-o:before{content:"\F01B"}.van-icon-bookmark:before{content:"\F01C"}.van-icon-browsing-history-o:before{content:"\F01D"}.van-icon-browsing-history:before{content:"\F01E"}.van-icon-brush-o:before{content:"\F01F"}.van-icon-bulb-o:before{content:"\F020"}.van-icon-bullhorn-o:before{content:"\F021"}.van-icon-calendar-o:before{content:"\F022"}.van-icon-card:before{content:"\F023"}.van-icon-cart-circle-o:before{content:"\F024"}.van-icon-cart-circle:before{content:"\F025"}.van-icon-cart-o:before{content:"\F026"}.van-icon-cart:before{content:"\F027"}.van-icon-cash-back-record:before{content:"\F028"}.van-icon-cash-on-deliver:before{content:"\F029"}.van-icon-cashier-o:before{content:"\F02A"}.van-icon-certificate:before{content:"\F02B"}.van-icon-chart-trending-o:before{content:"\F02C"}.van-icon-chat-o:before{content:"\F02D"}.van-icon-chat:before{content:"\F02E"}.van-icon-checked:before{content:"\F02F"}.van-icon-circle:before{content:"\F030"}.van-icon-clear:before{content:"\F031"}.van-icon-clock-o:before{content:"\F032"}.van-icon-clock:before{content:"\F033"}.van-icon-close:before{content:"\F034"}.van-icon-closed-eye:before{content:"\F035"}.van-icon-cluster-o:before{content:"\F036"}.van-icon-cluster:before{content:"\F037"}.van-icon-column:before{content:"\F038"}.van-icon-comment-circle-o:before{content:"\F039"}.van-icon-comment-circle:before{content:"\F03A"}.van-icon-comment-o:before{content:"\F03B"}.van-icon-comment:before{content:"\F03C"}.van-icon-completed:before{content:"\F03D"}.van-icon-contact:before{content:"\F03E"}.van-icon-coupon-o:before{content:"\F03F"}.van-icon-coupon:before{content:"\F040"}.van-icon-credit-pay:before{content:"\F041"}.van-icon-cross:before{content:"\F042"}.van-icon-debit-pay:before{content:"\F043"}.van-icon-delete-o:before{content:"\F0E9"}.van-icon-delete:before{content:"\F044"}.van-icon-descending:before{content:"\F045"}.van-icon-description:before{content:"\F046"}.van-icon-desktop-o:before{content:"\F047"}.van-icon-diamond-o:before{content:"\F048"}.van-icon-diamond:before{content:"\F049"}.van-icon-discount:before{content:"\F04A"}.van-icon-down:before{content:"\F04B"}.van-icon-ecard-pay:before{content:"\F04C"}.van-icon-edit:before{content:"\F04D"}.van-icon-ellipsis:before{content:"\F04E"}.van-icon-empty:before{content:"\F04F"}.van-icon-enlarge:before{content:"\F0E4"}.van-icon-envelop-o:before{content:"\F050"}.van-icon-exchange:before{content:"\F051"}.van-icon-expand-o:before{content:"\F052"}.van-icon-expand:before{content:"\F053"}.van-icon-eye-o:before{content:"\F054"}.van-icon-eye:before{content:"\F055"}.van-icon-fail:before{content:"\F056"}.van-icon-failure:before{content:"\F057"}.van-icon-filter-o:before{content:"\F058"}.van-icon-fire-o:before{content:"\F059"}.van-icon-fire:before{content:"\F05A"}.van-icon-flag-o:before{content:"\F05B"}.van-icon-flower-o:before{content:"\F05C"}.van-icon-font-o:before{content:"\F0EC"}.van-icon-font:before{content:"\F0EB"}.van-icon-free-postage:before{content:"\F05D"}.van-icon-friends-o:before{content:"\F05E"}.van-icon-friends:before{content:"\F05F"}.van-icon-gem-o:before{content:"\F060"}.van-icon-gem:before{content:"\F061"}.van-icon-gift-card-o:before{content:"\F062"}.van-icon-gift-card:before{content:"\F063"}.van-icon-gift-o:before{content:"\F064"}.van-icon-gift:before{content:"\F065"}.van-icon-gold-coin-o:before{content:"\F066"}.van-icon-gold-coin:before{content:"\F067"}.van-icon-good-job-o:before{content:"\F068"}.van-icon-good-job:before{content:"\F069"}.van-icon-goods-collect-o:before{content:"\F06A"}.van-icon-goods-collect:before{content:"\F06B"}.van-icon-graphic:before{content:"\F06C"}.van-icon-home-o:before{content:"\F06D"}.van-icon-hot-o:before{content:"\F06E"}.van-icon-hot-sale-o:before{content:"\F06F"}.van-icon-hot-sale:before{content:"\F070"}.van-icon-hot:before{content:"\F071"}.van-icon-hotel-o:before{content:"\F072"}.van-icon-idcard:before{content:"\F073"}.van-icon-info-o:before{content:"\F074"}.van-icon-info:before{content:"\F075"}.van-icon-invition:before{content:"\F076"}.van-icon-label-o:before{content:"\F077"}.van-icon-label:before{content:"\F078"}.van-icon-like-o:before{content:"\F079"}.van-icon-like:before{content:"\F07A"}.van-icon-live:before{content:"\F07B"}.van-icon-location-o:before{content:"\F07C"}.van-icon-location:before{content:"\F07D"}.van-icon-lock:before{content:"\F07E"}.van-icon-logistics:before{content:"\F07F"}.van-icon-manager-o:before{content:"\F080"}.van-icon-manager:before{content:"\F081"}.van-icon-map-marked:before{content:"\F082"}.van-icon-medal-o:before{content:"\F083"}.van-icon-medal:before{content:"\F084"}.van-icon-minus:before{content:"\F0E8"}.van-icon-more-o:before{content:"\F085"}.van-icon-more:before{content:"\F086"}.van-icon-music-o:before{content:"\F087"}.van-icon-music:before{content:"\F088"}.van-icon-new-arrival-o:before{content:"\F089"}.van-icon-new-arrival:before{content:"\F08A"}.van-icon-new-o:before{content:"\F08B"}.van-icon-new:before{content:"\F08C"}.van-icon-newspaper-o:before{content:"\F08D"}.van-icon-notes-o:before{content:"\F08E"}.van-icon-orders-o:before{content:"\F08F"}.van-icon-other-pay:before{content:"\F090"}.van-icon-paid:before{content:"\F091"}.van-icon-passed:before{content:"\F092"}.van-icon-pause-circle-o:before{content:"\F093"}.van-icon-pause-circle:before{content:"\F094"}.van-icon-pause:before{content:"\F095"}.van-icon-peer-pay:before{content:"\F096"}.van-icon-pending-payment:before{content:"\F097"}.van-icon-phone-circle-o:before{content:"\F098"}.van-icon-phone-circle:before{content:"\F099"}.van-icon-phone-o:before{content:"\F09A"}.van-icon-phone:before{content:"\F09B"}.van-icon-photo-fail:before{content:"\F0E5"}.van-icon-photo-o:before{content:"\F09C"}.van-icon-photo:before{content:"\F09D"}.van-icon-photograph:before{content:"\F09E"}.van-icon-play-circle-o:before{content:"\F09F"}.van-icon-play-circle:before{content:"\F0A0"}.van-icon-play:before{content:"\F0A1"}.van-icon-plus:before{content:"\F0A2"}.van-icon-point-gift-o:before{content:"\F0A3"}.van-icon-point-gift:before{content:"\F0A4"}.van-icon-points:before{content:"\F0A5"}.van-icon-printer:before{content:"\F0A6"}.van-icon-qr-invalid:before{content:"\F0A7"}.van-icon-qr:before{content:"\F0A8"}.van-icon-question-o:before{content:"\F0A9"}.van-icon-question:before{content:"\F0AA"}.van-icon-records:before{content:"\F0AB"}.van-icon-refund-o:before{content:"\F0AC"}.van-icon-replay:before{content:"\F0AD"}.van-icon-revoke:before{content:"\F0ED"}.van-icon-scan:before{content:"\F0AE"}.van-icon-search:before{content:"\F0AF"}.van-icon-send-gift-o:before{content:"\F0B0"}.van-icon-send-gift:before{content:"\F0B1"}.van-icon-service-o:before{content:"\F0B2"}.van-icon-service:before{content:"\F0B3"}.van-icon-setting-o:before{content:"\F0B4"}.van-icon-setting:before{content:"\F0B5"}.van-icon-share-o:before{content:"\F0E7"}.van-icon-share:before{content:"\F0B6"}.van-icon-shop-collect-o:before{content:"\F0B7"}.van-icon-shop-collect:before{content:"\F0B8"}.van-icon-shop-o:before{content:"\F0B9"}.van-icon-shop:before{content:"\F0BA"}.van-icon-shopping-cart-o:before{content:"\F0BB"}.van-icon-shopping-cart:before{content:"\F0BC"}.van-icon-shrink:before{content:"\F0BD"}.van-icon-sign:before{content:"\F0BE"}.van-icon-smile-comment-o:before{content:"\F0BF"}.van-icon-smile-comment:before{content:"\F0C0"}.van-icon-smile-o:before{content:"\F0C1"}.van-icon-smile:before{content:"\F0C2"}.van-icon-sort:before{content:"\F0EA"}.van-icon-star-o:before{content:"\F0C3"}.van-icon-star:before{content:"\F0C4"}.van-icon-stop-circle-o:before{content:"\F0C5"}.van-icon-stop-circle:before{content:"\F0C6"}.van-icon-stop:before{content:"\F0C7"}.van-icon-success:before{content:"\F0C8"}.van-icon-thumb-circle-o:before{content:"\F0C9"}.van-icon-thumb-circle:before{content:"\F0CA"}.van-icon-todo-list-o:before{content:"\F0CB"}.van-icon-todo-list:before{content:"\F0CC"}.van-icon-tosend:before{content:"\F0CD"}.van-icon-tv-o:before{content:"\F0CE"}.van-icon-umbrella-circle:before{content:"\F0CF"}.van-icon-underway-o:before{content:"\F0D0"}.van-icon-underway:before{content:"\F0D1"}.van-icon-upgrade:before{content:"\F0D2"}.van-icon-user-circle-o:before{content:"\F0D3"}.van-icon-user-o:before{content:"\F0D4"}.van-icon-video-o:before{content:"\F0D5"}.van-icon-video:before{content:"\F0D6"}.van-icon-vip-card-o:before{content:"\F0D7"}.van-icon-vip-card:before{content:"\F0D8"}.van-icon-volume-o:before{content:"\F0D9"}.van-icon-volume:before{content:"\F0DA"}.van-icon-wap-home-o:before{content:"\F0DB"}.van-icon-wap-home:before{content:"\F0DC"}.van-icon-wap-nav:before{content:"\F0DD"}.van-icon-warn-o:before{content:"\F0DE"}.van-icon-warning-o:before{content:"\F0DF"}.van-icon-warning:before{content:"\F0E0"}.van-icon-weapp-nav:before{content:"\F0E1"}.van-icon-wechat-pay:before{content:"\F0E2"}.van-icon-wechat:before{content:"\F0EE"}.van-icon-youzan-shield:before{content:"\F0E3"}:host{display:-webkit-inline-flex;display:inline-flex;-webkit-align-items:center;align-items:center;-webkit-justify-content:center;justify-content:center}.van-icon--image{width:1em;height:1em}.van-icon__image{width:100%;height:100%}.van-icon__info{z-index:1}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/image/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/image/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..76265d038f49195d92b2661526d8eb0cd8cab7db
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/image/index.js
@@ -0,0 +1,63 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+var button_1 = require('../mixins/button');
+var open_type_1 = require('../mixins/open-type');
+component_1.VantComponent({
+ mixins: [button_1.button, open_type_1.openType],
+ classes: ['custom-class', 'loading-class', 'error-class', 'image-class'],
+ props: {
+ src: {
+ type: String,
+ observer: function () {
+ this.setData({
+ error: false,
+ loading: true,
+ });
+ },
+ },
+ round: Boolean,
+ width: null,
+ height: null,
+ radius: null,
+ lazyLoad: Boolean,
+ useErrorSlot: Boolean,
+ useLoadingSlot: Boolean,
+ showMenuByLongpress: Boolean,
+ fit: {
+ type: String,
+ value: 'fill',
+ },
+ showError: {
+ type: Boolean,
+ value: true,
+ },
+ showLoading: {
+ type: Boolean,
+ value: true,
+ },
+ },
+ data: {
+ error: false,
+ loading: true,
+ viewStyle: '',
+ },
+ methods: {
+ onLoad: function (event) {
+ this.setData({
+ loading: false,
+ });
+ this.$emit('load', event.detail);
+ },
+ onError: function (event) {
+ this.setData({
+ loading: false,
+ error: true,
+ });
+ this.$emit('error', event.detail);
+ },
+ onClick: function (event) {
+ this.$emit('click', event.detail);
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/image/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/image/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..8e23ad65ccf807f24fa7798cd2cc046a78153e59
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/image/index.json
@@ -0,0 +1,7 @@
+{
+ "component": true,
+ "usingComponents": {
+ "van-icon": "../icon/index",
+ "van-loading": "../loading/index"
+ }
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/image/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/image/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..4bfa0e0be8e3807c131bf2d29ed5f352a558b6e2
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/image/index.wxml
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/image/index.wxs b/src/openeuler/miniprogram_npm/@vant/weapp/image/index.wxs
new file mode 100644
index 0000000000000000000000000000000000000000..5a113351b85df2ecf59dc7f325d31057c2e2820c
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/image/index.wxs
@@ -0,0 +1,32 @@
+/* eslint-disable */
+var style = require('../wxs/style.wxs');
+var addUnit = require('../wxs/add-unit.wxs');
+
+function rootStyle(data) {
+ return style([
+ {
+ width: addUnit(data.width),
+ height: addUnit(data.height),
+ 'border-radius': addUnit(data.radius),
+ },
+ data.radius ? 'overflow: hidden' : null,
+ ]);
+}
+
+var FIT_MODE_MAP = {
+ none: 'center',
+ fill: 'scaleToFill',
+ cover: 'aspectFill',
+ contain: 'aspectFit',
+ widthFix: 'widthFix',
+ heightFix: 'heightFix',
+};
+
+function mode(fit) {
+ return FIT_MODE_MAP[fit];
+}
+
+module.exports = {
+ rootStyle: rootStyle,
+ mode: mode,
+};
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/image/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/image/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..47589109a83a5981d73282c131ccd242976037c2
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/image/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-image{position:relative;display:inline-block}.van-image--round{overflow:hidden;border-radius:50%}.van-image--round .van-image__img{border-radius:inherit}.van-image__error,.van-image__img,.van-image__loading{display:block;width:100%;height:100%}.van-image__error,.van-image__loading{position:absolute;top:0;left:0;display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column;-webkit-align-items:center;align-items:center;-webkit-justify-content:center;justify-content:center;color:#969799;color:var(--image-placeholder-text-color,#969799);font-size:14px;font-size:var(--image-placeholder-font-size,14px);background-color:#f7f8fa;background-color:var(--image-placeholder-background-color,#f7f8fa)}.van-image__loading-icon{color:#dcdee0;color:var(--image-loading-icon-color,#dcdee0);font-size:32px!important;font-size:var(--image-loading-icon-size,32px)!important}.van-image__error-icon{color:#dcdee0;color:var(--image-error-icon-color,#dcdee0);font-size:32px!important;font-size:var(--image-error-icon-size,32px)!important}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/index-anchor/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/index-anchor/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..14ecfb7570bd877119678d08da8fac5a37a79c4d
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/index-anchor/index.js
@@ -0,0 +1,28 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var utils_1 = require('../common/utils');
+var component_1 = require('../common/component');
+var relation_1 = require('../common/relation');
+component_1.VantComponent({
+ relation: relation_1.useParent('index-bar'),
+ props: {
+ useSlot: Boolean,
+ index: null,
+ },
+ data: {
+ active: false,
+ wrapperStyle: '',
+ anchorStyle: '',
+ },
+ methods: {
+ scrollIntoView: function (scrollTop) {
+ var _this = this;
+ utils_1.getRect(this, '.van-index-anchor-wrapper').then(function (rect) {
+ wx.pageScrollTo({
+ duration: 0,
+ scrollTop: scrollTop + rect.top - _this.parent.data.stickyOffsetTop,
+ });
+ });
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/index-anchor/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/index-anchor/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..efdc3c823a323c17832b921a6bccbcd398609183
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/index-anchor/index.json
@@ -0,0 +1,3 @@
+{
+ "component": true
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/index-anchor/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/index-anchor/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..6304f1fbe3013c67ada0b3a422941ff6cd8ccfe6
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/index-anchor/index.wxml
@@ -0,0 +1,14 @@
+
+
+
+
+ {{ index }}
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/index-anchor/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/index-anchor/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..b8c3c0a48f9e0cfe5d4871038bb5daed1a02a298
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/index-anchor/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-index-anchor{padding:0 16px;padding:var(--index-anchor-padding,0 16px);color:#323233;color:var(--index-anchor-text-color,#323233);font-weight:500;font-weight:var(--index-anchor-font-weight,500);font-size:14px;font-size:var(--index-anchor-font-size,14px);line-height:32px;line-height:var(--index-anchor-line-height,32px);background-color:initial;background-color:var(--index-anchor-background-color,transparent)}.van-index-anchor--active{right:0;left:0;color:#07c160;color:var(--index-anchor-active-text-color,#07c160);background-color:#fff;background-color:var(--index-anchor-active-background-color,#fff)}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/index-bar/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/index-bar/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..1b6f0c01c12875dc3c9a0c47d056bdb431f1e16c
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/index-bar/index.js
@@ -0,0 +1,278 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var color_1 = require('../common/color');
+var component_1 = require('../common/component');
+var relation_1 = require('../common/relation');
+var utils_1 = require('../common/utils');
+var page_scroll_1 = require('../mixins/page-scroll');
+var indexList = function () {
+ var indexList = [];
+ var charCodeOfA = 'A'.charCodeAt(0);
+ for (var i = 0; i < 26; i++) {
+ indexList.push(String.fromCharCode(charCodeOfA + i));
+ }
+ return indexList;
+};
+component_1.VantComponent({
+ relation: relation_1.useChildren('index-anchor', function () {
+ this.updateData();
+ }),
+ props: {
+ sticky: {
+ type: Boolean,
+ value: true,
+ },
+ zIndex: {
+ type: Number,
+ value: 1,
+ },
+ highlightColor: {
+ type: String,
+ value: color_1.GREEN,
+ },
+ stickyOffsetTop: {
+ type: Number,
+ value: 0,
+ },
+ indexList: {
+ type: Array,
+ value: indexList(),
+ },
+ },
+ mixins: [
+ page_scroll_1.pageScrollMixin(function (event) {
+ this.scrollTop =
+ (event === null || event === void 0 ? void 0 : event.scrollTop) || 0;
+ this.onScroll();
+ }),
+ ],
+ data: {
+ activeAnchorIndex: null,
+ showSidebar: false,
+ },
+ created: function () {
+ this.scrollTop = 0;
+ },
+ methods: {
+ updateData: function () {
+ var _this = this;
+ wx.nextTick(function () {
+ if (_this.timer != null) {
+ clearTimeout(_this.timer);
+ }
+ _this.timer = setTimeout(function () {
+ _this.setData({
+ showSidebar: !!_this.children.length,
+ });
+ _this.setRect().then(function () {
+ _this.onScroll();
+ });
+ }, 0);
+ });
+ },
+ setRect: function () {
+ return Promise.all([
+ this.setAnchorsRect(),
+ this.setListRect(),
+ this.setSiderbarRect(),
+ ]);
+ },
+ setAnchorsRect: function () {
+ var _this = this;
+ return Promise.all(
+ this.children.map(function (anchor) {
+ return utils_1
+ .getRect(anchor, '.van-index-anchor-wrapper')
+ .then(function (rect) {
+ Object.assign(anchor, {
+ height: rect.height,
+ top: rect.top + _this.scrollTop,
+ });
+ });
+ })
+ );
+ },
+ setListRect: function () {
+ var _this = this;
+ return utils_1.getRect(this, '.van-index-bar').then(function (rect) {
+ Object.assign(_this, {
+ height: rect.height,
+ top: rect.top + _this.scrollTop,
+ });
+ });
+ },
+ setSiderbarRect: function () {
+ var _this = this;
+ return utils_1
+ .getRect(this, '.van-index-bar__sidebar')
+ .then(function (res) {
+ _this.sidebar = {
+ height: res.height,
+ top: res.top,
+ };
+ });
+ },
+ setDiffData: function (_a) {
+ var target = _a.target,
+ data = _a.data;
+ var diffData = {};
+ Object.keys(data).forEach(function (key) {
+ if (target.data[key] !== data[key]) {
+ diffData[key] = data[key];
+ }
+ });
+ if (Object.keys(diffData).length) {
+ target.setData(diffData);
+ }
+ },
+ getAnchorRect: function (anchor) {
+ return utils_1
+ .getRect(anchor, '.van-index-anchor-wrapper')
+ .then(function (rect) {
+ return {
+ height: rect.height,
+ top: rect.top,
+ };
+ });
+ },
+ getActiveAnchorIndex: function () {
+ var _a = this,
+ children = _a.children,
+ scrollTop = _a.scrollTop;
+ var _b = this.data,
+ sticky = _b.sticky,
+ stickyOffsetTop = _b.stickyOffsetTop;
+ for (var i = this.children.length - 1; i >= 0; i--) {
+ var preAnchorHeight = i > 0 ? children[i - 1].height : 0;
+ var reachTop = sticky ? preAnchorHeight + stickyOffsetTop : 0;
+ if (reachTop + scrollTop >= children[i].top) {
+ return i;
+ }
+ }
+ return -1;
+ },
+ onScroll: function () {
+ var _this = this;
+ var _a = this,
+ _b = _a.children,
+ children = _b === void 0 ? [] : _b,
+ scrollTop = _a.scrollTop;
+ if (!children.length) {
+ return;
+ }
+ var _c = this.data,
+ sticky = _c.sticky,
+ stickyOffsetTop = _c.stickyOffsetTop,
+ zIndex = _c.zIndex,
+ highlightColor = _c.highlightColor;
+ var active = this.getActiveAnchorIndex();
+ this.setDiffData({
+ target: this,
+ data: {
+ activeAnchorIndex: active,
+ },
+ });
+ if (sticky) {
+ var isActiveAnchorSticky_1 = false;
+ if (active !== -1) {
+ isActiveAnchorSticky_1 =
+ children[active].top <= stickyOffsetTop + scrollTop;
+ }
+ children.forEach(function (item, index) {
+ if (index === active) {
+ var wrapperStyle = '';
+ var anchorStyle =
+ '\n color: ' + highlightColor + ';\n ';
+ if (isActiveAnchorSticky_1) {
+ wrapperStyle =
+ '\n height: ' +
+ children[index].height +
+ 'px;\n ';
+ anchorStyle =
+ '\n position: fixed;\n top: ' +
+ stickyOffsetTop +
+ 'px;\n z-index: ' +
+ zIndex +
+ ';\n color: ' +
+ highlightColor +
+ ';\n ';
+ }
+ _this.setDiffData({
+ target: item,
+ data: {
+ active: true,
+ anchorStyle: anchorStyle,
+ wrapperStyle: wrapperStyle,
+ },
+ });
+ } else if (index === active - 1) {
+ var currentAnchor = children[index];
+ var currentOffsetTop = currentAnchor.top;
+ var targetOffsetTop =
+ index === children.length - 1
+ ? _this.top
+ : children[index + 1].top;
+ var parentOffsetHeight = targetOffsetTop - currentOffsetTop;
+ var translateY = parentOffsetHeight - currentAnchor.height;
+ var anchorStyle =
+ '\n position: relative;\n transform: translate3d(0, ' +
+ translateY +
+ 'px, 0);\n z-index: ' +
+ zIndex +
+ ';\n color: ' +
+ highlightColor +
+ ';\n ';
+ _this.setDiffData({
+ target: item,
+ data: {
+ active: true,
+ anchorStyle: anchorStyle,
+ },
+ });
+ } else {
+ _this.setDiffData({
+ target: item,
+ data: {
+ active: false,
+ anchorStyle: '',
+ wrapperStyle: '',
+ },
+ });
+ }
+ });
+ }
+ },
+ onClick: function (event) {
+ this.scrollToAnchor(event.target.dataset.index);
+ },
+ onTouchMove: function (event) {
+ var sidebarLength = this.children.length;
+ var touch = event.touches[0];
+ var itemHeight = this.sidebar.height / sidebarLength;
+ var index = Math.floor((touch.clientY - this.sidebar.top) / itemHeight);
+ if (index < 0) {
+ index = 0;
+ } else if (index > sidebarLength - 1) {
+ index = sidebarLength - 1;
+ }
+ this.scrollToAnchor(index);
+ },
+ onTouchStop: function () {
+ this.scrollToAnchorIndex = null;
+ },
+ scrollToAnchor: function (index) {
+ var _this = this;
+ if (typeof index !== 'number' || this.scrollToAnchorIndex === index) {
+ return;
+ }
+ this.scrollToAnchorIndex = index;
+ var anchor = this.children.find(function (item) {
+ return item.data.index === _this.data.indexList[index];
+ });
+ if (anchor) {
+ anchor.scrollIntoView(this.scrollTop);
+ this.$emit('select', anchor.data.index);
+ }
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/index-bar/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/index-bar/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..efdc3c823a323c17832b921a6bccbcd398609183
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/index-bar/index.json
@@ -0,0 +1,3 @@
+{
+ "component": true
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/index-bar/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/index-bar/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..019e256b690caf0a39c3a03d4b049d940bbf898a
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/index-bar/index.wxml
@@ -0,0 +1,22 @@
+
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/index-bar/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/index-bar/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..dba5dc071f0a5c048806a8b1ee7b17a14a6e0651
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/index-bar/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-index-bar{position:relative}.van-index-bar__sidebar{position:fixed;top:50%;right:0;display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column;text-align:center;-webkit-transform:translateY(-50%);transform:translateY(-50%);-webkit-user-select:none;user-select:none}.van-index-bar__index{font-weight:500;padding:0 4px 0 16px;padding:0 var(--padding-base,4px) 0 var(--padding-md,16px);font-size:10px;font-size:var(--index-bar-index-font-size,10px);line-height:14px;line-height:var(--index-bar-index-line-height,14px)}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/info/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/info/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..01376285442b8259f2d99b796487610f0cef7aea
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/info/index.js
@@ -0,0 +1,10 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+component_1.VantComponent({
+ props: {
+ dot: Boolean,
+ info: null,
+ customStyle: String,
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/info/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/info/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..efdc3c823a323c17832b921a6bccbcd398609183
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/info/index.json
@@ -0,0 +1,3 @@
+{
+ "component": true
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/info/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/info/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..e2bd6982364488627c07faad3294d05e785da592
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/info/index.wxml
@@ -0,0 +1,7 @@
+
+
+{{ dot ? '' : info }}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/info/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/info/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..953136a585f38379fa646445698d5ffe7fcb1a74
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/info/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-info{position:absolute;top:0;right:0;display:-webkit-inline-flex;display:inline-flex;-webkit-align-items:center;align-items:center;-webkit-justify-content:center;justify-content:center;box-sizing:border-box;white-space:nowrap;-webkit-transform:translate(50%,-50%);transform:translate(50%,-50%);-webkit-transform-origin:100%;transform-origin:100%;height:16px;height:var(--info-size,16px);min-width:16px;min-width:var(--info-size,16px);padding:0 3px;padding:var(--info-padding,0 3px);color:#fff;color:var(--info-color,#fff);font-weight:500;font-weight:var(--info-font-weight,500);font-size:12px;font-size:var(--info-font-size,12px);font-family:-apple-system-font,Helvetica Neue,Arial,sans-serif;font-family:var(--info-font-family,-apple-system-font,Helvetica Neue,Arial,sans-serif);background-color:#ee0a24;background-color:var(--info-background-color,#ee0a24);border:1px solid #fff;border:var(--info-border-width,1px) solid var(--white,#fff);border-radius:16px;border-radius:var(--info-size,16px)}.van-info--dot{min-width:0;border-radius:100%;width:8px;width:var(--info-dot-size,8px);height:8px;height:var(--info-dot-size,8px);background-color:#ee0a24;background-color:var(--info-dot-color,#ee0a24)}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/loading/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/loading/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..e78179d4fe6aaedde047326e65ebb640a9d811d4
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/loading/index.js
@@ -0,0 +1,18 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+component_1.VantComponent({
+ props: {
+ color: String,
+ vertical: Boolean,
+ type: {
+ type: String,
+ value: 'circular',
+ },
+ size: String,
+ textSize: String,
+ },
+ data: {
+ array12: Array.from({ length: 12 }),
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/loading/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/loading/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..efdc3c823a323c17832b921a6bccbcd398609183
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/loading/index.json
@@ -0,0 +1,3 @@
+{
+ "component": true
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/loading/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/loading/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..d2090c96d9678347e22ac3ef954ffd1cc1afbabb
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/loading/index.wxml
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/loading/index.wxs b/src/openeuler/miniprogram_npm/@vant/weapp/loading/index.wxs
new file mode 100644
index 0000000000000000000000000000000000000000..83c1c2364c9601c32b0bff8ab77c28e58971fdae
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/loading/index.wxs
@@ -0,0 +1,22 @@
+/* eslint-disable */
+var style = require('../wxs/style.wxs');
+var addUnit = require('../wxs/add-unit.wxs');
+
+function spinnerStyle(data) {
+ return style({
+ color: data.color,
+ width: addUnit(data.size),
+ height: addUnit(data.size),
+ });
+}
+
+function textStyle(data) {
+ return style({
+ 'font-size': addUnit(data.textSize),
+ });
+}
+
+module.exports = {
+ spinnerStyle: spinnerStyle,
+ textStyle: textStyle,
+};
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/loading/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/loading/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..f28a6b46fd4eac7258261e5ef72f692d75341394
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/loading/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';:host{font-size:0;line-height:1}.van-loading{display:-webkit-inline-flex;display:inline-flex;-webkit-align-items:center;align-items:center;-webkit-justify-content:center;justify-content:center;color:#c8c9cc;color:var(--loading-spinner-color,#c8c9cc)}.van-loading__spinner{position:relative;box-sizing:border-box;width:30px;width:var(--loading-spinner-size,30px);max-width:100%;max-height:100%;height:30px;height:var(--loading-spinner-size,30px);-webkit-animation:van-rotate .8s linear infinite;animation:van-rotate .8s linear infinite;-webkit-animation:van-rotate var(--loading-spinner-animation-duration,.8s) linear infinite;animation:van-rotate var(--loading-spinner-animation-duration,.8s) linear infinite}.van-loading__spinner--spinner{-webkit-animation-timing-function:steps(12);animation-timing-function:steps(12)}.van-loading__spinner--circular{border:1px solid transparent;border-top-color:initial;border-radius:100%}.van-loading__text{margin-left:8px;margin-left:var(--padding-xs,8px);color:#969799;color:var(--loading-text-color,#969799);font-size:14px;font-size:var(--loading-text-font-size,14px);line-height:20px;line-height:var(--loading-text-line-height,20px)}.van-loading__text:empty{display:none}.van-loading--vertical{-webkit-flex-direction:column;flex-direction:column}.van-loading--vertical .van-loading__text{margin:8px 0 0;margin:var(--padding-xs,8px) 0 0}.van-loading__dot{position:absolute;top:0;left:0;width:100%;height:100%}.van-loading__dot:before{display:block;width:2px;height:25%;margin:0 auto;background-color:currentColor;border-radius:40%;content:" "}.van-loading__dot:first-of-type{-webkit-transform:rotate(30deg);transform:rotate(30deg);opacity:1}.van-loading__dot:nth-of-type(2){-webkit-transform:rotate(60deg);transform:rotate(60deg);opacity:.9375}.van-loading__dot:nth-of-type(3){-webkit-transform:rotate(90deg);transform:rotate(90deg);opacity:.875}.van-loading__dot:nth-of-type(4){-webkit-transform:rotate(120deg);transform:rotate(120deg);opacity:.8125}.van-loading__dot:nth-of-type(5){-webkit-transform:rotate(150deg);transform:rotate(150deg);opacity:.75}.van-loading__dot:nth-of-type(6){-webkit-transform:rotate(180deg);transform:rotate(180deg);opacity:.6875}.van-loading__dot:nth-of-type(7){-webkit-transform:rotate(210deg);transform:rotate(210deg);opacity:.625}.van-loading__dot:nth-of-type(8){-webkit-transform:rotate(240deg);transform:rotate(240deg);opacity:.5625}.van-loading__dot:nth-of-type(9){-webkit-transform:rotate(270deg);transform:rotate(270deg);opacity:.5}.van-loading__dot:nth-of-type(10){-webkit-transform:rotate(300deg);transform:rotate(300deg);opacity:.4375}.van-loading__dot:nth-of-type(11){-webkit-transform:rotate(330deg);transform:rotate(330deg);opacity:.375}.van-loading__dot:nth-of-type(12){-webkit-transform:rotate(1turn);transform:rotate(1turn);opacity:.3125}@-webkit-keyframes van-rotate{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes van-rotate{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/mixins/basic.js b/src/openeuler/miniprogram_npm/@vant/weapp/mixins/basic.js
new file mode 100644
index 0000000000000000000000000000000000000000..2a1f54168bdbb33b7f252c6580231aeca2dbc7aa
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/mixins/basic.js
@@ -0,0 +1,16 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+exports.basic = void 0;
+exports.basic = Behavior({
+ methods: {
+ $emit: function (name, detail, options) {
+ this.triggerEvent(name, detail, options);
+ },
+ set: function (data) {
+ this.setData(data);
+ return new Promise(function (resolve) {
+ return wx.nextTick(resolve);
+ });
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/mixins/button.js b/src/openeuler/miniprogram_npm/@vant/weapp/mixins/button.js
new file mode 100644
index 0000000000000000000000000000000000000000..640a9fe07caddfc057f701a415540ae4669fea7a
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/mixins/button.js
@@ -0,0 +1,18 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+exports.button = void 0;
+exports.button = Behavior({
+ externalClasses: ['hover-class'],
+ properties: {
+ id: String,
+ lang: String,
+ businessId: Number,
+ sessionFrom: String,
+ sendMessageTitle: String,
+ sendMessagePath: String,
+ sendMessageImg: String,
+ showMessageCard: Boolean,
+ appParameter: String,
+ ariaLabel: String,
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/mixins/link.js b/src/openeuler/miniprogram_npm/@vant/weapp/mixins/link.js
new file mode 100644
index 0000000000000000000000000000000000000000..35959dde33af8c3697065d92827be0df0034df24
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/mixins/link.js
@@ -0,0 +1,30 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+exports.link = void 0;
+exports.link = Behavior({
+ properties: {
+ url: String,
+ linkType: {
+ type: String,
+ value: 'navigateTo',
+ },
+ },
+ methods: {
+ jumpLink: function (urlKey) {
+ if (urlKey === void 0) {
+ urlKey = 'url';
+ }
+ var url = this.data[urlKey];
+ if (url) {
+ if (
+ this.data.linkType === 'navigateTo' &&
+ getCurrentPages().length > 9
+ ) {
+ wx.redirectTo({ url: url });
+ } else {
+ wx[this.data.linkType]({ url: url });
+ }
+ }
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/mixins/open-type.js b/src/openeuler/miniprogram_npm/@vant/weapp/mixins/open-type.js
new file mode 100644
index 0000000000000000000000000000000000000000..d03bf8af48a6ccaaaf06f597e833196f8be3aa63
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/mixins/open-type.js
@@ -0,0 +1,29 @@
+'use strict';
+// @ts-nocheck
+Object.defineProperty(exports, '__esModule', { value: true });
+exports.openType = void 0;
+exports.openType = Behavior({
+ properties: {
+ openType: String,
+ },
+ methods: {
+ bindGetUserInfo: function (event) {
+ this.$emit('getuserinfo', event.detail);
+ },
+ bindContact: function (event) {
+ this.$emit('contact', event.detail);
+ },
+ bindGetPhoneNumber: function (event) {
+ this.$emit('getphonenumber', event.detail);
+ },
+ bindError: function (event) {
+ this.$emit('error', event.detail);
+ },
+ bindLaunchApp: function (event) {
+ this.$emit('launchapp', event.detail);
+ },
+ bindOpenSetting: function (event) {
+ this.$emit('opensetting', event.detail);
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/mixins/page-scroll.js b/src/openeuler/miniprogram_npm/@vant/weapp/mixins/page-scroll.js
new file mode 100644
index 0000000000000000000000000000000000000000..46360441770b03c8541339b5bb1b9e333db7d584
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/mixins/page-scroll.js
@@ -0,0 +1,40 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+exports.pageScrollMixin = void 0;
+var utils_1 = require('../common/utils');
+function onPageScroll(event) {
+ var _a = utils_1.getCurrentPage().vanPageScroller,
+ vanPageScroller = _a === void 0 ? [] : _a;
+ vanPageScroller.forEach(function (scroller) {
+ if (typeof scroller === 'function') {
+ // @ts-ignore
+ scroller(event);
+ }
+ });
+}
+exports.pageScrollMixin = function (scroller) {
+ return Behavior({
+ attached: function () {
+ var page = utils_1.getCurrentPage();
+ if (Array.isArray(page.vanPageScroller)) {
+ page.vanPageScroller.push(scroller.bind(this));
+ } else {
+ page.vanPageScroller =
+ typeof page.onPageScroll === 'function'
+ ? [page.onPageScroll.bind(page), scroller.bind(this)]
+ : [scroller.bind(this)];
+ }
+ page.onPageScroll = onPageScroll;
+ },
+ detached: function () {
+ var _a;
+ var page = utils_1.getCurrentPage();
+ page.vanPageScroller =
+ ((_a = page.vanPageScroller) === null || _a === void 0
+ ? void 0
+ : _a.filter(function (item) {
+ return item !== scroller;
+ })) || [];
+ },
+ });
+};
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/mixins/touch.js b/src/openeuler/miniprogram_npm/@vant/weapp/mixins/touch.js
new file mode 100644
index 0000000000000000000000000000000000000000..9026613328c9c89828ae2b16a421eed183d71701
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/mixins/touch.js
@@ -0,0 +1,40 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+exports.touch = void 0;
+// @ts-nocheck
+var MIN_DISTANCE = 10;
+function getDirection(x, y) {
+ if (x > y && x > MIN_DISTANCE) {
+ return 'horizontal';
+ }
+ if (y > x && y > MIN_DISTANCE) {
+ return 'vertical';
+ }
+ return '';
+}
+exports.touch = Behavior({
+ methods: {
+ resetTouchStatus: function () {
+ this.direction = '';
+ this.deltaX = 0;
+ this.deltaY = 0;
+ this.offsetX = 0;
+ this.offsetY = 0;
+ },
+ touchStart: function (event) {
+ this.resetTouchStatus();
+ var touch = event.touches[0];
+ this.startX = touch.clientX;
+ this.startY = touch.clientY;
+ },
+ touchMove: function (event) {
+ var touch = event.touches[0];
+ this.deltaX = touch.clientX - this.startX;
+ this.deltaY = touch.clientY - this.startY;
+ this.offsetX = Math.abs(this.deltaX);
+ this.offsetY = Math.abs(this.deltaY);
+ this.direction =
+ this.direction || getDirection(this.offsetX, this.offsetY);
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/mixins/transition.js b/src/openeuler/miniprogram_npm/@vant/weapp/mixins/transition.js
new file mode 100644
index 0000000000000000000000000000000000000000..d1eaba70282045d80edbd3936666aa628bb9a5cd
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/mixins/transition.js
@@ -0,0 +1,155 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+exports.transition = void 0;
+// @ts-nocheck
+var utils_1 = require('../common/utils');
+var validator_1 = require('../common/validator');
+var getClassNames = function (name) {
+ return {
+ enter:
+ 'van-' +
+ name +
+ '-enter van-' +
+ name +
+ '-enter-active enter-class enter-active-class',
+ 'enter-to':
+ 'van-' +
+ name +
+ '-enter-to van-' +
+ name +
+ '-enter-active enter-to-class enter-active-class',
+ leave:
+ 'van-' +
+ name +
+ '-leave van-' +
+ name +
+ '-leave-active leave-class leave-active-class',
+ 'leave-to':
+ 'van-' +
+ name +
+ '-leave-to van-' +
+ name +
+ '-leave-active leave-to-class leave-active-class',
+ };
+};
+function transition(showDefaultValue) {
+ return Behavior({
+ properties: {
+ customStyle: String,
+ // @ts-ignore
+ show: {
+ type: Boolean,
+ value: showDefaultValue,
+ observer: 'observeShow',
+ },
+ // @ts-ignore
+ duration: {
+ type: null,
+ value: 300,
+ observer: 'observeDuration',
+ },
+ name: {
+ type: String,
+ value: 'fade',
+ },
+ },
+ data: {
+ type: '',
+ inited: false,
+ display: false,
+ },
+ ready: function () {
+ if (this.data.show === true) {
+ this.observeShow(true, false);
+ }
+ },
+ methods: {
+ observeShow: function (value, old) {
+ if (value === old) {
+ return;
+ }
+ value ? this.enter() : this.leave();
+ },
+ enter: function () {
+ var _this = this;
+ var _a = this.data,
+ duration = _a.duration,
+ name = _a.name;
+ var classNames = getClassNames(name);
+ var currentDuration = validator_1.isObj(duration)
+ ? duration.enter
+ : duration;
+ this.status = 'enter';
+ this.$emit('before-enter');
+ utils_1.requestAnimationFrame(function () {
+ if (_this.status !== 'enter') {
+ return;
+ }
+ _this.$emit('enter');
+ _this.setData({
+ inited: true,
+ display: true,
+ classes: classNames.enter,
+ currentDuration: currentDuration,
+ });
+ utils_1.requestAnimationFrame(function () {
+ if (_this.status !== 'enter') {
+ return;
+ }
+ _this.transitionEnded = false;
+ _this.setData({ classes: classNames['enter-to'] });
+ });
+ });
+ },
+ leave: function () {
+ var _this = this;
+ if (!this.data.display) {
+ return;
+ }
+ var _a = this.data,
+ duration = _a.duration,
+ name = _a.name;
+ var classNames = getClassNames(name);
+ var currentDuration = validator_1.isObj(duration)
+ ? duration.leave
+ : duration;
+ this.status = 'leave';
+ this.$emit('before-leave');
+ utils_1.requestAnimationFrame(function () {
+ if (_this.status !== 'leave') {
+ return;
+ }
+ _this.$emit('leave');
+ _this.setData({
+ classes: classNames.leave,
+ currentDuration: currentDuration,
+ });
+ utils_1.requestAnimationFrame(function () {
+ if (_this.status !== 'leave') {
+ return;
+ }
+ _this.transitionEnded = false;
+ setTimeout(function () {
+ return _this.onTransitionEnd();
+ }, currentDuration);
+ _this.setData({ classes: classNames['leave-to'] });
+ });
+ });
+ },
+ onTransitionEnd: function () {
+ if (this.transitionEnded) {
+ return;
+ }
+ this.transitionEnded = true;
+ this.$emit('after-' + this.status);
+ var _a = this.data,
+ show = _a.show,
+ display = _a.display;
+ if (!show && display) {
+ this.setData({ display: false });
+ }
+ },
+ },
+ });
+}
+exports.transition = transition;
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/nav-bar/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/nav-bar/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..286c8ead3f031277414b13ed9a3aaa5e8885b77e
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/nav-bar/index.js
@@ -0,0 +1,68 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+var utils_1 = require('../common/utils');
+component_1.VantComponent({
+ classes: ['title-class'],
+ props: {
+ title: String,
+ fixed: {
+ type: Boolean,
+ observer: 'setHeight',
+ },
+ placeholder: {
+ type: Boolean,
+ observer: 'setHeight',
+ },
+ leftText: String,
+ rightText: String,
+ customStyle: String,
+ leftArrow: Boolean,
+ border: {
+ type: Boolean,
+ value: true,
+ },
+ zIndex: {
+ type: Number,
+ value: 1,
+ },
+ safeAreaInsetTop: {
+ type: Boolean,
+ value: true,
+ },
+ },
+ data: {
+ height: 46,
+ },
+ created: function () {
+ var statusBarHeight = utils_1.getSystemInfoSync().statusBarHeight;
+ this.setData({
+ statusBarHeight: statusBarHeight,
+ height: 46 + statusBarHeight,
+ });
+ },
+ mounted: function () {
+ this.setHeight();
+ },
+ methods: {
+ onClickLeft: function () {
+ this.$emit('click-left');
+ },
+ onClickRight: function () {
+ this.$emit('click-right');
+ },
+ setHeight: function () {
+ var _this = this;
+ if (!this.data.fixed || !this.data.placeholder) {
+ return;
+ }
+ wx.nextTick(function () {
+ utils_1.getRect(_this, '.van-nav-bar').then(function (res) {
+ if (res && 'height' in res) {
+ _this.setData({ height: res.height });
+ }
+ });
+ });
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/nav-bar/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/nav-bar/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..8abfe203d0f960f68e62ffbf80021664bc8aae0a
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/nav-bar/index.json
@@ -0,0 +1,6 @@
+{
+ "component": true,
+ "usingComponents": {
+ "van-icon": "../icon/index"
+ }
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/nav-bar/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/nav-bar/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..5263e8e3319011dc88c9f8f6ac24db62806fdbd3
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/nav-bar/index.wxml
@@ -0,0 +1,42 @@
+
+
+
+
+
+
+
+
+
+
+ {{ leftText }}
+
+
+
+
+ {{ title }}
+
+
+
+ {{ rightText }}
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/nav-bar/index.wxs b/src/openeuler/miniprogram_npm/@vant/weapp/nav-bar/index.wxs
new file mode 100644
index 0000000000000000000000000000000000000000..e28864345c2ea52e577006b0244e0304bf04e16d
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/nav-bar/index.wxs
@@ -0,0 +1,13 @@
+/* eslint-disable */
+var style = require('../wxs/style.wxs');
+
+function barStyle(data) {
+ return style({
+ 'z-index': data.zIndex,
+ 'padding-top': data.safeAreaInsetTop ? data.statusBarHeight + 'px' : 0,
+ });
+}
+
+module.exports = {
+ barStyle: barStyle,
+};
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/nav-bar/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/nav-bar/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..48e9e3f5878f1093495ed4f041cb8f78a9a5c994
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/nav-bar/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-nav-bar{position:relative;text-align:center;-webkit-user-select:none;user-select:none;height:46px;height:var(--nav-bar-height,46px);line-height:46px;line-height:var(--nav-bar-height,46px);background-color:#fff;background-color:var(--nav-bar-background-color,#fff)}.van-nav-bar__content{position:relative;height:100%}.van-nav-bar__text{display:inline-block;vertical-align:middle;margin:0 -16px;margin:0 -var(--padding-md,16px);padding:0 16px;padding:0 var(--padding-md,16px);color:#1989fa;color:var(--nav-bar-text-color,#1989fa)}.van-nav-bar__text--hover{background-color:#f2f3f5;background-color:var(--active-color,#f2f3f5)}.van-nav-bar__arrow{vertical-align:middle;font-size:16px!important;font-size:var(--nav-bar-arrow-size,16px)!important;color:#1989fa!important;color:var(--nav-bar-icon-color,#1989fa)!important}.van-nav-bar__arrow+.van-nav-bar__text{margin-left:-20px;padding-left:25px}.van-nav-bar--fixed{position:fixed;top:0;left:0;width:100%}.van-nav-bar__title{max-width:60%;margin:0 auto;color:#323233;color:var(--nav-bar-title-text-color,#323233);font-weight:500;font-weight:var(--font-weight-bold,500);font-size:16px;font-size:var(--nav-bar-title-font-size,16px)}.van-nav-bar__left,.van-nav-bar__right{position:absolute;top:0;bottom:0;display:-webkit-flex;display:flex;-webkit-align-items:center;align-items:center;font-size:14px;font-size:var(--font-size-md,14px)}.van-nav-bar__left{left:16px;left:var(--padding-md,16px)}.van-nav-bar__right{right:16px;right:var(--padding-md,16px)}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/notice-bar/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/notice-bar/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..55e06a78b214c0c662a42d40a7679afe97da059f
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/notice-bar/index.js
@@ -0,0 +1,132 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+var utils_1 = require('../common/utils');
+component_1.VantComponent({
+ props: {
+ text: {
+ type: String,
+ value: '',
+ observer: 'init',
+ },
+ mode: {
+ type: String,
+ value: '',
+ },
+ url: {
+ type: String,
+ value: '',
+ },
+ openType: {
+ type: String,
+ value: 'navigate',
+ },
+ delay: {
+ type: Number,
+ value: 1,
+ },
+ speed: {
+ type: Number,
+ value: 50,
+ observer: 'init',
+ },
+ scrollable: {
+ type: Boolean,
+ value: true,
+ },
+ leftIcon: {
+ type: String,
+ value: '',
+ },
+ color: String,
+ backgroundColor: String,
+ background: String,
+ wrapable: Boolean,
+ },
+ data: {
+ show: true,
+ },
+ created: function () {
+ this.resetAnimation = wx.createAnimation({
+ duration: 0,
+ timingFunction: 'linear',
+ });
+ },
+ destroyed: function () {
+ this.timer && clearTimeout(this.timer);
+ },
+ mounted: function () {
+ this.init();
+ },
+ methods: {
+ init: function () {
+ var _this = this;
+ utils_1.requestAnimationFrame(function () {
+ Promise.all([
+ utils_1.getRect(_this, '.van-notice-bar__content'),
+ utils_1.getRect(_this, '.van-notice-bar__wrap'),
+ ]).then(function (rects) {
+ var contentRect = rects[0],
+ wrapRect = rects[1];
+ if (
+ contentRect == null ||
+ wrapRect == null ||
+ !contentRect.width ||
+ !wrapRect.width
+ ) {
+ return;
+ }
+ var _a = _this.data,
+ speed = _a.speed,
+ scrollable = _a.scrollable,
+ delay = _a.delay;
+ if (scrollable || wrapRect.width < contentRect.width) {
+ var duration = (contentRect.width / speed) * 1000;
+ _this.wrapWidth = wrapRect.width;
+ _this.contentWidth = contentRect.width;
+ _this.duration = duration;
+ _this.animation = wx.createAnimation({
+ duration: duration,
+ timingFunction: 'linear',
+ delay: delay,
+ });
+ _this.scroll();
+ }
+ });
+ });
+ },
+ scroll: function () {
+ var _this = this;
+ this.timer && clearTimeout(this.timer);
+ this.timer = null;
+ this.setData({
+ animationData: this.resetAnimation
+ .translateX(this.wrapWidth)
+ .step()
+ .export(),
+ });
+ utils_1.requestAnimationFrame(function () {
+ _this.setData({
+ animationData: _this.animation
+ .translateX(-_this.contentWidth)
+ .step()
+ .export(),
+ });
+ });
+ this.timer = setTimeout(function () {
+ _this.scroll();
+ }, this.duration);
+ },
+ onClickIcon: function (event) {
+ if (this.data.mode === 'closeable') {
+ this.timer && clearTimeout(this.timer);
+ this.timer = null;
+ this.setData({ show: false });
+ this.$emit('close', event.detail);
+ }
+ },
+ onClick: function (event) {
+ this.$emit('click', event);
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/notice-bar/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/notice-bar/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..8abfe203d0f960f68e62ffbf80021664bc8aae0a
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/notice-bar/index.json
@@ -0,0 +1,6 @@
+{
+ "component": true,
+ "usingComponents": {
+ "van-icon": "../icon/index"
+ }
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/notice-bar/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/notice-bar/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..30c9a54318e413a2e974e64674225a12e0953797
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/notice-bar/index.wxml
@@ -0,0 +1,39 @@
+
+
+
+
+
+
+
+
+
+ {{ text }}
+
+
+
+
+
+
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/notice-bar/index.wxs b/src/openeuler/miniprogram_npm/@vant/weapp/notice-bar/index.wxs
new file mode 100644
index 0000000000000000000000000000000000000000..571840c3bb664daff3bfd732df176b3d92d9362b
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/notice-bar/index.wxs
@@ -0,0 +1,15 @@
+/* eslint-disable */
+var style = require('../wxs/style.wxs');
+var addUnit = require('../wxs/add-unit.wxs');
+
+function rootStyle(data) {
+ return style({
+ color: data.color,
+ 'background-color': data.backgroundColor,
+ background: data.background,
+ });
+}
+
+module.exports = {
+ rootStyle: rootStyle,
+};
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/notice-bar/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/notice-bar/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..6a498587043ddd40ed218e8e3f68cdf3f2958dbf
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/notice-bar/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-notice-bar{display:-webkit-flex;display:flex;-webkit-align-items:center;align-items:center;height:40px;height:var(--notice-bar-height,40px);padding:0 16px;padding:var(--notice-bar-padding,0 16px);font-size:14px;font-size:var(--notice-bar-font-size,14px);color:#ed6a0c;color:var(--notice-bar-text-color,#ed6a0c);line-height:24px;line-height:var(--notice-bar-line-height,24px);background-color:#fffbe8;background-color:var(--notice-bar-background-color,#fffbe8)}.van-notice-bar--withicon{position:relative;padding-right:40px}.van-notice-bar--wrapable{height:auto;padding:8px 16px;padding:var(--notice-bar-wrapable-padding,8px 16px)}.van-notice-bar--wrapable .van-notice-bar__wrap{height:auto}.van-notice-bar--wrapable .van-notice-bar__content{position:relative;white-space:normal}.van-notice-bar__left-icon{display:-webkit-flex;display:flex;-webkit-align-items:center;align-items:center;margin-right:4px;vertical-align:middle}.van-notice-bar__left-icon,.van-notice-bar__right-icon{font-size:16px;font-size:var(--notice-bar-icon-size,16px);min-width:22px;min-width:var(--notice-bar-icon-min-width,22px)}.van-notice-bar__right-icon{position:absolute;top:10px;right:15px}.van-notice-bar__wrap{position:relative;-webkit-flex:1;flex:1;overflow:hidden;height:24px;height:var(--notice-bar-line-height,24px)}.van-notice-bar__content{position:absolute;white-space:nowrap}.van-notice-bar__content.van-ellipsis{max-width:100%}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/notify/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/notify/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..20ea20bc77f64022ba04888d1e625a897ea0c938
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/notify/index.js
@@ -0,0 +1,70 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+var color_1 = require('../common/color');
+var utils_1 = require('../common/utils');
+component_1.VantComponent({
+ props: {
+ message: String,
+ background: String,
+ type: {
+ type: String,
+ value: 'danger',
+ },
+ color: {
+ type: String,
+ value: color_1.WHITE,
+ },
+ duration: {
+ type: Number,
+ value: 3000,
+ },
+ zIndex: {
+ type: Number,
+ value: 110,
+ },
+ safeAreaInsetTop: {
+ type: Boolean,
+ value: false,
+ },
+ top: null,
+ },
+ data: {
+ show: false,
+ onOpened: null,
+ onClose: null,
+ onClick: null,
+ },
+ created: function () {
+ var statusBarHeight = utils_1.getSystemInfoSync().statusBarHeight;
+ this.setData({ statusBarHeight: statusBarHeight });
+ },
+ methods: {
+ show: function () {
+ var _this = this;
+ var _a = this.data,
+ duration = _a.duration,
+ onOpened = _a.onOpened;
+ clearTimeout(this.timer);
+ this.setData({ show: true });
+ wx.nextTick(onOpened);
+ if (duration > 0 && duration !== Infinity) {
+ this.timer = setTimeout(function () {
+ _this.hide();
+ }, duration);
+ }
+ },
+ hide: function () {
+ var onClose = this.data.onClose;
+ clearTimeout(this.timer);
+ this.setData({ show: false });
+ wx.nextTick(onClose);
+ },
+ onTap: function (event) {
+ var onClick = this.data.onClick;
+ if (onClick) {
+ onClick(event.detail);
+ }
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/notify/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/notify/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..eaad93ef9488a8f8f9328591278d7f8c4a56e1df
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/notify/index.json
@@ -0,0 +1,6 @@
+{
+ "component": true,
+ "usingComponents": {
+ "van-transition": "../transition/index"
+ }
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/notify/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/notify/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..9648d9b7d860622c6f235055ae05d316421665b4
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/notify/index.wxml
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+ {{ message }}
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/notify/index.wxs b/src/openeuler/miniprogram_npm/@vant/weapp/notify/index.wxs
new file mode 100644
index 0000000000000000000000000000000000000000..e4c6da9fc871dfa134c8266339ebe059dfcbac39
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/notify/index.wxs
@@ -0,0 +1,22 @@
+/* eslint-disable */
+var style = require('../wxs/style.wxs');
+var addUnit = require('../wxs/add-unit.wxs');
+
+function rootStyle(data) {
+ return style({
+ 'z-index': data.zIndex,
+ top: addUnit(data.top),
+ });
+}
+
+function notifyStyle(data) {
+ return style({
+ background: data.background,
+ color: data.color,
+ });
+}
+
+module.exports = {
+ rootStyle: rootStyle,
+ notifyStyle: notifyStyle,
+};
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/notify/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/notify/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..8a7688b3ef928c62312df3f2e3dfc70bd0e5cbda
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/notify/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-notify{text-align:center;word-wrap:break-word;padding:6px 15px;padding:var(--notify-padding,6px 15px);font-size:14px;font-size:var(--notify-font-size,14px);line-height:20px;line-height:var(--notify-line-height,20px)}.van-notify__container{position:fixed;top:0;left:0;box-sizing:border-box;width:100%}.van-notify--primary{background-color:#1989fa;background-color:var(--notify-primary-background-color,#1989fa)}.van-notify--success{background-color:#07c160;background-color:var(--notify-success-background-color,#07c160)}.van-notify--danger{background-color:#ee0a24;background-color:var(--notify-danger-background-color,#ee0a24)}.van-notify--warning{background-color:#ff976a;background-color:var(--notify-warning-background-color,#ff976a)}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/notify/notify.js b/src/openeuler/miniprogram_npm/@vant/weapp/notify/notify.js
new file mode 100644
index 0000000000000000000000000000000000000000..30fb8542e93e17d936f7a0c637d5d56741201ddf
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/notify/notify.js
@@ -0,0 +1,64 @@
+'use strict';
+var __assign =
+ (this && this.__assign) ||
+ function () {
+ __assign =
+ Object.assign ||
+ function (t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s)
+ if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+ };
+Object.defineProperty(exports, '__esModule', { value: true });
+var color_1 = require('../common/color');
+var defaultOptions = {
+ selector: '#van-notify',
+ type: 'danger',
+ message: '',
+ background: '',
+ duration: 3000,
+ zIndex: 110,
+ top: 0,
+ color: color_1.WHITE,
+ safeAreaInsetTop: false,
+ onClick: function () {},
+ onOpened: function () {},
+ onClose: function () {},
+};
+function parseOptions(message) {
+ if (message == null) {
+ return {};
+ }
+ return typeof message === 'string' ? { message: message } : message;
+}
+function getContext() {
+ var pages = getCurrentPages();
+ return pages[pages.length - 1];
+}
+function Notify(options) {
+ options = __assign(__assign({}, defaultOptions), parseOptions(options));
+ var context = options.context || getContext();
+ var notify = context.selectComponent(options.selector);
+ delete options.context;
+ delete options.selector;
+ if (notify) {
+ notify.setData(options);
+ notify.show();
+ return notify;
+ }
+ console.warn('未找到 van-notify 节点,请确认 selector 及 context 是否正确');
+}
+exports.default = Notify;
+Notify.clear = function (options) {
+ options = __assign(__assign({}, defaultOptions), parseOptions(options));
+ var context = options.context || getContext();
+ var notify = context.selectComponent(options.selector);
+ if (notify) {
+ notify.hide();
+ }
+};
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/overlay/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/overlay/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..2ea1424e7cc557ac5cbd99f5df5339cd12ae8a18
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/overlay/index.js
@@ -0,0 +1,24 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+component_1.VantComponent({
+ props: {
+ show: Boolean,
+ customStyle: String,
+ duration: {
+ type: null,
+ value: 300,
+ },
+ zIndex: {
+ type: Number,
+ value: 1,
+ },
+ },
+ methods: {
+ onClick: function () {
+ this.$emit('click');
+ },
+ // for prevent touchmove
+ noop: function () {},
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/overlay/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/overlay/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..eaad93ef9488a8f8f9328591278d7f8c4a56e1df
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/overlay/index.json
@@ -0,0 +1,6 @@
+{
+ "component": true,
+ "usingComponents": {
+ "van-transition": "../transition/index"
+ }
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/overlay/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/overlay/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..a65de2b9e152bb9cbd9c441d52c2fcdde386a79a
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/overlay/index.wxml
@@ -0,0 +1,10 @@
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/overlay/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/overlay/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..0f9df0e864d79070785805775fcdca7637fb2da1
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/overlay/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.7);background-color:var(--overlay-background-color,rgba(0,0,0,.7))}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/panel/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/panel/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..7048a5d8c2f222c4a187afe83502b7a58fb3f503
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/panel/index.js
@@ -0,0 +1,12 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+component_1.VantComponent({
+ classes: ['header-class', 'footer-class'],
+ props: {
+ desc: String,
+ title: String,
+ status: String,
+ useFooterSlot: Boolean,
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/panel/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/panel/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..7069216d021a1a9b865d67964a61326b17debebb
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/panel/index.json
@@ -0,0 +1,6 @@
+{
+ "component": true,
+ "usingComponents": {
+ "van-cell": "../cell/index"
+ }
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/panel/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/panel/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..e277c9d516522e4f38e8c91e5045a0185d1df3f9
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/panel/index.wxml
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/panel/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/panel/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..ffd9df91e8d913b4c48d38eae94435d0130b19d0
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/panel/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-panel{background:#fff;background:var(--panel-background-color,#fff)}.van-panel__header-value{color:#ee0a24;color:var(--panel-header-value-color,#ee0a24)}.van-panel__footer{padding:8px 16px;padding:var(--panel-footer-padding,8px 16px)}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/picker-column/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/picker-column/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..dd9a57042613e0590faaf86e0897b836d4aa5cfd
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/picker-column/index.js
@@ -0,0 +1,132 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+var utils_1 = require('../common/utils');
+var validator_1 = require('../common/validator');
+var DEFAULT_DURATION = 200;
+component_1.VantComponent({
+ classes: ['active-class'],
+ props: {
+ valueKey: String,
+ className: String,
+ itemHeight: Number,
+ visibleItemCount: Number,
+ initialOptions: {
+ type: Array,
+ value: [],
+ },
+ defaultIndex: {
+ type: Number,
+ value: 0,
+ observer: function (value) {
+ this.setIndex(value);
+ },
+ },
+ },
+ data: {
+ startY: 0,
+ offset: 0,
+ duration: 0,
+ startOffset: 0,
+ options: [],
+ currentIndex: 0,
+ },
+ created: function () {
+ var _this = this;
+ var _a = this.data,
+ defaultIndex = _a.defaultIndex,
+ initialOptions = _a.initialOptions;
+ this.set({
+ currentIndex: defaultIndex,
+ options: initialOptions,
+ }).then(function () {
+ _this.setIndex(defaultIndex);
+ });
+ },
+ methods: {
+ getCount: function () {
+ return this.data.options.length;
+ },
+ onTouchStart: function (event) {
+ this.setData({
+ startY: event.touches[0].clientY,
+ startOffset: this.data.offset,
+ duration: 0,
+ });
+ },
+ onTouchMove: function (event) {
+ var data = this.data;
+ var deltaY = event.touches[0].clientY - data.startY;
+ this.setData({
+ offset: utils_1.range(
+ data.startOffset + deltaY,
+ -(this.getCount() * data.itemHeight),
+ data.itemHeight
+ ),
+ });
+ },
+ onTouchEnd: function () {
+ var data = this.data;
+ if (data.offset !== data.startOffset) {
+ this.setData({ duration: DEFAULT_DURATION });
+ var index = utils_1.range(
+ Math.round(-data.offset / data.itemHeight),
+ 0,
+ this.getCount() - 1
+ );
+ this.setIndex(index, true);
+ }
+ },
+ onClickItem: function (event) {
+ var index = event.currentTarget.dataset.index;
+ this.setIndex(index, true);
+ },
+ adjustIndex: function (index) {
+ var data = this.data;
+ var count = this.getCount();
+ index = utils_1.range(index, 0, count);
+ for (var i = index; i < count; i++) {
+ if (!this.isDisabled(data.options[i])) return i;
+ }
+ for (var i = index - 1; i >= 0; i--) {
+ if (!this.isDisabled(data.options[i])) return i;
+ }
+ },
+ isDisabled: function (option) {
+ return validator_1.isObj(option) && option.disabled;
+ },
+ getOptionText: function (option) {
+ var data = this.data;
+ return validator_1.isObj(option) && data.valueKey in option
+ ? option[data.valueKey]
+ : option;
+ },
+ setIndex: function (index, userAction) {
+ var _this = this;
+ var data = this.data;
+ index = this.adjustIndex(index) || 0;
+ var offset = -index * data.itemHeight;
+ if (index !== data.currentIndex) {
+ return this.set({ offset: offset, currentIndex: index }).then(
+ function () {
+ userAction && _this.$emit('change', index);
+ }
+ );
+ }
+ return this.set({ offset: offset });
+ },
+ setValue: function (value) {
+ var options = this.data.options;
+ for (var i = 0; i < options.length; i++) {
+ if (this.getOptionText(options[i]) === value) {
+ return this.setIndex(i);
+ }
+ }
+ return Promise.resolve();
+ },
+ getValue: function () {
+ var data = this.data;
+ return data.options[data.currentIndex];
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/picker-column/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/picker-column/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..efdc3c823a323c17832b921a6bccbcd398609183
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/picker-column/index.json
@@ -0,0 +1,3 @@
+{
+ "component": true
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/picker-column/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/picker-column/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..eae4151835255b0d7ac4100e7e7a3acb115ad12d
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/picker-column/index.wxml
@@ -0,0 +1,23 @@
+
+
+
+
+
+ {{ computed.optionText(option, valueKey) }}
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/picker-column/index.wxs b/src/openeuler/miniprogram_npm/@vant/weapp/picker-column/index.wxs
new file mode 100644
index 0000000000000000000000000000000000000000..62c45de1d622882af0fb3e47d8b3117a745b29a8
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/picker-column/index.wxs
@@ -0,0 +1,36 @@
+/* eslint-disable */
+var style = require('../wxs/style.wxs');
+var addUnit = require('../wxs/add-unit.wxs');
+
+function isObj(x) {
+ var type = typeof x;
+ return x !== null && (type === 'object' || type === 'function');
+}
+
+function optionText(option, valueKey) {
+ return isObj(option) && option[valueKey] != null ? option[valueKey] : option;
+}
+
+function rootStyle(data) {
+ return style({
+ height: addUnit(data.itemHeight * data.visibleItemCount),
+ });
+}
+
+function wrapperStyle(data) {
+ var offset = addUnit(
+ data.offset + (data.itemHeight * (data.visibleItemCount - 1)) / 2
+ );
+
+ return style({
+ transition: 'transform ' + data.duration + 'ms',
+ 'line-height': addUnit(data.itemHeight),
+ transform: 'translate3d(0, ' + offset + ', 0)',
+ });
+}
+
+module.exports = {
+ optionText: optionText,
+ rootStyle: rootStyle,
+ wrapperStyle: wrapperStyle,
+};
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/picker-column/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/picker-column/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..c5c69100146f3c6d22bf0fd7206caf0143de5a55
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/picker-column/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-picker-column{overflow:hidden;text-align:center;color:#000;color:var(--picker-option-text-color,#000);font-size:16px;font-size:var(--picker-option-font-size,16px)}.van-picker-column__item{padding:0 5px}.van-picker-column__item--selected{font-weight:500;font-weight:var(--font-weight-bold,500);color:#323233;color:var(--picker-option-selected-text-color,#323233)}.van-picker-column__item--disabled{opacity:.3;opacity:var(--picker-option-disabled-opacity,.3)}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/picker/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/picker/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..42587d3ee06d2a327c52a04768ab22b88c97e2ad
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/picker/index.js
@@ -0,0 +1,179 @@
+'use strict';
+var __assign =
+ (this && this.__assign) ||
+ function () {
+ __assign =
+ Object.assign ||
+ function (t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s)
+ if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+ };
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+var shared_1 = require('./shared');
+component_1.VantComponent({
+ classes: ['active-class', 'toolbar-class', 'column-class'],
+ props: __assign(__assign({}, shared_1.pickerProps), {
+ valueKey: {
+ type: String,
+ value: 'text',
+ },
+ toolbarPosition: {
+ type: String,
+ value: 'top',
+ },
+ defaultIndex: {
+ type: Number,
+ value: 0,
+ },
+ columns: {
+ type: Array,
+ value: [],
+ observer: function (columns) {
+ if (columns === void 0) {
+ columns = [];
+ }
+ this.simple = columns.length && !columns[0].values;
+ if (Array.isArray(this.children) && this.children.length) {
+ this.setColumns().catch(function () {});
+ }
+ },
+ },
+ }),
+ beforeCreate: function () {
+ var _this = this;
+ Object.defineProperty(this, 'children', {
+ get: function () {
+ return _this.selectAllComponents('.van-picker__column') || [];
+ },
+ });
+ },
+ methods: {
+ noop: function () {},
+ setColumns: function () {
+ var _this = this;
+ var data = this.data;
+ var columns = this.simple ? [{ values: data.columns }] : data.columns;
+ var stack = columns.map(function (column, index) {
+ return _this.setColumnValues(index, column.values);
+ });
+ return Promise.all(stack);
+ },
+ emit: function (event) {
+ var type = event.currentTarget.dataset.type;
+ if (this.simple) {
+ this.$emit(type, {
+ value: this.getColumnValue(0),
+ index: this.getColumnIndex(0),
+ });
+ } else {
+ this.$emit(type, {
+ value: this.getValues(),
+ index: this.getIndexes(),
+ });
+ }
+ },
+ onChange: function (event) {
+ if (this.simple) {
+ this.$emit('change', {
+ picker: this,
+ value: this.getColumnValue(0),
+ index: this.getColumnIndex(0),
+ });
+ } else {
+ this.$emit('change', {
+ picker: this,
+ value: this.getValues(),
+ index: event.currentTarget.dataset.index,
+ });
+ }
+ },
+ // get column instance by index
+ getColumn: function (index) {
+ return this.children[index];
+ },
+ // get column value by index
+ getColumnValue: function (index) {
+ var column = this.getColumn(index);
+ return column && column.getValue();
+ },
+ // set column value by index
+ setColumnValue: function (index, value) {
+ var column = this.getColumn(index);
+ if (column == null) {
+ return Promise.reject(new Error('setColumnValue: 对应列不存在'));
+ }
+ return column.setValue(value);
+ },
+ // get column option index by column index
+ getColumnIndex: function (columnIndex) {
+ return (this.getColumn(columnIndex) || {}).data.currentIndex;
+ },
+ // set column option index by column index
+ setColumnIndex: function (columnIndex, optionIndex) {
+ var column = this.getColumn(columnIndex);
+ if (column == null) {
+ return Promise.reject(new Error('setColumnIndex: 对应列不存在'));
+ }
+ return column.setIndex(optionIndex);
+ },
+ // get options of column by index
+ getColumnValues: function (index) {
+ return (this.children[index] || {}).data.options;
+ },
+ // set options of column by index
+ setColumnValues: function (index, options, needReset) {
+ if (needReset === void 0) {
+ needReset = true;
+ }
+ var column = this.children[index];
+ if (column == null) {
+ return Promise.reject(new Error('setColumnValues: 对应列不存在'));
+ }
+ var isSame =
+ JSON.stringify(column.data.options) === JSON.stringify(options);
+ if (isSame) {
+ return Promise.resolve();
+ }
+ return column.set({ options: options }).then(function () {
+ if (needReset) {
+ column.setIndex(0);
+ }
+ });
+ },
+ // get values of all columns
+ getValues: function () {
+ return this.children.map(function (child) {
+ return child.getValue();
+ });
+ },
+ // set values of all columns
+ setValues: function (values) {
+ var _this = this;
+ var stack = values.map(function (value, index) {
+ return _this.setColumnValue(index, value);
+ });
+ return Promise.all(stack);
+ },
+ // get indexes of all columns
+ getIndexes: function () {
+ return this.children.map(function (child) {
+ return child.data.currentIndex;
+ });
+ },
+ // set indexes of all columns
+ setIndexes: function (indexes) {
+ var _this = this;
+ var stack = indexes.map(function (optionIndex, columnIndex) {
+ return _this.setColumnIndex(columnIndex, optionIndex);
+ });
+ return Promise.all(stack);
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/picker/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/picker/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..bbeaf0addb1f5391490df9614ebb737247f75d25
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/picker/index.json
@@ -0,0 +1,7 @@
+{
+ "component": true,
+ "usingComponents": {
+ "picker-column": "../picker-column/index",
+ "loading": "../loading/index"
+ }
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/picker/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/picker/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..5b31ab6db62bcee435f091ec3776dcbd926267f2
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/picker/index.wxml
@@ -0,0 +1,37 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/picker/index.wxs b/src/openeuler/miniprogram_npm/@vant/weapp/picker/index.wxs
new file mode 100644
index 0000000000000000000000000000000000000000..c8a91ab473fdf4e3ca88892c4322493df6b264f5
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/picker/index.wxs
@@ -0,0 +1,42 @@
+/* eslint-disable */
+var style = require('../wxs/style.wxs');
+var addUnit = require('../wxs/add-unit.wxs');
+var array = require('../wxs/array.wxs');
+
+function columnsStyle(data) {
+ return style({
+ height: addUnit(data.itemHeight * data.visibleItemCount),
+ });
+}
+
+function maskStyle(data) {
+ return style({
+ 'background-size':
+ '100% ' + addUnit((data.itemHeight * (data.visibleItemCount - 1)) / 2),
+ });
+}
+
+function frameStyle(data) {
+ return style({
+ height: addUnit(data.itemHeight),
+ });
+}
+
+function columns(columns) {
+ if (!array.isArray(columns)) {
+ return [];
+ }
+
+ if (columns.length && !columns[0].values) {
+ return [{ values: columns }];
+ }
+
+ return columns;
+}
+
+module.exports = {
+ columnsStyle: columnsStyle,
+ frameStyle: frameStyle,
+ maskStyle: maskStyle,
+ columns: columns,
+};
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/picker/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/picker/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..f74b164bbe404b0f66e34788872755a98730977a
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/picker/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-picker{position:relative;overflow:hidden;-webkit-text-size-adjust:100%;-webkit-user-select:none;user-select:none;background-color:#fff;background-color:var(--picker-background-color,#fff)}.van-picker__toolbar{display:-webkit-flex;display:flex;-webkit-justify-content:space-between;justify-content:space-between;height:44px;height:var(--picker-toolbar-height,44px);line-height:44px;line-height:var(--picker-toolbar-height,44px)}.van-picker__cancel,.van-picker__confirm{padding:0 16px;padding:var(--picker-action-padding,0 16px);font-size:14px;font-size:var(--picker-action-font-size,14px)}.van-picker__cancel--hover,.van-picker__confirm--hover{opacity:.7}.van-picker__confirm{color:#576b95;color:var(--picker-confirm-action-color,#576b95)}.van-picker__cancel{color:#969799;color:var(--picker-cancel-action-color,#969799)}.van-picker__title{max-width:50%;text-align:center;font-weight:500;font-weight:var(--font-weight-bold,500);font-size:16px;font-size:var(--picker-option-font-size,16px)}.van-picker__columns{position:relative;display:-webkit-flex;display:flex}.van-picker__column{-webkit-flex:1 1;flex:1 1;width:0}.van-picker__loading{position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;display:-webkit-flex;display:flex;-webkit-align-items:center;align-items:center;-webkit-justify-content:center;justify-content:center;background-color:hsla(0,0%,100%,.9);background-color:var(--picker-loading-mask-color,hsla(0,0%,100%,.9))}.van-picker__mask{top:0;left:0;z-index:2;width:100%;height:100%;background-image:linear-gradient(180deg,hsla(0,0%,100%,.9),hsla(0,0%,100%,.4)),linear-gradient(0deg,hsla(0,0%,100%,.9),hsla(0,0%,100%,.4));background-repeat:no-repeat;background-position:top,bottom;-webkit-backface-visibility:hidden;backface-visibility:hidden}.van-picker__frame,.van-picker__mask{position:absolute;pointer-events:none}.van-picker__frame{top:50%;right:16px;left:16px;z-index:1;-webkit-transform:translateY(-50%);transform:translateY(-50%)}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/picker/shared.js b/src/openeuler/miniprogram_npm/@vant/weapp/picker/shared.js
new file mode 100644
index 0000000000000000000000000000000000000000..02c9aaf1abd8d603f3f9750821b7d06de6654af5
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/picker/shared.js
@@ -0,0 +1,24 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+exports.pickerProps = void 0;
+exports.pickerProps = {
+ title: String,
+ loading: Boolean,
+ showToolbar: Boolean,
+ cancelButtonText: {
+ type: String,
+ value: '取消',
+ },
+ confirmButtonText: {
+ type: String,
+ value: '确认',
+ },
+ visibleItemCount: {
+ type: Number,
+ value: 6,
+ },
+ itemHeight: {
+ type: Number,
+ value: 44,
+ },
+};
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/picker/toolbar.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/picker/toolbar.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..2502578683f259e8d88a79c8f0afa4b35b53b6d5
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/picker/toolbar.wxml
@@ -0,0 +1,23 @@
+
+
+ {{ cancelButtonText }}
+
+ {{
+ title
+ }}
+
+ {{ confirmButtonText }}
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/popup/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/popup/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..0687bdb714fae9cbeb36d1911b96c08d21d2b17e
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/popup/index.js
@@ -0,0 +1,89 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+var transition_1 = require('../mixins/transition');
+component_1.VantComponent({
+ classes: [
+ 'enter-class',
+ 'enter-active-class',
+ 'enter-to-class',
+ 'leave-class',
+ 'leave-active-class',
+ 'leave-to-class',
+ 'close-icon-class',
+ ],
+ mixins: [transition_1.transition(false)],
+ props: {
+ round: Boolean,
+ closeable: Boolean,
+ customStyle: String,
+ overlayStyle: String,
+ transition: {
+ type: String,
+ observer: 'observeClass',
+ },
+ zIndex: {
+ type: Number,
+ value: 100,
+ },
+ overlay: {
+ type: Boolean,
+ value: true,
+ },
+ closeIcon: {
+ type: String,
+ value: 'cross',
+ },
+ closeIconPosition: {
+ type: String,
+ value: 'top-right',
+ },
+ closeOnClickOverlay: {
+ type: Boolean,
+ value: true,
+ },
+ position: {
+ type: String,
+ value: 'center',
+ observer: 'observeClass',
+ },
+ safeAreaInsetBottom: {
+ type: Boolean,
+ value: true,
+ },
+ safeAreaInsetTop: {
+ type: Boolean,
+ value: false,
+ },
+ },
+ created: function () {
+ this.observeClass();
+ },
+ methods: {
+ onClickCloseIcon: function () {
+ this.$emit('close');
+ },
+ onClickOverlay: function () {
+ this.$emit('click-overlay');
+ if (this.data.closeOnClickOverlay) {
+ this.$emit('close');
+ }
+ },
+ observeClass: function () {
+ var _a = this.data,
+ transition = _a.transition,
+ position = _a.position,
+ duration = _a.duration;
+ var updateData = {
+ name: transition || position,
+ };
+ if (transition === 'none') {
+ updateData.duration = 0;
+ this.originDuration = duration;
+ } else if (this.originDuration != null) {
+ updateData.duration = this.originDuration;
+ }
+ this.setData(updateData);
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/popup/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/popup/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..deabcd8e57727d5316a7e41b6b130db6d9c213af
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/popup/index.json
@@ -0,0 +1,7 @@
+{
+ "component": true,
+ "usingComponents": {
+ "van-icon": "../icon/index",
+ "van-overlay": "../overlay/index"
+ }
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/popup/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/popup/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..2287f4cd7377650af6bcee85dd1177abf9990b21
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/popup/index.wxml
@@ -0,0 +1,25 @@
+
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/popup/index.wxs b/src/openeuler/miniprogram_npm/@vant/weapp/popup/index.wxs
new file mode 100644
index 0000000000000000000000000000000000000000..1751dd583146249dea848c70fee98cdccdd2b826
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/popup/index.wxs
@@ -0,0 +1,18 @@
+/* eslint-disable */
+var style = require('../wxs/style.wxs');
+
+function popupStyle(data) {
+ return style([
+ {
+ 'z-index': data.zIndex,
+ '-webkit-transition-duration': data.currentDuration + 'ms',
+ 'transition-duration': data.currentDuration + 'ms',
+ },
+ data.display ? null : 'display: none',
+ data.customStyle,
+ ]);
+}
+
+module.exports = {
+ popupStyle: popupStyle,
+};
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/popup/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/popup/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..a3d6e6fd1b37e7b30aa57c5676b0d247baa1ebea
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/popup/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-popup{position:fixed;box-sizing:border-box;max-height:100%;overflow-y:auto;transition-timing-function:ease;-webkit-animation:ease both;animation:ease both;-webkit-overflow-scrolling:touch;background-color:#fff;background-color:var(--popup-background-color,#fff)}.van-popup--center{top:50%;left:50%;-webkit-transform:translate3d(-50%,-50%,0);transform:translate3d(-50%,-50%,0)}.van-popup--center.van-popup--round{border-radius:16px;border-radius:var(--popup-round-border-radius,16px)}.van-popup--top{top:0;left:0;width:100%}.van-popup--top.van-popup--round{border-radius:0 0 16px 16px;border-radius:0 0 var(--popup-round-border-radius,16px) var(--popup-round-border-radius,16px)}.van-popup--right{top:50%;right:0;-webkit-transform:translate3d(0,-50%,0);transform:translate3d(0,-50%,0)}.van-popup--right.van-popup--round{border-radius:16px 0 0 16px;border-radius:var(--popup-round-border-radius,16px) 0 0 var(--popup-round-border-radius,16px)}.van-popup--bottom{bottom:0;left:0;width:100%}.van-popup--bottom.van-popup--round{border-radius:16px 16px 0 0;border-radius:var(--popup-round-border-radius,16px) var(--popup-round-border-radius,16px) 0 0}.van-popup--left{top:50%;left:0;-webkit-transform:translate3d(0,-50%,0);transform:translate3d(0,-50%,0)}.van-popup--left.van-popup--round{border-radius:0 16px 16px 0;border-radius:0 var(--popup-round-border-radius,16px) var(--popup-round-border-radius,16px) 0}.van-popup--bottom.van-popup--safe{padding-bottom:env(safe-area-inset-bottom)}.van-popup--safeTop{padding-top:env(safe-area-inset-top)}.van-popup__close-icon{position:absolute;z-index:1;z-index:var(--popup-close-icon-z-index,1);color:#969799;color:var(--popup-close-icon-color,#969799);font-size:18px;font-size:var(--popup-close-icon-size,18px)}.van-popup__close-icon--top-left{top:16px;top:var(--popup-close-icon-margin,16px);left:16px;left:var(--popup-close-icon-margin,16px)}.van-popup__close-icon--top-right{top:16px;top:var(--popup-close-icon-margin,16px);right:16px;right:var(--popup-close-icon-margin,16px)}.van-popup__close-icon--bottom-left{bottom:16px;bottom:var(--popup-close-icon-margin,16px);left:16px;left:var(--popup-close-icon-margin,16px)}.van-popup__close-icon--bottom-right{right:16px;right:var(--popup-close-icon-margin,16px);bottom:16px;bottom:var(--popup-close-icon-margin,16px)}.van-popup__close-icon:active{opacity:.6}.van-scale-enter-active,.van-scale-leave-active{transition-property:opacity,-webkit-transform;transition-property:opacity,transform;transition-property:opacity,transform,-webkit-transform}.van-scale-enter,.van-scale-leave-to{-webkit-transform:translate3d(-50%,-50%,0) scale(.7);transform:translate3d(-50%,-50%,0) scale(.7);opacity:0}.van-fade-enter-active,.van-fade-leave-active{transition-property:opacity}.van-fade-enter,.van-fade-leave-to{opacity:0}.van-center-enter-active,.van-center-leave-active{transition-property:opacity}.van-center-enter,.van-center-leave-to{opacity:0}.van-bottom-enter-active,.van-bottom-leave-active,.van-left-enter-active,.van-left-leave-active,.van-right-enter-active,.van-right-leave-active,.van-top-enter-active,.van-top-leave-active{transition-property:-webkit-transform;transition-property:transform;transition-property:transform,-webkit-transform}.van-bottom-enter,.van-bottom-leave-to{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}.van-top-enter,.van-top-leave-to{-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}.van-left-enter,.van-left-leave-to{-webkit-transform:translate3d(-100%,-50%,0);transform:translate3d(-100%,-50%,0)}.van-right-enter,.van-right-leave-to{-webkit-transform:translate3d(100%,-50%,0);transform:translate3d(100%,-50%,0)}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/progress/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/progress/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..e775b367f11589dbc91cb1123b99be012e9a5ea7
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/progress/index.js
@@ -0,0 +1,56 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+var color_1 = require('../common/color');
+var utils_1 = require('../common/utils');
+component_1.VantComponent({
+ props: {
+ inactive: Boolean,
+ percentage: {
+ type: Number,
+ observer: 'setLeft',
+ },
+ pivotText: String,
+ pivotColor: String,
+ trackColor: String,
+ showPivot: {
+ type: Boolean,
+ value: true,
+ },
+ color: {
+ type: String,
+ value: color_1.BLUE,
+ },
+ textColor: {
+ type: String,
+ value: '#fff',
+ },
+ strokeWidth: {
+ type: null,
+ value: 4,
+ },
+ },
+ data: {
+ right: 0,
+ },
+ mounted: function () {
+ this.setLeft();
+ },
+ methods: {
+ setLeft: function () {
+ var _this = this;
+ Promise.all([
+ utils_1.getRect(this, '.van-progress'),
+ utils_1.getRect(this, '.van-progress__pivot'),
+ ]).then(function (_a) {
+ var portion = _a[0],
+ pivot = _a[1];
+ if (portion && pivot) {
+ _this.setData({
+ right: (pivot.width * (_this.data.percentage - 100)) / 100,
+ });
+ }
+ });
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/progress/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/progress/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..efdc3c823a323c17832b921a6bccbcd398609183
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/progress/index.json
@@ -0,0 +1,3 @@
+{
+ "component": true
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/progress/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/progress/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..9cde2d4e8f118b7e24660a34aaa48bf585a8bd9a
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/progress/index.wxml
@@ -0,0 +1,20 @@
+
+
+
+
+
+
+ {{ computed.pivotText(pivotText, percentage) }}
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/progress/index.wxs b/src/openeuler/miniprogram_npm/@vant/weapp/progress/index.wxs
new file mode 100644
index 0000000000000000000000000000000000000000..d1b41b5c47f586b0084f20e9e495293a7e4fadcd
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/progress/index.wxs
@@ -0,0 +1,36 @@
+/* eslint-disable */
+var utils = require('../wxs/utils.wxs');
+var style = require('../wxs/style.wxs');
+
+function pivotText(pivotText, percentage) {
+ return pivotText || percentage + '%';
+}
+
+function rootStyle(data) {
+ return style({
+ 'height': data.strokeWidth ? utils.addUnit(data.strokeWidth) : '',
+ 'background': data.trackColor,
+ });
+}
+
+function portionStyle(data) {
+ return style({
+ background: data.inactive ? '#cacaca' : data.color,
+ width: data.percentage ? data.percentage + '%' : '',
+ });
+}
+
+function pivotStyle(data) {
+ return style({
+ color: data.textColor,
+ right: data.right + 'px',
+ background: data.pivotColor ? data.pivotColor : data.inactive ? '#cacaca' : data.color,
+ });
+}
+
+module.exports = {
+ pivotText: pivotText,
+ rootStyle: rootStyle,
+ portionStyle: portionStyle,
+ pivotStyle: pivotStyle,
+};
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/progress/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/progress/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..3844a59eaf40ad2e722c4b82903320cd13a9aa2b
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/progress/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-progress{position:relative;height:4px;height:var(--progress-height,4px);border-radius:4px;border-radius:var(--progress-height,4px);background:#ebedf0;background:var(--progress-background-color,#ebedf0)}.van-progress__portion{position:absolute;left:0;height:100%;border-radius:inherit;background:#1989fa;background:var(--progress-color,#1989fa)}.van-progress__pivot{position:absolute;top:50%;box-sizing:border-box;min-width:3.6em;text-align:center;word-break:keep-all;border-radius:1em;-webkit-transform:translateY(-50%);transform:translateY(-50%);color:#fff;color:var(--progress-pivot-text-color,#fff);padding:0 5px;padding:var(--progress-pivot-padding,0 5px);font-size:10px;font-size:var(--progress-pivot-font-size,10px);line-height:1.6;line-height:var(--progress-pivot-line-height,1.6);background-color:#1989fa;background-color:var(--progress-pivot-background-color,#1989fa)}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/radio-group/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/radio-group/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..b66deaaff878e595dbcf88e6b74686fb79e6f10f
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/radio-group/index.js
@@ -0,0 +1,40 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+var relation_1 = require('../common/relation');
+component_1.VantComponent({
+ field: true,
+ relation: relation_1.useChildren('radio', function (target) {
+ this.updateChild(target);
+ }),
+ props: {
+ value: {
+ type: null,
+ observer: 'updateChildren',
+ },
+ direction: String,
+ disabled: {
+ type: Boolean,
+ observer: 'updateChildren',
+ },
+ },
+ methods: {
+ updateChildren: function () {
+ var _this = this;
+ this.children.forEach(function (child) {
+ return _this.updateChild(child);
+ });
+ },
+ updateChild: function (child) {
+ var _a = this.data,
+ value = _a.value,
+ disabled = _a.disabled,
+ direction = _a.direction;
+ child.setData({
+ value: value,
+ direction: direction,
+ disabled: disabled || child.data.disabled,
+ });
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/radio-group/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/radio-group/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..efdc3c823a323c17832b921a6bccbcd398609183
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/radio-group/index.json
@@ -0,0 +1,3 @@
+{
+ "component": true
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/radio-group/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/radio-group/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..1b654ac494d147e86a4af26af1f91cf9ac9eaf50
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/radio-group/index.wxml
@@ -0,0 +1,5 @@
+
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/radio-group/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/radio-group/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..df45fd68339980ac44dd92383959de3ef80a45d7
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/radio-group/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-radio-group--horizontal{display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/radio/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/radio/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..7f8bffb675260dcbbbb4955ec39d98d9d8af9112
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/radio/index.js
@@ -0,0 +1,50 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+var relation_1 = require('../common/relation');
+component_1.VantComponent({
+ field: true,
+ relation: relation_1.useParent('radio-group'),
+ classes: ['icon-class', 'label-class'],
+ props: {
+ name: null,
+ value: null,
+ disabled: Boolean,
+ useIconSlot: Boolean,
+ checkedColor: String,
+ labelPosition: {
+ type: String,
+ value: 'right',
+ },
+ labelDisabled: Boolean,
+ shape: {
+ type: String,
+ value: 'round',
+ },
+ iconSize: {
+ type: null,
+ value: 20,
+ },
+ },
+ methods: {
+ emitChange: function (value) {
+ var instance = this.parent || this;
+ instance.$emit('input', value);
+ instance.$emit('change', value);
+ },
+ onChange: function () {
+ if (!this.data.disabled) {
+ this.emitChange(this.data.name);
+ }
+ },
+ onClickLabel: function () {
+ var _a = this.data,
+ disabled = _a.disabled,
+ labelDisabled = _a.labelDisabled,
+ name = _a.name;
+ if (!disabled && !labelDisabled) {
+ this.emitChange(name);
+ }
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/radio/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/radio/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..8abfe203d0f960f68e62ffbf80021664bc8aae0a
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/radio/index.json
@@ -0,0 +1,6 @@
+{
+ "component": true,
+ "usingComponents": {
+ "van-icon": "../icon/index"
+ }
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/radio/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/radio/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..f6166b76a33e31e0b1d59516924ef528c80509af
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/radio/index.wxml
@@ -0,0 +1,29 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/radio/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/radio/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..602a69e33e3c0173e3a1845d4b32c09e1a5b6645
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/radio/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-radio{display:-webkit-flex;display:flex;-webkit-align-items:center;align-items:center;overflow:hidden;-webkit-user-select:none;user-select:none}.van-radio__icon-wrap{-webkit-flex:none;flex:none}.van-radio--horizontal{margin-right:12px;margin-right:var(--padding-sm,12px)}.van-radio__icon{display:-webkit-flex;display:flex;-webkit-align-items:center;align-items:center;-webkit-justify-content:center;justify-content:center;box-sizing:border-box;width:1em;height:1em;color:transparent;text-align:center;transition-property:color,border-color,background-color;border:1px solid #c8c9cc;border:1px solid var(--radio-border-color,#c8c9cc);font-size:20px;font-size:var(--radio-size,20px);transition-duration:.2s;transition-duration:var(--radio-transition-duration,.2s)}.van-radio__icon--round{border-radius:100%}.van-radio__icon--checked{color:#fff;color:var(--white,#fff);background-color:#1989fa;background-color:var(--radio-checked-icon-color,#1989fa);border-color:#1989fa;border-color:var(--radio-checked-icon-color,#1989fa)}.van-radio__icon--disabled{background-color:#ebedf0;background-color:var(--radio-disabled-background-color,#ebedf0);border-color:#c8c9cc;border-color:var(--radio-disabled-icon-color,#c8c9cc)}.van-radio__icon--disabled.van-radio__icon--checked{color:#c8c9cc;color:var(--radio-disabled-icon-color,#c8c9cc)}.van-radio__label{word-wrap:break-word;margin-left:10px;margin-left:var(--radio-label-margin,10px);color:#323233;color:var(--radio-label-color,#323233);line-height:20px;line-height:var(--radio-size,20px)}.van-radio__label--left{float:left;margin:0 10px 0 0;margin:0 var(--radio-label-margin,10px) 0 0}.van-radio__label--disabled{color:#c8c9cc;color:var(--radio-disabled-label-color,#c8c9cc)}.van-radio__label:empty{margin:0}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/rate/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/rate/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..fe1a4359a78d8cfdea89120faf4e9ce9c5862e34
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/rate/index.js
@@ -0,0 +1,111 @@
+'use strict';
+var __assign =
+ (this && this.__assign) ||
+ function () {
+ __assign =
+ Object.assign ||
+ function (t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s)
+ if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+ };
+Object.defineProperty(exports, '__esModule', { value: true });
+var utils_1 = require('../common/utils');
+var component_1 = require('../common/component');
+var version_1 = require('../common/version');
+component_1.VantComponent({
+ field: true,
+ classes: ['icon-class'],
+ props: {
+ value: {
+ type: Number,
+ observer: function (value) {
+ if (value !== this.data.innerValue) {
+ this.setData({ innerValue: value });
+ }
+ },
+ },
+ readonly: Boolean,
+ disabled: Boolean,
+ allowHalf: Boolean,
+ size: null,
+ icon: {
+ type: String,
+ value: 'star',
+ },
+ voidIcon: {
+ type: String,
+ value: 'star-o',
+ },
+ color: {
+ type: String,
+ value: '#ffd21e',
+ },
+ voidColor: {
+ type: String,
+ value: '#c7c7c7',
+ },
+ disabledColor: {
+ type: String,
+ value: '#bdbdbd',
+ },
+ count: {
+ type: Number,
+ value: 5,
+ observer: function (value) {
+ this.setData({ innerCountArray: Array.from({ length: value }) });
+ },
+ },
+ gutter: null,
+ touchable: {
+ type: Boolean,
+ value: true,
+ },
+ },
+ data: {
+ innerValue: 0,
+ innerCountArray: Array.from({ length: 5 }),
+ },
+ methods: {
+ onSelect: function (event) {
+ var _this = this;
+ var data = this.data;
+ var score = event.currentTarget.dataset.score;
+ if (!data.disabled && !data.readonly) {
+ this.setData({ innerValue: score + 1 });
+ if (version_1.canIUseModel()) {
+ this.setData({ value: score + 1 });
+ }
+ wx.nextTick(function () {
+ _this.$emit('input', score + 1);
+ _this.$emit('change', score + 1);
+ });
+ }
+ },
+ onTouchMove: function (event) {
+ var _this = this;
+ var touchable = this.data.touchable;
+ if (!touchable) return;
+ var clientX = event.touches[0].clientX;
+ utils_1.getAllRect(this, '.van-rate__icon').then(function (list) {
+ var target = list
+ .sort(function (item) {
+ return item.right - item.left;
+ })
+ .find(function (item) {
+ return clientX >= item.left && clientX <= item.right;
+ });
+ if (target != null) {
+ _this.onSelect(
+ __assign(__assign({}, event), { currentTarget: target })
+ );
+ }
+ });
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/rate/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/rate/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..8abfe203d0f960f68e62ffbf80021664bc8aae0a
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/rate/index.json
@@ -0,0 +1,6 @@
+{
+ "component": true,
+ "usingComponents": {
+ "van-icon": "../icon/index"
+ }
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/rate/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/rate/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..d348c57d16f21c6f4e735642d07de1ce5dd60945
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/rate/index.wxml
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/rate/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/rate/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..6fd343546d19f25e492a5b217daec17fa37848a5
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/rate/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-rate{display:-webkit-inline-flex;display:inline-flex;-webkit-user-select:none;user-select:none}.van-rate__item{position:relative;padding:0 2px;padding:0 var(--rate-horizontal-padding,2px)}.van-rate__icon{display:block;height:1em;font-size:20px;font-size:var(--rate-icon-size,20px)}.van-rate__icon--half{position:absolute;top:0;width:.5em;overflow:hidden;left:2px;left:var(--rate-horizontal-padding,2px)}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/row/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/row/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..d99659aafd4bb265972c513cffa57dda3ce71ce6
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/row/index.js
@@ -0,0 +1,26 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+var relation_1 = require('../common/relation');
+component_1.VantComponent({
+ relation: relation_1.useChildren('col', function (target) {
+ var gutter = this.data.gutter;
+ if (gutter) {
+ target.setData({ gutter: gutter });
+ }
+ }),
+ props: {
+ gutter: {
+ type: Number,
+ observer: 'setGutter',
+ },
+ },
+ methods: {
+ setGutter: function () {
+ var _this = this;
+ this.children.forEach(function (col) {
+ col.setData(_this.data);
+ });
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/row/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/row/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..efdc3c823a323c17832b921a6bccbcd398609183
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/row/index.json
@@ -0,0 +1,3 @@
+{
+ "component": true
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/row/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/row/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..f5a667ed4e981d35d6f3b762a736c09ff1f2e2f6
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/row/index.wxml
@@ -0,0 +1,5 @@
+
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/row/index.wxs b/src/openeuler/miniprogram_npm/@vant/weapp/row/index.wxs
new file mode 100644
index 0000000000000000000000000000000000000000..9c884d332946f6f920cd70e4b90154a989e87b62
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/row/index.wxs
@@ -0,0 +1,18 @@
+/* eslint-disable */
+var style = require('../wxs/style.wxs');
+var addUnit = require('../wxs/add-unit.wxs');
+
+function rootStyle(data) {
+ if (!data.gutter) {
+ return '';
+ }
+
+ return style({
+ 'margin-right': addUnit(-data.gutter / 2),
+ 'margin-left': addUnit(-data.gutter / 2),
+ });
+}
+
+module.exports = {
+ rootStyle: rootStyle,
+};
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/row/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/row/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..32a098b0ad5df7dbbb02a894c344379d00e5b3b0
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/row/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-row:after{display:table;clear:both;content:""}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/search/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/search/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..01b89de3dbf99fec7f3896084dc9b0c3cb72b4e0
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/search/index.js
@@ -0,0 +1,81 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+var version_1 = require('../common/version');
+component_1.VantComponent({
+ field: true,
+ classes: ['field-class', 'input-class', 'cancel-class'],
+ props: {
+ label: String,
+ focus: Boolean,
+ error: Boolean,
+ disabled: Boolean,
+ readonly: Boolean,
+ inputAlign: String,
+ showAction: Boolean,
+ useActionSlot: Boolean,
+ useLeftIconSlot: Boolean,
+ useRightIconSlot: Boolean,
+ leftIcon: {
+ type: String,
+ value: 'search',
+ },
+ rightIcon: String,
+ placeholder: String,
+ placeholderStyle: String,
+ actionText: {
+ type: String,
+ value: '取消',
+ },
+ background: {
+ type: String,
+ value: '#ffffff',
+ },
+ maxlength: {
+ type: Number,
+ value: -1,
+ },
+ shape: {
+ type: String,
+ value: 'square',
+ },
+ clearable: {
+ type: Boolean,
+ value: true,
+ },
+ },
+ methods: {
+ onChange: function (event) {
+ if (version_1.canIUseModel()) {
+ this.setData({ value: event.detail });
+ }
+ this.$emit('change', event.detail);
+ },
+ onCancel: function () {
+ var _this = this;
+ /**
+ * 修复修改输入框值时,输入框失焦和赋值同时触发,赋值失效
+ * https://github.com/youzan/@vant/weapp/issues/1768
+ */
+ setTimeout(function () {
+ if (version_1.canIUseModel()) {
+ _this.setData({ value: '' });
+ }
+ _this.$emit('cancel');
+ _this.$emit('change', '');
+ }, 200);
+ },
+ onSearch: function (event) {
+ this.$emit('search', event.detail);
+ },
+ onFocus: function (event) {
+ this.$emit('focus', event.detail);
+ },
+ onBlur: function (event) {
+ this.$emit('blur', event.detail);
+ },
+ onClear: function (event) {
+ this.$emit('clear', event.detail);
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/search/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/search/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..8c052fe1c191ee53b8dd5ff398d860e0d2da9523
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/search/index.json
@@ -0,0 +1,6 @@
+{
+ "component": true,
+ "usingComponents": {
+ "van-field": "../field/index"
+ }
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/search/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/search/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..9967ef469e3db46765edc9b360411db41093e40b
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/search/index.wxml
@@ -0,0 +1,50 @@
+
+
+
+
+ {{ label }}
+
+
+
+
+
+
+
+
+
+
+ {{ actionText }}
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/search/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/search/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..c918deb85c2603893653d0256ae87e494fc9e8d1
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/search/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-search{-webkit-align-items:center;align-items:center;box-sizing:border-box;padding:10px 12px;padding:var(--search-padding,10px 12px)}.van-search,.van-search__content{display:-webkit-flex;display:flex}.van-search__content{-webkit-flex:1;flex:1;padding-left:12px;padding-left:var(--padding-sm,12px);border-radius:2px;border-radius:var(--border-radius-sm,2px);background-color:#f7f8fa;background-color:var(--search-background-color,#f7f8fa)}.van-search__content--round{border-radius:17px;border-radius:calc(var(--search-input-height, 34px)/2)}.van-search__label{padding:0 5px;padding:var(--search-label-padding,0 5px);font-size:14px;font-size:var(--search-label-font-size,14px);line-height:34px;line-height:var(--search-input-height,34px);color:#323233;color:var(--search-label-color,#323233)}.van-search__field{-webkit-flex:1;flex:1}.van-search__field__left-icon{color:#969799;color:var(--search-left-icon-color,#969799)}.van-search--withaction{padding-right:0}.van-search__action{padding:0 8px;padding:var(--search-action-padding,0 8px);font-size:14px;font-size:var(--search-action-font-size,14px);line-height:34px;line-height:var(--search-input-height,34px);color:#323233;color:var(--search-action-text-color,#323233)}.van-search__action--hover{background-color:#f2f3f5;background-color:var(--active-color,#f2f3f5)}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/share-sheet/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/share-sheet/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..d25a8cafe1cc12c2d1aa0acd6cadb77ef9595898
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/share-sheet/index.js
@@ -0,0 +1,57 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+component_1.VantComponent({
+ props: {
+ // whether to show popup
+ show: Boolean,
+ // overlay custom style
+ overlayStyle: Object,
+ // z-index
+ zIndex: {
+ type: Number,
+ value: 100,
+ },
+ title: String,
+ cancelText: {
+ type: String,
+ value: '取消',
+ },
+ description: String,
+ options: {
+ type: Array,
+ value: [],
+ },
+ overlay: {
+ type: Boolean,
+ value: true,
+ },
+ safeAreaInsetBottom: {
+ type: Boolean,
+ value: true,
+ },
+ closeOnClickOverlay: {
+ type: Boolean,
+ value: true,
+ },
+ duration: {
+ type: null,
+ value: 300,
+ },
+ },
+ methods: {
+ onClickOverlay: function () {
+ this.$emit('click-overlay');
+ },
+ onCancel: function () {
+ this.onClose();
+ this.$emit('cancel');
+ },
+ onSelect: function (event) {
+ this.$emit('select', event.detail);
+ },
+ onClose: function () {
+ this.$emit('close');
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/share-sheet/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/share-sheet/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..0ef7b7ab35f4f938c9cddb8d6393b099ba48de28
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/share-sheet/index.json
@@ -0,0 +1,7 @@
+{
+ "component": true,
+ "usingComponents": {
+ "van-popup": "../popup/index",
+ "options": "./options"
+ }
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/share-sheet/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/share-sheet/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..6786ce060fa29a04eead561913f01916248dfe9e
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/share-sheet/index.wxml
@@ -0,0 +1,46 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/share-sheet/index.wxs b/src/openeuler/miniprogram_npm/@vant/weapp/share-sheet/index.wxs
new file mode 100644
index 0000000000000000000000000000000000000000..bf7392c13ad63f8b94c3a7be28a74fdba28260c5
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/share-sheet/index.wxs
@@ -0,0 +1,12 @@
+/* eslint-disable */
+function isMulti(options) {
+ if (options == null || options[0] == null) {
+ return false;
+ }
+
+ return "Array" === options.constructor && "Array" === options[0].constructor;
+}
+
+module.exports = {
+ isMulti: isMulti
+};
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/share-sheet/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/share-sheet/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..8d42eb270f26255df81254b9a9a489aff9ff9c9a
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/share-sheet/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-share-sheet__header{padding:12px 16px 4px;text-align:center}.van-share-sheet__title{margin-top:8px;color:#323233;font-weight:400;font-size:14px;line-height:20px}.van-share-sheet__title:empty,.van-share-sheet__title:not(:empty)+.van-share-sheet__title{display:none}.van-share-sheet__description{display:block;margin-top:8px;color:#969799;font-size:12px;line-height:16px}.van-share-sheet__description:empty,.van-share-sheet__description:not(:empty)+.van-share-sheet__description{display:none}.van-share-sheet__cancel{display:block;box-sizing:initial;width:100%;height:auto;padding:0;font-size:16px;line-height:48px;text-align:center;background:#fff;border:none}.van-share-sheet__cancel:before{display:block;height:8px;background-color:#f7f8fa;content:" "}.van-share-sheet__cancel:after{display:none}.van-share-sheet__cancel:active{background-color:#f2f3f5}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/share-sheet/options.js b/src/openeuler/miniprogram_npm/@vant/weapp/share-sheet/options.js
new file mode 100644
index 0000000000000000000000000000000000000000..9fcf1743dbde2c7af1930790920c7a888435d23f
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/share-sheet/options.js
@@ -0,0 +1,31 @@
+'use strict';
+var __assign =
+ (this && this.__assign) ||
+ function () {
+ __assign =
+ Object.assign ||
+ function (t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s)
+ if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+ };
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+component_1.VantComponent({
+ props: {
+ options: Array,
+ showBorder: Boolean,
+ },
+ methods: {
+ onSelect: function (event) {
+ var index = event.currentTarget.dataset.index;
+ var option = this.data.options[index];
+ this.$emit('select', __assign(__assign({}, option), { index: index }));
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/share-sheet/options.json b/src/openeuler/miniprogram_npm/@vant/weapp/share-sheet/options.json
new file mode 100644
index 0000000000000000000000000000000000000000..efdc3c823a323c17832b921a6bccbcd398609183
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/share-sheet/options.json
@@ -0,0 +1,3 @@
+{
+ "component": true
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/share-sheet/options.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/share-sheet/options.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..623b060f3f5e442c536cc09d3997b860124fd470
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/share-sheet/options.wxml
@@ -0,0 +1,20 @@
+
+
+
+
+
+
+ {{ item.name }}
+
+ {{ item.description }}
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/share-sheet/options.wxs b/src/openeuler/miniprogram_npm/@vant/weapp/share-sheet/options.wxs
new file mode 100644
index 0000000000000000000000000000000000000000..81ab08a2ee153450846636b949a287d5e6086283
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/share-sheet/options.wxs
@@ -0,0 +1,14 @@
+/* eslint-disable */
+var PRESET_ICONS = ['qq', 'weibo', 'wechat', 'link', 'qrcode', 'poster'];
+
+function getIconURL(icon) {
+ if (PRESET_ICONS.indexOf(icon) !== -1) {
+ return 'https://img.yzcdn.cn/vant/share-icon-' + icon + '.png';
+ }
+
+ return icon;
+}
+
+module.exports = {
+ getIconURL: getIconURL,
+};
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/share-sheet/options.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/share-sheet/options.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..ca7b02f294e620e4c9cf2e23aa3fae3407f5240c
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/share-sheet/options.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-share-sheet__options{position:relative;display:-webkit-flex;display:flex;padding:16px 0 16px 8px;overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch}.van-share-sheet__options--border:before{position:absolute;box-sizing:border-box;-webkit-transform-origin:center;transform-origin:center;content:" ";pointer-events:none;top:0;right:0;left:16px;border-top:1px solid #ebedf0;-webkit-transform:scaleY(.5);transform:scaleY(.5)}.van-share-sheet__options::-webkit-scrollbar{height:0}.van-share-sheet__option{display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column;-webkit-align-items:center;align-items:center;-webkit-user-select:none;user-select:none}.van-share-sheet__option:active{opacity:.7}.van-share-sheet__button{height:auto;padding:0;line-height:inherit;background-color:initial;border:0}.van-share-sheet__button:after{border:0}.van-share-sheet__icon{width:48px;height:48px;margin:0 16px}.van-share-sheet__name{margin-top:8px;padding:0 4px;color:#646566;font-size:12px}.van-share-sheet__option-description{padding:0 4px;color:#c8c9cc;font-size:12px}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/sidebar-item/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/sidebar-item/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..a6c6d4d637a3aee1714475b4141eed1d0a48fd46
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/sidebar-item/index.js
@@ -0,0 +1,32 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+var relation_1 = require('../common/relation');
+component_1.VantComponent({
+ classes: ['active-class', 'disabled-class'],
+ relation: relation_1.useParent('sidebar'),
+ props: {
+ dot: Boolean,
+ badge: null,
+ info: null,
+ title: String,
+ disabled: Boolean,
+ },
+ methods: {
+ onClick: function () {
+ var _this = this;
+ var parent = this.parent;
+ if (!parent || this.data.disabled) {
+ return;
+ }
+ var index = parent.children.indexOf(this);
+ parent.setActive(index).then(function () {
+ _this.$emit('click', index);
+ parent.$emit('change', index);
+ });
+ },
+ setActive: function (selected) {
+ return this.setData({ selected: selected });
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/sidebar-item/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/sidebar-item/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..82369bf271b60657b16aaff43895995402281de0
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/sidebar-item/index.json
@@ -0,0 +1,6 @@
+{
+ "component": true,
+ "usingComponents": {
+ "van-info": "../info/index"
+ }
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/sidebar-item/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/sidebar-item/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..0f92337d1ca8cc687292daee335237e27982dfe9
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/sidebar-item/index.wxml
@@ -0,0 +1,18 @@
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/sidebar-item/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/sidebar-item/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..f134528f23c2f0d1701777cd9566ce3e14b4235e
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/sidebar-item/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-sidebar-item{display:block;box-sizing:border-box;overflow:hidden;border-left:3px solid transparent;-webkit-user-select:none;user-select:none;padding:20px 12px 20px 8px;padding:var(--sidebar-padding,20px 12px 20px 8px);font-size:14px;font-size:var(--sidebar-font-size,14px);line-height:20px;line-height:var(--sidebar-line-height,20px);color:#323233;color:var(--sidebar-text-color,#323233);background-color:#f7f8fa;background-color:var(--sidebar-background-color,#f7f8fa)}.van-sidebar-item__text{position:relative;display:inline-block;word-break:break-all}.van-sidebar-item--hover:not(.van-sidebar-item--disabled){background-color:#f2f3f5;background-color:var(--sidebar-active-color,#f2f3f5)}.van-sidebar-item:after{border-bottom-width:1px}.van-sidebar-item--selected{color:#323233;color:var(--sidebar-selected-text-color,#323233);font-weight:500;font-weight:var(--sidebar-selected-font-weight,500);border-color:#ee0a24;border-color:var(--sidebar-selected-border-color,#ee0a24)}.van-sidebar-item--selected:after{border-right-width:1px}.van-sidebar-item--selected,.van-sidebar-item--selected.van-sidebar-item--hover{background-color:#fff;background-color:var(--sidebar-selected-background-color,#fff)}.van-sidebar-item--disabled{color:#c8c9cc;color:var(--sidebar-disabled-text-color,#c8c9cc)}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/sidebar/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/sidebar/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..3bcab16625713de974e902003b20fd6952ee1324
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/sidebar/index.js
@@ -0,0 +1,38 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+var relation_1 = require('../common/relation');
+component_1.VantComponent({
+ relation: relation_1.useChildren('sidebar-item', function () {
+ this.setActive(this.data.activeKey);
+ }),
+ props: {
+ activeKey: {
+ type: Number,
+ value: 0,
+ observer: 'setActive',
+ },
+ },
+ beforeCreate: function () {
+ this.currentActive = -1;
+ },
+ methods: {
+ setActive: function (activeKey) {
+ var _a = this,
+ children = _a.children,
+ currentActive = _a.currentActive;
+ if (!children.length) {
+ return Promise.resolve();
+ }
+ this.currentActive = activeKey;
+ var stack = [];
+ if (currentActive !== activeKey && children[currentActive]) {
+ stack.push(children[currentActive].setActive(false));
+ }
+ if (children[activeKey]) {
+ stack.push(children[activeKey].setActive(true));
+ }
+ return Promise.all(stack);
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/sidebar/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/sidebar/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..efdc3c823a323c17832b921a6bccbcd398609183
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/sidebar/index.json
@@ -0,0 +1,3 @@
+{
+ "component": true
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/sidebar/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/sidebar/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..e76ecafc22997584eefe18e6a831d16e0757ba3f
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/sidebar/index.wxml
@@ -0,0 +1,3 @@
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/sidebar/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/sidebar/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..8ad18841a2d5d1c81931addff1537deb800ea106
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/sidebar/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-sidebar{width:80px;width:var(--sidebar-width,80px)}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/skeleton/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/skeleton/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..f89af1d9786bdf3bf973492661780b12a14312e5
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/skeleton/index.js
@@ -0,0 +1,48 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+component_1.VantComponent({
+ classes: ['avatar-class', 'title-class', 'row-class'],
+ props: {
+ row: {
+ type: Number,
+ value: 0,
+ observer: function (value) {
+ this.setData({ rowArray: Array.from({ length: value }) });
+ },
+ },
+ title: Boolean,
+ avatar: Boolean,
+ loading: {
+ type: Boolean,
+ value: true,
+ },
+ animate: {
+ type: Boolean,
+ value: true,
+ },
+ avatarSize: {
+ type: String,
+ value: '32px',
+ },
+ avatarShape: {
+ type: String,
+ value: 'round',
+ },
+ titleWidth: {
+ type: String,
+ value: '40%',
+ },
+ rowWidth: {
+ type: null,
+ value: '100%',
+ observer: function (val) {
+ this.setData({ isArray: val instanceof Array });
+ },
+ },
+ },
+ data: {
+ isArray: false,
+ rowArray: [],
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/skeleton/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/skeleton/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..f71941163b8dc6bf6ccd68ed33b662fdf6c9b725
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/skeleton/index.json
@@ -0,0 +1,4 @@
+{
+ "component": true,
+ "usingComponents": {}
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/skeleton/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/skeleton/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..4ad7bd07ea3267ad1510788943b9dd38431add44
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/skeleton/index.wxml
@@ -0,0 +1,29 @@
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/skeleton/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/skeleton/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..565b26e498348dd798c570c4abb86b9cc9fad90a
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/skeleton/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-skeleton{display:-webkit-flex;display:flex;box-sizing:border-box;width:100%;padding:0 16px;padding:var(--skeleton-padding,0 16px)}.van-skeleton__avatar{-webkit-flex-shrink:0;flex-shrink:0;margin-right:16px;margin-right:var(--padding-md,16px);background-color:#f2f3f5;background-color:var(--skeleton-avatar-background-color,#f2f3f5)}.van-skeleton__avatar--round{border-radius:100%}.van-skeleton__content{-webkit-flex:1;flex:1}.van-skeleton__avatar+.van-skeleton__content{padding-top:8px;padding-top:var(--padding-xs,8px)}.van-skeleton__row,.van-skeleton__title{height:16px;height:var(--skeleton-row-height,16px);background-color:#f2f3f5;background-color:var(--skeleton-row-background-color,#f2f3f5)}.van-skeleton__title{margin:0}.van-skeleton__row:not(:first-child){margin-top:12px;margin-top:var(--skeleton-row-margin-top,12px)}.van-skeleton__title+.van-skeleton__row{margin-top:20px}.van-skeleton--animate{-webkit-animation:van-skeleton-blink 1.2s ease-in-out infinite;animation:van-skeleton-blink 1.2s ease-in-out infinite}@-webkit-keyframes van-skeleton-blink{50%{opacity:.6}}@keyframes van-skeleton-blink{50%{opacity:.6}}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/slider/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/slider/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..fc7cb4cef412704877a059a8dbf64c6630662585
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/slider/index.js
@@ -0,0 +1,118 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+var touch_1 = require('../mixins/touch');
+var version_1 = require('../common/version');
+var utils_1 = require('../common/utils');
+component_1.VantComponent({
+ mixins: [touch_1.touch],
+ props: {
+ disabled: Boolean,
+ useButtonSlot: Boolean,
+ activeColor: String,
+ inactiveColor: String,
+ max: {
+ type: Number,
+ value: 100,
+ },
+ min: {
+ type: Number,
+ value: 0,
+ },
+ step: {
+ type: Number,
+ value: 1,
+ },
+ value: {
+ type: Number,
+ value: 0,
+ observer: function (val) {
+ if (val !== this.value) {
+ this.updateValue(val);
+ }
+ },
+ },
+ barHeight: {
+ type: null,
+ value: 2,
+ },
+ },
+ created: function () {
+ this.updateValue(this.data.value);
+ },
+ methods: {
+ onTouchStart: function (event) {
+ if (this.data.disabled) return;
+ this.touchStart(event);
+ this.startValue = this.format(this.value);
+ this.dragStatus = 'start';
+ },
+ onTouchMove: function (event) {
+ var _this = this;
+ if (this.data.disabled) return;
+ if (this.dragStatus === 'start') {
+ this.$emit('drag-start');
+ }
+ this.touchMove(event);
+ this.dragStatus = 'draging';
+ utils_1.getRect(this, '.van-slider').then(function (rect) {
+ var diff = (_this.deltaX / rect.width) * _this.getRange();
+ _this.newValue = _this.startValue + diff;
+ _this.updateValue(_this.newValue, false, true);
+ });
+ },
+ onTouchEnd: function () {
+ if (this.data.disabled) return;
+ if (this.dragStatus === 'draging') {
+ this.updateValue(this.newValue, true);
+ this.$emit('drag-end');
+ }
+ },
+ onClick: function (event) {
+ var _this = this;
+ if (this.data.disabled) return;
+ var min = this.data.min;
+ utils_1.getRect(this, '.van-slider').then(function (rect) {
+ var value =
+ ((event.detail.x - rect.left) / rect.width) * _this.getRange() + min;
+ _this.updateValue(value, true);
+ });
+ },
+ updateValue: function (value, end, drag) {
+ value = this.format(value);
+ var min = this.data.min;
+ var width = ((value - min) * 100) / this.getRange() + '%';
+ this.value = value;
+ this.setData({
+ barStyle:
+ '\n width: ' +
+ width +
+ ';\n ' +
+ (drag ? 'transition: none;' : '') +
+ '\n ',
+ });
+ if (drag) {
+ this.$emit('drag', { value: value });
+ }
+ if (end) {
+ this.$emit('change', value);
+ }
+ if ((drag || end) && version_1.canIUseModel()) {
+ this.setData({ value: value });
+ }
+ },
+ getRange: function () {
+ var _a = this.data,
+ max = _a.max,
+ min = _a.min;
+ return max - min;
+ },
+ format: function (value) {
+ var _a = this.data,
+ max = _a.max,
+ min = _a.min,
+ step = _a.step;
+ return Math.round(Math.max(min, Math.min(value, max)) / step) * step;
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/slider/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/slider/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..efdc3c823a323c17832b921a6bccbcd398609183
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/slider/index.json
@@ -0,0 +1,3 @@
+{
+ "component": true
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/slider/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/slider/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..25d3655819be7690111991f5e1ac7222f93e3fd4
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/slider/index.wxml
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/slider/index.wxs b/src/openeuler/miniprogram_npm/@vant/weapp/slider/index.wxs
new file mode 100644
index 0000000000000000000000000000000000000000..f132b9cd854cec0ea1fba7cd3df8deb9132b5750
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/slider/index.wxs
@@ -0,0 +1,14 @@
+/* eslint-disable */
+var style = require('../wxs/style.wxs');
+var addUnit = require('../wxs/add-unit.wxs');
+
+function barStyle(barHeight, activeColor) {
+ return style({
+ height: addUnit(barHeight),
+ background: activeColor,
+ });
+}
+
+module.exports = {
+ barStyle: barStyle,
+};
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/slider/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/slider/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..7886b6065739a504747bc8aa5bab339b83748fb7
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/slider/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-slider{position:relative;border-radius:999px;border-radius:var(--border-radius-max,999px);background-color:#ebedf0;background-color:var(--slider-inactive-background-color,#ebedf0)}.van-slider:before{position:absolute;right:0;left:0;content:"";top:-8px;top:-var(--padding-xs,8px);bottom:-8px;bottom:-var(--padding-xs,8px)}.van-slider__bar{position:relative;border-radius:inherit;transition:width .2s;transition:width var(--animation-duration-fast,.2s);background-color:#1989fa;background-color:var(--slider-active-background-color,#1989fa)}.van-slider__button{width:24px;height:24px;border-radius:50%;box-shadow:0 1px 2px rgba(0,0,0,.5);background-color:#fff;background-color:var(--slider-button-background-color,#fff)}.van-slider__button-wrapper{position:absolute;top:50%;right:0;-webkit-transform:translate3d(50%,-50%,0);transform:translate3d(50%,-50%,0)}.van-slider--disabled{opacity:.5}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/stepper/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/stepper/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..75787436c6bc9bb22a8d52304570bf11b5cbd09a
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/stepper/index.js
@@ -0,0 +1,218 @@
+'use strict';
+var __assign =
+ (this && this.__assign) ||
+ function () {
+ __assign =
+ Object.assign ||
+ function (t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s)
+ if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+ };
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+var validator_1 = require('../common/validator');
+var LONG_PRESS_START_TIME = 600;
+var LONG_PRESS_INTERVAL = 200;
+// add num and avoid float number
+function add(num1, num2) {
+ var cardinal = Math.pow(10, 10);
+ return Math.round((num1 + num2) * cardinal) / cardinal;
+}
+function equal(value1, value2) {
+ return String(value1) === String(value2);
+}
+component_1.VantComponent({
+ field: true,
+ classes: ['input-class', 'plus-class', 'minus-class'],
+ props: {
+ value: {
+ type: null,
+ observer: 'observeValue',
+ },
+ integer: {
+ type: Boolean,
+ observer: 'check',
+ },
+ disabled: Boolean,
+ inputWidth: String,
+ buttonSize: String,
+ asyncChange: Boolean,
+ disableInput: Boolean,
+ decimalLength: {
+ type: Number,
+ value: null,
+ observer: 'check',
+ },
+ min: {
+ type: null,
+ value: 1,
+ observer: 'check',
+ },
+ max: {
+ type: null,
+ value: Number.MAX_SAFE_INTEGER,
+ observer: 'check',
+ },
+ step: {
+ type: null,
+ value: 1,
+ },
+ showPlus: {
+ type: Boolean,
+ value: true,
+ },
+ showMinus: {
+ type: Boolean,
+ value: true,
+ },
+ disablePlus: Boolean,
+ disableMinus: Boolean,
+ longPress: {
+ type: Boolean,
+ value: true,
+ },
+ theme: String,
+ },
+ data: {
+ currentValue: '',
+ },
+ created: function () {
+ this.setData({
+ currentValue: this.format(this.data.value),
+ });
+ },
+ methods: {
+ observeValue: function () {
+ var _a = this.data,
+ value = _a.value,
+ currentValue = _a.currentValue;
+ if (!equal(value, currentValue)) {
+ this.setData({ currentValue: this.format(value) });
+ }
+ },
+ check: function () {
+ var val = this.format(this.data.currentValue);
+ if (!equal(val, this.data.currentValue)) {
+ this.setData({ currentValue: val });
+ }
+ },
+ isDisabled: function (type) {
+ var _a = this.data,
+ disabled = _a.disabled,
+ disablePlus = _a.disablePlus,
+ disableMinus = _a.disableMinus,
+ currentValue = _a.currentValue,
+ max = _a.max,
+ min = _a.min;
+ if (type === 'plus') {
+ return disabled || disablePlus || currentValue >= max;
+ }
+ return disabled || disableMinus || currentValue <= min;
+ },
+ onFocus: function (event) {
+ this.$emit('focus', event.detail);
+ },
+ onBlur: function (event) {
+ var value = this.format(event.detail.value);
+ this.emitChange(value);
+ this.$emit(
+ 'blur',
+ __assign(__assign({}, event.detail), { value: value })
+ );
+ },
+ // filter illegal characters
+ filter: function (value) {
+ value = String(value).replace(/[^0-9.-]/g, '');
+ if (this.data.integer && value.indexOf('.') !== -1) {
+ value = value.split('.')[0];
+ }
+ return value;
+ },
+ // limit value range
+ format: function (value) {
+ value = this.filter(value);
+ // format range
+ value = value === '' ? 0 : +value;
+ value = Math.max(Math.min(this.data.max, value), this.data.min);
+ // format decimal
+ if (validator_1.isDef(this.data.decimalLength)) {
+ value = value.toFixed(this.data.decimalLength);
+ }
+ return value;
+ },
+ onInput: function (event) {
+ var _a = (event.detail || {}).value,
+ value = _a === void 0 ? '' : _a;
+ // allow input to be empty
+ if (value === '') {
+ return;
+ }
+ var formatted = this.filter(value);
+ // limit max decimal length
+ if (
+ validator_1.isDef(this.data.decimalLength) &&
+ formatted.indexOf('.') !== -1
+ ) {
+ var pair = formatted.split('.');
+ formatted = pair[0] + '.' + pair[1].slice(0, this.data.decimalLength);
+ }
+ this.emitChange(formatted);
+ },
+ emitChange: function (value) {
+ if (!this.data.asyncChange) {
+ this.setData({ currentValue: value });
+ }
+ this.$emit('change', value);
+ },
+ onChange: function () {
+ var type = this.type;
+ if (this.isDisabled(type)) {
+ this.$emit('overlimit', type);
+ return;
+ }
+ var diff = type === 'minus' ? -this.data.step : +this.data.step;
+ var value = this.format(add(+this.data.currentValue, diff));
+ this.emitChange(value);
+ this.$emit(type);
+ },
+ longPressStep: function () {
+ var _this = this;
+ this.longPressTimer = setTimeout(function () {
+ _this.onChange();
+ _this.longPressStep();
+ }, LONG_PRESS_INTERVAL);
+ },
+ onTap: function (event) {
+ var type = event.currentTarget.dataset.type;
+ this.type = type;
+ this.onChange();
+ },
+ onTouchStart: function (event) {
+ var _this = this;
+ if (!this.data.longPress) {
+ return;
+ }
+ clearTimeout(this.longPressTimer);
+ var type = event.currentTarget.dataset.type;
+ this.type = type;
+ this.isLongPress = false;
+ this.longPressTimer = setTimeout(function () {
+ _this.isLongPress = true;
+ _this.onChange();
+ _this.longPressStep();
+ }, LONG_PRESS_START_TIME);
+ },
+ onTouchEnd: function () {
+ if (!this.data.longPress) {
+ return;
+ }
+ clearTimeout(this.longPressTimer);
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/stepper/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/stepper/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..efdc3c823a323c17832b921a6bccbcd398609183
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/stepper/index.json
@@ -0,0 +1,3 @@
+{
+ "component": true
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/stepper/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/stepper/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..afd9ad19731276e3882c9fc88c4353abfbc9e75d
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/stepper/index.wxml
@@ -0,0 +1,42 @@
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/stepper/index.wxs b/src/openeuler/miniprogram_npm/@vant/weapp/stepper/index.wxs
new file mode 100644
index 0000000000000000000000000000000000000000..46475a0ae8357bbc320e44adfd33481846cac612
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/stepper/index.wxs
@@ -0,0 +1,22 @@
+/* eslint-disable */
+var style = require('../wxs/style.wxs');
+var addUnit = require('../wxs/add-unit.wxs');
+
+function buttonStyle(data) {
+ return style({
+ width: addUnit(data.buttonSize),
+ height: addUnit(data.buttonSize),
+ });
+}
+
+function inputStyle(data) {
+ return style({
+ width: addUnit(data.inputWidth),
+ height: addUnit(data.buttonSize),
+ });
+}
+
+module.exports = {
+ buttonStyle: buttonStyle,
+ inputStyle: inputStyle,
+};
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/stepper/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/stepper/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..e924a2b9f6625fb45440ca34de55a786b5bfcc21
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/stepper/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-stepper{font-size:0}.van-stepper__minus,.van-stepper__plus{position:relative;display:inline-block;box-sizing:border-box;margin:1px;vertical-align:middle;border:0;background-color:#f2f3f5;background-color:var(--stepper-background-color,#f2f3f5);color:#323233;color:var(--stepper-button-icon-color,#323233);width:28px;width:var(--stepper-input-height,28px);height:28px;height:var(--stepper-input-height,28px);padding:4px;padding:var(--padding-base,4px)}.van-stepper__minus:before,.van-stepper__plus:before{width:9px;height:1px}.van-stepper__minus:after,.van-stepper__plus:after{width:1px;height:9px}.van-stepper__minus:empty.van-stepper__minus:after,.van-stepper__minus:empty.van-stepper__minus:before,.van-stepper__minus:empty.van-stepper__plus:after,.van-stepper__minus:empty.van-stepper__plus:before,.van-stepper__plus:empty.van-stepper__minus:after,.van-stepper__plus:empty.van-stepper__minus:before,.van-stepper__plus:empty.van-stepper__plus:after,.van-stepper__plus:empty.van-stepper__plus:before{position:absolute;top:0;right:0;bottom:0;left:0;margin:auto;background-color:currentColor;content:""}.van-stepper__minus--hover,.van-stepper__plus--hover{background-color:#e8e8e8;background-color:var(--stepper-active-color,#e8e8e8)}.van-stepper__minus--disabled,.van-stepper__plus--disabled{color:#c8c9cc;color:var(--stepper-button-disabled-icon-color,#c8c9cc)}.van-stepper__minus--disabled,.van-stepper__minus--disabled.van-stepper__minus--hover,.van-stepper__minus--disabled.van-stepper__plus--hover,.van-stepper__plus--disabled,.van-stepper__plus--disabled.van-stepper__minus--hover,.van-stepper__plus--disabled.van-stepper__plus--hover{background-color:#f7f8fa;background-color:var(--stepper-button-disabled-color,#f7f8fa)}.van-stepper__minus{border-radius:4px 0 0 4px;border-radius:var(--stepper-border-radius,4px) 0 0 var(--stepper-border-radius,4px)}.van-stepper__minus:after{display:none}.van-stepper__plus{border-radius:0 4px 4px 0;border-radius:0 var(--stepper-border-radius,4px) var(--stepper-border-radius,4px) 0}.van-stepper--round .van-stepper__input{background-color:initial!important}.van-stepper--round .van-stepper__minus,.van-stepper--round .van-stepper__plus{border-radius:100%}.van-stepper--round .van-stepper__minus:active,.van-stepper--round .van-stepper__plus:active{opacity:.7}.van-stepper--round .van-stepper__minus--disabled,.van-stepper--round .van-stepper__minus--disabled:active,.van-stepper--round .van-stepper__plus--disabled,.van-stepper--round .van-stepper__plus--disabled:active{opacity:.3}.van-stepper--round .van-stepper__plus{color:#fff;background-color:#ee0a24}.van-stepper--round .van-stepper__minus{color:#ee0a24;background-color:#fff;border:1px solid #ee0a24}.van-stepper__input{display:inline-block;box-sizing:border-box;min-height:0;margin:1px;padding:1px;text-align:center;vertical-align:middle;border:0;border-width:1px 0;border-radius:0;-webkit-appearance:none;font-size:14px;font-size:var(--stepper-input-font-size,14px);color:#323233;color:var(--stepper-input-text-color,#323233);background-color:#f2f3f5;background-color:var(--stepper-background-color,#f2f3f5);width:32px;width:var(--stepper-input-width,32px);height:28px;height:var(--stepper-input-height,28px)}.van-stepper__input--disabled{color:#c8c9cc;color:var(--stepper-input-disabled-text-color,#c8c9cc);background-color:#f2f3f5;background-color:var(--stepper-input-disabled-background-color,#f2f3f5)}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/steps/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/steps/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..f9282f952d97040e160eb9e8bb001e041fab5d50
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/steps/index.js
@@ -0,0 +1,35 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+var color_1 = require('../common/color');
+component_1.VantComponent({
+ classes: ['desc-class'],
+ props: {
+ icon: String,
+ steps: Array,
+ active: Number,
+ direction: {
+ type: String,
+ value: 'horizontal',
+ },
+ activeColor: {
+ type: String,
+ value: color_1.GREEN,
+ },
+ inactiveColor: {
+ type: String,
+ value: color_1.GRAY_DARK,
+ },
+ activeIcon: {
+ type: String,
+ value: 'checked',
+ },
+ inactiveIcon: String,
+ },
+ methods: {
+ onClick: function (event) {
+ var index = event.currentTarget.dataset.index;
+ this.$emit('click-step', index);
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/steps/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/steps/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..8abfe203d0f960f68e62ffbf80021664bc8aae0a
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/steps/index.json
@@ -0,0 +1,6 @@
+{
+ "component": true,
+ "usingComponents": {
+ "van-icon": "../icon/index"
+ }
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/steps/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/steps/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..eb3174b29484f9622e3a2afaaab900f726ec2fd1
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/steps/index.wxml
@@ -0,0 +1,54 @@
+
+
+
+
+
+
+ {{ item.text }}
+ {{ item.desc }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+function get(index, active) {
+ if (index < active) {
+ return 'finish';
+ } else if (index === active) {
+ return 'process';
+ }
+
+ return 'inactive';
+}
+
+module.exports = get;
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/steps/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/steps/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..2c50b1abedd7a082e3ce52d2d416a54ca87dc437
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/steps/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-steps{overflow:hidden;background-color:#fff;background-color:var(--steps-background-color,#fff)}.van-steps--horizontal{padding:10px}.van-steps--horizontal .van-step__wrapper{position:relative;display:-webkit-flex;display:flex;overflow:hidden}.van-steps--vertical{padding-left:10px}.van-steps--vertical .van-step__wrapper{padding:0 0 0 20px}.van-step{position:relative;-webkit-flex:1;flex:1;font-size:14px;font-size:var(--step-font-size,14px);color:#969799;color:var(--step-text-color,#969799)}.van-step--finish{color:#323233;color:var(--step-finish-text-color,#323233)}.van-step__circle{border-radius:50%;width:5px;width:var(--step-circle-size,5px);height:5px;height:var(--step-circle-size,5px);background-color:#969799;background-color:var(--step-circle-color,#969799)}.van-step--horizontal{padding-bottom:14px}.van-step--horizontal:first-child .van-step__title{-webkit-transform:none;transform:none}.van-step--horizontal:first-child .van-step__circle-container{padding:0 8px 0 0;-webkit-transform:translate3d(0,50%,0);transform:translate3d(0,50%,0)}.van-step--horizontal:last-child{position:absolute;right:0;width:auto}.van-step--horizontal:last-child .van-step__title{text-align:right;-webkit-transform:none;transform:none}.van-step--horizontal:last-child .van-step__circle-container{right:0;padding:0 0 0 8px;-webkit-transform:translate3d(0,50%,0);transform:translate3d(0,50%,0)}.van-step--horizontal .van-step__circle-container{position:absolute;bottom:6px;z-index:1;-webkit-transform:translate3d(-50%,50%,0);transform:translate3d(-50%,50%,0);background-color:#fff;background-color:var(--white,#fff);padding:0 8px;padding:0 var(--padding-xs,8px)}.van-step--horizontal .van-step__title{display:inline-block;-webkit-transform:translate3d(-50%,0,0);transform:translate3d(-50%,0,0);font-size:12px;font-size:var(--step-horizontal-title-font-size,12px)}.van-step--horizontal .van-step__line{position:absolute;right:0;bottom:6px;left:0;height:1px;-webkit-transform:translate3d(0,50%,0);transform:translate3d(0,50%,0);background-color:#ebedf0;background-color:var(--step-line-color,#ebedf0)}.van-step--horizontal.van-step--process{color:#323233;color:var(--step-process-text-color,#323233)}.van-step--horizontal.van-step--process .van-step__icon{display:block;line-height:1;font-size:12px;font-size:var(--step-icon-size,12px)}.van-step--vertical{padding:10px 10px 10px 0;line-height:18px}.van-step--vertical:after{border-bottom-width:1px}.van-step--vertical:last-child:after{border-bottom-width:none}.van-step--vertical:first-child:before{position:absolute;top:0;left:-15px;z-index:1;width:1px;height:20px;content:"";background-color:#fff;background-color:var(--white,#fff)}.van-step--vertical .van-step__circle,.van-step--vertical .van-step__icon,.van-step--vertical .van-step__line{position:absolute;top:19px;left:-14px;z-index:2;-webkit-transform:translate3d(-50%,-50%,0);transform:translate3d(-50%,-50%,0)}.van-step--vertical .van-step__icon{line-height:1;font-size:12px;font-size:var(--step-icon-size,12px)}.van-step--vertical .van-step__line{z-index:1;width:1px;height:100%;-webkit-transform:translate3d(-50%,0,0);transform:translate3d(-50%,0,0);background-color:#ebedf0;background-color:var(--step-line-color,#ebedf0)}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/sticky/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/sticky/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..26ea1c8f91a58a0af38400874522d76fe6c43627
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/sticky/index.js
@@ -0,0 +1,123 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var utils_1 = require('../common/utils');
+var component_1 = require('../common/component');
+var page_scroll_1 = require('../mixins/page-scroll');
+var ROOT_ELEMENT = '.van-sticky';
+component_1.VantComponent({
+ props: {
+ zIndex: {
+ type: Number,
+ value: 99,
+ },
+ offsetTop: {
+ type: Number,
+ value: 0,
+ observer: 'onScroll',
+ },
+ disabled: {
+ type: Boolean,
+ observer: 'onScroll',
+ },
+ container: {
+ type: null,
+ observer: 'onScroll',
+ },
+ scrollTop: {
+ type: null,
+ observer: function (val) {
+ this.onScroll({ scrollTop: val });
+ },
+ },
+ },
+ mixins: [
+ page_scroll_1.pageScrollMixin(function (event) {
+ if (this.data.scrollTop != null) {
+ return;
+ }
+ this.onScroll(event);
+ }),
+ ],
+ data: {
+ height: 0,
+ fixed: false,
+ transform: 0,
+ },
+ mounted: function () {
+ this.onScroll();
+ },
+ methods: {
+ onScroll: function (_a) {
+ var _this = this;
+ var scrollTop = (_a === void 0 ? {} : _a).scrollTop;
+ var _b = this.data,
+ container = _b.container,
+ offsetTop = _b.offsetTop,
+ disabled = _b.disabled;
+ if (disabled) {
+ this.setDataAfterDiff({
+ fixed: false,
+ transform: 0,
+ });
+ return;
+ }
+ this.scrollTop = scrollTop || this.scrollTop;
+ if (typeof container === 'function') {
+ Promise.all([
+ utils_1.getRect(this, ROOT_ELEMENT),
+ this.getContainerRect(),
+ ]).then(function (_a) {
+ var root = _a[0],
+ container = _a[1];
+ if (offsetTop + root.height > container.height + container.top) {
+ _this.setDataAfterDiff({
+ fixed: false,
+ transform: container.height - root.height,
+ });
+ } else if (offsetTop >= root.top) {
+ _this.setDataAfterDiff({
+ fixed: true,
+ height: root.height,
+ transform: 0,
+ });
+ } else {
+ _this.setDataAfterDiff({ fixed: false, transform: 0 });
+ }
+ });
+ return;
+ }
+ utils_1.getRect(this, ROOT_ELEMENT).then(function (root) {
+ if (offsetTop >= root.top) {
+ _this.setDataAfterDiff({ fixed: true, height: root.height });
+ _this.transform = 0;
+ } else {
+ _this.setDataAfterDiff({ fixed: false });
+ }
+ });
+ },
+ setDataAfterDiff: function (data) {
+ var _this = this;
+ wx.nextTick(function () {
+ var diff = Object.keys(data).reduce(function (prev, key) {
+ if (data[key] !== _this.data[key]) {
+ prev[key] = data[key];
+ }
+ return prev;
+ }, {});
+ if (Object.keys(diff).length > 0) {
+ _this.setData(diff);
+ }
+ _this.$emit('scroll', {
+ scrollTop: _this.scrollTop,
+ isFixed: data.fixed || _this.data.fixed,
+ });
+ });
+ },
+ getContainerRect: function () {
+ var nodesRef = this.data.container();
+ return new Promise(function (resolve) {
+ return nodesRef.boundingClientRect(resolve).exec();
+ });
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/sticky/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/sticky/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..efdc3c823a323c17832b921a6bccbcd398609183
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/sticky/index.json
@@ -0,0 +1,3 @@
+{
+ "component": true
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/sticky/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/sticky/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..daba5d6d47903dc41be05233cead2980f6aa542d
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/sticky/index.wxml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/sticky/index.wxs b/src/openeuler/miniprogram_npm/@vant/weapp/sticky/index.wxs
new file mode 100644
index 0000000000000000000000000000000000000000..b753ac8f65e36cc8afc0a216ce4706dd6435d928
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/sticky/index.wxs
@@ -0,0 +1,25 @@
+/* eslint-disable */
+var style = require('../wxs/style.wxs');
+var addUnit = require('../wxs/add-unit.wxs');
+
+function wrapStyle(data) {
+ return style({
+ transform: data.transform
+ ? 'translate3d(0, ' + data.transform + 'px, 0)'
+ : '',
+ top: data.fixed ? addUnit(data.offsetTop) : '',
+ 'z-index': data.zIndex,
+ });
+}
+
+function containerStyle(data) {
+ return style({
+ height: data.fixed ? addUnit(data.height) : '',
+ 'z-index': data.zIndex,
+ });
+}
+
+module.exports = {
+ wrapStyle: wrapStyle,
+ containerStyle: containerStyle,
+};
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/sticky/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/sticky/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..526938754d16df9f292dcddb7a2ac9f6d0431422
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/sticky/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-sticky{position:relative}.van-sticky-wrap--fixed{position:fixed;right:0;left:0}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/submit-bar/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/submit-bar/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..4c2e9c95dcabe384f8624bf36dfa57f2c7cd9f4d
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/submit-bar/index.js
@@ -0,0 +1,61 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+component_1.VantComponent({
+ classes: ['bar-class', 'price-class', 'button-class'],
+ props: {
+ tip: {
+ type: null,
+ observer: 'updateTip',
+ },
+ tipIcon: String,
+ type: Number,
+ price: {
+ type: null,
+ observer: 'updatePrice',
+ },
+ label: String,
+ loading: Boolean,
+ disabled: Boolean,
+ buttonText: String,
+ currency: {
+ type: String,
+ value: '¥',
+ },
+ buttonType: {
+ type: String,
+ value: 'danger',
+ },
+ decimalLength: {
+ type: Number,
+ value: 2,
+ observer: 'updatePrice',
+ },
+ suffixLabel: String,
+ safeAreaInsetBottom: {
+ type: Boolean,
+ value: true,
+ },
+ },
+ methods: {
+ updatePrice: function () {
+ var _a = this.data,
+ price = _a.price,
+ decimalLength = _a.decimalLength;
+ var priceStrArr =
+ typeof price === 'number' &&
+ (price / 100).toFixed(decimalLength).split('.');
+ this.setData({
+ hasPrice: typeof price === 'number',
+ integerStr: priceStrArr && priceStrArr[0],
+ decimalStr: decimalLength && priceStrArr ? '.' + priceStrArr[1] : '',
+ });
+ },
+ updateTip: function () {
+ this.setData({ hasTip: typeof this.data.tip === 'string' });
+ },
+ onSubmit: function (event) {
+ this.$emit('submit', event.detail);
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/submit-bar/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/submit-bar/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..61add2251784068aee551743fc5f1595f83aaab5
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/submit-bar/index.json
@@ -0,0 +1,7 @@
+{
+ "component": true,
+ "usingComponents": {
+ "van-button": "../button/index",
+ "van-icon": "../icon/index"
+ }
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/submit-bar/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/submit-bar/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..e5a4dc17c738aedf4987e213335da644c6738425
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/submit-bar/index.wxml
@@ -0,0 +1,44 @@
+
+
+
+
+
+
+
+
+ {{ tip }}
+
+
+
+
+
+
+
+ {{ label || '合计:' }}
+
+ {{ currency }}
+ {{ integerStr }}{{decimalStr}}
+
+ {{ suffixLabel }}
+
+
+ {{ loading ? '' : buttonText }}
+
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/submit-bar/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/submit-bar/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..3126e91b80e379505885d841210d2cca263e34ad
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/submit-bar/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-submit-bar{position:fixed;bottom:0;left:0;width:100%;-webkit-user-select:none;user-select:none;z-index:100;z-index:var(--submit-bar-z-index,100);background-color:#fff;background-color:var(--submit-bar-background-color,#fff)}.van-submit-bar__tip{padding:10px;padding:var(--submit-bar-tip-padding,10px);color:#f56723;color:var(--submit-bar-tip-color,#f56723);font-size:12px;font-size:var(--submit-bar-tip-font-size,12px);line-height:1.5;line-height:var(--submit-bar-tip-line-height,1.5);background-color:#fff7cc;background-color:var(--submit-bar-tip-background-color,#fff7cc)}.van-submit-bar__tip:empty{display:none}.van-submit-bar__tip-icon{width:12px;height:12px;margin-right:4px;vertical-align:middle;font-size:12px;font-size:var(--submit-bar-tip-icon-size,12px);min-width:18px;min-width:calc(var(--submit-bar-tip-icon-size, 12px)*1.5)}.van-submit-bar__tip-text{display:inline;vertical-align:middle}.van-submit-bar__bar{display:-webkit-flex;display:flex;-webkit-align-items:center;align-items:center;-webkit-justify-content:flex-end;justify-content:flex-end;padding:0 16px;padding:var(--submit-bar-padding,0 16px);height:50px;height:var(--submit-bar-height,50px);font-size:14px;font-size:var(--submit-bar-text-font-size,14px);background-color:#fff;background-color:var(--submit-bar-background-color,#fff)}.van-submit-bar__safe{height:constant(safe-area-inset-bottom);height:env(safe-area-inset-bottom)}.van-submit-bar__text{-webkit-flex:1;flex:1;text-align:right;color:#323233;color:var(--submit-bar-text-color,#323233);padding-right:12px;padding-right:var(--padding-sm,12px)}.van-submit-bar__price,.van-submit-bar__text{font-weight:500;font-weight:var(--font-weight-bold,500)}.van-submit-bar__price{color:#ee0a24;color:var(--submit-bar-price-color,#ee0a24);font-size:12px;font-size:var(--submit-bar-price-font-size,12px)}.van-submit-bar__price-integer{font-size:20px;font-family:Avenir-Heavy,PingFang SC,Helvetica Neue,Arial,sans-serif}.van-submit-bar__currency{font-size:12px;font-size:var(--submit-bar-currency-font-size,12px)}.van-submit-bar__suffix-label{margin-left:5px}.van-submit-bar__button{width:110px;width:var(--submit-bar-button-width,110px);font-weight:500;font-weight:var(--font-weight-bold,500);--button-default-height:40px!important;--button-default-height:var(--submit-bar-button-height,40px)!important;--button-line-height:40px!important;--button-line-height:var(--submit-bar-button-height,40px)!important}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/swipe-cell/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/swipe-cell/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..92a8a89416b60cc6ed9038ddbd72ef6c8ae60dd0
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/swipe-cell/index.js
@@ -0,0 +1,162 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+var touch_1 = require('../mixins/touch');
+var utils_1 = require('../common/utils');
+var THRESHOLD = 0.3;
+var ARRAY = [];
+component_1.VantComponent({
+ props: {
+ disabled: Boolean,
+ leftWidth: {
+ type: Number,
+ value: 0,
+ observer: function (leftWidth) {
+ if (leftWidth === void 0) {
+ leftWidth = 0;
+ }
+ if (this.offset > 0) {
+ this.swipeMove(leftWidth);
+ }
+ },
+ },
+ rightWidth: {
+ type: Number,
+ value: 0,
+ observer: function (rightWidth) {
+ if (rightWidth === void 0) {
+ rightWidth = 0;
+ }
+ if (this.offset < 0) {
+ this.swipeMove(-rightWidth);
+ }
+ },
+ },
+ asyncClose: Boolean,
+ name: {
+ type: null,
+ value: '',
+ },
+ },
+ mixins: [touch_1.touch],
+ data: {
+ catchMove: false,
+ wrapperStyle: '',
+ },
+ created: function () {
+ this.offset = 0;
+ ARRAY.push(this);
+ },
+ destroyed: function () {
+ var _this = this;
+ ARRAY = ARRAY.filter(function (item) {
+ return item !== _this;
+ });
+ },
+ methods: {
+ open: function (position) {
+ var _a = this.data,
+ leftWidth = _a.leftWidth,
+ rightWidth = _a.rightWidth;
+ var offset = position === 'left' ? leftWidth : -rightWidth;
+ this.swipeMove(offset);
+ this.$emit('open', {
+ position: position,
+ name: this.data.name,
+ });
+ },
+ close: function () {
+ this.swipeMove(0);
+ },
+ swipeMove: function (offset) {
+ if (offset === void 0) {
+ offset = 0;
+ }
+ this.offset = utils_1.range(
+ offset,
+ -this.data.rightWidth,
+ this.data.leftWidth
+ );
+ var transform = 'translate3d(' + this.offset + 'px, 0, 0)';
+ var transition = this.dragging
+ ? 'none'
+ : 'transform .6s cubic-bezier(0.18, 0.89, 0.32, 1)';
+ this.setData({
+ wrapperStyle:
+ '\n -webkit-transform: ' +
+ transform +
+ ';\n -webkit-transition: ' +
+ transition +
+ ';\n transform: ' +
+ transform +
+ ';\n transition: ' +
+ transition +
+ ';\n ',
+ });
+ },
+ swipeLeaveTransition: function () {
+ var _a = this.data,
+ leftWidth = _a.leftWidth,
+ rightWidth = _a.rightWidth;
+ var offset = this.offset;
+ if (rightWidth > 0 && -offset > rightWidth * THRESHOLD) {
+ this.open('right');
+ } else if (leftWidth > 0 && offset > leftWidth * THRESHOLD) {
+ this.open('left');
+ } else {
+ this.swipeMove(0);
+ }
+ this.setData({ catchMove: false });
+ },
+ startDrag: function (event) {
+ if (this.data.disabled) {
+ return;
+ }
+ this.startOffset = this.offset;
+ this.touchStart(event);
+ },
+ noop: function () {},
+ onDrag: function (event) {
+ var _this = this;
+ if (this.data.disabled) {
+ return;
+ }
+ this.touchMove(event);
+ if (this.direction !== 'horizontal') {
+ return;
+ }
+ this.dragging = true;
+ ARRAY.filter(function (item) {
+ return item !== _this && item.offset !== 0;
+ }).forEach(function (item) {
+ return item.close();
+ });
+ this.setData({ catchMove: true });
+ this.swipeMove(this.startOffset + this.deltaX);
+ },
+ endDrag: function () {
+ if (this.data.disabled) {
+ return;
+ }
+ this.dragging = false;
+ this.swipeLeaveTransition();
+ },
+ onClick: function (event) {
+ var _a = event.currentTarget.dataset.key,
+ position = _a === void 0 ? 'outside' : _a;
+ this.$emit('click', position);
+ if (!this.offset) {
+ return;
+ }
+ if (this.data.asyncClose) {
+ this.$emit('close', {
+ position: position,
+ instance: this,
+ name: this.data.name,
+ });
+ } else {
+ this.swipeMove(0);
+ }
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/swipe-cell/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/swipe-cell/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..efdc3c823a323c17832b921a6bccbcd398609183
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/swipe-cell/index.json
@@ -0,0 +1,3 @@
+{
+ "component": true
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/swipe-cell/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/swipe-cell/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..2646746dd56fd7333fee5b0098e55ce5d42ef635
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/swipe-cell/index.wxml
@@ -0,0 +1,20 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/swipe-cell/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/swipe-cell/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..d6152709db7ca52744270fff39cfdf819af51847
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/swipe-cell/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-swipe-cell{position:relative;overflow:hidden}.van-swipe-cell__left,.van-swipe-cell__right{position:absolute;top:0;height:100%}.van-swipe-cell__left{left:0;-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}.van-swipe-cell__right{right:0;-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/switch/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/switch/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..df9e138e30330622ded47ef0a631e7943b3a3e70
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/switch/index.js
@@ -0,0 +1,42 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+component_1.VantComponent({
+ field: true,
+ classes: ['node-class'],
+ props: {
+ checked: null,
+ loading: Boolean,
+ disabled: Boolean,
+ activeColor: String,
+ inactiveColor: String,
+ size: {
+ type: String,
+ value: '30',
+ },
+ activeValue: {
+ type: null,
+ value: true,
+ },
+ inactiveValue: {
+ type: null,
+ value: false,
+ },
+ },
+ methods: {
+ onClick: function () {
+ var _a = this.data,
+ activeValue = _a.activeValue,
+ inactiveValue = _a.inactiveValue,
+ disabled = _a.disabled,
+ loading = _a.loading;
+ if (disabled || loading) {
+ return;
+ }
+ var checked = this.data.checked === activeValue;
+ var value = checked ? inactiveValue : activeValue;
+ this.$emit('input', value);
+ this.$emit('change', value);
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/switch/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/switch/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..71a25150fb2666b10022d8a4fbe1e4e08d6f0267
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/switch/index.json
@@ -0,0 +1,6 @@
+{
+ "component": true,
+ "usingComponents": {
+ "van-loading": "../loading/index"
+ }
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/switch/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/switch/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..fc08e1eb41a74f6dacfa3671cf41430d910cefa9
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/switch/index.wxml
@@ -0,0 +1,16 @@
+
+
+
+
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/switch/index.wxs b/src/openeuler/miniprogram_npm/@vant/weapp/switch/index.wxs
new file mode 100644
index 0000000000000000000000000000000000000000..2d3a63ae035af6861a9b6193b7d314ac1ed54326
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/switch/index.wxs
@@ -0,0 +1,26 @@
+/* eslint-disable */
+var style = require('../wxs/style.wxs');
+var addUnit = require('../wxs/add-unit.wxs');
+
+function rootStyle(data) {
+ var currentColor = data.checked ? data.activeColor : data.inactiveColor;
+
+ return style({
+ 'font-size': addUnit(data.size),
+ 'background-color': currentColor,
+ });
+}
+
+var BLUE = '#1989fa';
+var GRAY_DARK = '#969799';
+
+function loadingColor(data) {
+ return data.checked
+ ? data.activeColor || BLUE
+ : data.inactiveColor || GRAY_DARK;
+}
+
+module.exports = {
+ rootStyle: rootStyle,
+ loadingColor: loadingColor,
+};
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/switch/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/switch/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..e32a72ad3e9b6d1e6b7d7a4052afc7f7978f9e31
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/switch/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-switch{position:relative;display:inline-block;box-sizing:initial;width:2em;width:var(--switch-width,2em);height:1em;height:var(--switch-height,1em);background-color:#fff;background-color:var(--switch-background-color,#fff);border:1px solid rgba(0,0,0,.1);border:var(--switch-border,1px solid rgba(0,0,0,.1));border-radius:1em;border-radius:var(--switch-node-size,1em);transition:background-color .3s;transition:background-color var(--switch-transition-duration,.3s)}.van-switch__node{position:absolute;top:0;left:0;border-radius:100%;z-index:1;z-index:var(--switch-node-z-index,1);width:1em;width:var(--switch-node-size,1em);height:1em;height:var(--switch-node-size,1em);background-color:#fff;background-color:var(--switch-node-background-color,#fff);box-shadow:0 3px 1px 0 rgba(0,0,0,.05),0 2px 2px 0 rgba(0,0,0,.1),0 3px 3px 0 rgba(0,0,0,.05);box-shadow:var(--switch-node-box-shadow,0 3px 1px 0 rgba(0,0,0,.05),0 2px 2px 0 rgba(0,0,0,.1),0 3px 3px 0 rgba(0,0,0,.05));transition:-webkit-transform .3s cubic-bezier(.3,1.05,.4,1.05);transition:transform .3s cubic-bezier(.3,1.05,.4,1.05);transition:transform .3s cubic-bezier(.3,1.05,.4,1.05),-webkit-transform .3s cubic-bezier(.3,1.05,.4,1.05);transition:-webkit-transform var(--switch-transition-duration,.3s) cubic-bezier(.3,1.05,.4,1.05);transition:transform var(--switch-transition-duration,.3s) cubic-bezier(.3,1.05,.4,1.05);transition:transform var(--switch-transition-duration,.3s) cubic-bezier(.3,1.05,.4,1.05),-webkit-transform var(--switch-transition-duration,.3s) cubic-bezier(.3,1.05,.4,1.05)}.van-switch__loading{position:absolute!important;top:25%;left:25%;width:50%;height:50%}.van-switch--on{background-color:#1989fa;background-color:var(--switch-on-background-color,#1989fa)}.van-switch--on .van-switch__node{-webkit-transform:translateX(1em);transform:translateX(1em);-webkit-transform:translateX(calc(var(--switch-width, 2em) - var(--switch-node-size, 1em)));transform:translateX(calc(var(--switch-width, 2em) - var(--switch-node-size, 1em)))}.van-switch--disabled{opacity:.4;opacity:var(--switch-disabled-opacity,.4)}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/tab/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/tab/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..8c680b3724b2edde0be7a5bd29bcc193dfc729c4
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/tab/index.js
@@ -0,0 +1,58 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var relation_1 = require('../common/relation');
+var component_1 = require('../common/component');
+component_1.VantComponent({
+ relation: relation_1.useParent('tabs'),
+ props: {
+ dot: {
+ type: Boolean,
+ observer: 'update',
+ },
+ info: {
+ type: null,
+ observer: 'update',
+ },
+ title: {
+ type: String,
+ observer: 'update',
+ },
+ disabled: {
+ type: Boolean,
+ observer: 'update',
+ },
+ titleStyle: {
+ type: String,
+ observer: 'update',
+ },
+ name: {
+ type: null,
+ value: '',
+ },
+ },
+ data: {
+ active: false,
+ },
+ methods: {
+ getComputedName: function () {
+ if (this.data.name !== '') {
+ return this.data.name;
+ }
+ return this.index;
+ },
+ updateRender: function (active, parent) {
+ var parentData = parent.data;
+ this.inited = this.inited || active;
+ this.setData({
+ active: active,
+ shouldRender: this.inited || !parentData.lazyRender,
+ shouldShow: active || parentData.animated,
+ });
+ },
+ update: function () {
+ if (this.parent) {
+ this.parent.updateTabs();
+ }
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/tab/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/tab/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..efdc3c823a323c17832b921a6bccbcd398609183
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/tab/index.json
@@ -0,0 +1,3 @@
+{
+ "component": true
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/tab/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/tab/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..6acf5aebdf6c970f65ffafaeaca1fcdea45bd914
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/tab/index.wxml
@@ -0,0 +1,8 @@
+
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/tab/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/tab/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..76ddf068482c2ffdd462e37aa0659a7975e813b5
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/tab/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';:host{-webkit-flex-shrink:0;flex-shrink:0;width:100%}.van-tab__pane,:host{box-sizing:border-box}.van-tab__pane{overflow-y:auto;-webkit-overflow-scrolling:touch}.van-tab__pane--active{height:auto}.van-tab__pane--inactive{height:0;overflow:visible}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/tabbar-item/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/tabbar-item/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..51c4deb6873a9bd332893facd625a8f403d4af08
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/tabbar-item/index.js
@@ -0,0 +1,58 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+var relation_1 = require('../common/relation');
+component_1.VantComponent({
+ props: {
+ info: null,
+ name: null,
+ icon: String,
+ dot: Boolean,
+ iconPrefix: {
+ type: String,
+ value: 'van-icon',
+ },
+ },
+ relation: relation_1.useParent('tabbar'),
+ data: {
+ active: false,
+ activeColor: '',
+ inactiveColor: '',
+ },
+ methods: {
+ onClick: function () {
+ var parent = this.parent;
+ if (parent) {
+ var index = parent.children.indexOf(this);
+ var active = this.data.name || index;
+ if (active !== this.data.active) {
+ parent.$emit('change', active);
+ }
+ }
+ this.$emit('click');
+ },
+ updateFromParent: function () {
+ var parent = this.parent;
+ if (!parent) {
+ return;
+ }
+ var index = parent.children.indexOf(this);
+ var parentData = parent.data;
+ var data = this.data;
+ var active = (data.name || index) === parentData.active;
+ var patch = {};
+ if (active !== data.active) {
+ patch.active = active;
+ }
+ if (parentData.activeColor !== data.activeColor) {
+ patch.activeColor = parentData.activeColor;
+ }
+ if (parentData.inactiveColor !== data.inactiveColor) {
+ patch.inactiveColor = parentData.inactiveColor;
+ }
+ if (Object.keys(patch).length > 0) {
+ this.setData(patch);
+ }
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/tabbar-item/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/tabbar-item/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..8ed8bcd994512649289ebbcf8aedf9e9241f64e3
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/tabbar-item/index.json
@@ -0,0 +1,7 @@
+{
+ "component": true,
+ "usingComponents": {
+ "van-icon": "../icon/index",
+ "van-info": "../info/index"
+ }
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/tabbar-item/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/tabbar-item/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..98bb8f5ce80ba91235a3a67b4612886aed726195
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/tabbar-item/index.wxml
@@ -0,0 +1,28 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/tabbar-item/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/tabbar-item/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..ff33bd21a10a5488026201585ee8b9add1e7bca8
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/tabbar-item/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';:host{-webkit-flex:1;flex:1}.van-tabbar-item{display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column;-webkit-align-items:center;align-items:center;-webkit-justify-content:center;justify-content:center;height:100%;color:#646566;color:var(--tabbar-item-text-color,#646566);font-size:12px;font-size:var(--tabbar-item-font-size,12px);line-height:1;line-height:var(--tabbar-item-line-height,1)}.van-tabbar-item__icon{position:relative;margin-bottom:4px;margin-bottom:var(--tabbar-item-margin-bottom,4px);font-size:22px;font-size:var(--tabbar-item-icon-size,22px)}.van-tabbar-item__icon__inner{display:block;min-width:1em}.van-tabbar-item--active{color:#1989fa;color:var(--tabbar-item-active-color,#1989fa)}.van-tabbar-item__info{margin-top:2px}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/tabbar/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/tabbar/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..403d96d8998bfa842a4c356f49246ab43bc0277d
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/tabbar/index.js
@@ -0,0 +1,70 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+var relation_1 = require('../common/relation');
+var utils_1 = require('../common/utils');
+component_1.VantComponent({
+ relation: relation_1.useChildren('tabbar-item', function () {
+ this.updateChildren();
+ }),
+ props: {
+ active: {
+ type: null,
+ observer: 'updateChildren',
+ },
+ activeColor: {
+ type: String,
+ observer: 'updateChildren',
+ },
+ inactiveColor: {
+ type: String,
+ observer: 'updateChildren',
+ },
+ fixed: {
+ type: Boolean,
+ value: true,
+ observer: 'setHeight',
+ },
+ placeholder: {
+ type: Boolean,
+ observer: 'setHeight',
+ },
+ border: {
+ type: Boolean,
+ value: true,
+ },
+ zIndex: {
+ type: Number,
+ value: 1,
+ },
+ safeAreaInsetBottom: {
+ type: Boolean,
+ value: true,
+ },
+ },
+ data: {
+ height: 50,
+ },
+ methods: {
+ updateChildren: function () {
+ var children = this.children;
+ if (!Array.isArray(children) || !children.length) {
+ return;
+ }
+ children.forEach(function (child) {
+ return child.updateFromParent();
+ });
+ },
+ setHeight: function () {
+ var _this = this;
+ if (!this.data.fixed || !this.data.placeholder) {
+ return;
+ }
+ wx.nextTick(function () {
+ utils_1.getRect(_this, '.van-tabbar').then(function (res) {
+ _this.setData({ height: res.height });
+ });
+ });
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/tabbar/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/tabbar/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..efdc3c823a323c17832b921a6bccbcd398609183
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/tabbar/index.json
@@ -0,0 +1,3 @@
+{
+ "component": true
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/tabbar/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/tabbar/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..4229c4ad7b55652b35c92868ef5c1083353bd0de
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/tabbar/index.wxml
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/tabbar/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/tabbar/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..68195697d69acc624250793feb0e0d101cae7b72
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/tabbar/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-tabbar{display:-webkit-flex;display:flex;box-sizing:initial;width:100%;height:50px;height:var(--tabbar-height,50px);background-color:#fff;background-color:var(--tabbar-background-color,#fff)}.van-tabbar--fixed{position:fixed;bottom:0;left:0}.van-tabbar--safe{padding-bottom:env(safe-area-inset-bottom)}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/tabs/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/tabs/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..1b16226e18d052b3d490cc5eaa908cf5b71ea42f
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/tabs/index.js
@@ -0,0 +1,305 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+var touch_1 = require('../mixins/touch');
+var utils_1 = require('../common/utils');
+var validator_1 = require('../common/validator');
+var relation_1 = require('../common/relation');
+component_1.VantComponent({
+ mixins: [touch_1.touch],
+ classes: ['nav-class', 'tab-class', 'tab-active-class', 'line-class'],
+ relation: relation_1.useChildren('tab', function () {
+ this.updateTabs();
+ }),
+ props: {
+ sticky: Boolean,
+ border: Boolean,
+ swipeable: Boolean,
+ titleActiveColor: String,
+ titleInactiveColor: String,
+ color: String,
+ animated: {
+ type: Boolean,
+ observer: function () {
+ var _this = this;
+ this.children.forEach(function (child, index) {
+ return child.updateRender(index === _this.data.currentIndex, _this);
+ });
+ },
+ },
+ lineWidth: {
+ type: null,
+ value: 40,
+ observer: 'resize',
+ },
+ lineHeight: {
+ type: null,
+ value: -1,
+ },
+ active: {
+ type: null,
+ value: 0,
+ observer: function (name) {
+ if (name !== this.getCurrentName()) {
+ this.setCurrentIndexByName(name);
+ }
+ },
+ },
+ type: {
+ type: String,
+ value: 'line',
+ },
+ ellipsis: {
+ type: Boolean,
+ value: true,
+ },
+ duration: {
+ type: Number,
+ value: 0.3,
+ },
+ zIndex: {
+ type: Number,
+ value: 1,
+ },
+ swipeThreshold: {
+ type: Number,
+ value: 5,
+ observer: function (value) {
+ this.setData({
+ scrollable: this.children.length > value || !this.data.ellipsis,
+ });
+ },
+ },
+ offsetTop: {
+ type: Number,
+ value: 0,
+ },
+ lazyRender: {
+ type: Boolean,
+ value: true,
+ },
+ },
+ data: {
+ tabs: [],
+ scrollLeft: 0,
+ scrollable: false,
+ currentIndex: 0,
+ container: null,
+ skipTransition: true,
+ lineOffsetLeft: 0,
+ },
+ mounted: function () {
+ var _this = this;
+ utils_1.requestAnimationFrame(function () {
+ _this.setData({
+ container: function () {
+ return _this.createSelectorQuery().select('.van-tabs');
+ },
+ });
+ _this.resize(true);
+ _this.scrollIntoView();
+ });
+ },
+ methods: {
+ updateTabs: function () {
+ var _a = this,
+ _b = _a.children,
+ children = _b === void 0 ? [] : _b,
+ data = _a.data;
+ this.setData({
+ tabs: children.map(function (child) {
+ return child.data;
+ }),
+ scrollable:
+ this.children.length > data.swipeThreshold || !data.ellipsis,
+ });
+ this.setCurrentIndexByName(data.active || this.getCurrentName());
+ },
+ trigger: function (eventName, child) {
+ var currentIndex = this.data.currentIndex;
+ var currentChild = child || this.children[currentIndex];
+ if (!validator_1.isDef(currentChild)) {
+ return;
+ }
+ this.$emit(eventName, {
+ index: currentChild.index,
+ name: currentChild.getComputedName(),
+ title: currentChild.data.title,
+ });
+ },
+ onTap: function (event) {
+ var _this = this;
+ var index = event.currentTarget.dataset.index;
+ var child = this.children[index];
+ if (child.data.disabled) {
+ this.trigger('disabled', child);
+ } else {
+ this.setCurrentIndex(index);
+ utils_1.nextTick(function () {
+ _this.trigger('click');
+ });
+ }
+ },
+ // correct the index of active tab
+ setCurrentIndexByName: function (name) {
+ var _a = this.children,
+ children = _a === void 0 ? [] : _a;
+ var matched = children.filter(function (child) {
+ return child.getComputedName() === name;
+ });
+ if (matched.length) {
+ this.setCurrentIndex(matched[0].index);
+ }
+ },
+ setCurrentIndex: function (currentIndex) {
+ var _this = this;
+ var _a = this,
+ data = _a.data,
+ _b = _a.children,
+ children = _b === void 0 ? [] : _b;
+ if (
+ !validator_1.isDef(currentIndex) ||
+ currentIndex >= children.length ||
+ currentIndex < 0
+ ) {
+ return;
+ }
+ utils_1.groupSetData(this, function () {
+ children.forEach(function (item, index) {
+ var active = index === currentIndex;
+ if (active !== item.data.active || !item.inited) {
+ item.updateRender(active, _this);
+ }
+ });
+ });
+ if (currentIndex === data.currentIndex) {
+ return;
+ }
+ var shouldEmitChange = data.currentIndex !== null;
+ this.setData({ currentIndex: currentIndex });
+ utils_1.nextTick(function () {
+ _this.resize();
+ _this.scrollIntoView();
+ _this.trigger('input');
+ if (shouldEmitChange) {
+ _this.trigger('change');
+ }
+ });
+ },
+ getCurrentName: function () {
+ var activeTab = this.children[this.data.currentIndex];
+ if (activeTab) {
+ return activeTab.getComputedName();
+ }
+ },
+ resize: function (skipTransition) {
+ var _this = this;
+ if (skipTransition === void 0) {
+ skipTransition = false;
+ }
+ if (this.data.type !== 'line') {
+ return;
+ }
+ var _a = this.data,
+ currentIndex = _a.currentIndex,
+ ellipsis = _a.ellipsis;
+ Promise.all([
+ utils_1.getAllRect(this, '.van-tab'),
+ utils_1.getRect(this, '.van-tabs__line'),
+ ]).then(function (_a) {
+ var _b = _a[0],
+ rects = _b === void 0 ? [] : _b,
+ lineRect = _a[1];
+ var rect = rects[currentIndex];
+ if (rect == null) {
+ return;
+ }
+ var lineOffsetLeft = rects
+ .slice(0, currentIndex)
+ .reduce(function (prev, curr) {
+ return prev + curr.width;
+ }, 0);
+ lineOffsetLeft +=
+ (rect.width - lineRect.width) / 2 + (ellipsis ? 0 : 8);
+ _this.setData({
+ lineOffsetLeft: lineOffsetLeft,
+ skipTransition: skipTransition,
+ });
+ });
+ },
+ // scroll active tab into view
+ scrollIntoView: function () {
+ var _this = this;
+ var _a = this.data,
+ currentIndex = _a.currentIndex,
+ scrollable = _a.scrollable;
+ if (!scrollable) {
+ return;
+ }
+ Promise.all([
+ utils_1.getAllRect(this, '.van-tab'),
+ utils_1.getRect(this, '.van-tabs__nav'),
+ ]).then(function (_a) {
+ var tabRects = _a[0],
+ navRect = _a[1];
+ var tabRect = tabRects[currentIndex];
+ var offsetLeft = tabRects
+ .slice(0, currentIndex)
+ .reduce(function (prev, curr) {
+ return prev + curr.width;
+ }, 0);
+ _this.setData({
+ scrollLeft: offsetLeft - (navRect.width - tabRect.width) / 2,
+ });
+ });
+ },
+ onTouchScroll: function (event) {
+ this.$emit('scroll', event.detail);
+ },
+ onTouchStart: function (event) {
+ if (!this.data.swipeable) return;
+ this.touchStart(event);
+ },
+ onTouchMove: function (event) {
+ if (!this.data.swipeable) return;
+ this.touchMove(event);
+ },
+ // watch swipe touch end
+ onTouchEnd: function () {
+ if (!this.data.swipeable) return;
+ var _a = this,
+ direction = _a.direction,
+ deltaX = _a.deltaX,
+ offsetX = _a.offsetX;
+ var minSwipeDistance = 50;
+ if (direction === 'horizontal' && offsetX >= minSwipeDistance) {
+ var index = this.getAvaiableTab(deltaX);
+ if (index !== -1) {
+ this.setCurrentIndex(index);
+ }
+ }
+ },
+ getAvaiableTab: function (direction) {
+ var _a = this.data,
+ tabs = _a.tabs,
+ currentIndex = _a.currentIndex;
+ var step = direction > 0 ? -1 : 1;
+ for (
+ var i = step;
+ currentIndex + i < tabs.length && currentIndex + i >= 0;
+ i += step
+ ) {
+ var index = currentIndex + i;
+ if (
+ index >= 0 &&
+ index < tabs.length &&
+ tabs[index] &&
+ !tabs[index].disabled
+ ) {
+ return index;
+ }
+ }
+ return -1;
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/tabs/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/tabs/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..7bf32aac8bd1b3135865633ca0c3121103d81c6c
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/tabs/index.json
@@ -0,0 +1,7 @@
+{
+ "component": true,
+ "usingComponents": {
+ "van-info": "../info/index",
+ "van-sticky": "../sticky/index"
+ }
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/tabs/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/tabs/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..6b765b92eb79aacdf5a4a237f190f5410faaaa8f
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/tabs/index.wxml
@@ -0,0 +1,63 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ item.title }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/tabs/index.wxs b/src/openeuler/miniprogram_npm/@vant/weapp/tabs/index.wxs
new file mode 100644
index 0000000000000000000000000000000000000000..b5c2760cf6f250b6eb6b5f3b4085fa5716a451dd
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/tabs/index.wxs
@@ -0,0 +1,82 @@
+/* eslint-disable */
+var utils = require('../wxs/utils.wxs');
+var style = require('../wxs/style.wxs');
+
+function tabClass(active, ellipsis) {
+ var classes = ['tab-class'];
+
+ if (active) {
+ classes.push('tab-active-class');
+ }
+
+ if (ellipsis) {
+ classes.push('van-ellipsis');
+ }
+
+ return classes.join(' ');
+}
+
+function tabStyle(data) {
+ var titleColor = data.active
+ ? data.titleActiveColor
+ : data.titleInactiveColor;
+
+ var ellipsis = data.scrollable && data.ellipsis;
+
+ // card theme color
+ if (data.type === 'card') {
+ return style({
+ 'border-color': data.color,
+ 'background-color': !data.disabled && data.active ? data.color : null,
+ color: titleColor || (!data.disabled && !data.active ? data.color : null),
+ 'flex-basis': ellipsis ? 88 / data.swipeThreshold + '%' : null,
+ });
+ }
+
+ return style({
+ color: titleColor,
+ 'flex-basis': ellipsis ? 88 / data.swipeThreshold + '%' : null,
+ });
+}
+
+function navStyle(color, type) {
+ return style({
+ 'border-color': type === 'card' && color ? color : null,
+ });
+}
+
+function trackStyle(data) {
+ if (!data.animated) {
+ return '';
+ }
+
+ return style({
+ left: -100 * data.currentIndex + '%',
+ 'transition-duration': data.duration + 's',
+ '-webkit-transition-duration': data.duration + 's',
+ });
+}
+
+function lineStyle(data) {
+ return style({
+ width: utils.addUnit(data.lineWidth),
+ transform: 'translateX(' + data.lineOffsetLeft + 'px)',
+ '-webkit-transform': 'translateX(' + data.lineOffsetLeft + 'px)',
+ 'background-color': data.color,
+ height: data.lineHeight !== -1 ? utils.addUnit(data.lineHeight) : null,
+ 'border-radius':
+ data.lineHeight !== -1 ? utils.addUnit(data.lineHeight) : null,
+ 'transition-duration': !data.skipTransition ? data.duration + 's' : null,
+ '-webkit-transition-duration': !data.skipTransition
+ ? data.duration + 's'
+ : null,
+ });
+}
+
+module.exports = {
+ tabClass: tabClass,
+ tabStyle: tabStyle,
+ trackStyle: trackStyle,
+ lineStyle: lineStyle,
+ navStyle: navStyle,
+};
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/tabs/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/tabs/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..d0449e6acbc579020082288cd3a6790e46f3d9a3
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/tabs/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-tabs{position:relative;-webkit-tap-highlight-color:transparent}.van-tabs__wrap{display:-webkit-flex;display:flex;overflow:hidden}.van-tabs__wrap--scrollable .van-tab{-webkit-flex:0 0 22%;flex:0 0 22%}.van-tabs__wrap--scrollable .van-tab--complete{-webkit-flex:1 0 auto!important;flex:1 0 auto!important;padding:0 12px}.van-tabs__wrap--scrollable .van-tabs__nav--complete{padding-right:8px;padding-left:8px}.van-tabs__scroll{background-color:#fff;background-color:var(--tabs-nav-background-color,#fff)}.van-tabs__scroll--line{box-sizing:initial;height:calc(100% + 15px)}.van-tabs__scroll--card{margin:0 16px;margin:0 var(--padding-md,16px)}.van-tabs__scroll::-webkit-scrollbar{display:none}.van-tabs__nav{position:relative;display:-webkit-flex;display:flex;-webkit-user-select:none;user-select:none}.van-tabs__nav--card{box-sizing:border-box;height:30px;height:var(--tabs-card-height,30px);border:1px solid #ee0a24;border:var(--border-width-base,1px) solid var(--tabs-default-color,#ee0a24);border-radius:2px;border-radius:var(--border-radius-sm,2px)}.van-tabs__nav--card .van-tab{color:#ee0a24;color:var(--tabs-default-color,#ee0a24);line-height:28px;line-height:calc(var(--tabs-card-height, 30px) - var(--border-width-base, 1px)*2);border-right:1px solid #ee0a24;border-right:var(--border-width-base,1px) solid var(--tabs-default-color,#ee0a24)}.van-tabs__nav--card .van-tab:last-child{border-right:none}.van-tabs__nav--card .van-tab.van-tab--active{color:#fff;color:var(--white,#fff);background-color:#ee0a24;background-color:var(--tabs-default-color,#ee0a24)}.van-tabs__nav--card .van-tab--disabled{color:#c8c9cc;color:var(--tab-disabled-text-color,#c8c9cc)}.van-tabs__line{position:absolute;bottom:0;left:0;z-index:1;height:3px;height:var(--tabs-bottom-bar-height,3px);border-radius:3px;border-radius:var(--tabs-bottom-bar-height,3px);background-color:#ee0a24;background-color:var(--tabs-bottom-bar-color,#ee0a24)}.van-tabs__track{position:relative;width:100%;height:100%}.van-tabs__track--animated{display:-webkit-flex;display:flex;transition-property:left}.van-tabs__content{overflow:hidden}.van-tabs--line .van-tabs__wrap{height:44px;height:var(--tabs-line-height,44px)}.van-tabs--card .van-tabs__wrap{height:30px;height:var(--tabs-card-height,30px)}.van-tab{position:relative;-webkit-flex:1;flex:1;box-sizing:border-box;min-width:0;padding:0 5px;text-align:center;cursor:pointer;color:#646566;color:var(--tab-text-color,#646566);font-size:14px;font-size:var(--tab-font-size,14px);line-height:44px;line-height:var(--tabs-line-height,44px)}.van-tab--active{font-weight:500;font-weight:var(--font-weight-bold,500);color:#323233;color:var(--tab-active-text-color,#323233)}.van-tab--disabled{color:#c8c9cc;color:var(--tab-disabled-text-color,#c8c9cc)}.van-tab__title__info{position:relative!important;top:-1px!important;display:inline-block;-webkit-transform:translateX(0)!important;transform:translateX(0)!important}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/tag/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/tag/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..0aa166b319477684136a861e55911a7ce65ec24d
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/tag/index.js
@@ -0,0 +1,23 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+component_1.VantComponent({
+ props: {
+ size: String,
+ mark: Boolean,
+ color: String,
+ plain: Boolean,
+ round: Boolean,
+ textColor: String,
+ type: {
+ type: String,
+ value: 'default',
+ },
+ closeable: Boolean,
+ },
+ methods: {
+ onClose: function () {
+ this.$emit('close');
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/tag/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/tag/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..8abfe203d0f960f68e62ffbf80021664bc8aae0a
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/tag/index.json
@@ -0,0 +1,6 @@
+{
+ "component": true,
+ "usingComponents": {
+ "van-icon": "../icon/index"
+ }
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/tag/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/tag/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..1e70950e72b55b77ed6adfafceeef782e410937b
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/tag/index.wxml
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/tag/index.wxs b/src/openeuler/miniprogram_npm/@vant/weapp/tag/index.wxs
new file mode 100644
index 0000000000000000000000000000000000000000..40d82dedc2e9c76294404be8c828de28564a0d67
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/tag/index.wxs
@@ -0,0 +1,13 @@
+/* eslint-disable */
+var style = require('../wxs/style.wxs');
+
+function rootStyle(data) {
+ return style({
+ 'background-color': data.plain ? '' : data.color,
+ color: data.textColor || data.plain ? data.textColor || data.color : '',
+ });
+}
+
+module.exports = {
+ rootStyle: rootStyle,
+};
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/tag/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/tag/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..46df0da0434441c88237be1e3cf4e5ed2a7c43eb
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/tag/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-tag{position:relative;display:-webkit-inline-flex;display:inline-flex;-webkit-align-items:center;align-items:center;padding:0 4px;padding:var(--tag-padding,0 4px);color:#fff;color:var(--tag-text-color,#fff);font-size:12px;font-size:var(--tag-font-size,12px);line-height:16px;line-height:var(--tag-line-height,16px);border-radius:2px;border-radius:var(--tag-border-radius,2px)}.van-tag--default{background-color:#969799;background-color:var(--tag-default-color,#969799)}.van-tag--default.van-tag--plain{color:#969799;color:var(--tag-default-color,#969799)}.van-tag--danger{background-color:#ee0a24;background-color:var(--tag-danger-color,#ee0a24)}.van-tag--danger.van-tag--plain{color:#ee0a24;color:var(--tag-danger-color,#ee0a24)}.van-tag--primary{background-color:#1989fa;background-color:var(--tag-primary-color,#1989fa)}.van-tag--primary.van-tag--plain{color:#1989fa;color:var(--tag-primary-color,#1989fa)}.van-tag--success{background-color:#07c160;background-color:var(--tag-success-color,#07c160)}.van-tag--success.van-tag--plain{color:#07c160;color:var(--tag-success-color,#07c160)}.van-tag--warning{background-color:#ff976a;background-color:var(--tag-warning-color,#ff976a)}.van-tag--warning.van-tag--plain{color:#ff976a;color:var(--tag-warning-color,#ff976a)}.van-tag--plain{background-color:#fff;background-color:var(--tag-plain-background-color,#fff)}.van-tag--plain:before{position:absolute;top:0;right:0;bottom:0;left:0;border:1px solid;border-radius:inherit;content:"";pointer-events:none}.van-tag--medium{padding:2px 6px;padding:var(--tag-medium-padding,2px 6px)}.van-tag--large{padding:4px 8px;padding:var(--tag-large-padding,4px 8px);font-size:14px;font-size:var(--tag-large-font-size,14px);border-radius:4px;border-radius:var(--tag-large-border-radius,4px)}.van-tag--mark{border-radius:0 999px 999px 0;border-radius:0 var(--tag-round-border-radius,999px) var(--tag-round-border-radius,999px) 0}.van-tag--mark:after{display:block;width:2px;content:""}.van-tag--round{border-radius:999px;border-radius:var(--tag-round-border-radius,999px)}.van-tag__close{min-width:1em;margin-left:2px}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/toast/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/toast/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..263f35bb9397f86b82298c54b630ef60c1145ff0
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/toast/index.js
@@ -0,0 +1,31 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+component_1.VantComponent({
+ props: {
+ show: Boolean,
+ mask: Boolean,
+ message: String,
+ forbidClick: Boolean,
+ zIndex: {
+ type: Number,
+ value: 1000,
+ },
+ type: {
+ type: String,
+ value: 'text',
+ },
+ loadingType: {
+ type: String,
+ value: 'circular',
+ },
+ position: {
+ type: String,
+ value: 'middle',
+ },
+ },
+ methods: {
+ // for prevent touchmove
+ noop: function () {},
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/toast/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/toast/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..5971bb1ae125ecbe097f305bd5f83363dad45bd6
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/toast/index.json
@@ -0,0 +1,9 @@
+{
+ "component": true,
+ "usingComponents": {
+ "van-icon": "../icon/index",
+ "van-loading": "../loading/index",
+ "van-overlay": "../overlay/index",
+ "van-transition": "../transition/index"
+ }
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/toast/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/toast/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..6a53bda8da91c4aad1e0c20a4e8447111894ff75
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/toast/index.wxml
@@ -0,0 +1,33 @@
+
+
+
+
+ {{ message }}
+
+
+
+
+
+ {{ message }}
+
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/toast/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/toast/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..85dc7a8fb11dbe3168ec457766248c2ae2af43f5
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/toast/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-toast{display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column;-webkit-align-items:center;align-items:center;-webkit-justify-content:center;justify-content:center;box-sizing:initial;color:#fff;color:var(--toast-text-color,#fff);font-size:14px;font-size:var(--toast-font-size,14px);line-height:20px;line-height:var(--toast-line-height,20px);white-space:pre-wrap;word-wrap:break-word;background-color:rgba(0,0,0,.7);background-color:var(--toast-background-color,rgba(0,0,0,.7));border-radius:8px;border-radius:var(--toast-border-radius,8px)}.van-toast__container{position:fixed;top:50%;left:50%;width:-webkit-fit-content;width:fit-content;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);max-width:70%;max-width:var(--toast-max-width,70%)}.van-toast--text{min-width:96px;min-width:var(--toast-text-min-width,96px);padding:8px 12px;padding:var(--toast-text-padding,8px 12px)}.van-toast--icon{width:88px;width:var(--toast-default-width,88px);min-height:88px;min-height:var(--toast-default-min-height,88px);padding:16px;padding:var(--toast-default-padding,16px)}.van-toast--icon .van-toast__icon{font-size:36px;font-size:var(--toast-icon-size,36px)}.van-toast--icon .van-toast__text{padding-top:8px}.van-toast__loading{margin:10px 0}.van-toast--top{-webkit-transform:translateY(-30vh);transform:translateY(-30vh)}.van-toast--bottom{-webkit-transform:translateY(30vh);transform:translateY(30vh)}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/toast/toast.js b/src/openeuler/miniprogram_npm/@vant/weapp/toast/toast.js
new file mode 100644
index 0000000000000000000000000000000000000000..076fff8962b1c9ef376e5fe6affc060d4ff18657
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/toast/toast.js
@@ -0,0 +1,92 @@
+'use strict';
+var __assign =
+ (this && this.__assign) ||
+ function () {
+ __assign =
+ Object.assign ||
+ function (t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s)
+ if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+ };
+Object.defineProperty(exports, '__esModule', { value: true });
+var validator_1 = require('../common/validator');
+var defaultOptions = {
+ type: 'text',
+ mask: false,
+ message: '',
+ show: true,
+ zIndex: 1000,
+ duration: 2000,
+ position: 'middle',
+ forbidClick: false,
+ loadingType: 'circular',
+ selector: '#van-toast',
+};
+var queue = [];
+var currentOptions = __assign({}, defaultOptions);
+function parseOptions(message) {
+ return validator_1.isObj(message) ? message : { message: message };
+}
+function getContext() {
+ var pages = getCurrentPages();
+ return pages[pages.length - 1];
+}
+function Toast(toastOptions) {
+ var options = __assign(
+ __assign({}, currentOptions),
+ parseOptions(toastOptions)
+ );
+ var context = options.context || getContext();
+ var toast = context.selectComponent(options.selector);
+ if (!toast) {
+ console.warn('未找到 van-toast 节点,请确认 selector 及 context 是否正确');
+ return;
+ }
+ delete options.context;
+ delete options.selector;
+ toast.clear = function () {
+ toast.setData({ show: false });
+ if (options.onClose) {
+ options.onClose();
+ }
+ };
+ queue.push(toast);
+ toast.setData(options);
+ clearTimeout(toast.timer);
+ if (options.duration != null && options.duration > 0) {
+ toast.timer = setTimeout(function () {
+ toast.clear();
+ queue = queue.filter(function (item) {
+ return item !== toast;
+ });
+ }, options.duration);
+ }
+ return toast;
+}
+var createMethod = function (type) {
+ return function (options) {
+ return Toast(__assign({ type: type }, parseOptions(options)));
+ };
+};
+Toast.loading = createMethod('loading');
+Toast.success = createMethod('success');
+Toast.fail = createMethod('fail');
+Toast.clear = function () {
+ queue.forEach(function (toast) {
+ toast.clear();
+ });
+ queue = [];
+};
+Toast.setDefaultOptions = function (options) {
+ Object.assign(currentOptions, options);
+};
+Toast.resetDefaultOptions = function () {
+ currentOptions = __assign({}, defaultOptions);
+};
+exports.default = Toast;
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/transition/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/transition/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..547fb064d73858d55e29dc200d54dc1e1bb29765
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/transition/index.js
@@ -0,0 +1,15 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+var transition_1 = require('../mixins/transition');
+component_1.VantComponent({
+ classes: [
+ 'enter-class',
+ 'enter-active-class',
+ 'enter-to-class',
+ 'leave-class',
+ 'leave-active-class',
+ 'leave-to-class',
+ ],
+ mixins: [transition_1.transition(true)],
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/transition/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/transition/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..efdc3c823a323c17832b921a6bccbcd398609183
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/transition/index.json
@@ -0,0 +1,3 @@
+{
+ "component": true
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/transition/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/transition/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..9b2f9124ce036d57cabd84a0221913aa6352b44e
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/transition/index.wxml
@@ -0,0 +1,10 @@
+
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/transition/index.wxs b/src/openeuler/miniprogram_npm/@vant/weapp/transition/index.wxs
new file mode 100644
index 0000000000000000000000000000000000000000..f2e16d4c8aac1b96e8c6b931545f370718eebf64
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/transition/index.wxs
@@ -0,0 +1,17 @@
+/* eslint-disable */
+var style = require('../wxs/style.wxs');
+
+function rootStyle(data) {
+ return style([
+ {
+ '-webkit-transition-duration': data.currentDuration + 'ms',
+ 'transition-duration': data.currentDuration + 'ms',
+ },
+ data.display ? null : 'display: none',
+ data.customStyle,
+ ]);
+}
+
+module.exports = {
+ rootStyle: rootStyle,
+};
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/transition/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/transition/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..d459f5c123f6044f5c8944f4310efa29ab490eb4
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/transition/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-transition{transition-timing-function:ease}.van-fade-enter-active,.van-fade-leave-active{transition-property:opacity}.van-fade-enter,.van-fade-leave-to{opacity:0}.van-fade-down-enter-active,.van-fade-down-leave-active,.van-fade-left-enter-active,.van-fade-left-leave-active,.van-fade-right-enter-active,.van-fade-right-leave-active,.van-fade-up-enter-active,.van-fade-up-leave-active{transition-property:opacity,-webkit-transform;transition-property:opacity,transform;transition-property:opacity,transform,-webkit-transform}.van-fade-up-enter,.van-fade-up-leave-to{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0);opacity:0}.van-fade-down-enter,.van-fade-down-leave-to{-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0);opacity:0}.van-fade-left-enter,.van-fade-left-leave-to{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0);opacity:0}.van-fade-right-enter,.van-fade-right-leave-to{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0);opacity:0}.van-slide-down-enter-active,.van-slide-down-leave-active,.van-slide-left-enter-active,.van-slide-left-leave-active,.van-slide-right-enter-active,.van-slide-right-leave-active,.van-slide-up-enter-active,.van-slide-up-leave-active{transition-property:-webkit-transform;transition-property:transform;transition-property:transform,-webkit-transform}.van-slide-up-enter,.van-slide-up-leave-to{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}.van-slide-down-enter,.van-slide-down-leave-to{-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}.van-slide-left-enter,.van-slide-left-leave-to{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}.van-slide-right-enter,.van-slide-right-leave-to{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/tree-select/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/tree-select/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..19e801362de9ca3156e189a1c654b5fe4c580385
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/tree-select/index.js
@@ -0,0 +1,73 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+component_1.VantComponent({
+ classes: [
+ 'main-item-class',
+ 'content-item-class',
+ 'main-active-class',
+ 'content-active-class',
+ 'main-disabled-class',
+ 'content-disabled-class',
+ ],
+ props: {
+ items: {
+ type: Array,
+ observer: 'updateSubItems',
+ },
+ activeId: null,
+ mainActiveIndex: {
+ type: Number,
+ value: 0,
+ observer: 'updateSubItems',
+ },
+ height: {
+ type: null,
+ value: 300,
+ },
+ max: {
+ type: Number,
+ value: Infinity,
+ },
+ selectedIcon: {
+ type: String,
+ value: 'success',
+ },
+ },
+ data: {
+ subItems: [],
+ },
+ methods: {
+ // 当一个子项被选择时
+ onSelectItem: function (event) {
+ var item = event.currentTarget.dataset.item;
+ var isArray = Array.isArray(this.data.activeId);
+ // 判断有没有超出右侧选择的最大数
+ var isOverMax = isArray && this.data.activeId.length >= this.data.max;
+ // 判断该项有没有被选中, 如果有被选中,则忽视是否超出的条件
+ var isSelected = isArray
+ ? this.data.activeId.indexOf(item.id) > -1
+ : this.data.activeId === item.id;
+ if (!item.disabled && (!isOverMax || isSelected)) {
+ this.$emit('click-item', item);
+ }
+ },
+ // 当一个导航被点击时
+ onClickNav: function (event) {
+ var index = event.detail;
+ var item = this.data.items[index];
+ if (!item.disabled) {
+ this.$emit('click-nav', { index: index });
+ }
+ },
+ // 更新子项列表
+ updateSubItems: function () {
+ var _a = this.data,
+ items = _a.items,
+ mainActiveIndex = _a.mainActiveIndex;
+ var _b = (items[mainActiveIndex] || {}).children,
+ children = _b === void 0 ? [] : _b;
+ this.setData({ subItems: children });
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/tree-select/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/tree-select/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..467cd25c8aa92f1f0a2385aa95a1c0d3b1f5c162
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/tree-select/index.json
@@ -0,0 +1,8 @@
+{
+ "component": true,
+ "usingComponents": {
+ "van-icon": "../icon/index",
+ "van-sidebar": "../sidebar/index",
+ "van-sidebar-item": "../sidebar-item/index"
+ }
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/tree-select/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/tree-select/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..4ee2fae15a112cdf3759ecb785d83bcd3bc71407
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/tree-select/index.wxml
@@ -0,0 +1,41 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ item.text }}
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/tree-select/index.wxs b/src/openeuler/miniprogram_npm/@vant/weapp/tree-select/index.wxs
new file mode 100644
index 0000000000000000000000000000000000000000..45add819496972c15783e6a4d6006bcf5637b56f
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/tree-select/index.wxs
@@ -0,0 +1,12 @@
+/* eslint-disable */
+var array = require('../wxs/array.wxs');
+
+function isActive (activeList, itemId) {
+ if (array.isArray(activeList)) {
+ return activeList.indexOf(itemId) > -1;
+ }
+
+ return activeList === itemId;
+}
+
+module.exports.isActive = isActive;
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/tree-select/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/tree-select/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..3f7cca67d8493dbbb04ebdf3023a01569f8aa257
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/tree-select/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-tree-select{position:relative;display:-webkit-flex;display:flex;-webkit-user-select:none;user-select:none;font-size:14px;font-size:var(--tree-select-font-size,14px)}.van-tree-select__nav{-webkit-flex:1;flex:1;background-color:#f7f8fa;background-color:var(--tree-select-nav-background-color,#f7f8fa);--sidebar-padding:12px 8px 12px 12px}.van-tree-select__nav__inner{width:100%!important;height:100%}.van-tree-select__content{-webkit-flex:2;flex:2;background-color:#fff;background-color:var(--tree-select-content-background-color,#fff)}.van-tree-select__item{position:relative;font-weight:700;padding:0 32px 0 16px;padding:0 32px 0 var(--padding-md,16px);line-height:44px;line-height:var(--tree-select-item-height,44px)}.van-tree-select__item--active{color:#ee0a24;color:var(--tree-select-item-active-color,#ee0a24)}.van-tree-select__item--disabled{color:#c8c9cc;color:var(--tree-select-item-disabled-color,#c8c9cc)}.van-tree-select__selected{position:absolute;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);right:16px;right:var(--padding-md,16px)}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/uploader/index.js b/src/openeuler/miniprogram_npm/@vant/weapp/uploader/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..cc3c1074b3bfdea6572aedc0854ee0e2beae4e30
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/uploader/index.js
@@ -0,0 +1,246 @@
+'use strict';
+var __assign =
+ (this && this.__assign) ||
+ function () {
+ __assign =
+ Object.assign ||
+ function (t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s)
+ if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+ };
+Object.defineProperty(exports, '__esModule', { value: true });
+var component_1 = require('../common/component');
+var utils_1 = require('./utils');
+var shared_1 = require('./shared');
+var validator_1 = require('../common/validator');
+component_1.VantComponent({
+ props: __assign(
+ __assign(
+ {
+ disabled: Boolean,
+ multiple: Boolean,
+ uploadText: String,
+ useBeforeRead: Boolean,
+ afterRead: null,
+ beforeRead: null,
+ previewSize: {
+ type: null,
+ value: 80,
+ },
+ name: {
+ type: null,
+ value: '',
+ },
+ accept: {
+ type: String,
+ value: 'image',
+ },
+ fileList: {
+ type: Array,
+ value: [],
+ observer: 'formatFileList',
+ },
+ maxSize: {
+ type: Number,
+ value: Number.MAX_VALUE,
+ },
+ maxCount: {
+ type: Number,
+ value: 100,
+ },
+ deletable: {
+ type: Boolean,
+ value: true,
+ },
+ showUpload: {
+ type: Boolean,
+ value: true,
+ },
+ previewImage: {
+ type: Boolean,
+ value: true,
+ },
+ previewFullImage: {
+ type: Boolean,
+ value: true,
+ },
+ imageFit: {
+ type: String,
+ value: 'scaleToFill',
+ },
+ uploadIcon: {
+ type: String,
+ value: 'photograph',
+ },
+ },
+ shared_1.chooseImageProps
+ ),
+ shared_1.chooseVideoProps
+ ),
+ data: {
+ lists: [],
+ isInCount: true,
+ },
+ methods: {
+ formatFileList: function () {
+ var _a = this.data,
+ _b = _a.fileList,
+ fileList = _b === void 0 ? [] : _b,
+ maxCount = _a.maxCount;
+ var lists = fileList.map(function (item) {
+ return __assign(__assign({}, item), {
+ isImage: utils_1.isImageFile(item),
+ isVideo: utils_1.isVideoFile(item),
+ deletable: validator_1.isBoolean(item.deletable)
+ ? item.deletable
+ : true,
+ });
+ });
+ this.setData({ lists: lists, isInCount: lists.length < maxCount });
+ },
+ getDetail: function (index) {
+ return {
+ name: this.data.name,
+ index: index == null ? this.data.fileList.length : index,
+ };
+ },
+ startUpload: function () {
+ var _this = this;
+ var _a = this.data,
+ maxCount = _a.maxCount,
+ multiple = _a.multiple,
+ lists = _a.lists,
+ disabled = _a.disabled;
+ if (disabled) return;
+ utils_1
+ .chooseFile(
+ __assign(__assign({}, this.data), {
+ maxCount: maxCount - lists.length,
+ })
+ )
+ .then(function (res) {
+ _this.onBeforeRead(multiple ? res : res[0]);
+ })
+ .catch(function (error) {
+ _this.$emit('error', error);
+ });
+ },
+ onBeforeRead: function (file) {
+ var _this = this;
+ var _a = this.data,
+ beforeRead = _a.beforeRead,
+ useBeforeRead = _a.useBeforeRead;
+ var res = true;
+ if (typeof beforeRead === 'function') {
+ res = beforeRead(file, this.getDetail());
+ }
+ if (useBeforeRead) {
+ res = new Promise(function (resolve, reject) {
+ _this.$emit(
+ 'before-read',
+ __assign(__assign({ file: file }, _this.getDetail()), {
+ callback: function (ok) {
+ ok ? resolve() : reject();
+ },
+ })
+ );
+ });
+ }
+ if (!res) {
+ return;
+ }
+ if (validator_1.isPromise(res)) {
+ res.then(function (data) {
+ return _this.onAfterRead(data || file);
+ });
+ } else {
+ this.onAfterRead(file);
+ }
+ },
+ onAfterRead: function (file) {
+ var _a = this.data,
+ maxSize = _a.maxSize,
+ afterRead = _a.afterRead;
+ var oversize = Array.isArray(file)
+ ? file.some(function (item) {
+ return item.size > maxSize;
+ })
+ : file.size > maxSize;
+ if (oversize) {
+ this.$emit('oversize', __assign({ file: file }, this.getDetail()));
+ return;
+ }
+ if (typeof afterRead === 'function') {
+ afterRead(file, this.getDetail());
+ }
+ this.$emit('after-read', __assign({ file: file }, this.getDetail()));
+ },
+ deleteItem: function (event) {
+ var index = event.currentTarget.dataset.index;
+ this.$emit(
+ 'delete',
+ __assign(__assign({}, this.getDetail(index)), {
+ file: this.data.fileList[index],
+ })
+ );
+ },
+ onPreviewImage: function (event) {
+ if (!this.data.previewFullImage) return;
+ var index = event.currentTarget.dataset.index;
+ var lists = this.data.lists;
+ var item = lists[index];
+ wx.previewImage({
+ urls: lists
+ .filter(function (item) {
+ return utils_1.isImageFile(item);
+ })
+ .map(function (item) {
+ return item.url;
+ }),
+ current: item.url,
+ fail: function () {
+ wx.showToast({ title: '预览图片失败', icon: 'none' });
+ },
+ });
+ },
+ onPreviewVideo: function (event) {
+ if (!this.data.previewFullImage) return;
+ var index = event.currentTarget.dataset.index;
+ var lists = this.data.lists;
+ wx.previewMedia({
+ sources: lists
+ .filter(function (item) {
+ return utils_1.isVideoFile(item);
+ })
+ .map(function (item) {
+ return __assign(__assign({}, item), { type: 'video' });
+ }),
+ current: index,
+ fail: function () {
+ wx.showToast({ title: '预览视频失败', icon: 'none' });
+ },
+ });
+ },
+ onPreviewFile: function (event) {
+ var index = event.currentTarget.dataset.index;
+ wx.openDocument({
+ filePath: this.data.lists[index].url,
+ showMenu: true,
+ });
+ },
+ onClickPreview: function (event) {
+ var index = event.currentTarget.dataset.index;
+ var item = this.data.lists[index];
+ this.$emit(
+ 'click-preview',
+ __assign(__assign({}, item), this.getDetail(index))
+ );
+ },
+ },
+});
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/uploader/index.json b/src/openeuler/miniprogram_npm/@vant/weapp/uploader/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..8e23ad65ccf807f24fa7798cd2cc046a78153e59
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/uploader/index.json
@@ -0,0 +1,7 @@
+{
+ "component": true,
+ "usingComponents": {
+ "van-icon": "../icon/index",
+ "van-loading": "../loading/index"
+ }
+}
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/uploader/index.wxml b/src/openeuler/miniprogram_npm/@vant/weapp/uploader/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..1c763be2560273c97f206ce57be8c09fbe95bd72
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/uploader/index.wxml
@@ -0,0 +1,83 @@
+
+
+
+
+
+
+
+
+
+
+
+ {{ item.name || item.url }}
+
+
+
+
+ {{ item.message }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ uploadText }}
+
+
+
+
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/uploader/index.wxs b/src/openeuler/miniprogram_npm/@vant/weapp/uploader/index.wxs
new file mode 100644
index 0000000000000000000000000000000000000000..b9e57fc7ac580c8a85c9c4ee3f67cec432a935d3
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/uploader/index.wxs
@@ -0,0 +1,14 @@
+/* eslint-disable */
+var style = require('../wxs/style.wxs');
+var addUnit = require('../wxs/add-unit.wxs');
+
+function sizeStyle(data) {
+ return style({
+ width: addUnit(data.previewSize),
+ height: addUnit(data.previewSize),
+ });
+}
+
+module.exports = {
+ sizeStyle: sizeStyle,
+};
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/uploader/index.wxss b/src/openeuler/miniprogram_npm/@vant/weapp/uploader/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..5023d716455744d514143bc37600d2f19794b15f
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/uploader/index.wxss
@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-uploader{position:relative;display:inline-block}.van-uploader__wrapper{display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap}.van-uploader__slot:empty{display:none}.van-uploader__slot:not(:empty)+.van-uploader__upload{display:none!important}.van-uploader__upload{position:relative;display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column;-webkit-align-items:center;align-items:center;-webkit-justify-content:center;justify-content:center;box-sizing:border-box;width:80px;width:var(--uploader-size,80px);height:80px;height:var(--uploader-size,80px);margin:0 8px 8px 0;margin:0 var(--padding-xs,8px) var(--padding-xs,8px) 0;background-color:#f7f8fa;background-color:var(--uploader-upload-background-color,#f7f8fa)}.van-uploader__upload:active{background-color:#f2f3f5;background-color:var(--uploader-upload-active-color,#f2f3f5)}.van-uploader__upload-icon{color:#dcdee0;color:var(--uploader-icon-color,#dcdee0);font-size:24px;font-size:var(--uploader-icon-size,24px)}.van-uploader__upload-text{margin-top:8px;margin-top:var(--padding-xs,8px);color:#969799;color:var(--uploader-text-color,#969799);font-size:12px;font-size:var(--uploader-text-font-size,12px)}.van-uploader__upload--disabled{opacity:.5;opacity:var(--uploader-disabled-opacity,.5)}.van-uploader__preview{position:relative;cursor:pointer;margin:0 8px 8px 0;margin:0 var(--padding-xs,8px) var(--padding-xs,8px) 0}.van-uploader__preview-image{display:block;overflow:hidden;width:80px;width:var(--uploader-size,80px);height:80px;height:var(--uploader-size,80px)}.van-uploader__preview-delete{padding:0 0 8px 8px;padding:0 0 var(--padding-xs,8px) var(--padding-xs,8px)}.van-uploader__preview-delete,.van-uploader__preview-delete:after{position:absolute;top:0;right:0;width:14px;width:var(--uploader-delete-icon-size,14px);height:14px;height:var(--uploader-delete-icon-size,14px)}.van-uploader__preview-delete:after{content:"";background-color:rgba(0,0,0,.7);background-color:var(--uploader-delete-background-color,rgba(0,0,0,.7));border-radius:0 0 0 12px;border-radius:0 0 0 calc(var(--uploader-delete-icon-size, 14px) - 2px)}.van-uploader__preview-delete-icon{position:absolute;top:-2px;right:-2px;z-index:1;-webkit-transform:scale(.5);transform:scale(.5);font-size:16px;font-size:calc(var(--uploader-delete-icon-size, 14px) + 2px);color:#fff;color:var(--uploader-delete-color,#fff)}.van-uploader__file{display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column;-webkit-align-items:center;align-items:center;-webkit-justify-content:center;justify-content:center;width:80px;width:var(--uploader-size,80px);height:80px;height:var(--uploader-size,80px);background-color:#f7f8fa;background-color:var(--uploader-file-background-color,#f7f8fa)}.van-uploader__file-icon{color:#646566;color:var(--uploader-file-icon-color,#646566);font-size:20px;font-size:var(--uploader-file-icon-size,20px)}.van-uploader__file-name{box-sizing:border-box;width:100%;text-align:center;margin-top:8px;margin-top:var(--uploader-file-name-margin-top,8px);padding:0 4px;padding:var(--uploader-file-name-padding,0 4px);color:#646566;color:var(--uploader-file-name-text-color,#646566);font-size:12px;font-size:var(--uploader-file-name-font-size,12px)}.van-uploader__mask{position:absolute;top:0;right:0;bottom:0;left:0;display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column;-webkit-align-items:center;align-items:center;-webkit-justify-content:center;justify-content:center;color:#fff;color:var(--white,#fff);background-color:rgba(50,50,51,.88);background-color:var(--uploader-mask-background-color,rgba(50,50,51,.88))}.van-uploader__mask-icon{font-size:22px;font-size:var(--uploader-mask-icon-size,22px)}.van-uploader__mask-message{margin-top:6px;padding:0 4px;padding:0 var(--padding-base,4px);font-size:12px;font-size:var(--uploader-mask-message-font-size,12px);line-height:14px;line-height:var(--uploader-mask-message-line-height,14px)}.van-uploader__loading{width:22px;width:var(--uploader-loading-icon-size,22px);height:22px;height:var(--uploader-loading-icon-size,22px);color:#fff!important;color:var(--uploader-loading-icon-color,#fff)!important}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/uploader/shared.js b/src/openeuler/miniprogram_npm/@vant/weapp/uploader/shared.js
new file mode 100644
index 0000000000000000000000000000000000000000..5a0fb6a188f3b47c7f78d7c6cf2bdf476ccc2411
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/uploader/shared.js
@@ -0,0 +1,33 @@
+'use strict';
+Object.defineProperty(exports, '__esModule', { value: true });
+exports.chooseVideoProps = exports.chooseImageProps = void 0;
+// props for choose image
+exports.chooseImageProps = {
+ sizeType: {
+ type: Array,
+ value: ['original', 'compressed'],
+ },
+ capture: {
+ type: Array,
+ value: ['album', 'camera'],
+ },
+};
+// props for choose video
+exports.chooseVideoProps = {
+ capture: {
+ type: Array,
+ value: ['album', 'camera'],
+ },
+ compressed: {
+ type: Boolean,
+ value: true,
+ },
+ maxDuration: {
+ type: Number,
+ value: 60,
+ },
+ camera: {
+ type: String,
+ value: 'back',
+ },
+};
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/uploader/utils.js b/src/openeuler/miniprogram_npm/@vant/weapp/uploader/utils.js
new file mode 100644
index 0000000000000000000000000000000000000000..c5fd503755242b6a99a74af972fc2f812050d03d
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/uploader/utils.js
@@ -0,0 +1,158 @@
+'use strict';
+var __assign =
+ (this && this.__assign) ||
+ function () {
+ __assign =
+ Object.assign ||
+ function (t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s)
+ if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+ };
+Object.defineProperty(exports, '__esModule', { value: true });
+exports.chooseFile = exports.isVideoFile = exports.isImageFile = void 0;
+var utils_1 = require('../common/utils');
+var validator_1 = require('../common/validator');
+function isImageFile(item) {
+ if (item.isImage != null) {
+ return item.isImage;
+ }
+ if (item.type) {
+ return item.type === 'image';
+ }
+ if (item.url) {
+ return validator_1.isImageUrl(item.url);
+ }
+ return false;
+}
+exports.isImageFile = isImageFile;
+function isVideoFile(item) {
+ if (item.isVideo != null) {
+ return item.isVideo;
+ }
+ if (item.type) {
+ return item.type === 'video';
+ }
+ if (item.url) {
+ return validator_1.isVideoUrl(item.url);
+ }
+ return false;
+}
+exports.isVideoFile = isVideoFile;
+function formatImage(res) {
+ return res.tempFiles.map(function (item) {
+ return __assign(__assign({}, utils_1.pickExclude(item, ['path'])), {
+ type: 'image',
+ url: item.path,
+ thumb: item.path,
+ });
+ });
+}
+function formatVideo(res) {
+ return [
+ __assign(
+ __assign(
+ {},
+ utils_1.pickExclude(res, [
+ 'tempFilePath',
+ 'thumbTempFilePath',
+ 'errMsg',
+ ])
+ ),
+ { type: 'video', url: res.tempFilePath, thumb: res.thumbTempFilePath }
+ ),
+ ];
+}
+function formatMedia(res) {
+ return res.tempFiles.map(function (item) {
+ return __assign(
+ __assign(
+ {},
+ utils_1.pickExclude(item, [
+ 'fileType',
+ 'thumbTempFilePath',
+ 'tempFilePath',
+ ])
+ ),
+ {
+ type: res.type,
+ url: item.tempFilePath,
+ thumb:
+ res.type === 'video' ? item.thumbTempFilePath : item.tempFilePath,
+ }
+ );
+ });
+}
+function formatFile(res) {
+ return res.tempFiles.map(function (item) {
+ return __assign(__assign({}, utils_1.pickExclude(item, ['path'])), {
+ url: item.path,
+ });
+ });
+}
+function chooseFile(_a) {
+ var accept = _a.accept,
+ multiple = _a.multiple,
+ capture = _a.capture,
+ compressed = _a.compressed,
+ maxDuration = _a.maxDuration,
+ sizeType = _a.sizeType,
+ camera = _a.camera,
+ maxCount = _a.maxCount;
+ return new Promise(function (resolve, reject) {
+ switch (accept) {
+ case 'image':
+ wx.chooseImage({
+ count: multiple ? Math.min(maxCount, 9) : 1,
+ sourceType: capture,
+ sizeType: sizeType,
+ success: function (res) {
+ return resolve(formatImage(res));
+ },
+ fail: reject,
+ });
+ break;
+ case 'media':
+ wx.chooseMedia({
+ count: multiple ? Math.min(maxCount, 9) : 1,
+ sourceType: capture,
+ maxDuration: maxDuration,
+ sizeType: sizeType,
+ camera: camera,
+ success: function (res) {
+ return resolve(formatMedia(res));
+ },
+ fail: reject,
+ });
+ break;
+ case 'video':
+ wx.chooseVideo({
+ sourceType: capture,
+ compressed: compressed,
+ maxDuration: maxDuration,
+ camera: camera,
+ success: function (res) {
+ return resolve(formatVideo(res));
+ },
+ fail: reject,
+ });
+ break;
+ default:
+ wx.chooseMessageFile({
+ count: multiple ? maxCount : 1,
+ type: accept,
+ success: function (res) {
+ return resolve(formatFile(res));
+ },
+ fail: reject,
+ });
+ break;
+ }
+ });
+}
+exports.chooseFile = chooseFile;
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/wxs/add-unit.wxs b/src/openeuler/miniprogram_npm/@vant/weapp/wxs/add-unit.wxs
new file mode 100644
index 0000000000000000000000000000000000000000..fd62d4e1c959d30f8c07411d8505a712713d2ffb
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/wxs/add-unit.wxs
@@ -0,0 +1,12 @@
+/* eslint-disable */
+var REGEXP = getRegExp('^-?\d+(\.\d+)?$');
+
+function addUnit(value) {
+ if (value == null) {
+ return undefined;
+ }
+
+ return REGEXP.test('' + value) ? value + 'px' : value;
+}
+
+module.exports = addUnit;
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/wxs/array.wxs b/src/openeuler/miniprogram_npm/@vant/weapp/wxs/array.wxs
new file mode 100644
index 0000000000000000000000000000000000000000..46810325f849bc94366e0906019f44ead0b92a20
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/wxs/array.wxs
@@ -0,0 +1,5 @@
+function isArray(array) {
+ return array && array.constructor === 'Array';
+}
+
+module.exports.isArray = isArray;
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/wxs/bem.wxs b/src/openeuler/miniprogram_npm/@vant/weapp/wxs/bem.wxs
new file mode 100644
index 0000000000000000000000000000000000000000..70629b21cc6368cc711a7e47721c7441b7ccb62e
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/wxs/bem.wxs
@@ -0,0 +1,39 @@
+/* eslint-disable */
+var array = require('./array.wxs');
+var object = require('./object.wxs');
+var PREFIX = 'van-';
+
+function join(name, mods) {
+ name = PREFIX + name;
+ mods = mods.map(function(mod) {
+ return name + '--' + mod;
+ });
+ mods.unshift(name);
+ return mods.join(' ');
+}
+
+function traversing(mods, conf) {
+ if (!conf) {
+ return;
+ }
+
+ if (typeof conf === 'string' || typeof conf === 'number') {
+ mods.push(conf);
+ } else if (array.isArray(conf)) {
+ conf.forEach(function(item) {
+ traversing(mods, item);
+ });
+ } else if (typeof conf === 'object') {
+ object.keys(conf).forEach(function(key) {
+ conf[key] && mods.push(key);
+ });
+ }
+}
+
+function bem(name, conf) {
+ var mods = [];
+ traversing(mods, conf);
+ return join(name, mods);
+}
+
+module.exports = bem;
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/wxs/memoize.wxs b/src/openeuler/miniprogram_npm/@vant/weapp/wxs/memoize.wxs
new file mode 100644
index 0000000000000000000000000000000000000000..641c17fba055bb81a41d487cbc4d930ec3d8b9e8
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/wxs/memoize.wxs
@@ -0,0 +1,55 @@
+/**
+ * Simple memoize
+ * wxs doesn't support fn.apply, so this memoize only support up to 2 args
+ */
+/* eslint-disable */
+
+function isPrimitive(value) {
+ var type = typeof value;
+ return (
+ type === 'boolean' ||
+ type === 'number' ||
+ type === 'string' ||
+ type === 'undefined' ||
+ value === null
+ );
+}
+
+// mock simple fn.call in wxs
+function call(fn, args) {
+ if (args.length === 2) {
+ return fn(args[0], args[1]);
+ }
+
+ if (args.length === 1) {
+ return fn(args[0]);
+ }
+
+ return fn();
+}
+
+function serializer(args) {
+ if (args.length === 1 && isPrimitive(args[0])) {
+ return args[0];
+ }
+ var obj = {};
+ for (var i = 0; i < args.length; i++) {
+ obj['key' + i] = args[i];
+ }
+ return JSON.stringify(obj);
+}
+
+function memoize(fn) {
+ var cache = {};
+
+ return function() {
+ var key = serializer(arguments);
+ if (cache[key] === undefined) {
+ cache[key] = call(fn, arguments);
+ }
+
+ return cache[key];
+ };
+}
+
+module.exports = memoize;
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/wxs/object.wxs b/src/openeuler/miniprogram_npm/@vant/weapp/wxs/object.wxs
new file mode 100644
index 0000000000000000000000000000000000000000..69f16eaf12b558e5aa9f5698df45a932ae61b95d
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/wxs/object.wxs
@@ -0,0 +1,13 @@
+/* eslint-disable */
+var REGEXP = getRegExp('{|}|"', 'g');
+
+function keys(obj) {
+ return JSON.stringify(obj)
+ .replace(REGEXP, '')
+ .split(',')
+ .map(function(item) {
+ return item.split(':')[0];
+ });
+}
+
+module.exports.keys = keys;
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/wxs/style.wxs b/src/openeuler/miniprogram_npm/@vant/weapp/wxs/style.wxs
new file mode 100644
index 0000000000000000000000000000000000000000..743a4ad3f7b4a17896bbc1849234b4e196e632bb
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/wxs/style.wxs
@@ -0,0 +1,32 @@
+/* eslint-disable */
+var object = require('./object.wxs');
+var array = require('./array.wxs');
+
+function style(styles) {
+ if (array.isArray(styles)) {
+ return styles
+ .filter(function (item) {
+ return item != null && item !== '';
+ })
+ .map(function (item) {
+ return style(item);
+ })
+ .join(';');
+ }
+
+ if ('Object' === styles.constructor) {
+ return object
+ .keys(styles)
+ .filter(function (key) {
+ return styles[key] != null && styles[key] !== '';
+ })
+ .map(function (key) {
+ return [key, [styles[key]]].join(':');
+ })
+ .join(';');
+ }
+
+ return styles;
+}
+
+module.exports = style;
diff --git a/src/openeuler/miniprogram_npm/@vant/weapp/wxs/utils.wxs b/src/openeuler/miniprogram_npm/@vant/weapp/wxs/utils.wxs
new file mode 100644
index 0000000000000000000000000000000000000000..bb6e2852b899c9fb9d5aec47dbfb3d9a36ede9bd
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/@vant/weapp/wxs/utils.wxs
@@ -0,0 +1,10 @@
+/* eslint-disable */
+var bem = require('./bem.wxs');
+var memoize = require('./memoize.wxs');
+var addUnit = require('./add-unit.wxs');
+
+module.exports = {
+ bem: memoize(bem),
+ memoize: memoize,
+ addUnit: addUnit
+};
diff --git a/src/openeuler/miniprogram_npm/eventemitter3/index.js b/src/openeuler/miniprogram_npm/eventemitter3/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..455a3abc2b21decd9741f574432c89440270c559
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/eventemitter3/index.js
@@ -0,0 +1,348 @@
+module.exports = (function() {
+var __MODS__ = {};
+var __DEFINE__ = function(modId, func, req) { var m = { exports: {}, _tempexports: {} }; __MODS__[modId] = { status: 0, func: func, req: req, m: m }; };
+var __REQUIRE__ = function(modId, source) { if(!__MODS__[modId]) return require(source); if(!__MODS__[modId].status) { var m = __MODS__[modId].m; m._exports = m._tempexports; var desp = Object.getOwnPropertyDescriptor(m, "exports"); if (desp && desp.configurable) Object.defineProperty(m, "exports", { set: function (val) { if(typeof val === "object" && val !== m._exports) { m._exports.__proto__ = val.__proto__; Object.keys(val).forEach(function (k) { m._exports[k] = val[k]; }); } m._tempexports = val }, get: function () { return m._tempexports; } }); __MODS__[modId].status = 1; __MODS__[modId].func(__MODS__[modId].req, m, m.exports); } return __MODS__[modId].m.exports; };
+var __REQUIRE_WILDCARD__ = function(obj) { if(obj && obj.__esModule) { return obj; } else { var newObj = {}; if(obj != null) { for(var k in obj) { if (Object.prototype.hasOwnProperty.call(obj, k)) newObj[k] = obj[k]; } } newObj.default = obj; return newObj; } };
+var __REQUIRE_DEFAULT__ = function(obj) { return obj && obj.__esModule ? obj.default : obj; };
+__DEFINE__(1617789047371, function(require, module, exports) {
+
+
+var has = Object.prototype.hasOwnProperty
+ , prefix = '~';
+
+/**
+ * Constructor to create a storage for our `EE` objects.
+ * An `Events` instance is a plain object whose properties are event names.
+ *
+ * @constructor
+ * @private
+ */
+function Events() {}
+
+//
+// We try to not inherit from `Object.prototype`. In some engines creating an
+// instance in this way is faster than calling `Object.create(null)` directly.
+// If `Object.create(null)` is not supported we prefix the event names with a
+// character to make sure that the built-in object properties are not
+// overridden or used as an attack vector.
+//
+if (Object.create) {
+ Events.prototype = Object.create(null);
+
+ //
+ // This hack is needed because the `__proto__` property is still inherited in
+ // some old browsers like Android 4, iPhone 5.1, Opera 11 and Safari 5.
+ //
+ if (!new Events().__proto__) prefix = false;
+}
+
+/**
+ * Representation of a single event listener.
+ *
+ * @param {Function} fn The listener function.
+ * @param {*} context The context to invoke the listener with.
+ * @param {Boolean} [once=false] Specify if the listener is a one-time listener.
+ * @constructor
+ * @private
+ */
+function EE(fn, context, once) {
+ this.fn = fn;
+ this.context = context;
+ this.once = once || false;
+}
+
+/**
+ * Add a listener for a given event.
+ *
+ * @param {EventEmitter} emitter Reference to the `EventEmitter` instance.
+ * @param {(String|Symbol)} event The event name.
+ * @param {Function} fn The listener function.
+ * @param {*} context The context to invoke the listener with.
+ * @param {Boolean} once Specify if the listener is a one-time listener.
+ * @returns {EventEmitter}
+ * @private
+ */
+function addListener(emitter, event, fn, context, once) {
+ if (typeof fn !== 'function') {
+ throw new TypeError('The listener must be a function');
+ }
+
+ var listener = new EE(fn, context || emitter, once)
+ , evt = prefix ? prefix + event : event;
+
+ if (!emitter._events[evt]) emitter._events[evt] = listener, emitter._eventsCount++;
+ else if (!emitter._events[evt].fn) emitter._events[evt].push(listener);
+ else emitter._events[evt] = [emitter._events[evt], listener];
+
+ return emitter;
+}
+
+/**
+ * Clear event by name.
+ *
+ * @param {EventEmitter} emitter Reference to the `EventEmitter` instance.
+ * @param {(String|Symbol)} evt The Event name.
+ * @private
+ */
+function clearEvent(emitter, evt) {
+ if (--emitter._eventsCount === 0) emitter._events = new Events();
+ else delete emitter._events[evt];
+}
+
+/**
+ * Minimal `EventEmitter` interface that is molded against the Node.js
+ * `EventEmitter` interface.
+ *
+ * @constructor
+ * @public
+ */
+function EventEmitter() {
+ this._events = new Events();
+ this._eventsCount = 0;
+}
+
+/**
+ * Return an array listing the events for which the emitter has registered
+ * listeners.
+ *
+ * @returns {Array}
+ * @public
+ */
+EventEmitter.prototype.eventNames = function eventNames() {
+ var names = []
+ , events
+ , name;
+
+ if (this._eventsCount === 0) return names;
+
+ for (name in (events = this._events)) {
+ if (has.call(events, name)) names.push(prefix ? name.slice(1) : name);
+ }
+
+ if (Object.getOwnPropertySymbols) {
+ return names.concat(Object.getOwnPropertySymbols(events));
+ }
+
+ return names;
+};
+
+/**
+ * Return the listeners registered for a given event.
+ *
+ * @param {(String|Symbol)} event The event name.
+ * @returns {Array} The registered listeners.
+ * @public
+ */
+EventEmitter.prototype.listeners = function listeners(event) {
+ var evt = prefix ? prefix + event : event
+ , handlers = this._events[evt];
+
+ if (!handlers) return [];
+ if (handlers.fn) return [handlers.fn];
+
+ for (var i = 0, l = handlers.length, ee = new Array(l); i < l; i++) {
+ ee[i] = handlers[i].fn;
+ }
+
+ return ee;
+};
+
+/**
+ * Return the number of listeners listening to a given event.
+ *
+ * @param {(String|Symbol)} event The event name.
+ * @returns {Number} The number of listeners.
+ * @public
+ */
+EventEmitter.prototype.listenerCount = function listenerCount(event) {
+ var evt = prefix ? prefix + event : event
+ , listeners = this._events[evt];
+
+ if (!listeners) return 0;
+ if (listeners.fn) return 1;
+ return listeners.length;
+};
+
+/**
+ * Calls each of the listeners registered for a given event.
+ *
+ * @param {(String|Symbol)} event The event name.
+ * @returns {Boolean} `true` if the event had listeners, else `false`.
+ * @public
+ */
+EventEmitter.prototype.emit = function emit(event, a1, a2, a3, a4, a5) {
+ var evt = prefix ? prefix + event : event;
+
+ if (!this._events[evt]) return false;
+
+ var listeners = this._events[evt]
+ , len = arguments.length
+ , args
+ , i;
+
+ if (listeners.fn) {
+ if (listeners.once) this.removeListener(event, listeners.fn, undefined, true);
+
+ switch (len) {
+ case 1: return listeners.fn.call(listeners.context), true;
+ case 2: return listeners.fn.call(listeners.context, a1), true;
+ case 3: return listeners.fn.call(listeners.context, a1, a2), true;
+ case 4: return listeners.fn.call(listeners.context, a1, a2, a3), true;
+ case 5: return listeners.fn.call(listeners.context, a1, a2, a3, a4), true;
+ case 6: return listeners.fn.call(listeners.context, a1, a2, a3, a4, a5), true;
+ }
+
+ for (i = 1, args = new Array(len -1); i < len; i++) {
+ args[i - 1] = arguments[i];
+ }
+
+ listeners.fn.apply(listeners.context, args);
+ } else {
+ var length = listeners.length
+ , j;
+
+ for (i = 0; i < length; i++) {
+ if (listeners[i].once) this.removeListener(event, listeners[i].fn, undefined, true);
+
+ switch (len) {
+ case 1: listeners[i].fn.call(listeners[i].context); break;
+ case 2: listeners[i].fn.call(listeners[i].context, a1); break;
+ case 3: listeners[i].fn.call(listeners[i].context, a1, a2); break;
+ case 4: listeners[i].fn.call(listeners[i].context, a1, a2, a3); break;
+ default:
+ if (!args) for (j = 1, args = new Array(len -1); j < len; j++) {
+ args[j - 1] = arguments[j];
+ }
+
+ listeners[i].fn.apply(listeners[i].context, args);
+ }
+ }
+ }
+
+ return true;
+};
+
+/**
+ * Add a listener for a given event.
+ *
+ * @param {(String|Symbol)} event The event name.
+ * @param {Function} fn The listener function.
+ * @param {*} [context=this] The context to invoke the listener with.
+ * @returns {EventEmitter} `this`.
+ * @public
+ */
+EventEmitter.prototype.on = function on(event, fn, context) {
+ return addListener(this, event, fn, context, false);
+};
+
+/**
+ * Add a one-time listener for a given event.
+ *
+ * @param {(String|Symbol)} event The event name.
+ * @param {Function} fn The listener function.
+ * @param {*} [context=this] The context to invoke the listener with.
+ * @returns {EventEmitter} `this`.
+ * @public
+ */
+EventEmitter.prototype.once = function once(event, fn, context) {
+ return addListener(this, event, fn, context, true);
+};
+
+/**
+ * Remove the listeners of a given event.
+ *
+ * @param {(String|Symbol)} event The event name.
+ * @param {Function} fn Only remove the listeners that match this function.
+ * @param {*} context Only remove the listeners that have this context.
+ * @param {Boolean} once Only remove one-time listeners.
+ * @returns {EventEmitter} `this`.
+ * @public
+ */
+EventEmitter.prototype.removeListener = function removeListener(event, fn, context, once) {
+ var evt = prefix ? prefix + event : event;
+
+ if (!this._events[evt]) return this;
+ if (!fn) {
+ clearEvent(this, evt);
+ return this;
+ }
+
+ var listeners = this._events[evt];
+
+ if (listeners.fn) {
+ if (
+ listeners.fn === fn &&
+ (!once || listeners.once) &&
+ (!context || listeners.context === context)
+ ) {
+ clearEvent(this, evt);
+ }
+ } else {
+ for (var i = 0, events = [], length = listeners.length; i < length; i++) {
+ if (
+ listeners[i].fn !== fn ||
+ (once && !listeners[i].once) ||
+ (context && listeners[i].context !== context)
+ ) {
+ events.push(listeners[i]);
+ }
+ }
+
+ //
+ // Reset the array, or remove it completely if we have no more listeners.
+ //
+ if (events.length) this._events[evt] = events.length === 1 ? events[0] : events;
+ else clearEvent(this, evt);
+ }
+
+ return this;
+};
+
+/**
+ * Remove all listeners, or those of the specified event.
+ *
+ * @param {(String|Symbol)} [event] The event name.
+ * @returns {EventEmitter} `this`.
+ * @public
+ */
+EventEmitter.prototype.removeAllListeners = function removeAllListeners(event) {
+ var evt;
+
+ if (event) {
+ evt = prefix ? prefix + event : event;
+ if (this._events[evt]) clearEvent(this, evt);
+ } else {
+ this._events = new Events();
+ this._eventsCount = 0;
+ }
+
+ return this;
+};
+
+//
+// Alias methods names because people roll like that.
+//
+EventEmitter.prototype.off = EventEmitter.prototype.removeListener;
+EventEmitter.prototype.addListener = EventEmitter.prototype.on;
+
+//
+// Expose the prefix.
+//
+EventEmitter.prefixed = prefix;
+
+//
+// Allow `EventEmitter` to be imported as module namespace.
+//
+EventEmitter.EventEmitter = EventEmitter;
+
+//
+// Expose the module.
+//
+if ('undefined' !== typeof module) {
+ module.exports = EventEmitter;
+}
+
+}, function(modId) {var map = {}; return __REQUIRE__(map[modId], modId); })
+return __REQUIRE__(1617789047371);
+})()
+//# sourceMappingURL=index.js.map
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/eventemitter3/index.js.map b/src/openeuler/miniprogram_npm/eventemitter3/index.js.map
new file mode 100644
index 0000000000000000000000000000000000000000..4f2cb7b6238a2b2b21306e55979ca3279b491656
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/eventemitter3/index.js.map
@@ -0,0 +1 @@
+{"version":3,"sources":["index.js"],"names":[],"mappings":";;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"index.js","sourcesContent":["\n\nvar has = Object.prototype.hasOwnProperty\n , prefix = '~';\n\n/**\n * Constructor to create a storage for our `EE` objects.\n * An `Events` instance is a plain object whose properties are event names.\n *\n * @constructor\n * @private\n */\nfunction Events() {}\n\n//\n// We try to not inherit from `Object.prototype`. In some engines creating an\n// instance in this way is faster than calling `Object.create(null)` directly.\n// If `Object.create(null)` is not supported we prefix the event names with a\n// character to make sure that the built-in object properties are not\n// overridden or used as an attack vector.\n//\nif (Object.create) {\n Events.prototype = Object.create(null);\n\n //\n // This hack is needed because the `__proto__` property is still inherited in\n // some old browsers like Android 4, iPhone 5.1, Opera 11 and Safari 5.\n //\n if (!new Events().__proto__) prefix = false;\n}\n\n/**\n * Representation of a single event listener.\n *\n * @param {Function} fn The listener function.\n * @param {*} context The context to invoke the listener with.\n * @param {Boolean} [once=false] Specify if the listener is a one-time listener.\n * @constructor\n * @private\n */\nfunction EE(fn, context, once) {\n this.fn = fn;\n this.context = context;\n this.once = once || false;\n}\n\n/**\n * Add a listener for a given event.\n *\n * @param {EventEmitter} emitter Reference to the `EventEmitter` instance.\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn The listener function.\n * @param {*} context The context to invoke the listener with.\n * @param {Boolean} once Specify if the listener is a one-time listener.\n * @returns {EventEmitter}\n * @private\n */\nfunction addListener(emitter, event, fn, context, once) {\n if (typeof fn !== 'function') {\n throw new TypeError('The listener must be a function');\n }\n\n var listener = new EE(fn, context || emitter, once)\n , evt = prefix ? prefix + event : event;\n\n if (!emitter._events[evt]) emitter._events[evt] = listener, emitter._eventsCount++;\n else if (!emitter._events[evt].fn) emitter._events[evt].push(listener);\n else emitter._events[evt] = [emitter._events[evt], listener];\n\n return emitter;\n}\n\n/**\n * Clear event by name.\n *\n * @param {EventEmitter} emitter Reference to the `EventEmitter` instance.\n * @param {(String|Symbol)} evt The Event name.\n * @private\n */\nfunction clearEvent(emitter, evt) {\n if (--emitter._eventsCount === 0) emitter._events = new Events();\n else delete emitter._events[evt];\n}\n\n/**\n * Minimal `EventEmitter` interface that is molded against the Node.js\n * `EventEmitter` interface.\n *\n * @constructor\n * @public\n */\nfunction EventEmitter() {\n this._events = new Events();\n this._eventsCount = 0;\n}\n\n/**\n * Return an array listing the events for which the emitter has registered\n * listeners.\n *\n * @returns {Array}\n * @public\n */\nEventEmitter.prototype.eventNames = function eventNames() {\n var names = []\n , events\n , name;\n\n if (this._eventsCount === 0) return names;\n\n for (name in (events = this._events)) {\n if (has.call(events, name)) names.push(prefix ? name.slice(1) : name);\n }\n\n if (Object.getOwnPropertySymbols) {\n return names.concat(Object.getOwnPropertySymbols(events));\n }\n\n return names;\n};\n\n/**\n * Return the listeners registered for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @returns {Array} The registered listeners.\n * @public\n */\nEventEmitter.prototype.listeners = function listeners(event) {\n var evt = prefix ? prefix + event : event\n , handlers = this._events[evt];\n\n if (!handlers) return [];\n if (handlers.fn) return [handlers.fn];\n\n for (var i = 0, l = handlers.length, ee = new Array(l); i < l; i++) {\n ee[i] = handlers[i].fn;\n }\n\n return ee;\n};\n\n/**\n * Return the number of listeners listening to a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @returns {Number} The number of listeners.\n * @public\n */\nEventEmitter.prototype.listenerCount = function listenerCount(event) {\n var evt = prefix ? prefix + event : event\n , listeners = this._events[evt];\n\n if (!listeners) return 0;\n if (listeners.fn) return 1;\n return listeners.length;\n};\n\n/**\n * Calls each of the listeners registered for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @returns {Boolean} `true` if the event had listeners, else `false`.\n * @public\n */\nEventEmitter.prototype.emit = function emit(event, a1, a2, a3, a4, a5) {\n var evt = prefix ? prefix + event : event;\n\n if (!this._events[evt]) return false;\n\n var listeners = this._events[evt]\n , len = arguments.length\n , args\n , i;\n\n if (listeners.fn) {\n if (listeners.once) this.removeListener(event, listeners.fn, undefined, true);\n\n switch (len) {\n case 1: return listeners.fn.call(listeners.context), true;\n case 2: return listeners.fn.call(listeners.context, a1), true;\n case 3: return listeners.fn.call(listeners.context, a1, a2), true;\n case 4: return listeners.fn.call(listeners.context, a1, a2, a3), true;\n case 5: return listeners.fn.call(listeners.context, a1, a2, a3, a4), true;\n case 6: return listeners.fn.call(listeners.context, a1, a2, a3, a4, a5), true;\n }\n\n for (i = 1, args = new Array(len -1); i < len; i++) {\n args[i - 1] = arguments[i];\n }\n\n listeners.fn.apply(listeners.context, args);\n } else {\n var length = listeners.length\n , j;\n\n for (i = 0; i < length; i++) {\n if (listeners[i].once) this.removeListener(event, listeners[i].fn, undefined, true);\n\n switch (len) {\n case 1: listeners[i].fn.call(listeners[i].context); break;\n case 2: listeners[i].fn.call(listeners[i].context, a1); break;\n case 3: listeners[i].fn.call(listeners[i].context, a1, a2); break;\n case 4: listeners[i].fn.call(listeners[i].context, a1, a2, a3); break;\n default:\n if (!args) for (j = 1, args = new Array(len -1); j < len; j++) {\n args[j - 1] = arguments[j];\n }\n\n listeners[i].fn.apply(listeners[i].context, args);\n }\n }\n }\n\n return true;\n};\n\n/**\n * Add a listener for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn The listener function.\n * @param {*} [context=this] The context to invoke the listener with.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.on = function on(event, fn, context) {\n return addListener(this, event, fn, context, false);\n};\n\n/**\n * Add a one-time listener for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn The listener function.\n * @param {*} [context=this] The context to invoke the listener with.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.once = function once(event, fn, context) {\n return addListener(this, event, fn, context, true);\n};\n\n/**\n * Remove the listeners of a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn Only remove the listeners that match this function.\n * @param {*} context Only remove the listeners that have this context.\n * @param {Boolean} once Only remove one-time listeners.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.removeListener = function removeListener(event, fn, context, once) {\n var evt = prefix ? prefix + event : event;\n\n if (!this._events[evt]) return this;\n if (!fn) {\n clearEvent(this, evt);\n return this;\n }\n\n var listeners = this._events[evt];\n\n if (listeners.fn) {\n if (\n listeners.fn === fn &&\n (!once || listeners.once) &&\n (!context || listeners.context === context)\n ) {\n clearEvent(this, evt);\n }\n } else {\n for (var i = 0, events = [], length = listeners.length; i < length; i++) {\n if (\n listeners[i].fn !== fn ||\n (once && !listeners[i].once) ||\n (context && listeners[i].context !== context)\n ) {\n events.push(listeners[i]);\n }\n }\n\n //\n // Reset the array, or remove it completely if we have no more listeners.\n //\n if (events.length) this._events[evt] = events.length === 1 ? events[0] : events;\n else clearEvent(this, evt);\n }\n\n return this;\n};\n\n/**\n * Remove all listeners, or those of the specified event.\n *\n * @param {(String|Symbol)} [event] The event name.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.removeAllListeners = function removeAllListeners(event) {\n var evt;\n\n if (event) {\n evt = prefix ? prefix + event : event;\n if (this._events[evt]) clearEvent(this, evt);\n } else {\n this._events = new Events();\n this._eventsCount = 0;\n }\n\n return this;\n};\n\n//\n// Alias methods names because people roll like that.\n//\nEventEmitter.prototype.off = EventEmitter.prototype.removeListener;\nEventEmitter.prototype.addListener = EventEmitter.prototype.on;\n\n//\n// Expose the prefix.\n//\nEventEmitter.prefixed = prefix;\n\n//\n// Allow `EventEmitter` to be imported as module namespace.\n//\nEventEmitter.EventEmitter = EventEmitter;\n\n//\n// Expose the module.\n//\nif ('undefined' !== typeof module) {\n module.exports = EventEmitter;\n}\n"]}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/widget-ui/index.js b/src/openeuler/miniprogram_npm/widget-ui/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..307f211eff1dca1c004b75fe17d5ccb66ece5e80
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/widget-ui/index.js
@@ -0,0 +1,12 @@
+module.exports = (function() {
+var __MODS__ = {};
+var __DEFINE__ = function(modId, func, req) { var m = { exports: {}, _tempexports: {} }; __MODS__[modId] = { status: 0, func: func, req: req, m: m }; };
+var __REQUIRE__ = function(modId, source) { if(!__MODS__[modId]) return require(source); if(!__MODS__[modId].status) { var m = __MODS__[modId].m; m._exports = m._tempexports; var desp = Object.getOwnPropertyDescriptor(m, "exports"); if (desp && desp.configurable) Object.defineProperty(m, "exports", { set: function (val) { if(typeof val === "object" && val !== m._exports) { m._exports.__proto__ = val.__proto__; Object.keys(val).forEach(function (k) { m._exports[k] = val[k]; }); } m._tempexports = val }, get: function () { return m._tempexports; } }); __MODS__[modId].status = 1; __MODS__[modId].func(__MODS__[modId].req, m, m.exports); } return __MODS__[modId].m.exports; };
+var __REQUIRE_WILDCARD__ = function(obj) { if(obj && obj.__esModule) { return obj; } else { var newObj = {}; if(obj != null) { for(var k in obj) { if (Object.prototype.hasOwnProperty.call(obj, k)) newObj[k] = obj[k]; } } newObj.default = obj; return newObj; } };
+var __REQUIRE_DEFAULT__ = function(obj) { return obj && obj.__esModule ? obj.default : obj; };
+__DEFINE__(1617789047372, function(require, module, exports) {
+!function(t,e){if("object"==typeof exports&&"object"==typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{var o=e();for(var r in o)("object"==typeof exports?exports:t)[r]=o[r]}}(this,(function(){return function(t){var e={};function o(r){if(e[r])return e[r].exports;var i=e[r]={i:r,l:!1,exports:{}};return t[r].call(i.exports,i,i.exports,o),i.l=!0,i.exports}return o.m=t,o.c=e,o.d=function(t,e,r){o.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:r})},o.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},o.t=function(t,e){if(1&e&&(t=o(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var r=Object.create(null);if(o.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var i in t)o.d(r,i,function(e){return t[e]}.bind(null,i));return r},o.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return o.d(e,"a",e),e},o.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},o.p="",o(o.s=0)}([function(t,e,o){var r=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});var i=r(o(1)),l=o(2),n=0,a=function(){function t(e){var o=this;void 0===e&&(e={}),this.parent=null,this.id=t.uuid(),this.style={},this.computedStyle={},this.lastComputedStyle={},this.children={},this.layoutBox={left:0,top:0,width:0,height:0},e=Object.assign(l.getDefaultStyle(),e),this.computedStyle=Object.assign(l.getDefaultStyle(),e),this.lastComputedStyle=Object.assign(l.getDefaultStyle(),e),Object.keys(e).forEach((function(t){Object.defineProperty(o.style,t,{configurable:!0,enumerable:!0,get:function(){return e[t]},set:function(r){r!==e[t]&&void 0!==r&&(o.lastComputedStyle=o.computedStyle[t],e[t]=r,o.computedStyle[t]=r,l.scalableStyles.includes(t)&&o.style.scale&&(o.computedStyle[t]=r*o.style.scale),"scale"===t&&l.scalableStyles.forEach((function(t){e[t]&&(o.computedStyle[t]=e[t]*r)})),"hidden"===t&&(r?l.layoutAffectedStyles.forEach((function(t){o.computedStyle[t]=0})):l.layoutAffectedStyles.forEach((function(t){o.computedStyle[t]=o.lastComputedStyle[t]}))))}})})),this.style.scale&&l.scalableStyles.forEach((function(t){if(o.style[t]){var e=o.style[t]*o.style.scale;o.computedStyle[t]=e}})),e.hidden&&l.layoutAffectedStyles.forEach((function(t){o.computedStyle[t]=0}))}return t.uuid=function(){return n++},t.prototype.getAbsolutePosition=function(t){if(!t)return this.getAbsolutePosition(this);if(!t.parent)return{left:0,top:0};var e=this.getAbsolutePosition(t.parent),o=e.left,r=e.top;return{left:o+t.layoutBox.left,top:r+t.layoutBox.top}},t.prototype.add=function(t){t.parent=this,this.children[t.id]=t},t.prototype.remove=function(t){var e=this;t?this.children[t.id]&&(t.remove(),delete this.children[t.id]):Object.keys(this.children).forEach((function(t){e.children[t].remove(),delete e.children[t]}))},t.prototype.getNodeTree=function(){var t=this;return{id:this.id,style:this.computedStyle,children:Object.keys(this.children).map((function(e){return t.children[e].getNodeTree()}))}},t.prototype.applyLayout=function(t){var e=this;["left","top","width","height"].forEach((function(o){t.layout&&"number"==typeof t.layout[o]&&(e.layoutBox[o]=t.layout[o],!e.parent||"left"!==o&&"top"!==o||(e.layoutBox[o]+=e.parent.layoutBox[o]))})),t.children.forEach((function(t){e.children[t.id].applyLayout(t)}))},t.prototype.layout=function(){var t=this.getNodeTree();i.default(t),this.applyLayout(t)},t}();e.default=a},function(t,e,o){o.r(e);var r=function(){var t,e="inherit",o="ltr",r="rtl",i="row",l="row-reverse",n="column",a="column-reverse",u="flex-start",d="center",s="flex-end",y="space-between",c="space-around",f="flex-start",h="center",p="flex-end",g="stretch",v="relative",m="absolute",b={row:"left","row-reverse":"right",column:"top","column-reverse":"bottom"},x={row:"right","row-reverse":"left",column:"bottom","column-reverse":"top"},w={row:"left","row-reverse":"right",column:"top","column-reverse":"bottom"},S={row:"width","row-reverse":"width",column:"height","column-reverse":"height"};function W(t){return void 0===t}function L(t){return t===i||t===l}function k(t,e){if(void 0!==t.style.marginStart&&L(e))return t.style.marginStart;var o=null;switch(e){case"row":o=t.style.marginLeft;break;case"row-reverse":o=t.style.marginRight;break;case"column":o=t.style.marginTop;break;case"column-reverse":o=t.style.marginBottom}return void 0!==o?o:void 0!==t.style.margin?t.style.margin:0}function j(t,e){if(void 0!==t.style.marginEnd&&L(e))return t.style.marginEnd;var o=null;switch(e){case"row":o=t.style.marginRight;break;case"row-reverse":o=t.style.marginLeft;break;case"column":o=t.style.marginBottom;break;case"column-reverse":o=t.style.marginTop}return null!=o?o:void 0!==t.style.margin?t.style.margin:0}function B(t,e){if(void 0!==t.style.borderStartWidth&&t.style.borderStartWidth>=0&&L(e))return t.style.borderStartWidth;var o=null;switch(e){case"row":o=t.style.borderLeftWidth;break;case"row-reverse":o=t.style.borderRightWidth;break;case"column":o=t.style.borderTopWidth;break;case"column-reverse":o=t.style.borderBottomWidth}return null!=o&&o>=0?o:void 0!==t.style.borderWidth&&t.style.borderWidth>=0?t.style.borderWidth:0}function E(t,e){if(void 0!==t.style.borderEndWidth&&t.style.borderEndWidth>=0&&L(e))return t.style.borderEndWidth;var o=null;switch(e){case"row":o=t.style.borderRightWidth;break;case"row-reverse":o=t.style.borderLeftWidth;break;case"column":o=t.style.borderBottomWidth;break;case"column-reverse":o=t.style.borderTopWidth}return null!=o&&o>=0?o:void 0!==t.style.borderWidth&&t.style.borderWidth>=0?t.style.borderWidth:0}function C(t,e){return function(t,e){if(void 0!==t.style.paddingStart&&t.style.paddingStart>=0&&L(e))return t.style.paddingStart;var o=null;switch(e){case"row":o=t.style.paddingLeft;break;case"row-reverse":o=t.style.paddingRight;break;case"column":o=t.style.paddingTop;break;case"column-reverse":o=t.style.paddingBottom}return null!=o&&o>=0?o:void 0!==t.style.padding&&t.style.padding>=0?t.style.padding:0}(t,e)+B(t,e)}function T(t,e){return function(t,e){if(void 0!==t.style.paddingEnd&&t.style.paddingEnd>=0&&L(e))return t.style.paddingEnd;var o=null;switch(e){case"row":o=t.style.paddingRight;break;case"row-reverse":o=t.style.paddingLeft;break;case"column":o=t.style.paddingBottom;break;case"column-reverse":o=t.style.paddingTop}return null!=o&&o>=0?o:void 0!==t.style.padding&&t.style.padding>=0?t.style.padding:0}(t,e)+E(t,e)}function O(t,e){return B(t,e)+E(t,e)}function _(t,e){return k(t,e)+j(t,e)}function R(t,e){return C(t,e)+T(t,e)}function A(t,e){return e.style.alignSelf?e.style.alignSelf:t.style.alignItems?t.style.alignItems:"stretch"}function P(t,e){if(e===r){if(t===i)return l;if(t===l)return i}return t}function D(t,e){return function(t){return t===n||t===a}(t)?P(i,e):n}function H(t){return t.style.position?t.style.position:"relative"}function M(t){return H(t)===v&&t.style.flex>0}function I(t,e){return t.layout[S[e]]+_(t,e)}function N(t,e){return void 0!==t.style[S[e]]&&t.style[S[e]]>=0}function F(t,e){return void 0!==t.style[e]}function q(t,e){return void 0!==t.style[e]?t.style[e]:0}function z(t,e,o){var r={row:t.style.minWidth,"row-reverse":t.style.minWidth,column:t.style.minHeight,"column-reverse":t.style.minHeight}[e],i={row:t.style.maxWidth,"row-reverse":t.style.maxWidth,column:t.style.maxHeight,"column-reverse":t.style.maxHeight}[e],l=o;return void 0!==i&&i>=0&&l>i&&(l=i),void 0!==r&&r>=0&&le?t:e}function G(t,e){void 0===t.layout[S[e]]&&N(t,e)&&(t.layout[S[e]]=U(z(t,e,t.style[S[e]]),R(t,e)))}function J(t,e,o){e.layout[x[o]]=t.layout[S[o]]-e.layout[S[o]]-e.layout[w[o]]}function K(t,e){return void 0!==t.style[b[e]]?q(t,b[e]):-q(t,x[e])}function Q(r,E,Q){var X=function(t,r){var i;return(i=t.style.direction?t.style.direction:e)===e&&(i=void 0===r?o:r),i}(r,Q),Y=P(function(t){return t.style.flexDirection?t.style.flexDirection:n}(r),X),Z=D(Y,X),$=P(i,X);G(r,Y),G(r,Z),r.layout.direction=X,r.layout[b[Y]]+=k(r,Y)+K(r,Y),r.layout[x[Y]]+=j(r,Y)+K(r,Y),r.layout[b[Z]]+=k(r,Z)+K(r,Z),r.layout[x[Z]]+=j(r,Z)+K(r,Z);var tt=r.children.length,et=R(r,$);if(function(t){return void 0!==t.style.measure}(r)){var ot=!W(r.layout[S[$]]),rt=t;rt=N(r,$)?r.style.width:ot?r.layout[S[$]]:E-_(r,$),rt-=et;var it=!N(r,$)&&!ot,lt=!N(r,n)&&W(r.layout[S[n]]);if(it||lt){var nt=r.style.measure(rt);it&&(r.layout.width=nt.width+et),lt&&(r.layout.height=nt.height+R(r,n))}if(0===tt)return}var at,ut,dt,st,yt=function(t){return"wrap"===t.style.flexWrap}(r),ct=function(t){return t.style.justifyContent?t.style.justifyContent:"flex-start"}(r),ft=C(r,Y),ht=C(r,Z),pt=R(r,Y),gt=R(r,Z),vt=!W(r.layout[S[Y]]),mt=!W(r.layout[S[Z]]),bt=L(Y),xt=null,wt=null,St=t;vt&&(St=r.layout[S[Y]]-pt);for(var Wt=0,Lt=0,kt=0,jt=0,Bt=0,Et=0;LtSt&&at!==Wt){Rt--,kt=1;break}At&&(H(dt)!==v||M(dt))&&(At=!1,Pt=at),Dt&&(H(dt)!==v||Xt!==g&&Xt!==f||W(dt.layout[S[Z]]))&&(Dt=!1,Ht=at),At&&(dt.layout[w[Y]]+=Nt,vt&&J(r,dt,Y),Nt+=I(dt,Y),Ft=U(Ft,z(dt,Z,I(dt,Z)))),Dt&&(dt.layout[w[Z]]+=jt+ht,mt&&J(r,dt,Z)),kt=0,Tt+=qt,Lt=at+1}var zt=0,Ut=0,Gt=0;if(Gt=vt?St-Tt:U(Tt,0)-Tt,0!==Ot){var Jt,Kt,Qt=Gt/_t;for(It=Mt;null!==It;)(Jt=Qt*It.style.flex+R(It,Y))!==(Kt=z(It,Y,Jt))&&(Gt-=Kt,_t-=It.style.flex),It=It.nextFlexChild;for((Qt=Gt/_t)<0&&(Qt=0),It=Mt;null!==It;)It.layout[S[Y]]=z(It,Y,Qt*It.style.flex+R(It,Y)),Ct=t,N(r,$)?Ct=r.layout[S[$]]-et:bt||(Ct=E-_(r,$)-et),V(It,Ct,X),dt=It,It=It.nextFlexChild,dt.nextFlexChild=null}else ct!==u&&(ct===d?zt=Gt/2:ct===s?zt=Gt:ct===y?(Gt=U(Gt,0),Ut=Ot+Rt-1!=0?Gt/(Ot+Rt-1):0):ct===c&&(zt=(Ut=Gt/(Ot+Rt))/2));for(Nt+=zt,at=Pt;at1&&mt){var $t=r.layout[S[Z]]-gt,te=$t-jt,ee=0,oe=ht,re=function(t){return t.style.alignContent?t.style.alignContent:"flex-start"}(r);re===p?oe+=te:re===h?oe+=te/2:re===g&&$t>jt&&(ee=te/Et);var ie=0;for(at=0;at=0&&L(e))return t.style.borderStartWidth;var o=null;switch(e){case\"row\":o=t.style.borderLeftWidth;break;case\"row-reverse\":o=t.style.borderRightWidth;break;case\"column\":o=t.style.borderTopWidth;break;case\"column-reverse\":o=t.style.borderBottomWidth}return null!=o&&o>=0?o:void 0!==t.style.borderWidth&&t.style.borderWidth>=0?t.style.borderWidth:0}function E(t,e){if(void 0!==t.style.borderEndWidth&&t.style.borderEndWidth>=0&&L(e))return t.style.borderEndWidth;var o=null;switch(e){case\"row\":o=t.style.borderRightWidth;break;case\"row-reverse\":o=t.style.borderLeftWidth;break;case\"column\":o=t.style.borderBottomWidth;break;case\"column-reverse\":o=t.style.borderTopWidth}return null!=o&&o>=0?o:void 0!==t.style.borderWidth&&t.style.borderWidth>=0?t.style.borderWidth:0}function C(t,e){return function(t,e){if(void 0!==t.style.paddingStart&&t.style.paddingStart>=0&&L(e))return t.style.paddingStart;var o=null;switch(e){case\"row\":o=t.style.paddingLeft;break;case\"row-reverse\":o=t.style.paddingRight;break;case\"column\":o=t.style.paddingTop;break;case\"column-reverse\":o=t.style.paddingBottom}return null!=o&&o>=0?o:void 0!==t.style.padding&&t.style.padding>=0?t.style.padding:0}(t,e)+B(t,e)}function T(t,e){return function(t,e){if(void 0!==t.style.paddingEnd&&t.style.paddingEnd>=0&&L(e))return t.style.paddingEnd;var o=null;switch(e){case\"row\":o=t.style.paddingRight;break;case\"row-reverse\":o=t.style.paddingLeft;break;case\"column\":o=t.style.paddingBottom;break;case\"column-reverse\":o=t.style.paddingTop}return null!=o&&o>=0?o:void 0!==t.style.padding&&t.style.padding>=0?t.style.padding:0}(t,e)+E(t,e)}function O(t,e){return B(t,e)+E(t,e)}function _(t,e){return k(t,e)+j(t,e)}function R(t,e){return C(t,e)+T(t,e)}function A(t,e){return e.style.alignSelf?e.style.alignSelf:t.style.alignItems?t.style.alignItems:\"stretch\"}function P(t,e){if(e===r){if(t===i)return l;if(t===l)return i}return t}function D(t,e){return function(t){return t===n||t===a}(t)?P(i,e):n}function H(t){return t.style.position?t.style.position:\"relative\"}function M(t){return H(t)===v&&t.style.flex>0}function I(t,e){return t.layout[S[e]]+_(t,e)}function N(t,e){return void 0!==t.style[S[e]]&&t.style[S[e]]>=0}function F(t,e){return void 0!==t.style[e]}function q(t,e){return void 0!==t.style[e]?t.style[e]:0}function z(t,e,o){var r={row:t.style.minWidth,\"row-reverse\":t.style.minWidth,column:t.style.minHeight,\"column-reverse\":t.style.minHeight}[e],i={row:t.style.maxWidth,\"row-reverse\":t.style.maxWidth,column:t.style.maxHeight,\"column-reverse\":t.style.maxHeight}[e],l=o;return void 0!==i&&i>=0&&l>i&&(l=i),void 0!==r&&r>=0&&le?t:e}function G(t,e){void 0===t.layout[S[e]]&&N(t,e)&&(t.layout[S[e]]=U(z(t,e,t.style[S[e]]),R(t,e)))}function J(t,e,o){e.layout[x[o]]=t.layout[S[o]]-e.layout[S[o]]-e.layout[w[o]]}function K(t,e){return void 0!==t.style[b[e]]?q(t,b[e]):-q(t,x[e])}function Q(r,E,Q){var X=function(t,r){var i;return(i=t.style.direction?t.style.direction:e)===e&&(i=void 0===r?o:r),i}(r,Q),Y=P(function(t){return t.style.flexDirection?t.style.flexDirection:n}(r),X),Z=D(Y,X),$=P(i,X);G(r,Y),G(r,Z),r.layout.direction=X,r.layout[b[Y]]+=k(r,Y)+K(r,Y),r.layout[x[Y]]+=j(r,Y)+K(r,Y),r.layout[b[Z]]+=k(r,Z)+K(r,Z),r.layout[x[Z]]+=j(r,Z)+K(r,Z);var tt=r.children.length,et=R(r,$);if(function(t){return void 0!==t.style.measure}(r)){var ot=!W(r.layout[S[$]]),rt=t;rt=N(r,$)?r.style.width:ot?r.layout[S[$]]:E-_(r,$),rt-=et;var it=!N(r,$)&&!ot,lt=!N(r,n)&&W(r.layout[S[n]]);if(it||lt){var nt=r.style.measure(rt);it&&(r.layout.width=nt.width+et),lt&&(r.layout.height=nt.height+R(r,n))}if(0===tt)return}var at,ut,dt,st,yt=function(t){return\"wrap\"===t.style.flexWrap}(r),ct=function(t){return t.style.justifyContent?t.style.justifyContent:\"flex-start\"}(r),ft=C(r,Y),ht=C(r,Z),pt=R(r,Y),gt=R(r,Z),vt=!W(r.layout[S[Y]]),mt=!W(r.layout[S[Z]]),bt=L(Y),xt=null,wt=null,St=t;vt&&(St=r.layout[S[Y]]-pt);for(var Wt=0,Lt=0,kt=0,jt=0,Bt=0,Et=0;LtSt&&at!==Wt){Rt--,kt=1;break}At&&(H(dt)!==v||M(dt))&&(At=!1,Pt=at),Dt&&(H(dt)!==v||Xt!==g&&Xt!==f||W(dt.layout[S[Z]]))&&(Dt=!1,Ht=at),At&&(dt.layout[w[Y]]+=Nt,vt&&J(r,dt,Y),Nt+=I(dt,Y),Ft=U(Ft,z(dt,Z,I(dt,Z)))),Dt&&(dt.layout[w[Z]]+=jt+ht,mt&&J(r,dt,Z)),kt=0,Tt+=qt,Lt=at+1}var zt=0,Ut=0,Gt=0;if(Gt=vt?St-Tt:U(Tt,0)-Tt,0!==Ot){var Jt,Kt,Qt=Gt/_t;for(It=Mt;null!==It;)(Jt=Qt*It.style.flex+R(It,Y))!==(Kt=z(It,Y,Jt))&&(Gt-=Kt,_t-=It.style.flex),It=It.nextFlexChild;for((Qt=Gt/_t)<0&&(Qt=0),It=Mt;null!==It;)It.layout[S[Y]]=z(It,Y,Qt*It.style.flex+R(It,Y)),Ct=t,N(r,$)?Ct=r.layout[S[$]]-et:bt||(Ct=E-_(r,$)-et),V(It,Ct,X),dt=It,It=It.nextFlexChild,dt.nextFlexChild=null}else ct!==u&&(ct===d?zt=Gt/2:ct===s?zt=Gt:ct===y?(Gt=U(Gt,0),Ut=Ot+Rt-1!=0?Gt/(Ot+Rt-1):0):ct===c&&(zt=(Ut=Gt/(Ot+Rt))/2));for(Nt+=zt,at=Pt;at1&&mt){var $t=r.layout[S[Z]]-gt,te=$t-jt,ee=0,oe=ht,re=function(t){return t.style.alignContent?t.style.alignContent:\"flex-start\"}(r);re===p?oe+=te:re===h?oe+=te/2:re===g&&$t>jt&&(ee=te/Et);var ie=0;for(at=0;at {
+ let result = null
+
+ if (/^#/.test(color) && (color.length === 7 || color.length === 9)) {
+ return color
+ // eslint-disable-next-line no-cond-assign
+ } else if ((result = /^(rgb|rgba)\((.+)\)/.exec(color)) !== null) {
+ return '#' + result[2].split(',').map((part, index) => {
+ part = part.trim()
+ part = index === 3 ? Math.floor(parseFloat(part) * 255) : parseInt(part, 10)
+ part = part.toString(16)
+ if (part.length === 1) {
+ part = '0' + part
+ }
+ return part
+ }).join('')
+ } else {
+ return '#00000000'
+ }
+}
+
+const splitLineToCamelCase = (str) => str.split('-').map((part, index) => {
+ if (index === 0) {
+ return part
+ }
+ return part[0].toUpperCase() + part.slice(1)
+}).join('')
+
+const compareVersion = (v1, v2) => {
+ v1 = v1.split('.')
+ v2 = v2.split('.')
+ const len = Math.max(v1.length, v2.length)
+ while (v1.length < len) {
+ v1.push('0')
+ }
+ while (v2.length < len) {
+ v2.push('0')
+ }
+ for (let i = 0; i < len; i++) {
+ const num1 = parseInt(v1[i], 10)
+ const num2 = parseInt(v2[i], 10)
+
+ if (num1 > num2) {
+ return 1
+ } else if (num1 < num2) {
+ return -1
+ }
+ }
+
+ return 0
+}
+
+module.exports = {
+ hex,
+ splitLineToCamelCase,
+ compareVersion
+}
+
+
+/***/ }),
+/* 1 */
+/***/ (function(module, exports, __webpack_require__) {
+
+
+const xmlParse = __webpack_require__(2)
+const {Widget} = __webpack_require__(3)
+const {Draw} = __webpack_require__(5)
+const {compareVersion} = __webpack_require__(0)
+
+const canvasId = 'weui-canvas'
+
+Component({
+ properties: {
+ width: {
+ type: Number,
+ value: 400
+ },
+ height: {
+ type: Number,
+ value: 300
+ }
+ },
+ data: {
+ use2dCanvas: false, // 2.9.2 后可用canvas 2d 接口
+ },
+ lifetimes: {
+ attached() {
+ const {SDKVersion, pixelRatio: dpr} = wx.getSystemInfoSync()
+ const use2dCanvas = compareVersion(SDKVersion, '2.9.2') >= 0
+ this.dpr = dpr
+ this.setData({use2dCanvas}, () => {
+ if (use2dCanvas) {
+ const query = this.createSelectorQuery()
+ query.select(`#${canvasId}`)
+ .fields({node: true, size: true})
+ .exec(res => {
+ const canvas = res[0].node
+ const ctx = canvas.getContext('2d')
+ canvas.width = res[0].width * dpr
+ canvas.height = res[0].height * dpr
+ ctx.scale(dpr, dpr)
+ this.ctx = ctx
+ this.canvas = canvas
+ })
+ } else {
+ this.ctx = wx.createCanvasContext(canvasId, this)
+ }
+ })
+ }
+ },
+ methods: {
+ async renderToCanvas(args) {
+ const {wxml, style} = args
+ const ctx = this.ctx
+ const canvas = this.canvas
+ const use2dCanvas = this.data.use2dCanvas
+
+ if (use2dCanvas && !canvas) {
+ return Promise.reject(new Error('renderToCanvas: fail canvas has not been created'))
+ }
+
+ ctx.clearRect(0, 0, this.data.width, this.data.height)
+ const {root: xom} = xmlParse(wxml)
+
+ const widget = new Widget(xom, style)
+ const container = widget.init()
+ this.boundary = {
+ top: container.layoutBox.top,
+ left: container.layoutBox.left,
+ width: container.computedStyle.width,
+ height: container.computedStyle.height,
+ }
+ const draw = new Draw(ctx, canvas, use2dCanvas)
+ await draw.drawNode(container)
+
+ if (!use2dCanvas) {
+ await this.canvasDraw(ctx)
+ }
+ return Promise.resolve(container)
+ },
+
+ canvasDraw(ctx, reserve) {
+ return new Promise(resolve => {
+ ctx.draw(reserve, () => {
+ resolve()
+ })
+ })
+ },
+
+ canvasToTempFilePath(args = {}) {
+ const use2dCanvas = this.data.use2dCanvas
+
+ return new Promise((resolve, reject) => {
+ const {
+ top, left, width, height
+ } = this.boundary
+
+ const copyArgs = {
+ x: left,
+ y: top,
+ width,
+ height,
+ destWidth: width * this.dpr,
+ destHeight: height * this.dpr,
+ canvasId,
+ fileType: args.fileType || 'png',
+ quality: args.quality || 1,
+ success: resolve,
+ fail: reject
+ }
+
+ if (use2dCanvas) {
+ delete copyArgs.canvasId
+ copyArgs.canvas = this.canvas
+ }
+ wx.canvasToTempFilePath(copyArgs, this)
+ })
+ }
+ }
+})
+
+
+/***/ }),
+/* 2 */
+/***/ (function(module, exports) {
+
+
+/**
+ * Module dependencies.
+ */
+
+
+/**
+ * Expose `parse`.
+ */
+
+
+/**
+ * Parse the given string of `xml`.
+ *
+ * @param {String} xml
+ * @return {Object}
+ * @api public
+ */
+
+function parse(xml) {
+ xml = xml.trim()
+
+ // strip comments
+ xml = xml.replace(//g, '')
+
+ return document()
+
+ /**
+ * XML document.
+ */
+
+ function document() {
+ return {
+ declaration: declaration(),
+ root: tag()
+ }
+ }
+
+ /**
+ * Declaration.
+ */
+
+ function declaration() {
+ const m = match(/^<\?xml\s*/)
+ if (!m) return
+
+ // tag
+ const node = {
+ attributes: {}
+ }
+
+ // attributes
+ while (!(eos() || is('?>'))) {
+ const attr = attribute()
+ if (!attr) return node
+ node.attributes[attr.name] = attr.value
+ }
+
+ match(/\?>\s*/)
+
+ return node
+ }
+
+ /**
+ * Tag.
+ */
+
+ function tag() {
+ const m = match(/^<([\w-:.]+)\s*/)
+ if (!m) return
+
+ // name
+ const node = {
+ name: m[1],
+ attributes: {},
+ children: []
+ }
+
+ // attributes
+ while (!(eos() || is('>') || is('?>') || is('/>'))) {
+ const attr = attribute()
+ if (!attr) return node
+ node.attributes[attr.name] = attr.value
+ }
+
+ // self closing tag
+ if (match(/^\s*\/>\s*/)) {
+ return node
+ }
+
+ match(/\??>\s*/)
+
+ // content
+ node.content = content()
+
+ // children
+ let child
+ while (child = tag()) {
+ node.children.push(child)
+ }
+
+ // closing
+ match(/^<\/[\w-:.]+>\s*/)
+
+ return node
+ }
+
+ /**
+ * Text content.
+ */
+
+ function content() {
+ const m = match(/^([^<]*)/)
+ if (m) return m[1]
+ return ''
+ }
+
+ /**
+ * Attribute.
+ */
+
+ function attribute() {
+ const m = match(/([\w:-]+)\s*=\s*("[^"]*"|'[^']*'|\w+)\s*/)
+ if (!m) return
+ return {name: m[1], value: strip(m[2])}
+ }
+
+ /**
+ * Strip quotes from `val`.
+ */
+
+ function strip(val) {
+ return val.replace(/^['"]|['"]$/g, '')
+ }
+
+ /**
+ * Match `re` and advance the string.
+ */
+
+ function match(re) {
+ const m = xml.match(re)
+ if (!m) return
+ xml = xml.slice(m[0].length)
+ return m
+ }
+
+ /**
+ * End-of-source.
+ */
+
+ function eos() {
+ return xml.length == 0
+ }
+
+ /**
+ * Check for `prefix`.
+ */
+
+ function is(prefix) {
+ return xml.indexOf(prefix) == 0
+ }
+}
+
+module.exports = parse
+
+
+/***/ }),
+/* 3 */
+/***/ (function(module, exports, __webpack_require__) {
+
+const Block = __webpack_require__(4)
+const {splitLineToCamelCase} = __webpack_require__(0)
+
+class Element extends Block {
+ constructor(prop) {
+ super(prop.style)
+ this.name = prop.name
+ this.attributes = prop.attributes
+ }
+}
+
+
+class Widget {
+ constructor(xom, style) {
+ this.xom = xom
+ this.style = style
+
+ this.inheritProps = ['fontSize', 'lineHeight', 'textAlign', 'verticalAlign', 'color']
+ }
+
+ init() {
+ this.container = this.create(this.xom)
+ this.container.layout()
+
+ this.inheritStyle(this.container)
+ return this.container
+ }
+
+ // 继承父节点的样式
+ inheritStyle(node) {
+ const parent = node.parent || null
+ const children = node.children || {}
+ const computedStyle = node.computedStyle
+
+ if (parent) {
+ this.inheritProps.forEach(prop => {
+ computedStyle[prop] = computedStyle[prop] || parent.computedStyle[prop]
+ })
+ }
+
+ Object.values(children).forEach(child => {
+ this.inheritStyle(child)
+ })
+ }
+
+ create(node) {
+ let classNames = (node.attributes.class || '').split(' ')
+ classNames = classNames.map(item => splitLineToCamelCase(item.trim()))
+ const style = {}
+ classNames.forEach(item => {
+ Object.assign(style, this.style[item] || {})
+ })
+
+ const args = {name: node.name, style}
+
+ const attrs = Object.keys(node.attributes)
+ const attributes = {}
+ for (const attr of attrs) {
+ const value = node.attributes[attr]
+ const CamelAttr = splitLineToCamelCase(attr)
+
+ if (value === '' || value === 'true') {
+ attributes[CamelAttr] = true
+ } else if (value === 'false') {
+ attributes[CamelAttr] = false
+ } else {
+ attributes[CamelAttr] = value
+ }
+ }
+ attributes.text = node.content
+ args.attributes = attributes
+ const element = new Element(args)
+ node.children.forEach(childNode => {
+ const childElement = this.create(childNode)
+ element.add(childElement)
+ })
+ return element
+ }
+}
+
+module.exports = {Widget}
+
+
+/***/ }),
+/* 4 */
+/***/ (function(module, exports) {
+
+module.exports = require("widget-ui");
+
+/***/ }),
+/* 5 */
+/***/ (function(module, exports) {
+
+class Draw {
+ constructor(context, canvas, use2dCanvas = false) {
+ this.ctx = context
+ this.canvas = canvas || null
+ this.use2dCanvas = use2dCanvas
+ }
+
+ roundRect(x, y, w, h, r, fill = true, stroke = false) {
+ if (r < 0) return
+ const ctx = this.ctx
+
+ ctx.beginPath()
+ ctx.arc(x + r, y + r, r, Math.PI, Math.PI * 3 / 2)
+ ctx.arc(x + w - r, y + r, r, Math.PI * 3 / 2, 0)
+ ctx.arc(x + w - r, y + h - r, r, 0, Math.PI / 2)
+ ctx.arc(x + r, y + h - r, r, Math.PI / 2, Math.PI)
+ ctx.lineTo(x, y + r)
+ if (stroke) ctx.stroke()
+ if (fill) ctx.fill()
+ }
+
+ drawView(box, style) {
+ const ctx = this.ctx
+ const {
+ left: x, top: y, width: w, height: h
+ } = box
+ const {
+ borderRadius = 0,
+ borderWidth = 0,
+ borderColor,
+ color = '#000',
+ backgroundColor = 'transparent',
+ } = style
+ ctx.save()
+ // 外环
+ if (borderWidth > 0) {
+ ctx.fillStyle = borderColor || color
+ this.roundRect(x, y, w, h, borderRadius)
+ }
+
+ // 内环
+ ctx.fillStyle = backgroundColor
+ const innerWidth = w - 2 * borderWidth
+ const innerHeight = h - 2 * borderWidth
+ const innerRadius = borderRadius - borderWidth >= 0 ? borderRadius - borderWidth : 0
+ this.roundRect(x + borderWidth, y + borderWidth, innerWidth, innerHeight, innerRadius)
+ ctx.restore()
+ }
+
+ async drawImage(img, box, style) {
+ await new Promise((resolve, reject) => {
+ const ctx = this.ctx
+ const canvas = this.canvas
+
+ const {
+ borderRadius = 0
+ } = style
+ const {
+ left: x, top: y, width: w, height: h
+ } = box
+ ctx.save()
+ this.roundRect(x, y, w, h, borderRadius, false, false)
+ ctx.clip()
+
+ const _drawImage = (img) => {
+ if (this.use2dCanvas) {
+ const Image = canvas.createImage()
+ Image.onload = () => {
+ ctx.drawImage(Image, x, y, w, h)
+ ctx.restore()
+ resolve()
+ }
+ Image.onerror = () => { reject(new Error(`createImage fail: ${img}`)) }
+ Image.src = img
+ } else {
+ ctx.drawImage(img, x, y, w, h)
+ ctx.restore()
+ resolve()
+ }
+ }
+
+ const isTempFile = /^wxfile:\/\//.test(img)
+ const isNetworkFile = /^https?:\/\//.test(img)
+
+ if (isTempFile) {
+ _drawImage(img)
+ } else if (isNetworkFile) {
+ wx.downloadFile({
+ url: img,
+ success(res) {
+ if (res.statusCode === 200) {
+ _drawImage(res.tempFilePath)
+ } else {
+ reject(new Error(`downloadFile:fail ${img}`))
+ }
+ },
+ fail() {
+ reject(new Error(`downloadFile:fail ${img}`))
+ }
+ })
+ } else {
+ reject(new Error(`image format error: ${img}`))
+ }
+ })
+ }
+
+ // eslint-disable-next-line complexity
+ drawText(text, box, style) {
+ const ctx = this.ctx
+ let {
+ left: x, top: y, width: w, height: h
+ } = box
+ let {
+ color = '#000',
+ lineHeight = '1.4em',
+ fontSize = 14,
+ textAlign = 'left',
+ verticalAlign = 'top',
+ backgroundColor = 'transparent'
+ } = style
+
+ if (typeof lineHeight === 'string') { // 2em
+ lineHeight = Math.ceil(parseFloat(lineHeight.replace('em')) * fontSize)
+ }
+ if (!text || (lineHeight > h)) return
+
+ ctx.save()
+ ctx.textBaseline = 'top'
+ ctx.font = `${fontSize}px sans-serif`
+ ctx.textAlign = textAlign
+
+ // 背景色
+ ctx.fillStyle = backgroundColor
+ this.roundRect(x, y, w, h, 0)
+
+ // 文字颜色
+ ctx.fillStyle = color
+
+ // 水平布局
+ switch (textAlign) {
+ case 'left':
+ break
+ case 'center':
+ x += 0.5 * w
+ break
+ case 'right':
+ x += w
+ break
+ default: break
+ }
+
+ const textWidth = ctx.measureText(text).width
+ const actualHeight = Math.ceil(textWidth / w) * lineHeight
+ let paddingTop = Math.ceil((h - actualHeight) / 2)
+ if (paddingTop < 0) paddingTop = 0
+
+ // 垂直布局
+ switch (verticalAlign) {
+ case 'top':
+ break
+ case 'middle':
+ y += paddingTop
+ break
+ case 'bottom':
+ y += 2 * paddingTop
+ break
+ default: break
+ }
+
+ const inlinePaddingTop = Math.ceil((lineHeight - fontSize) / 2)
+
+ // 不超过一行
+ if (textWidth <= w) {
+ ctx.fillText(text, x, y + inlinePaddingTop)
+ return
+ }
+
+ // 多行文本
+ const chars = text.split('')
+ const _y = y
+
+ // 逐行绘制
+ let line = ''
+ for (const ch of chars) {
+ const testLine = line + ch
+ const testWidth = ctx.measureText(testLine).width
+
+ if (testWidth > w) {
+ ctx.fillText(line, x, y + inlinePaddingTop)
+ y += lineHeight
+ line = ch
+ if ((y + lineHeight) > (_y + h)) break
+ } else {
+ line = testLine
+ }
+ }
+
+ // 避免溢出
+ if ((y + lineHeight) <= (_y + h)) {
+ ctx.fillText(line, x, y + inlinePaddingTop)
+ }
+ ctx.restore()
+ }
+
+ async drawNode(element) {
+ const {layoutBox, computedStyle, name} = element
+ const {src, text} = element.attributes
+ if (name === 'view') {
+ this.drawView(layoutBox, computedStyle)
+ } else if (name === 'image') {
+ await this.drawImage(src, layoutBox, computedStyle)
+ } else if (name === 'text') {
+ this.drawText(text, layoutBox, computedStyle)
+ }
+ const childs = Object.values(element.children)
+ for (const child of childs) {
+ await this.drawNode(child)
+ }
+ }
+}
+
+
+module.exports = {
+ Draw
+}
+
+
+/***/ })
+/******/ ]);
+});
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/wxml-to-canvas/index.json b/src/openeuler/miniprogram_npm/wxml-to-canvas/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..011372eb4664a095246f98b09f2373710d11a4d7
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/wxml-to-canvas/index.json
@@ -0,0 +1,4 @@
+{
+ "component": true,
+ "usingComponents": {}
+}
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/wxml-to-canvas/index.wxml b/src/openeuler/miniprogram_npm/wxml-to-canvas/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..3571704e352378e7627a76a23dc6bebea55f7a69
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/wxml-to-canvas/index.wxml
@@ -0,0 +1,2 @@
+
+
\ No newline at end of file
diff --git a/src/openeuler/miniprogram_npm/wxml-to-canvas/index.wxss b/src/openeuler/miniprogram_npm/wxml-to-canvas/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/src/openeuler/miniprogram_npm/wxml-to-canvas/utils.js b/src/openeuler/miniprogram_npm/wxml-to-canvas/utils.js
new file mode 100644
index 0000000000000000000000000000000000000000..5668ed28df04e06cf50758a3ba6ebf8d8faf39d2
--- /dev/null
+++ b/src/openeuler/miniprogram_npm/wxml-to-canvas/utils.js
@@ -0,0 +1,57 @@
+const hex = (color) => {
+ let result = null
+
+ if (/^#/.test(color) && (color.length === 7 || color.length === 9)) {
+ return color
+ // eslint-disable-next-line no-cond-assign
+ } else if ((result = /^(rgb|rgba)\((.+)\)/.exec(color)) !== null) {
+ return '#' + result[2].split(',').map((part, index) => {
+ part = part.trim()
+ part = index === 3 ? Math.floor(parseFloat(part) * 255) : parseInt(part, 10)
+ part = part.toString(16)
+ if (part.length === 1) {
+ part = '0' + part
+ }
+ return part
+ }).join('')
+ } else {
+ return '#00000000'
+ }
+}
+
+const splitLineToCamelCase = (str) => str.split('-').map((part, index) => {
+ if (index === 0) {
+ return part
+ }
+ return part[0].toUpperCase() + part.slice(1)
+}).join('')
+
+const compareVersion = (v1, v2) => {
+ v1 = v1.split('.')
+ v2 = v2.split('.')
+ const len = Math.max(v1.length, v2.length)
+ while (v1.length < len) {
+ v1.push('0')
+ }
+ while (v2.length < len) {
+ v2.push('0')
+ }
+ for (let i = 0; i < len; i++) {
+ const num1 = parseInt(v1[i], 10)
+ const num2 = parseInt(v2[i], 10)
+
+ if (num1 > num2) {
+ return 1
+ } else if (num1 < num2) {
+ return -1
+ }
+ }
+
+ return 0
+}
+
+module.exports = {
+ hex,
+ splitLineToCamelCase,
+ compareVersion
+}
diff --git a/src/openeuler/package-events/events/event-detail.js b/src/openeuler/package-events/events/event-detail.js
new file mode 100644
index 0000000000000000000000000000000000000000..1d17a4816f04bcb821b8a7faf25a69153f194158
--- /dev/null
+++ b/src/openeuler/package-events/events/event-detail.js
@@ -0,0 +1,308 @@
+// package-events/events/event-detail.js
+const appAjax = require('./../../utils/app-ajax');
+const sessionUtil = require("../../utils/app-session.js");
+
+let that = null;
+let remoteMethods = {
+ getDraftDetail: function (_callback) {
+ let service = 'EVENT_DETAIL';
+ if (that.data.type == 5) {
+ service = 'EVENT_DETAIL'
+ } else if (that.data.type == 1) {
+ service = 'EXAMINE_DETAIL'
+ } else if (that.data.type == 4) {
+ service = 'DRAFT_DETAIL'
+ }
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'GET',
+ service,
+ otherParams: {
+ id: that.data.id
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ },
+ reject: function (_callback) {
+
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'PUT',
+ service: 'REJECT_PUBLISH',
+ otherParams: {
+ id: that.data.id || ''
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ },
+ resolve: function (_callback) {
+
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'PUT',
+ service: 'RESOLVE_PUBLISH',
+ otherParams: {
+ id: that.data.id || ''
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ },
+ draftPublish: function (postData, _callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'PUT',
+ service: 'EDIT_DETAIL_PUBLISH',
+ data: postData,
+ otherParams: {
+ id: that.data.id || ''
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ },
+ collect: function (_callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'POST',
+ service: 'EVENT_COLLECT',
+ data: {
+ activity: that.data.id
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ },
+ unCollect: function (_callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'DELETE',
+ service: 'EVENT_UNCOLLECT',
+ otherParams: {
+ id: that.data.info.collection_id
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ }
+}
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ info: {},
+ id: '',
+ steps: [],
+ tabIndex: 0,
+ type: 0,
+ level: 1,
+ user: '',
+ scene: '',
+ isIphoneX: false,
+ videoInstance: null,
+ videoHidden: true
+ },
+
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad: function (options) {
+ that = this;
+ this.setData({
+ id: options.id || decodeURIComponent(options.scene),
+ scene: decodeURIComponent(options.scene) || '',
+ type: options.type,
+ level: sessionUtil.getUserInfoByKey('eventLevel') || 1
+ })
+ wx.getSystemInfo({
+ success(res) {
+ if ((res.model.indexOf('iPhone X') >= 0) || (res.model.indexOf('iPhone 11') >= 0)) {
+ that.setData({
+ isIphoneX: true
+ });
+ }
+ }
+ })
+ this.setData({
+ videoInstance: wx.createVideoContext('video')
+ })
+ },
+
+ /**
+ * 生命周期函数--监听页面显示
+ */
+ onShow: function () {
+ this.setData({
+ user: sessionUtil.getUserInfoByKey('userId')
+ })
+ remoteMethods.getDraftDetail((res) => {
+ this.setData({
+ info: res
+ })
+ let arr = [];
+ JSON.parse(res.schedules).forEach(item => {
+ if(item.speakerList){
+ arr.push({
+ duration: item.start + '-' + item.end,
+ title: item.topic,
+ speakerList: item.speakerList
+ })
+ } else {
+ arr.push({
+ duration: item.start + '-' + item.end,
+ title: item.topic,
+ speakerList: [{
+ name: item.speaker || '',
+ title: item.desc || ''
+ }]
+ })
+ }
+
+ });
+ this.setData({
+ steps: arr
+ })
+ });
+ },
+ switchTab(e) {
+ this.setData({
+ tabIndex: e.currentTarget.dataset.index
+ })
+ },
+ openLocation(e) {
+ if (e.currentTarget.dataset.item.activity_type == 2) {
+ return;
+ }
+ wx.openLocation({
+ latitude: Number(e.currentTarget.dataset.item.latitude),
+ longitude: Number(e.currentTarget.dataset.item.longitude),
+ name: e.currentTarget.dataset.item.detail_address, // 名称
+ address: e.currentTarget.dataset.item.address // 地址
+ });
+ },
+ toEditDraft() {
+ wx.redirectTo({
+ url: `/package-events/publish/publish?id=${this.data.id}&type=${this.data.type}`
+ })
+ },
+ draftPublish() {
+ let postData = this.data.info;
+ postData.schedules = JSON.parse(postData.schedules);
+ remoteMethods.draftPublish(postData, (res) => {
+ if (res.code === 201) {
+ wx.redirectTo({
+ url: '/package-events/publish/success?type=2'
+ })
+ } else {
+ setTimeout(function () {
+ wx.showToast({
+ title: res.message,
+ icon: "none",
+ duration: 2000
+ }, 100);
+ })
+ }
+ })
+ },
+ reject() {
+ remoteMethods.reject(() => {
+ wx.navigateBack();
+ })
+ },
+ resolve() {
+ remoteMethods.resolve(() => {
+ wx.navigateBack();
+ })
+ },
+ editSchedule() {
+ wx.redirectTo({
+ url: `/package-events/publish/publish?id=${this.data.id}&type=${this.data.type}`
+ })
+ },
+ switchTab2() {
+ this.setData({
+ tabIndex: 1
+ })
+ },
+ toSignUp() {
+ if (!sessionUtil.getUserInfoByKey('access')) {
+ wx.navigateTo({
+ url: '/pages/auth/auth'
+ })
+ return;
+ }
+ wx.navigateTo({
+ url: `/package-events/sign-up/sign-up?id=${this.data.info.id}&title=${this.data.info.title}&poster=${this.data.info.poster}`
+ })
+ },
+ onShareAppMessage() {
+ return {
+ title: '活动详情',
+ path: `/package-events/events/event-detail?id=${that.data.id}&type=5`
+ }
+ },
+ copyLink: function () {
+ wx.setClipboardData({
+ data: this.data.info.join_url,
+ success: function (res) {
+ that.setData({
+ showDialog: false
+ })
+ }
+ })
+
+ },
+ toPoster(e) {
+ wx.navigateTo({
+ url: `/package-events/events/poster?isDraft=${e.currentTarget.dataset.flag || ''}&id=${this.data.info.id}`
+ })
+ },
+ redrictLogin() {
+ if(this.data.scene){
+ wx.navigateTo({
+ url: '/pages/auth/auth?id=' + that.data.id
+ })
+ } else {
+ wx.navigateTo({
+ url: '/pages/auth/auth'
+ })
+ }
+ },
+ collect() {
+ if(!this.data.info.collection_id){
+ remoteMethods.collect(() => {
+ this.onShow();
+ })
+ } else {
+ remoteMethods.unCollect(() => {
+ this.onShow();
+ })
+ }
+
+ },
+ clickVideo() {
+ this.data.videoInstance.requestFullScreen({
+ direction: 90
+ });
+ },
+ fullScreenChange() {
+ // if (this.data.videoHidden) {
+ // this.data.videoInstance.play();
+ // } else {
+ // this.data.videoInstance.pause();
+ // }
+ this.setData({
+ videoHidden: !this.data.videoHidden
+ })
+ }
+})
\ No newline at end of file
diff --git a/src/openeuler/package-events/events/event-detail.json b/src/openeuler/package-events/events/event-detail.json
new file mode 100644
index 0000000000000000000000000000000000000000..0b5a7136575f3871649cce970fb04b26b4a8bb95
--- /dev/null
+++ b/src/openeuler/package-events/events/event-detail.json
@@ -0,0 +1,3 @@
+{
+ "navigationBarTitleText": "活动详情"
+}
\ No newline at end of file
diff --git a/src/openeuler/package-events/events/event-detail.wxml b/src/openeuler/package-events/events/event-detail.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..8d1f37ffd46be76befb28ccd777e86e9a30ef6b3
--- /dev/null
+++ b/src/openeuler/package-events/events/event-detail.wxml
@@ -0,0 +1,135 @@
+
+
+
+
+ {{info.title}}
+
+
+
+
+
+
+ {{info.title}}
+ 待发布
+ 报名中
+ 进行中
+ 已结束
+
+
+
+ {{info.date}}
+
+
+
+
+ {{info.address}}
+
+
+
+ {{info.join_url}}
+
+
+
+
+
+
+
+ 活动简介
+
+
+ 活动议程
+
+
+ 活动须知
+
+
+
+ {{info.synopsis}}
+
+
+
+
+
+
+
+
+ {{item.duration}}
+ {{item.title}}
+
+
+ {{item.name}}-{{item.title||''}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 活动须知
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/openeuler/package-events/events/event-detail.wxss b/src/openeuler/package-events/events/event-detail.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..413f2dbaf966069d3c34f48c5ead87e6832e174c
--- /dev/null
+++ b/src/openeuler/package-events/events/event-detail.wxss
@@ -0,0 +1,302 @@
+/* package-events/events/event-detail.wxss */
+page {
+ background-color: #f5f7fa !important;
+}
+.container {
+ padding: 0 0 129rpx 0 !important;
+}
+
+.container .banner-title {
+ background-size: 100% 100% !important;
+ height: 378rpx;
+ text-align: center;
+ padding-top: 165rpx;
+ position: relative;
+}
+
+.container .banner-title text {
+ font-size: 40rpx;
+ color: #fff;
+}
+
+.container .banner-title .mask {
+ position: absolute;
+ top: 0;
+ left: 0;
+ width: 100%;
+ height: 100%;
+ background-color: #000;
+ opacity: 0.65;
+}
+
+.container .banner-title .mask image {
+ position: absolute;
+ width: 80rpx;
+ height: 62rpx;
+ left: 50%;
+ top: 50%;
+ margin-top: -31rpx;
+ margin-left: -40rpx;
+}
+
+.container .banner-type1 {
+ background: url(https://openeuler-website.obs.ap-southeast-1.myhuaweicloud.com/detail-banner/1.png) no-repeat;
+}
+
+.container .banner-type2 {
+ background: url(https://openeuler-website.obs.ap-southeast-1.myhuaweicloud.com/detail-banner/2.png) no-repeat;
+}
+
+.container .banner-type3 {
+ background: url(https://openeuler-website.obs.ap-southeast-1.myhuaweicloud.com/detail-banner/3.png) no-repeat;
+}
+
+.container .banner-type4 {
+ background: url(https://openeuler-website.obs.ap-southeast-1.myhuaweicloud.com/detail-banner/4.png) no-repeat;
+}
+
+.container .detail-wrapper {
+ background-color: #fff;
+ border-radius: 24rpx 24rpx 0 0;
+ margin-top: -48rpx;
+ margin-bottom: 20rpx;
+ padding: 60rpx 0;
+ position: relative;
+}
+
+.container .detail-wrapper .title-wrapper {
+ padding: 0 30rpx 27rpx;
+ border-bottom: 2rpx solid #f0f3f7;
+}
+
+.container .detail-wrapper .title-wrapper .title {
+ font-size: 36rpx;
+ margin-bottom: 20rpx;
+}
+
+.container .detail-wrapper .title-wrapper .status {
+ width: 116rpx;
+ height: 40rpx;
+ color: #fff;
+ background-color: #b7b7b7;
+ border-radius: 8rpx;
+ font-size: 24rpx;
+ text-align: center;
+ line-height: 40rpx;
+}
+
+.container .detail-wrapper .title-wrapper .registering {
+ background-color: #f9762d;
+}
+
+.container .detail-wrapper .title-wrapper .ongoing {
+ background-color: #3265e8;
+}
+
+.container .detail-wrapper .title-wrapper .over {
+ background-color: #002fa7;
+}
+
+.container .detail-wrapper .date {
+ padding: 30rpx;
+ border-bottom: 2rpx solid #f0f3f7;
+}
+
+.container .detail-wrapper .date image {
+ width: 28rpx;
+ height: 28rpx;
+ margin-right: 22rpx;
+ vertical-align: inherit;
+}
+
+.container .detail-wrapper .date text {
+ font-size: 32rpx;
+ color: #6d7278;
+}
+
+.container .detail-wrapper .address {
+ padding: 30rpx 30rpx 0;
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+}
+
+.container .detail-wrapper .address .left image {
+ width: 28rpx;
+ height: 28rpx;
+ margin-right: 22rpx;
+ vertical-align: inherit;
+}
+
+.container .detail-wrapper .address .left text {
+ width: 600rpx;
+ font-size: 32rpx;
+ color: #6d7278;
+ overflow: hidden;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+ display: inline-block;
+}
+
+.container .detail-wrapper .address .arrow-right {
+ width: 16rpx;
+ height: 28rpx;
+}
+
+.container .detail-tab-wrapper {
+ background-color: #fff;
+}
+
+.container .detail-tab-wrapper .tabs {
+ padding: 0 30rpx;
+ font-size: 36rpx;
+ height: 110rpx;
+ color: #c7cad0;
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ border-bottom: 2rpx solid #f0f3f7;
+}
+
+.container .detail-tab-wrapper .tabs .active {
+ color: #333;
+}
+
+.container .detail-tab-wrapper .tab-content {
+ padding: 60rpx 30rpx;
+}
+
+.container .detail-tab-wrapper .tab-content .header {
+ text-align: center;
+ font-size: 32rpx;
+ color: #333;
+ margin-bottom: 20rpx;
+}
+
+.container .detail-tab-wrapper .tab-content .content {
+ font-size: 28rpx;
+ color: #6d7278;
+}
+
+.container .detail-tab-wrapper .tab-content .content .steps-wrapper {
+ padding-left: 26rpx;
+}
+
+.container .detail-tab-wrapper .tab-content .content .steps-wrapper .steps .step-item {
+ position: relative;
+ padding-bottom: 40rpx;
+}
+
+.container .detail-tab-wrapper .tab-content .content .steps-wrapper .steps .step-item .detail .duration {
+ color: #002fa7;
+ font-size: 32rpx;
+}
+
+.container .detail-tab-wrapper .tab-content .content .steps-wrapper .steps .step-item .detail .title {
+ color: #333;
+ font-size: 28rpx;
+ margin-top: 20rpx;
+}
+
+.container .detail-tab-wrapper .tab-content .content .steps-wrapper .steps .step-item .detail .speaker {
+ color: #6d7278;
+ font-size: 24rpx;
+ margin-top: 20rpx;
+}
+
+.container .detail-tab-wrapper .tab-content .content .steps-wrapper .steps .step-item .circle {
+ position: absolute;
+ top: 16rpx;
+ left: -33rpx;
+ z-index: 2;
+ width: 14rpx;
+ height: 14rpx;
+ border-radius: 100%;
+ background-color: #002fa7;
+}
+
+.container .detail-tab-wrapper .tab-content .content .steps-wrapper .steps .step-item .line {
+ position: absolute;
+ top: 16rpx;
+ left: -26rpx;
+ width: 2rpx;
+ height: 100%;
+ border-left: 2rpx dashed #002fa7;
+}
+
+.container .detail-tab-wrapper .tab-content .content .steps-wrapper .steps .step-item:last-child .line {
+ border: none;
+ width: 0;
+}
+
+.container .footer-wrapper {
+ position: fixed;
+ bottom: 0;
+ left: 0;
+ width: 100%;
+ height: 130rpx;
+ border-top: 2rpx solid #f0f3f7;
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ background-color: #fff;
+ padding: 0 30rpx;
+ z-index: 99;
+}
+
+.container .type1 {
+ justify-content: space-around;
+}
+
+.container .footer-wrapper .collect,.container .footer-wrapper .share {
+ display: flex;
+ flex-direction: column;
+}
+
+.container .footer-wrapper .collect image,.container .footer-wrapper .share image {
+ width: 50rpx;
+ height: 50rpx;
+ margin-bottom: 9rpx;
+}
+
+.container .footer-wrapper .collect text,.container .footer-wrapper .share text {
+ color: #6d7278;
+ font-size: 24rpx;
+}
+
+.container .footer-wrapper button {
+ margin: unset;
+ padding: unset;
+ line-height: unset;
+}
+
+.container .footer-wrapper .btn-ghost {
+ width: 210rpx;
+ height: 90rpx;
+ text-align: center;
+ line-height: 90rpx;
+ border-radius: 8rpx;
+ border: 2rpx solid #002fa7;
+ color: #002fa7;
+ font-size: 36rpx;
+}
+
+.container .footer-wrapper .btn-primary {
+ width: 210rpx;
+ height: 90rpx;
+ text-align: center;
+ line-height: 90rpx;
+ border-radius: 8rpx;
+ background-color: #002fa7;
+ color: #fff;
+ font-size: 36rpx;
+}
+
+.container .footer-wrapper .register {
+ background-color: #6682ca;
+}
+
+.container .footer-iphonex {
+ padding-bottom: 50rpx;
+ height: 180rpx;
+}
\ No newline at end of file
diff --git a/src/openeuler/package-events/events/event-list.js b/src/openeuler/package-events/events/event-list.js
new file mode 100644
index 0000000000000000000000000000000000000000..aaa1fb1f34f68f72394fa1bffaaa7c91d48ffe61
--- /dev/null
+++ b/src/openeuler/package-events/events/event-list.js
@@ -0,0 +1,350 @@
+// package-events/events/test.js
+const appAjax = require('./../../utils/app-ajax');
+const sessionUtil = require("../../utils/app-session.js");
+const appUser = require("../../utils/app-user.js");
+let that = null;
+
+let remoteMethods = {
+ getList: function (_callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'GET',
+ service: 'ALL_EVENTS_LIST',
+ data: {
+ activity: that.data.activity,
+ activity_type: that.data.curFilterType,
+ search: that.data.curKeyword
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ },
+ getCount: function (_callback) {
+ appAjax.postJson({
+ type: 'GET',
+ service: 'GET_EVENTS_COUNT',
+ data: {
+ activity_type: that.data.curFilterType,
+ search: that.data.curKeyword
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ },
+ delDraft: function (_callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'DELETE',
+ service: 'DRAFT_DETAIL',
+ otherParams: {
+ id: that.data.curId
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ },
+ delEvent: function (_callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'PUT',
+ service: 'DEL_EVENT',
+ otherParams: {
+ id: that.data.curId
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ },
+ collect: function (_callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'POST',
+ service: 'EVENT_COLLECT',
+ data: {
+ activity: that.data.curId
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ },
+ unCollect: function (_callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'DELETE',
+ service: 'EVENT_UNCOLLECT',
+ otherParams: {
+ id: that.data.collectionId
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ },
+ getSignUpInfo: function (id, _callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'GET',
+ service: 'GET_SIGNUP_INFO',
+ otherParams: {
+ id
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ }
+}
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ level: 1,
+ user: '',
+ curKeyword: '',
+ popShow: false,
+ curFilterType: '',
+ curfilterTypeName: '全部类型',
+ filterType: '',
+ filterTypeName: '全部类型',
+ columns: [{
+ type: '',
+ name: '全部类型'
+ },
+ {
+ type: 1,
+ name: '线下'
+ },
+ {
+ type: 2,
+ name: '线上'
+ }
+ ],
+ list: [],
+ actionShow: false,
+ actions: [],
+ showDialogDel: false,
+ underDialogShow: false,
+ noAuthDialogShow: false,
+ activity: '',
+ allNum: 0,
+ signUpNum:0,
+ goingNum: 0,
+ complatedNum: 0,
+ curId: '',
+ registerId: ''
+ },
+
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad: function () {
+ that = this;
+ remoteMethods.getList(res => {
+ that.setData({
+ list: res,
+ level: sessionUtil.getUserInfoByKey('eventLevel') || 1,
+ user: sessionUtil.getUserInfoByKey('userId')
+ })
+
+ })
+ remoteMethods.getCount(res => {
+ that.setData({
+ allNum: res.all_activities_count,
+ signUpNum: res.registering_activities_count,
+ goingNum: res.going_activities_count,
+ complatedNum: res.completed_activities_count
+ })
+ })
+ },
+
+ /**
+ * 生命周期函数--监听页面显示
+ */
+ onShow: function () {
+
+ },
+ search: function (e) {
+ this.setData({
+ curKeyword: e.detail.value
+ })
+ this.onLoad();
+ },
+ filterType: function () {
+ this.setData({
+ popShow: true
+ })
+ },
+ popCancel: function () {
+ this.setData({
+ popShow: false,
+ filterType: this.data.curFilterType,
+ filterTypeName: this.data.curfilterTypeName
+ })
+ },
+ pickerChange: function (e) {
+ this.setData({
+ filterType: e.detail.value.type,
+ filterTypeName: e.detail.value.name
+ })
+ },
+ popConfirm: function () {
+ this.setData({
+ popShow: false,
+ curFilterType: this.data.filterType,
+ curfilterTypeName: this.data.filterTypeName
+ })
+ this.onLoad();
+ },
+ toUpdateSchedule(e) {
+ wx.navigateTo({
+ url: `/package-events/events/event-detail?id=${e.currentTarget.dataset.id}&type=5`
+ })
+ },
+ onActionClose() {
+ this.setData({
+ actionShow: false
+ })
+
+ },
+
+ onActionSelect(e) {
+ if (this.data.level == 3) {
+ if (e.detail.operaType == 1) {
+ if (this.data.collectionId) {
+ remoteMethods.unCollect(() => {
+ this.onLoad();
+ })
+ } else {
+ remoteMethods.collect(() => {
+ this.onLoad();
+ })
+ }
+ } else {
+ this.setData({
+ showDialogDel: true
+ })
+ }
+ } else {
+ if (e.detail.operaType == 1) {
+ if (this.data.collectionId) {
+ remoteMethods.unCollect(() => {
+ this.onLoad();
+ })
+ } else {
+ remoteMethods.collect(() => {
+ this.onLoad();
+ })
+ }
+ } else if(e.detail.operaType == 3) {
+ remoteMethods.getSignUpInfo(this.data.curId, (res) => {
+ wx.navigateTo({
+ url: `/package-events/sign-up/sign-up-success?name=${encodeURIComponent(res.name)}&title=${encodeURIComponent(res.title)}&tel=${encodeURIComponent(res.telephone)}&poster=${encodeURIComponent(res.poster)}&id=${encodeURIComponent(this.data.curId)}`
+ })
+ })
+ } else {
+ this.setData({
+ underDialogShow: true
+ })
+ }
+ }
+ },
+ onMore(e) {
+ this.setData({
+ actionShow: true,
+ curId: e.currentTarget.dataset.item.id,
+ userId: e.currentTarget.dataset.item.user,
+ collectionId: e.currentTarget.dataset.item.collection_id || '',
+ registerId: e.currentTarget.dataset.item.register_id || ''
+ })
+ const strTemp = this.data.collectionId ? '取消收藏' : '收藏活动';
+ if (this.data.level == 3) {
+ this.setData({
+ actions: [{
+ name: strTemp,
+ operaType: 1
+ },
+ {
+ name: '下架活动',
+ operaType: 2
+ }
+ ]
+ })
+ } else {
+ if (this.data.user == this.data.userId) {
+ this.setData({
+ actions: [{
+ name: strTemp,
+ operaType: 1
+ },
+ {
+ name: '下架活动',
+ operaType: 2
+ }
+ ]
+ })
+ } else {
+ this.setData({
+ actions: [{
+ name: strTemp,
+ operaType: 1
+ }]
+ })
+ }
+
+ if (this.data.registerId) {
+ let tempArr = this.data.actions;
+ tempArr.unshift({
+ name: '查看门票',
+ operaType: 3
+ })
+ this.setData({
+ actions: tempArr
+ })
+ }
+
+ }
+
+ },
+ del() {
+ this.setData({
+ showDialogDel: false
+ })
+ remoteMethods.delEvent(() => {
+ this.onLoad();
+ })
+ },
+ delCancel() {
+ this.setData({
+ showDialogDel: false
+ })
+ },
+ copyWechat() {
+ wx.setClipboardData({
+ data: 'openeuler123',
+ success: () => {
+ this.setData({
+ noAuthDialogShow: false,
+ underDialogShow: false
+ })
+ }
+ })
+
+ },
+ switchTab(e) {
+ this.setData({
+ activity: e.currentTarget.dataset.type || ''
+ })
+ this.onLoad();
+ },
+ onPullDownRefresh: function () {
+ wx.stopPullDownRefresh();
+ this.onLoad();
+ }
+})
\ No newline at end of file
diff --git a/src/openeuler/package-events/events/event-list.json b/src/openeuler/package-events/events/event-list.json
new file mode 100644
index 0000000000000000000000000000000000000000..40cca1b777326bbdf7f32dd4d262390c43284da4
--- /dev/null
+++ b/src/openeuler/package-events/events/event-list.json
@@ -0,0 +1,6 @@
+{
+ "navigationBarTitleText": "活动列表",
+ "enablePullDownRefresh": true,
+ "backgroundTextStyle": "dark",
+ "backgroundColor": "#fff"
+}
\ No newline at end of file
diff --git a/src/openeuler/package-events/events/event-list.wxml b/src/openeuler/package-events/events/event-list.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..ebdcba4cbe76e1b2f9ba407a87b0ea5d6250a1a4
--- /dev/null
+++ b/src/openeuler/package-events/events/event-list.wxml
@@ -0,0 +1,139 @@
+
+
+
+
+
+
+
+ {{curfilterTypeName}}
+
+
+
+
+
+ {{allNum}}
+ 全部
+
+
+ {{signUpNum}}
+ 报名中
+
+
+ {{goingNum}}
+ 进行中
+
+
+ {{complatedNum}}
+ 已结束
+
+
+
+
+
+
+
+
+
+
+
+ {{item.title}}
+
+
+ {{item.date}}
+
+
+
+ {{item.address||item.join_url}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 暂无活动!
+
+
+
+
+ 请确认下架当前活动
+
+
+
+
+
+
+
+
+
+ 活动一经发布,暂不支持自行下架删除。如有需要,请联系
+ 小助手 (微信号openeuler123)
+ 下架活动
+
+
+
+
+
+
+
+
+
+ 您暂时没有预定会议的权限,请联系
+ 小助手 (微信号openeuler123)
+ 提交预定会议权限申请
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/openeuler/package-events/events/event-list.wxss b/src/openeuler/package-events/events/event-list.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..56192b2c32932c59a559ae22fb72ad0a098df40d
--- /dev/null
+++ b/src/openeuler/package-events/events/event-list.wxss
@@ -0,0 +1,268 @@
+/* package-events/events/test.wxss */
+page {
+ background-color: #f5f7fa !important;
+}
+
+.container .input-wraper {
+ box-sizing: border-box;
+ margin: 20rpx 0 30rpx;
+ height: 108rpx;
+ position: relative;
+ box-shadow: 0px 5px 15px 0px rgba(225, 230, 238, 1);
+ border-radius: 8rpx;
+ overflow: hidden;
+ background-color: #fff;
+}
+
+.container .input-wraper .keyword {
+ padding-left: 94rpx;
+ border-left: 1px solid #f0f3f7;
+ height: 108rpx;
+ position: absolute;
+ top: 0;
+ right: 0;
+ width: 70%;
+ font-size: 28rpx;
+ line-height: 40rpx;
+}
+
+.container .input-wraper .keyword .search-icon {
+ height: 39rpx;
+ width: 39rpx;
+ display: inline-block;
+ position: absolute;
+ top: 34rpx;
+ left: 32rpx;
+}
+
+.container .input-wraper .filter-wraper {
+ position: absolute;
+ height: 108rpx;
+ left: 0;
+ top: 0;
+ width: 30%;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+}
+
+.container .input-wraper .filter-wraper text {
+ width: 113rpx;
+ overflow: hidden;
+ white-space: nowrap;
+ text-overflow: ellipsis;
+ font-size: 28rpx;
+ color: #6d7278;
+ text-align: center;
+}
+
+.container .input-wraper .filter-wraper image {
+ margin-left: 17rpx;
+ width: 30rpx;
+ height: 30rpx;
+}
+
+.container .event-type-wrapper {
+ background-color: #fff;
+ box-shadow: 0rpx 5rpx 15rpx 0rpx rgba(0, 47, 167, 0.1);
+ border-radius: 8rpx;
+ display: flex;
+ align-items: center;
+ margin-bottom: 30rpx;
+ height: 168rpx;
+}
+
+.container .event-type-wrapper .tab-filter {
+ flex: 1;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ height: 100%;
+ flex-direction: column;
+}
+
+.container .event-type-wrapper .tab-filter .num {
+ margin-bottom: 20rpx;
+ color: #3265e8;
+ font-size: 46rpx;
+}
+
+.container .event-type-wrapper .tab-filter .text {
+ font-size: 30rpx;
+ color: #6d7278;
+}
+
+.container .event-type-wrapper .active {
+ background-color: #3265e8;
+ border-radius: 8rpx;
+}
+
+.container .event-type-wrapper .active .num,.container .event-type-wrapper .active .text {
+ color: #fff;
+}
+
+.container .event-list-wrapper .event-item {
+ margin-bottom: 30rpx;
+ box-shadow: 0rpx 5rpx 15rpx 0rpx rgba(0, 47, 167, 0.1);
+ border-radius: 8rpx;
+ overflow: hidden;
+ position: relative;
+ background-color: #fff;
+}
+
+.container .event-list-wrapper .event-item .collection {
+ width: 40rpx;
+ height: 26rpx;
+ position: absolute;
+ top: 33rpx;
+ left: 0;
+}
+
+.container .event-list-wrapper .event-item .header {
+ height: 90rpx;
+ padding: 0 30rpx;
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ font-size: 28rpx;
+ color: #333;
+ border-bottom: 2rpx solid #f0f3f7;
+}
+
+.container .event-list-wrapper .event-item .isCollection {
+ padding-left: 60rpx;
+}
+
+.container .event-list-wrapper .event-item .header image {
+ height: 36rpx;
+ width: 8rpx;
+}
+
+.container .event-list-wrapper .event-item .body {
+ padding: 30rpx;
+ display: flex;
+}
+
+.container .event-list-wrapper .event-item .body .left {
+ margin-right: 20rpx;
+}
+
+.container .event-list-wrapper .event-item .body .left image {
+ width: 241rpx;
+ height: 241rpx;
+ border-radius: 8rpx;
+}
+
+.container .event-list-wrapper .event-item .body .right .title {
+ font-size: 30rpx;
+ overflow: hidden;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+ margin-bottom: 20rpx;
+ width: 380rpx;
+}
+
+.container .event-list-wrapper .event-item .body .right .date {
+ margin-bottom: 20rpx;
+ font-size: 24rpx;
+ color: #6d7278;
+ overflow: hidden;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+ width: 380rpx;
+}
+
+.container .event-list-wrapper .event-item .body .right .date image {
+ height: 28rpx;
+ width: 28rpx;
+ margin-right: 16rpx;
+ vertical-align: middle;
+}
+.container .event-list-wrapper .event-item .body .right .date text {
+ vertical-align: middle;
+}
+
+.container .event-list-wrapper .event-item .body .right .address {
+ font-size: 24rpx;
+ color: #6d7278;
+ overflow: hidden;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+ width: 380rpx;
+ margin-bottom: 30rpx;
+}
+
+.container .event-list-wrapper .event-item .body .right .address image {
+ height: 28rpx;
+ width: 28rpx;
+ margin-right: 16rpx;
+ vertical-align: middle;
+}
+
+.container .event-list-wrapper .event-item .body .right .address image text {
+ vertical-align: middle;
+}
+
+.container .event-list-wrapper .event-item .body .right .button {
+ text-align: right;
+ height: 68rpx;
+}
+
+.container .event-list-wrapper .event-item .body .right .button button {
+ height: 68rpx;
+ width: 172rpx;
+ text-align: center;
+ line-height: 68rpx;
+ color: #fff;
+ background-color: #002fa7;
+ border-radius: 8rpx;
+ font-size: 28rpx;
+ display: inline-block;
+}
+
+.container .event-list-wrapper .event-item .body .right .button .register {
+ background-color: #6682ca;
+}
+
+.container .event-list-wrapper .event-item .mask {
+ position: absolute;
+ height: 100%;
+ width: 100%;
+ background-color: #002fa7;
+ opacity: 0.65;
+ top: 0;
+ left: 0;
+}
+
+.container .event-list-wrapper .event-item .mask .mask-img {
+ position: absolute;
+ height: 137rpx;
+ width: 180rpx;
+ left: 50%;
+ top: 50%;
+ margin-left: -90rpx;
+ margin-top: -68rpx;
+}
+
+.empty-status .suc-wrapper {
+ position: absolute;
+ top: 50%;
+ transform: translate(-50%, -50%);
+ left: 50%;
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ justify-content: center;
+}
+
+.empty-status .suc-wrapper image {
+ width: 234rpx;
+ height: 218rpx;
+}
+
+.empty-status .suc-wrapper text {
+ text-align: center;
+ margin-top: 20rpx;
+ font-size: 34rpx;
+ color: #333;
+}
\ No newline at end of file
diff --git a/src/openeuler/package-events/events/poster.js b/src/openeuler/package-events/events/poster.js
new file mode 100644
index 0000000000000000000000000000000000000000..7b0c41e205ff3b6ba74299b132cecd52308f89e5
--- /dev/null
+++ b/src/openeuler/package-events/events/poster.js
@@ -0,0 +1,135 @@
+// package-events/events/poster.js
+const appAjax = require('./../../utils/app-ajax');
+const {
+ wxml,
+ style
+} = require('./wxml-to-canvas.js');
+
+let that = null;
+let remoteMethods = {
+ getDraftDetail: function (_callback) {
+ let service = 'EVENT_DETAIL';
+ if (that.data.isDraft) {
+ service = 'DRAFT_DETAIL'
+ }
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'GET',
+ service,
+ otherParams: {
+ id: that.data.id
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ }
+}
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ id: '',
+ isDraft: '',
+ info: {}
+ },
+
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad: function (options) {
+ that = this;
+ this.widget = this.selectComponent('.widget');
+ this.setData({
+ id: options.id || '',
+ isDraft: options.isDraft
+ })
+ if (this.data.id) {
+ remoteMethods.getDraftDetail(res => {
+ this.setData({
+ info: res
+ })
+ })
+ } else {
+ this.setData({
+ info: {
+ title: options.title,
+ date: options.date,
+ detail_address: options.address || '',
+ poster: options.poster,
+ join_url: options.liveAddress || '',
+ activity_type: options.address ? 1 : 2
+ },
+ isDraft: 1,
+ })
+ }
+
+ },
+ back() {
+ wx.navigateBack();
+ },
+ saveToAlbum() {
+ wx.showLoading({
+ title: '保存中',
+ mask: true
+ });
+ const p1 = this.widget.renderToCanvas({
+ wxml: wxml({
+ title: that.data.info.title,
+ date: that.data.info.date,
+ address: that.data.info.detail_address,
+ poster: that.data.info.poster,
+ qrcode: that.data.info.wx_code,
+ liveAddress: that.data.info.join_url
+ }),
+ style: style()
+ })
+ p1.then(() => {
+ const p2 = this.widget.canvasToTempFilePath();
+ p2.then(res => {
+ wx.getSetting({
+ success() {
+ wx.saveImageToPhotosAlbum({
+ filePath: res.tempFilePath,
+ success: function () {
+ wx.showToast({
+ title: "保存成功",
+ icon: "success",
+ duration: 2000
+ });
+ },
+ fail: function (err) {
+ console.log(err);
+ },
+ complete(res) {
+ wx.hideLoading();
+ console.log(res);
+ }
+ });
+ }
+ });
+ })
+ })
+
+ },
+ setAndGetSysImage(data) {
+ const fsm = wx.getFileSystemManager();
+ const fileName = Date.now() + '.png';
+ return new Promise((req, rej) => {
+ const filePath = wx.env.USER_DATA_PATH + '/' + fileName;
+ fsm.writeFile({
+ filePath,
+ data,
+ encoding: 'base64',
+ success: () => {
+ req(filePath);
+ },
+ fail: (err) => {
+ req(err);
+ }
+ })
+ })
+ }
+})
\ No newline at end of file
diff --git a/src/openeuler/package-events/events/poster.json b/src/openeuler/package-events/events/poster.json
new file mode 100644
index 0000000000000000000000000000000000000000..84acb196515ba8ed74b63eabfc2c3f9804ff8b90
--- /dev/null
+++ b/src/openeuler/package-events/events/poster.json
@@ -0,0 +1,3 @@
+{
+ "navigationBarTitleText": "活动海报"
+}
\ No newline at end of file
diff --git a/src/openeuler/package-events/events/poster.wxml b/src/openeuler/package-events/events/poster.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..3926b9b3962e9e21e869e1ca27c44e04eb0fa6be
--- /dev/null
+++ b/src/openeuler/package-events/events/poster.wxml
@@ -0,0 +1,21 @@
+
+
+
+ {{info.title}}
+
+
+ 时间:{{info.date}}
+ 地点:{{info.detail_address}}
+ 直播地址:{{info.join_url}}
+
+
+ 长按识别二维码,进入活动!
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/openeuler/package-events/events/poster.wxss b/src/openeuler/package-events/events/poster.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..8cf9f7b28904006d78e186c84d3b7bc3c464d57a
--- /dev/null
+++ b/src/openeuler/package-events/events/poster.wxss
@@ -0,0 +1,125 @@
+/* package-events/events/poster.wxss */
+page {
+ background-color: #f5f7fa !important;
+}
+
+.container {
+ padding: 30rpx 50rpx 129rpx 50rpx !important;
+}
+
+.container .post-wrapper {
+ width: 650rpx;
+ height: 1312rpx;
+ background-size: 100% 100% !important;
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ overflow: hidden;
+}
+
+.bg1 {
+ background: url(https://openeuler-website.obs.ap-southeast-1.myhuaweicloud.com/poster/bg1.png) no-repeat;
+}
+
+.bg2 {
+ background: url(https://openeuler-website.obs.ap-southeast-1.myhuaweicloud.com/poster/bg2.png) no-repeat;
+}
+
+.bg3 {
+ background: url(https://openeuler-website.obs.ap-southeast-1.myhuaweicloud.com/poster/bg3.png) no-repeat;
+}
+
+.bg4 {
+ background: url(https://openeuler-website.obs.ap-southeast-1.myhuaweicloud.com/poster/bg4.png) no-repeat;
+}
+
+.container .post-wrapper .title {
+ color: #fff;
+ font-size: 34rpx;
+ line-height: 41rpx;
+ margin-top: 176rpx;
+ text-align: center;
+}
+
+.container .post-wrapper .logo {
+ width: 171rpx;
+ height: 140rpx;
+ margin-top: 176rpx;
+}
+
+.container .post-wrapper .line {
+ height: 1;
+ width: 500rpx;
+ margin-top: 30rpx;
+}
+
+.container .post-wrapper .date {
+ color: #002fa7;
+ font-size: 24rpx;
+ line-height: 38rpx;
+ margin-top: 30rpx;
+ text-align: center;
+}
+
+.container .post-wrapper .address {
+ color: #002fa7;
+ font-size: 24rpx;
+ line-height: 38rpx;
+ margin-top: 20rpx;
+ text-align: center;
+}
+
+.container .post-wrapper .qrcode {
+ width: 370rpx;
+ height: 370rpx;
+ margin-top: 60rpx;
+ border-radius: 50%;
+ background-color: #fff;
+}
+
+.container .post-wrapper .qrcode-text {
+ font-size: 24rpx;
+ line-height: 33rpx;
+ color: #fff;
+ text-align: center;
+ margin-top: 30rpx;
+}
+
+.container .btn-wrapper {
+ position: fixed;
+ bottom: 0;
+ left: 0;
+ width: 100%;
+ display: flex;
+ justify-content: space-between;
+ padding: 0 30rpx;
+ align-items: center;
+ height: 130rpx;
+ background-color: #fff;
+ border-top: 2rpx solid #f0f3f7;
+}
+
+.container .btn-wrapper button {
+ width: 330rpx;
+ height: 90rpx;
+ text-align: center;
+ line-height: 90rpx;
+ margin: unset;
+ padding: unset;
+}
+
+.container .btn-wrapper .cancel {
+ border: 2rpx solid #002fa7;
+ color: #002fa7;
+ background-color: #fff;
+}
+
+.container .btn-wrapper .save {
+ background-color: #002fa7;
+ color: #fff;
+}
+
+.canvas {
+ height: 0;
+ overflow: hidden;
+}
\ No newline at end of file
diff --git a/src/openeuler/package-events/events/sign-success.js b/src/openeuler/package-events/events/sign-success.js
new file mode 100644
index 0000000000000000000000000000000000000000..2a0539b6b64721ab79a86d194caddc8b12d60225
--- /dev/null
+++ b/src/openeuler/package-events/events/sign-success.js
@@ -0,0 +1,63 @@
+// package-events/events/sign-success.js
+const appAjax = require('./../../utils/app-ajax');
+
+let that = null;
+let remoteMethods = {
+ sign: function (_callback) {
+ let service = 'SIGN';
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'POST',
+ service,
+ data: {
+ activity: that.data.id
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ }
+}
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ status: 0,
+ id: ''
+ },
+
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad: function (options) {
+ that = this;
+ this.setData({
+ id: options.id || decodeURIComponent(options.scene)
+ })
+ remoteMethods.sign((res) => {
+ if(res.code === 404) {
+ this.setData({
+ status: 1
+ })
+ }
+
+ if(res.code === 201) {
+ this.setData({
+ status: 2
+ })
+ }
+ })
+ },
+ back() {
+ wx.switchTab({
+ url: '/pages/events/events'
+ })
+ },
+ toSignUp() {
+ wx.redirectTo({
+ url: `/package-events/sign-up/sign-up?isScan=1&id=${this.data.id}`
+ })
+ }
+})
\ No newline at end of file
diff --git a/src/openeuler/package-events/events/sign-success.json b/src/openeuler/package-events/events/sign-success.json
new file mode 100644
index 0000000000000000000000000000000000000000..2449904aa00afcb26a4d24f7f9d9e361704321db
--- /dev/null
+++ b/src/openeuler/package-events/events/sign-success.json
@@ -0,0 +1,3 @@
+{
+ "navigationBarTitleText": "活动签到"
+}
\ No newline at end of file
diff --git a/src/openeuler/package-events/events/sign-success.wxml b/src/openeuler/package-events/events/sign-success.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..044ca1353f503e407d8c67653439f247ff0f2010
--- /dev/null
+++ b/src/openeuler/package-events/events/sign-success.wxml
@@ -0,0 +1,14 @@
+
+
+
+ 您还未报名该活动,赶快去报名吧!
+
+
+
+
+ 签到成功!
+ 快去参加活动吧
+
+
+
+
diff --git a/src/openeuler/package-events/events/sign-success.wxss b/src/openeuler/package-events/events/sign-success.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..b9fd798043c1efcd49f86f5ed640ddac72fc7512
--- /dev/null
+++ b/src/openeuler/package-events/events/sign-success.wxss
@@ -0,0 +1,71 @@
+/* package-events/events/sign-success.wxss */
+/* package-events/events/sign.wxss */
+page {
+ background-color: #f5f7fa !important;
+}
+
+.container {
+ padding: 0 !important;
+}
+
+.container button {
+ width: 500rpx;
+ height: 90rpx;
+ line-height: 90rpx;
+ text-align: center;
+ color: #fff;
+ background-color: #002fa7;
+ border-radius: 8rpx;
+}
+
+.container .post-wrapper {
+ width: 750rpx;
+ height: 1312rpx;
+ background-size: 100% 100% !important;
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ overflow: hidden;
+ background: url(https://openeuler-website.obs.ap-southeast-1.myhuaweicloud.com/sign/sign-bg.png) no-repeat;
+}
+
+.container .post-wrapper .text {
+ margin-top: 660rpx;
+ color: #333;
+ font-size: 28rpx;
+ line-height: 40rpx;
+}
+
+.container .post-wrapper button {
+ margin-top: 128rpx;
+}
+
+.container .success-wrapper {
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+}
+
+.container .success-img {
+ width: 234rpx;
+ height: 218rpx;
+ margin-top: 406rpx;
+}
+
+.container .success-text {
+ margin-top: 15rpx;
+ font-size: 34rpx;
+ color: #333;
+ line-height: 48rpx;
+}
+
+.container .success-desc {
+ margin-top: 20rpx;
+ color: #6d7278;
+ font-size: 28rpx;
+ line-height: 38rpx;
+}
+
+.container .back {
+ margin-top: 128rpx;
+}
\ No newline at end of file
diff --git a/src/openeuler/package-events/events/sign.js b/src/openeuler/package-events/events/sign.js
new file mode 100644
index 0000000000000000000000000000000000000000..59fd5af93fb0ebe68d555f7c1a0f1f2ab0d96ab1
--- /dev/null
+++ b/src/openeuler/package-events/events/sign.js
@@ -0,0 +1,46 @@
+// package-events/events/sign.js
+const appAjax = require('./../../utils/app-ajax');
+
+let that = null;
+let remoteMethods = {
+ getDraftDetail: function (_callback) {
+ let service = 'EVENT_DETAIL';
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'GET',
+ service,
+ otherParams: {
+ id: that.data.id
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ }
+}
+
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ id: '',
+ info: {}
+ },
+
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad: function (options) {
+ that = this;
+ this.setData({
+ id: options.id || ''
+ })
+ remoteMethods.getDraftDetail(res => {
+ this.setData({
+ info: res
+ })
+ })
+ }
+})
\ No newline at end of file
diff --git a/src/openeuler/package-events/events/sign.json b/src/openeuler/package-events/events/sign.json
new file mode 100644
index 0000000000000000000000000000000000000000..2449904aa00afcb26a4d24f7f9d9e361704321db
--- /dev/null
+++ b/src/openeuler/package-events/events/sign.json
@@ -0,0 +1,3 @@
+{
+ "navigationBarTitleText": "活动签到"
+}
\ No newline at end of file
diff --git a/src/openeuler/package-events/events/sign.wxml b/src/openeuler/package-events/events/sign.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..1e13bed39f80e02c8edc70cedce86bd3bd59a17d
--- /dev/null
+++ b/src/openeuler/package-events/events/sign.wxml
@@ -0,0 +1,9 @@
+
+
+
+ {{info.title}}
+
+ 扫一扫二维码签到吧!
+
+
+
diff --git a/src/openeuler/package-events/events/sign.wxss b/src/openeuler/package-events/events/sign.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..93df72acfa2ac4abd1776600976a7a3655419f01
--- /dev/null
+++ b/src/openeuler/package-events/events/sign.wxss
@@ -0,0 +1,64 @@
+/* package-events/events/sign.wxss */
+page {
+ background-color: #f5f7fa !important;
+}
+
+.container {
+ padding: 0 !important;
+}
+
+.container .post-wrapper {
+ width: 750rpx;
+ height: 1312rpx;
+ background-size: 100% 100% !important;
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ overflow: hidden;
+}
+
+.bg1 {
+ background: url(https://openeuler-website.obs.ap-southeast-1.myhuaweicloud.com/poster/bg1.png) no-repeat;
+}
+
+.bg2 {
+ background: url(https://openeuler-website.obs.ap-southeast-1.myhuaweicloud.com/poster/bg2.png) no-repeat;
+}
+
+.bg3 {
+ background: url(https://openeuler-website.obs.ap-southeast-1.myhuaweicloud.com/poster/bg3.png) no-repeat;
+}
+
+.bg4 {
+ background: url(https://openeuler-website.obs.ap-southeast-1.myhuaweicloud.com/poster/bg4.png) no-repeat;
+}
+
+.container .post-wrapper .title {
+ color: #fff;
+ font-size: 40rpx;
+ line-height: 48rpx;
+ margin-top: 173rpx;
+ text-align: center;
+}
+
+.container .post-wrapper .qrcode {
+ width: 519rpx;
+ height: 519rpx;
+ margin-top: 139rpx;
+ border-radius: 50%;
+ background-color: #fff;
+}
+
+.container .post-wrapper .qrcode-text {
+ font-size: 28rpx;
+ line-height: 40rpx;
+ color: #333;
+ text-align: center;
+ margin-top: 22rpx;
+}
+
+.container .post-wrapper .logo {
+ margin-top: 158rpx;
+ width: 171rpx;
+ height: 148rpx;
+}
\ No newline at end of file
diff --git a/src/openeuler/package-events/events/wxml-to-canvas.js b/src/openeuler/package-events/events/wxml-to-canvas.js
new file mode 100644
index 0000000000000000000000000000000000000000..a166b083ed7bf22828fc7c921003aeecee338437
--- /dev/null
+++ b/src/openeuler/package-events/events/wxml-to-canvas.js
@@ -0,0 +1,89 @@
+const wxml = (data) => {
+ return `
+
+
+
+ ${data.title}
+
+ 时间:${data.date}
+ ${data.address?('地点:'+data.address):('直播地址:'+data.liveAddress)}
+
+ 长按识别二维码,进入活动!
+
+
+ `
+}
+
+const style = () => {
+ return {
+ container: {
+ width: 325,
+ height: 656,
+ flexDirection: 'column',
+ alignItems: 'center'
+ },
+ absolute: {
+ width: 325,
+ height: 656,
+ flexDirection: 'column',
+ alignItems: 'center'
+ },
+ title: {
+ marginTop: 88,
+ color: '#fff',
+ width: 325,
+ height: 41,
+ fontSize: 17,
+ textAlign: 'center'
+ },
+ logo: {
+ marginTop: 71,
+ width: 85,
+ height: 70,
+ marginBottom: 15
+ },
+ date: {
+ marginTop: 15,
+ color: '#002fa7',
+ width: 325,
+ fontSize: 12,
+ height: 19,
+ textAlign: 'center'
+ },
+ address: {
+ marginTop: 10,
+ color: '#002fa7',
+ width: 325,
+ fontSize: 12,
+ height: 19,
+ textAlign: 'center'
+ },
+ qrcode: {
+ backgroundColor: '#ffffff',
+ marginTop: 40,
+ height: 185,
+ width: 185,
+ borderRadius: 100
+ },
+ qrcodeText: {
+ color: '#ffffff',
+ fontSize: 12,
+ marginTop: 15,
+ height: 17,
+ width: 325,
+ textAlign: 'center'
+ },
+ bgImg: {
+ position: 'absolute',
+ width: 325,
+ height: 656,
+ top: 0,
+ left: 0
+ }
+ }
+}
+
+module.exports = {
+ wxml,
+ style
+}
\ No newline at end of file
diff --git a/src/openeuler/package-events/manage/add-member.js b/src/openeuler/package-events/manage/add-member.js
new file mode 100644
index 0000000000000000000000000000000000000000..88f59976d70a4373c7f7fcc797b984768e79cfc4
--- /dev/null
+++ b/src/openeuler/package-events/manage/add-member.js
@@ -0,0 +1,105 @@
+// pages/sig/add-member.js
+var appAjax = require('./../../utils/app-ajax');
+let remoteMethods = {
+ getExcludeMemberList: function (postData, _callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'GET',
+ service: "ENTERPRISE_EXCLUDE_MEMBER_LIST",
+ data: {
+ search: postData.nickname || ''
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ },
+ addMemberList: function (postData, _callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'POST',
+ service: "ENTERPRISE_ADD_MEMBER_LIST",
+ data: postData,
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ }
+}
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ list: [],
+ result: [],
+ keyword: ''
+ },
+
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad: function (options) {
+ },
+
+ /**
+ * 生命周期函数--监听页面显示
+ */
+ onShow: function () {
+ let that = this;
+ remoteMethods.getExcludeMemberList({}, function (data) {
+ that.setData({
+ list: data
+ })
+ })
+ },
+ onChange: function (e) {
+ this.setData({
+ result: e.detail
+ })
+ },
+ comfirm: function () {
+ let that = this;
+ if (!this.data.result.length) {
+ wx.showToast({
+ title: '请选择人员',
+ icon: "none",
+ duration: 2000
+ });
+ return;
+ }
+ let postData = {
+ ids: this.data.result.join('-')
+ }
+ remoteMethods.addMemberList(postData, function (data) {
+ if (data.code === 201) {
+ wx.showToast({
+ title: '操作成功',
+ icon: "success",
+ duration: 2000
+ });
+ wx.navigateBack();
+ } else {
+ wx.showToast({
+ title: '操作失败',
+ icon: "none",
+ duration: 2000
+ });
+ }
+ })
+ },
+ searchInput: function (e) {
+ let that = this;
+ this.setData({
+ keyword: e.detail.value
+ })
+ remoteMethods.getExcludeMemberList({
+ nickname: this.data.keyword
+ }, function (data) {
+ that.setData({
+ list: data
+ })
+ })
+ }
+})
\ No newline at end of file
diff --git a/src/openeuler/package-events/manage/add-member.json b/src/openeuler/package-events/manage/add-member.json
new file mode 100644
index 0000000000000000000000000000000000000000..1552ab1c6ac2d2024c02d9821723876540e8fe68
--- /dev/null
+++ b/src/openeuler/package-events/manage/add-member.json
@@ -0,0 +1,4 @@
+{
+ "usingComponents": {},
+ "navigationBarTitleText": "选择成员"
+}
\ No newline at end of file
diff --git a/src/openeuler/package-events/manage/add-member.wxml b/src/openeuler/package-events/manage/add-member.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..41a47e080839d07b1b3165acffd553bb3e7e76ac
--- /dev/null
+++ b/src/openeuler/package-events/manage/add-member.wxml
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+ {{list.length?'':('没有找到 '+(keyword||' ')+' 相关成员')}}
+
+
+
+
+
+
+ {{item.nickname}}
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/openeuler/package-events/manage/add-member.wxss b/src/openeuler/package-events/manage/add-member.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..e5635eaa0576ee863b59721e4ae624e336c093d3
--- /dev/null
+++ b/src/openeuler/package-events/manage/add-member.wxss
@@ -0,0 +1,88 @@
+/* pages/sig/add-member.wxss */
+.container {
+ background-color: #fff;
+ margin-top: 20rpx;
+ margin-bottom: 150rpx;
+ padding: 0;
+}
+
+.container .fill {
+ width: 100%;
+ text-align: center;
+ font-size: 28rpx;
+ color: #6d7278;
+ height: 28rpx;
+ background-color: #f5f7fa;
+}
+
+.container .input-wraper {
+ box-sizing: border-box;
+ margin: 20rpx 0 0 0;
+ height: 108rpx;
+ position: relative;
+}
+
+.container .input-wraper .keyword {
+ padding-left: 94rpx;
+ background-color: #fff;
+ border-radius: 8rpx;
+ height: 108rpx;
+ position: absolute;
+ top: 0;
+ width: 100%;
+ font-size: 28rpx;
+ line-height: 40rpx;
+}
+
+.container .input-wraper .search-icon {
+ height: 39rpx;
+ width: 39rpx;
+ display: inline-block;
+ position: absolute;
+ top: 34rpx;
+ left: 32rpx;
+}
+
+.container .add-item {
+ border-bottom: 1px solid #c7cad0;
+ padding: 0 30rpx;
+ height: 108rpx;
+ line-height: 108rpx;
+ display: flex;
+ align-items: center;
+}
+
+.container .add-item image {
+ width: 72rpx;
+ height: 72rpx;
+ border-radius: 8rpx;
+ display: inline-block;
+ border: 1px solid #979797;
+ margin: 0 20rpx 0 10rpx;
+}
+
+.container .add-item text {
+ display: inline-block;
+ height: 100%;
+}
+
+.container .add-item .inner {
+ height: 100%;
+ display: flex;
+ align-items: center;
+}
+
+.container .add-btn {
+ position: fixed;
+ bottom: 60rpx;
+ left: 125rpx;
+ width: 500rpx;
+ height: 90rpx;
+ line-height: 90rpx;
+ font-size: 36rpx;
+ color: #fff;
+ background-color: #002fa7;
+ border-radius: 8rpx;
+ text-align: center;
+ box-shadow: 0px 5px 20px 0px rgba(126, 146, 178, 0.7);
+}
\ No newline at end of file
diff --git a/src/openeuler/package-events/manage/del-member.js b/src/openeuler/package-events/manage/del-member.js
new file mode 100644
index 0000000000000000000000000000000000000000..327cde0e223407f720eb963c216633507307b6b3
--- /dev/null
+++ b/src/openeuler/package-events/manage/del-member.js
@@ -0,0 +1,88 @@
+// pages/sig/del-member.js
+var appAjax = require('./../../utils/app-ajax');
+let remoteMethods = {
+ getCludeMemberList: function (_callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'GET',
+ service: "ENTERPRISE_MEMBER_LIST",
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ },
+ delMemberList: function (postData, _callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'POST',
+ service: "ENTERPRISE_DEL_MEMBER_LIST",
+ data: postData,
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ }
+}
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ list: [],
+ result: []
+ },
+
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad: function (options) {
+ },
+
+ /**
+ * 生命周期函数--监听页面显示
+ */
+ onShow: function () {
+ let that = this;
+ remoteMethods.getCludeMemberList(function (data) {
+ that.setData({
+ list: data
+ })
+ })
+ },
+ onChange: function (e) {
+ this.setData({
+ result: e.detail
+ })
+ },
+ del: function () {
+ let that = this;
+ if (!this.data.result.length) {
+ wx.showToast({
+ title: '请选择人员',
+ icon: "none",
+ duration: 2000
+ });
+ return;
+ }
+ let postData = {
+ ids: this.data.result.join('-')
+ }
+ remoteMethods.delMemberList(postData, function (data) {
+ if (data.code === 204) {
+ wx.showToast({
+ title: '操作成功',
+ icon: "success",
+ duration: 2000
+ });
+ wx.navigateBack();
+ } else {
+ wx.showToast({
+ title: '操作失败',
+ icon: "none",
+ duration: 2000
+ });
+ }
+ })
+ }
+})
\ No newline at end of file
diff --git a/src/openeuler/package-events/manage/del-member.json b/src/openeuler/package-events/manage/del-member.json
new file mode 100644
index 0000000000000000000000000000000000000000..1552ab1c6ac2d2024c02d9821723876540e8fe68
--- /dev/null
+++ b/src/openeuler/package-events/manage/del-member.json
@@ -0,0 +1,4 @@
+{
+ "usingComponents": {},
+ "navigationBarTitleText": "选择成员"
+}
\ No newline at end of file
diff --git a/src/openeuler/package-events/manage/del-member.wxml b/src/openeuler/package-events/manage/del-member.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..4f4ebd3025ba5644f03f1d6d529183f0a5a2a93a
--- /dev/null
+++ b/src/openeuler/package-events/manage/del-member.wxml
@@ -0,0 +1,16 @@
+
+
+
+
+
+
+
+
+ {{item.nickname}}
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/openeuler/package-events/manage/del-member.wxss b/src/openeuler/package-events/manage/del-member.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..ea73f423f1e1fc72395c4a25ae75640cceb3c545
--- /dev/null
+++ b/src/openeuler/package-events/manage/del-member.wxss
@@ -0,0 +1,51 @@
+/* pages/sig/del-member.wxss */
+.container {
+ background-color: #fff;
+ margin-top: 20rpx;
+ margin-bottom: 150rpx;
+ padding: 0;
+}
+
+.container .del-item {
+ border-bottom: 1px solid #c7cad0;
+ padding: 0 30rpx;
+ height: 108rpx;
+ line-height: 108rpx;
+ display: flex;
+ align-items: center;
+}
+
+.container .del-item image {
+ width: 72rpx;
+ height: 72rpx;
+ border-radius: 8rpx;
+ display: inline-block;
+ border: 1px solid #979797;
+ margin: 0 20rpx 0 10rpx;
+}
+
+.container .del-item text {
+ display: inline-block;
+ height: 100%;
+}
+
+.container .del-item .inner {
+ height: 100%;
+ display: flex;
+ align-items: center;
+}
+
+.container .del-btn {
+ position: fixed;
+ bottom: 60rpx;
+ left: 125rpx;
+ width: 500rpx;
+ height: 90rpx;
+ line-height: 90rpx;
+ font-size: 36rpx;
+ color: #fff;
+ background-color: #002fa7;
+ border-radius: 8rpx;
+ text-align: center;
+ box-shadow: 0px 5px 20px 0px rgba(126, 146, 178, 0.7);
+}
\ No newline at end of file
diff --git a/src/openeuler/package-events/manage/enterprise-list.js b/src/openeuler/package-events/manage/enterprise-list.js
new file mode 100644
index 0000000000000000000000000000000000000000..04556586342127513e4aab3ff2303767182b79cf
--- /dev/null
+++ b/src/openeuler/package-events/manage/enterprise-list.js
@@ -0,0 +1,54 @@
+// package-events/manage/enterprise-list.js
+var appAjax = require('./../../utils/app-ajax');
+let remoteMethods = {
+ getMemberList: function (_callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'GET',
+ service: "ENTERPRISE_MEMBER_LIST",
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ }
+}
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ memberList: []
+ },
+
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad: function (options) {
+ },
+
+ /**
+ * 生命周期函数--监听页面显示
+ */
+ onShow: function () {
+ let that = this;
+ remoteMethods.getMemberList(function (list) {
+ that.setData({
+ memberList: list
+ })
+ });
+ },
+ toDetail: function (e) {
+
+ },
+ addMember: function () {
+ wx.navigateTo({
+ url: '/package-events/manage/add-member'
+ })
+ },
+ delMember: function () {
+ wx.navigateTo({
+ url: '/package-events/manage/del-member'
+ })
+ }
+})
\ No newline at end of file
diff --git a/src/openeuler/package-events/manage/enterprise-list.json b/src/openeuler/package-events/manage/enterprise-list.json
new file mode 100644
index 0000000000000000000000000000000000000000..6f5247b050d616d1d9ab35b9dec4da0b673757b8
--- /dev/null
+++ b/src/openeuler/package-events/manage/enterprise-list.json
@@ -0,0 +1,3 @@
+{
+ "usingComponents": {}
+}
\ No newline at end of file
diff --git a/src/openeuler/package-events/manage/enterprise-list.wxml b/src/openeuler/package-events/manage/enterprise-list.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..3eee8c302b461301ea7051d5e1916f74ddf06f1f
--- /dev/null
+++ b/src/openeuler/package-events/manage/enterprise-list.wxml
@@ -0,0 +1,35 @@
+
+
+
+
+
+
+ {{item.nickname}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 暂无活动发起人!
+
+
+
+
\ No newline at end of file
diff --git a/src/openeuler/package-events/manage/enterprise-list.wxss b/src/openeuler/package-events/manage/enterprise-list.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..2ebf05461fd029e5ce8131080dafc490eba55bea
--- /dev/null
+++ b/src/openeuler/package-events/manage/enterprise-list.wxss
@@ -0,0 +1,116 @@
+/* package-events/manage/enterprise-list.wxss */
+page {
+ padding: 20rpx 0 0 0;
+ background-color: #f5f7fa;
+}
+
+.bg {
+ background-color: unset !important;
+}
+
+.container {
+ height: 100%;
+ background-color: #fff;
+ padding: 30rpx;
+}
+
+.container .sig-members {
+ width: 100%;
+ display: flex;
+ flex-wrap: wrap;
+}
+
+.container .sig-members .item {
+ flex: 0 0 20%;
+ margin-bottom: 20rpx;
+ color: #b2b2b2;
+ font-size: 23rpx;
+ line-height: 33rpx;
+ font-weight: 400;
+ display: flex;
+ flex-direction: column;
+ justify-content: center;
+ align-items: center;
+}
+
+.container .sig-members .item:nth-child(5n) {
+ margin-right: 0;
+}
+
+.container .sig-members .item image {
+ display: block;
+ width: 100rpx;
+ height: 100rpx;
+ margin-bottom: 2rpx;
+ border-radius: 8rpx;
+ border: 1px solid #979797;
+}
+
+.container .sig-members .item text {
+ display: inline-block;
+ width: 100rpx;
+ white-space: nowrap;
+ overflow: hidden;
+ text-overflow: ellipsis;
+ text-align: center;
+}
+
+.container .sig-members .item view {
+ width: 100rpx;
+ height: 100rpx;
+ text-align: center;
+ line-height: 100rpx;
+ border-radius: 8rpx;
+ border: 1px solid #c7cad0;
+}
+
+.container .sig-members .opera-item {
+ justify-content: start;
+}
+
+.container .sig-members .item view image {
+ display: inline-block;
+ height: 44rpx;
+ width: 44rpx;
+ border: none;
+ vertical-align: middle;
+}
+
+.container .empty-wraper .img-wraper {
+ position: fixed;
+ top: 471rpx;
+ left: 260rpx;
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+}
+
+.container .empty-wraper .img-wraper image {
+ height: 256rpx;
+ width: 241rpx;
+}
+
+.container .empty-wraper .img-wraper {
+ color: #333;
+ font-size: 34rpx;
+ line-height: 38rpx;
+}
+
+.container .empty-wraper button {
+ width: 500rpx;
+ height: 90rpx;
+ line-height: 90rpx;
+ text-align: center;
+ background-color: #002fa7;
+ color: #fff;
+ font-size: 36rpx;
+ border-radius: 8rpx;
+ position: fixed;
+ top: 996rpx;
+ left: 125rpx;
+}
+
+.container .empty-wraper button image {
+ width: 35rpx;
+ height: 35rpx;
+}
\ No newline at end of file
diff --git a/src/openeuler/package-events/publish/publish.js b/src/openeuler/package-events/publish/publish.js
new file mode 100644
index 0000000000000000000000000000000000000000..8df0d1f3724f5c01a26ae8034b98fcfce63a1a27
--- /dev/null
+++ b/src/openeuler/package-events/publish/publish.js
@@ -0,0 +1,588 @@
+// package-events/publish/publish.js
+const appAjax = require('./../../utils/app-ajax');
+const utils = require("./../../utils/utils.js");
+utils.formateDate();
+let that = null;
+let remoteMethods = {
+ addEvents: function (postData, _callback) {
+ let type = 'POST';
+ let service = "PUBLISH_EVENT";
+ if (that.data.detailType == 4) {
+ type = 'PUT';
+ service = 'EDIT_DETAIL_PUBLISH'
+ }
+ appAjax.postJson({
+ autoShowWait: true,
+ type,
+ service,
+ data: postData,
+ otherParams: {
+ id: that.data.id || ''
+ },
+ success: function (ret) {
+ if (ret.code == 400) {
+ localMethods.toast(ret.msg);
+ return;
+ }
+ _callback && _callback(ret);
+ }
+ });
+ },
+ saveDraft: function (postData, _callback) {
+ let type = 'POST';
+ let service = "SAVE_DRAFT";
+ if (that.data.detailType == 4) {
+ type = 'PUT';
+ service = 'EDIT_DETAIL'
+ } else if (that.data.detailType == 5) {
+ type = 'PUT';
+ service = 'EDIT_SCHEDULE'
+ }
+ appAjax.postJson({
+ autoShowWait: true,
+ type,
+ service,
+ data: postData,
+ otherParams: {
+ id: that.data.id || ''
+ },
+ success: function (ret) {
+ if (ret.code == 400) {
+ localMethods.toast(ret.msg);
+ return;
+ }
+ _callback && _callback(ret);
+ }
+ });
+ },
+ getDraftDetail: function (_callback) {
+ let service = 'DRAFT_DETAIL';
+ if (that.data.detailType == 5) {
+ service = 'EVENT_DETAIL'
+ }
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'GET',
+ service,
+ otherParams: {
+ id: that.data.id
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ }
+}
+let localMethods = {
+ validation: function (data) {
+ if (data.activity_type === 1) {
+ if (!data.title) {
+ this.toast('请输入活动标题');
+ return;
+ }
+ if (!data.date) {
+ this.toast('请选择活动日期');
+ return;
+ }
+ if (!data.address) {
+ this.toast('请输入活动城市');
+ return;
+ }
+ if (!data.detail_address) {
+ this.toast('请输入具体地址');
+ return;
+ }
+ let flag = true;
+ data.schedules.forEach(item => {
+ if (!item.start) {
+ flag = false;
+ }
+ if (!item.end) {
+ flag = false;
+ }
+ if (!item.topic) {
+ flag = false;
+ }
+ item.speakerList.forEach(item => {
+ if (!item.name) {
+ flag = false;
+ }
+ })
+ });
+ if (!flag) {
+ this.toast('请补充日程必填信息');
+ return;
+ }
+ } else {
+ if (!data.title) {
+ this.toast('请输入活动标题');
+ return;
+ }
+ if (!data.date) {
+ this.toast('请选择活动日期');
+ return;
+ }
+ if (!data.start && !data.end) {
+ this.toast('请选择活动时间');
+ return;
+ }
+ let flag = true;
+ data.schedules.forEach(item => {
+ if (!item.start) {
+ flag = false;
+ }
+ if (!item.end) {
+ flag = false;
+ }
+ if (!item.topic) {
+ flag = false;
+ }
+ item.speakerList.forEach(item => {
+ if (!item.name) {
+ flag = false;
+ }
+ if (!item.mail) {
+ flag = false;
+ }
+ })
+ });
+ if (!flag) {
+ this.toast('请补充填写日程必填信息');
+ return;
+ }
+ }
+
+ return true;
+ },
+ toast: function (msg) {
+ wx.showToast({
+ title: msg,
+ icon: "none",
+ duration: 2000
+ });
+ }
+}
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ id: '',
+ detailType: 0,
+ title: '',
+ date: '',
+ type: 1,
+ address: '',
+ addressName: '',
+ desc: '',
+ schedule: [{
+ start: '',
+ end: '',
+ topic: '',
+ speakerList: [
+ {
+ name: '',
+ title: '',
+ mail: ''
+ }
+ ]
+ }],
+ datePopShow: false,
+ timePopShow: false,
+ curDate: new Date().getTime(),
+ currentDate: new Date().getTime(),
+ minDate: new Date().getTime(),
+ startTimeIndex: 0,
+ endTimeIndex: 0,
+ start: '',
+ end: '',
+ currentTime: '08:00',
+ minTime: 8,
+ maxTime: 22,
+ minEndTime: 8,
+ maxEndTime: 22,
+ filter(type, options) {
+ if (type === 'minute') {
+ return options.filter((option) => option % 5 === 0);
+ }
+
+ return options;
+ },
+ endTimePopShow: false,
+ currentEndTime: '08:00',
+ topicSelIndex: 1,
+ longitude: '',
+ latitude: '',
+ onlineStartTime: '',
+ onlineEndTime: '',
+ isOnline: 0
+ },
+
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad: function (options) {
+ that = this;
+ this.setData({
+ id: options.id,
+ detailType: options.type || 0
+ })
+ if ((this.data.id && (this.data.detailType == 5)) || (this.data.id && (this.data.detailType == 4))) {
+ remoteMethods.getDraftDetail(res => {
+ this.setData({
+ title: res.title,
+ date: res.date,
+ type: res.activity_type,
+ longitude: res.longitude || '',
+ latitude: res.latitude || '',
+ address: res.address || '',
+ addressName: res.detail_address || '',
+ desc: res.synopsis || '',
+ topicSelIndex: res.poster,
+ schedule: JSON.parse(res.schedules),
+ onlineStartTime: res.start || '',
+ onlineEndTime: res.end || ''
+ })
+ })
+ }
+ },
+ /**
+ * 生命周期函数--监听页面显示
+ */
+ onShow: function () {
+
+ },
+ titleInput(e) {
+ this.setData({
+ title: e.detail.value
+ })
+ },
+ selDate: function () {
+ this.setData({
+ datePopShow: true
+ })
+ },
+ dateCancel: function () {
+ this.setData({
+ datePopShow: false
+ })
+ },
+ dateOnInput: function (e) {
+ this.setData({
+ currentDate: e.detail
+ })
+ },
+ dateConfirm: function () {
+ this.setData({
+ date: (new Date(this.data.currentDate)).Format("yyyy-MM-dd"),
+ datePopShow: false
+ })
+ },
+ radioOnChange(e) {
+ this.setData({
+ type: e.detail
+ })
+ },
+ selAddress() {
+ wx.chooseLocation({
+ success: function (res) {
+ that.setData({
+ address: res.address,
+ addressName: res.name,
+ longitude: res.longitude,
+ latitude: res.latitude
+ })
+ }
+ })
+ },
+ addressNameInput(e) {
+ this.setData({
+ addressName: e.detail.value
+ })
+ },
+ descInput(e) {
+ this.setData({
+ desc: e.detail.value
+ })
+ },
+ scheduleTitleInput(e) {
+ const key = `schedule[${e.currentTarget.dataset.index}].topic`;
+ this.setData({
+ [key]: e.detail.value
+ })
+ },
+ nameInput(e) {
+ const key = `schedule[${e.currentTarget.dataset.outindex}].speakerList[${e.currentTarget.dataset.innerindex}].name`;
+ this.setData({
+ [key]: e.detail.value
+ })
+ },
+ speakerTitleInput(e) {
+ const key = `schedule[${e.currentTarget.dataset.outindex}].speakerList[${e.currentTarget.dataset.innerindex}].title`;
+ this.setData({
+ [key]: e.detail.value
+ })
+ },
+ mailInput(e) {
+ const key = `schedule[${e.currentTarget.dataset.outindex}].speakerList[${e.currentTarget.dataset.innerindex}].mail`;
+ this.setData({
+ [key]: e.detail.value
+ })
+ },
+ addSchedule() {
+ let arrTemp = this.data.schedule;
+ arrTemp.push({
+ start: '',
+ end: '',
+ topic: '',
+ speakerList: []
+ })
+ this.setData({
+ schedule: arrTemp
+ })
+ },
+ addSpeaker(e) {
+ const length = this.data.schedule[e.currentTarget.dataset.index].speakerList.length;
+ const key = `schedule[${e.currentTarget.dataset.index}].speakerList[${length}]`;
+ this.setData({
+ [key]: {
+ name: '',
+ title: '',
+ mail: ''
+ }
+ })
+ },
+ delSchedule(e) {
+ let arrTemp = this.data.schedule;
+ arrTemp.splice(e.currentTarget.dataset.index, 1);
+ this.setData({
+ schedule: arrTemp
+ })
+ },
+ delSpeaker(e) {
+ let arrTemp = this.data.schedule[e.currentTarget.dataset.outindex].speakerList;
+ let key = `schedule[${e.currentTarget.dataset.outindex}].speakerList`;
+ arrTemp.splice(e.currentTarget.dataset.innerindex, 1);
+ this.setData({
+ [key]: arrTemp
+ })
+ },
+ selTime: function (e) {
+ this.setData({
+ timePopShow: true,
+ startTimeIndex: e.currentTarget.dataset.index
+ })
+ },
+ selOnlineStartTime() {
+ this.setData({
+ timePopShow: true,
+ isOnline: 1
+ })
+ },
+ timeCancel: function () {
+ this.setData({
+ timePopShow: false,
+ isOnline: 0
+ })
+ },
+ timeOnInput: function (e) {
+ this.setData({
+ currentTime: e.detail
+ })
+ },
+ timeConfirm: function (e) {
+ if(this.data.isOnline){
+ this.setData({
+ onlineStartTime: this.data.currentTime,
+ isOnline: 0,
+ timePopShow: false,
+ })
+ return;
+ }
+ const key = `schedule[${this.data.startTimeIndex}].start`;
+ this.setData({
+ [key]: this.data.currentTime,
+ timePopShow: false,
+ isOnline: 0
+ })
+ },
+ timeCancel: function () {
+ this.setData({
+ timePopShow: false
+ })
+ },
+ endTimeCancel: function () {
+ this.setData({
+ endTimePopShow: false
+ })
+ },
+ selEndTime: function (e) {
+ this.setData({
+ endTimePopShow: true,
+ endTimeIndex: e.currentTarget.dataset.index
+ })
+ },
+ selOnlineEndTime() {
+ this.setData({
+ endTimePopShow: true,
+ isOnline: 1
+ })
+ },
+ endTimeOnInput: function (e) {
+ this.setData({
+ currentEndTime: e.detail
+ })
+ },
+ endTimeConfirm: function () {
+ if(this.data.isOnline){
+ this.setData({
+ isOnline: 0,
+ onlineEndTime: this.data.currentEndTime,
+ endTimePopShow: false
+ })
+ return;
+ }
+ const key = `schedule[${this.data.endTimeIndex}].end`;
+ this.setData({
+ [key]: this.data.currentEndTime,
+ endTimePopShow: false,
+ isOnline: 0
+ })
+ },
+ endTimeCancel: function () {
+ this.setData({
+ endTimePopShow: false,
+ isOnline: 0
+ })
+ },
+ selTop(e) {
+ this.setData({
+ topicSelIndex: e.currentTarget.dataset.index
+ })
+ },
+ publish() {
+ let postData = null;
+ if (this.data.type === 1) {
+ postData = {
+ "title": this.data.title,
+ "date": this.data.date,
+ "activity_type": 1,
+ "synopsis": this.data.desc,
+ "address": this.data.address,
+ "detail_address": this.data.addressName,
+ "longitude": this.data.longitude,
+ "latitude": this.data.latitude,
+ "poster": this.data.topicSelIndex,
+ "schedules": this.data.schedule
+ }
+ } else {
+ postData = {
+ "title": this.data.title,
+ "date": this.data.date,
+ "activity_type": 2,
+ "synopsis": this.data.desc,
+ "longitude": this.data.longitude,
+ "latitude": this.data.latitude,
+ "poster": this.data.topicSelIndex,
+ "schedules": this.data.schedule,
+ "start": this.data.onlineStartTime,
+ "end": this.data.onlineEndTime
+ }
+ }
+ if (!localMethods.validation(postData)) {
+ return;
+ }
+ remoteMethods.addEvents(postData, (res) => {
+ wx.redirectTo({
+ url: '/package-events/publish/success?type=2'
+ })
+ })
+ },
+ saveDraft() {
+ let postData = null;
+ if (this.data.type === 1) {
+ postData = {
+ "title": this.data.title,
+ "date": this.data.date,
+ "activity_type": 1,
+ "synopsis": this.data.desc,
+ "address": this.data.address,
+ "detail_address": this.data.addressName,
+ "longitude": this.data.longitude,
+ "latitude": this.data.latitude,
+ "poster": this.data.topicSelIndex,
+ "schedules": this.data.schedule
+ }
+ } else {
+ postData = {
+ "title": this.data.title,
+ "date": this.data.date,
+ "activity_type": 2,
+ "synopsis": this.data.desc,
+ "longitude": this.data.longitude,
+ "latitude": this.data.latitude,
+ "poster": this.data.topicSelIndex,
+ "schedules": this.data.schedule,
+ "start": this.data.onlineStartTime,
+ "end": this.data.onlineEndTime
+ }
+ }
+ if (!localMethods.validation(postData)) {
+ return;
+ }
+ remoteMethods.saveDraft(postData, () => {
+ wx.redirectTo({
+ url: '/package-events/publish/success?type=1'
+ })
+ })
+ },
+ cancelEditSchedule() {
+ wx.navigateBack();
+ },
+ editScheduleConfirm() {
+ let postData = null;
+ if (this.data.type === 1) {
+ postData = {
+ "title": this.data.title,
+ "date": this.data.date,
+ "activity_type": 1,
+ "synopsis": this.data.desc,
+ "address": this.data.address,
+ "detail_address": this.data.addressName,
+ "longitude": this.data.longitude,
+ "latitude": this.data.latitude,
+ "poster": this.data.topicSelIndex,
+ "schedules": this.data.schedule
+ }
+ } else {
+ postData = {
+ "title": this.data.title,
+ "date": this.data.date,
+ "activity_type": 2,
+ "synopsis": this.data.desc,
+ "longitude": this.data.longitude,
+ "latitude": this.data.latitude,
+ "poster": this.data.topicSelIndex,
+ "schedules": this.data.schedule,
+ "start": this.data.onlineStartTime,
+ "end": this.data.onlineEndTime
+ }
+ }
+ if (!localMethods.validation(postData)) {
+ return;
+ }
+ postData.schedules = JSON.stringify(this.data.schedule);
+ remoteMethods.saveDraft(postData, () => {
+ wx.redirectTo({
+ url: '/package-events/publish/success?type=3'
+ })
+ })
+ },
+ toPoster() {
+ const address = this.data.type == 1 ? this.data.addressName : '';
+ wx.navigateTo({
+ url: `/package-events/events/poster?title=${this.data.title}&date=${this.data.date}&address=${address}&poster=${this.data.topicSelIndex}`
+ })
+ }
+})
\ No newline at end of file
diff --git a/src/openeuler/package-events/publish/publish.json b/src/openeuler/package-events/publish/publish.json
new file mode 100644
index 0000000000000000000000000000000000000000..f1646976ee8ca776e89cea4ee65a5fe1beeda05c
--- /dev/null
+++ b/src/openeuler/package-events/publish/publish.json
@@ -0,0 +1,6 @@
+{
+ "usingComponents": {},
+ "navigationBarTitleText": "活动申请",
+ "navigationBarBackgroundColor": "#002fa7",
+ "navigationBarTextStyle": "white"
+}
\ No newline at end of file
diff --git a/src/openeuler/package-events/publish/publish.wxml b/src/openeuler/package-events/publish/publish.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..794847bbef1ca312828a027b0025271c9dc4afb9
--- /dev/null
+++ b/src/openeuler/package-events/publish/publish.wxml
@@ -0,0 +1,246 @@
+
+
+
+
+
+
+ 活动标题
+ *
+
+
+
+
+
+ 日期
+ *
+
+
+ {{date}}请选择日期
+
+
+
+
+ 活动类型
+
+
+
+ 线下meetup
+
+
+ 线上meetup
+
+
+
+
+
+
+ 活动时间
+ *
+
+
+ {{onlineStartTime||'请选择'}}
+ 至
+ {{onlineEndTime||'请选择'}}
+
+
+
+
+ 活动城市
+ *
+
+
+ {{address}}请选择活动地区
+
+
+
+
+ 具体地址
+ *
+
+
+
+
+
+
+
+
+ 活动需提前一天申请
+
+
+
+
+
+
+
+ 我们会根据您的开始和结束时间为您分配网络研讨会资源
+
+
+
+
+ 活动简介
+
+
+
+
+
+
+
+ 时间
+ *
+
+
+ {{item.start||'请选择'}}
+ 至
+ {{item.end||'请选择'}}
+
+
+
+
+ 议题
+ *
+
+
+
+
+
+
+
+
+
+
+
+
+ Name
+ *
+
+
+
+
+ Title
+
+
+
+
+ Mail
+ *
+
+ Mail
+
+
+
+
+ + 继续添加Speaker
+
+
+
+ + 继续添加日程
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ *
+ 号为必填项
+
+
+
+
+ 点击 【保存草稿】 后,您可以在“我的 > 我的活动 > 草稿箱”中查看此活动,并继续编辑
+
+
+
+ 点击 【申请发布】 后,你的活动将进入发布阶段,正式发布后,您仅能修改活动日程
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 选择所属SIG
+
+
+
+
+ {{item.group_name}}
+
+
+
+
+
+
+
+
+
+
+
+
+ 选择活动日期
+
+
+
+
+
+
+
+
+
+ 选择日程开始时间
+
+
+
+
+
+
+
+
+
+ 选择日程结束时间
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/openeuler/package-events/publish/publish.wxss b/src/openeuler/package-events/publish/publish.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..475b6191dafd87292c6a437f6704a663985cfcbb
--- /dev/null
+++ b/src/openeuler/package-events/publish/publish.wxss
@@ -0,0 +1,414 @@
+/* package-events/publish/publish.wxss */
+page {
+ background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHwAAAAeCAYAAADuInrvAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAACdSURBVGhD7dbBDYAwDAPAbsTYjFnEDn5YyT34WinWpT3nea9v0T9Q9qKyf9wKV7gVP/maI5xwwglfpkDhCh9z9Y05yGSVybMpfNn2UrjCvdKTK7Qti3DCCW9TmZyHcMIJT4pqyyKccMLbVCbnIZxwwpOi2rIIJ5zwNpXJeQgnnPCkqLYswgknvE1lch7CCSc8Kaoti3DCCW9TGZznA1f9oK8GgBpHAAAAAElFTkSuQmCC) no-repeat;
+ background-size: 100% 108rpx;
+ background-color: #f5f7fa !important;
+ padding: 0 30rpx;
+}
+
+.container {
+ padding: 30rpx 0 129rpx 0;
+}
+
+textarea {
+ height: 45rpx;
+ flex: 1;
+}
+
+input {
+ flex: 1;
+}
+
+.require {
+ color: #f76270;
+}
+
+.blue {
+ color: #002fa7;
+}
+
+.gray {
+ color: #c7cad0;
+}
+
+.placeholder {
+ color: #c7cad0;
+}
+
+.radio-class {
+ font-size: 28rpx;
+}
+
+.van-radio {
+ margin-right: 10rpx !important;
+}
+
+.van-radio__label {
+ margin-left: 5rpx !important;
+}
+
+.container .form .form-item {
+ padding: 0 30rpx;
+ background-color: #fff;
+ height: 108rpx;
+ color: #333;
+ font-size: 28rpx;
+ display: flex;
+ align-items: center;
+ justify-content: start;
+ border-bottom: 2rpx solid #f0f3f7;
+}
+
+.container .form > .form-item {
+ box-shadow: 0rpx 5rpx 15rpx 0rpx rgba(0, 47, 167, 0.1);
+ border-radius: 8rpx;
+}
+
+.container .form .form-wrapper {
+ box-shadow: 0rpx 5rpx 15rpx 0rpx rgba(0, 47, 167, 0.1);
+ border-radius: 8rpx;
+ background-color: #fff;
+ overflow: hidden;
+}
+
+.container .form .form-item .arrow {
+ flex: 1;
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+}
+
+.container .form .form-item .arrow .sel-data {
+ color: #6d7278;
+}
+
+.container .form .form-item .sel-time {
+ flex: 1;
+ color: #333;
+ display: flex;
+ align-items: center;
+ justify-content: start;
+}
+
+.container .form .form-item .sel-time .time {
+ color: #6d7278;
+ margin: 0 20rpx;
+ border: 1px solid #c7cad0;
+ background-color: #f0f3f7;
+ padding: 0 20rpx;
+ border-radius: 8rpx;
+}
+
+.container .form .form-item .sel-time .start-time {
+ margin-left: 0;
+}
+
+.container .form .form-item .label {
+ margin-right: 40rpx;
+ font-size: 34rpx;
+}
+
+.container .form .form-item input {
+ color: #6d7278;
+}
+
+.container .form .form-item .etherpad {
+ display: block;
+ color: #6d7278;
+ overflow-x: scroll;
+ flex: 1;
+}
+
+.container .form .form-item textarea {
+ color: #6d7278;
+}
+
+.container .form .form-item image {
+ width: 30rpx;
+ height: 30rpx;
+}
+
+.container .form .meeting-desc {
+ margin-top: 20rpx;
+ padding-top: 30rpx;
+ align-items: flex-start;
+ height: 244rpx;
+}
+
+.container .form .meeting-desc textarea {
+ height: 184rpx;
+ position: relative;
+}
+
+.container .form .meeting-desc textarea .hint {
+ position: absolute;
+ right: 0;
+ bottom: 0;
+ color: #c7cad0;
+ font-size: 28rpx;
+}
+
+.container .info {
+ font-size: 29rpx;
+ color: #6d7278;
+ margin-bottom: 60rpx;
+}
+
+.container .info view {
+ margin: 30rpx 0;
+}
+
+.container .info-online {
+ margin-bottom: 0;
+}
+
+.container .info view image {
+ width: 28rpx;
+ height: 28rpx;
+ margin-right: 15rpx;
+ vertical-align: middle;
+}
+
+.container .commit {
+ display: flex;
+ justify-content: space-between;
+ height: 90rpx;
+ font-size: 36rpx;
+}
+
+.container .commit button {
+ width: 210rpx;
+ text-align: center;
+ line-height: 90rpx;
+ height: 100%;
+ border-radius: 8rpx;
+ padding: 0;
+}
+
+.container .type5 button {
+ width: 330rpx;
+}
+
+.container .commit .meeting-btn {
+ color: #fff;
+ background-color: #002fa7;
+}
+
+.container .commit .meeting-reset {
+ color: #002fa7;
+ background-color: #fff;
+ border: 1px solid #002fa7;
+}
+
+.container .sig-pop-wrapper {
+ padding: 0 30rpx;
+}
+
+.container .sig-pop-wrapper .title {
+ margin: 30rpx 0 40rpx 0;
+ color: #222;
+ font-size: 36rpx;
+}
+
+.container .sig-pop-wrapper .item .radio {
+ flex-direction: row-reverse;
+ justify-content: space-between;
+}
+
+.container .sig-pop-wrapper .item .name {
+ font-size: 34rpx;
+ color: #6d7278;
+ width: 600rpx;
+}
+
+.container .sig-pop-wrapper .item {
+ height: 108rpx;
+ display: flex;
+ align-items: center;
+ border-bottom: 1px solid #f0f3f7;
+}
+
+.container .sig-pop-wrapper .item:last-child {
+ border: none;
+}
+
+.container .sig-pop-wrapper .btn-wrapper {
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+ height: 90rpx;
+ font-size: 36rpx;
+ margin: 60rpx 0;
+}
+
+.container .sig-pop-wrapper .btn-wrapper .confirm {
+ height: 100%;
+ width: 320rpx;
+ text-align: center;
+ line-height: 90rpx;
+ color: #fff;
+ background-color: #002fa7;
+}
+
+.container .sig-pop-wrapper .btn-wrapper .cancel {
+ height: 100%;
+ width: 320rpx;
+ text-align: center;
+ line-height: 90rpx;
+ color: #002fa7;
+ background-color: #fff;
+ border: 1px solid #002fa7;
+}
+
+.container .form .schedule {
+ margin-top: 20rpx;
+ border: 2rpx dashed #3265e8;
+}
+
+.container .form .schedule .form-item {
+ padding: 0 60rpx !important;
+}
+
+.container .form .schedule .speaker-del-wrapper {
+ justify-content: space-between;
+}
+
+.container .form .schedule .speaker-del-wrapper .del-btn image {
+ width: 30rpx;
+ height: 30rpx;
+}
+
+.container .form .schedule .form-item .label {
+ font-size: 30rpx;
+ color: #6d7278;
+}
+
+.container .form .schedule .header {
+ display: flex;
+ justify-content: space-between;
+ margin-top: 30rpx;
+}
+
+.container .form .schedule .header .left .icon {
+ padding: 0 12rpx;
+ height: 26rpx;
+ background-color: #3265e8;
+ color: #fff;
+ border-radius: 0 26rpx 26rpx 0;
+ margin-right: 20rpx;
+ font-size: 25rpx;
+}
+
+.container .form .schedule .header .left .title {
+ font-size: 34rpx;
+ line-height: 48rpx;
+ color: #333;
+}
+
+.container .form .schedule .header .del-btn {
+ margin-right: 34rpx;
+}
+
+.container .form .schedule .header .del-btn image {
+ height: 40rpx;
+ width: 40rpx;
+}
+
+.container .form .add-shedule {
+ height: 108rpx;
+ line-height: 108rpx;
+ text-align: center;
+ border: 2rpx dashed #3265e8;
+ box-shadow: 0rpx 5rpx 15rpx 0rpx rgba(0, 47, 167, 0.1);
+ border-radius: 8rpx;
+ color: #6d7278;
+ background-color: #fff;
+ margin-top: 20rpx;
+}
+
+.container .form .topic {
+ margin-top: 20rpx;
+ padding: 30rpx;
+ box-shadow: 0rpx 5rpx 15rpx 0rpx rgba(0, 47, 167, 0.1);
+ border-radius: 8rpx;
+ background-color: #fff;
+ font-size: 34rpx;
+ color: #333;
+}
+
+.container .form .topic .header {
+ margin-bottom: 30rpx;
+}
+
+.container .form .topic .img-wrapper {
+ margin-bottom: 30rpx;
+ display: flex;
+ justify-content: space-between;
+}
+
+.container .form .topic .mb0 {
+ margin-bottom: 0;
+}
+
+.container .form .topic .img-wrapper view {
+ width: 300rpx;
+ height: 150rpx;
+ border-radius: 8rpx;
+ overflow: hidden;
+ position: relative;
+}
+
+.container .form .topic .img-wrapper view .sel {
+ position: absolute;
+ top: 14rpx;
+ left: 14rpx;
+ width: 40rpx;
+ height: 40rpx;
+}
+
+.container .form .topic .img-wrapper view .img {
+ width: 300rpx;
+ height: 150rpx;
+}
+
+.container .relative {
+ position: relative;
+}
+
+.container .mask {
+ position: absolute;
+ top: 0;
+ left: 0;
+ width: 100%;
+ height: 100%;
+ background-color: #000;
+ opacity: 0.2;
+ z-index: 1000;
+}
+
+.container .speaker-wrapper {
+ border: 2rpx dashed #f9762d;
+ border-radius: 8rpx;
+ margin: 0 auto 20rpx;
+ width: 92%;
+}
+
+.container .speaker-wrapper .speaker-header {
+ font-size: 34rpx;
+}
+
+.container .form .speaker-wrapper .form-item {
+ padding: 0 30rpx !important;
+}
+
+.container .add-speaker {
+ border: 2rpx dashed #f9762d;
+ border-radius: 8rpx;
+ margin: 0 auto 30rpx;
+ width: 92%;
+ height: 65rpx;
+ text-align: center;
+ line-height: 65rpx;
+ color: #6d7278;
+ font-size: 28rpx;
+}
\ No newline at end of file
diff --git a/src/openeuler/package-events/publish/success.js b/src/openeuler/package-events/publish/success.js
new file mode 100644
index 0000000000000000000000000000000000000000..38f4ecd460eba4a0b1a62add64523985c249a923
--- /dev/null
+++ b/src/openeuler/package-events/publish/success.js
@@ -0,0 +1,42 @@
+// package-events/publish/success.js
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ type: 1,
+ typeCn: '',
+ typeDesc: ''
+ },
+
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad: function (options) {
+ if (options.type == 1) {
+ this.setData({
+ type: 1,
+ typeCn: '保存',
+ typeDesc: '您可以在“我的 > 我的活动 > 草稿箱”查看此活动并继续修改内容'
+ })
+ } else if(options.type == 2) {
+ this.setData({
+ type: 2,
+ typeCn: '申请',
+ typeDesc: '审核通过后您的活动将在openEuler官网和小程序上发布,请耐心等待,您可以在“我的 > 我的活动 > 发布中”查看此活动'
+ })
+ } else if(options.type == 3) {
+ this.setData({
+ type: 2,
+ typeCn: '修改',
+ typeDesc: '您可以在“我的 > 我的活动 > 已发布”查看此活动并继续修改日程'
+ })
+ }
+ },
+ toList() {
+ wx.switchTab({
+ url: '/pages/events/events'
+ })
+ }
+})
\ No newline at end of file
diff --git a/src/openeuler/package-events/publish/success.json b/src/openeuler/package-events/publish/success.json
new file mode 100644
index 0000000000000000000000000000000000000000..e6aee5ddb43a864944f5ee94cd624890c055a864
--- /dev/null
+++ b/src/openeuler/package-events/publish/success.json
@@ -0,0 +1,4 @@
+{
+ "usingComponents": {},
+ "navigationBarTitleText": "活动申请"
+}
\ No newline at end of file
diff --git a/src/mindspore/package-events/sign-up/save-success.wxml b/src/openeuler/package-events/publish/success.wxml
similarity index 40%
rename from src/mindspore/package-events/sign-up/save-success.wxml
rename to src/openeuler/package-events/publish/success.wxml
index 80938f9a8a95208ea79ace502d839a04be5f5622..a914b106ff106e798d029730379b472dcf9f3d95 100644
--- a/src/mindspore/package-events/sign-up/save-success.wxml
+++ b/src/openeuler/package-events/publish/success.wxml
@@ -1,8 +1,9 @@
-
-
-
- 保存成功
- 快去相册看看吧!
-
-
-
+
+
+
+
+ {{typeCn}}成功!
+ {{typeDesc}}
+
+
+
diff --git a/src/mindspore/package-events/sign-up/save-success.wxss b/src/openeuler/package-events/publish/success.wxss
similarity index 91%
rename from src/mindspore/package-events/sign-up/save-success.wxss
rename to src/openeuler/package-events/publish/success.wxss
index 5b75c4e2d79546346b71c10953937285ff9da340..06442e89f1b62d6f36f8ef6c96eabb62978b1e47 100644
--- a/src/mindspore/package-events/sign-up/save-success.wxss
+++ b/src/openeuler/package-events/publish/success.wxss
@@ -1,46 +1,46 @@
-/* package-events/publish/success.wxss */
-page {
- background-color: #f5f7fa !important;
-}
-
-.container {
- height: 100%;
- padding: 0 72rpx;
-}
-
-.container .suc-wrapper {
- margin-top: 423rpx;
- display: flex;
- flex-direction: column;
- align-items: center;
- justify-content: center;
-}
-
-.container .suc-wrapper image {
- width: 234rpx;
- height: 218rpx;
-}
-
-.container .suc-wrapper text {
- text-align: center;
- margin-top: 20rpx;
- font-size: 34rpx;
- color: #333;
-}
-
-.container .suc-wrapper text:last-child {
- font-size: 28rpx;
- color: #6d7278;
-}
-
-.container button {
- margin-top: 186rpx;
- width: 500rpx;
- height: 90rpx;
- line-height: 90rpx;
- text-align: center;
- font-size: 36rpx;
- color: #fff;
- background-color: #40ADFF;
- border-radius: 8rpx;
+/* package-events/publish/success.wxss */
+page {
+ background-color: #f5f7fa !important;
+}
+
+.container {
+ height: 100%;
+ padding: 0 72rpx;
+}
+
+.container .suc-wrapper {
+ margin-top: 423rpx;
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ justify-content: center;
+}
+
+.container .suc-wrapper image {
+ width: 234rpx;
+ height: 218rpx;
+}
+
+.container .suc-wrapper text {
+ text-align: center;
+ margin-top: 20rpx;
+ font-size: 34rpx;
+ color: #333;
+}
+
+.container .suc-wrapper text:last-child {
+ font-size: 28rpx;
+ color: #6d7278;
+}
+
+.container button {
+ margin-top: 186rpx;
+ width: 500rpx;
+ height: 90rpx;
+ line-height: 90rpx;
+ text-align: center;
+ font-size: 36rpx;
+ color: #fff;
+ background-color: #002fa7;
+ border-radius: 8rpx;
}
\ No newline at end of file
diff --git a/src/mindspore/package-events/sign-up/sign-up-success.js b/src/openeuler/package-events/sign-up/sign-up-success.js
similarity index 88%
rename from src/mindspore/package-events/sign-up/sign-up-success.js
rename to src/openeuler/package-events/sign-up/sign-up-success.js
index fe491d85d84d91fea7b97ed0f5d3905d5569e76e..e120e3de0248514ce06b8c3259fc23bdd9a581f2 100644
--- a/src/mindspore/package-events/sign-up/sign-up-success.js
+++ b/src/openeuler/package-events/sign-up/sign-up-success.js
@@ -1,100 +1,102 @@
-// package-events/sign-up/sign-up-success.js
-const appAjax = require('./../../utils/app-ajax');
-const {
- wxml,
- style
-} = require('./wxml-to-canvas.js');
-let that = null;
-
-let remoteMethods = {
- getDetail: function (_callback) {
- let service = 'EVENT_DETAIL';
- appAjax.postJson({
- autoShowWait: true,
- type: 'GET',
- service,
- otherParams: {
- id: that.data.id
- },
- success: function (ret) {
- _callback && _callback(ret);
- }
- });
- }
-}
-Page({
-
- /**
- * 页面的初始数据
- */
- data: {
- poster: 1,
- title: '',
- name: '',
- tel: '',
- id: '',
- qrcode: ''
- },
-
- /**
- * 生命周期函数--监听页面加载
- */
- onLoad: function (options) {
- that = this;
- this.widget = this.selectComponent('.widget');
- this.setData({
- poster: decodeURIComponent(options.poster),
- title: decodeURIComponent(options.title),
- name: decodeURIComponent(options.name),
- tel: decodeURIComponent(options.tel),
- id: decodeURIComponent(options.id)
- })
- remoteMethods.getDetail((res) => {
- this.setData({
- qrcode: res.wx_code
- })
- })
-
- },
- saveToAlbum() {
- wx.showLoading({
- title : '保存中',
- mask: true
- });
- const p1 = this.widget.renderToCanvas({
- wxml: wxml({
- title: that.data.title,
- name: that.data.name,
- tel: that.data.tel,
- poster: that.data.poster,
- qrcode: that.data.qrcode
- }),
- style: style()
- })
- p1.then(() => {
- const p2 = this.widget.canvasToTempFilePath();
- p2.then(res => {
- wx.getSetting({
- success() {
- wx.saveImageToPhotosAlbum({
- filePath: res.tempFilePath,
- success: function () {
- wx.navigateTo({
- url: './save-success',
- })
- },
- fail: function (err) {
- console.log(err);
- },
- complete(res) {
- wx.hideLoading();
- console.log(res);
- }
- });
- }
- });
- })
- })
-
- }
+// package-events/sign-up/sign-up-success.js
+const appAjax = require('./../../utils/app-ajax');
+const {
+ wxml,
+ style
+} = require('./wxml-to-canvas.js');
+let that = null;
+
+let remoteMethods = {
+ getDetail: function (_callback) {
+ let service = 'EVENT_DETAIL';
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'GET',
+ service,
+ otherParams: {
+ id: that.data.id
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ }
+}
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ poster: 1,
+ title: '',
+ name: '',
+ tel: '',
+ id: '',
+ qrcode: ''
+ },
+
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad: function (options) {
+ that = this;
+ this.widget = this.selectComponent('.widget');
+ this.setData({
+ poster: decodeURIComponent(options.poster),
+ title: decodeURIComponent(options.title),
+ name: decodeURIComponent(options.name),
+ tel: decodeURIComponent(options.tel),
+ id: decodeURIComponent(options.id)
+ })
+ remoteMethods.getDetail((res) => {
+ this.setData({
+ qrcode: res.wx_code
+ })
+ })
+
+ },
+ saveToAlbum() {
+ wx.showLoading({
+ title : '保存中',
+ mask: true
+ });
+ const p1 = this.widget.renderToCanvas({
+ wxml: wxml({
+ title: that.data.title,
+ name: that.data.name,
+ tel: that.data.tel,
+ poster: that.data.poster,
+ qrcode: that.data.qrcode
+ }),
+ style: style()
+ })
+ p1.then(() => {
+ const p2 = this.widget.canvasToTempFilePath();
+ p2.then(res => {
+ wx.getSetting({
+ success() {
+ wx.saveImageToPhotosAlbum({
+ filePath: res.tempFilePath,
+ success: function () {
+ wx.showToast({
+ title: "保存成功",
+ icon: "success",
+ duration: 2000
+ });
+ },
+ fail: function (err) {
+ console.log(err);
+ },
+ complete(res) {
+ wx.hideLoading();
+ console.log(res);
+ }
+ });
+ }
+ });
+ })
+ })
+
+ }
})
\ No newline at end of file
diff --git a/src/mindspore/package-events/sign-up/sign-up-success.json b/src/openeuler/package-events/sign-up/sign-up-success.json
similarity index 95%
rename from src/mindspore/package-events/sign-up/sign-up-success.json
rename to src/openeuler/package-events/sign-up/sign-up-success.json
index c30d35786814f385ca77a5a958e102705a38abd4..00969ec64219814b75c540fd2ba115840d266d67 100644
--- a/src/mindspore/package-events/sign-up/sign-up-success.json
+++ b/src/openeuler/package-events/sign-up/sign-up-success.json
@@ -1,4 +1,4 @@
-{
- "usingComponents": {},
- "navigationBarTitleText": "活动报名"
+{
+ "usingComponents": {},
+ "navigationBarTitleText": "活动报名"
}
\ No newline at end of file
diff --git a/src/mindspore/package-events/sign-up/sign-up-success.wxml b/src/openeuler/package-events/sign-up/sign-up-success.wxml
similarity index 66%
rename from src/mindspore/package-events/sign-up/sign-up-success.wxml
rename to src/openeuler/package-events/sign-up/sign-up-success.wxml
index 31f79f3d6debb1f99d77d1074c9a002662a686c0..35e64f167777903b80c0acb7a6bdb3ec532a8223 100644
--- a/src/mindspore/package-events/sign-up/sign-up-success.wxml
+++ b/src/openeuler/package-events/sign-up/sign-up-success.wxml
@@ -1,15 +1,16 @@
-
-
-
- 报名成功!
- {{title}}
- 您的参会凭证
- 姓名: {{name}}
- 手机: {{tel}}
-
-
-
-
-
-
-
+
+
+
+ openEuler
+ 报名成功!
+ {{title}}
+ 您的参会凭证
+ 姓名: {{name}}
+ 手机: {{tel}}
+
+
+
+
+
+
+
diff --git a/src/mindspore/package-events/sign-up/sign-up-success.wxss b/src/openeuler/package-events/sign-up/sign-up-success.wxss
similarity index 60%
rename from src/mindspore/package-events/sign-up/sign-up-success.wxss
rename to src/openeuler/package-events/sign-up/sign-up-success.wxss
index 02c8ff2c461db8fb19baee3518f12cbe6e982fbf..c1664a382c853fe0020ef181949613a0babcb2b2 100644
--- a/src/mindspore/package-events/sign-up/sign-up-success.wxss
+++ b/src/openeuler/package-events/sign-up/sign-up-success.wxss
@@ -1,94 +1,92 @@
-/* package-events/sign-up/sign-up-success.wxss */
-.container {
- height: 1502rpx;
- background-size: 100% 100% !important;
- display: flex;
- flex-direction: column;
- align-items: center;
- overflow: hidden;
-}
-
-.bg1 {
- background: url(https://community-meeting-minutes.obs.cn-north-4.myhuaweicloud.com:443/imgs/sign-up/bg1.png) no-repeat;
-}
-
-.bg2 {
- background: url(https://community-meeting-minutes.obs.cn-north-4.myhuaweicloud.com:443/imgs/sign-up/bg2.png) no-repeat;
-}
-
-.bg3 {
- background: url(https://community-meeting-minutes.obs.cn-north-4.myhuaweicloud.com:443/imgs/sign-up/bg3.png) no-repeat;
-}
-
-.bg4 {
- background: url(https://community-meeting-minutes.obs.cn-north-4.myhuaweicloud.com:443/imgs/sign-up/bg4.png) no-repeat;
-}
-
-.container .avatar {
- margin-top: 188rpx;
- width: 300rpx;
- height: 100rpx;
-}
-
-.container .open-euler {
- margin-top: 20rpx;
- color: #333;
- font-size: 34rpx;
- line-height: 48rpx;
-}
-
-.container .success-text {
- color: #333;
- font-size: 40rpx;
- margin-top: 130rpx;
- font-weight: 500;
-}
-
-.container .title {
- color: #40ADFF;
- font-size: 34rpx;
- margin-top: 30rpx;
-}
-
-.container .voucher {
- color: #333;
- font-size: 34rpx;
- margin-top: 30rpx;
-}
-
-.container .name {
- margin-top: 60rpx;
- font-size: 34rpx;
-}
-.name text {
- color: #40ADFF;
-}
-
-.tel text {
- color: #40ADFF;
-}
-.container .tel {
- margin-top: 30rpx;
- font-size: 34rpx;
-}
-
-.container button {
- margin-top: 128rpx;
- width: 500rpx;
- height: 90rpx;
- line-height: 90rpx;
- border-radius: 8rpx;
- background-color: #40ADFF;
- text-align: center;
- color: #fff;
-}
-.container .qrcode {
- margin-top: 60rpx;
- width: 309rpx;
- height: 309rpx;
- border-radius: 50%;
-}
-.canvas {
- height: 0;
- overflow: hidden;
+/* package-events/sign-up/sign-up-success.wxss */
+.container {
+ height: 1502rpx;
+ background-size: 100% 100% !important;
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ overflow: hidden;
+}
+
+.bg1 {
+ background: url(https://openeuler-website.obs.ap-southeast-1.myhuaweicloud.com/sign-up/bg1.png) no-repeat;
+}
+
+.bg2 {
+ background: url(https://openeuler-website.obs.ap-southeast-1.myhuaweicloud.com/sign-up/bg2.png) no-repeat;
+}
+
+.bg3 {
+ background: url(https://openeuler-website.obs.ap-southeast-1.myhuaweicloud.com/sign-up/bg3.png) no-repeat;
+}
+
+.bg4 {
+ background: url(https://openeuler-website.obs.ap-southeast-1.myhuaweicloud.com/sign-up/bg4.png) no-repeat;
+}
+
+.container .avatar {
+ margin-top: 188rpx;
+ width: 128rpx;
+ height: 128rpx;
+ border-radius: 100%;
+}
+
+.container .open-euler {
+ margin-top: 20rpx;
+ color: #333;
+ font-size: 34rpx;
+ line-height: 48rpx;
+}
+
+.container .success-text {
+ color: #333;
+ font-size: 40rpx;
+ margin-top: 60rpx;
+ font-weight: 500;
+}
+
+.container .title {
+ color: #002fa7;
+ font-size: 34rpx;
+ margin-top: 30rpx;
+}
+
+.container .voucher {
+ color: #333;
+ font-size: 34rpx;
+ margin-top: 30rpx;
+}
+
+.container .name {
+ margin-top: 128rpx;
+ font-size: 34rpx;
+ color: #002fa7;
+}
+
+.container .tel {
+ margin-top: 30rpx;
+ font-size: 34rpx;
+ color: #002fa7;
+}
+
+.container button {
+ margin-top: 27rpx;
+ width: 500rpx;
+ height: 90rpx;
+ line-height: 90rpx;
+ border-radius: 8rpx;
+ background-color: #002fa7;
+ text-align: center;
+ color: #fff;
+}
+
+.container .qrcode {
+ width: 309rpx;
+ height: 309rpx;
+ margin-top: 60rpx;
+}
+
+.canvas {
+ height: 0;
+ overflow: hidden;
}
\ No newline at end of file
diff --git a/src/openeuler/package-events/sign-up/sign-up.js b/src/openeuler/package-events/sign-up/sign-up.js
new file mode 100644
index 0000000000000000000000000000000000000000..d061f7362c444690c986d2c5580e84b2f3759b7c
--- /dev/null
+++ b/src/openeuler/package-events/sign-up/sign-up.js
@@ -0,0 +1,182 @@
+// package-events/sign-up/sign-up.js
+const appAjax = require('./../../utils/app-ajax');
+const sessionUtil = require("../../utils/app-session.js");
+const validationConfig = require('./../../config/field-validate-rules');
+
+let that = null;
+
+let remoteMethods = {
+ getUserInfo: function (_callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'GET',
+ service: 'APPLICANT_INFO',
+ otherParams: {
+ id: sessionUtil.getUserInfoByKey('userId')
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ },
+ signUp: function (postData, _callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'POST',
+ data: postData,
+ service: 'SAVE_SIGNUP_INFO',
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ }
+}
+
+let localMethods = {
+ validation() {
+ if (!that.data.name) {
+ this.toast('请输入您的姓名');
+ return;
+ }
+ if (!validationConfig.phone.regex.test(that.data.tel)) {
+ this.toast('请输入正确的手机号码');
+ return;
+ }
+ if (!validationConfig.email.regex.test(that.data.mail)) {
+ this.toast('请输入正确的邮箱地址');
+ return;
+ }
+ if (!that.data.enterprise) {
+ this.toast('请输入您的工作单位名称');
+ return;
+ }
+ return true;
+ },
+ toast(msg) {
+ wx.showToast({
+ title: msg,
+ icon: "none",
+ duration: 2000
+ });
+ }
+}
+
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ name: '',
+ tel: '',
+ mail: '',
+ enterprise: '',
+ occupation: '',
+ gitee: '',
+ id: '',
+ eventTitle: '',
+ poster: 1,
+ tips: 'Gitee ID为https://gitee.com/{{gitee_id}} 中的gitee_id'
+ },
+
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad: function (options) {
+ that = this;
+ this.setData({
+ id: options.id,
+ eventTitle: options.title,
+ poster: options.poster,
+ isScan: options.isScan || 0
+ })
+ },
+
+ /**
+ * 生命周期函数--监听页面显示
+ */
+ onShow: function () {
+ remoteMethods.getUserInfo(res => {
+ this.setData({
+ name: res.name || '',
+ tel: res.telephone || '',
+ mail: res.email || '',
+ enterprise: res.company || '',
+ occupation: res.profession || '',
+ gitee: res.gitee_name || ''
+ })
+ })
+ },
+ nameInput(e) {
+ this.setData({
+ name: e.detail.value
+ })
+ },
+ telInput(e) {
+ this.setData({
+ tel: e.detail.value
+ })
+ },
+ mailInput(e) {
+ this.setData({
+ mail: e.detail.value
+ })
+ },
+ enterpriseInput(e) {
+ this.setData({
+ enterprise: e.detail.value
+ })
+ },
+ occupationInput(e) {
+ this.setData({
+ occupation: e.detail.value
+ })
+ },
+ giteeInput(e) {
+ this.setData({
+ gitee: e.detail.value
+ })
+ },
+ signUp() {
+ if (!localMethods.validation()) {
+ return;
+ }
+ const postData = {
+ company: this.data.enterprise,
+ email: this.data.mail,
+ gitee_name: this.data.gitee,
+ name: this.data.name,
+ profession: this.data.occupation,
+ telephone: this.data.tel,
+ activity: this.data.id
+ }
+ remoteMethods.signUp(postData, (res) => {
+ if (res.code === 400) {
+ wx.showToast({
+ title: res.msg,
+ icon : "none",
+ duration: 2000
+ });
+ return;
+ }
+ if (this.data.isScan) {
+ wx.redirectTo({
+ url: `/package-events/events/sign-success?id=${this.data.id}`
+ })
+ return;
+ }
+ wx.redirectTo({
+ url: `/package-events/sign-up/sign-up-success?name=${encodeURIComponent(this.data.name)}&title=${encodeURIComponent(this.data.eventTitle)}&tel=${encodeURIComponent(this.data.tel)}&poster=${encodeURIComponent(this.data.poster)}&id=${encodeURIComponent(this.data.id)}`
+ })
+ })
+ },
+ back() {
+ if (this.data.isScan) {
+ wx.switchTab({
+ url: '/pages/events/events'
+ })
+ return;
+ }
+ wx.navigateBack();
+ }
+})
\ No newline at end of file
diff --git a/src/mindspore/package-events/sign-up/sign-up.json b/src/openeuler/package-events/sign-up/sign-up.json
similarity index 68%
rename from src/mindspore/package-events/sign-up/sign-up.json
rename to src/openeuler/package-events/sign-up/sign-up.json
index 17a91848596dc0ff6ccd9f665b9ee41737d37bec..c8296ff7bad4dd9c8d71d90cc383f9672b21b5ff 100644
--- a/src/mindspore/package-events/sign-up/sign-up.json
+++ b/src/openeuler/package-events/sign-up/sign-up.json
@@ -1,6 +1,6 @@
-{
- "usingComponents": {},
- "navigationBarTitleText": "活动报名",
- "navigationBarBackgroundColor": "#40ADFF",
- "navigationBarTextStyle": "white"
+{
+ "usingComponents": {},
+ "navigationBarTitleText": "活动报名",
+ "navigationBarBackgroundColor": "#002fa7",
+ "navigationBarTextStyle": "white"
}
\ No newline at end of file
diff --git a/src/openeuler/package-events/sign-up/sign-up.wxml b/src/openeuler/package-events/sign-up/sign-up.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..b89e89345f77c532268ca7b1ac9d5131c9ff85be
--- /dev/null
+++ b/src/openeuler/package-events/sign-up/sign-up.wxml
@@ -0,0 +1,64 @@
+
+
+
+
+
+
+ 您的姓名
+ *
+
+
+
+
+
+ 您的手机
+ *
+
+
+
+
+
+ 您的邮箱
+ *
+
+
+
+
+
+ 您的单位
+ *
+
+
+
+
+
+ 您的职业
+
+
+
+
+
+ 您的Gitee ID
+
+
+
+
+
+
+
+
+
+ *
+ 号为必填项;
+
+
+
+
+ {{tips}}
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/mindspore/package-events/sign-up/sign-up.wxss b/src/openeuler/package-events/sign-up/sign-up.wxss
similarity index 60%
rename from src/mindspore/package-events/sign-up/sign-up.wxss
rename to src/openeuler/package-events/sign-up/sign-up.wxss
index a3d40aeb81d1ac321b6e4b3b1a68347da0d0c84f..9e4650cb85052afec1ac8188b0ddbcad3dc25ae0 100644
--- a/src/mindspore/package-events/sign-up/sign-up.wxss
+++ b/src/openeuler/package-events/sign-up/sign-up.wxss
@@ -1,136 +1,100 @@
-/* package-events/sign-up/sign-up.wxss */
-page {
- background: url(data:image/jpg;base64,iVBORw0KGgoAAAANSUhEUgAAAK8AAAAlCAYAAAA0ubnLAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAAEnQAABJ0Ad5mH3gAAAB5SURBVHhe7dJBDQAgAAMxpGEYjUPHJX3UQc99GxTJS5a8ZMlLlrxkyUuWvGTJS5a8ZMlLlrxkyUuWvGTJS5a8ZMlLlrxkyUuWvGTJS5a8ZMlLlrxkyUuWvGTJS5a8ZMlLlrxkyUuWvGTJS5a8ZMlLlrxkyUuWvERtH4Xg0iHi5cqkAAAAAElFTkSuQmCC) no-repeat;
- background-size: 100% 108rpx;
- background-color: #f5f7fa !important;
- padding: 0 30rpx;
-}
-
-.container {
- padding: 30rpx 0 129rpx 0;
-}
-
-.container .form .form-item image {
- width: 30rpx;
- height: 30rpx;
-}
-
-.container .form .form-item .arrow {
- flex: 1;
- display: flex;
- justify-content: space-between;
- align-items: center;
-}
-
-.container .form .form-item .arrow .sel-data {
- color: #6d7278;
-}
-
-input {
- flex: 1;
-}
-
-.require {
- color: #f76270;
-}
-
-.placeholder {
- color: #c7cad0;
-}
-
-.container .form .form-item {
- padding: 0 30rpx;
- background-color: #fff;
- height: 108rpx;
- color: #333;
- font-size: 28rpx;
- display: flex;
- align-items: center;
- justify-content: start;
- border-bottom: 2rpx solid #f0f3f7;
-}
-
-.container .form > .form-item {
- box-shadow: 0rpx 5rpx 15rpx 0rpx rgba(0, 47, 167, 0.1);
- border-radius: 8rpx;
-}
-
-.container .form .form-wrapper {
- box-shadow: 0rpx 5rpx 15rpx 0rpx rgba(0, 47, 167, 0.1);
- border-radius: 8rpx;
- background-color: #fff;
- overflow: hidden;
-}
-
-.container .form .form-item .label {
- margin-right: 40rpx;
- font-size: 34rpx;
-}
-
-.container .form .form-item input {
- color: #6d7278;
-}
-
-.container .info {
- font-size: 29rpx;
- color: #6d7278;
- margin-bottom: 60rpx;
-}
-
-.container .info view {
- margin: 30rpx 0;
-}
-
-.container .info view image {
- width: 28rpx;
- height: 28rpx;
- margin-right: 15rpx;
- vertical-align: middle;
-}
-
-.container .commit {
- display: flex;
- justify-content: space-between;
- height: 90rpx;
- font-size: 36rpx;
-}
-
-.container .commit button {
- width: 330rpx;
- text-align: center;
- line-height: 90rpx;
- height: 100%;
- border-radius: 8rpx;
- padding: 0;
-}
-
-.container .commit .meeting-btn {
- color: #fff;
- background-color: #40ADFF;
-}
-
-.container .form .form-item .career {
- position: relative;
- justify-content: start;
-}
-
-.career image {
- position: absolute;
- right: 0;
-}
-
-.container .commit .meeting-reset {
- color: #40ADFF;
- background-color: #fff;
- border: 1px solid #40ADFF;
-}
-
-.checked-item {
- margin-right: 15rpx;
- padding: 6rpx 14rpx;
- color: #6189FF;
- font-size: 24rpx;
- border: 1px solid #6189FF;
- border-radius: 19px;
- background: rgba(97, 137, 255, 0.3);
+/* package-events/sign-up/sign-up.wxss */
+page {
+ background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHwAAAAeCAYAAADuInrvAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAACdSURBVGhD7dbBDYAwDAPAbsTYjFnEDn5YyT34WinWpT3nea9v0T9Q9qKyf9wKV7gVP/maI5xwwglfpkDhCh9z9Y05yGSVybMpfNn2UrjCvdKTK7Qti3DCCW9TmZyHcMIJT4pqyyKccMLbVCbnIZxwwpOi2rIIJ5zwNpXJeQgnnPCkqLYswgknvE1lch7CCSc8Kaoti3DCCW9TGZznA1f9oK8GgBpHAAAAAElFTkSuQmCC) no-repeat;
+ background-size: 100% 108rpx;
+ background-color: #f5f7fa !important;
+ padding: 0 30rpx;
+}
+
+.container {
+ padding: 30rpx 0 129rpx 0;
+}
+
+input {
+ flex: 1;
+}
+
+.require {
+ color: #f76270;
+}
+
+.placeholder {
+ color: #c7cad0;
+}
+
+.container .form .form-item {
+ padding: 0 30rpx;
+ background-color: #fff;
+ height: 108rpx;
+ color: #333;
+ font-size: 28rpx;
+ display: flex;
+ align-items: center;
+ justify-content: start;
+ border-bottom: 2rpx solid #f0f3f7;
+}
+
+.container .form > .form-item {
+ box-shadow: 0rpx 5rpx 15rpx 0rpx rgba(0, 47, 167, 0.1);
+ border-radius: 8rpx;
+}
+
+.container .form .form-wrapper {
+ box-shadow: 0rpx 5rpx 15rpx 0rpx rgba(0, 47, 167, 0.1);
+ border-radius: 8rpx;
+ background-color: #fff;
+ overflow: hidden;
+}
+
+.container .form .form-item .label {
+ margin-right: 40rpx;
+ font-size: 34rpx;
+}
+
+.container .form .form-item input {
+ color: #6d7278;
+}
+
+.container .info {
+ font-size: 29rpx;
+ color: #6d7278;
+ margin-bottom: 60rpx;
+}
+
+.container .info view {
+ margin: 30rpx 0;
+}
+
+.container .info view image {
+ width: 28rpx;
+ height: 28rpx;
+ margin-right: 15rpx;
+ vertical-align: middle;
+}
+
+.container .commit {
+ display: flex;
+ justify-content: space-between;
+ height: 90rpx;
+ font-size: 36rpx;
+}
+
+.container .commit button {
+ width: 330rpx;
+ text-align: center;
+ line-height: 90rpx;
+ height: 100%;
+ border-radius: 8rpx;
+ padding: 0;
+}
+
+.container .commit .meeting-btn {
+ color: #fff;
+ background-color: #002fa7;
+}
+
+.container .commit .meeting-reset {
+ color: #002fa7;
+ background-color: #fff;
+ border: 1px solid #002fa7;
}
\ No newline at end of file
diff --git a/src/openeuler/package-events/sign-up/wxml-to-canvas.js b/src/openeuler/package-events/sign-up/wxml-to-canvas.js
new file mode 100644
index 0000000000000000000000000000000000000000..40849982bf8db33d3fcddd06f6a33742450d8ae1
--- /dev/null
+++ b/src/openeuler/package-events/sign-up/wxml-to-canvas.js
@@ -0,0 +1,106 @@
+const wxml = (data) => {
+ return `
+
+
+
+
+ openEuler
+ 报名成功!
+ ${data.title}
+ 您的参会凭证
+ 姓名: ${data.name}
+ 手机: ${data.tel}
+
+
+
+ `
+}
+
+const style = () => {
+ return {
+ container: {
+ width: 375,
+ height: 750,
+ flexDirection: 'column',
+ alignItems: 'center'
+ },
+ absolute: {
+ width: 375,
+ height: 750,
+ flexDirection: 'column',
+ alignItems: 'center'
+ },
+ avatar: {
+ marginTop: 110,
+ width: 64,
+ height: 64
+ },
+ openEuler: {
+ marginTop: 10,
+ color: '#333333',
+ fontSize: 17,
+ lineHeight: 24,
+ height: 24,
+ width: 100,
+ textAlign: 'center'
+ },
+ successText: {
+ color: '#333333',
+ fontSize: 20,
+ marginTop: 30,
+ fontWeight: 500,
+ height: 28,
+ width: 100,
+ textAlign: 'center'
+ },
+ title: {
+ color: '#002fa7',
+ fontSize: 17,
+ marginTop: 15,
+ height: 25,
+ width: 300,
+ textAlign: 'center'
+ },
+ voucher: {
+ color: '#333333',
+ fontSize: 17,
+ marginTop: 15,
+ height: 25,
+ width: 300,
+ textAlign: 'center'
+ },
+ name: {
+ marginTop: 64,
+ fontSize: 17,
+ color: '#002fa7',
+ height: 25,
+ width: 300,
+ textAlign: 'center'
+ },
+ tel: {
+ marginTop: 15,
+ fontSize: 17,
+ color: '#002fa7',
+ height: 25,
+ width: 350,
+ textAlign: 'center'
+ },
+ qrcode: {
+ marginTop: 30,
+ height: 150,
+ width: 150
+ },
+ bgImg: {
+ position: 'absolute',
+ width: 375,
+ height: 750,
+ top: 0,
+ left: 0
+ }
+ }
+}
+
+module.exports = {
+ wxml,
+ style
+}
\ No newline at end of file
diff --git a/src/openeuler/package-meeting/meeting/detail.js b/src/openeuler/package-meeting/meeting/detail.js
new file mode 100644
index 0000000000000000000000000000000000000000..350259c923c31301ad88739a291508acd11c44bc
--- /dev/null
+++ b/src/openeuler/package-meeting/meeting/detail.js
@@ -0,0 +1,122 @@
+// pages/meeting/detail.js
+var appAjax = require('./../../utils/app-ajax');
+const sessionUtil = require('../../utils/app-session.js');
+let remoteMethods = {
+ getMeetingDetail: function (id, _callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'GET',
+ service: 'GET_MEETING_DETAIL',
+ otherParams: {
+ id: id,
+ },
+ // headers: {
+ // Authorization: '',
+ // },
+ success: function (ret) {
+ _callback && _callback(ret);
+ },
+ });
+ },
+ collect: function (id, _callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'POST',
+ service: 'COLLECT',
+ data: {
+ meeting: id,
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ },
+ });
+ },
+ uncollect: function (id, _callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'DELETE',
+ service: 'UNCOLLECT',
+ otherParams: {
+ id: id,
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ },
+ });
+ },
+};
+Page({
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ id: '',
+ info: {},
+ collection_id: null
+ },
+
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad: function (options) {
+ this.setData({
+ id: options.id
+ });
+ },
+ copy: function (e) {
+ wx.setClipboardData({
+ data: e.currentTarget.dataset.copy,
+ success: function () {},
+ });
+ },
+ /**
+ * 生命周期函数--监听页面显示
+ */
+ onShow: function () {
+ let that = this;
+ remoteMethods.getMeetingDetail(this.data.id, function (data) {
+ if (data) {
+ that.setData({
+ info: data,
+ collection_id: data.collection_id || null
+ });
+ }
+ });
+ },
+
+ onShareAppMessage: function () {
+ return {
+ title: '会议详情',
+ path: `/package-meeting/meeting/detail?id=${this.data.id}`,
+ };
+ },
+ collect: function () {
+ let that = this
+ if (!sessionUtil.getUserInfoByKey('access')) {
+ wx.navigateTo({
+ url: '/pages/auth/auth',
+ });
+ return;
+ }
+ if (this.data.collection_id != null) {
+ remoteMethods.uncollect(this.data.collection_id, function (res) {
+ that.setData({
+ collection_id: null
+ })
+ });
+ } else {
+ wx.requestSubscribeMessage({
+ tmplIds: ['2xSske0tAcOVKNG9EpBjlb1I-cjPWSZrpwPDTgqAmWI', 'UpxRbZf8Z9QiEPlZeRCgp_MKvvqHlo6tcToY8fToK50'],
+ success(res) {
+ remoteMethods.collect(that.data.id, function (res) {
+ if (res.code == 201) {
+ that.setData({
+ collection_id: res.collection_id || ''
+ })
+ }
+ })
+ }
+ })
+ }
+ },
+});
\ No newline at end of file
diff --git a/src/openeuler/package-meeting/meeting/detail.json b/src/openeuler/package-meeting/meeting/detail.json
new file mode 100644
index 0000000000000000000000000000000000000000..68c6372334f09c64599297d5c88f67b2d6819c6a
--- /dev/null
+++ b/src/openeuler/package-meeting/meeting/detail.json
@@ -0,0 +1,5 @@
+{
+ "navigationBarTitleText": "会议详情",
+ "navigationBarBackgroundColor": "#002fa7",
+ "navigationBarTextStyle": "white"
+}
\ No newline at end of file
diff --git a/src/openeuler/package-meeting/meeting/detail.wxml b/src/openeuler/package-meeting/meeting/detail.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..0d7e60fe53022b48260fc79ed590b831a07d692b
--- /dev/null
+++ b/src/openeuler/package-meeting/meeting/detail.wxml
@@ -0,0 +1,63 @@
+
+
+
+ {{info.topic}}
+
+
+ {{info.date}} {{info.start}}-{{info.end}}
+
+
+
+
+ {{info.group_name}}
+
+
+
+ {{info.agenda}}
+
+
+
+ Etherpad链接
+
+
+ {{info.etherpad}}
+
+
+
+
+
+
+ Zoom
+ WeLink
+
+
+ ID: {{info.mid}}
+
+
+
+ {{info.join_url}}
+
+
+
+
+
+
+
+ 回放链接
+
+
+ {{info.video_url}}
+
+
+
+
+
+
+
+
+ 一键收藏此会议,即可收到会议提醒通知哦!
+
+
\ No newline at end of file
diff --git a/src/openeuler/package-meeting/meeting/detail.wxss b/src/openeuler/package-meeting/meeting/detail.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..7222396f3a59ac245befa2bba03d6ece9058d726
--- /dev/null
+++ b/src/openeuler/package-meeting/meeting/detail.wxss
@@ -0,0 +1,94 @@
+/* pages/meeting/detail.wxss */
+page {
+ background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHwAAAAeCAYAAADuInrvAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAACdSURBVGhD7dbBDYAwDAPAbsTYjFnEDn5YyT34WinWpT3nea9v0T9Q9qKyf9wKV7gVP/maI5xwwglfpkDhCh9z9Y05yGSVybMpfNn2UrjCvdKTK7Qti3DCCW9TmZyHcMIJT4pqyyKccMLbVCbnIZxwwpOi2rIIJ5zwNpXJeQgnnPCkqLYswgknvE1lch7CCSc8Kaoti3DCCW9TGZznA1f9oK8GgBpHAAAAAElFTkSuQmCC) no-repeat;
+ background-size: 100% 108rpx;
+ background-color: #f5f7fa !important;
+}
+
+.container {
+ padding-top: 20rpx;
+}
+
+.container .detail-item {
+ background-color: #fff;
+ margin-bottom: 20rpx;
+ box-shadow: 0rpx 5rpx 15rpx 0rpx rgba(0, 47, 167, 0.1);
+ border-radius: 8rpx;
+ padding: 30rpx;
+ color: #6d7278;
+ font-size: 32rpx;
+ font-weight: 400;
+}
+
+.container .detail-item .name {
+ font-size: 36rpx;
+ color: #333;
+ font-weight: 400;
+ line-height: 50rpx;
+ margin-top: 0;
+}
+
+.container .detail-item view {
+ margin-top: 20rpx;
+ line-height: 45rpx;
+}
+
+.container .detail-item view image {
+ vertical-align: middle;
+ width: 30rpx;
+ height: 30rpx;
+ margin-right: 22rpx;
+}
+
+.container .detail-item view text {
+ text-align: justify;
+ word-wrap: break-word;
+ word-break: break-all;
+ vertical-align: middle;
+}
+
+.container .detail-item .btn-wraper {
+ display: flex;
+ justify-content: space-around;
+}
+
+.container .detail-item .btn-wraper button {
+ height: 78rpx;
+ width: 220rpx;
+ border: 1px solid #002fa7;
+ border-radius: 8rpx;
+ color: #002fa7;
+ text-align: center;
+ line-height: 78rpx;
+}
+.container .detail-item {
+ background-color: #fff;
+ margin-bottom: 20rpx;
+ box-shadow: 0rpx 5rpx 15rpx 0rpx rgba(0, 47, 167, 0.1);
+ border-radius: 8rpx;
+ padding: 30rpx;
+ color: #6d7278;
+ font-size: 32rpx;
+ font-weight: 400;
+}
+.container .collect-item {
+ margin-bottom: 20rpx;
+ border-radius: 8rpx;
+ padding: 30rpx;
+ color: #6d7278;
+ font-size: 32rpx;
+ font-weight: 400;
+}
+.container .collect-item button{
+ color: #002fa7;
+ border: 1px solid #002fa7;
+ width: 330rpx;
+ margin-top: 78rpx;
+ font-size: 36rpx;
+}
+.container .collect-item .tips{
+ font-size: 28rpx;
+ line-height: 40rpx;
+ margin-top: 30rpx;
+ text-align: center;
+}
\ No newline at end of file
diff --git a/src/openeuler/package-meeting/meeting/meeting-list.js b/src/openeuler/package-meeting/meeting/meeting-list.js
new file mode 100644
index 0000000000000000000000000000000000000000..a0f154054799c269ab014f624f571da794c7c5b2
--- /dev/null
+++ b/src/openeuler/package-meeting/meeting/meeting-list.js
@@ -0,0 +1,43 @@
+// package-meeting/meeting/meeting-list.js
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ meetingConponent: null
+ },
+
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad: function (options) {
+
+ this.setData({
+ meetingConponent: this.selectComponent('#meeting')
+ })
+
+ },
+
+ /**
+ * 页面相关事件处理函数--监听用户下拉动作
+ */
+ onPullDownRefresh: function () {
+ wx.stopPullDownRefresh();
+ this.data.meetingConponent.initData();
+ },
+
+ /**
+ * 页面上拉触底事件的处理函数
+ */
+ onReachBottom: function () {
+
+ },
+
+ /**
+ * 用户点击右上角分享
+ */
+ onShareAppMessage: function () {
+
+ }
+})
\ No newline at end of file
diff --git a/src/openeuler/package-meeting/meeting/meeting-list.json b/src/openeuler/package-meeting/meeting/meeting-list.json
new file mode 100644
index 0000000000000000000000000000000000000000..b3fd7ad0891f70d123c8ca84c7047b860c36a92d
--- /dev/null
+++ b/src/openeuler/package-meeting/meeting/meeting-list.json
@@ -0,0 +1,9 @@
+{
+ "usingComponents": {
+ "meeting-list": "/components/meeting-list/meeting-list"
+ },
+ "navigationBarTitleText": "会议列表",
+ "enablePullDownRefresh": true,
+ "backgroundTextStyle": "dark",
+ "backgroundColor": "#fff"
+}
\ No newline at end of file
diff --git a/src/openeuler/package-meeting/meeting/meeting-list.wxml b/src/openeuler/package-meeting/meeting/meeting-list.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..5227cff775e7c33cbef32f741340cc29810760a7
--- /dev/null
+++ b/src/openeuler/package-meeting/meeting/meeting-list.wxml
@@ -0,0 +1,4 @@
+
+
+
+
diff --git a/src/openeuler/package-meeting/meeting/meeting-list.wxss b/src/openeuler/package-meeting/meeting/meeting-list.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..440d3139ad9d1602ca1b48ba653cd3719958834c
--- /dev/null
+++ b/src/openeuler/package-meeting/meeting/meeting-list.wxss
@@ -0,0 +1,4 @@
+/* package-meeting/meeting/meeting-list.wxss */
+page {
+ background-color: #f5f7fa !important;
+}
\ No newline at end of file
diff --git a/src/openeuler/package-meeting/meeting/meeting-success.js b/src/openeuler/package-meeting/meeting/meeting-success.js
new file mode 100644
index 0000000000000000000000000000000000000000..03082378ef82913e8d0a00a67d33b24e68229054
--- /dev/null
+++ b/src/openeuler/package-meeting/meeting/meeting-success.js
@@ -0,0 +1,31 @@
+// pages/meeting/meeting-success.js
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ id: ''
+ },
+
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad: function (options) {
+ this.setData({
+ id: options.id
+ })
+ },
+ toDetail: function () {
+ wx.redirectTo({
+ url: '/package-meeting/meeting/detail?id=' + this.data.id
+ })
+ },
+
+ /**
+ * 生命周期函数--监听页面显示
+ */
+ onShow: function () {
+
+ }
+})
\ No newline at end of file
diff --git a/src/openeuler/package-meeting/meeting/meeting-success.json b/src/openeuler/package-meeting/meeting/meeting-success.json
new file mode 100644
index 0000000000000000000000000000000000000000..469605bcec2bfc86e9bfca5e45768168aab05ef5
--- /dev/null
+++ b/src/openeuler/package-meeting/meeting/meeting-success.json
@@ -0,0 +1,4 @@
+{
+ "usingComponents": {},
+ "navigationBarTitleText": "预定会议"
+}
\ No newline at end of file
diff --git a/src/openeuler/package-meeting/meeting/meeting-success.wxml b/src/openeuler/package-meeting/meeting/meeting-success.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..753dd2abb573988bd0d816e7bd63a420a8a59733
--- /dev/null
+++ b/src/openeuler/package-meeting/meeting/meeting-success.wxml
@@ -0,0 +1,9 @@
+
+
+
+
+ 预定成功
+ 您已成功预定会议
+
+
+
\ No newline at end of file
diff --git a/src/openeuler/package-meeting/meeting/meeting-success.wxss b/src/openeuler/package-meeting/meeting/meeting-success.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..9864dc718d58e57dd4292921e6b2e18a1cd5c187
--- /dev/null
+++ b/src/openeuler/package-meeting/meeting/meeting-success.wxss
@@ -0,0 +1,48 @@
+/* pages/meeting/meeting-success.wxss */
+.container {
+ background-color: #fff;
+ height: 100%;
+ margin-top: 20rpx;
+ position: relative
+}
+
+.container .suc-wrapper {
+ position: absolute;
+ top: 386rpx;
+ left: 254rpx;
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ justify-content: center;
+}
+
+.container .suc-wrapper image {
+ width: 234rpx;
+ height: 218rpx;
+}
+
+.container .suc-wrapper text {
+ text-align: center;
+ margin-top: 20rpx;
+ font-size: 34rpx;
+ color: #333;
+}
+
+.container .suc-wrapper text:last-child {
+ font-size: 28rpx;
+ color: #6d7278;
+}
+
+.container button {
+ position: absolute;
+ top: 858rpx;
+ left: 125rpx;
+ width: 500rpx;
+ height: 90rpx;
+ line-height: 90rpx;
+ text-align: center;
+ font-size: 36rpx;
+ color: #fff;
+ background-color: #002fa7;
+ border-radius: 8rpx;
+}
\ No newline at end of file
diff --git a/src/openeuler/package-meeting/reserve/reserve.js b/src/openeuler/package-meeting/reserve/reserve.js
new file mode 100644
index 0000000000000000000000000000000000000000..ef58d4d79d12d6cf878dd0ba31b815dc78631434
--- /dev/null
+++ b/src/openeuler/package-meeting/reserve/reserve.js
@@ -0,0 +1,360 @@
+// pages/reserve/reserve.js
+var appAjax = require('./../../utils/app-ajax');
+var appSession = require("./../../utils/app-session.js");
+var utils = require("./../../utils/utils.js");
+utils.formateDate();
+let that = null;
+let remoteMethods = {
+ getUserGroup: function (id, _callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'GET',
+ service: "GET_USER_GROUP",
+ otherParams: {
+ id: id
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ },
+ saveMeeting: function (postData, _callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'POST',
+ service: "SAVE_MEETING",
+ data: postData,
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ }
+}
+let localMethods = {
+ validation: function (that) {
+ if (!that.data.topic) {
+ this.toast('请输入会议名称');
+ return;
+ }
+ if (!that.data.sponsor) {
+ this.toast('请联系管理员编辑您的gitee name');
+ return;
+ }
+ if (!that.data.groupId) {
+ this.toast('请选择所属SIG');
+ return;
+ }
+ if (!that.data.date) {
+ this.toast('请选择日期');
+ return;
+ }
+ if (!that.data.start) {
+ this.toast('请选择开始时间');
+ return;
+ }
+ if (!that.data.end) {
+ this.toast('请选择结束时间');
+ return;
+ }
+ if ((that.data.start.split(':')[0] > that.data.end.split(':')[0]) || (that.data.start.split(':')[0] == that.data.end.split(':')[0] && that.data.start.split(':')[1] >= that.data.end.split(':')[1])) {
+ this.toast('开始时间必须小于结束时间');
+ return;
+ }
+ return true;
+ },
+ toast: function (msg) {
+ wx.showToast({
+ title: msg,
+ icon: "none",
+ duration: 2000
+ });
+ }
+}
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ record: false,
+ sendDev:false,
+ meetingType:'Zoom',
+ typeList:['Zoom','WeLink(蓝版)'],
+ topic: '',
+ sponsor: '',
+ groupName: '',
+ groupId: '',
+ date: '',
+ start: '',
+ end: '',
+ etherpad: '',
+ agenda: '',
+ emaillist: '',
+ sigPopShow: false,
+ sigResult: '',
+ sigList: [],
+ datePopShow: false,
+ curDate: new Date().getTime(),
+ currentDate: new Date().getTime(),
+ minDate: new Date().getTime(),
+ timePopShow: false,
+ currentTime: '08:00',
+ minTime: 8,
+ maxTime: 22,
+ endTimePopShow: false,
+ currentEndTime: '08:00',
+ minEndTime: 8,
+ maxEndTime: 22,
+ showDialogWarn: false,
+ filter(type, options) {
+ if (type === 'minute') {
+ return options.filter((option) => option % 15 === 0);
+ }
+
+ return options;
+ }
+ },
+
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad: function (options) {
+
+ },
+ recordoOnChange: function (event) {
+ this.setData({
+ record: event.detail
+ });
+ },
+ devOnChange: function (event) {
+ this.setData({
+ sendDev: event.detail,
+ });
+ },
+ reset: function () {
+ this.setData({
+ topic: '',
+ groupName: '',
+ group_name: '',
+ group_id: '',
+ groupId: '',
+ date: '',
+ start: '',
+ end: '',
+ etherpad: '',
+ agenda: '',
+ emaillist: ''
+ })
+ },
+ meeting: function () {
+ if (!localMethods.validation(this)) {
+ return;
+ }
+ let that = this;
+ wx.requestSubscribeMessage({
+ tmplIds: ['2xSske0tAcOVKNG9EpBjlb1I-cjPWSZrpwPDTgqAmWI'],
+ success(res) {
+ let platform = '';
+ that.data.meetingType.includes('WeLink') ? platform = that.data.meetingType.slice(0,6):platform = that.data.meetingType
+ let email = null;
+ if(that.data.sendDev) {
+ if (that.data.emaillist.charAt(that.data.emaillist.length-1) == ';' || that.data.emaillist.charAt(that.data.emaillist.length-1) ==';'|| that.data.emaillist.charAt(that.data.emaillist.length-1) =='') {
+ email = `${that.data.emaillist}dev@openeuler.org;`;
+ } else {
+ email = `${that.data.emaillist};dev@openeuler.org;`;
+ }
+ } else {
+ email = that.data.emaillist
+ }
+ remoteMethods.saveMeeting({
+ topic: that.data.topic,
+ sponsor: that.data.sponsor,
+ group_name: that.data.groupName,
+ group_id: that.data.groupId,
+ date: that.data.date,
+ start: that.data.start,
+ end: that.data.end,
+ platform:platform,
+ etherpad: that.data.etherpad,
+ agenda: that.data.agenda,
+ emaillist: email,
+ record: that.data.record ? 'cloud' : ''
+ }, function (data) {
+ if (data.id) {
+ wx.redirectTo({
+ url: '/package-meeting/meeting/meeting-success?id=' + data.id,
+ })
+ } else {
+ setTimeout(function () {
+ wx.showToast({
+ title: data.message,
+ icon: "none",
+ duration: 4000
+ }, 100);
+ })
+ }
+ })
+ }
+ })
+
+ },
+ sigNameInput: function (e) {
+ this.setData({
+ topic: e.detail.value
+ })
+ },
+ etherInput: function (e) {
+ this.setData({
+ etherpad: e.detail.value
+ })
+ },
+ agendaInput: function (e) {
+ this.setData({
+ agenda: e.detail.value
+ })
+ },
+ emailInput: function (e) {
+ this.setData({
+ emaillist: e.detail.value
+ })
+ },
+ sigConfirm: function () {
+ let that = this;
+ let sigObj = this.data.sigList.filter(function (item) {
+ return item.group === that.data.sigResult;
+ });
+ sigObj = sigObj.length ? sigObj[0] : {}
+ this.setData({
+ groupName: sigObj.group_name || '',
+ groupId: sigObj.group || '',
+ etherpad: sigObj.etherpad || '',
+ sigPopShow: false
+ })
+ },
+ dateConfirm: function () {
+ this.setData({
+ date: (new Date(this.data.currentDate)).Format("yyyy-MM-dd"),
+ datePopShow: false
+ })
+ },
+ timeConfirm: function () {
+ this.setData({
+ start: this.data.currentTime,
+ timePopShow: false
+ })
+ },
+ endTimeConfirm: function () {
+ this.setData({
+ end: this.data.currentEndTime,
+ endTimePopShow: false
+ })
+ },
+ onTypeShow: function () {
+ this.setData({
+ typeShow: true,
+ })
+ },
+ typeCancel: function () {
+ this.setData({
+ typeShow: false,
+ });
+ },
+ typeConfirm: function () {
+ this.setData({
+ typeShow: false,
+ });
+ },
+ typeRadioOnChange: function (e) {
+ this.setData({
+ meetingType:e.detail
+ });
+ },
+ /**
+ * 生命周期函数--监听页面显示
+ */
+ onShow: function () {
+ that = this;
+ this.setData({
+ sponsor: appSession.getUserInfoByKey('gitee') || ''
+ })
+ let that = this;
+ remoteMethods.getUserGroup(appSession.getUserInfoByKey('userId'), function (data) {
+ if (data && data.length) {
+ that.setData({
+ sigList: data
+ })
+ }
+ })
+ },
+ sigRadioOnChange: function (e) {
+ this.setData({
+ sigResult: e.detail
+ })
+ },
+ selSig: function () {
+ if (!this.data.sigList.length) {
+ this.setData({
+ showDialogWarn: true
+ })
+ return;
+ }
+ this.setData({
+ sigPopShow: true
+ })
+ },
+ warnCancel: function () {
+ this.setData({
+ showDialogWarn: false
+ })
+ },
+ sigCancel: function () {
+ this.setData({
+ sigPopShow: false
+ })
+ },
+ selDate: function () {
+ this.setData({
+ datePopShow: true
+ })
+ },
+ selTime: function () {
+ this.setData({
+ timePopShow: true
+ })
+ },
+ selEndTime: function () {
+ this.setData({
+ endTimePopShow: true
+ })
+ },
+ dateCancel: function () {
+ this.setData({
+ datePopShow: false
+ })
+ },
+ timeCancel: function () {
+ this.setData({
+ timePopShow: false
+ })
+ },
+ endTimeCancel: function () {
+ this.setData({
+ endTimePopShow: false
+ })
+ },
+ dateOnInput: function (e) {
+ this.setData({
+ currentDate: e.detail
+ })
+ },
+ timeOnInput: function (e) {
+ this.setData({
+ currentTime: e.detail
+ })
+ },
+ endTimeOnInput: function (e) {
+ this.setData({
+ currentEndTime: e.detail
+ })
+ },
+})
\ No newline at end of file
diff --git a/src/openeuler/package-meeting/reserve/reserve.json b/src/openeuler/package-meeting/reserve/reserve.json
new file mode 100644
index 0000000000000000000000000000000000000000..65c2333e18dbb152951cb08ff6ec477165c531e6
--- /dev/null
+++ b/src/openeuler/package-meeting/reserve/reserve.json
@@ -0,0 +1,6 @@
+{
+ "usingComponents": {},
+ "navigationBarTitleText": "预定会议",
+ "navigationBarBackgroundColor": "#002fa7",
+ "navigationBarTextStyle": "white"
+}
\ No newline at end of file
diff --git a/src/openeuler/package-meeting/reserve/reserve.wxml b/src/openeuler/package-meeting/reserve/reserve.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..7ec75254c4b9e5eda6e3587120a1ffbbc1ba9f45
--- /dev/null
+++ b/src/openeuler/package-meeting/reserve/reserve.wxml
@@ -0,0 +1,186 @@
+
+
+
+
+
+
+ 会议名称
+ *
+
+
+
+
+
+ 会议平台
+ *
+
+
+ {{meetingType}}
+
+
+
+
+ 发起人
+
+
+
+
+ 选取所属SIG
+ *
+
+
+ {{groupName}}
+
+
+
+
+
+ 日期
+ *
+
+
+ {{date}}
+
+
+
+
+
+ 时间
+ *
+
+
+ {{start||'请选择'}}
+ 至
+ {{end||'请选择'}}
+
+
+
+ Etherpad链接
+ {{etherpad}}
+
+
+
+ 自动录制会议
+
+
+
+
+
+
+
+
+ 勾选此项进入会议自动开启录屏,录制服务由{{meetingType}}提供,会后自动上传至B站openEuler的账号下
+
+
+
+ 会议内容
+
+
+
+
+ 邮件地址
+
+
+
+ 发送给dev@openeuler.org
+
+
+
+
+
+
+
+
+
+ 多个邮箱地址用分号;隔开
+
+
+
+
+ *
+ 号为必填项
+
+
+
+
+
+
+
+
+
+ 选择所属SIG
+
+
+
+
+ {{item.group_name}}
+
+
+
+
+
+
+
+
+
+
+
+
+ 选择预定会议日期
+
+
+
+
+
+
+
+
+
+ 选择会议开始时间
+
+
+
+
+
+
+
+
+
+ 选择会议结束时间
+
+
+
+
+
+
+
+
+
+ 当前您不属于任何SIG组,请先在SIG管理中关联SIG组
+
+
+
+
+
+
+
+
+ 选择会议平台
+
+
+
+
+ {{item}}
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/openeuler/package-meeting/reserve/reserve.wxss b/src/openeuler/package-meeting/reserve/reserve.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..3e18e3660c70a09a6902334cb82895dbdae4b879
--- /dev/null
+++ b/src/openeuler/package-meeting/reserve/reserve.wxss
@@ -0,0 +1,246 @@
+/* pages/reserve/reserve.wxss */
+page {
+ background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHwAAAAeCAYAAADuInrvAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAACdSURBVGhD7dbBDYAwDAPAbsTYjFnEDn5YyT34WinWpT3nea9v0T9Q9qKyf9wKV7gVP/maI5xwwglfpkDhCh9z9Y05yGSVybMpfNn2UrjCvdKTK7Qti3DCCW9TmZyHcMIJT4pqyyKccMLbVCbnIZxwwpOi2rIIJ5zwNpXJeQgnnPCkqLYswgknvE1lch7CCSc8Kaoti3DCCW9TGZznA1f9oK8GgBpHAAAAAElFTkSuQmCC) no-repeat;
+ background-size: 100% 108rpx;
+ background-color: #f5f7fa !important;
+ padding: 0 30rpx;
+}
+
+.container {
+ padding: 30rpx 0 129rpx 0;
+}
+
+textarea {
+ height: 45rpx;
+ flex: 1;
+}
+
+input {
+ flex: 1;
+}
+
+.require {
+ color: #f76270;
+}
+
+.placeholder {
+ color: #c7cad0;
+}
+
+.container .form .form-item {
+ padding: 0 30rpx;
+ background-color: #fff;
+ height: 108rpx;
+ color: #333;
+ font-size: 34rpx;
+ display: flex;
+ align-items: center;
+ justify-content: start;
+ border-bottom: 2rpx solid #f0f3f7;
+}
+
+.container .form > .form-item {
+ box-shadow: 0rpx 5rpx 15rpx 0rpx rgba(0, 47, 167, 0.1);
+ border-radius: 8rpx;
+}
+.form .email-box {
+ overflow: hidden;
+ box-shadow: 0rpx 5rpx 15rpx 0rpx rgba(0, 47, 167, 0.1);
+ border-radius: 8rpx;
+}
+.container .form .form-wrapper {
+ box-shadow: 0rpx 5rpx 15rpx 0rpx rgba(0, 47, 167, 0.1);
+ border-radius: 8rpx;
+ background-color: #fff;
+ overflow: hidden;
+}
+
+.container .form .form-item .arrow {
+ flex: 1;
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+}
+
+.container .form .form-item .record {
+ justify-content: flex-end;
+}
+
+.container .form .form-item .arrow .sel-data {
+ color: #6d7278;
+}
+
+.container .form .form-item .sel-time {
+ flex: 1;
+ color: #333;
+ display: flex;
+ align-items: center;
+ justify-content: start;
+}
+
+.container .form .form-item .sel-time .time {
+ color: #6d7278;
+ margin: 0 20rpx;
+ border: 1px solid #c7cad0;
+ background-color: #f0f3f7;
+ padding: 0 20rpx;
+ border-radius: 8rpx;
+}
+
+.container .form .form-item .sel-time .start-time {
+ margin-left: 0;
+}
+
+.container .form .form-item .label {
+ margin-right: 60rpx;
+}
+
+.container .form .form-item input {
+ color: #6d7278;
+}
+
+.container .form .form-item .etherpad {
+ display: block;
+ color: #6d7278;
+ overflow-x: scroll;
+ flex: 1;
+}
+
+.container .form .form-item textarea {
+ color: #6d7278;
+}
+
+.container .form .form-item image {
+ width: 30rpx;
+ height: 30rpx;
+}
+
+.container .form .meeting-desc {
+ padding-top: 30rpx;
+ align-items: flex-start;
+ height: 244rpx;
+ margin-bottom: 20rpx;
+}
+
+.container .form .meeting-desc textarea {
+ height: 184rpx;
+ position: relative;
+}
+
+.container .form .meeting-desc textarea .hint {
+ position: absolute;
+ right: 0;
+ bottom: 0;
+ color: #c7cad0;
+ font-size: 28rpx;
+}
+
+.container .info {
+ font-size: 29rpx;
+ color: #6d7278;
+ margin-bottom: 20rpx;
+}
+
+.container .info view {
+ margin: 30rpx 0;
+}
+
+.container .info view image {
+ width: 28rpx;
+ height: 28rpx;
+ margin-right: 15rpx;
+ vertical-align: middle;
+}
+
+.container .commit {
+ display: flex;
+ justify-content: space-between;
+ height: 90rpx;
+ font-size: 36rpx;
+}
+
+.container .commit button {
+ width: 320rpx;
+ text-align: center;
+ line-height: 90rpx;
+ height: 100%;
+ border-radius: 8rpx;
+}
+
+.container .commit .meeting-btn {
+ color: #fff;
+ background-color: #002fa7;
+}
+
+.container .commit .meeting-reset {
+ color: #002fa7;
+ background-color: #fff;
+ border: 1px solid #002fa7;
+}
+
+.container .sig-pop-wrapper {
+ padding: 0 30rpx;
+}
+
+.container .sig-pop-wrapper .title {
+ margin: 30rpx 0 40rpx 0;
+ color: #222;
+ font-size: 36rpx;
+}
+
+.container .sig-pop-wrapper .item .radio {
+ flex-direction: row-reverse;
+ justify-content: space-between;
+}
+
+.container .sig-pop-wrapper .item .name {
+ font-size: 34rpx;
+ color: #6d7278;
+ width: 600rpx;
+}
+
+.container .sig-pop-wrapper .item {
+ height: 108rpx;
+ display: flex;
+ align-items: center;
+ border-bottom: 1px solid #f0f3f7;
+}
+
+.container .sig-pop-wrapper .item:last-child {
+ border: none;
+}
+
+.container .sig-pop-wrapper .btn-wrapper {
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+ height: 90rpx;
+ font-size: 36rpx;
+ margin: 60rpx 0;
+}
+
+.container .sig-pop-wrapper .btn-wrapper .confirm {
+ height: 100%;
+ width: 320rpx;
+ text-align: center;
+ line-height: 90rpx;
+ color: #fff;
+ background-color: #002fa7;
+}
+
+.container .sig-pop-wrapper .btn-wrapper .cancel {
+ height: 100%;
+ width: 320rpx;
+ text-align: center;
+ line-height: 90rpx;
+ color: #002fa7;
+ background-color: #fff;
+ border: 1px solid #002fa7;
+}
+
+.container .dialog-slot-content text {
+ white-space: unset;
+ overflow: unset;
+ text-overflow: unset;
+
+}
\ No newline at end of file
diff --git a/src/openeuler/package-meeting/sig/add-member.js b/src/openeuler/package-meeting/sig/add-member.js
new file mode 100644
index 0000000000000000000000000000000000000000..02d852b3206c7408650b8dab627fe9cf54c08ef3
--- /dev/null
+++ b/src/openeuler/package-meeting/sig/add-member.js
@@ -0,0 +1,116 @@
+// pages/sig/add-member.js
+var appAjax = require('./../../utils/app-ajax');
+let remoteMethods = {
+ getExcludeMemberList: function (postData, _callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'GET',
+ service: "SIG_EXCLUDE_MEMBER_LIST",
+ otherParams: {
+ id: postData.id
+ },
+ data: {
+ search: postData.nickname || ''
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ },
+ addMemberList: function (postData, _callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'POST',
+ service: "ADD_MEMBER_LIST",
+ data: postData,
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ }
+}
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ list: [],
+ result: [],
+ sigId: '',
+ keyword: ''
+ },
+
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad: function (options) {
+ this.setData({
+ sigId: options.sigId
+ })
+ },
+
+ /**
+ * 生命周期函数--监听页面显示
+ */
+ onShow: function () {
+ let that = this;
+ remoteMethods.getExcludeMemberList({
+ id: this.data.sigId
+ }, function (data) {
+ that.setData({
+ list: data
+ })
+ })
+ },
+ onChange: function (e) {
+ this.setData({
+ result: e.detail
+ })
+ },
+ comfirm: function () {
+ let that = this;
+ if (!this.data.result.length) {
+ wx.showToast({
+ title: '请选择人员',
+ icon: "none",
+ duration: 2000
+ });
+ return;
+ }
+ let postData = {
+ ids: this.data.result.join('-'),
+ group_id: this.data.sigId
+ }
+ remoteMethods.addMemberList(postData, function (data) {
+ if (data.code === 201) {
+ wx.showToast({
+ title: '操作成功',
+ icon: "success",
+ duration: 2000
+ });
+ wx.navigateBack();
+ } else {
+ wx.showToast({
+ title: '操作失败',
+ icon: "none",
+ duration: 2000
+ });
+ }
+ })
+ },
+ searchInput: function (e) {
+ let that = this;
+ this.setData({
+ keyword: e.detail.value
+ })
+ remoteMethods.getExcludeMemberList({
+ id: this.data.sigId,
+ nickname: this.data.keyword
+ }, function (data) {
+ that.setData({
+ list: data
+ })
+ })
+ }
+})
\ No newline at end of file
diff --git a/src/openeuler/package-meeting/sig/add-member.json b/src/openeuler/package-meeting/sig/add-member.json
new file mode 100644
index 0000000000000000000000000000000000000000..1552ab1c6ac2d2024c02d9821723876540e8fe68
--- /dev/null
+++ b/src/openeuler/package-meeting/sig/add-member.json
@@ -0,0 +1,4 @@
+{
+ "usingComponents": {},
+ "navigationBarTitleText": "选择成员"
+}
\ No newline at end of file
diff --git a/src/openeuler/package-meeting/sig/add-member.wxml b/src/openeuler/package-meeting/sig/add-member.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..41a47e080839d07b1b3165acffd553bb3e7e76ac
--- /dev/null
+++ b/src/openeuler/package-meeting/sig/add-member.wxml
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+ {{list.length?'':('没有找到 '+(keyword||' ')+' 相关成员')}}
+
+
+
+
+
+
+ {{item.nickname}}
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/openeuler/package-meeting/sig/add-member.wxss b/src/openeuler/package-meeting/sig/add-member.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..e5635eaa0576ee863b59721e4ae624e336c093d3
--- /dev/null
+++ b/src/openeuler/package-meeting/sig/add-member.wxss
@@ -0,0 +1,88 @@
+/* pages/sig/add-member.wxss */
+.container {
+ background-color: #fff;
+ margin-top: 20rpx;
+ margin-bottom: 150rpx;
+ padding: 0;
+}
+
+.container .fill {
+ width: 100%;
+ text-align: center;
+ font-size: 28rpx;
+ color: #6d7278;
+ height: 28rpx;
+ background-color: #f5f7fa;
+}
+
+.container .input-wraper {
+ box-sizing: border-box;
+ margin: 20rpx 0 0 0;
+ height: 108rpx;
+ position: relative;
+}
+
+.container .input-wraper .keyword {
+ padding-left: 94rpx;
+ background-color: #fff;
+ border-radius: 8rpx;
+ height: 108rpx;
+ position: absolute;
+ top: 0;
+ width: 100%;
+ font-size: 28rpx;
+ line-height: 40rpx;
+}
+
+.container .input-wraper .search-icon {
+ height: 39rpx;
+ width: 39rpx;
+ display: inline-block;
+ position: absolute;
+ top: 34rpx;
+ left: 32rpx;
+}
+
+.container .add-item {
+ border-bottom: 1px solid #c7cad0;
+ padding: 0 30rpx;
+ height: 108rpx;
+ line-height: 108rpx;
+ display: flex;
+ align-items: center;
+}
+
+.container .add-item image {
+ width: 72rpx;
+ height: 72rpx;
+ border-radius: 8rpx;
+ display: inline-block;
+ border: 1px solid #979797;
+ margin: 0 20rpx 0 10rpx;
+}
+
+.container .add-item text {
+ display: inline-block;
+ height: 100%;
+}
+
+.container .add-item .inner {
+ height: 100%;
+ display: flex;
+ align-items: center;
+}
+
+.container .add-btn {
+ position: fixed;
+ bottom: 60rpx;
+ left: 125rpx;
+ width: 500rpx;
+ height: 90rpx;
+ line-height: 90rpx;
+ font-size: 36rpx;
+ color: #fff;
+ background-color: #002fa7;
+ border-radius: 8rpx;
+ text-align: center;
+ box-shadow: 0px 5px 20px 0px rgba(126, 146, 178, 0.7);
+}
\ No newline at end of file
diff --git a/src/openeuler/package-meeting/sig/add-sig-member.js b/src/openeuler/package-meeting/sig/add-sig-member.js
new file mode 100644
index 0000000000000000000000000000000000000000..b707e742ca3f1d4a76854fc5a92de4d7416afaf4
--- /dev/null
+++ b/src/openeuler/package-meeting/sig/add-sig-member.js
@@ -0,0 +1,64 @@
+// pages/sig/add-sig-member.js
+var appAjax = require('./../../utils/app-ajax');
+let remoteMethods = {
+ getSigMemberList: function (id, _callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'GET',
+ service: "SIG_MEMBER_LIST",
+ otherParams: {
+ id: id
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ }
+}
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ memberList: [],
+ id: ""
+ },
+
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad: function (options) {
+ wx.setNavigationBarTitle({
+ title: options.name
+ })
+ this.setData({
+ id: options.id
+ })
+ },
+
+ /**
+ * 生命周期函数--监听页面显示
+ */
+ onShow: function () {
+ let that = this;
+ remoteMethods.getSigMemberList(this.data.id, function (list) {
+ that.setData({
+ memberList: list
+ })
+ });
+ },
+ toDetail: function (e) {
+
+ },
+ addMember: function () {
+ wx.navigateTo({
+ url: '/package-meeting/sig/add-member?sigId=' + this.data.id
+ })
+ },
+ delMember: function () {
+ wx.navigateTo({
+ url: '/package-meeting/sig/del-member?sigId=' + this.data.id
+ })
+ }
+})
\ No newline at end of file
diff --git a/src/openeuler/package-meeting/sig/add-sig-member.json b/src/openeuler/package-meeting/sig/add-sig-member.json
new file mode 100644
index 0000000000000000000000000000000000000000..6f5247b050d616d1d9ab35b9dec4da0b673757b8
--- /dev/null
+++ b/src/openeuler/package-meeting/sig/add-sig-member.json
@@ -0,0 +1,3 @@
+{
+ "usingComponents": {}
+}
\ No newline at end of file
diff --git a/src/openeuler/package-meeting/sig/add-sig-member.wxml b/src/openeuler/package-meeting/sig/add-sig-member.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..646060dc95238887c34283df4febf89137ad80d9
--- /dev/null
+++ b/src/openeuler/package-meeting/sig/add-sig-member.wxml
@@ -0,0 +1,35 @@
+
+
+
+
+
+
+ {{item.nickname}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 该组暂无成员!
+
+
+
+
\ No newline at end of file
diff --git a/src/openeuler/package-meeting/sig/add-sig-member.wxss b/src/openeuler/package-meeting/sig/add-sig-member.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..9c9f3d3a02213e5eaf7f40becd0ad4dcf289ec7a
--- /dev/null
+++ b/src/openeuler/package-meeting/sig/add-sig-member.wxss
@@ -0,0 +1,115 @@
+/* pages/sig/add-sig-member.wxss */
+page {
+ padding: 20rpx 0 0 0;
+}
+
+.bg {
+ background-color: unset !important;
+}
+
+.container {
+ height: 100%;
+ background-color: #fff;
+ padding: 30rpx;
+}
+
+.container .sig-members {
+ width: 100%;
+ display: flex;
+ flex-wrap: wrap;
+}
+
+.container .sig-members .item {
+ flex: 0 0 20%;
+ margin-bottom: 20rpx;
+ color: #b2b2b2;
+ font-size: 23rpx;
+ line-height: 33rpx;
+ font-weight: 400;
+ display: flex;
+ flex-direction: column;
+ justify-content: center;
+ align-items: center;
+}
+
+.container .sig-members .item:nth-child(5n) {
+ margin-right: 0;
+}
+
+.container .sig-members .item image {
+ display: block;
+ width: 100rpx;
+ height: 100rpx;
+ margin-bottom: 2rpx;
+ border-radius: 8rpx;
+ border: 1px solid #979797;
+}
+
+.container .sig-members .item text {
+ display: inline-block;
+ width: 100rpx;
+ white-space: nowrap;
+ overflow: hidden;
+ text-overflow: ellipsis;
+ text-align: center;
+}
+
+.container .sig-members .item view {
+ width: 100rpx;
+ height: 100rpx;
+ text-align: center;
+ line-height: 100rpx;
+ border-radius: 8rpx;
+ border: 1px solid #c7cad0;
+}
+
+.container .sig-members .opera-item {
+ justify-content: start;
+}
+
+.container .sig-members .item view image {
+ display: inline-block;
+ height: 44rpx;
+ width: 44rpx;
+ border: none;
+ vertical-align: middle;
+}
+
+.container .empty-wraper .img-wraper {
+ position: fixed;
+ top: 471rpx;
+ left: 260rpx;
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+}
+
+.container .empty-wraper .img-wraper image {
+ height: 256rpx;
+ width: 241rpx;
+}
+
+.container .empty-wraper .img-wraper {
+ color: #333;
+ font-size: 34rpx;
+ line-height: 38rpx;
+}
+
+.container .empty-wraper button {
+ width: 500rpx;
+ height: 90rpx;
+ line-height: 90rpx;
+ text-align: center;
+ background-color: #002fa7;
+ color: #fff;
+ font-size: 36rpx;
+ border-radius: 8rpx;
+ position: fixed;
+ top: 996rpx;
+ left: 125rpx;
+}
+
+.container .empty-wraper button image {
+ width: 35rpx;
+ height: 35rpx;
+}
\ No newline at end of file
diff --git a/src/openeuler/package-meeting/sig/del-member.js b/src/openeuler/package-meeting/sig/del-member.js
new file mode 100644
index 0000000000000000000000000000000000000000..b07950e6cb07b8b96041675eca886c37c7b6732f
--- /dev/null
+++ b/src/openeuler/package-meeting/sig/del-member.js
@@ -0,0 +1,98 @@
+// pages/sig/del-member.js
+var appAjax = require('./../../utils/app-ajax');
+let remoteMethods = {
+ getCludeMemberList: function (postData, _callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'GET',
+ service: "SIG_CLUDE_MEMBER_LIST",
+ otherParams: {
+ id: postData.id
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ },
+ delMemberList: function (postData, _callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'POST',
+ service: "DEL_MEMBER_LIST",
+ data: postData,
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ }
+}
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ list: [],
+ result: [],
+ sigId: ''
+ },
+
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad: function (options) {
+ this.setData({
+ sigId: options.sigId
+ })
+ },
+
+ /**
+ * 生命周期函数--监听页面显示
+ */
+ onShow: function () {
+ let that = this;
+ remoteMethods.getCludeMemberList({
+ id: this.data.sigId
+ }, function (data) {
+ that.setData({
+ list: data
+ })
+ })
+ },
+ onChange: function (e) {
+ this.setData({
+ result: e.detail
+ })
+ },
+ del: function () {
+ let that = this;
+ if (!this.data.result.length) {
+ wx.showToast({
+ title: '请选择人员',
+ icon: "none",
+ duration: 2000
+ });
+ return;
+ }
+ let postData = {
+ ids: this.data.result.join('-'),
+ group_id: this.data.sigId
+ }
+ remoteMethods.delMemberList(postData, function (data) {
+ if (data.code === 204) {
+ wx.showToast({
+ title: '操作成功',
+ icon: "success",
+ duration: 2000
+ });
+ wx.navigateBack();
+ } else {
+ wx.showToast({
+ title: '操作失败',
+ icon: "none",
+ duration: 2000
+ });
+ }
+ })
+ }
+})
\ No newline at end of file
diff --git a/src/openeuler/package-meeting/sig/del-member.json b/src/openeuler/package-meeting/sig/del-member.json
new file mode 100644
index 0000000000000000000000000000000000000000..1552ab1c6ac2d2024c02d9821723876540e8fe68
--- /dev/null
+++ b/src/openeuler/package-meeting/sig/del-member.json
@@ -0,0 +1,4 @@
+{
+ "usingComponents": {},
+ "navigationBarTitleText": "选择成员"
+}
\ No newline at end of file
diff --git a/src/openeuler/package-meeting/sig/del-member.wxml b/src/openeuler/package-meeting/sig/del-member.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..4f4ebd3025ba5644f03f1d6d529183f0a5a2a93a
--- /dev/null
+++ b/src/openeuler/package-meeting/sig/del-member.wxml
@@ -0,0 +1,16 @@
+
+
+
+
+
+
+
+
+ {{item.nickname}}
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/openeuler/package-meeting/sig/del-member.wxss b/src/openeuler/package-meeting/sig/del-member.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..ea73f423f1e1fc72395c4a25ae75640cceb3c545
--- /dev/null
+++ b/src/openeuler/package-meeting/sig/del-member.wxss
@@ -0,0 +1,51 @@
+/* pages/sig/del-member.wxss */
+.container {
+ background-color: #fff;
+ margin-top: 20rpx;
+ margin-bottom: 150rpx;
+ padding: 0;
+}
+
+.container .del-item {
+ border-bottom: 1px solid #c7cad0;
+ padding: 0 30rpx;
+ height: 108rpx;
+ line-height: 108rpx;
+ display: flex;
+ align-items: center;
+}
+
+.container .del-item image {
+ width: 72rpx;
+ height: 72rpx;
+ border-radius: 8rpx;
+ display: inline-block;
+ border: 1px solid #979797;
+ margin: 0 20rpx 0 10rpx;
+}
+
+.container .del-item text {
+ display: inline-block;
+ height: 100%;
+}
+
+.container .del-item .inner {
+ height: 100%;
+ display: flex;
+ align-items: center;
+}
+
+.container .del-btn {
+ position: fixed;
+ bottom: 60rpx;
+ left: 125rpx;
+ width: 500rpx;
+ height: 90rpx;
+ line-height: 90rpx;
+ font-size: 36rpx;
+ color: #fff;
+ background-color: #002fa7;
+ border-radius: 8rpx;
+ text-align: center;
+ box-shadow: 0px 5px 20px 0px rgba(126, 146, 178, 0.7);
+}
\ No newline at end of file
diff --git a/src/openeuler/package-meeting/sig/sig-list.js b/src/openeuler/package-meeting/sig/sig-list.js
new file mode 100644
index 0000000000000000000000000000000000000000..64fd2b1a319aab92dc3e06532727c4401bb73a41
--- /dev/null
+++ b/src/openeuler/package-meeting/sig/sig-list.js
@@ -0,0 +1,64 @@
+// pages/sig/sig-list.js
+var appAjax = require('./../../utils/app-ajax');
+let remoteMethods = {
+ getSigList: function (keyword, _callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'GET',
+ service: "SIG_LIST",
+ data: {
+ search: keyword
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ }
+}
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ keyword: '',
+ list: []
+ },
+
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad: function (options) {
+
+ },
+ /**
+ * 生命周期函数--监听页面显示
+ */
+ onShow: function () {
+ let that = this;
+ remoteMethods.getSigList("", function (list) {
+ that.setData({
+ list: list
+ });
+ })
+ },
+ /**
+ * 页面相关事件处理函数--监听用户下拉动作
+ */
+ onPullDownRefresh: function () {
+
+ },
+ toAddMember: function (e) {
+ wx.navigateTo({
+ url: '/package-meeting/sig/add-sig-member?id=' + e.currentTarget.dataset.id + '&name=' + e.currentTarget.dataset.name
+ })
+ },
+ searchInput: function (e) {
+ let that = this;
+ remoteMethods.getSigList(e.detail.value, function (list) {
+ that.setData({
+ list: list
+ });
+ })
+ }
+})
\ No newline at end of file
diff --git a/src/openeuler/package-meeting/sig/sig-list.json b/src/openeuler/package-meeting/sig/sig-list.json
new file mode 100644
index 0000000000000000000000000000000000000000..f8acfeae82fb0800cada89fd6edec56a284f79a8
--- /dev/null
+++ b/src/openeuler/package-meeting/sig/sig-list.json
@@ -0,0 +1,7 @@
+{
+ "usingComponents": {
+ "van-cell": "@vant/weapp/cell/index",
+ "van-cell-group": "@vant/weapp/cell-group/index"
+ },
+ "navigationBarTitleText": "SIG组管理"
+}
\ No newline at end of file
diff --git a/src/openeuler/package-meeting/sig/sig-list.wxml b/src/openeuler/package-meeting/sig/sig-list.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..5ecc2c7d371566058393104ea729ac3f60e61e11
--- /dev/null
+++ b/src/openeuler/package-meeting/sig/sig-list.wxml
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
+
+
+ {{item.group_name}}
+
+
+
+
+
\ No newline at end of file
diff --git a/src/openeuler/package-meeting/sig/sig-list.wxss b/src/openeuler/package-meeting/sig/sig-list.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..4ed2ca29b6fc4e6324b4ca62050fc5ea8451b175
--- /dev/null
+++ b/src/openeuler/package-meeting/sig/sig-list.wxss
@@ -0,0 +1,53 @@
+/* pages/sig/sig-list.wxss */
+.container .input-wraper {
+ box-sizing: border-box;
+ margin: 20rpx 0 30rpx;
+ height: 108rpx;
+ position: relative;
+}
+
+.container .input-wraper .keyword {
+ padding-left: 94rpx;
+ background-color: #fff;
+ border-radius: 8rpx;
+ box-shadow: 0px 5px 15px 0px rgba(225, 230, 238, 1);
+ height: 108rpx;
+ position: absolute;
+ top: 0;
+ width: 100%;
+ font-size: 28rpx;
+ line-height: 40rpx;
+}
+
+.container .input-wraper .search-icon {
+ height: 39rpx;
+ width: 39rpx;
+ display: inline-block;
+ position: absolute;
+ top: 34rpx;
+ left: 32rpx;
+}
+
+.container .sig-list .item {
+ height: 108rpx;
+ background-color: #fff;
+ font-size: 34rpx;
+ color: #333;
+ border-radius: 8rpx;
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ box-shadow: 0px 5px 15px 0px rgba(225, 230, 238, 1);
+ padding: 0 30rpx;
+ margin-bottom: 20rpx;
+}
+
+.container .sig-list .item text {
+ line-height: 48rpx;
+}
+
+.container .sig-list .item image {
+ flex-shrink: 1;
+ width: 31rpx;
+ height: 31rpx;
+}
\ No newline at end of file
diff --git a/src/openeuler/package-my/events/my-list.js b/src/openeuler/package-my/events/my-list.js
new file mode 100644
index 0000000000000000000000000000000000000000..41362f80c969af66f6dc0e33c5d9ef69d8adca34
--- /dev/null
+++ b/src/openeuler/package-my/events/my-list.js
@@ -0,0 +1,351 @@
+// package-my/events/under-release.js
+const appAjax = require('./../../utils/app-ajax');
+const sessionUtil = require("../../utils/app-session.js");
+
+let that = null;
+let remoteMethods = {
+ getList: function (_callback) {
+ let service = '';
+ if (that.data.type == 4) {
+ service = 'GET_DRAFT_LIST'
+ } else if (that.data.type == 1) {
+ service = 'DRAFTS'
+ } else if (that.data.type == 5) {
+ service = 'PUBLISHER_EVENTS_LIST'
+ } else if (that.data.type == 2) {
+ if (that.data.level == 2) {
+ service = 'MY_EVENTS_LIST'
+ } else {
+ service = 'ALL_EVENTS_LIST'
+ }
+
+ } else if (that.data.type == 6) {
+ service = 'EVENT_COLLECT_LIST'
+ } else if (that.data.type == 7) {
+ service = 'MY_SIGNUP_EVENTS'
+ } else if (that.data.type == 3) {
+ if (that.data.level == 2) {
+ service = 'MY_EVENTS_LIST'
+ } else {
+ service = 'ALL_EVENTS_LIST'
+ }
+
+ }
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'GET',
+ service,
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ },
+ delDraft: function (_callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'DELETE',
+ service: 'DRAFT_DETAIL',
+ otherParams: {
+ id: that.data.curId
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ },
+ delEvent: function (_callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'PUT',
+ service: 'DEL_EVENT',
+ otherParams: {
+ id: that.data.curId
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ },
+ collect: function (_callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'POST',
+ service: 'EVENT_COLLECT',
+ data: {
+ activity: that.data.curId
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ },
+ unCollect: function (_callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'DELETE',
+ service: 'EVENT_UNCOLLECT',
+ otherParams: {
+ id: that.data.collectionId
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ },
+ getSignUpInfo: function (id, _callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'GET',
+ service: 'GET_SIGNUP_INFO',
+ otherParams: {
+ id
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ }
+}
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ type: 1,
+ list: [],
+ level: 1,
+ actionShow: false,
+ actions: [],
+ curId: '',
+ userId: '',
+ collectionId: '',
+ showDialogDel: false,
+ noAuthDialogShow: false,
+ user: '',
+ registerId: ''
+ },
+
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad: function (options) {
+ this.setData({
+ type: options.type,
+ level: sessionUtil.getUserInfoByKey('eventLevel'),
+ user: sessionUtil.getUserInfoByKey('userId')
+ })
+ that = this;
+ let title = '';
+ if (options.type == 1) {
+ title = '待发布';
+ } else if (options.type == 2) {
+ title = '已发布';
+ } else if (options.type == 3) {
+ title = '报名表单';
+ } else if (options.type == 4) {
+ title = '草稿箱';
+ } else if (options.type == 5) {
+ title = '发布中';
+ } else if (options.type == 6) {
+ title = '我收藏的活动';
+ } else if (options.type == 7) {
+ title = '我报名的活动';
+ }
+ wx.setNavigationBarTitle({
+ title
+ })
+ },
+
+
+ /**
+ * 生命周期函数--监听页面显示
+ */
+ onShow: function () {
+ remoteMethods.getList(res => {
+ this.setData({
+ list: res
+ })
+
+ })
+ },
+ toSign(e) {
+ wx.navigateTo({
+ url: `/package-events/events/sign?id=${e.currentTarget.dataset.id}`
+ })
+ },
+ editDraft(e) {
+ wx.navigateTo({
+ url: `/package-events/events/event-detail?id=${e.currentTarget.dataset.id}&type=4`
+ })
+ },
+ onActionClose() {
+ this.setData({
+ actionShow: false
+ })
+ },
+ onActionSelect(e) {
+ if (this.data.type == 4) {
+ remoteMethods.delDraft(() => {
+ this.onShow();
+ })
+ } else if ((this.data.type == 2) || (this.data.type == 6) || (this.data.type == 7)) {
+ if (this.data.level == 3) {
+ if (e.detail.operaType == 1) {
+ if (this.data.collectionId) {
+ remoteMethods.unCollect(() => {
+ this.onShow();
+ })
+ } else {
+ remoteMethods.collect(() => {
+ this.onShow();
+ })
+ }
+ } else {
+ this.setData({
+ showDialogDel: true
+ })
+ }
+ } else {
+ if (e.detail.operaType == 1) {
+ if (this.data.collectionId) {
+ remoteMethods.unCollect(() => {
+ this.onShow();
+ })
+ } else {
+ remoteMethods.collect(() => {
+ this.onShow();
+ })
+ }
+ } else if(e.detail.operaType == 3) {
+ remoteMethods.getSignUpInfo(this.data.curId, (res) => {
+ wx.navigateTo({
+ url: `/package-events/sign-up/sign-up-success?name=${encodeURIComponent(res.name)}&title=${encodeURIComponent(res.title)}&tel=${encodeURIComponent(res.telephone)}&poster=${encodeURIComponent(res.poster)}&id=${encodeURIComponent(this.data.curId)}`
+ })
+ })
+ } else {
+ this.setData({
+ noAuthDialogShow: true
+ })
+ }
+ }
+
+ }
+ },
+ onMore(e) {
+ this.setData({
+ actionShow: true,
+ curId: e.currentTarget.dataset.item.id,
+ userId: e.currentTarget.dataset.item.user,
+ collectionId: e.currentTarget.dataset.item.collection_id || '',
+ registerId: e.currentTarget.dataset.item.register_id || ''
+ })
+ const strTemp = this.data.collectionId ? '取消收藏' : '收藏活动';
+ if (this.data.type == 4) {
+ this.setData({
+ actions: [{
+ name: '删除',
+ operaType: 1
+ }]
+ })
+ } else if ((this.data.type == 2) || (this.data.type == 6) || (this.data.type == 7)) {
+ if (this.data.level == 3) {
+ this.setData({
+ actions: [{
+ name: strTemp,
+ operaType: 1
+ },
+ {
+ name: '下架活动',
+ operaType: 2
+ }
+ ]
+ })
+ } else {
+ if (this.data.user == this.data.userId) {
+ this.setData({
+ actions: [{
+ name: strTemp,
+ operaType: 1
+ },
+ {
+ name: '下架活动',
+ operaType: 2
+ }
+ ]
+ })
+ } else {
+ this.setData({
+ actions: [{
+ name: strTemp,
+ operaType: 1
+ }]
+ })
+ }
+
+ if (this.data.registerId) {
+ let tempArr = this.data.actions;
+ tempArr.unshift({
+ name: '查看门票',
+ operaType: 3
+ })
+ this.setData({
+ actions: tempArr
+ })
+ }
+ }
+ }
+
+ },
+ toExamine(e) {
+ wx.navigateTo({
+ url: `/package-events/events/event-detail?id=${e.currentTarget.dataset.id}&type=1`
+ })
+ },
+ del() {
+ this.setData({
+ showDialogDel: false
+ })
+ remoteMethods.delEvent(() => {
+ remoteMethods.getList(res => {
+ this.setData({
+ list: res
+ })
+
+ });
+ })
+ },
+ delCancel() {
+ this.setData({
+ showDialogDel: false
+ })
+ },
+ toUpdateSchedule(e) {
+ if (this.data.type == 4) {
+ this.editDraft(e);
+ } else if ((this.data.type == 2) || (this.data.type == 6) || (this.data.type == 7)) {
+ wx.navigateTo({
+ url: `/package-events/events/event-detail?id=${e.currentTarget.dataset.id}&type=5`
+ })
+ } else if (this.data.type == 3) {
+ this.sendEmail(e);
+ }
+
+ },
+ copyWechat() {
+ wx.setClipboardData({
+ data: 'openeuler123',
+ success: () => {
+ this.setData({
+ noAuthDialogShow: false
+ })
+ }
+ })
+
+ },
+ sendEmail(e) {
+ wx.navigateTo({
+ url: `/package-my/events/send-email?id=${e.currentTarget.dataset.id}`
+ })
+ }
+})
\ No newline at end of file
diff --git a/src/openeuler/package-my/events/my-list.json b/src/openeuler/package-my/events/my-list.json
new file mode 100644
index 0000000000000000000000000000000000000000..6f5247b050d616d1d9ab35b9dec4da0b673757b8
--- /dev/null
+++ b/src/openeuler/package-my/events/my-list.json
@@ -0,0 +1,3 @@
+{
+ "usingComponents": {}
+}
\ No newline at end of file
diff --git a/src/openeuler/package-my/events/my-list.wxml b/src/openeuler/package-my/events/my-list.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..09b1063e3e1ccad012be86d2e692a46d1fb171f2
--- /dev/null
+++ b/src/openeuler/package-my/events/my-list.wxml
@@ -0,0 +1,106 @@
+
+
+
+
+
+
+
+
+
+
+
+ {{item.title}}
+
+
+ {{item.date}}
+
+
+
+ {{item.address||item.join_url}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 已报名 {{item.register_count}}人
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 暂无活动!
+
+
+
+
+ 请确认下架当前活动
+
+
+
+
+
+
+
+
+
+ 活动一经发布,暂不支持自行下架删除。如有需要,请联系
+ 小助手 (微信号openeuler123)
+ 下架活动
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/openeuler/package-my/events/my-list.wxss b/src/openeuler/package-my/events/my-list.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..c51749d69bb442b28fd5db47aa7379adf7024ad5
--- /dev/null
+++ b/src/openeuler/package-my/events/my-list.wxss
@@ -0,0 +1,210 @@
+/* package-my/events/under-release.wxss */
+page {
+ background-color: #f5f7fa !important;
+}
+
+.container .event-list-wrapper {
+ padding: 30rpx 0 0;
+}
+
+.container .event-list-wrapper .event-item {
+ margin-bottom: 30rpx;
+ box-shadow: 0rpx 5rpx 15rpx 0rpx rgba(0, 47, 167, 0.1);
+ border-radius: 8rpx;
+ overflow: hidden;
+ position: relative;
+ background-color: #fff;
+}
+
+.container .event-list-wrapper .event-item .collection {
+ width: 40rpx;
+ height: 26rpx;
+ position: absolute;
+ top: 33rpx;
+ left: 0;
+}
+
+.container .event-list-wrapper .event-item .header {
+ height: 90rpx;
+ padding: 0 30rpx;
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ font-size: 28rpx;
+ color: #333;
+ border-bottom: 2rpx solid #f0f3f7;
+}
+
+.container .event-list-wrapper .event-item .isCollection {
+ padding-left: 60rpx;
+}
+
+.container .event-list-wrapper .event-item .header image {
+ height: 36rpx;
+ width: 8rpx;
+}
+
+.container .event-list-wrapper .event-item .body {
+ padding: 30rpx;
+ display: flex;
+}
+
+.container .event-list-wrapper .event-item .body .left {
+ margin-right: 20rpx;
+}
+
+.container .event-list-wrapper .event-item .body .left image {
+ width: 241rpx;
+ height: 241rpx;
+ border-radius: 8rpx;
+}
+
+.container .event-list-wrapper .event-item .body .right .title {
+ font-size: 30rpx;
+ overflow: hidden;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+ margin-bottom: 20rpx;
+ width: 380rpx;
+}
+
+.container .event-list-wrapper .event-item .body .right .date {
+ margin-bottom: 20rpx;
+ font-size: 24rpx;
+ color: #6d7278;
+ overflow: hidden;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+ width: 380rpx;
+}
+
+.container .event-list-wrapper .event-item .body .right .date image {
+ height: 28rpx;
+ width: 28rpx;
+ margin-right: 16rpx;
+ vertical-align: middle;
+}
+.container .event-list-wrapper .event-item .body .right .date text {
+ vertical-align: middle;
+}
+
+.container .event-list-wrapper .event-item .body .right .address {
+ font-size: 24rpx;
+ color: #6d7278;
+ overflow: hidden;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+ width: 380rpx;
+ margin-bottom: 30rpx;
+}
+
+.container .event-list-wrapper .event-item .body .right .address image {
+ height: 28rpx;
+ width: 28rpx;
+ margin-right: 16rpx;
+ vertical-align: middle;
+}
+
+.container .event-list-wrapper .event-item .body .right .address image text {
+ vertical-align: middle;
+}
+
+.container .event-list-wrapper .event-item .body .right .button {
+ text-align: right;
+ height: 68rpx;
+}
+
+.container .event-list-wrapper .event-item .body .right .button button {
+ height: 68rpx;
+ width: 172rpx;
+ text-align: center;
+ line-height: 68rpx;
+ color: #fff;
+ background-color: #002fa7;
+ border-radius: 8rpx;
+ font-size: 28rpx;
+ display: inline-block;
+}
+
+.container .event-list-wrapper .event-item .body .right .button .sign-btn {
+ margin-right: 30rpx;
+}
+
+.container .event-list-wrapper .event-item .body .right .button .register {
+ background-color: #6682ca;
+}
+
+.container .event-list-wrapper .event-item .mask {
+ position: absolute;
+ height: 100%;
+ width: 100%;
+ background-color: #002fa7;
+ opacity: 0.65;
+ top: 0;
+ left: 0;
+}
+
+.container .event-list-wrapper .event-item .mask .mask-img {
+ position: absolute;
+ height: 137rpx;
+ width: 180rpx;
+ left: 50%;
+ top: 50%;
+ margin-left: -90rpx;
+ margin-top: -68rpx;
+}
+
+.empty-status .suc-wrapper {
+ position: absolute;
+ top: 50%;
+ transform: translate(-50%, -50%);
+ left: 50%;
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ justify-content: center;
+}
+
+.empty-status .suc-wrapper image {
+ width: 234rpx;
+ height: 218rpx;
+}
+
+.empty-status .suc-wrapper text {
+ text-align: center;
+ margin-top: 20rpx;
+ font-size: 34rpx;
+ color: #333;
+}
+
+.container .event-list-wrapper .event-item .sendSignUpInfo {
+ height: 118rpx;
+ display: flex;
+ padding: 0 30rpx;
+ align-items: center;
+ justify-content: space-between;
+ border-top: 2rpx solid #f0f3f7;
+}
+
+.container .event-list-wrapper .event-item .sendSignUpInfo .signUpNum {
+ font-size: 24rpx;
+ color: #002fa7;
+}
+
+.container .event-list-wrapper .event-item .sendSignUpInfo .sendBtn {
+ height: 68rpx;
+ width: 236rpx;
+ text-align: center;
+ line-height: 68rpx;
+ background-color: #002fa7;
+ color: #fff;
+ border-radius: 8rpx ;
+ margin: unset;
+ font-size: 28rpx;
+ padding: unset;
+}
+
+.container .event-list-wrapper .event-item .body .small image {
+ width: 180rpx;
+ height: 180rpx;
+}
\ No newline at end of file
diff --git a/src/openeuler/package-my/events/send-email.js b/src/openeuler/package-my/events/send-email.js
new file mode 100644
index 0000000000000000000000000000000000000000..34f89b9ff3fe2d77c2225dffa2b7be12dd7e5ffe
--- /dev/null
+++ b/src/openeuler/package-my/events/send-email.js
@@ -0,0 +1,68 @@
+// package-my/events/send-email.js
+const appAjax = require('./../../utils/app-ajax');
+const validationConfig = require('./../../config/field-validate-rules');
+
+let that = null;
+
+let remoteMethods = {
+ sendEmail: function (_callback) {
+ if(!validationConfig.email.regex.test(that.data.emailAddress)){
+ wx.showToast({
+ title: '请输入正确的邮箱地址',
+ icon: "none",
+ duration: 2000
+ });
+ return;
+ }
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'POST',
+ service: "SEND_SIGNUP_INFO",
+ data: {
+ activity: that.data.id,
+ mailto: that.data.emailAddress
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ }
+}
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ emailAddress: '',
+ id: ''
+ },
+
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad: function (options) {
+ that = this;
+ this.setData({
+ id: options.id
+ })
+ },
+ onInput: function (e) {
+ this.setData({
+ emailAddress: e.detail.value
+ })
+ },
+ confirm() {
+ remoteMethods.sendEmail(() => {
+ wx.showToast({
+ title: '发送成功',
+ icon: "success",
+ duration: 2000,
+ mask: true
+ });
+ setTimeout(() => {
+ wx.navigateBack();
+ }, 2000)
+ })
+ }
+})
\ No newline at end of file
diff --git a/src/openeuler/package-my/events/send-email.json b/src/openeuler/package-my/events/send-email.json
new file mode 100644
index 0000000000000000000000000000000000000000..ca6b4b5aae836072946488de3ad51e18cf36bc56
--- /dev/null
+++ b/src/openeuler/package-my/events/send-email.json
@@ -0,0 +1,3 @@
+{
+ "navigationBarTitleText": "报名表单"
+}
\ No newline at end of file
diff --git a/src/openeuler/package-my/events/send-email.wxml b/src/openeuler/package-my/events/send-email.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..e953eff997b9e64399eb4063af81f20f476807b2
--- /dev/null
+++ b/src/openeuler/package-my/events/send-email.wxml
@@ -0,0 +1,8 @@
+
+
+ 邮箱地址
+
+
+
+
+
\ No newline at end of file
diff --git a/src/openeuler/package-my/events/send-email.wxss b/src/openeuler/package-my/events/send-email.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..b9fa2341b1442927aa70cbe1d642ce268dd8f1fd
--- /dev/null
+++ b/src/openeuler/package-my/events/send-email.wxss
@@ -0,0 +1,46 @@
+/* package-my/events/send-email.wxss */
+page {
+ background-color: #f5f7fa !important;
+}
+.container {
+ padding: 20rpx 0;
+}
+
+.container .input-title {
+ padding-left: 30rpx;
+ margin: 30rpx 0;
+ color: #333;
+ font-size: 34rpx;
+ line-height: 48rpx;
+ font-weight: 400;
+}
+
+.container input {
+ height: 108rpx;
+ color: #333;
+ line-height: 45rpx;
+ font-size: 32rpx;
+ font-weight: 400rpx;
+ padding-left: 30rpx;
+ background-color: #fff;
+}
+
+.container .btn-wraper {
+ margin-top: 128rpx;
+ display: flex;
+ justify-content: space-between;
+ padding: 0 30rpx;
+}
+
+.container .btn-wraper button {
+ width: 500rpx;
+ height: 90rpx;
+ font-size: 36rpx;
+ line-height: 90rpx;
+ text-align: center;
+}
+
+.container .btn-wraper .confirm {
+ color: #fff;
+ background-color: #002fa7;
+}
\ No newline at end of file
diff --git a/src/openeuler/package-my/my/feedback.js b/src/openeuler/package-my/my/feedback.js
new file mode 100644
index 0000000000000000000000000000000000000000..e3ed7c49ed6b844034b8dd74bc88523980c0bb34
--- /dev/null
+++ b/src/openeuler/package-my/my/feedback.js
@@ -0,0 +1,82 @@
+// package-my/my/feedback.js
+const appAjax = require('./../../utils/app-ajax');
+const validationConfig = require('./../../config/field-validate-rules');
+
+let that = null;
+
+let remoteMethods = {
+ saveFeedback: function (_callback) {
+ if(!that.data.content){
+ wx.showToast({
+ title: '请输入留言反馈',
+ icon: "none",
+ duration: 2000
+ });
+ return;
+ }
+ if(!validationConfig.email.regex.test(that.data.email)){
+ wx.showToast({
+ title: '请输入正确的邮箱地址',
+ icon: "none",
+ duration: 2000
+ });
+ return;
+ }
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'POST',
+ service: "SAVE_FEEDBACK",
+ data: {
+ feedback_type: that.data.type,
+ feedback_content: that.data.content,
+ feedback_email: that.data.email
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ }
+}
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ type: 1,
+ content: '',
+ email: ''
+ },
+ onLoad() {
+ that = this;
+ },
+ switchTab(e) {
+ this.setData({
+ type: e.currentTarget.dataset.index
+ })
+ },
+ contentInput(e) {
+ this.setData({
+ content: e.detail.value
+ })
+ },
+ emailInput(e) {
+ this.setData({
+ email: e.detail.value
+ })
+ },
+ saveFeedback() {
+ remoteMethods.saveFeedback(() => {
+ wx.showToast({
+ title: '提交成功',
+ icon: "success",
+ duration: 2000,
+ mask: true
+ });
+ setTimeout(() => {
+ wx.navigateBack();
+ }, 2000)
+ })
+ }
+
+})
\ No newline at end of file
diff --git a/src/openeuler/package-my/my/feedback.json b/src/openeuler/package-my/my/feedback.json
new file mode 100644
index 0000000000000000000000000000000000000000..49e89594aba96235038a41afaf901326ac4d46ca
--- /dev/null
+++ b/src/openeuler/package-my/my/feedback.json
@@ -0,0 +1,3 @@
+{
+ "navigationBarTitleText": "留言反馈"
+}
\ No newline at end of file
diff --git a/src/openeuler/package-my/my/feedback.wxml b/src/openeuler/package-my/my/feedback.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..9bd9b9e4f986b962fc9a0442bb5869da6184b21d
--- /dev/null
+++ b/src/openeuler/package-my/my/feedback.wxml
@@ -0,0 +1,40 @@
+
+
+
+
+ 反馈类型
+
+ 问题反馈
+ 产品建议
+
+
+
+
+ 留言反馈
+ *
+
+
+
+
+
+ 邮箱地址
+ *
+
+
+
+
+
+
+
+
+ *
+ 号为必填项
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/openeuler/package-my/my/feedback.wxss b/src/openeuler/package-my/my/feedback.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..06d4dabcfe1aff0f9cf2635ed666d50ecb6260fb
--- /dev/null
+++ b/src/openeuler/package-my/my/feedback.wxss
@@ -0,0 +1,140 @@
+/* package-my/my/feedback.wxss */
+page {
+ background-color: #f5f7fa !important;
+}
+
+.container {
+ padding: 20rpx 0 129rpx 0;
+}
+
+textarea {
+ height: 45rpx;
+ flex: 1;
+}
+
+input {
+ flex: 1;
+}
+
+.require {
+ color: #f76270;
+}
+
+.placeholder {
+ color: #c7cad0;
+}
+
+.container .form .form-item {
+ padding: 0 30rpx;
+ background-color: #fff;
+ height: 108rpx;
+ color: #333;
+ font-size: 34rpx;
+ display: flex;
+ align-items: center;
+ justify-content: start;
+}
+
+.container .form .form-wrapper {
+ box-shadow: 0rpx 5rpx 15rpx 0rpx rgba(0, 47, 167, 0.1);
+ border-radius: 8rpx;
+ background-color: #fff;
+ overflow: hidden;
+}
+
+
+
+.container .form .form-item .label {
+ margin-right: 60rpx;
+}
+
+.container .form .form-item input {
+ color: #6d7278;
+}
+
+
+.container .form .form-item textarea {
+ color: #6d7278;
+}
+
+.container .form .form-item image {
+ width: 30rpx;
+ height: 30rpx;
+}
+
+.container .form .meeting-desc {
+ padding-top: 30rpx;
+ align-items: flex-start;
+ height: 244rpx;
+ margin: 20rpx 0;
+}
+
+.container .form .meeting-desc textarea {
+ height: 184rpx;
+ position: relative;
+}
+
+.container .form .meeting-desc textarea .hint {
+ position: absolute;
+ right: 0;
+ bottom: 0;
+ color: #c7cad0;
+ font-size: 28rpx;
+}
+
+.container .info {
+ font-size: 29rpx;
+ color: #6d7278;
+ margin-bottom: 20rpx;
+ padding: 0 30rpx;
+}
+
+.container .info view {
+ margin: 30rpx 0;
+}
+
+.container .info view image {
+ width: 28rpx;
+ height: 28rpx;
+ margin-right: 15rpx;
+ vertical-align: middle;
+}
+
+.container .commit {
+ display: flex;
+ justify-content: space-between;
+ height: 90rpx;
+ font-size: 36rpx;
+ margin-top: 108rpx;
+}
+
+.container .commit button {
+ width: 500rpx;
+ text-align: center;
+ line-height: 90rpx;
+ height: 100%;
+ border-radius: 8rpx;
+}
+
+.container .commit .meeting-btn {
+ color: #fff;
+ background-color: #002fa7;
+}
+
+.container .form .form-item .type .tab {
+ width: 152rpx;
+ height: 56rpx;
+ border: 2rpx solid #c7cad0;
+ border-radius: 8rpx;
+ color:#c7cad0;
+ font-size: 28rpx;
+ text-align: center;
+ line-height: 56rpx;
+ margin-right: 20rpx;
+ display: inline-block;
+}
+
+.container .form .form-item .type .active {
+ border: 2rpx solid #002fa7;
+ color:#002fa7;
+}
\ No newline at end of file
diff --git a/src/openeuler/package-my/my/help.js b/src/openeuler/package-my/my/help.js
new file mode 100644
index 0000000000000000000000000000000000000000..4f7f4a504f7ba2d01edb6be466fddff59ad7f08b
--- /dev/null
+++ b/src/openeuler/package-my/my/help.js
@@ -0,0 +1,35 @@
+// pages/my/help.js
+const resourceUrl = 'https://openeuler-website.obs.ap-southeast-1.myhuaweicloud.com/help';
+
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ list: [
+ {
+ name: '会议攻略',
+ contentImg: [
+ resourceUrl + '/11.png',
+ resourceUrl + '/12.png',
+ resourceUrl + '/13.png'
+ ]
+ },
+ {
+ name: '活动攻略',
+ contentImg: [
+ resourceUrl + '/21.png',
+ resourceUrl + '/22.png',
+ resourceUrl + '/23.png'
+ ]
+ }
+ ],
+ curIndex: 0
+ },
+ switchTab(e) {
+ this.setData({
+ curIndex: e.currentTarget.dataset.index
+ })
+ }
+})
\ No newline at end of file
diff --git a/src/openeuler/package-my/my/help.json b/src/openeuler/package-my/my/help.json
new file mode 100644
index 0000000000000000000000000000000000000000..99296ebde26b8b9711880d6d8e763bc068c2a761
--- /dev/null
+++ b/src/openeuler/package-my/my/help.json
@@ -0,0 +1,4 @@
+{
+ "usingComponents": {},
+ "navigationBarTitleText": "小程序使用攻略"
+}
\ No newline at end of file
diff --git a/src/openeuler/package-my/my/help.wxml b/src/openeuler/package-my/my/help.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..84f62002729bcfd026b0ddb546506c1d8e815f5b
--- /dev/null
+++ b/src/openeuler/package-my/my/help.wxml
@@ -0,0 +1,12 @@
+
+
+
+ {{item.name}}
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/openeuler/package-my/my/help.wxss b/src/openeuler/package-my/my/help.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..f8522a7e1adf1b03cd244f89dd3f7c7738e3fd56
--- /dev/null
+++ b/src/openeuler/package-my/my/help.wxss
@@ -0,0 +1,41 @@
+/* pages/my/help.wxss */
+page {
+ background-color: #f5f7fa;
+}
+
+.container {
+ padding: 0 !important;
+}
+
+.container .tabs {
+ height: 134rpx;
+ display: flex;
+ justify-content: space-around;
+ align-items: center;
+ margin-bottom: 20rpx;
+ background-color: #fff;
+}
+
+.container .tabs .tab-item {
+ color: #c7cad0;
+ font-size: 34rpx;
+ height: 100%;
+ line-height: 134rpx;
+}
+
+.container .tabs .active {
+ border-bottom: 10rpx solid #3265e8;
+ color: #333;
+ border-radius: 0 0 5px 5px;
+}
+
+.container .tab-content {
+ background-color: #fff;
+ padding: 40rpx 30rpx 0;
+}
+
+.container .tab-content image {
+ width: 690rpx;
+ height: 1100rpx;
+ margin-bottom: 40rpx;
+}
\ No newline at end of file
diff --git a/src/openeuler/package-my/my/my-collection.js b/src/openeuler/package-my/my/my-collection.js
new file mode 100644
index 0000000000000000000000000000000000000000..a155d0534e2d9e601672d3b3c2315110d61198a8
--- /dev/null
+++ b/src/openeuler/package-my/my/my-collection.js
@@ -0,0 +1,10 @@
+// pages/my/my-collection.js
+
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ }
+})
\ No newline at end of file
diff --git a/src/openeuler/package-my/my/my-collection.json b/src/openeuler/package-my/my/my-collection.json
new file mode 100644
index 0000000000000000000000000000000000000000..669e3288c1280eee561c6498c99c5273b0a20fb2
--- /dev/null
+++ b/src/openeuler/package-my/my/my-collection.json
@@ -0,0 +1,6 @@
+{
+ "usingComponents": {
+ "meeting-list": "/components/meeting-list/meeting-list"
+ },
+ "navigationBarTitleText": "我收藏的会议"
+}
\ No newline at end of file
diff --git a/src/openeuler/package-my/my/my-collection.wxml b/src/openeuler/package-my/my/my-collection.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..c7b754a832da0e03dee62726a338fced2876fbe3
--- /dev/null
+++ b/src/openeuler/package-my/my/my-collection.wxml
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file
diff --git a/src/openeuler/package-my/my/my-collection.wxss b/src/openeuler/package-my/my/my-collection.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..9ff0e18274f78a045da4be6f18afb2cd45fe1859
--- /dev/null
+++ b/src/openeuler/package-my/my/my-collection.wxss
@@ -0,0 +1,7 @@
+/* pages/my/my-collection.wxss */
+page {
+ background-color: #f5f7fa !important;
+}
+.container {
+ padding-top: 30rpx;
+}
\ No newline at end of file
diff --git a/src/openeuler/package-my/my/my-meetings.js b/src/openeuler/package-my/my/my-meetings.js
new file mode 100644
index 0000000000000000000000000000000000000000..361bc3f40ff946ef21887199742b63cf182cd5f1
--- /dev/null
+++ b/src/openeuler/package-my/my/my-meetings.js
@@ -0,0 +1,10 @@
+// pages/my/my-meetings.js
+
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ }
+})
\ No newline at end of file
diff --git a/src/openeuler/package-my/my/my-meetings.json b/src/openeuler/package-my/my/my-meetings.json
new file mode 100644
index 0000000000000000000000000000000000000000..168d7ff70d23cc9fa27fcd08be7ef0deb4556e2d
--- /dev/null
+++ b/src/openeuler/package-my/my/my-meetings.json
@@ -0,0 +1,6 @@
+{
+ "usingComponents": {
+ "meeting-list": "/components/meeting-list/meeting-list"
+ },
+ "navigationBarTitleText": "我创建的会议"
+}
\ No newline at end of file
diff --git a/src/openeuler/package-my/my/my-meetings.wxml b/src/openeuler/package-my/my/my-meetings.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..94b3f5160f5fbdcb839882eaf98a2dde465fe058
--- /dev/null
+++ b/src/openeuler/package-my/my/my-meetings.wxml
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file
diff --git a/src/openeuler/package-my/my/my-meetings.wxss b/src/openeuler/package-my/my/my-meetings.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..0254da61198987fa3b7ad74207a471188c4cdd2c
--- /dev/null
+++ b/src/openeuler/package-my/my/my-meetings.wxss
@@ -0,0 +1,7 @@
+/* pages/my/my-meetings.wxss */
+page {
+ background-color: #f5f7fa !important;
+}
+.container {
+ padding-top: 30rpx;
+}
\ No newline at end of file
diff --git a/src/openeuler/package-my/my/privecy.js b/src/openeuler/package-my/my/privecy.js
new file mode 100644
index 0000000000000000000000000000000000000000..142b35e59457443687e299f1339958d9dab1d22d
--- /dev/null
+++ b/src/openeuler/package-my/my/privecy.js
@@ -0,0 +1,66 @@
+// pages/my/privecy.js
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+
+ },
+
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad: function (options) {
+
+ },
+
+ /**
+ * 生命周期函数--监听页面初次渲染完成
+ */
+ onReady: function () {
+
+ },
+
+ /**
+ * 生命周期函数--监听页面显示
+ */
+ onShow: function () {
+
+ },
+
+ /**
+ * 生命周期函数--监听页面隐藏
+ */
+ onHide: function () {
+
+ },
+
+ /**
+ * 生命周期函数--监听页面卸载
+ */
+ onUnload: function () {
+
+ },
+
+ /**
+ * 页面相关事件处理函数--监听用户下拉动作
+ */
+ onPullDownRefresh: function () {
+
+ },
+
+ /**
+ * 页面上拉触底事件的处理函数
+ */
+ onReachBottom: function () {
+
+ },
+
+ /**
+ * 用户点击右上角分享
+ */
+ onShareAppMessage: function () {
+
+ }
+})
\ No newline at end of file
diff --git a/src/openeuler/package-my/my/privecy.json b/src/openeuler/package-my/my/privecy.json
new file mode 100644
index 0000000000000000000000000000000000000000..3423d3d0801156ceffd76783be92f9592fee27aa
--- /dev/null
+++ b/src/openeuler/package-my/my/privecy.json
@@ -0,0 +1,4 @@
+{
+ "usingComponents": {},
+ "navigationBarTitleText": "社区隐私声明"
+}
\ No newline at end of file
diff --git a/src/openeuler/package-my/my/privecy.wxml b/src/openeuler/package-my/my/privecy.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..427e8e2e3ce2893cbc72391c33e6865333f530ae
--- /dev/null
+++ b/src/openeuler/package-my/my/privecy.wxml
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file
diff --git a/src/openeuler/package-my/my/privecy.wxss b/src/openeuler/package-my/my/privecy.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..bb8d74b6f0ae1d9c18d963fed84fdbbf0370b82d
--- /dev/null
+++ b/src/openeuler/package-my/my/privecy.wxss
@@ -0,0 +1,8 @@
+/* pages/my/privecy.wxss */
+page {
+ background-color: #fff;
+}
+
+.container image {
+ width: 100%;
+}
\ No newline at end of file
diff --git a/src/openeuler/package-my/my/qrcode.js b/src/openeuler/package-my/my/qrcode.js
new file mode 100644
index 0000000000000000000000000000000000000000..715ff69db087765f0d38e94be138065be4980d71
--- /dev/null
+++ b/src/openeuler/package-my/my/qrcode.js
@@ -0,0 +1,65 @@
+// package-my/my/qrcode.js
+const resourceUrl = 'https://openeuler-website.obs.ap-southeast-1.myhuaweicloud.com/qrcode/';
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ type: 0,
+ data: [
+ {
+ avatar: resourceUrl + '编组.png',
+ name: 'openEuler',
+ qrcode: resourceUrl + 'openeuler公众号.png'
+ },
+ {
+ avatar: resourceUrl + 'Bilibili-B站.png',
+ name: 'bilibili',
+ qrcode: resourceUrl + 'openeuler哩哩哔哔.png'
+ },
+ {
+ avatar: resourceUrl + '今日头条.png',
+ name: '今日头条',
+ qrcode: resourceUrl + 'openeuler今日头条.png'
+ }
+ ]
+ },
+
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad: function (options) {
+ this.setData({
+ type: options.type - 1
+ })
+ },
+ saveQrcode() {
+ const that = this;
+ wx.getSetting({
+ success(res) {
+ wx.downloadFile({
+ url: that.data.data[that.data.type].qrcode,
+ success: function(res) {
+ wx.saveImageToPhotosAlbum({
+ filePath: res.tempFilePath,
+ success: function(data) {
+ wx.showToast({
+ title: "保存成功",
+ icon: "success",
+ duration: 2000
+ });
+ },
+ fail: function(err) {
+ console.log(err);
+ },
+ complete(res) {
+ console.log(res);
+ }
+ });
+ }
+ });
+ }
+ });
+ }
+})
\ No newline at end of file
diff --git a/src/openeuler/package-my/my/qrcode.json b/src/openeuler/package-my/my/qrcode.json
new file mode 100644
index 0000000000000000000000000000000000000000..6f5247b050d616d1d9ab35b9dec4da0b673757b8
--- /dev/null
+++ b/src/openeuler/package-my/my/qrcode.json
@@ -0,0 +1,3 @@
+{
+ "usingComponents": {}
+}
\ No newline at end of file
diff --git a/src/openeuler/package-my/my/qrcode.wxml b/src/openeuler/package-my/my/qrcode.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..fec6e4d05e4a120ab1935f1406479e52567771e9
--- /dev/null
+++ b/src/openeuler/package-my/my/qrcode.wxml
@@ -0,0 +1,9 @@
+
+
+
+ {{data[type].name}}
+
+ 1.保存二维码 → 2.用微信从相册选图扫描 → 3.关注
+
+
+
diff --git a/src/openeuler/package-my/my/qrcode.wxss b/src/openeuler/package-my/my/qrcode.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..9c78ff2e4b68518b70eb5776df9eb074d3861885
--- /dev/null
+++ b/src/openeuler/package-my/my/qrcode.wxss
@@ -0,0 +1,53 @@
+/* package-my/my/qrcode.wxss */
+.container {
+ height: 1502rpx;
+ background: url(https://openeuler-website.obs.ap-southeast-1.myhuaweicloud.com/qrcode/back.png) no-repeat;
+ background-size: 100% 100%;
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+}
+
+.container .avatar {
+ margin-top: 188rpx;
+ width: 128rpx;
+ height: 128rpx;
+ border-radius: 100%;
+}
+
+.container .name {
+ margin-top: 20rpx;
+ color: #333;
+ font-size: 34rpx;
+ line-height: 48rpx;
+}
+.container .line {
+ height: 2rpx;
+ width: 500rpx;
+ border-top: 2rpx solid #f0f3f7;
+ margin-top: 30rpx;
+}
+
+.container .qrcode-desc {
+ margin-top: 128rpx;
+ font-size: 24rpx;
+ line-height: 38rpx;
+ color: #6d7278;
+}
+
+.container .qrcode {
+ margin-top: 30rpx;
+ width: 300rpx;
+ height: 300rpx;
+}
+
+.container button {
+ margin-top: 128rpx;
+ width: 500rpx;
+ height: 90rpx;
+ line-height: 90rpx;
+ border-radius: 8rpx;
+ background-color: #002fa7;
+ text-align: center;
+ color: #fff;
+}
\ No newline at end of file
diff --git a/src/openeuler/package.json b/src/openeuler/package.json
new file mode 100644
index 0000000000000000000000000000000000000000..30006d8d79bc826c966013d0e8ec698bbae59804
--- /dev/null
+++ b/src/openeuler/package.json
@@ -0,0 +1,6 @@
+{
+ "dependencies": {
+ "@vant/weapp": "^1.6.8",
+ "wxml-to-canvas": "^1.1.1"
+ }
+}
diff --git a/src/openeuler/pages/auth/auth.js b/src/openeuler/pages/auth/auth.js
new file mode 100644
index 0000000000000000000000000000000000000000..d13ca7647bda68eb65fe5e4ac2c008d593f1f59e
--- /dev/null
+++ b/src/openeuler/pages/auth/auth.js
@@ -0,0 +1,74 @@
+// pages/auth/auth.js
+const mixin = require("../../utils/page-mixin.js").$pageMixin;
+const appUser = require("../../utils/app-user.js");
+const app = getApp();
+let that = null;
+Page(mixin({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ id: '',
+ canIUseGetUserProfile: false
+ },
+ onLoad(options) {
+ that = this;
+ if (options.id) {
+ this.setData({
+ id: options.id
+ })
+ }
+ if (wx.getUserProfile) {
+ this.setData({
+ canIUseGetUserProfile: true
+ })
+ }
+ },
+ onShow() {
+
+ },
+ /**
+ * 绑定获取用户信息
+ */
+ bindGetUserInfo: function (e) {
+
+ wx.getSetting({
+ success: function (res) {
+
+ if (res.authSetting['scope.userInfo']) {
+ appUser.wxLogin(function (result) {
+ const pages = getCurrentPages(); // 当前页面
+ const beforePage = ((pages[pages.length - 2].route === 'pages/auth/auth') ? pages[pages.length - 3] : pages[pages.length - 2]); // 前一个页面
+ const id = beforePage.options.id || beforePage.options.scene || that.data.id;
+ const url = id ? '/' + beforePage.route + '?id=' + id : '/' + beforePage.route
+ wx.reLaunch({
+ url: url
+ })
+ });
+ }
+ }
+ });
+ },
+ bindGetUserProfile() {
+ wx.getUserProfile({
+ desc: '用于会议和活动所需信息',
+ success: (res) => {
+ appUser.wxGetUserProfileLogin(function (result) {
+ const pages = getCurrentPages(); // 当前页面
+ const beforePage = ((pages[pages.length - 2].route === 'pages/auth/auth') ? pages[pages.length - 3] : pages[pages.length - 2]); // 前一个页面
+ const id = beforePage.options.id || beforePage.options.scene || that.data.id;
+ const url = id ? '/' + beforePage.route + '?id=' + id : '/' + beforePage.route
+ wx.reLaunch({
+ url: url
+ })
+ }, res.userInfo);
+ }
+ })
+ },
+ toPrivacy() {
+ wx.navigateTo({
+ url: '/package-my/my/privecy'
+ })
+ }
+}))
\ No newline at end of file
diff --git a/src/openeuler/pages/auth/auth.json b/src/openeuler/pages/auth/auth.json
new file mode 100644
index 0000000000000000000000000000000000000000..1ce07e26295d210a03ed6bc2bee94b6ecb5c870f
--- /dev/null
+++ b/src/openeuler/pages/auth/auth.json
@@ -0,0 +1,3 @@
+{
+ "navigationBarTitleText": "登录"
+}
\ No newline at end of file
diff --git a/src/openeuler/pages/auth/auth.wxml b/src/openeuler/pages/auth/auth.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..f92fce713fc77e2eaa77772cc63829e1e3999a1b
--- /dev/null
+++ b/src/openeuler/pages/auth/auth.wxml
@@ -0,0 +1,20 @@
+
+
+
+ 为便于您在使用 openEuler 会议预定小程序的过程中能够获得所有操作权限, 需要您允许授权使用微信用户信息。
+
+
+
+ 登录即表示同意隐私条款
+
+
\ No newline at end of file
diff --git a/src/openeuler/pages/auth/auth.wxss b/src/openeuler/pages/auth/auth.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..94266aa2e4f2ab9c2df2059f490263e791100836
--- /dev/null
+++ b/src/openeuler/pages/auth/auth.wxss
@@ -0,0 +1,69 @@
+/* pages/auth/auth.wxss */
+page {
+ background-color: #fff;
+ height: unset;
+}
+
+.container {
+ padding: 0 !important;
+}
+
+.container .img {
+ display: block;
+ width: 503rpx;
+ height: 408rpx;
+ margin: 160rpx auto;
+}
+
+.container .p {
+ margin-top: 196rpx;
+ line-height: 48rpx;
+ font-size: 34rpx;
+ color: #6d7278;
+ margin-bottom: 120rpx;
+ padding: 0 60rpx;
+ font-weight: 400;
+}
+
+.container .button {
+ line-height: 90rpx;
+ padding: 0;
+ height: 90rpx;
+ width: 500rpx;
+ margin: 0 auto;
+ color: #fff;
+ font-size: 36rpx;
+ background-color: #002fa7;
+ border-radius: 8rpx;
+ font-weight: normal;
+ box-shadow: 0px 5px 20px 0px rgba(126, 146, 178, 0.7);
+}
+
+.container .button view {
+ height: 100%;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+}
+
+.container .button text {
+ vertical-align: middle;
+}
+
+.container .button .wechat-icon {
+ vertical-align: middle;
+ margin-right: 20rpx;
+ width: 44rpx;
+ height: 36rpx;
+}
+
+.container .privacy {
+ color: #6d7278;
+ font-size: 28prpx;
+ text-align: center;
+ margin-top: 30rpx;
+}
+
+.container .privacy text {
+ color: #002fa7;
+}
\ No newline at end of file
diff --git a/src/openeuler/pages/events/events.js b/src/openeuler/pages/events/events.js
new file mode 100644
index 0000000000000000000000000000000000000000..b222ac97fc1654a04890ebacb1012cb1cacbe530
--- /dev/null
+++ b/src/openeuler/pages/events/events.js
@@ -0,0 +1,311 @@
+// pages/events/events.js
+const appAjax = require('./../../utils/app-ajax');
+const sessionUtil = require("../../utils/app-session.js");
+const appUser = require("../../utils/app-user.js");
+let that = null;
+
+let remoteMethods = {
+ getList: function (_callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'GET',
+ service: 'LATEST_EVENTS',
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ },
+ delDraft: function (_callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'DELETE',
+ service: 'DRAFT_DETAIL',
+ otherParams: {
+ id: that.data.curId
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ },
+ delEvent: function (_callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'PUT',
+ service: 'DEL_EVENT',
+ otherParams: {
+ id: that.data.curId
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ },
+ collect: function (_callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'POST',
+ service: 'EVENT_COLLECT',
+ data: {
+ activity: that.data.curId
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ },
+ unCollect: function (_callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'DELETE',
+ service: 'EVENT_UNCOLLECT',
+ otherParams: {
+ id: that.data.collectionId
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ },
+ getSignUpInfo: function (id, _callback) {
+ appAjax.postJson({
+ autoShowWait: true,
+ type: 'GET',
+ service: 'GET_SIGNUP_INFO',
+ otherParams: {
+ id
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ }
+}
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ iphoneX: false,
+ level: 1,
+ noAuthDialogShow: false,
+ user: '',
+ list: [],
+ actionShow: false,
+ actions: [],
+ underDialogShow: false,
+ showDialogDel: false,
+ curId: '',
+ userId: '',
+ collectionId: '',
+ registerId: ''
+ },
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad: function (options) {
+ that = this;
+ this.setData({
+ iphoneX: this.getTabBar().data.iPhoneX
+ })
+ appUser.updateUserInfo(function () {
+ that.setData({
+ level: sessionUtil.getUserInfoByKey('eventLevel') || 1,
+ user: sessionUtil.getUserInfoByKey('userId')
+ })
+ remoteMethods.getList(res => {
+ that.setData({
+ list: res
+ })
+
+ })
+ });
+ },
+ /**
+ * 生命周期函数--监听页面显示
+ */
+ onShow: function () {
+ this.getTabBar().setData({
+ _tabbat: 2
+ })
+ },
+ navigateTo(e) {
+ const url = e.currentTarget.dataset.url;
+ if ((this.data.level === 1) && url.includes('publish')) {
+ this.setData({
+ noAuthDialogShow: true
+ })
+ return;
+ }
+ wx.navigateTo({
+ url
+ })
+ },
+ /**
+ * 页面相关事件处理函数--监听用户下拉动作
+ */
+ onPullDownRefresh: function () {
+ wx.stopPullDownRefresh();
+ appUser.updateUserInfo(function () {
+ that.setData({
+ level: sessionUtil.getUserInfoByKey('eventLevel') || 1
+ })
+ });
+ },
+ copyWechat() {
+ wx.setClipboardData({
+ data: 'openeuler123',
+ success: () => {
+ this.setData({
+ noAuthDialogShow: false,
+ underDialogShow: false
+ })
+ }
+ })
+
+ },
+ onActionClose() {
+ this.setData({
+ actionShow: false
+ })
+ this.getTabBar().setData({
+ show: true
+ })
+
+ },
+ onActionSelect(e) {
+ if (this.data.level == 3) {
+ if (e.detail.operaType == 1) {
+ if (this.data.collectionId) {
+ remoteMethods.unCollect(() => {
+ this.onLoad();
+ })
+ } else {
+ remoteMethods.collect(() => {
+ this.onLoad();
+ })
+ }
+ } else {
+ this.setData({
+ showDialoogDel: true
+ })
+ }
+ } else {
+ if (e.detail.operaType == 1) {
+ if (this.data.collectionId) {
+ remoteMethods.unCollect(() => {
+ this.onLoad();
+ })
+ } else {
+ remoteMethods.collect(() => {
+ this.onLoad();
+ })
+ }
+ } else if(e.detail.operaType == 3) {
+ remoteMethods.getSignUpInfo(this.data.curId, (res) => {
+ wx.navigateTo({
+ url: `/package-events/sign-up/sign-up-success?name=${encodeURIComponent(res.name)}&title=${encodeURIComponent(res.title)}&tel=${encodeURIComponent(res.telephone)}&poster=${encodeURIComponent(res.poster)}&id=${encodeURIComponent(this.data.curId)}`
+ })
+ })
+ } else {
+ this.setData({
+ underDialogShow: true
+ })
+ }
+ }
+ },
+ del() {
+ this.setData({
+ showDialogDel: false
+ })
+ remoteMethods.delEvent(() => {
+ remoteMethods.getList(res => {
+ this.setData({
+ list: res
+ })
+
+ });
+ })
+ },
+ delCancel() {
+ this.setData({
+ showDialogDel: false
+ })
+ },
+ onMore(e) {
+ this.getTabBar().setData({
+ show: false
+ })
+ this.setData({
+ actionShow: true,
+ curId: e.currentTarget.dataset.item.id,
+ userId: e.currentTarget.dataset.item.user,
+ collectionId: e.currentTarget.dataset.item.collection_id || '',
+ registerId: e.currentTarget.dataset.item.register_id || ''
+ })
+ const strTemp = this.data.collectionId ? '取消收藏' : '收藏活动';
+ if (this.data.level == 3) {
+ this.setData({
+ actions: [{
+ name: strTemp,
+ operaType: 1
+ },
+ {
+ name: '下架活动',
+ operaType: 2
+ }
+ ]
+ })
+ } else {
+ if (this.data.user == this.data.userId) {
+ this.setData({
+ actions: [{
+ name: strTemp,
+ operaType: 1
+ },
+ {
+ name: '下架活动',
+ operaType: 2
+ }
+ ]
+ })
+ } else {
+ this.setData({
+ actions: [{
+ name: strTemp,
+ operaType: 1
+ }]
+ })
+ }
+
+ if (this.data.registerId) {
+ let tempArr = this.data.actions;
+ tempArr.unshift({
+ name: '查看门票',
+ operaType: 3
+ })
+ this.setData({
+ actions: tempArr
+ })
+ }
+
+ }
+
+ },
+ toUpdateSchedule(e) {
+ if (!sessionUtil.getUserInfoByKey('access')) {
+ wx.navigateTo({
+ url: '/pages/auth/auth'
+ })
+ return;
+ }
+ wx.navigateTo({
+ url: `/package-events/events/event-detail?id=${e.currentTarget.dataset.id}&type=5`
+ })
+ },
+ onPullDownRefresh: function () {
+ wx.stopPullDownRefresh();
+ this.onLoad();
+ },
+})
\ No newline at end of file
diff --git a/src/openeuler/pages/events/events.json b/src/openeuler/pages/events/events.json
new file mode 100644
index 0000000000000000000000000000000000000000..16a3ae09d3228549920b5335ab5deeeedd0a93f8
--- /dev/null
+++ b/src/openeuler/pages/events/events.json
@@ -0,0 +1,9 @@
+{
+ "usingComponents": {
+ "user-info": "/components/user-info/user-info"
+ },
+ "navigationBarTitleText": "openEuler活动管理",
+ "enablePullDownRefresh": true,
+ "backgroundTextStyle": "dark",
+ "backgroundColor": "#fff"
+}
\ No newline at end of file
diff --git a/src/openeuler/pages/events/events.wxml b/src/openeuler/pages/events/events.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..bfa0b2996bfc22e3d2753afddac2060ac22a9782
--- /dev/null
+++ b/src/openeuler/pages/events/events.wxml
@@ -0,0 +1,115 @@
+
+
+
+
+
+
+ 发起人管理
+
+
+
+
+ 查看活动
+
+
+
+ 发布活动
+
+
+
+ 最新活动({{list.length}})
+
+
+
+
+
+
+
+
+
+ {{item.title}}
+
+
+ {{item.date}}
+
+
+
+ {{item.address||item.join_url}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 暂无活动!
+
+
+
+
+ 请确认下架当前活动
+
+
+
+
+
+
+
+
+
+ 活动一经发布,暂不支持自行下架删除。如有需要,请联系
+ 小助手 (微信号openeuler123)
+ 下架活动
+
+
+
+
+
+
+
+
+
+ 您暂时没有发布活动的权限,请联系
+ 小助手 (微信号openeuler123)
+ 提交发布活动权限申请
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/openeuler/pages/events/events.wxss b/src/openeuler/pages/events/events.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..84f2c7ff88cde62d5af1a4458219366156c1d766
--- /dev/null
+++ b/src/openeuler/pages/events/events.wxss
@@ -0,0 +1,211 @@
+/* pages/events/events.wxss */
+.container .meeting-level-wrapper {
+ margin: 60rpx 0;
+ font-size: 36rpx;
+ color: #333;
+}
+
+.container .meeting-level-wrapper .sig-manage-btn {
+ margin-bottom: 30rpx;
+ background-color: #fff;
+ box-shadow: 0rpx 5rpx 15rpx 0rpx rgba(0, 47, 167, 0.1);
+ border-radius: 8rpx;
+ height: 110rpx;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+}
+
+.container .meeting-level-wrapper .icon {
+ height: 63rpx;
+ width: 64rpx;
+ margin-right: 21rpx;
+}
+
+.container .meeting-level-wrapper .tab-btn-wrapper {
+ display: flex;
+ justify-content: space-between;
+}
+
+.container .meeting-level-wrapper .tab-btn-wrapper .btn {
+ height: 110rpx;
+ box-shadow: 0rpx 5rpx 15rpx 0rpx rgba(0, 47, 167, 0.1);
+ border-radius: 8rpx;
+ width: 330rpx;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+}
+
+.container .latest-events {
+ margin-bottom: 30rpx;
+ color: #333;
+ font-size: 36rpx;
+
+}
+
+.container .event-list-wrapper .event-item {
+ margin-bottom: 30rpx;
+ box-shadow: 0rpx 5rpx 15rpx 0rpx rgba(0, 47, 167, 0.1);
+ border-radius: 8rpx;
+ overflow: hidden;
+ position: relative;
+ background-color: #fff;
+}
+
+.container .event-list-wrapper .event-item .collection {
+ width: 40rpx;
+ height: 26rpx;
+ position: absolute;
+ top: 33rpx;
+ left: 0;
+}
+
+.container .event-list-wrapper .event-item .header {
+ height: 90rpx;
+ padding: 0 30rpx;
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ font-size: 28rpx;
+ color: #333;
+ border-bottom: 2rpx solid #f0f3f7;
+}
+
+.container .event-list-wrapper .event-item .isCollection {
+ padding-left: 60rpx;
+}
+
+.container .event-list-wrapper .event-item .header image {
+ height: 36rpx;
+ width: 8rpx;
+}
+
+.container .event-list-wrapper .event-item .body {
+ padding: 30rpx;
+ display: flex;
+}
+
+.container .event-list-wrapper .event-item .body .left {
+ margin-right: 20rpx;
+}
+
+.container .event-list-wrapper .event-item .body .left image {
+ width: 241rpx;
+ height: 241rpx;
+ border-radius: 8rpx;
+}
+
+.container .event-list-wrapper .event-item .body .right .title {
+ font-size: 30rpx;
+ overflow: hidden;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+ margin-bottom: 20rpx;
+ width: 380rpx;
+}
+
+.container .event-list-wrapper .event-item .body .right .date {
+ margin-bottom: 20rpx;
+ font-size: 24rpx;
+ color: #6d7278;
+ overflow: hidden;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+ width: 380rpx;
+}
+
+.container .event-list-wrapper .event-item .body .right .date image {
+ height: 28rpx;
+ width: 28rpx;
+ margin-right: 16rpx;
+ vertical-align: middle;
+}
+.container .event-list-wrapper .event-item .body .right .date text {
+ vertical-align: middle;
+}
+
+.container .event-list-wrapper .event-item .body .right .address {
+ font-size: 24rpx;
+ color: #6d7278;
+ overflow: hidden;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+ width: 380rpx;
+ margin-bottom: 30rpx;
+}
+
+.container .event-list-wrapper .event-item .body .right .address image {
+ height: 28rpx;
+ width: 28rpx;
+ margin-right: 16rpx;
+ vertical-align: middle;
+}
+
+.container .event-list-wrapper .event-item .body .right .address image text {
+ vertical-align: middle;
+}
+
+.container .event-list-wrapper .event-item .body .right .button {
+ text-align: right;
+ height: 68rpx;
+}
+
+.container .event-list-wrapper .event-item .body .right .button button {
+ height: 68rpx;
+ width: 172rpx;
+ text-align: center;
+ line-height: 68rpx;
+ color: #fff;
+ background-color: #002fa7;
+ border-radius: 8rpx;
+ font-size: 28rpx;
+ display: inline-block;
+}
+
+.container .event-list-wrapper .event-item .body .right .button .register {
+ background-color: #6682ca;
+}
+
+.container .event-list-wrapper .event-item .mask {
+ position: absolute;
+ height: 100%;
+ width: 100%;
+ background-color: #002fa7;
+ opacity: 0.65;
+ top: 0;
+ left: 0;
+}
+
+.container .event-list-wrapper .event-item .mask .mask-img {
+ position: absolute;
+ height: 137rpx;
+ width: 180rpx;
+ left: 50%;
+ top: 50%;
+ margin-left: -90rpx;
+ margin-top: -68rpx;
+}
+
+.empty-status .suc-wrapper {
+ position: absolute;
+ top: 50%;
+ transform: translate(-50%, -50%);
+ left: 50%;
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ justify-content: center;
+}
+
+.empty-status .suc-wrapper image {
+ width: 234rpx;
+ height: 218rpx;
+}
+
+.empty-status .suc-wrapper text {
+ text-align: center;
+ margin-top: 20rpx;
+ font-size: 34rpx;
+ color: #333;
+}
\ No newline at end of file
diff --git a/src/openeuler/pages/index/index.js b/src/openeuler/pages/index/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..aff73177a6fbc6877a378609fad307d59d6bc489
--- /dev/null
+++ b/src/openeuler/pages/index/index.js
@@ -0,0 +1,105 @@
+//index.js
+const mixin = require("../../utils/page-mixin.js").$pageMixin;
+const sessionUtil = require("../../utils/app-session.js");
+const appUser = require("../../utils/app-user.js");
+let that = null;
+Page(mixin({
+ data: {
+ imgUrls: [{
+ type: 1,
+ url: 'https://openeuler-website-beijing.obs.cn-north-4.myhuaweicloud.com/MoocStudio/MoocStudio%E7%9A%84%E8%A7%86%E9%A2%911920X1080_small.mp4',
+ poster: 'https://openeuler-website-beijing.obs.cn-north-4.myhuaweicloud.com/detail-banner/mooc-banner.png'
+ }, ],
+ iphoneX: false,
+ meetingConponent: null,
+ autoplay: false
+ },
+ handleContact(e) {
+ if (!sessionUtil.getUserInfoByKey('access')) {
+ wx.navigateTo({
+ url: '/pages/auth/auth'
+ })
+ return;
+ }
+ wx.navigateTo({
+ url: e.currentTarget.dataset.src
+ })
+ },
+ swithTab(e) {
+ if (!sessionUtil.getUserInfoByKey('access')) {
+ wx.navigateTo({
+ url: '/pages/auth/auth'
+ })
+ return;
+ }
+ wx.switchTab({
+ url: e.currentTarget.dataset.url
+ })
+ },
+ previewImage(e) {
+
+ const current = e.target.dataset.src //获取当前点击的 图片 url
+ wx.previewImage({
+ current,
+ urls: [current]
+ })
+ },
+ onLoad: function () {
+ wx.showShareMenu({
+ withShareTicket: true,
+ menus: ['shareAppMessage', 'shareTimeline']
+ })
+ that = this;
+ appUser.updateUserInfo(function () {
+ that.setData({
+ meetingConponent: that.selectComponent('#meeting'),
+ iphoneX: that.getTabBar().data.iPhoneX,
+ })
+ });
+ },
+ onShow: function () {
+ this.getTabBar().setData({
+ _tabbat: 0
+ })
+ },
+ onPullDownRefresh: function () {
+ wx.stopPullDownRefresh();
+ appUser.updateUserInfo(function () {
+ that.data.meetingConponent.initData();
+ });
+ },
+ actionStatus(e) {
+ if (e.detail === 1) {
+ this.getTabBar().setData({
+ show: false
+ })
+ } else {
+ this.getTabBar().setData({
+ show: true
+ })
+ }
+ },
+ checkLogin() {
+ if (!sessionUtil.getUserInfoByKey('access')) {
+ wx.navigateTo({
+ url: '/pages/auth/auth'
+ })
+ return;
+ }
+ },
+ play() {
+ this.setData({
+ autoplay: false
+ })
+ },
+ pause() {
+ this.setData({
+ autoplay: true
+ })
+ },
+ ended() {
+ this.setData({
+ autoplay: true
+ })
+ }
+}))
\ No newline at end of file
diff --git a/src/openeuler/pages/index/index.json b/src/openeuler/pages/index/index.json
new file mode 100644
index 0000000000000000000000000000000000000000..b78d91865a56f3c269006c3745804377676109da
--- /dev/null
+++ b/src/openeuler/pages/index/index.json
@@ -0,0 +1,10 @@
+{
+ "usingComponents": {
+ "user-info": "/components/user-info/user-info",
+ "meeting-list": "/components/meeting-list/meeting-list"
+ },
+ "navigationBarTitleText": "openEuler",
+ "enablePullDownRefresh": true,
+ "backgroundTextStyle": "dark",
+ "backgroundColor":"#fff"
+}
\ No newline at end of file
diff --git a/src/openeuler/pages/index/index.wxml b/src/openeuler/pages/index/index.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..5ec907fef9a2d812836a5c01adb3c68fa877aafb
--- /dev/null
+++ b/src/openeuler/pages/index/index.wxml
@@ -0,0 +1,25 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 会议
+
+
+
+
+ 活动
+
+
+
+
+
\ No newline at end of file
diff --git a/src/openeuler/pages/index/index.wxss b/src/openeuler/pages/index/index.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..c75b798abb90b36a5a4cea9333a621aa1c57ae3d
--- /dev/null
+++ b/src/openeuler/pages/index/index.wxss
@@ -0,0 +1,58 @@
+/**index.wxss**/
+page {
+ background-color: #fff;
+}
+
+.container swiper {
+ height: 378rpx;
+ border-radius: 8rpx;
+ overflow: hidden;
+ box-shadow: 0px 5px 15px 0px rgba(225, 230, 238, 1);
+}
+
+.container swiper .slide-image {
+ height: 378rpx;
+ width: 690rpx;
+}
+
+.container .tab-btn-wrapper {
+ margin: 60rpx 0;
+ display: flex;
+ justify-content: space-between;
+}
+
+.container .tab-btn-wrapper .btn {
+ width: 330rpx;
+ height: 110rpx;
+ background-color: #fff;
+ box-shadow: 0rpx 5rpx 15rpx 0rpx rgba(0, 47, 167, 0.1);
+ border-radius: 8rpx;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ background: url(data:image/jpg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQH/2wBDAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQH/wAARCABuAUoDAREAAhEBAxEB/8QAGwABAAMBAQEBAAAAAAAAAAAAAAQFBgMCAQr/xAAzEAACAQMCBAMFCAMBAAAAAAAAAQIDBBEhMQUSQVETcYEiMmGRoRRCQ1JikrHBIzRzs//EABkBAQADAQEAAAAAAAAAAAAAAAACAwQBBf/EAC8RAQABAQUHBAEFAAMAAAAAAAABAgMRITFRQWFxgZGx0RKhwfDhEyIyQlJicvH/2gAMAwEAAhEDEQA/AP3mXd3UuakvaapJtQgm1HlT0lJdZPdt5xnC0NtFEURGEeq7Gdt+nDZhmoqqmZ3bI+7UMm4AAAAAAAAANpSlzUqcvzU4S+cU/wCzBVF0zGkzHSV8TfETrF7ocdAAAAAAAAAAAAAAAAAAAAzvGG/tFNdPBTXbLnUz9Es+hqsP4zr6viLvlVXnHD5lUlyAAAveDN4uF0zSa7ZfiZ+iWfQz2+dOuPxd8rLPby+V2Z1gAAAAAAABhz0GcAAAAAAAAAANja/61v8A8KP/AJxMNf8AOr/tV3lfTlHCOzuRdAAAAAAAAAAAAAAAAAAAAquK28qtKNaCzKlnmS3dN6t468jWemIuTexdY1XVTTP9suMee90IVxhfps4/fu3OGpUAANVw+3dvbpTWKlR880945SUYvs0llp7SbRjtavVVhlGEb9Z69YXURdHHFOK0gAAAAAAADDnoM4AAAAAAAAAAbOguWhRj+WlTXygkYasaqp/5T3XxhEcIdSLoAAAAAAAAAAAAAAAAAAAACquOFUqsnOjLwpPVxxmm31wlhwz8MxWyii6m2qjCqPVvyn899ZQmiNmGu3795wlwe4zrUo47pzbx5eGl6Z9Sz9enSq/l3v8AhH0TrHv4WNrw2lbyU5vxai2bSUIvvGOXqujbeGspRZVXa1VRdH7YnPbM89OERvSiiIzxm/BYlSYAAAAAAAAAw56DOAAAAAAAAAPdODqVIQW85xgvOUkv7OTN0TOkTPQjGYjVtUsLC2WiMDQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYc9BnAAAAAAAAAFhwyl4l1FtZjSTqPtlezH15pJryfYrtarqJ1nDz7Yc0qYvqjr0agxrgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADDnoM4AAAAAAAAA0nCqHh0HVa9qs8r4QjlR+bcn8VymW2qvqimMqY95/F3DFZRGc8vv3YtClYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYc9BnAAAAAAAAJFtQlc1oUllJvM5L7sF7z8+izvJpdSNdUUUzM8t87IdiL5uja18YqMYxikoxSjFLZJLCS+CSwYZm+Zmc5xldEXRdo+h0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAw56DOAAAAAAAJNvCWW9Elu32A1PD7T7NS5pr/LUSc+8V0h6by7y01UUzJa1+ubo/jGW/WfG7itopuxnOeyeVJgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADDnoM4AAAAAAC+4dYOLjcVliW9KD6dpyXfrFdPeeuMZ7W0v8A20zxmO3nplesop2zHCPldGdYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGHPQZwAAAAfUnJqMU228JJNtt7JJatvshlmL6x4byNVrhJyWsKW6i+kp9HLtHVLd5ekc1pa3/tpy2zrujdv27NZspo2z08+FyULAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYc9BnAAACbb2FxcYaj4dN/iTTSa/Sven8Gly50ckQqtKac5vnSM+enfc7ETOUc9jQW1lRtVmK5qmNakve13UVtFfBataNsy12lVeeEaRl+VsUxG+fuSWQSAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAx6tLp7W9b1pzX8pG710f6p6x5UXTpPSXaHDryf4XKu85Rj9MuX0Iza0Rtv3RE/8Anu76KtPeEynweT1rVor9NNOT/dLlx+1kJt4/rTM8cPaL+8O/pztmO/hZUbC2oYcafNJffqPnl5pP2Yv4ximVVWldW26NIw/M85TiiI38fHm9MK0gAAAAAOMrihF4lXoxfaVSCfyciXpq/wA1dJ8OXxrHWHSM4TWYTjNd4yUl802cmJjOJjjFxfE5TEvRx0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4XFxTtqbqT8oxXvTl2X8t7Ja66Jyopmubo5zshGqr0wzNxe17lvmm4we1OLagl0z+Z93LOuyS0NdNnTTGEXzrOf45KpmZzRCbj1GcoSUoSlCS2lFtNeqwxMROcRPHEXljxJzlGjcNZekKuiy+kZ9MvZSWMvCks5kZ7Syuvqp50+O93TRZTXOU9crl0Z1gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADLcSrSq3M4vPLSbpxXbHvPzlLrvhRT2NllTEURO2cZnt086qapvmd2HvKAWIgAABq+H1pVraEp5cot05N/e5cYfm4tZb1byzHa0xTXMRlndpeuom+OGHtCaVpAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB/9k=) no-repeat;
+ background-size:100% 100%;
+}
+
+.container .tab-btn-wrapper .events {
+ background: url(data:image/jpg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQH/2wBDAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQH/wAARCABuAUoDAREAAhEBAxEB/8QAGwABAAIDAQEAAAAAAAAAAAAAAAUGAQIDBAr/xAA0EAACAgECAwYEBQMFAAAAAAAAAQIDEQQxIUFRBRIiYXGREzJigRQjQlJyNENzgpKxs8H/xAAZAQEAAwEBAAAAAAAAAAAAAAAAAQMEAgX/xAAsEQEBAAEBBgUEAgMBAAAAAAAAAQIRAyExQVFxEmGBkbGh0eHwIjJCcsFS/9oADAMBAAIRAxEAPwD7+AAAAAAAAAFZ7T07pvdiX5dzck1sp/ri+jb8S6p8NnjXsspljpzx3enK/wDP2Kcppe+/68EaWuQABlJtpJNtvCS4tt7JLm2BbNFp/wAPp4QaxN5nZ/KXL/Sko9OGVuYtpl4srZw4TtPvxXYzSd9/bhues4dAAAAAAAAAAAAAAAGlkPiV2V/vhOH+6Lj/AOky6WXpZfZF3y9lLlFxlKMliUW4yXRp4a+zRvl1ms4XfFDAADrRW7rq6ks9+aT8o5zJ/aKbfPhw4nOV8ONvSX35fVMmtk+FzMK8AAAAAAAAAAAAAAAAAAHO2qu+uVdke9GXunyafJrk/s8ptE45XG6zdYiyWaVXdR2ZfS2607q904rxpdJQ3bXWOU9+Gy1Y7XHKb/43z4el+/5VXGzz7a/VHSjKLxKLi+kk0/Zlrl2q019zSrqnLPPDUV6yeIr7s5uWOPGyfPtxNLeEtTui7OjQ1ba1O1cYpfLX6Z+aXnhJcllKRn2m1uX8cd2PPrftPnn0W44ab7y4aJQpdgAAAAAAAAAAAAAAAABE6/s93N3U4VmPHDZWY5pvgp4wnnClu2nnN+z2vhnhy4cr08r5fWec4cZY63Wev4/KBsqsqeLITg08eKLXs3wa6NZTXFcDRMpeFl7VVpejNdF1zSqrnPPNJ91esniK9W1x4bkXLHHjZPXf7cUyW8J5LFodCtKnObUrpLDa2gucYvm3w70uG2Fwy5ZtptPHum7Ge9vW+XSet8rMcdN94/TTckSp2AAAAAAAAAOK1Gne19L9LYP/AIkdeHL/AM5e1+yNZ1nvHVSjJZjJSXVNNe6OUsgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACjnoM7KlKLzFuL6ptP3Qsl3WazpR669fq6trZTXSzxr3lmS+0kcXZ4X/ABk7bvjd7p8WU535+UlT2xF4V9fd+uvLjnzg/El6Sk/Iqy2F/wAbr5X7z7R3M+s9v37Jaq6q6PeqnGcebi+KfSS3i/JpMouNxulln7yvC+juWXhfTm6EJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUc9BnAAADeuydUlOucoSWzi8P0fVPmnlPmiLJZpZLPMTml7VjPFepxCWytXCD/mv0v6l4eqikZ89jZvw1vlz9Ovbj3WTPr7/f8JlNNZTynxTWzXUoWAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUc9BnAAAAAAktFr56dquxudD4Y3dfnHn3esNuccPOatpsplvm7L6Xv5+fvry6xy07LJGUZxU4NSjJZjJPKafNGWyy6XdYul13xsQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABRz0GcAAAAAABJaDWvTzVdjzRN8c/wBtv9S+n966eJcVh1bXZ+Kaz+0+s6d+ns6xy07LMmmsp5T4prZrqZFwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUc9BnAAAAAAAAJ/srV9+P4ab8UFmpvnBbw9Y7x+nK4KJm22Gl8U53f36+vPz7rMLy9vsmShYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKOegzgAAAAAAAG9dkqpxsg8ShJST81yfVPZrmm0RZLLLws0FxptjdVC2PyzipJc0+cX5xeU/NMw5S42y8Zf2+q+XWS+/d0ISAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUc9BnAAAAAAAAAE92RdmNlDfy/mQ691vE16KXdfrJmfb475l13X5n/fZZheM9f395JozrAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACjnoM4AAAAAAAAA9mgs+Fq6nynL4b9J+Fe0nF/Y42k1wy8pr7b/hOP8Aad/ncthiXgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFHPQZwAAAAAAAABmLcZKS3i016p5Qs1ll4XdRdotSjGS2kk16NZR5/BoZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAo56DOAAAAAAAAAAFy0772nob501P3hFmHP+2X+1+avx4TtPh2OUgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK72hofhSlfXJfDnJtwee9GT4tRwsOOctZaxtxSyatltPFpjZdZOPKydfP31VZY6b+Vvt+ESXOAAAAAAAAABcdL/Taf8AwU/9cTDn/fL/AGy+avx4TtPh3OUgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/2Q==) no-repeat;
+ background-size:100% 100%;
+}
+
+.container .tab-btn-wrapper .btn .icon {
+ width: 54rpx;
+ height: 54rpx;
+ margin-right: 14rpx;
+}
+
+.container .tab-btn-wrapper .btn text {
+ color: #333;
+ font-size: 36rpx;
+ margin-right: 48rpx;
+}
+
+.container .tab-btn-wrapper .btn .arrow {
+ width: 30rpx;
+ height: 30rpx;
+ margin-right: -33px;
+}
\ No newline at end of file
diff --git a/src/openeuler/pages/meeting/meeting.js b/src/openeuler/pages/meeting/meeting.js
new file mode 100644
index 0000000000000000000000000000000000000000..14a4b878ba58baa6b948cfdd581ac5fff67a5414
--- /dev/null
+++ b/src/openeuler/pages/meeting/meeting.js
@@ -0,0 +1,86 @@
+// pages/meeting/meeting.js
+const mixin = require("../../utils/page-mixin.js").$pageMixin;
+const sessionUtil = require("../../utils/app-session.js");
+const appUser = require("../../utils/app-user.js");
+let that = null;
+
+Page(mixin({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ noAuthDialogShow: false,
+ iphoneX: false,
+ meetingConponent: null
+ },
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad: function (options) {
+ this.setData({
+ iphoneX: this.getTabBar().data.iPhoneX,
+ meetingConponent: this.selectComponent('#meeting')
+ })
+ let that = this;
+
+ appUser.updateUserInfo(function () {
+ that.setData({
+ level: sessionUtil.getUserInfoByKey('level')
+ })
+ });
+ },
+
+ /**
+ * 生命周期函数--监听页面显示
+ */
+ onShow: function () {
+ that = this;
+ this.getTabBar().setData({
+ _tabbat: 1
+ })
+ },
+ onPullDownRefresh: function () {
+ wx.stopPullDownRefresh();
+ appUser.updateUserInfo(function () {
+ that.setData({
+ level: sessionUtil.getUserInfoByKey('level')
+ })
+ that.data.meetingConponent.initData();
+ });
+ },
+ actionStatus(e) {
+ if (e.detail === 1) {
+ this.getTabBar().setData({
+ show: false
+ })
+ } else {
+ this.getTabBar().setData({
+ show: true
+ })
+ }
+ },
+ navigateTo(e) {
+ const url = e.currentTarget.dataset.url;
+ if ((this.data.level === 1) && url.includes('reserve')) {
+ this.setData({
+ noAuthDialogShow: true
+ })
+ return;
+ }
+ wx.navigateTo({
+ url
+ })
+ },
+ copyWechat() {
+ wx.setClipboardData({
+ data: 'openeuler123',
+ success: () => {
+ this.setData({
+ noAuthDialogShow: false
+ })
+ }
+ })
+
+ }
+}))
\ No newline at end of file
diff --git a/src/openeuler/pages/meeting/meeting.json b/src/openeuler/pages/meeting/meeting.json
new file mode 100644
index 0000000000000000000000000000000000000000..045065d8df79ca5b83e8be477f9b24ea1c611854
--- /dev/null
+++ b/src/openeuler/pages/meeting/meeting.json
@@ -0,0 +1,10 @@
+{
+ "usingComponents": {
+ "user-info": "/components/user-info/user-info",
+ "meeting-list": "/components/meeting-list/meeting-list"
+ },
+ "navigationBarTitleText": "openEuler会议管理",
+ "enablePullDownRefresh": true,
+ "backgroundTextStyle": "dark",
+ "backgroundColor": "#fff"
+}
\ No newline at end of file
diff --git a/src/openeuler/pages/meeting/meeting.wxml b/src/openeuler/pages/meeting/meeting.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..9a622d63e2dc40471197fe17856d8c1bc02c3f77
--- /dev/null
+++ b/src/openeuler/pages/meeting/meeting.wxml
@@ -0,0 +1,29 @@
+
+
+
+
+
+
+ SIG组管理
+
+
+
+
+ 查看会议
+
+
+
+ 预定会议
+
+
+
+
+
+
+ 您暂时没有预定会议的权限,请联系小助手 (微信号openeuler123) 提交预定会议权限申请
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/openeuler/pages/meeting/meeting.wxss b/src/openeuler/pages/meeting/meeting.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..e514c907a300b4b5dedfd7ef67d7beff931270a9
--- /dev/null
+++ b/src/openeuler/pages/meeting/meeting.wxss
@@ -0,0 +1,42 @@
+/* pages/meeting/meeting.wxss */
+.container {
+ background-color: #fff;
+}
+
+.container .meeting-level-wrapper {
+ margin: 60rpx 0;
+ font-size: 36rpx;
+ color: #333;
+}
+
+.container .meeting-level-wrapper .sig-manage-btn {
+ margin-bottom: 30rpx;
+ background-color: #fff;
+ box-shadow: 0rpx 5rpx 15rpx 0rpx rgba(0, 47, 167, 0.1);
+ border-radius: 8rpx;
+ height: 110rpx;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+}
+
+.container .meeting-level-wrapper .icon {
+ height: 63rpx;
+ width: 64rpx;
+ margin-right: 21rpx;
+}
+
+.container .meeting-level-wrapper .tab-btn-wrapper {
+ display: flex;
+ justify-content: space-between;
+}
+
+.container .meeting-level-wrapper .tab-btn-wrapper .btn {
+ height: 110rpx;
+ box-shadow: 0rpx 5rpx 15rpx 0rpx rgba(0, 47, 167, 0.1);
+ border-radius: 8rpx;
+ width: 330rpx;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+}
diff --git a/src/openeuler/pages/my/my.js b/src/openeuler/pages/my/my.js
new file mode 100644
index 0000000000000000000000000000000000000000..69a05f0ca4457dd36579ae35596a6be44317f2aa
--- /dev/null
+++ b/src/openeuler/pages/my/my.js
@@ -0,0 +1,71 @@
+// pages/my/my.js
+const appAjax = require('./../../utils/app-ajax');
+const sessionUtil = require("../../utils/app-session.js");
+let that = this;
+
+let remoteMethods = {
+ getMyCount: function (_callback) {
+ appAjax.postJson({
+ type: 'GET',
+ service: 'GET_MY_COUNT',
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ }
+}
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ iphoneX: false,
+ avatarUrl: '',
+ nickName: '',
+ level: 1,
+ avtivityLevel: 1,
+ myCount: {}
+ },
+
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad: function (options) {
+ that = this;
+ this.setData({
+ iphoneX: this.getTabBar().data.iPhoneX,
+ avatarUrl: sessionUtil.getUserInfoByKey('avatarUrl'),
+ nickName: sessionUtil.getUserInfoByKey('nickName'),
+ level: sessionUtil.getUserInfoByKey('level'),
+ avtivityLevel: sessionUtil.getUserInfoByKey('eventLevel')
+ })
+ remoteMethods.getMyCount(res => {
+ this.setData({
+ myCount: res
+ })
+ })
+ },
+ /**
+ * 生命周期函数--监听页面显示
+ */
+ onShow: function () {
+ this.getTabBar().setData({
+ _tabbat: 3
+ })
+
+ },
+ go(e) {
+ wx.navigateTo({
+ url: e.currentTarget.dataset.url
+ })
+ },
+ onPullDownRefresh() {
+ wx.stopPullDownRefresh();
+ remoteMethods.getMyCount(res => {
+ this.setData({
+ myCount: res
+ })
+ })
+ },
+})
\ No newline at end of file
diff --git a/src/openeuler/pages/my/my.json b/src/openeuler/pages/my/my.json
new file mode 100644
index 0000000000000000000000000000000000000000..f0e9773bcc01902e54f4ba9a8f590d66eecf3609
--- /dev/null
+++ b/src/openeuler/pages/my/my.json
@@ -0,0 +1,9 @@
+{
+ "usingComponents": {},
+ "navigationBarTitleText": "我的",
+ "navigationBarBackgroundColor": "#002fa7",
+ "navigationBarTextStyle": "white",
+ "enablePullDownRefresh": true,
+ "backgroundTextStyle": "light",
+ "backgroundColor": "#002fa7"
+}
\ No newline at end of file
diff --git a/src/openeuler/pages/my/my.wxml b/src/openeuler/pages/my/my.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..7337b9b86189b45f817002a02ed5befd96996acb
--- /dev/null
+++ b/src/openeuler/pages/my/my.wxml
@@ -0,0 +1,80 @@
+
+
+
+
+
+ {{nickName}}
+
+
+
+
+
+ {{myCount.created_meetings_count||0}}
+ 已预定
+
+
+ {{myCount.collected_meetings_count||0}}
+ 已收藏
+
+
+
+
+
+
+
+
+ {{myCount.published_activities_count||0}}
+ 已发布
+
+
+ {{myCount.register_table_count||0}}
+ 报名表单
+
+
+ {{myCount.drafts_count||0}}
+ 草稿箱
+
+
+ {{myCount.publishing_activities_count||0}}
+ {{avtivityLevel===3?'待发布':'发布中'}}
+
+
+ {{myCount.collected_activities_count||0}}
+ 已收藏
+
+
+ {{myCount.registerd_activities_count||0}}
+ 已报名
+
+
+
+
+
+
+
+
+ 使用帮助
+
+
+
+ 留言反馈
+
+
+
+ 隐私声明
+
+
+
+ 关注公众号
+
+
+
+ B站直播
+
+
+
+ 关注头条号
+
+
+
+
\ No newline at end of file
diff --git a/src/openeuler/pages/my/my.wxss b/src/openeuler/pages/my/my.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..d4d020fc9cd0af436f6c6182e8061988fe936979
--- /dev/null
+++ b/src/openeuler/pages/my/my.wxss
@@ -0,0 +1,113 @@
+/* pages/my/my.wxss */
+page {
+ background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHwAAAAeCAYAAADuInrvAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAACdSURBVGhD7dbBDYAwDAPAbsTYjFnEDn5YyT34WinWpT3nea9v0T9Q9qKyf9wKV7gVP/maI5xwwglfpkDhCh9z9Y05yGSVybMpfNn2UrjCvdKTK7Qti3DCCW9TmZyHcMIJT4pqyyKccMLbVCbnIZxwwpOi2rIIJ5zwNpXJeQgnnPCkqLYswgknvE1lch7CCSc8Kaoti3DCCW9TGZznA1f9oK8GgBpHAAAAAElFTkSuQmCC) no-repeat;
+ background-size: 100% 150rpx;
+ background-color: #f5f7fa !important;
+ height: unset !important;
+}
+
+.container {
+ margin-top: 97rpx;
+ padding: 0 !important;
+ margin-bottom: 99rpx;
+}
+
+.container .user-info-wrapper {
+ background-color: #fff;
+ border-radius: 24rpx 24rpx 0 0;
+ padding: 0 30rpx;
+}
+
+.container .user-info-wrapper .my-user-info {
+ height: 110rpx;
+}
+
+.container .user-info-wrapper .my-user-info image {
+ border-radius: 100%;
+ height: 135rpx;
+ width: 135rpx;
+ border: 2rpx solid rgba(0, 47, 167, 0.15);
+ position: relative;
+ top: -67.5rpx;
+ margin-right: 20rpx;
+}
+
+.container .user-info-wrapper .my-user-info text {
+ color: #fff;
+ font-size: 36rpx;
+ position: relative;
+ line-height: 50rpx;
+ top: -157.5rpx;
+}
+
+.container .common-list .header {
+ font-size: 34rpx;
+ color: #333;
+}
+
+.container .common-list .list {
+ display: flex;
+ flex-wrap: wrap;
+}
+
+.container .common-list .list .item {
+ flex: 0 0 33.333333333333333%;
+ display: flex;
+ justify-content: center;
+ margin: 30rpx 0;
+ flex-direction: column;
+}
+
+.container .common-list .list .item .count {
+ font-size: 40rpx;
+ margin-bottom: 10rpx;
+ text-align: center;
+}
+
+.container .common-list .list .item .text {
+ font-size: 26rpx;
+ color: #6d7278;
+ text-align: center;
+}
+
+.container .my-events, .container .common-functions {
+ padding: 0 30rpx;
+ background-color: #fff;
+ margin-top: 20rpx;
+}
+
+.container .my-events .header, .container .common-functions .header {
+ padding-top: 30rpx;
+}
+
+.container .common-functions .header {
+ font-size: 34rpx;
+ color: #333;
+}
+
+.container .common-functions .list {
+ display: flex;
+ flex-wrap: wrap;
+}
+
+.container .common-functions .list .item {
+ flex: 0 0 33.333333333333333%;
+ display: flex;
+ justify-content: center;
+ margin: 30rpx 0;
+ flex-direction: column;
+ align-items: center;
+}
+
+.container .common-functions .list .item image {
+ width: 54rpx;
+ height: 54rpx;
+ margin-bottom: 10rpx;
+ text-align: center;
+}
+
+.container .common-functions .list .item text {
+ font-size: 26rpx;
+ color: #6d7278;
+ text-align: center;
+}
diff --git a/src/openeuler/project.private.config.json b/src/openeuler/project.private.config.json
new file mode 100644
index 0000000000000000000000000000000000000000..8592ea8ba39bf2c023594a9acb6fa9c2c7a774fd
--- /dev/null
+++ b/src/openeuler/project.private.config.json
@@ -0,0 +1,30 @@
+{
+ "setting": {},
+ "condition": {
+ "plugin": {
+ "list": []
+ },
+ "game": {
+ "list": []
+ },
+ "gamePlugin": {
+ "list": []
+ },
+ "miniprogram": {
+ "list": [
+ {
+ "name": "package-events/events/event-detail",
+ "pathName": "package-events/events/event-detail",
+ "query": "scene=33",
+ "scene": 1047
+ },
+ {
+ "name": "package-events/events/sign-success",
+ "pathName": "package-events/events/sign-success",
+ "query": "scene=49",
+ "scene": 1011
+ }
+ ]
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/openeuler/sitemap.json b/src/openeuler/sitemap.json
new file mode 100644
index 0000000000000000000000000000000000000000..bb97574e040a6493ff110afc3bf0657c6b2e65d8
--- /dev/null
+++ b/src/openeuler/sitemap.json
@@ -0,0 +1,7 @@
+{
+ "desc": "关于本文件的更多信息,请参考文档 https://developers.weixin.qq.com/miniprogram/dev/framework/sitemap.html",
+ "rules": [{
+ "action": "allow",
+ "page": "*"
+ }]
+}
\ No newline at end of file
diff --git a/src/openeuler/static/auth/auth.png b/src/openeuler/static/auth/auth.png
new file mode 100644
index 0000000000000000000000000000000000000000..20fd3b20de7adc35cb94de4e722f0fbbd48403bf
Binary files /dev/null and b/src/openeuler/static/auth/auth.png differ
diff --git a/src/openeuler/static/auth/wechat-icon.svg b/src/openeuler/static/auth/wechat-icon.svg
new file mode 100644
index 0000000000000000000000000000000000000000..36f560753348062ea79618bd4f90c723f8bd8f7c
--- /dev/null
+++ b/src/openeuler/static/auth/wechat-icon.svg
@@ -0,0 +1,36 @@
+
+
\ No newline at end of file
diff --git a/src/openeuler/static/common/arrow-down.svg b/src/openeuler/static/common/arrow-down.svg
new file mode 100644
index 0000000000000000000000000000000000000000..01c7cbd7e9b628f4f0be039246fecd317707b9b6
--- /dev/null
+++ b/src/openeuler/static/common/arrow-down.svg
@@ -0,0 +1,9 @@
+
+
\ No newline at end of file
diff --git a/src/openeuler/static/common/arrow-right.svg b/src/openeuler/static/common/arrow-right.svg
new file mode 100644
index 0000000000000000000000000000000000000000..87507cac7ff1e20f68cad49bbd45f7c85a5b4220
--- /dev/null
+++ b/src/openeuler/static/common/arrow-right.svg
@@ -0,0 +1,9 @@
+
+
\ No newline at end of file
diff --git a/src/openeuler/static/common/arrow-up.svg b/src/openeuler/static/common/arrow-up.svg
new file mode 100644
index 0000000000000000000000000000000000000000..b671d19a574a7001255def3c929f37a3de98e1b8
--- /dev/null
+++ b/src/openeuler/static/common/arrow-up.svg
@@ -0,0 +1,9 @@
+
+
\ No newline at end of file
diff --git a/src/openeuler/static/common/blue-bg.png b/src/openeuler/static/common/blue-bg.png
new file mode 100644
index 0000000000000000000000000000000000000000..7ab558ee496a7e43c88d6d7094fc4cd79732c198
Binary files /dev/null and b/src/openeuler/static/common/blue-bg.png differ
diff --git a/src/openeuler/static/common/collection-icon.svg b/src/openeuler/static/common/collection-icon.svg
new file mode 100644
index 0000000000000000000000000000000000000000..7ccc6d32a49ef7e9459ce3e3d538fbb7882926c8
--- /dev/null
+++ b/src/openeuler/static/common/collection-icon.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/src/openeuler/static/common/default-avatar.png b/src/openeuler/static/common/default-avatar.png
new file mode 100644
index 0000000000000000000000000000000000000000..933b575bbfc8294d936d9b761a427150939e5629
Binary files /dev/null and b/src/openeuler/static/common/default-avatar.png differ
diff --git a/src/openeuler/static/common/location.svg b/src/openeuler/static/common/location.svg
new file mode 100644
index 0000000000000000000000000000000000000000..ac9cdcecda46ac0474cfb43eb5f4bbaa8bf3f4e8
--- /dev/null
+++ b/src/openeuler/static/common/location.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/src/openeuler/static/common/more.svg b/src/openeuler/static/common/more.svg
new file mode 100644
index 0000000000000000000000000000000000000000..b7ba38bca398a82ff90f7fae1503ee6f6b1292de
--- /dev/null
+++ b/src/openeuler/static/common/more.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/src/openeuler/static/common/search-icon.svg b/src/openeuler/static/common/search-icon.svg
new file mode 100644
index 0000000000000000000000000000000000000000..de378daebc5fb3155cfcf4ece0a6537745448952
--- /dev/null
+++ b/src/openeuler/static/common/search-icon.svg
@@ -0,0 +1,31 @@
+
+
\ No newline at end of file
diff --git a/src/openeuler/static/common/swiper-tips.svg b/src/openeuler/static/common/swiper-tips.svg
new file mode 100644
index 0000000000000000000000000000000000000000..686ca716c9e0b2d4b7f49c2d0565bcc7b19e751a
--- /dev/null
+++ b/src/openeuler/static/common/swiper-tips.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/src/openeuler/static/events/1.png b/src/openeuler/static/events/1.png
new file mode 100644
index 0000000000000000000000000000000000000000..66fd19aa1cc1b222926fb669e3b5d2e39f238144
Binary files /dev/null and b/src/openeuler/static/events/1.png differ
diff --git a/src/openeuler/static/events/2.png b/src/openeuler/static/events/2.png
new file mode 100644
index 0000000000000000000000000000000000000000..ee03d0cfc9494bc485fe00081914da6fc08249db
Binary files /dev/null and b/src/openeuler/static/events/2.png differ
diff --git a/src/openeuler/static/events/3.png b/src/openeuler/static/events/3.png
new file mode 100644
index 0000000000000000000000000000000000000000..5bdd25f5ea1e731d1936c24c68f8cafba60e6422
Binary files /dev/null and b/src/openeuler/static/events/3.png differ
diff --git a/src/openeuler/static/events/4.png b/src/openeuler/static/events/4.png
new file mode 100644
index 0000000000000000000000000000000000000000..fe7aa0272846f51495b0e891deadd92b99ee33ea
Binary files /dev/null and b/src/openeuler/static/events/4.png differ
diff --git a/src/openeuler/static/events/collect.svg b/src/openeuler/static/events/collect.svg
new file mode 100644
index 0000000000000000000000000000000000000000..083b4560f1daa3d864d96755920d651451bf4206
--- /dev/null
+++ b/src/openeuler/static/events/collect.svg
@@ -0,0 +1,11 @@
+
+
\ No newline at end of file
diff --git a/src/openeuler/static/events/empty-events.png b/src/openeuler/static/events/empty-events.png
new file mode 100644
index 0000000000000000000000000000000000000000..154a0bb3c1b5b03966d6c2d0fb1f08c46131a5fa
Binary files /dev/null and b/src/openeuler/static/events/empty-events.png differ
diff --git a/src/openeuler/static/events/enterprise-manage.svg b/src/openeuler/static/events/enterprise-manage.svg
new file mode 100644
index 0000000000000000000000000000000000000000..f1307b11b07e9bc7375789df5c5b53b432711dc8
--- /dev/null
+++ b/src/openeuler/static/events/enterprise-manage.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/src/openeuler/static/events/list-pic/1.png b/src/openeuler/static/events/list-pic/1.png
new file mode 100644
index 0000000000000000000000000000000000000000..90a37b08dcc2086da68649dde1745e8b84411553
Binary files /dev/null and b/src/openeuler/static/events/list-pic/1.png differ
diff --git a/src/openeuler/static/events/list-pic/2.png b/src/openeuler/static/events/list-pic/2.png
new file mode 100644
index 0000000000000000000000000000000000000000..9f9b887a7e7b8a0ba2221bdc1fe5874e50d5f577
Binary files /dev/null and b/src/openeuler/static/events/list-pic/2.png differ
diff --git a/src/openeuler/static/events/list-pic/3.png b/src/openeuler/static/events/list-pic/3.png
new file mode 100644
index 0000000000000000000000000000000000000000..2209beb3057ad6bb8001318789898527c6f6f32e
Binary files /dev/null and b/src/openeuler/static/events/list-pic/3.png differ
diff --git a/src/openeuler/static/events/list-pic/4.png b/src/openeuler/static/events/list-pic/4.png
new file mode 100644
index 0000000000000000000000000000000000000000..d7731571f41c6377946eded6f9ea8ffae9c2c295
Binary files /dev/null and b/src/openeuler/static/events/list-pic/4.png differ
diff --git a/src/openeuler/static/events/look-event.svg b/src/openeuler/static/events/look-event.svg
new file mode 100644
index 0000000000000000000000000000000000000000..cb16c5a558ee00b00cc7cf1c074b48bffe6c9458
--- /dev/null
+++ b/src/openeuler/static/events/look-event.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/src/openeuler/static/events/play.png b/src/openeuler/static/events/play.png
new file mode 100644
index 0000000000000000000000000000000000000000..323526d37ce59a5dda51fb94705e026d92bdbd5c
Binary files /dev/null and b/src/openeuler/static/events/play.png differ
diff --git a/src/openeuler/static/events/publish-event.svg b/src/openeuler/static/events/publish-event.svg
new file mode 100644
index 0000000000000000000000000000000000000000..a1f8b6a1be440863ad0d83e987247fe769b2cc9f
--- /dev/null
+++ b/src/openeuler/static/events/publish-event.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/src/openeuler/static/events/schedule-del.svg b/src/openeuler/static/events/schedule-del.svg
new file mode 100644
index 0000000000000000000000000000000000000000..bf0a137febae37b4e38153d020c9d56655cdc92f
--- /dev/null
+++ b/src/openeuler/static/events/schedule-del.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/src/openeuler/static/events/selected.svg b/src/openeuler/static/events/selected.svg
new file mode 100644
index 0000000000000000000000000000000000000000..8d9075b0e07a2bf83ddbd7749d84c4e09d3d4f3b
--- /dev/null
+++ b/src/openeuler/static/events/selected.svg
@@ -0,0 +1,12 @@
+
+
\ No newline at end of file
diff --git a/src/openeuler/static/events/share.svg b/src/openeuler/static/events/share.svg
new file mode 100644
index 0000000000000000000000000000000000000000..efd2abd7a64140272183228553831dda27d62e52
--- /dev/null
+++ b/src/openeuler/static/events/share.svg
@@ -0,0 +1,11 @@
+
+
\ No newline at end of file
diff --git a/src/openeuler/static/events/speaker-del.svg b/src/openeuler/static/events/speaker-del.svg
new file mode 100644
index 0000000000000000000000000000000000000000..662900a7a5742d98c830b7b5a4e3351f43dc6b39
--- /dev/null
+++ b/src/openeuler/static/events/speaker-del.svg
@@ -0,0 +1,9 @@
+
+
\ No newline at end of file
diff --git a/src/openeuler/static/events/uncollect.svg b/src/openeuler/static/events/uncollect.svg
new file mode 100644
index 0000000000000000000000000000000000000000..e662ef9070476757867abd19356bc6ffd6daf162
--- /dev/null
+++ b/src/openeuler/static/events/uncollect.svg
@@ -0,0 +1,11 @@
+
+
\ No newline at end of file
diff --git a/src/openeuler/static/index/date.svg b/src/openeuler/static/index/date.svg
new file mode 100644
index 0000000000000000000000000000000000000000..e016d5bb8eccce96bd12eec5830fcb71eca06977
--- /dev/null
+++ b/src/openeuler/static/index/date.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/src/openeuler/static/index/desc.svg b/src/openeuler/static/index/desc.svg
new file mode 100644
index 0000000000000000000000000000000000000000..96af81bda07c1cb2cd399b30bf8fe425ba458239
--- /dev/null
+++ b/src/openeuler/static/index/desc.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/src/openeuler/static/index/events-bg.jpg b/src/openeuler/static/index/events-bg.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..44e632799db61fec9508aa353e018a2c3302be77
Binary files /dev/null and b/src/openeuler/static/index/events-bg.jpg differ
diff --git a/src/openeuler/static/index/events-btn.svg b/src/openeuler/static/index/events-btn.svg
new file mode 100644
index 0000000000000000000000000000000000000000..6d1ece172da2cee72bd79a904158ec4722582e49
--- /dev/null
+++ b/src/openeuler/static/index/events-btn.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/src/openeuler/static/index/finger.svg b/src/openeuler/static/index/finger.svg
new file mode 100644
index 0000000000000000000000000000000000000000..0be0df94aa9b963db7b0679d31fc94c0a6730ee2
--- /dev/null
+++ b/src/openeuler/static/index/finger.svg
@@ -0,0 +1,36 @@
+
+
\ No newline at end of file
diff --git a/src/openeuler/static/index/group.svg b/src/openeuler/static/index/group.svg
new file mode 100644
index 0000000000000000000000000000000000000000..86d6140a5bedf6fdd2084ed7fb9b18ac251eb09b
--- /dev/null
+++ b/src/openeuler/static/index/group.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/src/openeuler/static/index/link.svg b/src/openeuler/static/index/link.svg
new file mode 100644
index 0000000000000000000000000000000000000000..249878d61c0cd73e43f7829f0d5f7cb2f1e71a61
--- /dev/null
+++ b/src/openeuler/static/index/link.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/src/openeuler/static/index/meeting-bg.jpg b/src/openeuler/static/index/meeting-bg.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..daaa37f33f90c70ee90498e0892935eb6291bc9d
Binary files /dev/null and b/src/openeuler/static/index/meeting-bg.jpg differ
diff --git a/src/openeuler/static/index/meeting-btn.svg b/src/openeuler/static/index/meeting-btn.svg
new file mode 100644
index 0000000000000000000000000000000000000000..fb37717dc5c5fee88555db2fbe04d8d7cc725d92
--- /dev/null
+++ b/src/openeuler/static/index/meeting-btn.svg
@@ -0,0 +1,19 @@
+
+
\ No newline at end of file
diff --git a/src/openeuler/static/index/sponsor.svg b/src/openeuler/static/index/sponsor.svg
new file mode 100644
index 0000000000000000000000000000000000000000..70148ca4d4b2c99a09295dcb2b02286120c86a42
--- /dev/null
+++ b/src/openeuler/static/index/sponsor.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/src/openeuler/static/meeting/look-meeting.svg b/src/openeuler/static/meeting/look-meeting.svg
new file mode 100644
index 0000000000000000000000000000000000000000..f017bbc40a60f96db189c5edd2763911acba8db9
--- /dev/null
+++ b/src/openeuler/static/meeting/look-meeting.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/src/openeuler/static/meeting/no-meeting.png b/src/openeuler/static/meeting/no-meeting.png
new file mode 100644
index 0000000000000000000000000000000000000000..2cc284643a011dbf1a31afb4616a949d0dc8a48f
Binary files /dev/null and b/src/openeuler/static/meeting/no-meeting.png differ
diff --git a/src/openeuler/static/meeting/reserve-meeting.svg b/src/openeuler/static/meeting/reserve-meeting.svg
new file mode 100644
index 0000000000000000000000000000000000000000..cb39f8977968d14c0c7c40ad13122b82d187bd28
--- /dev/null
+++ b/src/openeuler/static/meeting/reserve-meeting.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/src/openeuler/static/meeting/sig-manage.svg b/src/openeuler/static/meeting/sig-manage.svg
new file mode 100644
index 0000000000000000000000000000000000000000..9c8a6020f9e02ab6a427974f2c2af88edce2fde0
--- /dev/null
+++ b/src/openeuler/static/meeting/sig-manage.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/src/openeuler/static/my/collection.png b/src/openeuler/static/my/collection.png
new file mode 100644
index 0000000000000000000000000000000000000000..b5733a21abca440330d2594557a11781574d3952
Binary files /dev/null and b/src/openeuler/static/my/collection.png differ
diff --git a/src/openeuler/static/my/common-functions/feedback.svg b/src/openeuler/static/my/common-functions/feedback.svg
new file mode 100644
index 0000000000000000000000000000000000000000..2a52bac42ffd42b5e3756957102dfab1aaa0c11e
--- /dev/null
+++ b/src/openeuler/static/my/common-functions/feedback.svg
@@ -0,0 +1,12 @@
+
+
\ No newline at end of file
diff --git a/src/openeuler/static/my/common-functions/headlines.svg b/src/openeuler/static/my/common-functions/headlines.svg
new file mode 100644
index 0000000000000000000000000000000000000000..61138570ced16999dd619a5dbaa7e9e6ad4b55dc
--- /dev/null
+++ b/src/openeuler/static/my/common-functions/headlines.svg
@@ -0,0 +1,12 @@
+
+
\ No newline at end of file
diff --git a/src/openeuler/static/my/common-functions/help.svg b/src/openeuler/static/my/common-functions/help.svg
new file mode 100644
index 0000000000000000000000000000000000000000..edd71224e4a7f7cabb8555c973cc2d0233fbbc62
--- /dev/null
+++ b/src/openeuler/static/my/common-functions/help.svg
@@ -0,0 +1,12 @@
+
+
\ No newline at end of file
diff --git a/src/openeuler/static/my/common-functions/living.svg b/src/openeuler/static/my/common-functions/living.svg
new file mode 100644
index 0000000000000000000000000000000000000000..0b0bc3a5935e7cb3bdf997a082880c99dd2badd0
--- /dev/null
+++ b/src/openeuler/static/my/common-functions/living.svg
@@ -0,0 +1,12 @@
+
+
\ No newline at end of file
diff --git a/src/openeuler/static/my/common-functions/official-account.svg b/src/openeuler/static/my/common-functions/official-account.svg
new file mode 100644
index 0000000000000000000000000000000000000000..1f427ed51d6a6ddbc90e0a8d388ae84c0433ab29
--- /dev/null
+++ b/src/openeuler/static/my/common-functions/official-account.svg
@@ -0,0 +1,12 @@
+
+
\ No newline at end of file
diff --git a/src/openeuler/static/my/common-functions/privacy.svg b/src/openeuler/static/my/common-functions/privacy.svg
new file mode 100644
index 0000000000000000000000000000000000000000..8a4fae34795700b6acb03a762658b10460088c2d
--- /dev/null
+++ b/src/openeuler/static/my/common-functions/privacy.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/src/openeuler/static/my/create.png b/src/openeuler/static/my/create.png
new file mode 100644
index 0000000000000000000000000000000000000000..2dbb24d902b9ab1bc0c3cefe204a12501526b41d
Binary files /dev/null and b/src/openeuler/static/my/create.png differ
diff --git a/src/openeuler/static/my/no-collection.png b/src/openeuler/static/my/no-collection.png
new file mode 100644
index 0000000000000000000000000000000000000000..09f76532ec6fc5f51b9d2ec2bc3773279efac580
Binary files /dev/null and b/src/openeuler/static/my/no-collection.png differ
diff --git a/src/openeuler/static/my/privecy.png b/src/openeuler/static/my/privecy.png
new file mode 100644
index 0000000000000000000000000000000000000000..039fb6c42f4535e659f0ea1748c4a61ff972dad9
Binary files /dev/null and b/src/openeuler/static/my/privecy.png differ
diff --git a/src/openeuler/static/my/publishing.png b/src/openeuler/static/my/publishing.png
new file mode 100644
index 0000000000000000000000000000000000000000..20784c0e7e012374495f0a5820b9e2e0b3856af6
Binary files /dev/null and b/src/openeuler/static/my/publishing.png differ
diff --git a/src/openeuler/static/my/under-release.png b/src/openeuler/static/my/under-release.png
new file mode 100644
index 0000000000000000000000000000000000000000..cfe33cd5df661a529ee62ec3fbbbab63ce592335
Binary files /dev/null and b/src/openeuler/static/my/under-release.png differ
diff --git a/src/openeuler/static/reserve/info.svg b/src/openeuler/static/reserve/info.svg
new file mode 100644
index 0000000000000000000000000000000000000000..e7f0a622eaf8ff6a5c1f9ace1300355dbc2c0dde
--- /dev/null
+++ b/src/openeuler/static/reserve/info.svg
@@ -0,0 +1,9 @@
+
+
\ No newline at end of file
diff --git a/src/openeuler/static/reserve/meeting-success.png b/src/openeuler/static/reserve/meeting-success.png
new file mode 100644
index 0000000000000000000000000000000000000000..5040a4fc52a85cf19de7909b22aa0c6463ed6a28
Binary files /dev/null and b/src/openeuler/static/reserve/meeting-success.png differ
diff --git a/src/openeuler/static/sig/add.svg b/src/openeuler/static/sig/add.svg
new file mode 100644
index 0000000000000000000000000000000000000000..c9642eb545868ba0debc52e77d99ac98a662feee
--- /dev/null
+++ b/src/openeuler/static/sig/add.svg
@@ -0,0 +1,9 @@
+
+
\ No newline at end of file
diff --git a/src/openeuler/static/sig/del.svg b/src/openeuler/static/sig/del.svg
new file mode 100644
index 0000000000000000000000000000000000000000..1b7ebf732751a24cdb0b0e46bec393311dd61728
--- /dev/null
+++ b/src/openeuler/static/sig/del.svg
@@ -0,0 +1,9 @@
+
+
\ No newline at end of file
diff --git a/src/openeuler/static/sig/empty-img.png b/src/openeuler/static/sig/empty-img.png
new file mode 100644
index 0000000000000000000000000000000000000000..8c1bad4c1e692075b9d5be1eaec319e3559afb47
Binary files /dev/null and b/src/openeuler/static/sig/empty-img.png differ
diff --git a/src/openeuler/static/tabbar/events-selected.png b/src/openeuler/static/tabbar/events-selected.png
new file mode 100644
index 0000000000000000000000000000000000000000..4c1f8f7f303145b7b27e7f05eb3a9cfacf9028d2
Binary files /dev/null and b/src/openeuler/static/tabbar/events-selected.png differ
diff --git a/src/openeuler/static/tabbar/events.png b/src/openeuler/static/tabbar/events.png
new file mode 100644
index 0000000000000000000000000000000000000000..33b19b1929163d82c6b49c7f30590734afa66a0a
Binary files /dev/null and b/src/openeuler/static/tabbar/events.png differ
diff --git a/src/openeuler/static/tabbar/home-selected.png b/src/openeuler/static/tabbar/home-selected.png
new file mode 100644
index 0000000000000000000000000000000000000000..a9a2b93725dd15b33200ec680de81f22a7062318
Binary files /dev/null and b/src/openeuler/static/tabbar/home-selected.png differ
diff --git a/src/openeuler/static/tabbar/home.png b/src/openeuler/static/tabbar/home.png
new file mode 100644
index 0000000000000000000000000000000000000000..195b9837f6c8e5b671d9f7703d92125c9a21c82c
Binary files /dev/null and b/src/openeuler/static/tabbar/home.png differ
diff --git a/src/openeuler/static/tabbar/meeting-selected.png b/src/openeuler/static/tabbar/meeting-selected.png
new file mode 100644
index 0000000000000000000000000000000000000000..3207a3619a83bc0fbf0620b219b58a7776e2b1cd
Binary files /dev/null and b/src/openeuler/static/tabbar/meeting-selected.png differ
diff --git a/src/openeuler/static/tabbar/meeting.png b/src/openeuler/static/tabbar/meeting.png
new file mode 100644
index 0000000000000000000000000000000000000000..7eebb976b1a90ac908404df08b49717e0f9e17d1
Binary files /dev/null and b/src/openeuler/static/tabbar/meeting.png differ
diff --git a/src/openeuler/static/tabbar/my-selected.png b/src/openeuler/static/tabbar/my-selected.png
new file mode 100644
index 0000000000000000000000000000000000000000..06abf8e66fcdac350a6999af31b707bdac4dd739
Binary files /dev/null and b/src/openeuler/static/tabbar/my-selected.png differ
diff --git a/src/openeuler/static/tabbar/my.png b/src/openeuler/static/tabbar/my.png
new file mode 100644
index 0000000000000000000000000000000000000000..e5b358d0e5821c86b32ae1a2321601e88625e2a8
Binary files /dev/null and b/src/openeuler/static/tabbar/my.png differ
diff --git a/src/openeuler/utils/app-ajax.js b/src/openeuler/utils/app-ajax.js
new file mode 100644
index 0000000000000000000000000000000000000000..2a9a08cda4c80c2da830845377c06db677c14ef0
--- /dev/null
+++ b/src/openeuler/utils/app-ajax.js
@@ -0,0 +1,189 @@
+/**
+ * 请求方法
+ */
+
+var appSession = require('./app-session.js');
+var underscore = require('./underscore-extend.js');
+const servicesConfig = require('../config/services-config.js');
+const CONSTANTS = require('../config/constants.js');
+const app = getApp();
+
+var isLoadingButton = false;
+var tempLoading = {};
+
+/* 基础通信参数 */
+var _authClient = function() {
+ var deviceId = "miniprogram";
+
+ var auth = {
+ authParams: {
+ timestamp: new Date().getTime(),
+ deviceId: deviceId,
+ },
+ clientParams: {
+ os: "mini",
+ network: "",
+ deviceId: deviceId,
+ appVersion: CONSTANTS.APP_VERSION
+ },
+ openId: appSession.getUserInfoByKey("openId") || '',
+ appId: CONSTANTS.APP_ID,
+ areaCode: CONSTANTS.AREA_CODE,
+ miniId: CONSTANTS.MINI_ID
+ };
+
+ return auth;
+};
+
+/**
+ * 获取service
+ * @param {Object} params
+ */
+var _getInterfaceUrl = function(params){
+ var interfaceUrl;
+ if(!params.otherParams){
+ return servicesConfig[params["service"]];
+ }
+ for(var key in params.otherParams){
+ interfaceUrl = (interfaceUrl || servicesConfig[params["service"]]).replace("{" +key + "}", params.otherParams[key]);
+ }
+
+ return interfaceUrl;
+};
+
+var _addUrlParam = function(data){
+
+ var postData = "";
+ for(var key in data){
+ if(!postData){
+ postData = "?" + key + "=" + data[key];
+ }else{
+ postData += "&" + key + "=" + data[key];
+ }
+ }
+
+ return postData;
+};
+
+var appAjax = {
+
+ /**
+ * 提交请求
+ * @param {Object} options
+ * service: "" // 接口名
+ * data: "", // 请求参数
+ * otherParams: "", // 通过url传递的参数
+ * type : "", // 请求类型
+ * success: "", // 成功回调
+ * error: "", // 失败回调
+ * complete: "" // 完成回调
+ */
+ postJson : function(params) {
+
+ var authClient = _authClient();
+
+ // 默认参数
+ var defaultParams = {
+ service : "", // 服务的配置名称
+ success : function(d){}, // 成功后回调
+ error : null, // 失败后回调
+ autoShowWait : false, // 自动显示菊花
+ loadingText : "加载中...", // 加载的提示语
+ autoCloseWait : true, // 自动关闭菊花
+ headers : {
+ "base-params" : JSON.stringify(authClient),
+ "Authorization" : appSession.getToken()?("Bearer " + appSession.getToken()) : ""
+ },
+ isAsync : true
+ };
+ var ajaxParams = underscore.deepExtend(true, defaultParams, params);
+ // rest请求路径
+ ajaxParams["url"] = CONSTANTS["SERVICE_URL"] + _getInterfaceUrl(ajaxParams);
+ if((ajaxParams.type == "GET" || ajaxParams.type == "DELETE") && ajaxParams.data && typeof(ajaxParams.data) == "object"){
+ ajaxParams["url"] = ajaxParams["url"] + _addUrlParam(ajaxParams.data);
+ }
+
+
+
+ // 是否展示loading
+ if(ajaxParams.autoShowWait && wx.showLoading) {
+ wx.showLoading({
+ title : ajaxParams.loadingText,
+ mask: true
+ });
+ }
+ wx.request({
+ url : ajaxParams.url,
+ header : ajaxParams.headers,
+ method : ajaxParams["type"] || 'POST',
+ data : ajaxParams.data,
+ success: function( res ) {
+ if(res.statusCode === 401){
+ wx.removeStorageSync('_app_userinfo_session');
+ ajaxParams.success(0, res);
+ var pages = getCurrentPages();
+ var currentPage = pages[pages.length-1];
+ var url = currentPage.route;
+ if (url === 'pages/auth/auth') {
+ return;
+ }
+ wx.navigateTo({
+ url: '/pages/auth/auth'
+ })
+ return;
+ }
+ if(res.statusCode.toString()[0] != 2){
+ var message = "有点忙开个小差,稍后再试~";
+ if(ajaxParams.error){
+ ajaxParams.error(message, res);
+ }else{
+ wx.showToast({
+ title: message,
+ icon : "none",
+ duration: 2000
+ });
+ }
+ return;
+ }
+ ajaxParams.success(res.data, res);
+
+ },
+ fail: function(res) {
+ var message = "有点忙开个小差,稍后再试~";
+ ajaxParams.error && ajaxParams.error(message, res);
+ },
+ complete : function(res) {
+ if(!res.errMsg.includes('ok')){
+ wx.showToast({
+ title: res.errMsg,
+ icon : "none",
+ duration: 2000
+ });
+ }
+ // 关闭loading
+ if(ajaxParams.autoShowWait && wx.hideLoading) {
+ wx.hideLoading();
+ }
+ }
+ });
+
+ },
+
+ /**
+ * 上下拉
+ */
+ datalistParam: function() {
+ return {
+ lastdate: 0,
+ pageSize: 20,
+ type: "DOWN" // DOWN UP
+ };
+ },
+
+ // 下拉
+ scrollDown: "DOWN",
+ // 上拉
+ scrollUp: "UP"
+};
+
+module.exports = appAjax;
\ No newline at end of file
diff --git a/src/openeuler/utils/app-session.js b/src/openeuler/utils/app-session.js
new file mode 100644
index 0000000000000000000000000000000000000000..95c62ab28f904194d91d6a7c975092ebabd5f277
--- /dev/null
+++ b/src/openeuler/utils/app-session.js
@@ -0,0 +1,68 @@
+var constants = require("../config/constants.js");
+/**
+ * 获取用户信息
+ */
+var _getUserinfo = function(){
+ var userInfo = wx.getStorageSync(constants.APP_USERINFO_SESSION);
+
+ return userInfo;
+};
+
+/**
+ * 通过key获取值
+ * @params key
+ */
+var _getValueByKey = function(key){
+ if (!key) {
+ return ;
+ }
+
+ var userinfo = _getUserinfo();
+
+ if(!userinfo){
+ return ;
+ }
+ return userinfo[key];
+};
+
+module.exports = {
+
+ /**
+ * 从缓存获取token
+ */
+ getToken : function(){
+ return _getValueByKey("access");
+ },
+
+ /**
+ * 通过key获取对应信息
+ */
+ getUserInfoByKey : function(key){
+ return _getValueByKey(key);
+ },
+
+ /**
+ * 获取用户信息
+ */
+ getUserinfo : function(){
+ return _getUserinfo();
+ },
+
+ /**
+ * 清楚用户信息
+ */
+ clearUserInfo : function(){
+ wx.removeStorageSync(constants.APP_USERINFO_SESSION);
+ },
+
+ /**
+ * 判断是否登录
+ */
+ loginCheck : function(){
+
+ if(_getUserinfo() && _getValueByKey("access")){
+ return true;
+ }
+ return false;
+ }
+};
\ No newline at end of file
diff --git a/src/openeuler/utils/app-user.js b/src/openeuler/utils/app-user.js
new file mode 100644
index 0000000000000000000000000000000000000000..247198a1ba535881094d4c98f0586ef5aac78776
--- /dev/null
+++ b/src/openeuler/utils/app-user.js
@@ -0,0 +1,278 @@
+var appAjax = require('./app-ajax.js');
+var appSession = require("./app-session.js");
+var constants = require("../config/constants")
+var app = getApp();
+
+var remote = {
+
+ /**
+ * 绑定手机
+ * @param {Object} phone
+ * @param {Object} _callback
+ */
+ _bindUserPhone: function (phone, _callback) {
+ appAjax.postJson({
+ service: "BIND_PHONE",
+ data: {
+ phone: phone
+ },
+ success: function (ret) {
+ _callback && _callback(ret);
+ }
+ });
+ }
+};
+
+var privateMethods = {
+
+ /**
+ * 登录
+ * @param {Object} callback
+ */
+ _login: function (callback) {
+
+
+ wx.showToast({
+ title: "登录中",
+ icon: "loading",
+ mask: true
+ });
+
+ wx.login({
+ success: function (data) {
+
+ wx.getUserInfo({
+ success: function (res) {
+ // 登录
+ appAjax.postJson({
+ headers: {
+ Authorization: ''
+ },
+ service: "LOGIN",
+ data: {
+ userInfo: res.userInfo,
+ code: data.code
+ },
+ success: function (result) {
+ res.userInfo.access = result.access;
+ res.userInfo.level = result.level;
+ res.userInfo.eventLevel = result.activity_level;
+ res.userInfo.gitee = result.gitee_name;
+ res.userInfo.userId = result.user_id;
+ // // 缓存用户信息
+ appUser.saveLoginInfo(res.userInfo || {});
+
+ // // 回调
+ callback && callback(res.userInfo || {});
+
+ }
+ });
+ },
+ fail: function (e) {
+ wx.hideToast();
+ }
+ });
+ }
+
+ })
+ }
+}
+
+var appUser = {
+
+ /**
+ * 需要登录的跳转
+ * page为空不能传null 要 ""
+ */
+ loginRedirect: function (page, callback) {
+
+ // 是否有登录
+ if (!appSession.loginCheck()) {
+ appUser.login(function (result) {
+ if (result && !result.phone) {
+ wx.navigateTo({
+ url: '../register/bind-phone?page=' + page
+ })
+ } else {
+ wx.navigateTo({
+ url: page
+ })
+ }
+
+ // 支持回调
+ callback && callback();
+ });
+ } else {
+ wx.navigateTo({
+ url: page
+ })
+ }
+ },
+
+ /**
+ * 需要登录的操作
+ * @param page 操作页 page为空不能传null 要 ""
+ * @param callback
+ */
+ loginHandle: function (page, callback) {
+
+ // 是否有登录
+ if (!appSession.loginCheck()) {
+ appUser.login(function (result) {
+
+ if (result && !result.phone) {
+ wx.navigateTo({
+ url: "../register/bind-phone?page=" + page
+ });
+ } else {
+ callback && callback();
+ }
+ });
+ } else {
+ callback && callback();
+ }
+ },
+
+ bindPhone: remote._bindUserPhone,
+
+ /**
+ * 登录
+ * @param {Object} successCallback
+ * @param {Object} failCallback
+ */
+ login: function (callback, failCallback) {
+ var that = this;
+
+ // 查看是否授权
+ wx.getSetting({
+ success: function (res) {
+ if (res.authSetting['scope.userInfo']) {
+
+ // 已经授权,可以直接调用 getUserInfo 获取头像昵称
+ privateMethods._login(callback);
+ } else {
+ app.loginCallback = function () {
+ privateMethods._login(callback);
+ };
+ wx.navigateTo({
+ url: '/pages/auth/auth'
+ });
+ }
+ }
+ });
+ },
+
+ /**
+ * 退出登录
+ */
+ logOut: function (callback) {
+ var that = this;
+ wx.showModal({
+ title: '',
+ content: '确定要退出您的账号?',
+ success: function (res) {
+ if (res.confirm) {
+
+ // 清理用户信息
+ appSession.clearUserInfo();
+ callback && callback();
+ }
+ }
+ });
+ },
+
+
+ /**
+ * 微信登录
+ * @param {Object} callback
+ * @param {Object} failCallback
+ */
+ wxLogin: function (callback, failCallback) {
+
+ appUser.login(function (result) {
+ callback && callback(result || {});
+ }, failCallback);
+ },
+
+ /**
+ * 保存用户信息
+ * @param {Object} result
+ */
+ saveLoginInfo: function (result) {
+
+ wx.setStorageSync(constants.APP_USERINFO_SESSION, result);
+ },
+
+ updateUserInfo: function (callback) {
+ let userInfo = wx.getStorageSync(constants.APP_USERINFO_SESSION);
+ if (userInfo && userInfo.userId) {
+ appAjax.postJson({
+ type: 'GET',
+ service: "GET_USER_STATUS",
+ otherParams: {
+ id: userInfo.userId
+ },
+ success: function (ret) {
+ if (ret) {
+ userInfo.gitee = ret.gitee_name;
+ userInfo.level = ret.level;
+ userInfo.eventLevel = ret.activity_level;
+ wx.setStorageSync(constants.APP_USERINFO_SESSION, userInfo);
+ }
+ callback && callback();
+ }
+ });
+
+ } else {
+ callback && callback();
+ }
+ },
+ /**
+ * 兼容登录方法
+ * @param {Object} callback
+ * @param {Object} userInfo
+ */
+ wxGetUserProfileLogin(callback, userInfo) {
+
+ wx.showToast({
+ title: "登录中",
+ icon: "loading",
+ mask: true
+ });
+
+ wx.login({
+ success: function (data) {
+
+ appAjax.postJson({
+ headers: {
+ Authorization: ''
+ },
+ service: "LOGIN",
+ data: {
+ userInfo: userInfo,
+ code: data.code
+ },
+ success: function (result) {
+ userInfo.access = result.access;
+ userInfo.level = result.level;
+ userInfo.eventLevel = result.activity_level;
+ userInfo.gitee = result.gitee_name;
+ userInfo.userId = result.user_id;
+ // // 缓存用户信息
+ appUser.saveLoginInfo(userInfo || {});
+
+ // 回调
+ callback && callback(userInfo || {});
+
+ }
+ });
+ },
+ complete() {
+ wx.hideToast();
+ }
+
+ })
+ }
+};
+
+module.exports = appUser;
\ No newline at end of file
diff --git a/src/openeuler/utils/page-mixin.js b/src/openeuler/utils/page-mixin.js
new file mode 100644
index 0000000000000000000000000000000000000000..51997040fbeb936bb4b55298f716d6467e5b6dc4
--- /dev/null
+++ b/src/openeuler/utils/page-mixin.js
@@ -0,0 +1,145 @@
+/**
+ * 页面通用方法
+ * author xzx
+ * since 2020-8-20
+ */
+
+const _ = require("./underscore-extend");
+const constants = require("../config/constants");
+const {
+ deepExtend: $extend
+} = _;
+const app = getApp();
+
+// 页面数据
+const data = {
+ isIphoneX : app.globalData.isIphoneX
+};
+
+// 页面方法
+const methods = {
+
+ /**
+ * 设置监听器
+ */
+ $setWatcher(data, watch) { // 接收index.js传过来的data对象和watch对象
+ watch && Object.keys(watch).forEach(v => { // 将watch对象内的key遍历
+ this.$observe(data, v, watch[v]); // 监听data内的v属性,传入watch内对应函数以调用
+ })
+ },
+
+ /**
+ * 监听属性 并执行监听函数
+ */
+ $observe(obj, key, watchFun) {
+ var val = obj[key]; // 给该属性设默认值
+ var that = this;
+ Object.defineProperty(obj, key, {
+ configurable: true,
+ enumerable: true,
+ set(value) {
+ val = value;
+ watchFun.call(that, value, val); // 赋值(set)时,调用对应函数
+ },
+ get() {
+ return val;
+ }
+ })
+ },
+
+ /**
+ * 页面跳转
+ */
+ $navigateTo(event) {
+ wx.navigateTo({
+ url: event.currentTarget.dataset.url
+ })
+ },
+
+ $stopPropagation() {}
+};
+
+// 生命周期
+const lifeCycle = {
+ onLoad: {
+ before() {
+ this.$setWatcher(this.data, this.watch); // 设置监听器
+
+ var pages = getCurrentPages() //获取加载的页面
+ var currentPage = pages[pages.length-1] //获取当前页面的对象
+ var url = currentPage.route //当前页面url
+
+ // 判断是否登录
+ let userInfo = wx.getStorageSync(constants.APP_USERINFO_SESSION);
+
+ if(url != 'pages/auth/auth') {
+ // wx.navigateTo({
+ // url: `/package-events/events/sign-success?id=46`
+ // })
+ if(!userInfo && !userInfo.access) {
+ // app.globalData.tourist = true;
+ }
+ }
+ },
+ after() {
+ }
+ },
+
+ onShow : {
+ before() {
+ wx.hideHomeButton && wx.hideHomeButton();
+ }
+ }
+};
+
+var local = {
+
+ getLifeCycle(rewriteList, lifeCycle, pageConfig) {
+ let config = {};
+
+ rewriteList.forEach((i) => {
+ if(i in pageConfig) {
+ config[i] = function() {
+ (i in lifeCycle) && ('before' in lifeCycle[i]) && lifeCycle[i].before.call(this, ...arguments);
+ pageConfig[i].call(this, ...arguments);
+ (i in lifeCycle) && ('after' in lifeCycle[i]) && lifeCycle[i].after.call(this, ...arguments);
+ }
+ }
+ });
+
+ return config;
+ }
+};
+
+var $pageMixin = function(pageConfig) {
+
+ let rewriteList = [
+ 'onLoad', // 生命周期函数--监听页面加载
+ // 'onReady', // 生命周期函数--监听页面初次渲染完成
+ // 'onShow', // 生命周期函数--监听页面显示
+ // 'onHide', // 生命周期函数--监听页面隐藏
+ // 'onUnload', // 生命周期函数--监听页面卸载
+ // 'onPullDownRefresh', // 页面相关事件处理函数--监听用户下拉动作
+ // 'onReachBottom', // 页面上拉触底事件的处理函数
+ // 'onShareAppMessage' // 用户点击右上角分享
+ ];
+
+ let lifeConfig = local.getLifeCycle(rewriteList, lifeCycle, pageConfig);
+
+ let baseConfig = {
+ data,
+ ...methods
+ };
+
+ return $extend({},
+ baseConfig,
+ pageConfig,
+ lifeConfig
+ );
+};
+
+module.exports = {
+ _,
+ $pageMixin,
+ $extend
+};
\ No newline at end of file
diff --git a/src/openeuler/utils/underscore-extend.js b/src/openeuler/utils/underscore-extend.js
new file mode 100644
index 0000000000000000000000000000000000000000..00a44930e24dedf54616c409414109b112b5bf63
--- /dev/null
+++ b/src/openeuler/utils/underscore-extend.js
@@ -0,0 +1,49 @@
+/**
+ * underscore扩展方法
+ */
+
+var _ = require('./underscore.js');
+
+_.mixin({
+
+ /**
+ * 对象深拷贝
+ */
+ deepExtend: function(target) {
+ var deep = true, args = [].slice.call(arguments, 1);
+
+ var extend = function(target, source, deep) {
+ var isArray = _.isArray;
+ var isWindow = function(obj) {
+ return obj != null && obj == obj.window;
+ };
+ var isPlainObject = function(obj) {
+ return _.isObject(obj) && !isWindow(obj) && obj.__proto__ == Object.prototype;
+ };
+ for(var key in source){
+
+ //如果深度扩展
+ if(deep && (isPlainObject(source[key]) || isArray(source[key]))) {
+ //如果要扩展的数据是对象且target相对应的key不是对象
+ if(isPlainObject(source[key]) && !isPlainObject(target[key])) target[key] = {}
+ //如果要扩展的数据是数组且target相对应的key不是数组
+ if(isArray(source[key]) && !isArray(target[key])) target[key] = []
+ extend(target[key], source[key], deep)
+ } else if(source[key] !== undefined) target[key] = source[key]
+ }
+ };
+
+ if(typeof target == 'boolean') { //当第一个参数为boolean类型的值时,表示是否深度扩展
+ deep = target
+ target = args.shift() //target取第二个参数
+ }
+
+ //遍历后面的参数,全部扩展到target上
+ args.forEach(function(arg) {
+ extend(target, arg, deep)
+ });
+ return target;
+ }
+});
+
+module.exports = _;
\ No newline at end of file
diff --git a/src/openeuler/utils/underscore.js b/src/openeuler/utils/underscore.js
new file mode 100644
index 0000000000000000000000000000000000000000..2ebe814af2704603691af366e8ef33492977adda
--- /dev/null
+++ b/src/openeuler/utils/underscore.js
@@ -0,0 +1,6 @@
+// Underscore.js 1.8.2
+// http://underscorejs.org
+// (c) 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+// Underscore may be freely distributed under the MIT license.
+(function(){function n(n){function t(t,r,e,u,i,o){for(;i>=0&&o>i;i+=n){var a=u?u[i]:i;e=r(e,t[a],a,t)}return e}return function(r,e,u,i){e=d(e,i,4);var o=!w(r)&&m.keys(r),a=(o||r).length,c=n>0?0:a-1;return arguments.length<3&&(u=r[o?o[c]:c],c+=n),t(r,e,u,o,c,a)}}function t(n){return function(t,r,e){r=b(r,e);for(var u=null!=t&&t.length,i=n>0?0:u-1;i>=0&&u>i;i+=n)if(r(t[i],i,t))return i;return-1}}function r(n,t){var r=S.length,e=n.constructor,u=m.isFunction(e)&&e.prototype||o,i="constructor";for(m.has(n,i)&&!m.contains(t,i)&&t.push(i);r--;)i=S[r],i in n&&n[i]!==u[i]&&!m.contains(t,i)&&t.push(i)}var e=this,u=e._,i=Array.prototype,o=Object.prototype,a=Function.prototype,c=i.push,l=i.slice,f=o.toString,s=o.hasOwnProperty,p=Array.isArray,h=Object.keys,v=a.bind,g=Object.create,y=function(){},m=function(n){return n instanceof m?n:this instanceof m?void(this._wrapped=n):new m(n)};"undefined"!=typeof exports?("undefined"!=typeof module&&module.exports&&(exports=module.exports=m),exports._=m):e._=m,m.VERSION="1.8.2";var d=function(n,t,r){if(t===void 0)return n;switch(null==r?3:r){case 1:return function(r){return n.call(t,r)};case 2:return function(r,e){return n.call(t,r,e)};case 3:return function(r,e,u){return n.call(t,r,e,u)};case 4:return function(r,e,u,i){return n.call(t,r,e,u,i)}}return function(){return n.apply(t,arguments)}},b=function(n,t,r){return null==n?m.identity:m.isFunction(n)?d(n,t,r):m.isObject(n)?m.matcher(n):m.property(n)};m.iteratee=function(n,t){return b(n,t,1/0)};var x=function(n,t){return function(r){var e=arguments.length;if(2>e||null==r)return r;for(var u=1;e>u;u++)for(var i=arguments[u],o=n(i),a=o.length,c=0;a>c;c++){var l=o[c];t&&r[l]!==void 0||(r[l]=i[l])}return r}},_=function(n){if(!m.isObject(n))return{};if(g)return g(n);y.prototype=n;var t=new y;return y.prototype=null,t},j=Math.pow(2,53)-1,w=function(n){var t=n&&n.length;return"number"==typeof t&&t>=0&&j>=t};m.each=m.forEach=function(n,t,r){t=d(t,r);var e,u;if(w(n))for(e=0,u=n.length;u>e;e++)t(n[e],e,n);else{var i=m.keys(n);for(e=0,u=i.length;u>e;e++)t(n[i[e]],i[e],n)}return n},m.map=m.collect=function(n,t,r){t=b(t,r);for(var e=!w(n)&&m.keys(n),u=(e||n).length,i=Array(u),o=0;u>o;o++){var a=e?e[o]:o;i[o]=t(n[a],a,n)}return i},m.reduce=m.foldl=m.inject=n(1),m.reduceRight=m.foldr=n(-1),m.find=m.detect=function(n,t,r){var e;return e=w(n)?m.findIndex(n,t,r):m.findKey(n,t,r),e!==void 0&&e!==-1?n[e]:void 0},m.filter=m.select=function(n,t,r){var e=[];return t=b(t,r),m.each(n,function(n,r,u){t(n,r,u)&&e.push(n)}),e},m.reject=function(n,t,r){return m.filter(n,m.negate(b(t)),r)},m.every=m.all=function(n,t,r){t=b(t,r);for(var e=!w(n)&&m.keys(n),u=(e||n).length,i=0;u>i;i++){var o=e?e[i]:i;if(!t(n[o],o,n))return!1}return!0},m.some=m.any=function(n,t,r){t=b(t,r);for(var e=!w(n)&&m.keys(n),u=(e||n).length,i=0;u>i;i++){var o=e?e[i]:i;if(t(n[o],o,n))return!0}return!1},m.contains=m.includes=m.include=function(n,t,r){return w(n)||(n=m.values(n)),m.indexOf(n,t,"number"==typeof r&&r)>=0},m.invoke=function(n,t){var r=l.call(arguments,2),e=m.isFunction(t);return m.map(n,function(n){var u=e?t:n[t];return null==u?u:u.apply(n,r)})},m.pluck=function(n,t){return m.map(n,m.property(t))},m.where=function(n,t){return m.filter(n,m.matcher(t))},m.findWhere=function(n,t){return m.find(n,m.matcher(t))},m.max=function(n,t,r){var e,u,i=-1/0,o=-1/0;if(null==t&&null!=n){n=w(n)?n:m.values(n);for(var a=0,c=n.length;c>a;a++)e=n[a],e>i&&(i=e)}else t=b(t,r),m.each(n,function(n,r,e){u=t(n,r,e),(u>o||u===-1/0&&i===-1/0)&&(i=n,o=u)});return i},m.min=function(n,t,r){var e,u,i=1/0,o=1/0;if(null==t&&null!=n){n=w(n)?n:m.values(n);for(var a=0,c=n.length;c>a;a++)e=n[a],i>e&&(i=e)}else t=b(t,r),m.each(n,function(n,r,e){u=t(n,r,e),(o>u||1/0===u&&1/0===i)&&(i=n,o=u)});return i},m.shuffle=function(n){for(var t,r=w(n)?n:m.values(n),e=r.length,u=Array(e),i=0;e>i;i++)t=m.random(0,i),t!==i&&(u[i]=u[t]),u[t]=r[i];return u},m.sample=function(n,t,r){return null==t||r?(w(n)||(n=m.values(n)),n[m.random(n.length-1)]):m.shuffle(n).slice(0,Math.max(0,t))},m.sortBy=function(n,t,r){return t=b(t,r),m.pluck(m.map(n,function(n,r,e){return{value:n,index:r,criteria:t(n,r,e)}}).sort(function(n,t){var r=n.criteria,e=t.criteria;if(r!==e){if(r>e||r===void 0)return 1;if(e>r||e===void 0)return-1}return n.index-t.index}),"value")};var A=function(n){return function(t,r,e){var u={};return r=b(r,e),m.each(t,function(e,i){var o=r(e,i,t);n(u,e,o)}),u}};m.groupBy=A(function(n,t,r){m.has(n,r)?n[r].push(t):n[r]=[t]}),m.indexBy=A(function(n,t,r){n[r]=t}),m.countBy=A(function(n,t,r){m.has(n,r)?n[r]++:n[r]=1}),m.toArray=function(n){return n?m.isArray(n)?l.call(n):w(n)?m.map(n,m.identity):m.values(n):[]},m.size=function(n){return null==n?0:w(n)?n.length:m.keys(n).length},m.partition=function(n,t,r){t=b(t,r);var e=[],u=[];return m.each(n,function(n,r,i){(t(n,r,i)?e:u).push(n)}),[e,u]},m.first=m.head=m.take=function(n,t,r){return null==n?void 0:null==t||r?n[0]:m.initial(n,n.length-t)},m.initial=function(n,t,r){return l.call(n,0,Math.max(0,n.length-(null==t||r?1:t)))},m.last=function(n,t,r){return null==n?void 0:null==t||r?n[n.length-1]:m.rest(n,Math.max(0,n.length-t))},m.rest=m.tail=m.drop=function(n,t,r){return l.call(n,null==t||r?1:t)},m.compact=function(n){return m.filter(n,m.identity)};var k=function(n,t,r,e){for(var u=[],i=0,o=e||0,a=n&&n.length;a>o;o++){var c=n[o];if(w(c)&&(m.isArray(c)||m.isArguments(c))){t||(c=k(c,t,r));var l=0,f=c.length;for(u.length+=f;f>l;)u[i++]=c[l++]}else r||(u[i++]=c)}return u};m.flatten=function(n,t){return k(n,t,!1)},m.without=function(n){return m.difference(n,l.call(arguments,1))},m.uniq=m.unique=function(n,t,r,e){if(null==n)return[];m.isBoolean(t)||(e=r,r=t,t=!1),null!=r&&(r=b(r,e));for(var u=[],i=[],o=0,a=n.length;a>o;o++){var c=n[o],l=r?r(c,o,n):c;t?(o&&i===l||u.push(c),i=l):r?m.contains(i,l)||(i.push(l),u.push(c)):m.contains(u,c)||u.push(c)}return u},m.union=function(){return m.uniq(k(arguments,!0,!0))},m.intersection=function(n){if(null==n)return[];for(var t=[],r=arguments.length,e=0,u=n.length;u>e;e++){var i=n[e];if(!m.contains(t,i)){for(var o=1;r>o&&m.contains(arguments[o],i);o++);o===r&&t.push(i)}}return t},m.difference=function(n){var t=k(arguments,!0,!0,1);return m.filter(n,function(n){return!m.contains(t,n)})},m.zip=function(){return m.unzip(arguments)},m.unzip=function(n){for(var t=n&&m.max(n,"length").length||0,r=Array(t),e=0;t>e;e++)r[e]=m.pluck(n,e);return r},m.object=function(n,t){for(var r={},e=0,u=n&&n.length;u>e;e++)t?r[n[e]]=t[e]:r[n[e][0]]=n[e][1];return r},m.indexOf=function(n,t,r){var e=0,u=n&&n.length;if("number"==typeof r)e=0>r?Math.max(0,u+r):r;else if(r&&u)return e=m.sortedIndex(n,t),n[e]===t?e:-1;if(t!==t)return m.findIndex(l.call(n,e),m.isNaN);for(;u>e;e++)if(n[e]===t)return e;return-1},m.lastIndexOf=function(n,t,r){var e=n?n.length:0;if("number"==typeof r&&(e=0>r?e+r+1:Math.min(e,r+1)),t!==t)return m.findLastIndex(l.call(n,0,e),m.isNaN);for(;--e>=0;)if(n[e]===t)return e;return-1},m.findIndex=t(1),m.findLastIndex=t(-1),m.sortedIndex=function(n,t,r,e){r=b(r,e,1);for(var u=r(t),i=0,o=n.length;o>i;){var a=Math.floor((i+o)/2);r(n[a])i;i++,n+=r)u[i]=n;return u};var O=function(n,t,r,e,u){if(!(e instanceof t))return n.apply(r,u);var i=_(n.prototype),o=n.apply(i,u);return m.isObject(o)?o:i};m.bind=function(n,t){if(v&&n.bind===v)return v.apply(n,l.call(arguments,1));if(!m.isFunction(n))throw new TypeError("Bind must be called on a function");var r=l.call(arguments,2),e=function(){return O(n,e,t,this,r.concat(l.call(arguments)))};return e},m.partial=function(n){var t=l.call(arguments,1),r=function(){for(var e=0,u=t.length,i=Array(u),o=0;u>o;o++)i[o]=t[o]===m?arguments[e++]:t[o];for(;e=e)throw new Error("bindAll must be passed function names");for(t=1;e>t;t++)r=arguments[t],n[r]=m.bind(n[r],n);return n},m.memoize=function(n,t){var r=function(e){var u=r.cache,i=""+(t?t.apply(this,arguments):e);return m.has(u,i)||(u[i]=n.apply(this,arguments)),u[i]};return r.cache={},r},m.delay=function(n,t){var r=l.call(arguments,2);return setTimeout(function(){return n.apply(null,r)},t)},m.defer=m.partial(m.delay,m,1),m.throttle=function(n,t,r){var e,u,i,o=null,a=0;r||(r={});var c=function(){a=r.leading===!1?0:m.now(),o=null,i=n.apply(e,u),o||(e=u=null)};return function(){var l=m.now();a||r.leading!==!1||(a=l);var f=t-(l-a);return e=this,u=arguments,0>=f||f>t?(o&&(clearTimeout(o),o=null),a=l,i=n.apply(e,u),o||(e=u=null)):o||r.trailing===!1||(o=setTimeout(c,f)),i}},m.debounce=function(n,t,r){var e,u,i,o,a,c=function(){var l=m.now()-o;t>l&&l>=0?e=setTimeout(c,t-l):(e=null,r||(a=n.apply(i,u),e||(i=u=null)))};return function(){i=this,u=arguments,o=m.now();var l=r&&!e;return e||(e=setTimeout(c,t)),l&&(a=n.apply(i,u),i=u=null),a}},m.wrap=function(n,t){return m.partial(t,n)},m.negate=function(n){return function(){return!n.apply(this,arguments)}},m.compose=function(){var n=arguments,t=n.length-1;return function(){for(var r=t,e=n[t].apply(this,arguments);r--;)e=n[r].call(this,e);return e}},m.after=function(n,t){return function(){return--n<1?t.apply(this,arguments):void 0}},m.before=function(n,t){var r;return function(){return--n>0&&(r=t.apply(this,arguments)),1>=n&&(t=null),r}},m.once=m.partial(m.before,2);var F=!{toString:null}.propertyIsEnumerable("toString"),S=["valueOf","isPrototypeOf","toString","propertyIsEnumerable","hasOwnProperty","toLocaleString"];m.keys=function(n){if(!m.isObject(n))return[];if(h)return h(n);var t=[];for(var e in n)m.has(n,e)&&t.push(e);return F&&r(n,t),t},m.allKeys=function(n){if(!m.isObject(n))return[];var t=[];for(var e in n)t.push(e);return F&&r(n,t),t},m.values=function(n){for(var t=m.keys(n),r=t.length,e=Array(r),u=0;r>u;u++)e[u]=n[t[u]];return e},m.mapObject=function(n,t,r){t=b(t,r);for(var e,u=m.keys(n),i=u.length,o={},a=0;i>a;a++)e=u[a],o[e]=t(n[e],e,n);return o},m.pairs=function(n){for(var t=m.keys(n),r=t.length,e=Array(r),u=0;r>u;u++)e[u]=[t[u],n[t[u]]];return e},m.invert=function(n){for(var t={},r=m.keys(n),e=0,u=r.length;u>e;e++)t[n[r[e]]]=r[e];return t},m.functions=m.methods=function(n){var t=[];for(var r in n)m.isFunction(n[r])&&t.push(r);return t.sort()},m.extend=x(m.allKeys),m.extendOwn=m.assign=x(m.keys),m.findKey=function(n,t,r){t=b(t,r);for(var e,u=m.keys(n),i=0,o=u.length;o>i;i++)if(e=u[i],t(n[e],e,n))return e},m.pick=function(n,t,r){var e,u,i={},o=n;if(null==o)return i;m.isFunction(t)?(u=m.allKeys(o),e=d(t,r)):(u=k(arguments,!1,!1,1),e=function(n,t,r){return t in r},o=Object(o));for(var a=0,c=u.length;c>a;a++){var l=u[a],f=o[l];e(f,l,o)&&(i[l]=f)}return i},m.omit=function(n,t,r){if(m.isFunction(t))t=m.negate(t);else{var e=m.map(k(arguments,!1,!1,1),String);t=function(n,t){return!m.contains(e,t)}}return m.pick(n,t,r)},m.defaults=x(m.allKeys,!0),m.clone=function(n){return m.isObject(n)?m.isArray(n)?n.slice():m.extend({},n):n},m.tap=function(n,t){return t(n),n},m.isMatch=function(n,t){var r=m.keys(t),e=r.length;if(null==n)return!e;for(var u=Object(n),i=0;e>i;i++){var o=r[i];if(t[o]!==u[o]||!(o in u))return!1}return!0};var E=function(n,t,r,e){if(n===t)return 0!==n||1/n===1/t;if(null==n||null==t)return n===t;n instanceof m&&(n=n._wrapped),t instanceof m&&(t=t._wrapped);var u=f.call(n);if(u!==f.call(t))return!1;switch(u){case"[object RegExp]":case"[object String]":return""+n==""+t;case"[object Number]":return+n!==+n?+t!==+t:0===+n?1/+n===1/t:+n===+t;case"[object Date]":case"[object Boolean]":return+n===+t}var i="[object Array]"===u;if(!i){if("object"!=typeof n||"object"!=typeof t)return!1;var o=n.constructor,a=t.constructor;if(o!==a&&!(m.isFunction(o)&&o instanceof o&&m.isFunction(a)&&a instanceof a)&&"constructor"in n&&"constructor"in t)return!1}r=r||[],e=e||[];for(var c=r.length;c--;)if(r[c]===n)return e[c]===t;if(r.push(n),e.push(t),i){if(c=n.length,c!==t.length)return!1;for(;c--;)if(!E(n[c],t[c],r,e))return!1}else{var l,s=m.keys(n);if(c=s.length,m.keys(t).length!==c)return!1;for(;c--;)if(l=s[c],!m.has(t,l)||!E(n[l],t[l],r,e))return!1}return r.pop(),e.pop(),!0};m.isEqual=function(n,t){return E(n,t)},m.isEmpty=function(n){return null==n?!0:w(n)&&(m.isArray(n)||m.isString(n)||m.isArguments(n))?0===n.length:0===m.keys(n).length},m.isElement=function(n){return!(!n||1!==n.nodeType)},m.isArray=p||function(n){return"[object Array]"===f.call(n)},m.isObject=function(n){var t=typeof n;return"function"===t||"object"===t&&!!n},m.each(["Arguments","Function","String","Number","Date","RegExp","Error"],function(n){m["is"+n]=function(t){return f.call(t)==="[object "+n+"]"}}),m.isArguments(arguments)||(m.isArguments=function(n){return m.has(n,"callee")}),"function"!=typeof/./&&"object"!=typeof Int8Array&&(m.isFunction=function(n){return"function"==typeof n||!1}),m.isFinite=function(n){return isFinite(n)&&!isNaN(parseFloat(n))},m.isNaN=function(n){return m.isNumber(n)&&n!==+n},m.isBoolean=function(n){return n===!0||n===!1||"[object Boolean]"===f.call(n)},m.isNull=function(n){return null===n},m.isUndefined=function(n){return n===void 0},m.has=function(n,t){return null!=n&&s.call(n,t)},m.noConflict=function(){return e._=u,this},m.identity=function(n){return n},m.constant=function(n){return function(){return n}},m.noop=function(){},m.property=function(n){return function(t){return null==t?void 0:t[n]}},m.propertyOf=function(n){return null==n?function(){}:function(t){return n[t]}},m.matcher=m.matches=function(n){return n=m.extendOwn({},n),function(t){return m.isMatch(t,n)}},m.times=function(n,t,r){var e=Array(Math.max(0,n));t=d(t,r,1);for(var u=0;n>u;u++)e[u]=t(u);return e},m.random=function(n,t){return null==t&&(t=n,n=0),n+Math.floor(Math.random()*(t-n+1))},m.now=Date.now||function(){return(new Date).getTime()};var M={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`"},N=m.invert(M),I=function(n){var t=function(t){return n[t]},r="(?:"+m.keys(n).join("|")+")",e=RegExp(r),u=RegExp(r,"g");return function(n){return n=null==n?"":""+n,e.test(n)?n.replace(u,t):n}};m.escape=I(M),m.unescape=I(N),m.result=function(n,t,r){var e=null==n?void 0:n[t];return e===void 0&&(e=r),m.isFunction(e)?e.call(n):e};var B=0;m.uniqueId=function(n){var t=++B+"";return n?n+t:t},m.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g};var T=/(.)^/,R={"'":"'","\\":"\\","\r":"r","\n":"n","\u2028":"u2028","\u2029":"u2029"},q=/\\|'|\r|\n|\u2028|\u2029/g,K=function(n){return"\\"+R[n]};m.template=function(n,t,r){!t&&r&&(t=r),t=m.defaults({},t,m.templateSettings);var e=RegExp([(t.escape||T).source,(t.interpolate||T).source,(t.evaluate||T).source].join("|")+"|$","g"),u=0,i="__p+='";n.replace(e,function(t,r,e,o,a){return i+=n.slice(u,a).replace(q,K),u=a+t.length,r?i+="'+\n((__t=("+r+"))==null?'':_.escape(__t))+\n'":e?i+="'+\n((__t=("+e+"))==null?'':__t)+\n'":o&&(i+="';\n"+o+"\n__p+='"),t}),i+="';\n",t.variable||(i="with(obj||{}){\n"+i+"}\n"),i="var __t,__p='',__j=Array.prototype.join,"+"print=function(){__p+=__j.call(arguments,'');};\n"+i+"return __p;\n";try{var o=new Function(t.variable||"obj","_",i)}catch(a){throw a.source=i,a}var c=function(n){return o.call(this,n,m)},l=t.variable||"obj";return c.source="function("+l+"){\n"+i+"}",c},m.chain=function(n){var t=m(n);return t._chain=!0,t};var z=function(n,t){return n._chain?m(t).chain():t};m.mixin=function(n){m.each(m.functions(n),function(t){var r=m[t]=n[t];m.prototype[t]=function(){var n=[this._wrapped];return c.apply(n,arguments),z(this,r.apply(m,n))}})},m.mixin(m),m.each(["pop","push","reverse","shift","sort","splice","unshift"],function(n){var t=i[n];m.prototype[n]=function(){var r=this._wrapped;return t.apply(r,arguments),"shift"!==n&&"splice"!==n||0!==r.length||delete r[0],z(this,r)}}),m.each(["concat","join","slice"],function(n){var t=i[n];m.prototype[n]=function(){return z(this,t.apply(this._wrapped,arguments))}}),m.prototype.value=function(){return this._wrapped},m.prototype.valueOf=m.prototype.toJSON=m.prototype.value,m.prototype.toString=function(){return""+this._wrapped},"function"==typeof define&&define.amd&&define("underscore",[],function(){return m})}).call(this || module.exports);
+//# sourceMappingURL=underscore-min.map
\ No newline at end of file
diff --git a/src/openeuler/utils/util.js b/src/openeuler/utils/util.js
new file mode 100644
index 0000000000000000000000000000000000000000..0cbb61a50789cb4fa00423e040782675fbedece0
--- /dev/null
+++ b/src/openeuler/utils/util.js
@@ -0,0 +1,19 @@
+const formatTime = date => {
+ const year = date.getFullYear()
+ const month = date.getMonth() + 1
+ const day = date.getDate()
+ const hour = date.getHours()
+ const minute = date.getMinutes()
+ const second = date.getSeconds()
+
+ return [year, month, day].map(formatNumber).join('/') + ' ' + [hour, minute, second].map(formatNumber).join(':')
+}
+
+const formatNumber = n => {
+ n = n.toString()
+ return n[1] ? n : '0' + n
+}
+
+module.exports = {
+ formatTime: formatTime
+}
diff --git a/src/openeuler/utils/utils.js b/src/openeuler/utils/utils.js
new file mode 100644
index 0000000000000000000000000000000000000000..9edc78137782d6225ebd61d2c35c2dccace6a4bb
--- /dev/null
+++ b/src/openeuler/utils/utils.js
@@ -0,0 +1,278 @@
+/**
+ * 工具类
+ */
+
+var _ = require("./underscore-extend");
+
+var utils = {
+
+ /**
+ * underscore工具库
+ */
+ _ : _,
+
+ /**
+ * 深拷贝工具
+ */
+ deepExtend : _.deepExtend,
+
+ /**
+ * 获取时间差(小于一天)
+ * @param {Object} startTime 开始时间 long 毫秒数
+ * @param {Object} endTime 结束时间 long 毫秒数
+ * return {
+ * "days" : days,
+ * "hours" : hours,
+ * "minutes" : minutes,
+ * "seconds" : seconds
+ * }
+ */
+ getDiffTime: function(startTime, endTime) {
+ // 相差时间
+ var diffTime = endTime - startTime;
+ if(diffTime <= 0) {
+ return false;
+ }
+ // 计算出相差天数
+ var days = Math.floor(diffTime / (24 * 3600 * 1000));
+ // 计算出小时数
+ var leave1 = diffTime % (24 * 3600 * 1000); //计算天数后剩余的毫秒数
+ var hours = Math.floor(leave1 / (3600 * 1000));
+ // 计算相差分钟数
+ var leave2 = leave1 % (3600 * 1000); //计算小时数后剩余的毫秒数
+ var minutes = Math.floor(leave2 / (60 * 1000));
+ // 计算相差秒数
+ var leave3 = leave2 % (60 * 1000); //计算分钟数后剩余的毫秒数
+ var seconds = Math.round(leave3 / 1000);
+
+ return {
+ "days": days,
+ "hours": hours,
+ "minutes": minutes,
+ "seconds": seconds
+ };
+ },
+
+ /**
+ * 返回定时器格式(若天和小时为0则隐藏天和小时)
+ * @param {Object} time
+ */
+ getTiktokStr: function(time) {
+ var str = time.seconds + "秒";
+ if(time.days != 0) {
+ str = time.days + "天" + time.hours + "小时" + time.minutes + "分钟" + str;
+ } else if(time.hours != 0) {
+ str = time.hours + "小时" + time.minutes + "分钟" + str;
+ } else if(time.minutes != 0) {
+ str = time.minutes + "分钟" + str;
+ }
+ return str;
+ },
+
+ /**
+ * 倒计时方法
+ * @param {Object} startTime long 开始时间
+ * @param {Object} endTime long 结束时间
+ * @param {Object} renderFunc 回调渲染函数
+ * @param {Object} endFunc 倒计时结束回调函数
+ */
+ intervalTime: function(startTime, endTime, renderFunc, endFunc) {
+
+ if(!startTime || !endTime) {
+ return;
+ }
+ startTime = parseInt(startTime);
+ endTime = parseInt(endTime);
+
+ var that = this;
+
+ var diffTime = that.getDiffTime(startTime, endTime);
+ diffTime = that.getTiktokStr(diffTime);
+ renderFunc && renderFunc(diffTime);
+ startTime += 1000;
+
+ var interval = setInterval(function() {
+ diffTime = that.getDiffTime(startTime, endTime);
+ if(diffTime) {
+ startTime += 1000;
+ diffTime = that.getTiktokStr(diffTime);
+ renderFunc && renderFunc(diffTime);
+ } else {
+ clearInterval(interval);
+ endFunc && endFunc();
+ }
+ }, 1000);
+ },
+
+ /**
+ * 判断对象是否为空
+ */
+ isEmptyObject: function(obj) {
+ var t;
+ for(t in obj) {
+ return false;
+ }
+ return true;
+ },
+
+ /**
+ * 获取当前页面url
+ */
+ getCurrentUrl: function() {
+
+ var pageStack = getCurrentPages();
+ var thisPage = pageStack[pageStack.length - 1];
+
+ var baseUrl = thisPage.route;
+ var paramObj = thisPage.options;
+ var params = "";
+
+ if(this.isEmptyObject(paramObj)) {
+ return baseUrl;
+ } else {
+ for(var i in paramObj) {
+ if(params.indexOf("?") >= 0) {
+ params += "&";
+ } else {
+ params += "?";
+ }
+ params += i + "=" + paramObj[i];
+ }
+ }
+
+ return baseUrl + params;
+ },
+
+ /**
+ * 替换html特殊字符串
+ */
+ replaceHtmlString: function(str) {
+ str = str.replace(/ /g, ' ');
+ return str;
+ },
+
+ /**
+ * 添加URL的参数
+ * @param name 名称
+ * @param value 值
+ * @param url 链接地址
+ */
+ addUrlParam: function(name, value, url) {
+
+ if(!value) {
+ return url;
+ }
+
+ if(url.indexOf(name + "=") > -1){
+ return url;
+ }
+ var tmpUrl = url;
+
+ // 判断是否已经有其他参数
+ if(tmpUrl.indexOf("?") >= 0) {
+ tmpUrl += "&";
+ } else {
+ tmpUrl += "?";
+ }
+ tmpUrl += name + "=" + value;
+
+ return tmpUrl;
+ },
+
+ /**
+ * 日期格式化
+ */
+ formateDate : function() {
+
+ // 对Date的扩展,将 Date 转化为指定格式的String
+ // 月(M)、日(d)、小时(h)、分(m)、秒(s)、季度(q) 可以用 1-2 个占位符,
+ // 年(y)可以用 1-4 个占位符,毫秒(S)只能用 1 个占位符(是 1-3 位的数字)
+ // 例子:
+ // (new Date()).Format("yyyy-MM-dd hh:mm:ss.S") ==> 2006-07-02 08:09:04.423
+ // (new Date()).Format("yyyy-M-d h:m:s.S") ==> 2006-7-2 8:9:4.18
+ Date.prototype.Format = function (fmt) {
+ var o = {
+ "M+": this.getMonth() + 1, //月份
+ "d+": this.getDate(), //日
+ "h+": this.getHours(), //小时
+ "m+": this.getMinutes(), //分
+ "s+": this.getSeconds(), //秒
+ "q+": Math.floor((this.getMonth() + 3) / 3), //季度
+ "S": this.getMilliseconds() //毫秒
+ };
+ if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
+ for (var k in o)
+ if (new RegExp("(" + k + ")").test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
+ return fmt;
+ }
+ },
+
+ /**
+ * 版本比较
+ * param {string} v1 > v2 ? 1 : -1 ; 相等返回0
+ */
+ compareVersion : function(v1,v2){
+ v1 = v1.split('.');
+ v2 = v2.split('.');
+ var len = Math.max(v1.length, v2.length);
+
+ while (v1.length < len) {
+ v1.push('0');
+ }
+
+ while (v2.length < len) {
+ v2.push('0');
+ }
+
+ for (var i = 0; i < len; i++) {
+ var num1 = parseInt(v1[i]);
+ var num2 = parseInt(v2[i]);
+
+ if(num1 > num2) {
+ return 1;
+ }else if (num1 < num2) {
+ return -1;
+ }
+ }
+
+ return 0;
+ },
+
+ /**
+ * 静态资源定时清理缓存用的后缀
+ */
+ resourceSuffix : function() {
+ var randomStr = '?' + new Date().getTime().toString().slice(0,7) + '000000';
+ return randomStr;
+ },
+
+ /**
+ * 资讯跳转方法(文章、图集)
+ * @param {Object} options
+ * jumpType:跳转方法名,
+ * infoType:资讯类型1文章 2图集 3视频 4链接(不支持),
+ * id:资讯详情id
+ */
+ jumpToInfo : function(options) {
+
+ var id = options.id ? options.id : "";
+ var type = options.infoType ? options.infoType : 1;
+ var jumpType = (options.jumpType &&
+ (options.jumpType in wx) &&
+ (typeof wx[options.jumpType] == 'function')) ? options.jumpType : "navigateTo";
+
+ // 1文章 2图集 3视频 4链接(不支持)
+ var infoConfig = {
+ 1 : "/pages/discovery/info",
+ 2 : "/pages/discovery/picture-info"
+ };
+
+ var path = (type in infoConfig) ? (infoConfig[type] + "?id=" + id) : (infoConfig[1] + "?id=" + id);
+
+ wx[jumpType]({
+ url: path
+ });
+ }
+};
+
+module.exports = utils;
\ No newline at end of file
diff --git a/src/openeuler/utils/wx-validate.js b/src/openeuler/utils/wx-validate.js
new file mode 100644
index 0000000000000000000000000000000000000000..36d069d6f47b98dcc2012290f8ccfecc8ee0974d
--- /dev/null
+++ b/src/openeuler/utils/wx-validate.js
@@ -0,0 +1,417 @@
+/**
+ * 表单验证
+ * @param {Object} rules 验证字段的规则
+ * @param {Object} messages 验证字段的提示信息
+ */
+
+class WxValidate {
+ constructor(rules = {}, messages = {}) {
+ Object.assign(this, {
+ data: {},
+ rules,
+ messages,
+ })
+ this.__init()
+ }
+
+ /**
+ * __init
+ */
+ __init() {
+ this.__initMethods()
+ this.__initDefaults()
+ this.__initData()
+ }
+
+ /**
+ * 初始化数据
+ */
+ __initData() {
+ this.form = {}
+ this.errorList = []
+ }
+
+ /**
+ * 初始化默认提示信息
+ */
+ __initDefaults() {
+ this.defaults = {
+ messages: {
+ required: '这是必填字段。',
+ email: '请输入有效的电子邮件地址。',
+ tel: '请输入11位的手机号码。',
+ url: '请输入有效的网址。',
+ date: '请输入有效的日期。',
+ dateISO: '请输入有效的日期(ISO),例如:2009-06-23,1998/01/22。',
+ number: '请输入有效的数字。',
+ digits: '只能输入数字。',
+ idcard: '请输入18位的有效身份证。',
+ equalTo: this.formatTpl('输入值必须和 {0} 相同。'),
+ contains: this.formatTpl('输入值必须包含 {0}。'),
+ minlength: this.formatTpl('最少要输入 {0} 个字符。'),
+ maxlength: this.formatTpl('最多可以输入 {0} 个字符。'),
+ rangelength: this.formatTpl('请输入长度在 {0} 到 {1} 之间的字符。'),
+ min: this.formatTpl('请输入不小于 {0} 的数值。'),
+ max: this.formatTpl('请输入不大于 {0} 的数值。'),
+ range: this.formatTpl('请输入范围在 {0} 到 {1} 之间的数值。'),
+ }
+ }
+ }
+
+ /**
+ * 初始化默认验证方法
+ */
+ __initMethods() {
+ const that = this
+ that.methods = {
+ /**
+ * 验证必填元素
+ */
+ required(value, param) {
+ if(!that.depend(param)) {
+ return 'dependency-mismatch'
+ } else if(typeof value === 'number') {
+ value = value.toString()
+ } else if(typeof value === 'boolean') {
+ return !0
+ }
+
+ return value.length > 0
+ },
+ /**
+ * 验证电子邮箱格式
+ */
+ email(value) {
+ return that.optional(value) || /^[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/.test(value)
+ },
+ /**
+ * 验证手机格式
+ */
+ tel(value) {
+ return that.optional(value) || /^1[3456789]\d{9}$/.test(value)
+ },
+ /**
+ * 验证URL格式
+ */
+ url(value) {
+ return that.optional(value) || /^(?:(?:(?:https?|ftp):)?\/\/)(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z\u00a1-\uffff0-9]-*)*[a-z\u00a1-\uffff0-9]+)(?:\.(?:[a-z\u00a1-\uffff0-9]-*)*[a-z\u00a1-\uffff0-9]+)*(?:\.(?:[a-z\u00a1-\uffff]{2,})).?)(?::\d{2,5})?(?:[/?#]\S*)?$/i.test(value)
+ },
+ /**
+ * 验证日期格式
+ */
+ date(value) {
+ return that.optional(value) || !/Invalid|NaN/.test(new Date(value).toString())
+ },
+ /**
+ * 验证ISO类型的日期格式
+ */
+ dateISO(value) {
+ return that.optional(value) || /^\d{4}[\/\-](0?[1-9]|1[012])[\/\-](0?[1-9]|[12][0-9]|3[01])$/.test(value)
+ },
+ /**
+ * 验证十进制数字
+ */
+ number(value) {
+ return that.optional(value) || /^(?:-?\d+|-?\d{1,3}(?:,\d{3})+)?(?:\.\d+)?$/.test(value)
+ },
+ /**
+ * 验证整数
+ */
+ digits(value) {
+ return that.optional(value) || /^\d+$/.test(value)
+ },
+ /**
+ * 验证身份证号码
+ */
+ idcard(value) {
+ return that.optional(value) || /^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/.test(value)
+ },
+ /**
+ * 验证两个输入框的内容是否相同
+ */
+ equalTo(value, param) {
+ return that.optional(value) || value === that.data[param]
+ },
+ /**
+ * 验证是否包含某个值
+ */
+ contains(value, param) {
+ return that.optional(value) || value.indexOf(param) >= 0
+ },
+ /**
+ * 验证最小长度
+ */
+ minlength(value, param) {
+ return that.optional(value) || value.length >= param
+ },
+ /**
+ * 验证最大长度
+ */
+ maxlength(value, param) {
+ return that.optional(value) || value.length <= param
+ },
+ /**
+ * 验证一个长度范围[min, max]
+ */
+ rangelength(value, param) {
+ return that.optional(value) || (value.length >= param[0] && value.length <= param[1])
+ },
+ /**
+ * 验证最小值
+ */
+ min(value, param) {
+ return that.optional(value) || value >= param
+ },
+ /**
+ * 验证最大值
+ */
+ max(value, param) {
+ return that.optional(value) || value <= param
+ },
+ /**
+ * 验证一个值范围[min, max]
+ */
+ range(value, param) {
+ return that.optional(value) || (value >= param[0] && value <= param[1])
+ }
+ }
+ }
+
+ /**
+ * 添加自定义验证方法
+ * @param {String} name 方法名
+ * @param {Function} method 函数体,接收两个参数(value, param),value表示元素的值,param表示参数
+ * @param {String} message 提示信息
+ */
+ addMethod(name, method, message) {
+ this.methods[name] = method
+ this.defaults.messages[name] = message !== undefined ? message : this.defaults.messages[name]
+ }
+
+ /**
+ * 判断验证方法是否存在
+ */
+ isValidMethod(value) {
+ let methods = []
+ for(let method in this.methods) {
+ if(method && typeof this.methods[method] === 'function') {
+ methods.push(method)
+ }
+ }
+ return methods.indexOf(value) !== -1
+ }
+
+ /**
+ * 格式化提示信息模板
+ */
+ formatTpl(source, params) {
+ const that = this
+ if(arguments.length === 1) {
+ return function() {
+ let args = Array.from(arguments)
+ args.unshift(source)
+ return that.formatTpl.apply(this, args)
+ }
+ }
+ if(params === undefined) {
+ return source
+ }
+ if(arguments.length > 2 && params.constructor !== Array) {
+ params = Array.from(arguments).slice(1)
+ }
+ if(params.constructor !== Array) {
+ params = [params]
+ }
+ params.forEach(function(n, i) {
+ source = source.replace(new RegExp("\\{" + i + "\\}", "g"), function() {
+ return n
+ })
+ })
+ return source
+ }
+
+ /**
+ * 判断规则依赖是否存在
+ */
+ depend(param) {
+ switch(typeof param) {
+ case 'boolean':
+ param = param
+ break
+ case 'string':
+ param = !!param.length
+ break
+ case 'function':
+ param = param()
+ default:
+ param = !0
+ }
+ return param
+ }
+
+ /**
+ * 判断输入值是否为空
+ */
+ optional(value) {
+ return !this.methods.required(value) && 'dependency-mismatch'
+ }
+
+ /**
+ * 获取自定义字段的提示信息
+ * @param {String} param 字段名
+ * @param {Object} rule 规则
+ */
+ customMessage(param, rule) {
+ const params = this.messages[param]
+ const isObject = typeof params === 'object'
+ if(params && isObject) return params[rule.method]
+ }
+
+ /**
+ * 获取某个指定字段的提示信息
+ * @param {String} param 字段名
+ * @param {Object} rule 规则
+ */
+ defaultMessage(param, rule) {
+ let message = this.customMessage(param, rule) || this.defaults.messages[rule.method]
+ let type = typeof message
+
+ if(type === 'undefined') {
+ message = `Warning: No message defined for ${rule.method}.`
+ } else if(type === 'function') {
+ message = message.call(this, rule.parameters)
+ }
+
+ return message
+ }
+
+ /**
+ * 缓存错误信息
+ * @param {String} param 字段名
+ * @param {Object} rule 规则
+ * @param {String} value 元素的值
+ */
+ formatTplAndAdd(param, rule, value) {
+ let msg = this.defaultMessage(param, rule)
+
+ this.errorList.push({
+ param: param,
+ msg: msg,
+ value: value,
+ })
+ }
+
+ /**
+ * 验证某个指定字段的规则
+ * @param {String} param 字段名
+ * @param {Object} rules 规则
+ * @param {Object} data 需要验证的数据对象
+ */
+ checkParam(param, rules, data) {
+
+ // 缓存数据对象
+ this.data = data
+
+ // 缓存字段对应的值
+ const value = data[param] !== null && data[param] !== undefined ? data[param] : ''
+
+ // 遍历某个指定字段的所有规则,依次验证规则,否则缓存错误信息
+ for(let method in rules) {
+
+ // 判断验证方法是否存在
+ if(this.isValidMethod(method)) {
+
+ // 缓存规则的属性及值
+ const rule = {
+ method: method,
+ parameters: rules[method]
+ }
+
+ // 调用验证方法
+ const result = this.methods[method](value, rule.parameters)
+
+ // 若result返回值为dependency-mismatch,则说明该字段的值为空或非必填字段
+ if(result === 'dependency-mismatch') {
+ continue
+ }
+
+ this.setValue(param, method, result, value)
+
+ // 判断是否通过验证,否则缓存错误信息,跳出循环
+ if(!result) {
+ this.formatTplAndAdd(param, rule, value)
+ break
+ }
+ }
+ }
+ }
+
+ /**
+ * 设置字段的默认验证值
+ * @param {String} param 字段名
+ */
+ setView(param) {
+ this.form[param] = {
+ $name: param,
+ $valid: true,
+ $invalid: false,
+ $error: {},
+ $success: {},
+ $viewValue: ``,
+ }
+ }
+
+ /**
+ * 设置字段的验证值
+ * @param {String} param 字段名
+ * @param {String} method 字段的方法
+ * @param {Boolean} result 是否通过验证
+ * @param {String} value 字段的值
+ */
+ setValue(param, method, result, value) {
+ const params = this.form[param]
+ params.$valid = result
+ params.$invalid = !result
+ params.$error[method] = !result
+ params.$success[method] = result
+ params.$viewValue = value
+ }
+
+ /**
+ * 验证所有字段的规则,返回验证是否通过
+ * @param {Object} data 需要验证数据对象
+ */
+ checkForm(data) {
+ this.__initData()
+
+ for(let param in this.rules) {
+ this.setView(param)
+ this.checkParam(param, this.rules[param], data)
+ }
+
+ return this.valid()
+ }
+
+ /**
+ * 返回验证是否通过
+ */
+ valid() {
+ return this.size() === 0
+ }
+
+ /**
+ * 返回错误信息的个数
+ */
+ size() {
+ return this.errorList.length
+ }
+
+ /**
+ * 返回所有错误信息
+ */
+ validationErrors() {
+ return this.errorList
+ }
+}
+
+module.exports = WxValidate;