@mptw/skylens-ui 1.4.57 → 1.4.58
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/components/SLCalendarPopup.vue +47 -53
- package/nuxt.config.ts +5 -0
- package/package.json +1 -1
- package/utils/constants.ts +0 -1
|
@@ -45,12 +45,12 @@
|
|
|
45
45
|
SLIcon.text-xs.text-danger(icon='exclamation-circle')
|
|
46
46
|
.calendar-body
|
|
47
47
|
SLDatePicker(
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
48
|
+
v-model="dateRange2"
|
|
49
|
+
color="skylens-gray"
|
|
50
|
+
:is-range="true"
|
|
51
|
+
:min-date="minDateProxy"
|
|
52
|
+
:max-date="maxDate2"
|
|
53
|
+
:max-days="maxDaysProxy"
|
|
54
54
|
)
|
|
55
55
|
.calendar
|
|
56
56
|
.calendar-header
|
|
@@ -78,29 +78,29 @@
|
|
|
78
78
|
SLIcon.text-xs.text-danger(icon='exclamation-circle')
|
|
79
79
|
.calendar-body
|
|
80
80
|
SLDatePicker(
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
81
|
+
v-model="dateRange1"
|
|
82
|
+
color='skylens-purple'
|
|
83
|
+
:is-range="true"
|
|
84
|
+
:min-date="minDateProxy"
|
|
85
|
+
:max-date="maxDate1"
|
|
86
|
+
:max-days="maxDaysProxy"
|
|
87
87
|
)
|
|
88
88
|
.data-date 最新資料:{{ dataDateString }}({{ dataSourceTypeString }})
|
|
89
89
|
.popup-footer
|
|
90
90
|
//- .compare(v-if="isCompare") 比較 #[span.range1 {{ dateRange1Style2 }}] 與 #[span.range2 {{ dateRange2Style2 }}]
|
|
91
91
|
.actions
|
|
92
92
|
SLButton(
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
93
|
+
size="lg"
|
|
94
|
+
color="pgray-5"
|
|
95
|
+
title="取消"
|
|
96
|
+
@click="onClickedCancel"
|
|
97
97
|
)
|
|
98
98
|
SLButton(
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
99
|
+
size="lg"
|
|
100
|
+
color="primary"
|
|
101
|
+
title="套用"
|
|
102
|
+
:disabled="isApplyButtonDisabled"
|
|
103
|
+
@click="onClickedApply"
|
|
104
104
|
)
|
|
105
105
|
</template>
|
|
106
106
|
|
|
@@ -123,7 +123,7 @@ import {
|
|
|
123
123
|
previousDateRange,
|
|
124
124
|
isValidDate,
|
|
125
125
|
} from "~ui/utils";
|
|
126
|
-
import { CABLE_DEFAULT_END_DATE_BEFORE_NOW
|
|
126
|
+
import { CABLE_DEFAULT_END_DATE_BEFORE_NOW } from "~ui/utils/constants";
|
|
127
127
|
import type IDateRange from "~ui/interface/IDateRange";
|
|
128
128
|
import { OnlineSourceType } from "~ui/interface/IWeb";
|
|
129
129
|
|
|
@@ -166,6 +166,8 @@ export default defineComponent({
|
|
|
166
166
|
},
|
|
167
167
|
emits: ["update:modelValue", "compare:change"],
|
|
168
168
|
setup(props, { emit }) {
|
|
169
|
+
const runtimeConfig = useRuntimeConfig();
|
|
170
|
+
|
|
169
171
|
const { dataSourceType, minDate, maxDate, maxDays, modelValue } =
|
|
170
172
|
toRefs(props);
|
|
171
173
|
|
|
@@ -289,7 +291,7 @@ export default defineComponent({
|
|
|
289
291
|
switch (dataSourceType.value) {
|
|
290
292
|
case OnlineSourceType.Mobile:
|
|
291
293
|
return formatDate(
|
|
292
|
-
subDays(new Date(),
|
|
294
|
+
subDays(new Date(), runtimeConfig.public.defaultMobileEndDateBeforeNow),
|
|
293
295
|
"yyyy/MM/dd"
|
|
294
296
|
);
|
|
295
297
|
default:
|
|
@@ -359,13 +361,13 @@ export default defineComponent({
|
|
|
359
361
|
if (status1.value === "custom") {
|
|
360
362
|
const days =
|
|
361
363
|
!rangeInputDate1.value ||
|
|
362
|
-
|
|
363
|
-
|
|
364
|
+
!rangeInputDate1.value.start ||
|
|
365
|
+
!rangeInputDate1.value.end
|
|
364
366
|
? -1
|
|
365
367
|
: differenceInCalendarDays(
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
368
|
+
rangeInputDate1.value.end,
|
|
369
|
+
rangeInputDate1.value.start
|
|
370
|
+
) + 1;
|
|
369
371
|
return `自訂 ${days === -1 ? "" : `${days}天`}`;
|
|
370
372
|
}
|
|
371
373
|
|
|
@@ -378,26 +380,22 @@ export default defineComponent({
|
|
|
378
380
|
const dateRange1Style1 = computed(() => {
|
|
379
381
|
if (!dateRange1.value) return "";
|
|
380
382
|
|
|
381
|
-
return `${
|
|
382
|
-
dateRange1.value.start
|
|
383
|
+
return `${dateRange1.value.start
|
|
383
384
|
? formatDate(dateRange1.value.start, "yyyy/MM/dd")
|
|
384
385
|
: ""
|
|
385
|
-
|
|
386
|
-
dateRange1.value.end
|
|
386
|
+
}${dateRange1.value.end
|
|
387
387
|
? `-${formatDate(dateRange1.value.end, "yyyy/MM/dd")}`
|
|
388
388
|
: ""
|
|
389
|
-
|
|
389
|
+
}`;
|
|
390
390
|
});
|
|
391
391
|
const dateRange1Style2 = computed(() => {
|
|
392
392
|
if (!dateRange1.value) return "";
|
|
393
393
|
|
|
394
|
-
return `${
|
|
395
|
-
dateRange1.value
|
|
396
|
-
}${
|
|
397
|
-
dateRange1.value.end
|
|
394
|
+
return `${dateRange1.value ? formatDate(dateRange1.value.start, "yyyy/MM/dd") : ""
|
|
395
|
+
}${dateRange1.value.end
|
|
398
396
|
? ` - ${formatDate(dateRange1.value.end, "yyyy/MM/dd")}`
|
|
399
397
|
: ""
|
|
400
|
-
|
|
398
|
+
}`;
|
|
401
399
|
});
|
|
402
400
|
const maxDate2 = computed(() => {
|
|
403
401
|
if (!dateRange1.value) return maxDate1.value;
|
|
@@ -414,39 +412,35 @@ export default defineComponent({
|
|
|
414
412
|
|
|
415
413
|
const days =
|
|
416
414
|
!rangeInputDate2.value ||
|
|
417
|
-
|
|
418
|
-
|
|
415
|
+
!rangeInputDate2.value.start ||
|
|
416
|
+
!rangeInputDate2.value.end
|
|
419
417
|
? -1
|
|
420
418
|
: differenceInCalendarDays(
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
419
|
+
rangeInputDate2.value.end,
|
|
420
|
+
rangeInputDate2.value.start
|
|
421
|
+
) + 1;
|
|
424
422
|
return `自訂 ${days === -1 ? "" : `${days}天`}`;
|
|
425
423
|
});
|
|
426
424
|
const dateRange2Style1 = computed(() => {
|
|
427
425
|
if (!dateRange2.value) return "";
|
|
428
426
|
|
|
429
|
-
return `${
|
|
430
|
-
dateRange2.value.start
|
|
427
|
+
return `${dateRange2.value.start
|
|
431
428
|
? formatDate(dateRange2.value.start, "yyyy/MM/dd")
|
|
432
429
|
: ""
|
|
433
|
-
|
|
434
|
-
dateRange2.value.end
|
|
430
|
+
}${dateRange2.value.end
|
|
435
431
|
? `-${formatDate(dateRange2.value.end, "yyyy/MM/dd")}`
|
|
436
432
|
: ""
|
|
437
|
-
|
|
433
|
+
}`;
|
|
438
434
|
});
|
|
439
435
|
const dateRange2Style2 = computed(() => {
|
|
440
436
|
if (!dateRange2.value) return "";
|
|
441
|
-
return `${
|
|
442
|
-
dateRange2.value.start
|
|
437
|
+
return `${dateRange2.value.start
|
|
443
438
|
? formatDate(dateRange2.value.start, "yyyy/MM/dd")
|
|
444
439
|
: ""
|
|
445
|
-
|
|
446
|
-
dateRange2.value.end
|
|
440
|
+
}${dateRange2.value.end
|
|
447
441
|
? ` - ${formatDate(dateRange2.value.end, "yyyy/MM/dd")}`
|
|
448
442
|
: ""
|
|
449
|
-
|
|
443
|
+
}`;
|
|
450
444
|
});
|
|
451
445
|
const isApplyButtonDisabled = computed(() => {
|
|
452
446
|
return (
|
package/nuxt.config.ts
CHANGED
|
@@ -7,6 +7,11 @@ const currentDir = dirname(fileURLToPath(import.meta.url));
|
|
|
7
7
|
export default defineNuxtConfig({
|
|
8
8
|
alias: { '~ui': currentDir, 'images': fileURLToPath(new URL('./assets/images', import.meta.url)) },
|
|
9
9
|
devtools: { enabled: true },
|
|
10
|
+
runtimeConfig: {
|
|
11
|
+
public: {
|
|
12
|
+
defaultMobileEndDateBeforeNow: 4,
|
|
13
|
+
},
|
|
14
|
+
},
|
|
10
15
|
components: [
|
|
11
16
|
{ path: '~ui/components' }
|
|
12
17
|
],
|
package/package.json
CHANGED