@getvitops/generator 8.3.0-alpha.2 → 8.3.0-alpha.4

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.
Files changed (37) hide show
  1. package/CHANGELOG.md +48 -0
  2. package/assets/css/layout-utilities.css +13 -0
  3. package/assets/css/layout.css +23 -0
  4. package/assets/css/patterns/carousel.css +9 -2
  5. package/assets/css/patterns/details.css +14 -0
  6. package/assets/css/patterns/forms.css +14 -1
  7. package/assets/css/patterns/logos.css +14 -0
  8. package/assets/css/patterns/section.css +10 -0
  9. package/assets/css/patterns/sitenav.css +8 -0
  10. package/assets/css/patterns/steps.css +85 -3
  11. package/assets/css/patterns/subgrid.css +9 -0
  12. package/assets/css/patterns/tone.css +16 -4
  13. package/assets/js/elements.js +1 -1
  14. package/config.schema.json +7 -1
  15. package/dist/{config-D5xuz8--.mjs → config-Bie2MqRh.mjs} +7 -4
  16. package/dist/config-Bie2MqRh.mjs.map +1 -0
  17. package/dist/config.d.mts +12 -7
  18. package/dist/config.d.mts.map +1 -1
  19. package/dist/config.mjs +1 -1
  20. package/dist/index.d.mts +2 -2
  21. package/dist/index.d.mts.map +1 -1
  22. package/dist/index.mjs +50 -8
  23. package/dist/index.mjs.map +1 -1
  24. package/dist/{schema-C-P9dF9F.d.mts → schema-7FhnyZZy.d.mts} +9 -1
  25. package/dist/schema-7FhnyZZy.d.mts.map +1 -0
  26. package/dist/{tokens-CaIGQQLk.mjs → tokens-D0DsePUl.mjs} +11 -7
  27. package/dist/tokens-D0DsePUl.mjs.map +1 -0
  28. package/dist/{tokens-DH5cpvKd.d.mts → tokens-GQUicLBj.d.mts} +10 -3
  29. package/dist/tokens-GQUicLBj.d.mts.map +1 -0
  30. package/dist/tokens.d.mts +1 -1
  31. package/dist/tokens.mjs +1 -1
  32. package/package.json +4 -4
  33. package/schema.json +19 -0
  34. package/dist/config-D5xuz8--.mjs.map +0 -1
  35. package/dist/schema-C-P9dF9F.d.mts.map +0 -1
  36. package/dist/tokens-CaIGQQLk.mjs.map +0 -1
  37. package/dist/tokens-DH5cpvKd.d.mts.map +0 -1
package/dist/config.d.mts CHANGED
@@ -1,4 +1,4 @@
1
- import { t as DesignSystem } from "./schema-C-P9dF9F.mjs";
1
+ import { t as DesignSystem } from "./schema-7FhnyZZy.mjs";
2
2
  import { AD_PROVIDERS, AdPropertySchema, AdProvider, BIGIN_DATA_CENTERS, CRM_PROVIDERS, CrmProviderConfig, IndexNowSchema, IndexingSchema, ReviewLocationSchema, ReviewsSchema, SearchConsoleSchema, SearchConsoleSetupSchema } from "@getvitops/config";
3
3
  import * as z from "@zod/mini";
4
4
  declare const PostalAddressSchema: z.ZodMiniObject<{
@@ -292,7 +292,7 @@ declare const SiteSectionSchema: z.ZodMiniObject<{
292
292
  date: z.ZodMiniOptional<z.ZodMiniString<string>>;
293
293
  }, z.core.$strict>>;
294
294
  }, z.core.$strict>>>;
