@7365admin1/layer-common 3.2.2-staging.155 → 3.2.2-staging.156
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.
|
@@ -79,7 +79,7 @@
|
|
|
79
79
|
<p class="flex-grow-1">Booking Fee</p>
|
|
80
80
|
<v-switch
|
|
81
81
|
v-model="facility.isBookingFeeEnabled"
|
|
82
|
-
color="
|
|
82
|
+
color="accent"
|
|
83
83
|
hide-details
|
|
84
84
|
@update:modelValue="onChangeIsBookingFeeEnabled"
|
|
85
85
|
></v-switch>
|
|
@@ -139,7 +139,7 @@
|
|
|
139
139
|
/>
|
|
140
140
|
</v-col>
|
|
141
141
|
<v-col cols="12" class="mt-4">
|
|
142
|
-
<v-card class="mx-auto border-sm pa-2
|
|
142
|
+
<v-card class="mx-auto border-sm pa-2 fee-summary" tile>
|
|
143
143
|
<v-row no-gutters align="center">
|
|
144
144
|
<v-col cols="" class="text-caption"> Total Booking Fee </v-col>
|
|
145
145
|
<v-col cols="" class="text-right text-caption">
|
|
@@ -169,7 +169,7 @@
|
|
|
169
169
|
</v-card>
|
|
170
170
|
</v-col>
|
|
171
171
|
<v-col cols="12" class="mt-4">
|
|
172
|
-
<v-card class="mx-auto border-sm pa-2
|
|
172
|
+
<v-card class="mx-auto border-sm pa-2 fee-summary" tile>
|
|
173
173
|
<v-row no-gutters align="center">
|
|
174
174
|
<v-col class="text-caption"> Peak Total Booking Fee </v-col>
|
|
175
175
|
<v-col class="text-right text-caption">
|
|
@@ -210,7 +210,7 @@
|
|
|
210
210
|
<p class="flex-grow-1">Guest</p>
|
|
211
211
|
<v-switch
|
|
212
212
|
v-model="facility.isGuestEnabled"
|
|
213
|
-
color="
|
|
213
|
+
color="accent"
|
|
214
214
|
hide-details
|
|
215
215
|
:disabled="!facility.isBookingFeeEnabled"
|
|
216
216
|
/>
|
|
@@ -256,7 +256,7 @@
|
|
|
256
256
|
/>
|
|
257
257
|
</v-col>
|
|
258
258
|
<v-col cols="12" class="mt-4">
|
|
259
|
-
<v-card class="mx-auto border-sm pa-2
|
|
259
|
+
<v-card class="mx-auto border-sm pa-2 fee-summary" tile>
|
|
260
260
|
<v-row no-gutters align="center">
|
|
261
261
|
<v-col class="text-caption">
|
|
262
262
|
Total Booking Fee for Guest
|
|
@@ -288,7 +288,7 @@
|
|
|
288
288
|
</v-card>
|
|
289
289
|
</v-col>
|
|
290
290
|
<v-col cols="12" class="mt-4">
|
|
291
|
-
<v-card class="mx-auto border-sm pa-2
|
|
291
|
+
<v-card class="mx-auto border-sm pa-2 fee-summary" tile>
|
|
292
292
|
<v-row no-gutters align="center">
|
|
293
293
|
<v-col class="text-caption">
|
|
294
294
|
Peak Total Booking Fee for Guest
|
|
@@ -332,7 +332,7 @@
|
|
|
332
332
|
<p class="flex-grow-1">Deposit</p>
|
|
333
333
|
<v-switch
|
|
334
334
|
v-model="facility.isDepositEnabled"
|
|
335
|
-
color="
|
|
335
|
+
color="accent"
|
|
336
336
|
hide-details
|
|
337
337
|
@update:modelValue="onChangeIsDepositFeeEnabled"
|
|
338
338
|
></v-switch>
|
|
@@ -366,7 +366,7 @@
|
|
|
366
366
|
<p class="flex-grow-1">Booking Policy</p>
|
|
367
367
|
<v-switch
|
|
368
368
|
v-model="facility.isBookingPolicyEnabled"
|
|
369
|
-
color="
|
|
369
|
+
color="accent"
|
|
370
370
|
hide-details
|
|
371
371
|
/>
|
|
372
372
|
</div>
|
|
@@ -419,16 +419,14 @@
|
|
|
419
419
|
></v-number-input>
|
|
420
420
|
</v-col>
|
|
421
421
|
<v-col cols="12" md="2" class="pa-1">
|
|
422
|
-
<
|
|
422
|
+
<AppButton
|
|
423
423
|
:disabled="!sampleData.description && !sampleData.count"
|
|
424
424
|
type="submit"
|
|
425
|
-
|
|
425
|
+
class="w-100"
|
|
426
426
|
@click="upsertChecklist()"
|
|
427
|
-
block
|
|
428
|
-
size="large"
|
|
429
427
|
>
|
|
430
428
|
{{ !isEditing ? "Add" : "Edit" }}
|
|
431
|
-
</
|
|
429
|
+
</AppButton>
|
|
432
430
|
</v-col>
|
|
433
431
|
</v-row>
|
|
434
432
|
</section>
|
|
@@ -445,7 +443,7 @@
|
|
|
445
443
|
<v-icon
|
|
446
444
|
icon="mdi-drag"
|
|
447
445
|
class="drag-handle cursor-move mr-2"
|
|
448
|
-
color="
|
|
446
|
+
color="muted"
|
|
449
447
|
/>
|
|
450
448
|
</template>
|
|
451
449
|
|
|
@@ -465,7 +463,7 @@
|
|
|
465
463
|
? 'mdi-message'
|
|
466
464
|
: 'mdi-message-outline'
|
|
467
465
|
"
|
|
468
|
-
:color="item.permanentRemarks ? 'primary' : '
|
|
466
|
+
:color="item.permanentRemarks ? 'primary' : 'muted'"
|
|
469
467
|
variant="text"
|
|
470
468
|
density="comfortable"
|
|
471
469
|
@click="remarksDialog(true, item?.permanentRemarks, index)"
|
|
@@ -503,7 +501,7 @@
|
|
|
503
501
|
<v-switch
|
|
504
502
|
v-model="isBookingUnitLimitEnabled"
|
|
505
503
|
class="d-flex align-center"
|
|
506
|
-
color="
|
|
504
|
+
color="accent"
|
|
507
505
|
hide-details
|
|
508
506
|
@update:model-value="onToggleBookingUnitLimit"
|
|
509
507
|
/>
|
|
@@ -541,7 +539,7 @@
|
|
|
541
539
|
<v-switch
|
|
542
540
|
v-model="isMaxNumberGuestLimitEnabled"
|
|
543
541
|
class="d-flex align-center"
|
|
544
|
-
color="
|
|
542
|
+
color="accent"
|
|
545
543
|
hide-details
|
|
546
544
|
@update:model-value="onToggleMaxNumberGuestLimit"
|
|
547
545
|
/>
|
|
@@ -578,7 +576,7 @@
|
|
|
578
576
|
<v-switch
|
|
579
577
|
v-model="isCancelAllowedLimitEnabled"
|
|
580
578
|
class="d-flex align-center"
|
|
581
|
-
color="
|
|
579
|
+
color="accent"
|
|
582
580
|
hide-details
|
|
583
581
|
@update:model-value="onToggleCancelAllowedLimit"
|
|
584
582
|
/>
|
|
@@ -607,17 +605,14 @@
|
|
|
607
605
|
width="300"
|
|
608
606
|
persistent
|
|
609
607
|
>
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
@click="remarksDialog(false)"
|
|
619
|
-
/>
|
|
620
|
-
</v-toolbar>
|
|
608
|
+
<!-- Was a `v-card` with a bare `v-toolbar` heading, which Vuetify paints
|
|
609
|
+
from its own `surface` - a slab visibly lighter than the card on the
|
|
610
|
+
dark theme. The design's modal heading is the card's own title row. -->
|
|
611
|
+
<v-card class="screen-modal">
|
|
612
|
+
<v-card-title class="d-flex align-center">
|
|
613
|
+
<span class="flex-grow-1">Permanent Remarks</span>
|
|
614
|
+
<v-icon icon="mdi-close" size="30" @click="remarksDialog(false)" />
|
|
615
|
+
</v-card-title>
|
|
621
616
|
|
|
622
617
|
<v-row no-gutters class="pa-4">
|
|
623
618
|
<!-- remarks -->
|
|
@@ -635,13 +630,9 @@
|
|
|
635
630
|
<!-- clear/confirm buttons-->
|
|
636
631
|
<v-col cols="12" class="mt-4">
|
|
637
632
|
<v-row no-gutters>
|
|
638
|
-
<
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
color="primary"
|
|
642
|
-
flat
|
|
643
|
-
@click="confirmRemarks()"
|
|
644
|
-
/>
|
|
633
|
+
<AppButton class="w-100" @click="confirmRemarks()">
|
|
634
|
+
Confirm
|
|
635
|
+
</AppButton>
|
|
645
636
|
</v-row>
|
|
646
637
|
</v-col>
|
|
647
638
|
</v-row>
|
|
@@ -650,18 +641,18 @@
|
|
|
650
641
|
|
|
651
642
|
<!-- delete -->
|
|
652
643
|
<v-dialog v-model="isDeleteItem" width="500" persistent class="text-center">
|
|
653
|
-
<v-card class="
|
|
654
|
-
<!-- HEADER
|
|
655
|
-
|
|
656
|
-
|
|
644
|
+
<v-card class="screen-modal">
|
|
645
|
+
<!-- HEADER - the close cross sat in a `v-toolbar`, a second grey slab
|
|
646
|
+
above the card on the dark theme. It is the title row's own end. -->
|
|
647
|
+
<v-card-title class="d-flex justify-end">
|
|
657
648
|
<v-icon
|
|
658
649
|
icon="mdi-close"
|
|
659
650
|
size="x-large"
|
|
660
651
|
@click="isDeleteItem = false"
|
|
661
652
|
/>
|
|
662
|
-
</v-
|
|
653
|
+
</v-card-title>
|
|
663
654
|
|
|
664
|
-
<v-card-text class="d-flex flex-column align-center">
|
|
655
|
+
<v-card-text class="screen-modal__body d-flex flex-column align-center">
|
|
665
656
|
<img
|
|
666
657
|
src="/icons/delete-dialog-icon.svg"
|
|
667
658
|
alt="delete-dialog-icon"
|
|
@@ -671,15 +662,8 @@
|
|
|
671
662
|
/>
|
|
672
663
|
Are you sure you want to delete this?
|
|
673
664
|
</v-card-text>
|
|
674
|
-
<v-col>
|
|
675
|
-
<
|
|
676
|
-
text="yes"
|
|
677
|
-
type="submit"
|
|
678
|
-
color="primary"
|
|
679
|
-
@click="confirmDelete()"
|
|
680
|
-
width="50%"
|
|
681
|
-
elevation="0"
|
|
682
|
-
/>
|
|
665
|
+
<v-col class="d-flex justify-center pb-4">
|
|
666
|
+
<AppButton type="submit" @click="confirmDelete()">Yes</AppButton>
|
|
683
667
|
</v-col>
|
|
684
668
|
</v-card>
|
|
685
669
|
</v-dialog>
|
|
@@ -1080,10 +1064,17 @@ function onToggleCancelAllowedLimit(val: any) {
|
|
|
1080
1064
|
}
|
|
1081
1065
|
|
|
1082
1066
|
.list-feature-toggle {
|
|
1083
|
-
border: 1px solid
|
|
1067
|
+
border: 1px solid var(--border);
|
|
1084
1068
|
height: 50px;
|
|
1085
1069
|
}
|
|
1086
1070
|
|
|
1071
|
+
/* The four fee-summary panels asked Vuetify for `grey-lighten-4` - #f5f5f5 in
|
|
1072
|
+
BOTH themes, so a white slab inside a dark card. `--bg` is the design's
|
|
1073
|
+
recessed surface and follows the theme. */
|
|
1074
|
+
.fee-summary {
|
|
1075
|
+
background: var(--bg);
|
|
1076
|
+
}
|
|
1077
|
+
|
|
1087
1078
|
.drag-area {
|
|
1088
1079
|
cursor: grab;
|
|
1089
1080
|
}
|
|
@@ -5,7 +5,11 @@
|
|
|
5
5
|
fullscreen
|
|
6
6
|
>
|
|
7
7
|
<v-card>
|
|
8
|
-
|
|
8
|
+
<!-- The inline `background-color: white` painted this bar white in BOTH
|
|
9
|
+
themes - a white slab across the top of the dialog on the dark one.
|
|
10
|
+
Removed, so Vuetify paints it from the theme's `surface` as every
|
|
11
|
+
other converted bar in the estate does. -->
|
|
12
|
+
<v-toolbar>
|
|
9
13
|
<v-btn icon="mdi-arrow-left" @click="closeDialog"></v-btn>
|
|
10
14
|
|
|
11
15
|
<v-toolbar-title>Pass & Keys</v-toolbar-title>
|
|
@@ -14,7 +18,7 @@
|
|
|
14
18
|
</v-toolbar>
|
|
15
19
|
<v-row no-gutters class="pa-15">
|
|
16
20
|
<v-col cols="12">
|
|
17
|
-
<
|
|
21
|
+
<AppCard class="pa-6">
|
|
18
22
|
<v-row no-gutters>
|
|
19
23
|
<v-col
|
|
20
24
|
cols="12"
|
|
@@ -67,7 +71,9 @@
|
|
|
67
71
|
>
|
|
68
72
|
<template v-slot:label>
|
|
69
73
|
Select template
|
|
70
|
-
|
|
74
|
+
<!-- `text-red` is Vuetify's own palette red, a literal that
|
|
75
|
+
ignores the theme. `text-error` is the design's. -->
|
|
76
|
+
<span class="text-error font-weight-bold">*</span>
|
|
71
77
|
</template>
|
|
72
78
|
<!-- <template v-slot:append-item>
|
|
73
79
|
<div v-intersect="endIntersectTemplateList" />
|
|
@@ -112,7 +118,7 @@
|
|
|
112
118
|
@click="selectedChoicePaperSizeOrientation = 'A4'"
|
|
113
119
|
:color="
|
|
114
120
|
selectedChoicePaperSizeOrientation === 'A4'
|
|
115
|
-
? '
|
|
121
|
+
? 'success'
|
|
116
122
|
: ''
|
|
117
123
|
"
|
|
118
124
|
>
|
|
@@ -156,7 +162,7 @@
|
|
|
156
162
|
@click="selectedChoicePaperSizeOrientation = 'CCP'"
|
|
157
163
|
:color="
|
|
158
164
|
selectedChoicePaperSizeOrientation === 'CCP'
|
|
159
|
-
? '
|
|
165
|
+
? 'success'
|
|
160
166
|
: ''
|
|
161
167
|
"
|
|
162
168
|
>
|
|
@@ -199,7 +205,7 @@
|
|
|
199
205
|
@click="selectedChoicePaperSizeOrientation = 'CCL'"
|
|
200
206
|
:color="
|
|
201
207
|
selectedChoicePaperSizeOrientation === 'CCL'
|
|
202
|
-
? '
|
|
208
|
+
? 'success'
|
|
203
209
|
: ''
|
|
204
210
|
"
|
|
205
211
|
>
|
|
@@ -310,7 +316,7 @@
|
|
|
310
316
|
<template v-slot:loader="{ isActive }">
|
|
311
317
|
<v-progress-linear
|
|
312
318
|
:active="isActive"
|
|
313
|
-
color="
|
|
319
|
+
color="primary-button"
|
|
314
320
|
height="4"
|
|
315
321
|
indeterminate
|
|
316
322
|
></v-progress-linear>
|
|
@@ -436,7 +442,7 @@
|
|
|
436
442
|
cols="12"
|
|
437
443
|
sm="7"
|
|
438
444
|
md="1"
|
|
439
|
-
:class="`text-capitalize text-body-2
|
|
445
|
+
:class="`text-capitalize text-body-2 ${
|
|
440
446
|
$vuetify.display.xs && 'mb-1'
|
|
441
447
|
}`"
|
|
442
448
|
>
|
|
@@ -483,7 +489,7 @@
|
|
|
483
489
|
cols="12"
|
|
484
490
|
sm="7"
|
|
485
491
|
md="3"
|
|
486
|
-
:class="`text-capitalize text-body-2
|
|
492
|
+
:class="`text-capitalize text-body-2 ${
|
|
487
493
|
$vuetify.display.xs && 'mb-1'
|
|
488
494
|
}`"
|
|
489
495
|
>
|
|
@@ -524,7 +530,7 @@
|
|
|
524
530
|
cols="12"
|
|
525
531
|
sm="7"
|
|
526
532
|
md="1"
|
|
527
|
-
:class="`text-capitalize text-body-2
|
|
533
|
+
:class="`text-capitalize text-body-2 ${
|
|
528
534
|
$vuetify.display.xs && 'mb-1'
|
|
529
535
|
}`"
|
|
530
536
|
>
|
|
@@ -569,7 +575,7 @@
|
|
|
569
575
|
cols="12"
|
|
570
576
|
sm="7"
|
|
571
577
|
md="4"
|
|
572
|
-
:class="`text-capitalize text-body-2
|
|
578
|
+
:class="`text-capitalize text-body-2 ${
|
|
573
579
|
$vuetify.display.xs && 'mb-1'
|
|
574
580
|
}`"
|
|
575
581
|
>
|
|
@@ -610,7 +616,7 @@
|
|
|
610
616
|
cols="12"
|
|
611
617
|
sm="7"
|
|
612
618
|
md="2"
|
|
613
|
-
:class="`text-capitalize text-body-2
|
|
619
|
+
:class="`text-capitalize text-body-2 ${
|
|
614
620
|
$vuetify.display.xs && 'mb-1'
|
|
615
621
|
}`"
|
|
616
622
|
>
|
|
@@ -728,16 +734,15 @@
|
|
|
728
734
|
|
|
729
735
|
<v-row no-gutters class="pt-2">
|
|
730
736
|
<v-col cols="12" class="d-flex justify-end">
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
|
|
734
|
-
|
|
735
|
-
>
|
|
737
|
+
<!-- `color="primary"` on a v-btn asked Vuetify to FILL with the
|
|
738
|
+
foreground token. The design's filled action is AppButton,
|
|
739
|
+
which paints from `primary-button`. -->
|
|
740
|
+
<AppButton @click="printContent" :disabled="isPrintDisabled">
|
|
736
741
|
Print
|
|
737
|
-
</
|
|
742
|
+
</AppButton>
|
|
738
743
|
</v-col>
|
|
739
744
|
</v-row>
|
|
740
|
-
</
|
|
745
|
+
</AppCard>
|
|
741
746
|
</v-col>
|
|
742
747
|
</v-row>
|
|
743
748
|
</v-card>
|
|
@@ -746,7 +751,8 @@
|
|
|
746
751
|
<!-- start range dialog -->
|
|
747
752
|
<v-snackbar
|
|
748
753
|
v-model="snackbarStartRange"
|
|
749
|
-
|
|
754
|
+
class="app-toast"
|
|
755
|
+
color="error"
|
|
750
756
|
:timeout="5000"
|
|
751
757
|
multi-line
|
|
752
758
|
>
|
|
@@ -761,8 +767,11 @@
|
|
|
761
767
|
generate
|
|
762
768
|
</v-btn>
|
|
763
769
|
<template v-slot:actions>
|
|
770
|
+
<!-- Was `color="white"`. The dark theme's `error` fill is a LIGHT colour
|
|
771
|
+
carrying dark ink (`on-error`), so a hardcoded white cross measured
|
|
772
|
+
~2:1 on it. Dropping the colour lets the button inherit `on-error`
|
|
773
|
+
and read correctly in both themes. -->
|
|
764
774
|
<v-btn
|
|
765
|
-
color="white"
|
|
766
775
|
variant="text"
|
|
767
776
|
@click="snackbarStartRange = false"
|
|
768
777
|
icon="mdi-close"
|
|
@@ -1226,23 +1235,20 @@ async function nextPage() {
|
|
|
1226
1235
|
</script>
|
|
1227
1236
|
|
|
1228
1237
|
<style scoped>
|
|
1229
|
-
|
|
1230
|
-
color
|
|
1231
|
-
|
|
1232
|
-
|
|
1233
|
-
|
|
1234
|
-
|
|
1235
|
-
|
|
1236
|
-
|
|
1237
|
-
|
|
1238
|
-
|
|
1239
|
-
|
|
1240
|
-
|
|
1241
|
-
color: red !important;
|
|
1242
|
-
}
|
|
1243
|
-
|
|
1238
|
+
/*
|
|
1239
|
+
`.custom-placeholer-color` and `.custom-label-color` were declared here and
|
|
1240
|
+
applied to NOTHING - neither class appears anywhere in the template. Deleted
|
|
1241
|
+
rather than left as three blocks of red-text styling waiting to be pasted
|
|
1242
|
+
onto a field by mistake.
|
|
1243
|
+
|
|
1244
|
+
`.placeHolderDarken` IS applied (the three paper-size fields). Its
|
|
1245
|
+
`color: primary` was not a colour - `primary` is a Vuetify theme NAME, not a
|
|
1246
|
+
CSS keyword, so the browser dropped that one declaration as invalid and the
|
|
1247
|
+
placeholder has never been darkened. The `opacity: 1` beside it did apply.
|
|
1248
|
+
Now points at the design's muted ink, which is what "darken" meant.
|
|
1249
|
+
*/
|
|
1244
1250
|
.placeHolderDarken ::placeholder {
|
|
1245
|
-
color:
|
|
1251
|
+
color: var(--muted) !important;
|
|
1246
1252
|
opacity: 1;
|
|
1247
1253
|
}
|
|
1248
1254
|
</style>
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@7365admin1/layer-common",
|
|
3
3
|
"license": "MIT",
|
|
4
4
|
"type": "module",
|
|
5
|
-
"version": "3.2.2-staging.
|
|
5
|
+
"version": "3.2.2-staging.156",
|
|
6
6
|
"author": "7365admin1",
|
|
7
7
|
"main": "./nuxt.config.ts",
|
|
8
8
|
"//files": "What a consumer extending this layer actually loads. Without this npm ships the whole working tree - the changesets, the CI workflows, the render harness in tools/ and any scratch directory that happened to exist at publish time. Nuxt resolves a layer by directory, so every runtime directory below has to stay listed; adding a new top-level runtime directory means adding it here too.",
|