@nuxtseo/design-system 0.1.3 → 0.1.5

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/README.md CHANGED
@@ -61,12 +61,12 @@ Same-name shadowing does not work. A component in your `app/components/` with a
61
61
 
62
62
  ### Releasing
63
63
 
64
- The UI packages, `@nuxtseo/design-system` and [`@nuxtseo/pro-shell`](../pro-shell/README.md), release together on their own `ui-v*` tag, apart from the `public-v*` CLI cohort. Both carry the same version, and the shell's peer range on this layer is `^X.Y.Z`.
64
+ The three UI packages, `@nuxtseo/design-system`, [`@nuxtseo/pro-shell`](../pro-shell/README.md) and `@nuxtseo/pro-indexing`, release together on their own `ui-v*` tag, apart from the `public-v*` CLI cohort. All three carry the same version. Each peer range on another UI package is `^X.Y.Z`.
65
65
 
66
- 1. Set both versions: `pnpm --dir layers/design-system pkg set version=X.Y.Z`, `pnpm --dir layers/pro-shell pkg set version=X.Y.Z`, and the shell's `peerDependencies["@nuxtseo/design-system"]` to `^X.Y.Z`. Merge it to `main` through a pull request.
66
+ 1. Set the three versions: `pnpm --dir layers/design-system pkg set version=X.Y.Z`, `pnpm --dir layers/pro-shell pkg set version=X.Y.Z`, `pnpm --dir layers/pro-indexing pkg set version=X.Y.Z`. Set the shell's `peerDependencies["@nuxtseo/design-system"]` and pro-indexing's `peerDependencies["@nuxtseo/design-system"]` and `peerDependencies["@nuxtseo/pro-shell"]` to `^X.Y.Z`. Merge it to `main` through a pull request.
67
67
  2. Check it: `pnpm release:ui:check ui-vX.Y.Z`.
68
- 3. Pack and smoke them: `pnpm --dir layers/design-system pack --pack-destination /tmp/ui`, `pnpm --dir layers/pro-shell pack --pack-destination /tmp/ui`, then `pnpm release:ui:smoke /tmp/ui/nuxtseo-design-system-X.Y.Z.tgz /tmp/ui/nuxtseo-pro-shell-X.Y.Z.tgz`.
69
- 4. Tag the merged commit `ui-vX.Y.Z` and push the tag. `.github/workflows/publish-ui-packages.yml` verifies, packs, smokes, and publishes both, the design system first. A prerelease such as `X.Y.Z-beta.1` goes to the `next` dist-tag.
68
+ 3. Pack and smoke them: `pnpm --dir layers/design-system pack --pack-destination /tmp/ui`, `pnpm --dir layers/pro-shell pack --pack-destination /tmp/ui`, `pnpm --dir layers/pro-indexing pack --pack-destination /tmp/ui`, then `pnpm release:ui:smoke /tmp/ui/nuxtseo-design-system-X.Y.Z.tgz /tmp/ui/nuxtseo-pro-shell-X.Y.Z.tgz /tmp/ui/nuxtseo-pro-indexing-X.Y.Z.tgz`.
69
+ 4. Tag the merged commit `ui-vX.Y.Z` and push the tag. `.github/workflows/publish-ui-packages.yml` verifies, packs, smokes, and publishes all three: the design system, then the shell, then pro-indexing. A prerelease such as `X.Y.Z-beta.1` goes to the `next` dist-tag.
70
70
 
71
71
  ## Brand seams
72
72
 
@@ -96,7 +96,7 @@ export default {
96
96
  }
97
97
  ```
98
98
 
99
- **Type.** Set `--font-sans`, `--font-display`, `--font-title`, and `--font-mono` in your stylesheet, and register the faces with `fonts.families`. `--font-title` carries page titles (`.text-title` and the `font-title` utility). Its default is the display family. The layer ships no font files and registers no faces.
99
+ **Type.** Set `--font-sans`, `--font-display`, `--font-title`, and `--font-mono` in your stylesheet, and register the faces with `fonts.families`. `--font-title` carries page titles (`.text-title`, its `sm:text-title` variant, and the `font-title` utility). Its default is the display family. The layer ships no font files and registers no faces.
100
100
 
101
101
  **Type scale.** Set these properties at `:root` to resize or recase the dense tiers. Unset, each keeps the value in the second column.
102
102
 
@@ -10,11 +10,16 @@ import { UiFocusedSurface, UiLogoPro } from '#components'
10
10
  // `min-h-screen`; an embedded preview passes a fixed height.
11
11
  const {
12
12
  exitLabel = 'Dashboard',
13
+ exitTo,
14
+ exitExternal = false,
13
15
  showExit = true,
14
16
  as = 'main',
15
17
  wide = false,
16
18
  } = defineProps<{
17
19
  exitLabel?: string
20
+ /** Where the exit link goes. Unset, the exit is a button that emits `exit`. */
21
+ exitTo?: string
22
+ exitExternal?: boolean
18
23
  showExit?: boolean
19
24
  as?: string
20
25
  wide?: boolean
@@ -23,7 +28,7 @@ const emit = defineEmits<{ exit: [] }>()
23
28
  </script>
24
29
 
25
30
  <template>
26
- <UiFocusedSurface :as="as" align="top" :exit-label="exitLabel" :show-exit="showExit" @exit="emit('exit')">
31
+ <UiFocusedSurface :as="as" align="top" :exit-label="exitLabel" :exit-to="exitTo" :exit-external="exitExternal" :show-exit="showExit" @exit="emit('exit')">
27
32
  <div class="w-full mx-auto mt-10 md:mt-16 relative z-10" :class="wide ? 'max-w-6xl' : 'max-w-2xl'">
28
33
  <div class="flex items-center gap-1 mb-8 [&>span]:!ml-0">
29
34
  <slot name="logo">
package/css/global.css CHANGED
@@ -1404,6 +1404,22 @@ textarea {
1404
1404
  text-wrap-style: balance;
1405
1405
  }
1406
1406
 
1407
+ /* `.text-title` is a plain class, so Tailwind builds no variant of it. A
1408
+ crumb that is body size on a phone and title size beside the page title
1409
+ needs `sm:text-title`, so this ships that one variant at Tailwind's `sm`
1410
+ breakpoint. */
1411
+ @media (width >= 40rem) {
1412
+ .sm\:text-title {
1413
+ font-family: var(--font-title);
1414
+ font-size: var(--size-title);
1415
+ font-weight: var(--wght-title);
1416
+ font-stretch: var(--wdth-heading);
1417
+ letter-spacing: var(--tracking-tight);
1418
+ line-height: 1.15;
1419
+ text-wrap-style: balance;
1420
+ }
1421
+ }
1422
+
1407
1423
  /* Section heading — groups of cards / a titled region within a page. */
1408
1424
  .text-heading {
1409
1425
  font-family: var(--font-display);
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@nuxtseo/design-system",
3
3
  "type": "module",
4
- "version": "0.1.3",
4
+ "version": "0.1.5",
5
5
  "description": "Nuxt SEO design system layer: UI primitives, tokens, motion, and chart helpers. Extend it from a Nuxt app.",
6
6
  "license": "MIT",
7
7
  "homepage": "https://nuxtseo.com",