@commonpub/layer 0.80.0 → 0.81.0

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.
@@ -256,10 +256,15 @@ function apply(): void {
256
256
  border: var(--border-width-default, 2px) dashed var(--accent);
257
257
  }
258
258
 
259
- /* Style vue-advanced-cropper internals to the design system. */
260
- .cpub-cropper :deep(.vue-advanced-cropper__background),
259
+ /* Crop scrim: a theme-INDEPENDENT dark overlay so the crop bounds read clearly
260
+ on every theme. (`--color-surface-scrim` is near-white in light themes, which
261
+ washed the bounds out — a cropper surround must always darken.) The area
262
+ outside the crop frame is dimmed; the crop window stays bright. */
263
+ .cpub-cropper :deep(.vue-advanced-cropper__background) {
264
+ background: #1a1a1a;
265
+ }
261
266
  .cpub-cropper :deep(.vue-advanced-cropper__foreground) {
262
- background: var(--color-surface-scrim, rgba(0, 0, 0, 0.55));
267
+ background: rgba(0, 0, 0, 0.6);
263
268
  }
264
269
  /* Belt-and-suspenders with handlers:{}/lines:{}: never show the resize chrome. */
265
270
  .cpub-cropper :deep(.vue-line-wrapper),
@@ -239,6 +239,10 @@ const dateRange = computed<string>(() => {
239
239
  /* ── BANNER BAND ── full-width, clean, like other content pages' hero banner. */
240
240
  .cpub-hero-banner {
241
241
  width: 100%;
242
+ /* Match the 4:1 upload crop so the banner shows exactly as framed (WYSIWYG)
243
+ instead of being re-cropped by a fixed height. */
244
+ aspect-ratio: 4 / 1;
245
+ max-height: 360px;
242
246
  background: var(--surface2);
243
247
  border-bottom: var(--border-width-default) solid var(--border);
244
248
  overflow: hidden;
@@ -246,9 +250,8 @@ const dateRange = computed<string>(() => {
246
250
  .cpub-hero-banner img {
247
251
  display: block;
248
252
  width: 100%;
249
- max-height: 300px;
253
+ height: 100%;
250
254
  object-fit: cover;
251
- margin: 0 auto;
252
255
  }
253
256
 
254
257
  /* ── HERO BODY ── the contest's dark, patterned section. */
@@ -318,7 +321,7 @@ const dateRange = computed<string>(() => {
318
321
  @media (max-width: 768px) {
319
322
  .cpub-hero-body { padding: 32px 0; }
320
323
  .cpub-hero-inner { padding: 0 16px; }
321
- .cpub-hero-banner img { max-height: 200px; }
324
+ .cpub-hero-banner { max-height: 200px; }
322
325
  .cpub-hero-title { font-size: 24px; }
323
326
  .cpub-hero-meta { gap: 10px; }
324
327
  }
@@ -62,7 +62,9 @@ const isCompanyHub = computed(() => hubType.value === 'company');
62
62
  .cpub-hub-hero { position: relative; overflow: hidden; }
63
63
 
64
64
  .cpub-hub-banner {
65
- height: 180px;
65
+ /* Match the 4:1 upload crop so the banner shows exactly as framed (WYSIWYG). */
66
+ aspect-ratio: 4 / 1;
67
+ max-height: 320px;
66
68
  background: linear-gradient(135deg, var(--accent) 0%, var(--teal) 50%, var(--accent-border) 100%);
67
69
  position: relative;
68
70
  overflow: hidden;
@@ -177,7 +179,7 @@ const isCompanyHub = computed(() => hubType.value === 'company');
177
179
  }
178
180
 
179
181
  @media (max-width: 640px) {
180
- .cpub-hub-banner { height: 120px; }
182
+ .cpub-hub-banner { max-height: 160px; }
181
183
  .cpub-hub-meta-inner { flex-direction: column; padding: 0 16px; }
182
184
  .cpub-hub-icon { margin-top: -24px; width: 56px; height: 56px; font-size: 22px; }
183
185
  .cpub-hub-name { font-size: 1.25rem; }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@commonpub/layer",
3
- "version": "0.80.0",
3
+ "version": "0.81.0",
4
4
  "type": "module",
5
5
  "main": "./nuxt.config.ts",
6
6
  "files": [
@@ -55,16 +55,16 @@
55
55
  "vue-router": "^4.3.0",
56
56
  "zod": "^4.3.6",
57
57
  "@commonpub/auth": "0.8.0",
58
- "@commonpub/docs": "0.6.3",
58
+ "@commonpub/explainer": "0.7.15",
59
59
  "@commonpub/config": "0.22.1",
60
+ "@commonpub/docs": "0.6.3",
61
+ "@commonpub/editor": "0.7.12",
60
62
  "@commonpub/protocol": "0.13.0",
63
+ "@commonpub/ui": "0.13.1",
61
64
  "@commonpub/learning": "0.5.2",
62
65
  "@commonpub/theme-studio": "0.6.1",
63
66
  "@commonpub/schema": "0.44.0",
64
- "@commonpub/server": "2.88.0",
65
- "@commonpub/ui": "0.13.1",
66
- "@commonpub/explainer": "0.7.15",
67
- "@commonpub/editor": "0.7.12"
67
+ "@commonpub/server": "2.88.0"
68
68
  },
69
69
  "devDependencies": {
70
70
  "@testing-library/jest-dom": "^6.9.1",