@7365admin1/layer-common 3.2.2-staging.149 → 3.2.2-staging.150
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.
|
@@ -5,21 +5,23 @@
|
|
|
5
5
|
persistent
|
|
6
6
|
@update:model-value="emit('update:modelValue', $event)"
|
|
7
7
|
>
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
8
|
+
<!-- `rounded="lg"` is dropped, not replaced. Measured on the glass, the card
|
|
9
|
+
read 16px BEFORE and after: the `.rounded-lg` utility it compiled to was
|
|
10
|
+
already being overridden, so the prop stated a radius the card never
|
|
11
|
+
had. `.screen-modal` states the same 16px as `--r-modal`, on purpose. -->
|
|
12
|
+
<v-card class="camera-dialog screen-modal">
|
|
13
|
+
<v-card-title class="d-flex align-center justify-space-between">
|
|
14
|
+
<span>Take Facial Photo</span>
|
|
11
15
|
<v-btn
|
|
12
16
|
icon="mdi-close"
|
|
13
17
|
variant="text"
|
|
14
|
-
|
|
18
|
+
class="screen-modal__close"
|
|
15
19
|
aria-label="Close camera"
|
|
16
20
|
@click="close"
|
|
17
21
|
/>
|
|
18
22
|
</v-card-title>
|
|
19
23
|
|
|
20
|
-
<v-
|
|
21
|
-
|
|
22
|
-
<v-card-text class="pa-4">
|
|
24
|
+
<v-card-text class="screen-modal__body">
|
|
23
25
|
<div class="camera-viewport">
|
|
24
26
|
<video
|
|
25
27
|
ref="videoElement"
|
|
@@ -42,18 +44,20 @@
|
|
|
42
44
|
|
|
43
45
|
<canvas ref="canvasElement" class="d-none" />
|
|
44
46
|
|
|
45
|
-
<div class="
|
|
47
|
+
<div class="camera-dialog__hint text-center">
|
|
46
48
|
Keep your face centered and make sure the area is well lit.
|
|
47
49
|
</div>
|
|
48
50
|
</v-card-text>
|
|
49
51
|
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
<v-
|
|
52
|
+
<!-- `color="primary"` on a `v-btn` is the design's FOREGROUND token - the
|
|
53
|
+
link ink - not a fill, so the capture button was accent-on-accent.
|
|
54
|
+
`.screen-btn-primary` states the fill the design does draw. -->
|
|
55
|
+
<div class="screen-modal__footer">
|
|
56
|
+
<v-btn class="text-none screen-btn-ghost" variant="flat" @click="close">
|
|
57
|
+
Cancel
|
|
58
|
+
</v-btn>
|
|
55
59
|
<v-btn
|
|
56
|
-
|
|
60
|
+
class="text-none screen-btn-primary"
|
|
57
61
|
variant="flat"
|
|
58
62
|
prepend-icon="mdi-camera"
|
|
59
63
|
:disabled="starting || !!cameraError || !stream"
|
|
@@ -61,7 +65,7 @@
|
|
|
61
65
|
>
|
|
62
66
|
Take Photo
|
|
63
67
|
</v-btn>
|
|
64
|
-
</
|
|
68
|
+
</div>
|
|
65
69
|
</v-card>
|
|
66
70
|
</v-dialog>
|
|
67
71
|
</template>
|
|
@@ -175,10 +179,23 @@ onBeforeUnmount(stopCamera);
|
|
|
175
179
|
width: 100%;
|
|
176
180
|
overflow: hidden;
|
|
177
181
|
aspect-ratio: 3 / 4;
|
|
178
|
-
border-radius:
|
|
182
|
+
border-radius: var(--r-inner);
|
|
183
|
+
/* Deliberately NOT a theme surface: this is the stage a video sits on, and it
|
|
184
|
+
stays dark in both themes so the preview does not flash white on light.
|
|
185
|
+
Its own `#ffffff` text below is paired with it, not with the theme. */
|
|
179
186
|
background: #111722;
|
|
180
187
|
}
|
|
181
188
|
|
|
189
|
+
/* The design's small helper line, not Vuetify's `text-caption` /
|
|
190
|
+
`text-medium-emphasis` pair. */
|
|
191
|
+
.camera-dialog__hint {
|
|
192
|
+
margin-top: 12px;
|
|
193
|
+
font-family: var(--font-sans);
|
|
194
|
+
font-size: var(--fs-cell);
|
|
195
|
+
font-weight: 500;
|
|
196
|
+
color: var(--muted);
|
|
197
|
+
}
|
|
198
|
+
|
|
182
199
|
.camera-preview {
|
|
183
200
|
width: 100%;
|
|
184
201
|
height: 100%;
|
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.150",
|
|
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.",
|