@kolkrabbi/kol-styleguide 0.5.1 → 0.5.3

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
@@ -2,7 +2,7 @@
2
2
 
3
3
  The KOL **style-guide / brand-guide** component set — the visual specimens a brand manual is built from. Raided from the monorepo `apps/brand` styleguide and assembled here because a brand guide is a shared capability with its own cadence, distinct from the core UI atoms.
4
4
 
5
- Colour anatomy + the **combination lab** (60/30/10 palette × layout × logo, incl. applied-brand mockups), **logo** construction / clearspace / scaling, **mood tiles**, **type blocks**, and **asset spec tables** — plus the colour/type specimen primitives (`ColorRamp`, `ColorSwatch`, `SpectrumGrid`, `TypeSample`, `TypeSpecCard`, `ProsePreview`, `AssetGrid`, `FeatureSplit`) gathered from the core packages.
5
+ Color anatomy + the **combination lab** (60/30/10 palette × layout × logo, incl. applied-brand mockups), **logo** construction / clearspace / scaling, **mood tiles**, **type blocks**, and **asset spec tables** — plus the color/type specimen primitives (`ColorRamp`, `ColorSwatch`, `SpectrumGrid`, `TypeSample`, `TypeSpecCard`, `ProsePreview`, `AssetGrid`, `FeatureSplit`) gathered from the core packages.
6
6
 
