@7365admin1/layer-common 3.2.2-staging.155 → 3.2.2-staging.157

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="success"
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" color="grey-lighten-4" tile>
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" color="grey-lighten-4" tile>
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="success"
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" color="grey-lighten-4" tile>
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" color="grey-lighten-4" tile>
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="success"
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="success"
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
- <v-btn
422
+ <AppButton
423
423
  :disabled="!sampleData.description && !sampleData.count"
424
424
  type="submit"
425
- color="primary"
425
+ class="w-100"
426
426
  @click="upsertChecklist()"
427
- block
428
- size="large"
429
427
  >
430
428
  {{ !isEditing ? "Add" : "Edit" }}
431
- </v-btn>
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="grey-lighten-1"
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' : 'grey-darken-1'"
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="primary"
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="primary"
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="primary"
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
- <v-card class="rounded-lg">
611
- <v-toolbar class="border-b">
612
- <span class="pl-6 font-weight-bold">Permanent Remarks</span>
613
- <v-spacer />
614
- <v-icon
615
- icon="mdi-close"
616
- size="30"
617
- class="pr-6"
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
- <v-btn
639
- block
640
- text="confirm"
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="rounded-xl">
654
- <!-- HEADER -->
655
- <v-toolbar class="border-b pb-2 pr-4">
656
- <v-spacer />
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-toolbar>
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
- <v-btn
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 #bbbaba;
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
- <v-toolbar style="background-color: white">
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
- <v-card class="pa-6">
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
- <span class="text-red font-weight-bold">*</span>
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
- ? 'green'
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
- ? 'green'
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
- ? 'green'
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="deep-purple"
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 white--text text ${
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 white--text text ${
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 white--text text ${
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 white--text text ${
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 white--text text ${
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
- <v-btn
732
- color="primary"
733
- @click="printContent"
734
- :disabled="isPrintDisabled"
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
- </v-btn>
742
+ </AppButton>
738
743
  </v-col>
739
744
  </v-row>
740
- </v-card>
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
- color="red"
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
- .custom-placeholer-color input::placeholder {
1230
- color: red !important;
1231
- opacity: 1;
1232
- }
1233
-
1234
- .custom-label-color .v-label {
1235
- color: red;
1236
- opacity: 1;
1237
- }
1238
-
1239
- .custom-placeholer-color input,
1240
- .custom-label-color input {
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: primary !important;
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.155",
5
+ "version": "3.2.2-staging.157",
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.",