295
- templates: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnion<readonly [z.ZodMiniObject<{
295
+ templates: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniDiscriminatedUnion<[z.ZodMiniObject<{
296
296
  type: z.ZodMiniLiteral<"nav">;
297
297
  tags: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
298
298
  present: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnknown>>;
@@ -320,6 +320,7 @@ declare const SiteSectionSchema: z.ZodMiniObject<{
320
320
  textarea: "textarea";
321
321
  select: "select";
322
322
  checkbox: "checkbox";
323
+ checkboxes: "checkboxes";
323
324
  radio: "radio";
324
325
  hidden: "hidden";
325
326
  }>;
@@ -338,7 +339,7 @@ declare const SiteSectionSchema: z.ZodMiniObject<{
338
339
  type: z.ZodMiniLiteral<"nodes">;
339
340
  tags: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
340
341
  nodes: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>>>;
341
- }, z.core.$strict>]>>>;
342
+ }, z.core.$strict>], "type">>>;
342
343
  navigation: z.ZodMiniOptional<z.ZodMiniObject<{
343
344
  activeTemplate: z.ZodMiniOptional<z.ZodMiniObject<{
344
345
  default: z.ZodMiniOptional<z.ZodMiniString<string>>;
@@ -857,6 +858,7 @@ export declare const ConfigSchema: z.ZodMiniObject<{
857
858
  light: "light";
858
859
  dark: "dark";
859
860
  }>>;
861
+ acknowledgeContrast: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
860
862
  }, z.core.$strict>]>>>;
861
863
  utilities: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniEnum<{
862
864
  fill: "fill";
@@ -1162,7 +1164,7 @@ export declare const ConfigSchema: z.ZodMiniObject<{
1162
1164
  date: z.ZodMiniOptional<z.ZodMiniString<string>>;
1163
1165
  }, z.core.$strict>>;
1164
1166
  }, z.core.$strict>>>;
1165
- templates: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnion<readonly [z.ZodMiniObject<{
1167
+ templates: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniDiscriminatedUnion<[z.ZodMiniObject<{
1166
1168
  type: z.ZodMiniLiteral<"nav">;
1167
1169
  tags: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1168
1170
  present: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnknown>>;
@@ -1190,6 +1192,7 @@ export declare const ConfigSchema: z.ZodMiniObject<{
1190
1192
  textarea: "textarea";
1191
1193
  select: "select";
1192
1194
  checkbox: "checkbox";
1195
+ checkboxes: "checkboxes";
1193
1196
  radio: "radio";
1194
1197
  hidden: "hidden";
1195
1198
  }>;
@@ -1208,7 +1211,7 @@ export declare const ConfigSchema: z.ZodMiniObject<{
1208
1211
  type: z.ZodMiniLiteral<"nodes">;
1209
1212
  tags: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1210
1213
  nodes: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>>>;
1211
- }, z.core.$strict>]>>>;
1214
+ }, z.core.$strict>], "type">>>;
1212
1215
  navigation: z.ZodMiniOptional<z.ZodMiniObject<{
1213
1216
  activeTemplate: z.ZodMiniOptional<z.ZodMiniObject<{
1214
1217
  default: z.ZodMiniOptional<z.ZodMiniString<string>>;
@@ -1616,6 +1619,7 @@ export declare const configJsonSchema: {
1616
1619
  light: "light";
1617
1620
  dark: "dark";
1618
1621
  }>>;
1622
+ acknowledgeContrast: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
1619
1623
  }, z.core.$strict>]>>>;
1620
1624
  utilities: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniEnum<{
1621
1625
  fill: "fill";
@@ -1921,7 +1925,7 @@ export declare const configJsonSchema: {
1921
1925
  date: z.ZodMiniOptional<z.ZodMiniString<string>>;
1922
1926
  }, z.core.$strict>>;
1923
1927
  }, z.core.$strict>>>;
1924
- templates: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnion<readonly [z.ZodMiniObject<{
1928
+ templates: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniDiscriminatedUnion<[z.ZodMiniObject<{
1925
1929
  type: z.ZodMiniLiteral<"nav">;
1926
1930
  tags: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1927
1931
  present: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnknown>>;
@@ -1949,6 +1953,7 @@ export declare const configJsonSchema: {
1949
1953
  textarea: "textarea";
1950
1954
  select: "select";
1951
1955
  checkbox: "checkbox";
1956
+ checkboxes: "checkboxes";
1952
1957
  radio: "radio";
1953
1958
  hidden: "hidden";
1954
1959
  }>;
@@ -1967,7 +1972,7 @@ export declare const configJsonSchema: {
1967
1972
  type: z.ZodMiniLiteral<"nodes">;
1968
1973
  tags: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1969
1974
  nodes: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>>>;
1970
- }, z.core.$strict>]>>>;
1975
+ }, z.core.$strict>], "type">>>;
1971
1976
  navigation: z.ZodMiniOptional<z.ZodMiniObject<{
1972
1977
  activeTemplate: z.ZodMiniOptional<z.ZodMiniObject<{
1973
1978
  default: z.ZodMiniOptional<z.ZodMiniString<string>>;
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.mts","names":[],"sources":["../src/config.ts"],"mappings":"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"}
1
+ {"version":3,"file":"config.d.mts","names":[],"sources":["../src/config.ts"],"mappings":"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"}
package/dist/config.mjs CHANGED
@@ -1,3 +1,3 @@
1
- import { C as resolveTheme, E as validateConfig, S as resolvePrivacyContact, T as stripNulls, _ as getAt, a as CONFIG_VERSION, b as resolveConfig, c as JURISDICTIONS, d as SiteFontSchema, f as configJsonSchema, g as formatConfig, h as experimentDimensionWarnings, i as CONFIG_SCHEMA_URL, l as JURISDICTION_COUNTRIES, m as designSystemPath, n as BIGIN_DATA_CENTERS, o as CRM_PROVIDERS, p as deepMerge, r as CONFIG_SCHEMA_LOCAL_PATH, s as ConfigSchema, t as AD_PROVIDERS, u as PLAN_CAPABILITIES, v as isConfig, w as setAt, x as resolveInput, y as mergePatch } from "./config-D5xuz8--.mjs";
1
+ import { C as resolveTheme, E as validateConfig, S as resolvePrivacyContact, T as stripNulls, _ as getAt, a as CONFIG_VERSION, b as resolveConfig, c as JURISDICTIONS, d as SiteFontSchema, f as configJsonSchema, g as formatConfig, h as experimentDimensionWarnings, i as CONFIG_SCHEMA_URL, l as JURISDICTION_COUNTRIES, m as designSystemPath, n as BIGIN_DATA_CENTERS, o as CRM_PROVIDERS, p as deepMerge, r as CONFIG_SCHEMA_LOCAL_PATH, s as ConfigSchema, t as AD_PROVIDERS, u as PLAN_CAPABILITIES, v as isConfig, w as setAt, x as resolveInput, y as mergePatch } from "./config-Bie2MqRh.mjs";
2
2
 
3
3
  export { AD_PROVIDERS, BIGIN_DATA_CENTERS, CONFIG_SCHEMA_LOCAL_PATH, CONFIG_SCHEMA_URL, CONFIG_VERSION, CRM_PROVIDERS, ConfigSchema, JURISDICTIONS, JURISDICTION_COUNTRIES, PLAN_CAPABILITIES, SiteFontSchema, configJsonSchema, deepMerge, designSystemPath, experimentDimensionWarnings, formatConfig, getAt, isConfig, mergePatch, resolveConfig, resolveInput, resolvePrivacyContact, resolveTheme, setAt, stripNulls, validateConfig };
package/dist/index.d.mts CHANGED
@@ -1,7 +1,7 @@
1
- import { a as ValidationResult, i as SCHEMA_URL, n as DesignSystemSchema, o as jsonSchema, r as SCHEMA_LOCAL_PATH, s as validate, t as DesignSystem } from "./schema-C-P9dF9F.mjs";
1
+ import { a as ValidationResult, i as SCHEMA_URL, n as DesignSystemSchema, o as jsonSchema, r as SCHEMA_LOCAL_PATH, s as validate, t as DesignSystem } from "./schema-7FhnyZZy.mjs";
2
2
  import { AD_PROVIDERS, AdProvider, BIGIN_DATA_CENTERS, CONFIG_SCHEMA_LOCAL_PATH, CONFIG_SCHEMA_URL, CONFIG_VERSION, CRM_PROVIDERS, Config, ConfigSchema, ConfigValidationResult, ContactObject, CrmProviderConfig, JURISDICTIONS, JURISDICTION_COUNTRIES, Jurisdiction, OrganizationConfig, PLAN_CAPABILITIES, PlanCapability, PostalAddress, ResolvedInput, SiteAdProperty, SiteExperiment, SiteFont, SiteFontSchema, SiteIndexNow, SiteIndexing, SitePlan, SiteReviewLocation, SiteReviews, SiteSearchConsole, SiteSearchConsoleSetup, SiteSection, configJsonSchema, deepMerge, designSystemPath, experimentDimensionWarnings, formatConfig, getAt, isConfig, mergePatch, resolveConfig, resolveInput, resolvePrivacyContact, resolveTheme, setAt, stripNulls, validateConfig } from "./config.mjs";
3
3
  import { a as spriteId, i as loadIconSvg, n as IconSpriteResult, r as buildIconSprite, t as IconSpriteOptions } from "./icons-sprite-CQ5Zj4go.mjs";
4
- import { C as roleHue, S as TYPO_KEYMAP, T as roleSolidOptions, _ as DARK_SEL, a as RoleKind, b as RoleSpec, c as expandPalette, f as patchToOverrideCss, g as BASE_HOOK, h as validateColorContract, i as NUMERIC_STEPS, l as functionalRole, m as tokenVar, n as ExpandedHue, o as buildReverseIndex, p as tokenClass, r as FunctionalRole, s as checkContrast, t as CONTRAST, v as REQUIRED_ROLES, w as roleKind, x as TW_CLASH, y as ROLE_TOKEN_KEYS } from "./tokens-DH5cpvKd.mjs";
4
+ import { C as roleHue, S as TYPO_KEYMAP, T as roleSolidOptions, _ as DARK_SEL, a as RoleKind, b as RoleSpec, c as expandPalette, f as patchToOverrideCss, g as BASE_HOOK, h as validateColorContract, i as NUMERIC_STEPS, l as functionalRole, m as tokenVar, n as ExpandedHue, o as buildReverseIndex, p as tokenClass, r as FunctionalRole, s as checkContrast, t as CONTRAST, v as REQUIRED_ROLES, w as roleKind, x as TW_CLASH, y as ROLE_TOKEN_KEYS } from "./tokens-GQUicLBj.mjs";
5
5
  import { ContentNode } from "@getvitops/utils";
6
6
  type Format = 'bricks' | 'css' | 'tailwind' | 'design';
7
7
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.mts","names":[],"sources":["../src/generate.ts","../src/docs.ts","../src/tiers.ts","../src/token-refs.ts","../src/legal/providers.ts","../src/legal/derive.ts","../src/legal/templates/cookies.ca.ts","../src/legal/templates/cookies.qc.ts","../src/legal/templates/privacy.ca.ts","../src/legal/templates/privacy.qc.ts","../src/legal/templates/terms.ca.ts","../src/legal/templates/terms.qc.ts","../src/legal/templates/index.ts","../src/legal/render.ts","../src/legal/index.ts","../src/robots.ts","../src/index.ts"],"mappings":"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"}
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../src/generate.ts","../src/docs.ts","../src/tiers.ts","../src/token-refs.ts","../src/legal/providers.ts","../src/legal/derive.ts","../src/legal/templates/cookies.ca.ts","../src/legal/templates/cookies.qc.ts","../src/legal/templates/privacy.ca.ts","../src/legal/templates/privacy.qc.ts","../src/legal/templates/terms.ca.ts","../src/legal/templates/terms.qc.ts","../src/legal/templates/index.ts","../src/legal/render.ts","../src/legal/index.ts","../src/robots.ts","../src/index.ts"],"mappings":"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"}
package/dist/index.mjs CHANGED
@@ -1,5 +1,5 @@
1
- import { C as roleKind, S as roleHue, _ as ROLE_TOKEN_KEYS, a as expandPalette, b as TYPO_KEYMAP, c as monotonicityErrors, d as tokenVar, f as validateColorContract, g as REQUIRED_ROLES, h as LAYOUT_TOKENS, i as checkContrast, l as patchToOverrideCss, m as DARK_SEL, n as NUMERIC_STEPS, o as functionalRole, p as BASE_HOOK, r as buildReverseIndex, s as ladderWarnings, t as CONTRAST, u as tokenClass, v as SYSTEM_DARK_SEL, w as roleSolidOptions, x as layoutDecls, y as TW_CLASH } from "./tokens-CaIGQQLk.mjs";
2
- import { A as jsonSchema, C as resolveTheme, D as DesignSystemSchema, E as validateConfig, M as movedTokens, O as SCHEMA_LOCAL_PATH, S as resolvePrivacyContact, T as stripNulls, _ as getAt, a as CONFIG_VERSION, b as resolveConfig, c as JURISDICTIONS, d as SiteFontSchema, f as configJsonSchema, g as formatConfig, h as experimentDimensionWarnings, i as CONFIG_SCHEMA_URL, j as validate, k as SCHEMA_URL, l as JURISDICTION_COUNTRIES, m as designSystemPath, n as BIGIN_DATA_CENTERS, o as CRM_PROVIDERS, p as deepMerge, r as CONFIG_SCHEMA_LOCAL_PATH, s as ConfigSchema, t as AD_PROVIDERS, u as PLAN_CAPABILITIES, v as isConfig, w as setAt, x as resolveInput, y as mergePatch } from "./config-D5xuz8--.mjs";
1
+ import { C as roleKind, S as roleHue, _ as ROLE_TOKEN_KEYS, a as expandPalette, b as TYPO_KEYMAP, c as monotonicityErrors, d as tokenVar, f as validateColorContract, g as REQUIRED_ROLES, h as LAYOUT_TOKENS, i as checkContrast, l as patchToOverrideCss, m as DARK_SEL, n as NUMERIC_STEPS, o as functionalRole, p as BASE_HOOK, r as buildReverseIndex, s as ladderWarnings, t as CONTRAST, u as tokenClass, v as SYSTEM_DARK_SEL, w as roleSolidOptions, x as layoutDecls, y as TW_CLASH } from "./tokens-D0DsePUl.mjs";
2
+ import { A as jsonSchema, C as resolveTheme, D as DesignSystemSchema, E as validateConfig, M as movedTokens, O as SCHEMA_LOCAL_PATH, S as resolvePrivacyContact, T as stripNulls, _ as getAt, a as CONFIG_VERSION, b as resolveConfig, c as JURISDICTIONS, d as SiteFontSchema, f as configJsonSchema, g as formatConfig, h as experimentDimensionWarnings, i as CONFIG_SCHEMA_URL, j as validate, k as SCHEMA_URL, l as JURISDICTION_COUNTRIES, m as designSystemPath, n as BIGIN_DATA_CENTERS, o as CRM_PROVIDERS, p as deepMerge, r as CONFIG_SCHEMA_LOCAL_PATH, s as ConfigSchema, t as AD_PROVIDERS, u as PLAN_CAPABILITIES, v as isConfig, w as setAt, x as resolveInput, y as mergePatch } from "./config-Bie2MqRh.mjs";
3
3
  import { buildIconSprite, loadIconSvg, spriteId } from "./icons-sprite.mjs";
4
4
  import { cpSync, existsSync, mkdirSync, readFileSync, readdirSync, writeFileSync } from "node:fs";
5
5
  import { dirname, join } from "node:path";
@@ -202,9 +202,11 @@ const TIERS = {
202
202
  "steps__body",
203
203
  "steps__title",
204
204
  "steps__text",
205
- "steps--row"
206
- ], "patterns/steps.css"),
207
- use: "`<ol class=\"steps tone\">` of `<li class=\"steps__item\">` each holding a `.steps__body` with a real heading. The number is a CSS counter and the connector line a pseudo-element; `.steps--row` runs it sideways when wide."
205
+ "steps--row",
206
+ "steps--cards",
207
+ "steps--animated"
208
+ ], "patterns/steps.css", true),
209
+ use: "`<ol class=\"steps tone\">` of `<li class=\"steps__item\">` each holding a `.steps__body` with a real heading. The number is a CSS counter and the connector line a pseudo-element; `.steps--row` runs it sideways when wide; `.steps--cards` puts each step in a card and `.steps--animated` draws the connector on scroll. The marker size and card geometry are the `steps` entry of `patterns.items` (`--steps-marker-size`, the `content` group tokens)."
208
210
  },
209
211
  stats: {
210
212
  emdash: ["vitops_stats"],
@@ -4054,7 +4056,8 @@ function fieldPhrase(name, type) {
4054
4056
  case "password": return "account credentials";
4055
4057
  case "select":
4056
4058
  case "radio":
4057
- case "checkbox": return "your answers to the questions we ask";
4059
+ case "checkbox":
4060
+ case "checkboxes": return "your answers to the questions we ask";
4058
4061
  }
4059
4062
  if (/name/i.test(name)) return "your name";
4060
4063
  if (/compan|organi|business/i.test(name)) return "your company or organization name";
@@ -5243,6 +5246,17 @@ const DEFAULT_ASSETS = join(HERE, "..", "assets");
5243
5246
  * live in a plain `:root`, never `@theme`: a `--color-*` theme key would mint `text-<hue>-<step>-on`
5244
5247
  * utilities nobody asked for.
5245
5248
  */
5249
+ /**
5250
+ * `colors.tint`: the surface tint of a `.tone--tint` element as a mix of the role's solid, instead
5251
+ * of its `muted` step (which can turn muddy: amber's is brown on a dark page). Nothing is emitted
5252
+ * without it, so existing sites are unchanged. Not covered by the contrast contract — a mix over an
5253
+ * arbitrary page is not a pairing the generator can check.
5254
+ */
5255
+ function toneTintRule(tint) {
5256
+ if (!tint) return "";
5257
+ return `/* colors.tint */\n.tone {\n --tone-tint: color-mix(in oklab, var(--tone-solid, currentColor) ${tint.mix}, transparent);\n}\n\n`;
5258
+ }
5259
+ const blockSet = "wc-cards, ul[class], ol[class], details, form, table, figure, .accordion, .section__body";
5246
5260
  function hueOnTokens(palette) {
5247
5261
  const out = [];
5248
5262
  for (const [name, hue] of Object.entries(palette)) for (const [n, hex] of Object.entries(hue.numeric)) out.push(`--color-${name}-${n}-on: ${pickOn(hex)};`);
@@ -5487,7 +5501,11 @@ function build(ds, format, assetsDir, buildOpts = {}) {
5487
5501
  light: planeKeys.flatMap((k) => surfaceRole.light[k] ? [resolve(surfaceRole.light[k])] : []),
5488
5502
  dark: planeKeys.flatMap((k) => surfaceRole.dark[k] ? [resolve(surfaceRole.dark[k])] : [])
5489
5503
  } : void 0;
5490
- const failures = scaleRoles.flatMap((fr) => checkContrast(fr, numericOf, surfaceBg, buildOpts.darkOnly ? ["dark"] : void 0));
5504
+ const failures = scaleRoles.flatMap((fr) => {
5505
+ const spec = ds.colors.roles[fr.role];
5506
+ const tolerance = typeof spec === "object" ? spec.acknowledgeContrast ?? 0 : 0;
5507
+ return checkContrast(fr, numericOf, surfaceBg, buildOpts.darkOnly ? ["dark"] : void 0, tolerance, (msg) => console.warn(`[vitops] contrast acknowledged: ${msg}`));
5508
+ });
5491
5509
  if (failures.length) throw new Error(`colour contrast contract failed (${failures.length} pairing${failures.length === 1 ? "" : "s"}):\n ${failures.join("\n ")}`);
5492
5510
  }
5493
5511
  if (buildOpts.darkOnly) scaleRoles.forEach((fr, i) => {
@@ -5530,7 +5548,7 @@ function build(ds, format, assetsDir, buildOpts = {}) {
5530
5548
  * `TW_CLASH` names.
5531
5549
  */
5532
5550
  const NON_PALETTE_BG = "/* Undo a pattern's fill (Tailwind provides these natively in that format). */\n.bg-transparent { background-color: transparent; }\n.bg-inherit { background-color: inherit; }\n";
5533
- if (BRICKS) generated["color.css"] = "/* Colours provided by Bricks (palette import generates tokens + utilities). */\n" + NON_PALETTE_BG;
5551
+ if (BRICKS) generated["color.css"] = "/* Colours provided by Bricks (palette import generates tokens + utilities). */\n" + NON_PALETTE_BG + toneTintRule(ds.colors.tint);
5534
5552
  else {
5535
5553
  let css = `/* GENERATED from design-system.json — do not edit by hand. */\n:root {\n`;
5536
5554
  css += ` color-scheme: ${buildOpts.darkOnly ? "dark" : "light"};\n`;
@@ -5550,6 +5568,7 @@ function build(ds, format, assetsDir, buildOpts = {}) {
5550
5568
  css += ` --overlay: color-mix(in oklch, var(--color-${surfaceRole.hue}-950) 45%, transparent);\n`;
5551
5569
  }
5552
5570
  css += `}\n\n`;
5571
+ css += toneTintRule(ds.colors.tint);
5553
5572
  {
5554
5573
  let fb = "";
5555
5574
  for (const fr of scaleRoles) for (const [t, val] of Object.entries(fr.dark)) if (fr.light[t] !== val) fb += ` ${tokenVar(fr.role, t)}: ${val};\n`;
@@ -6053,6 +6072,7 @@ function emitTailwind(ctx) {
6053
6072
  for (const line of hueOnTokens(expandedPalette)) fn += ` ${line}\n`;
6054
6073
  if (ctx.darkOnly) fn = ` color-scheme: dark;\n${fn}`;
6055
6074
  parts.push(`/* Role tokens (the public API) */\n:root {\n${fn}}\n`);
6075
+ if (ds.colors.tint) parts.push(toneTintRule(ds.colors.tint));
6056
6076
  }
6057
6077
  parts.push(`/* ── Framework tokens (consumed by the inlined components) ── */\n${twTypeTokensCss}\n${twPatternTokensCss}`);
6058
6078
  let darkBlock = "";
@@ -6122,6 +6142,7 @@ function emitTailwind(ctx) {
6122
6142
  util.push("@utility grid-auto {\n display: grid;\n gap: var(--grid-gap, 1rem);\n grid-template-columns: repeat(auto-fit, minmax(var(--grid-min, 13rem), 1fr));\n &:is(ul, ol) > li + li { margin-block-start: 0; }\n}");
6123
6143
  util.push(`\n/* Opt out of ambient .rhythm item spacing (mirrors layout-utilities.css) */`);
6124
6144
  util.push(`@utility no-rhythm {\n & > li + li { margin-top: 0; }\n}`);
6145
+ util.push(`\n/* Opt-in flex stack (mirrors layout-utilities.css) */\n@utility rhythm-flex {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n & > :is(${blockSet}) { align-self: stretch; }\n}`);
6125
6146
  util.push(`\n/* Vertical-rhythm overrides (mirrors layout.css) */`);
6126
6147
  for (const pair of [
6127
6148
  "h-p",
@@ -6156,6 +6177,8 @@ function emitTailwind(ctx) {
6156
6177
  --rhythm-li-li: 0.3;
6157
6178
  --rhythm-text-media: 1.2;
6158
6179
  --rhythm-media-text: 1.2;
6180
+ --rhythm-block: 2;
6181
+ --rhythm-block-action: 1.6;
6159
6182
  --width-measure: 65ch;
6160
6183
  --width-breakout: 90ch;
6161
6184
  --width-spotlight: 120ch;
@@ -6207,6 +6230,25 @@ body {
6207
6230
  margin-top: calc(var(--rhythm-base) * var(--rhythm-media-text));
6208
6231
  }
6209
6232
 
6233
+ /* Block-level children are a block gap apart, not a paragraph apart: a card row, a stats list, an
6234
+ accordion or a form under a lead sat flush at the prose spacing. \`:is()\` takes its most specific
6235
+ argument (0-1-1), so this beats the paragraph-to-list pairs above (0-1-2 would not tie it).
6236
+ Classless \`ul\`/\`ol\` stay prose. A form's own \`.rhythm\` holds \`div\` fields, which are not listed,
6237
+ so its tight field spacing is untouched. */
6238
+ .rhythm > * + :is(wc-cards, ul[class], ol[class], details, form, table, figure, .accordion, .section__body) {
6239
+ margin-top: calc(var(--rhythm-base) * var(--rhythm-block));
6240
+ }
6241
+ /* A row of buttons after the lead. */
6242
+ .rhythm > * + p.cluster {
6243
+ margin-top: calc(var(--rhythm-base) * var(--rhythm-block-action));
6244
+ }
6245
+ /* A bare link is inline, and an inline box ignores \`margin-top\`, so it sat flush under the
6246
+ paragraph above. Buttons (\`.cta\`, \`.btn\`) are inline-flex and already space. */
6247
+ .rhythm > :where(a:not(.cta, .btn)) {
6248
+ display: block;
6249
+ inline-size: fit-content;
6250
+ }
6251
+
6210
6252
  .centered {
6211
6253
  --_measure: min(var(--width-measure), 100% - var(--gutter) * 2);
6212
6254
  --_breakout: minmax(0, calc((var(--width-breakout) - var(--width-measure)) / 2));