@tuya-miniapp/smart-ui 2.9.1-beta-0 → 2.9.1-beta-2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README-zh_CN.md +1 -1
- package/README.md +1 -1
- package/dist/calendar/index.js +5 -1
- package/dist/calendar-utils/utils.d.ts +1 -1
- package/dist/calendar-utils/utils.js +7 -3
- package/lib/calendar/index.js +5 -1
- package/lib/calendar-utils/utils.d.ts +1 -1
- package/lib/calendar-utils/utils.js +8 -3
- package/package.json +1 -1
package/README-zh_CN.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
# @tuya-miniapp/smart-ui
|
|
4
4
|
|
|
5
|
-

|
|
5
|
+
   
|
|
6
6
|
|
|
7
7
|
## 介绍
|
|
8
8
|
|
package/README.md
CHANGED
|
@@ -2,7 +2,7 @@ English | [简体中文](./README-zh_CN.md)
|
|
|
2
2
|
|
|
3
3
|
# @tuya-miniapp/smart-ui
|
|
4
4
|
|
|
5
|
-

|
|
5
|
+
   
|
|
6
6
|
|
|
7
7
|
## Introduction
|
|
8
8
|
|
package/dist/calendar/index.js
CHANGED
|
@@ -137,6 +137,10 @@ SmartComponent({
|
|
|
137
137
|
type: Number,
|
|
138
138
|
value: 0,
|
|
139
139
|
},
|
|
140
|
+
firstDayOfSelectWeek: {
|
|
141
|
+
type: Number,
|
|
142
|
+
value: 1,
|
|
143
|
+
},
|
|
140
144
|
readonly: Boolean,
|
|
141
145
|
rootPortal: {
|
|
142
146
|
type: Boolean,
|
|
@@ -306,7 +310,7 @@ SmartComponent({
|
|
|
306
310
|
let { date } = event.detail;
|
|
307
311
|
const { type, currentDate, allowSameDay } = this.data;
|
|
308
312
|
if (type === 'week') {
|
|
309
|
-
const { weekStart, weekEnd } = getWeekStartAndEnd(date);
|
|
313
|
+
const { weekStart, weekEnd } = getWeekStartAndEnd(date, this.data.firstDayOfSelectWeek);
|
|
310
314
|
this.select([
|
|
311
315
|
Math.max(getTime(weekStart), getTime(this.data.minDate)),
|
|
312
316
|
Math.min(getTime(weekEnd), getTime(this.data.maxDate)),
|
|
@@ -11,7 +11,7 @@ export declare function getMonthEndDay(year: number, month: number): number;
|
|
|
11
11
|
export declare function getMonths(minDate: number, maxDate: number): number[];
|
|
12
12
|
export declare function getYears(minDate: number, maxDate: number): number[];
|
|
13
13
|
export declare function getCurrentIndex(currentDate: any, months: any): number;
|
|
14
|
-
export declare function getWeekStartAndEnd(date: Date): {
|
|
14
|
+
export declare function getWeekStartAndEnd(date: Date, firstDayOfWeek?: number): {
|
|
15
15
|
weekStart: Date;
|
|
16
16
|
weekEnd: Date;
|
|
17
17
|
};
|
|
@@ -114,11 +114,15 @@ export function getCurrentIndex(currentDate, months) {
|
|
|
114
114
|
}
|
|
115
115
|
return findLastGreaterOrEqual(months, currentDate);
|
|
116
116
|
}
|
|
117
|
-
export function getWeekStartAndEnd(date) {
|
|
117
|
+
export function getWeekStartAndEnd(date, firstDayOfWeek = 1) {
|
|
118
|
+
// firstDayOfWeek: 0(周日) ~ 6(周六)
|
|
118
119
|
const startOfWeek = new Date(date);
|
|
119
120
|
const dayOfWeek = startOfWeek.getDay();
|
|
120
|
-
|
|
121
|
-
|
|
121
|
+
let diffToFirst = dayOfWeek - firstDayOfWeek;
|
|
122
|
+
if (diffToFirst < 0) {
|
|
123
|
+
diffToFirst += 7;
|
|
124
|
+
}
|
|
125
|
+
startOfWeek.setDate(startOfWeek.getDate() - diffToFirst);
|
|
122
126
|
const endOfWeek = new Date(startOfWeek);
|
|
123
127
|
endOfWeek.setDate(startOfWeek.getDate() + 6);
|
|
124
128
|
return {
|
package/lib/calendar/index.js
CHANGED
|
@@ -148,6 +148,10 @@ var getTime = function (date) { return (date instanceof Date ? date.getTime() :
|
|
|
148
148
|
type: Number,
|
|
149
149
|
value: 0,
|
|
150
150
|
},
|
|
151
|
+
firstDayOfSelectWeek: {
|
|
152
|
+
type: Number,
|
|
153
|
+
value: 1,
|
|
154
|
+
},
|
|
151
155
|
readonly: Boolean,
|
|
152
156
|
rootPortal: {
|
|
153
157
|
type: Boolean,
|
|
@@ -321,7 +325,7 @@ var getTime = function (date) { return (date instanceof Date ? date.getTime() :
|
|
|
321
325
|
var date = event.detail.date;
|
|
322
326
|
var _a = this.data, type = _a.type, currentDate = _a.currentDate, allowSameDay = _a.allowSameDay;
|
|
323
327
|
if (type === 'week') {
|
|
324
|
-
var _b = (0, utils_1.getWeekStartAndEnd)(date), weekStart = _b.weekStart, weekEnd = _b.weekEnd;
|
|
328
|
+
var _b = (0, utils_1.getWeekStartAndEnd)(date, this.data.firstDayOfSelectWeek), weekStart = _b.weekStart, weekEnd = _b.weekEnd;
|
|
325
329
|
this.select([
|
|
326
330
|
Math.max(getTime(weekStart), getTime(this.data.minDate)),
|
|
327
331
|
Math.min(getTime(weekEnd), getTime(this.data.maxDate)),
|
|
@@ -11,7 +11,7 @@ export declare function getMonthEndDay(year: number, month: number): number;
|
|
|
11
11
|
export declare function getMonths(minDate: number, maxDate: number): number[];
|
|
12
12
|
export declare function getYears(minDate: number, maxDate: number): number[];
|
|
13
13
|
export declare function getCurrentIndex(currentDate: any, months: any): number;
|
|
14
|
-
export declare function getWeekStartAndEnd(date: Date): {
|
|
14
|
+
export declare function getWeekStartAndEnd(date: Date, firstDayOfWeek?: number): {
|
|
15
15
|
weekStart: Date;
|
|
16
16
|
weekEnd: Date;
|
|
17
17
|
};
|
|
@@ -131,11 +131,16 @@ function getCurrentIndex(currentDate, months) {
|
|
|
131
131
|
return findLastGreaterOrEqual(months, currentDate);
|
|
132
132
|
}
|
|
133
133
|
exports.getCurrentIndex = getCurrentIndex;
|
|
134
|
-
function getWeekStartAndEnd(date) {
|
|
134
|
+
function getWeekStartAndEnd(date, firstDayOfWeek) {
|
|
135
|
+
if (firstDayOfWeek === void 0) { firstDayOfWeek = 1; }
|
|
136
|
+
// firstDayOfWeek: 0(周日) ~ 6(周六)
|
|
135
137
|
var startOfWeek = new Date(date);
|
|
136
138
|
var dayOfWeek = startOfWeek.getDay();
|
|
137
|
-
var
|
|
138
|
-
|
|
139
|
+
var diffToFirst = dayOfWeek - firstDayOfWeek;
|
|
140
|
+
if (diffToFirst < 0) {
|
|
141
|
+
diffToFirst += 7;
|
|
142
|
+
}
|
|
143
|
+
startOfWeek.setDate(startOfWeek.getDate() - diffToFirst);
|
|
139
144
|
var endOfWeek = new Date(startOfWeek);
|
|
140
145
|
endOfWeek.setDate(startOfWeek.getDate() + 6);
|
|
141
146
|
return {
|