7
7
  ```js
8
8
  import { ComboLab, MoodTile, LogoCard, TypeBlock } from '@kolkrabbi/kol-styleguide'
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kolkrabbi/kol-styleguide",
3
- "version": "0.5.1",
3
+ "version": "0.5.3",
4
4
  "private": false,
5
5
  "description": "KOL style-guide / brand-guide component set — the visual specimens a brand manual is built from: color anatomy + combination lab, logo construction / clearspace / scaling, mood tiles, type blocks, and asset spec tables. Raided from the apps/brand styleguide. Also the brand tool itself — `Brand` (BrandBook ⇄ BrandAssets) renders a whole brand book from one brand manifest. Sits above @kolkrabbi/kol-{theme,icons,component,framework}.",
6
6
  "license": "MIT",
@@ -19,10 +19,10 @@
19
19
  "react-dom": "^18.3.0 || ^19.0.0"
20
20
  },
21
21
  "devDependencies": {
22
- "@kolkrabbi/kol-framework": "^0.44.0",
23
- "@kolkrabbi/kol-component": "^0.225.0",
24
- "@kolkrabbi/kol-icons": "^0.27.1",
25
- "@kolkrabbi/kol-theme": "^0.151.0"
22
+ "@kolkrabbi/kol-component": "^0.230.0",
23
+ "@kolkrabbi/kol-framework": "^0.46.0",
24
+ "@kolkrabbi/kol-theme": "^0.157.0",
25
+ "@kolkrabbi/kol-icons": "^0.29.1"
26
26
  },
27
27
  "files": [
28
28
  "src",
package/src/AssetCard.jsx CHANGED
@@ -23,7 +23,7 @@
23
23
  * no text-transform beyond the `uppercase` the original carried.
24
24
  *
25
25
  * @param {ReactNode} caption - Label above the frame; omitted, no figcaption renders
26
- * @param {string} backdrop - CSS colour for the frame ground (default: the fg-04 wash)
26
+ * @param {string} backdrop - CSS color for the frame ground (default: the fg-04 wash)
27
27
  * @param {string} className - Extra classes on the <figure>
28
28
  * @param {ReactNode} children - The mock
29
29
  */
@@ -3,7 +3,7 @@ import { Table } from '@kolkrabbi/kol-component'
3
3
  import { Icon } from '@kolkrabbi/kol-icons'
4
4
 
5
5
  /* Resolve a CSS custom property off the document root. The download seam is
6
- * handed a COLOUR, not a token — a consumer swapping `currentColor` in raw SVG
6
+ * handed a COLOR, not a token — a consumer swapping `currentColor` in raw SVG
7
7
  * cannot use `var(--x)`, and resolving it at the call site is how two brand
8
8
  * apps ended up with the same four-line helper. SSR-safe: '' when no document. */
9
9
  function resolveToken(token) {
@@ -34,7 +34,7 @@ function resolveToken(token) {
34
34
  * button. The consumer opens its own overlay (`FullscreenOverlay` in both
35
35
  * brand apps) at the ink it is handed.
36
36
  * - **`row.onDownload(row, resolvedInk)`** — the second argument is the
37
- * COMPUTED colour, not the token, so a consumer can swap `currentColor` for
37
+ * COMPUTED color, not the token, so a consumer can swap `currentColor` for
38
38
  * it and hand back a white mark that downloads white.
39
39
  *
40
40
  * Columns adapt to the data: Preview appears only when a row carries a
@@ -188,7 +188,7 @@ function DownloadControl({ row, token, onToggleInk }) {
188
188
  <button
189
189
  type="button"
190
190
  onClick={() => row.onDownload(row, resolveToken(token))}
191
- className="inline-flex items-center text-fg-64"
191
+ className="inline-flex items-center text-oq-64"
192
192
  aria-label={label}
193
193
  title="Download"
194
194
  >
@@ -198,7 +198,7 @@ function DownloadControl({ row, token, onToggleInk }) {
198
198
  <a
199
199
  href={row.href}
200
200
  download={row.filename ?? true}
201
- className="inline-flex items-center text-fg-64"
201
+ className="inline-flex items-center text-oq-64"
202
202
  aria-label={label}
203
203
  title="Download"
204
204
  >
package/src/Brand.jsx CHANGED
@@ -10,7 +10,7 @@ import { BRAND_VIEWS, brandToc, scrollToAnchor } from './brandBook.js'
10
10
  * Brand — the whole brand tool: the brand book's two pages over one manifest, BRAND (the identity)
11
11
  * and ASSETS (what you download or reproduce), a switch between them, and the page's sections on a
12
12
  * rail. ONE component so every app that carries a brand renders the same tool (apps/brand alone,
13
- * media-shell's Brand tab) — kol-notes' `Notes` shape.
13
+ * media-hub's Brand tab) — kol-notes' `Notes` shape.
14
14
  *
15
15
  * The manifest is `@kolkrabbi/kol-brand-template`'s schema; its `book` field carries the copy. The
16
16
  * marks come from `Logo` (a component taking `variant`) or `logoSources` (id → raw SVG, which the
package/src/BrandBook.jsx CHANGED
@@ -114,7 +114,7 @@ export function SectionIndex({ sections }) {
114
114
  )
115
115
  }
116
116
 
117
- /* Colour — the copy, then one swatch row per ramp under its label and note. The first ramp's
117
+ /* Color — the copy, then one swatch row per ramp under its label and note. The first ramp's
118
118
  * heading sits in the copy's own prose block (olina's Concept + Greyscale were one block); each
119
119
  * further ramp opens its own, as kol-website's hue ramps did. */
120
120
  function ColorSection({ s, ramps }) {
@@ -11,7 +11,7 @@
11
11
  * - `KolLogo` imported from the app → the `mark` node.
12
12
  * - A seven-stop client palette (champagne / sand / burgundy / maroon / wine)
13
13
  * → `palette`, defaulting to the theme's own ink and paper. A brand supplies
14
- * its own; the DS ships no colour.
14
+ * its own; the DS ships no color.
15
15
  * - `'Bricolage Grotesque'` and `'JetBrains Mono'` by name → `fonts`,
16
16
  * defaulting to `--kol-font-family-sans-narrow` / `--kol-font-family-mono`.
17
17
  * A foreign family by name in a package is how a consumer's type silently
@@ -248,7 +248,7 @@ export function StoryType({ mark, palette, fonts, quote = 'Your line here.', cla
248
248
  *
249
249
  * @param {ReactNode} mark - The brand mark
250
250
  * @param {Object} palette - Partial override of DEFAULT_MOCK_PALETTE
251
- * @param {string} bg - Ground colour; unset, the `paper` stop
251
+ * @param {string} bg - Ground color; unset, the `paper` stop
252
252
  * @param {'dark'|'light'} polarity - Which way the mark inks against that ground (default: 'dark')
253
253
  * @param {string} className - Extra classes on the frame
254
254
  */
package/src/Swatch.jsx CHANGED
@@ -5,7 +5,7 @@ import { ColorSwatch } from '@kolkrabbi/kol-component'
5
5
  * with an optional canonical-anchor dot.
6
6
  *
7
7
  * `ColorSwatch` (kol-component) is the chip alone — a fixed-size pressable atom
8
- * for paint bars and inspectors. A colour PAGE needs the specimen plus its label
8
+ * for paint bars and inspectors. A color PAGE needs the specimen plus its label
9
9
  * and value, which is the form both brand apps had built locally
10
10
  * (`brand-book-mocks-two-consumers`, 2026-09-03: 23 lines, byte-identical in
11
11
  * kol-client-olina and kol-website). This composes the atom rather than
@@ -31,7 +31,7 @@ import { ColorSwatch } from '@kolkrabbi/kol-component'
31
31
  * The hex is uppercased — that is value formatting, not a text-transform on
32
32
  * copy; `name` renders exactly as authored.
33
33
  *
34
- * @param {string} hex - The colour, e.g. '#131316' (required — it is both the paint and the printed value)
34
+ * @param {string} hex - The color, e.g. '#131316' (required — it is both the paint and the printed value)
35
35
  * @param {ReactNode} name - Label beside the value; omitted, only the hex renders
36
36
  * @param {boolean} anchor - Mark this stop as the palette's canonical anchor — a difference-blended dot centred on the chip (default: false)
37
37
  * @param {number|string} height - Specimen depth, the forks' `.kol-swatch-chip` height (default: 96)
package/src/TypeBlock.jsx CHANGED
@@ -5,12 +5,12 @@ import { familyFor } from './typographyCuts'
5
5
  *
6
6
  * Renders one sample string with a fully consumer-controlled type treatment:
7
7
  * cut (Right Grotesk width / mono), weight, italic, size, tracking,
8
- * line-height, case, alignment, colour, and an optional stroke. A pure,
8
+ * line-height, case, alignment, color, and an optional stroke. A pure,
9
9
  * stateless render — feed it props, it draws the specimen. Defaults land on
10
10
  * Right Grotesk regular so a bare `<TypeBlock />` shows a legible baseline.
11
11
  *
12
- * **Position + colour are the consumer's job.** TypeBlock owns no positioned
13
- * container, outline, or drag chrome, and inherits colour by default
12
+ * **Position + color are the consumer's job.** TypeBlock owns no positioned
13
+ * container, outline, or drag chrome, and inherits color by default
14
14
  * (`currentColor`) so the surrounding surface / theme drives ink. Wrap it in
15
15
  * whatever tile, row, or frame the specimen page needs.
16
16
  *
@@ -38,7 +38,7 @@ import { familyFor } from './typographyCuts'
38
38
  * align text-align
39
39
  * color ink (default 'currentColor' — inherit from surface / theme)
40
40
  * strokeWidth outline width in px (0 = none)
41
- * strokeColor outline colour (required for stroke to render)
41
+ * strokeColor outline color (required for stroke to render)
42
42
  * className extra classes on the sample element
43
43
  * style inline-style overrides merged last
44
44
  */
package/src/brandBook.js CHANGED
@@ -6,7 +6,7 @@
6
6
  * or reproduce — each a stack of sections. The section ids, eyebrows, titles and ledes below are
7
7
  * that app's, verbatim — except the Logos and Branded ledes, which named files in that repo and are
8
8
  * left for its manifest to set; anything that was the CLIENT's copy (About, Tone, Look, the logo concept,
9
- * the colour concept) is not here — it comes from the manifest's `book` field, section by section
9
+ * the color concept) is not here — it comes from the manifest's `book` field, section by section
10
10
  * (`@kolkrabbi/kol-brand-template` schema). A manifest key overrides the default of the same name.
11
11
  */
12
12
 
@@ -100,7 +100,7 @@ export const BRANDED_ASSET_ROWS = [
100
100
  ]
101
101
 
102
102
  /** An in-page anchor click that scrolls instead of setting the hash — the host may route on the hash
103
- * (media-shell does; apps/brand keeps its page there), so an anchor must not replace it. */
103
+ * (media-hub does; apps/brand keeps its page there), so an anchor must not replace it. */
104
104
  export function scrollToAnchor(e) {
105
105
  e.preventDefault()
106
106
  const id = e.currentTarget.getAttribute('href')?.slice(1)
package/src/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  // @kolkrabbi/kol-styleguide — the brand style-guide component set.
2
2
  //
3
- // Visual specimens a brand manual is built from — colour anatomy + the
3
+ // Visual specimens a brand manual is built from — color anatomy + the
4
4
  // combination lab, logo construction / clearspace / scaling, mood tiles,
5
5
  // type blocks, asset spec tables. Raided from the monorepo apps/brand
6
6
  // styleguide (2026-07). Styling ships in @kolkrabbi/kol-theme