@assure-one/design-system 1.38.0 → 1.40.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.
- package/README.md +63 -28
- package/codemods/README.md +76 -25
- package/codemods/lib/entry-map.mjs +315 -0
- package/codemods/lib/registry.mjs +28 -0
- package/codemods/lib/runner.mjs +8 -3
- package/codemods/run.mjs +27 -5
- package/codemods/transforms/cm-01-entry-imports.mjs +202 -0
- package/codemods/transforms/cm-15-dom-selectors.mjs +16 -9
- package/dist/brand-scope-BOHId6BY.d.ts +58 -0
- package/dist/brand-theme-ZYM867Jz.d.ts +59 -0
- package/dist/chunk-2MKLYYIY.js +3754 -0
- package/dist/chunk-2MKLYYIY.js.map +1 -0
- package/dist/chunk-6S2R2VWN.js +5527 -0
- package/dist/chunk-6S2R2VWN.js.map +1 -0
- package/dist/chunk-7U3ADR2Q.js +4336 -0
- package/dist/chunk-7U3ADR2Q.js.map +1 -0
- package/dist/chunk-CPOGSNXS.js +389 -0
- package/dist/chunk-CPOGSNXS.js.map +1 -0
- package/dist/chunk-EUHGZA6Q.js +313 -0
- package/dist/chunk-EUHGZA6Q.js.map +1 -0
- package/dist/chunk-KQBYTTAN.js +1829 -0
- package/dist/chunk-KQBYTTAN.js.map +1 -0
- package/dist/chunk-X76J4QSJ.js +164 -0
- package/dist/chunk-X76J4QSJ.js.map +1 -0
- package/dist/css/components.css +1 -1
- package/dist/css/legacy-aliases.css +2 -0
- package/dist/css/tailwind.css +2 -0
- package/dist/css/tokens.css +8 -6
- package/dist/data-table-view-ep8al7P9.d.ts +1132 -0
- package/dist/design-system-provider-CfD2g2lY.d.ts +142 -0
- package/dist/icons/index.d.ts +441 -3
- package/dist/icons/index.js +2 -1835
- package/dist/icons/index.js.map +1 -1
- package/dist/index.d.ts +404 -3847
- package/dist/index.js +8728 -24213
- package/dist/index.js.map +1 -1
- package/dist/legacy/index.d.ts +1464 -0
- package/dist/legacy/index.js +7 -0
- package/dist/legacy/index.js.map +1 -0
- package/dist/next/index.d.ts +2 -1
- package/dist/reference-BkDbrPIB.d.ts +310 -0
- package/dist/styles.css +2 -1
- package/dist/suite/index.d.ts +989 -0
- package/dist/suite/index.js +8 -0
- package/dist/suite/index.js.map +1 -0
- package/dist/{system-CyAVbHhM.d.ts → system-DfJIVBlJ.d.ts} +1 -310
- package/dist/testing/index.cjs +3 -2
- package/dist/testing/index.js +3 -2
- package/dist/tokens/index.d.ts +3 -61
- package/dist/tokens/index.js +3 -856
- package/dist/tokens/index.js.map +1 -1
- package/dist/{design-system-provider-B5MbvbRc.d.ts → types-Coqw8iaS.d.ts} +36 -142
- package/dist/vocab-DornLJbW.d.ts +76 -0
- package/docs/components.md +54 -52
- package/docs/components.registry.json +22 -8
- package/docs/for-ai-agents.md +12 -6
- package/package.json +17 -4
- package/public/brand/assure-audit-mark.svg +6 -0
- package/public/brand/assure-audit.svg +8 -0
- package/public/brand/assure-books-mark.svg +6 -0
- package/public/brand/assure-books.svg +8 -0
- package/public/brand/assure-pro-mark.svg +6 -0
- package/public/brand/assure-pro.svg +8 -0
- package/public/brand/assure-tax-mark.svg +6 -0
- package/public/brand/assure-tax.svg +8 -0
- package/public/brand/mycpe-teams-mark.svg +36 -0
- package/public/brand/mycpe-teams.svg +66 -0
- package/dist/index-vztxMSfl.d.ts +0 -512
package/dist/tokens/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/tokens/reference.ts","../../src/tokens/system.ts","../../src/foundation/theme/srgb.ts","../../src/foundation/theme/brand-theme.ts"],"names":[],"mappings":"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O,KAAA;AAAA,EAC3F,KAAA;AAAA,EAAO,KAAA;AAAA,EAAO,KAAA;AAAA,EAAO,KAAA;AAAA,EAAO,KAAA;AAAA,EAAO,KAAA;AAAA,EAAO,KAAA;AAAA,EAAO,KAAA;AAAA,EAAO,KAAA;AAAA,EAAO,KAAA;AAAA,EAAO,KAAA;AAAA,EAAO,KAAA;AAAA,EAAO,KAAA;AAAA,EAAO,KAAA;AAAA,EAC3F,KAAA;AAAA,EAAO,KAAA;AAAA,EAAO,KAAA;AAAA,EAAO,KAAA;AAAA,EAAO,KAAA;AAAA,EAAO,KAAA;AAAA,EAAO,KAAA;AAAA,EAAO,KAAA;AAAA,EAAO,KAAA;AAAA,EAAO,KAAA;AAAA,EAAO,KAAA;AAAA,EAAO,KAAA;AAAA,EAAO,KAAA;AAAA,EAAO,KAAA;AAAA,EAC3F,KAAA;AAAA,EAAO,KAAA;AAAA,EAAO,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EACtF,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EACxF,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EACxF,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EACxF,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EACxF,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EACxF,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EACxF,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EACxF,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EACxF,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EACxF,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,MAAA;AAAA,EAAQ,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","file":"index.js","sourcesContent":["/* GENERATED FILE — do not edit.\n * Source: tokens/src (DTCG, ADR-003).\n * Generator: tokens/build/lib/generate-ts.mjs, template tokens/build/templates/reference.ts.tmpl.\n * Change the token files and run `pnpm tokens:build`; `pnpm tokens:check`\n * fails when this file is out of date. */\n/**\n * Reference tokens — raw palette.\n *\n * Programmatic access for theme switching, Figma sync, design tools, etc.\n * Components should NOT consume these directly; use system tokens (./system.ts)\n * or the CSS variables in ./tokens.css.\n */\n\nexport const colors = {\n /* Surfaces */\n bg: \"#ffffff\",\n bg2: \"#f1f3f8\",\n bg3: \"#e7eaf1\",\n surface: \"#ffffff\",\n surface2: \"#f7f8fc\",\n\n /* Foreground */\n fg: \"#0a0a0a\",\n fg2: \"#38383b\",\n fg3: \"#5f5f64\",\n fg4: \"#6b6b70\",\n fg5: \"#9a9aa0\",\n\n /* Rules */\n rule: \"#e4e7ef\",\n ruleSoft: \"#eef0f5\",\n ruleStrong: \"#d3d8e3\",\n\n /* Accent (cyan) */\n accent: \"#6c42f8\",\n accent2: \"#5127e8\",\n accentTint: \"#efeaff\",\n accentHover: \"#5e35f2\",\n accentActive: \"#5127e8\",\n\n /* Pro (purple) */\n proBg: \"#f4f1ff\",\n proBgHover: \"#eee9ff\",\n proBgActive: \"#e4ddff\",\n proFg: \"#6c42f8\",\n proHover: \"#5e35f2\",\n proActive: \"#5127e8\",\n proDisabled: \"#b7a7f3\",\n proLine: \"#7b5bd8\",\n\n /* Disabled */\n fgDisabled: \"#a7a7ac\",\n bgDisabled: \"#f1f2f6\",\n\n /* Status */\n successFg: \"#1f7a3d\",\n successBg: \"#eaf6ee\",\n successLine: \"#c5e5cf\",\n warningFg: \"#8a4606\",\n warningBg: \"#fff3e5\",\n warningLine: \"#f5d5a8\",\n dangerFg: \"#c43838\",\n dangerBg: \"#fbeaea\",\n dangerLine: \"#ecc5c5\",\n\n /* On-brand */\n fgOnAccent: \"#ffffff\",\n fgOnPro: \"#ffffff\",\n} as const;\n\nexport const typography = {\n family: {\n display: '\"Plus Jakarta Sans\", -apple-system, system-ui, sans-serif',\n body: '\"Plus Jakarta Sans\", -apple-system, system-ui, sans-serif',\n mono: '\"Plus Jakarta Sans\", -apple-system, system-ui, sans-serif',\n },\n weight: {\n regular: 400,\n medium: 500,\n semibold: 600,\n bold: 700,\n },\n /* Universal entrance ease — applies to every motion primitive */\n ease: \"cubic-bezier(0.25, 1, 0.5, 1)\",\n} as const;\n\nexport const radii = {\n btn: \"7px\",\n input: \"7px\",\n pill: \"5px\",\n card: \"12px\",\n icon: \"4px\",\n full: \"9999px\",\n} as const;\n\nexport const shadows = {\n quiet: \"0 1px 1px rgba(16, 20, 36, 0.03), 0 1px 3px rgba(16, 20, 36, 0.05)\",\n card: \"0 1px 2px rgba(16, 20, 36, 0.04), 0 2px 4px -2px rgba(16, 20, 36, 0.04), 0 8px 16px -6px rgba(16, 20, 36, 0.08)\",\n pop: \"0 0 0 1px rgba(16, 20, 36, 0.04), 0 2px 4px -1px rgba(16, 20, 36, 0.05), 0 6px 12px -3px rgba(16, 20, 36, 0.07), 0 16px 32px -8px rgba(16, 20, 36, 0.12)\",\n focusRing: \"0 0 0 2px #ffffff, 0 0 0 4px #6c42f8\",\n} as const;\n\nexport const overlays = {\n hover: \"rgba(16, 20, 36, 0.04)\",\n active: \"rgba(16, 20, 36, 0.07)\",\n} as const;\n\nexport const layout = {\n shellSidebarWidth: \"200px\",\n shellHeaderHeight: \"56px\",\n contentPad: \"32px\",\n} as const;\n\n/**\n * Spacing — 4px base scale. Components mostly use arbitrary values;\n * this scale is exposed for programmatic access (e.g. design-tool sync).\n */\nexport const spacing = {\n unit: \"4px\",\n 4: \"4px\",\n 8: \"8px\",\n 12: \"12px\",\n 16: \"16px\",\n 20: \"20px\",\n 24: \"24px\",\n 28: \"28px\",\n 32: \"32px\",\n 36: \"36px\",\n 40: \"40px\",\n 64: \"64px\",\n 80: \"80px\",\n 180: \"180px\",\n} as const;\n\n/**\n * Surface palette — the four canonical layers. Mirrors --color-bg / -2 /\n * --color-surface / --color-surface-2.\n */\nexport const surfaces = {\n bg: \"#ffffff\",\n bg2: \"#f1f3f8\",\n surface: \"#ffffff\",\n surface2: \"#f7f8fc\",\n} as const;\n\nexport const motion = {\n ease: {\n outQuart: \"cubic-bezier(0.25, 1, 0.5, 1)\",\n out: \"cubic-bezier(0.16, 1, 0.3, 1)\",\n in: \"cubic-bezier(0.7, 0, 0.84, 0)\",\n inOut: \"cubic-bezier(0.65, 0, 0.35, 1)\",\n },\n duration: {\n instant: \"100ms\",\n fast: \"150ms\",\n normal: \"250ms\",\n slow: \"400ms\",\n },\n} as const;\n\n/**\n * Icon boxes — the four sizes of target architecture §9.3. These are the boxes\n * the library actually draws; `Icon`'s `size` prop maps onto them (W3-18).\n */\nexport const iconSizes = {\n xs: \"12px\",\n sm: \"14px\",\n md: \"16px\",\n lg: \"20px\",\n} as const;\n\n/**\n * Global stacking layers — target architecture §21. Use them only for\n * portalled surfaces and page chrome; anything else creates a local stacking\n * context and uses small local integers.\n *\n * `popover` is the layer the CSS still spells `--z-dropdown`; the legacy name\n * keeps working and resolves to the same value.\n */\nexport const zIndex = {\n base: 0,\n sticky: 100,\n overlay: 200,\n modal: 300,\n popover: 400,\n toast: 500,\n tooltip: 600,\n} as const;\n\n/**\n * Breakpoints — Tailwind's defaults, restated so a media query built in JS\n * (`useBreakpoint`, a chart's responsive config) reads the same numbers the\n * `sm:`…`2xl:` variants do.\n */\nexport const breakpoints = {\n sm: \"40rem\",\n md: \"48rem\",\n lg: \"64rem\",\n xl: \"80rem\",\n \"2xl\": \"96rem\",\n} as const;\n\nexport const reference = {\n colors,\n typography,\n radii,\n shadows,\n overlays,\n layout,\n motion,\n spacing,\n surfaces,\n iconSizes,\n zIndex,\n breakpoints,\n} as const;\n\nexport type ReferenceTokens = typeof reference;\nexport type ColorName = keyof typeof colors;\n","/* GENERATED FILE — do not edit.\n * Source: tokens/src (DTCG, ADR-003).\n * Generator: tokens/build/lib/generate-ts.mjs, template tokens/build/templates/system.ts.tmpl.\n * Change the token files and run `pnpm tokens:build`; `pnpm tokens:check`\n * fails when this file is out of date. */\n/**\n * System tokens — suite semantic mappings as CSS variable references.\n *\n * Use these from JS (e.g. inline styles, Storybook decorators, motion configs)\n * when you can't use a Tailwind utility class. Component CSS should prefer the\n * generated utilities (`bg-bg`, `text-fg-2`, `border-rule`, `bg-pro-fg`, etc.)\n * which Tailwind 4 emits from `--color-*` tokens declared in ./tokens.css.\n *\n * Themes (.dark) re-map the underlying CSS variables; these references stay valid.\n */\n\nexport const systemTokens = {\n color: {\n /* Surfaces */\n bg: \"var(--color-bg)\",\n bg2: \"var(--color-bg-2)\",\n bg3: \"var(--color-bg-3)\",\n surface: \"var(--color-surface)\",\n surface2: \"var(--color-surface-2)\",\n\n /* Foreground */\n fg: \"var(--color-fg)\",\n fg2: \"var(--color-fg-2)\",\n fg3: \"var(--color-fg-3)\",\n fg4: \"var(--color-fg-4)\",\n fg5: \"var(--color-fg-5)\",\n\n /* Rules */\n rule: \"var(--color-rule)\",\n ruleSoft: \"var(--color-rule-soft)\",\n ruleStrong: \"var(--color-rule-strong)\",\n\n /* Accent (purple) */\n accent: \"var(--color-accent)\",\n accent2: \"var(--color-accent-2)\",\n accentTint: \"var(--color-accent-tint)\",\n accentHover: \"var(--color-accent-hover)\",\n accentActive: \"var(--color-accent-active)\",\n accentRing: \"var(--color-accent-ring)\",\n\n /* Stable cross-product CTA; deliberately independent of [data-brand]. */\n suiteAction: \"var(--color-suite-action)\",\n suiteActionHover: \"var(--color-suite-action-hover)\",\n suiteActionActive: \"var(--color-suite-action-active)\",\n fgOnSuiteAction: \"var(--color-fg-on-suite-action)\",\n\n /* Brand — ambient product family; follows the active [data-brand] scope,\n defaulting to Pro. Prefer these (and the generated bg-brand / text-brand\n / border-brand-line / text-fg-on-brand utilities) for scope-aware chrome\n so the product never appears in a class name. */\n brand: \"var(--color-brand)\",\n brandHover: \"var(--color-brand-hover)\",\n brandActive: \"var(--color-brand-active)\",\n brandDisabled: \"var(--color-brand-disabled)\",\n brandBg: \"var(--color-brand-bg)\",\n brandBgHover: \"var(--color-brand-bg-hover)\",\n brandBgActive: \"var(--color-brand-bg-active)\",\n brandLine: \"var(--color-brand-line)\",\n brandRing: \"var(--color-brand-ring)\",\n fgOnBrand: \"var(--color-fg-on-brand)\",\n\n /* Pro (purple) */\n proBg: \"var(--color-pro-bg)\",\n proBgHover: \"var(--color-pro-bg-hover)\",\n proBgActive: \"var(--color-pro-bg-active)\",\n proFg: \"var(--color-pro-fg)\",\n proHover: \"var(--color-pro-hover)\",\n proActive: \"var(--color-pro-active)\",\n proDisabled: \"var(--color-pro-disabled)\",\n proLine: \"var(--color-pro-line)\",\n proRing: \"var(--color-pro-ring)\",\n auditFg: \"var(--color-audit-fg)\",\n auditHover: \"var(--color-audit-hover)\",\n auditActive: \"var(--color-audit-active)\",\n auditDisabled: \"var(--color-audit-disabled)\",\n auditBg: \"var(--color-audit-bg)\",\n auditBgHover: \"var(--color-audit-bg-hover)\",\n auditBgActive: \"var(--color-audit-bg-active)\",\n auditLine: \"var(--color-audit-line)\",\n auditRing: \"var(--color-audit-ring)\",\n booksFg: \"var(--color-books-fg)\",\n booksHover: \"var(--color-books-hover)\",\n booksActive: \"var(--color-books-active)\",\n booksDisabled: \"var(--color-books-disabled)\",\n booksBg: \"var(--color-books-bg)\",\n booksBgHover: \"var(--color-books-bg-hover)\",\n booksBgActive: \"var(--color-books-bg-active)\",\n booksLine: \"var(--color-books-line)\",\n booksRing: \"var(--color-books-ring)\",\n taxFg: \"var(--color-tax-fg)\",\n taxHover: \"var(--color-tax-hover)\",\n taxActive: \"var(--color-tax-active)\",\n taxDisabled: \"var(--color-tax-disabled)\",\n taxBg: \"var(--color-tax-bg)\",\n taxBgHover: \"var(--color-tax-bg-hover)\",\n taxBgActive: \"var(--color-tax-bg-active)\",\n taxLine: \"var(--color-tax-line)\",\n taxRing: \"var(--color-tax-ring)\",\n\n /* On-brand — text/icon color on a filled brand/product surface */\n fgOnAccent: \"var(--color-fg-on-accent)\",\n fgOnPro: \"var(--color-fg-on-pro)\",\n fgOnAudit: \"var(--color-fg-on-audit)\",\n fgOnBooks: \"var(--color-fg-on-books)\",\n fgOnTax: \"var(--color-fg-on-tax)\",\n\n /* Disabled */\n fgDisabled: \"var(--color-fg-disabled)\",\n bgDisabled: \"var(--color-bg-disabled)\",\n\n /* Overlays */\n overlayHover: \"var(--color-overlay-hover)\",\n overlayActive: \"var(--color-overlay-active)\",\n\n /* Status */\n successFg: \"var(--color-success-fg)\",\n successBg: \"var(--color-success-bg)\",\n successLine: \"var(--color-success-line)\",\n warningFg: \"var(--color-warning-fg)\",\n warningBg: \"var(--color-warning-bg)\",\n warningLine: \"var(--color-warning-line)\",\n dangerFg: \"var(--color-danger-fg)\",\n dangerBg: \"var(--color-danger-bg)\",\n dangerLine: \"var(--color-danger-line)\",\n\n /* Data-viz — chart series ramp + area gradient stops */\n chart1: \"var(--color-chart-1)\",\n chart2: \"var(--color-chart-2)\",\n chart3: \"var(--color-chart-3)\",\n chart4: \"var(--color-chart-4)\",\n chartLine: \"var(--color-chart-line)\",\n chartAreaFrom: \"var(--color-chart-area-from)\",\n chartAreaTo: \"var(--color-chart-area-to)\",\n\n /* Practice service tones — fill + track tint */\n serviceTax: \"var(--color-service-tax)\",\n serviceTaxBg: \"var(--color-service-tax-bg)\",\n serviceAudit: \"var(--color-service-audit)\",\n serviceAuditBg: \"var(--color-service-audit-bg)\",\n serviceAccounting: \"var(--color-service-accounting)\",\n serviceAccountingBg: \"var(--color-service-accounting-bg)\",\n },\n\n /** Ordered chart series ramp — index a series by position, cycle with `% 4`. */\n chart: [\n \"var(--color-chart-1)\",\n \"var(--color-chart-2)\",\n \"var(--color-chart-3)\",\n \"var(--color-chart-4)\",\n ],\n\n gradient: {\n brand: \"var(--gradient-brand)\",\n pro: \"var(--gradient-pro)\",\n audit: \"var(--gradient-audit)\",\n books: \"var(--gradient-books)\",\n tax: \"var(--gradient-tax)\",\n },\n\n shadow: {\n quiet: \"var(--shadow-quiet)\",\n card: \"var(--shadow-card)\",\n pop: \"var(--shadow-pop)\",\n focusRing: \"var(--shadow-focus-ring)\",\n xs: \"var(--shadow-xs)\",\n sm: \"var(--shadow-sm)\",\n md: \"var(--shadow-md)\",\n lg: \"var(--shadow-lg)\",\n xl: \"var(--shadow-xl)\",\n \"2xl\": \"var(--shadow-2xl)\",\n },\n\n radius: {\n btn: \"var(--radius-btn)\",\n input: \"var(--radius-input)\",\n pill: \"var(--radius-pill)\",\n card: \"var(--radius-card)\",\n icon: \"var(--radius-icon)\",\n full: \"var(--radius-full)\",\n },\n\n type: {\n family: {\n display: \"var(--font-display)\",\n body: \"var(--font-body)\",\n mono: \"var(--font-mono)\",\n },\n weight: {\n regular: \"var(--font-weight-regular)\",\n medium: \"var(--font-weight-medium)\",\n semibold: \"var(--font-weight-semibold)\",\n bold: \"var(--font-weight-bold)\",\n },\n },\n\n motion: {\n ease: {\n outQuart: \"var(--ease-out-quart)\",\n out: \"var(--ease-out)\",\n in: \"var(--ease-in)\",\n inOut: \"var(--ease-in-out)\",\n },\n duration: {\n instant: \"var(--duration-instant)\",\n fast: \"var(--duration-fast)\",\n normal: \"var(--duration-normal)\",\n slow: \"var(--duration-slow)\",\n },\n semantic: {\n duration: {\n press: \"var(--motion-duration-press)\",\n feedback: \"var(--motion-duration-feedback)\",\n overlay: \"var(--motion-duration-overlay)\",\n spatial: \"var(--motion-duration-spatial)\",\n deliberate: \"var(--motion-duration-deliberate)\",\n },\n ease: {\n enter: \"var(--motion-ease-enter)\",\n exit: \"var(--motion-ease-exit)\",\n move: \"var(--motion-ease-move)\",\n },\n },\n },\n\n /**\n * Control sizing (amendment A1, W2-03). One outer height per size name, with\n * the padding, gap, label size and glyph size derived from it.\n *\n * **Nothing reads these yet** and the numbers are gated on decision D5\n * (implementation plan §3) — what each control renders *today* is in\n * `docs/design-system/control-sizes.md`, and W2-05 is the task that unifies\n * them. Referencing the scale here is also what keeps the custom properties\n * in the published stylesheet, so `[data-ds-density=\"compact\"]` has something\n * to re-point.\n */\n control: {\n height: {\n xs: \"var(--control-height-xs)\",\n sm: \"var(--control-height-sm)\",\n md: \"var(--control-height-md)\",\n lg: \"var(--control-height-lg)\",\n xl: \"var(--control-height-xl)\",\n },\n paddingX: {\n xs: \"var(--control-padding-x-xs)\",\n sm: \"var(--control-padding-x-sm)\",\n md: \"var(--control-padding-x-md)\",\n lg: \"var(--control-padding-x-lg)\",\n xl: \"var(--control-padding-x-xl)\",\n },\n gap: {\n xs: \"var(--control-gap-xs)\",\n sm: \"var(--control-gap-sm)\",\n md: \"var(--control-gap-md)\",\n lg: \"var(--control-gap-lg)\",\n xl: \"var(--control-gap-xl)\",\n },\n fontSize: {\n xs: \"var(--control-font-size-xs)\",\n sm: \"var(--control-font-size-sm)\",\n md: \"var(--control-font-size-md)\",\n lg: \"var(--control-font-size-lg)\",\n xl: \"var(--control-font-size-xl)\",\n },\n icon: {\n xs: \"var(--control-icon-xs)\",\n sm: \"var(--control-icon-sm)\",\n md: \"var(--control-icon-md)\",\n lg: \"var(--control-icon-lg)\",\n xl: \"var(--control-icon-xl)\",\n },\n },\n\n layout: {\n shellSidebarWidth: \"var(--shell-sidebar-w)\",\n shellSidebarRailWidth: \"var(--shell-sidebar-w-rail)\",\n shellHeaderHeight: \"var(--shell-header-h)\",\n contentPad: \"var(--content-pad)\",\n },\n\n z: {\n base: \"var(--z-base)\",\n dropdown: \"var(--z-dropdown)\",\n sticky: \"var(--z-sticky)\",\n overlay: \"var(--z-overlay)\",\n modal: \"var(--z-modal)\",\n toast: \"var(--z-toast)\",\n tooltip: \"var(--z-tooltip)\",\n },\n} as const;\n\nexport type SystemTokens = typeof systemTokens;\n","/**\n * sRGB colour arithmetic for the runtime brand contract (W1-20).\n *\n * Everything here is integer or IEEE-754 arithmetic over committed constants.\n * In particular the sRGB transfer function is a **committed lookup table**\n * rather than a call to `Math.pow`: `Math.pow` is implementation-approximated,\n * so two engines may return doubles that differ in the last bit, and a\n * comparison sitting exactly on a contrast threshold could then resolve one way\n * in Node and the other way in a browser. Addition, multiplication, division\n * and `Math.round` are exactly specified, so with the table as the only source\n * of transferred values every result below is bit-identical on every conforming\n * engine (amendment A3 — SSR determinism).\n *\n * `__tests__/srgb.test.ts` checks the table against the formula, so the\n * constants stay auditable.\n */\n\n/** A colour as three integer sRGB channels, 0–255. */\nexport type Rgb = readonly [number, number, number];\n\n/**\n * The sRGB transfer function applied to each of the 256 channel bytes, scaled\n * by 1e6 and rounded to the nearest integer. Index = channel byte.\n *\n * Six decimal places is far finer than the two the WCAG contrast thresholds are\n * quoted to — the worst-case effect on a ratio is about 2e-5 — and keeps the\n * table small enough to ship on a data entry point.\n */\nconst SRGB_TO_LINEAR_1E6: readonly number[] = [\n 0, 304, 607, 911, 1214, 1518, 1821, 2125, 2428, 2732, 3035, 3347, 3677, 4025, 4391, 4777, 5182,\n 5605, 6049, 6512, 6995, 7499, 8023, 8568, 9134, 9721, 10330, 10960, 11612, 12286, 12983, 13702,\n 14444, 15209, 15996, 16807, 17642, 18500, 19382, 20289, 21219, 22174, 23153, 24158, 25187, 26241,\n 27321, 28426, 29557, 30713, 31896, 33105, 34340, 35601, 36889, 38204, 39546, 40915, 42311, 43735,\n 45186, 46665, 48172, 49707, 51269, 52861, 54480, 56128, 57805, 59511, 61246, 63010, 64803, 66626,\n 68478, 70360, 72272, 74214, 76185, 78187, 80220, 82283, 84376, 86500, 88656, 90842, 93059, 95307,\n 97587, 99899, 102242, 104616, 107023, 109462, 111932, 114435, 116971, 119538, 122139, 124772,\n 127438, 130136, 132868, 135633, 138432, 141263, 144128, 147027, 149960, 152926, 155926, 158961,\n 162029, 165132, 168269, 171441, 174647, 177888, 181164, 184475, 187821, 191202, 194618, 198069,\n 201556, 205079, 208637, 212231, 215861, 219526, 223228, 226966, 230740, 234551, 238398, 242281,\n 246201, 250158, 254152, 258183, 262251, 266356, 270498, 274677, 278894, 283149, 287441, 291771,\n 296138, 300544, 304987, 309469, 313989, 318547, 323143, 327778, 332452, 337164, 341914, 346704,\n 351533, 356400, 361307, 366253, 371238, 376262, 381326, 386429, 391572, 396755, 401978, 407240,\n 412543, 417885, 423268, 428690, 434154, 439657, 445201, 450786, 456411, 462077, 467784, 473531,\n 479320, 485150, 491021, 496933, 502886, 508881, 514918, 520996, 527115, 533276, 539479, 545724,\n 552011, 558340, 564712, 571125, 577580, 584078, 590619, 597202, 603827, 610496, 617207, 623960,\n 630757, 637597, 644480, 651406, 658375, 665387, 672443, 679542, 686685, 693872, 701102, 708376,\n 715694, 723055, 730461, 737910, 745404, 752942, 760525, 768151, 775822, 783538, 791298, 799103,\n 806952, 814847, 822786, 830770, 838799, 846873, 854993, 863157, 871367, 879622, 887923, 896269,\n 904661, 913099, 921582, 930111, 938686, 947307, 955973, 964686, 973445, 982251, 991102, 1000000,\n];\n\nconst HEX_3 = /^#[0-9a-fA-F]{3}$/;\nconst HEX_6 = /^#[0-9a-fA-F]{6}$/;\nconst HEX_DIGITS = \"0123456789abcdef\";\n\n/** `#rgb` and `#rrggbb`, in either case. Returns `null` for anything else. */\nexport function parseHexColor(value: string): Rgb | null {\n if (HEX_6.test(value)) {\n const n = Number.parseInt(value.slice(1), 16);\n return [(n >> 16) & 0xff, (n >> 8) & 0xff, n & 0xff];\n }\n if (HEX_3.test(value)) {\n const n = Number.parseInt(value.slice(1), 16);\n const r = (n >> 8) & 0xf;\n const g = (n >> 4) & 0xf;\n const b = n & 0xf;\n return [r * 17, g * 17, b * 17];\n }\n return null;\n}\n\n/** Lower-case `#rrggbb`. Built by table lookup so no locale or `toString`\n * radix behaviour can enter the output. */\nexport function formatHexColor([r, g, b]: Rgb): string {\n const byte = (v: number) => HEX_DIGITS[(v >> 4) & 0xf] + HEX_DIGITS[v & 0xf];\n return `#${byte(r)}${byte(g)}${byte(b)}`;\n}\n\n/** WCAG relative luminance, from the committed transfer table. */\nexport function relativeLuminance([r, g, b]: Rgb): number {\n const lr = SRGB_TO_LINEAR_1E6[r] / 1e6;\n const lg = SRGB_TO_LINEAR_1E6[g] / 1e6;\n const lb = SRGB_TO_LINEAR_1E6[b] / 1e6;\n return 0.2126 * lr + 0.7152 * lg + 0.0722 * lb;\n}\n\n/** WCAG 2.2 contrast ratio between two opaque colours (1–21). */\nexport function contrastRatio(a: Rgb, b: Rgb): number {\n const la = relativeLuminance(a);\n const lb = relativeLuminance(b);\n const lighter = la > lb ? la : lb;\n const darker = la > lb ? lb : la;\n return (lighter + 0.05) / (darker + 0.05);\n}\n\n/**\n * `color-mix(in srgb, <a> <percent>%, <b>)` evaluated on integer channels.\n * `percent` is an integer 0–100; sRGB mixing is a straight interpolation in the\n * gamma-encoded space, which is what the browser does for `in srgb`.\n */\nexport function mixSrgb(a: Rgb, b: Rgb, percent: number): Rgb {\n const mix = (x: number, y: number) => Math.round((x * percent + y * (100 - percent)) / 100);\n return [mix(a[0], b[0]), mix(a[1], b[1]), mix(a[2], b[2])];\n}\n\nexport const WHITE: Rgb = [255, 255, 255];\nexport const BLACK: Rgb = [0, 0, 0];\n\n/**\n * Pure black or pure white, whichever has more contrast against `fill`.\n *\n * The two endpoints cross over at a luminance of about 0.1791, where both reach\n * 4.58:1, so the winner is **always** at or above 4.58:1 — WCAG 2.2 AA for\n * normal text (4.5:1) with margin, for every possible fill. Any near-black ink\n * short of `#000000` loses that property, which is why this returns the\n * extremes rather than a token value.\n */\nexport function readableInk(fill: Rgb): Rgb {\n return contrastRatio(BLACK, fill) >= contrastRatio(WHITE, fill) ? BLACK : WHITE;\n}\n\n/**\n * The least-darkened mix of `colour` towards black that reaches `minRatio`\n * against `against`, searched over the 101 integer mix percentages from 100\n * (untouched) downwards. 0% is black, so the search terminates whenever\n * `against` is light enough for black to pass — true for every background this\n * module uses.\n */\nexport function darkenUntilContrast(colour: Rgb, against: Rgb, minRatio: number): Rgb {\n for (let percent = 100; percent >= 0; percent -= 1) {\n const candidate = mixSrgb(colour, BLACK, percent);\n if (contrastRatio(candidate, against) >= minRatio) return candidate;\n }\n return BLACK;\n}\n","/**\n * `createBrandTheme()` — the runtime brand contract (W1-20, experimental).\n *\n * A white-label host has one or two colours per tenant and needs the design\n * system's brand family to follow them. Today that is done by writing the\n * design system's *legacy* variable names from application code (Assure\n * Portal's `src/lib/brand-theme.ts` writes about thirty of them onto `<body>`),\n * which couples the application to names the design system owns and gives no\n * guarantee that the result is legible.\n *\n * This function is the supported replacement: a validated seed in, a plain\n * object of `--ds-*` custom properties out, to spread into a `style` attribute\n * on whatever element scopes the brand (target architecture §12.1 rule 6 (iv)).\n *\n * Contract:\n *\n * - **Pure.** No `document`, no `window`, no clock, no randomness, no module\n * state. The same seed always yields the same object.\n * - **SSR-deterministic** (amendment A3). Every number comes from integer\n * arithmetic over a committed transfer table (`./srgb`), so server-rendered\n * markup and the first client render agree byte for byte. Asserted in Node\n * (`__tests__/brand-theme.test.ts`) and in a real browser\n * (`tests/browser/brand-theme-ssr-determinism.test.ts`) against the same\n * committed vectors.\n * - **Legible.** The fills are clamped to at least 3:1 against the light canvas\n * (WCAG 2.2 SC 1.4.11, non-text contrast), and every foreground the function\n * emits reaches at least 4.5:1 against the fill it sits on (SC 1.4.3 AA).\n * - **Shaped like a built-in brand.** The ramp uses the same percentages as the\n * generated `[data-ds-brand]` scopes in `css/tokens.css`, and the steps that\n * depend on the colour scheme stay as `color-mix(… var(--ds-color-content))`\n * exactly as those scopes do, so a runtime brand keeps working in dark mode.\n *\n * @experimental The seed shape is gated by decision D7 (white-label scope:\n * brand, plus optional accent). It may change while D7 is open.\n */\nimport {\n BLACK,\n WHITE,\n contrastRatio,\n darkenUntilContrast,\n formatHexColor,\n mixSrgb,\n parseHexColor,\n readableInk,\n type Rgb,\n} from \"./srgb\";\n\n/**\n * The seed a host supplies per tenant.\n *\n * @experimental Gated by decision D7.\n */\nexport interface BrandThemeSeed {\n /**\n * The brand fill, as `#rgb` or `#rrggbb`. Drives the `action.brand` family,\n * the focus ring and the brand gradient.\n */\n brand: string;\n /**\n * An optional second hue for the `action.accent` family, as `#rgb` or\n * `#rrggbb`. `undefined` or `null` means \"the same as `brand`\", which is what\n * the built-in `[data-ds-brand]` scopes do.\n */\n accent?: string | null;\n}\n\n/** Every custom property `createBrandTheme()` sets, in output order. */\nexport const BRAND_THEME_PROPERTIES = [\n \"--ds-color-action-brand-bg\",\n \"--ds-color-action-brand-bg-hover\",\n \"--ds-color-action-brand-bg-active\",\n \"--ds-color-action-brand-bg-disabled\",\n \"--ds-color-action-brand-subtle-bg\",\n \"--ds-color-action-brand-subtle-bg-hover\",\n \"--ds-color-action-brand-subtle-bg-active\",\n \"--ds-color-action-brand-border\",\n \"--ds-color-action-brand-ring\",\n \"--ds-color-action-brand-fg\",\n \"--ds-color-action-accent-bg\",\n \"--ds-color-action-accent-bg-strong\",\n \"--ds-color-action-accent-bg-hover\",\n \"--ds-color-action-accent-bg-active\",\n \"--ds-color-action-accent-subtle-bg\",\n \"--ds-color-action-accent-ring\",\n \"--ds-color-action-accent-fg\",\n \"--ds-color-border-focus\",\n \"--ds-focus-ring-color\",\n \"--ds-focus-ring-border\",\n \"--ds-gradient-brand\",\n \"--ds-compat-color-brand-soft\",\n \"--ds-compat-color-brand-soft-foreground\",\n] as const;\n\n/** One of the custom properties `createBrandTheme()` sets. */\nexport type BrandThemeProperty = (typeof BRAND_THEME_PROPERTIES)[number];\n\n/**\n * The style object `createBrandTheme()` returns: every property of\n * {@link BRAND_THEME_PROPERTIES} with a CSS value.\n *\n * React types `style` as `CSSProperties`, which has no index signature for\n * custom properties, so spread it or cast it at the call site:\n * `style={{ ...createBrandTheme(seed) }}`.\n *\n * @experimental Gated by decision D7.\n */\nexport type BrandTheme = { readonly [P in BrandThemeProperty]: string };\n\n/** Minimum contrast a fill must reach against the light canvas (SC 1.4.11). */\nconst MIN_FILL_CONTRAST = 3;\n/** Minimum contrast a foreground must reach against its fill (SC 1.4.3 AA). */\nconst MIN_TEXT_CONTRAST = 4.5;\n\n/** The light canvas (`--ds-color-canvas`), the surface a fill sits on. */\nconst CANVAS: Rgb = WHITE;\n\n/**\n * Ramp percentages, copied from the generated brand scopes in\n * `tokens/build/generate-ds-css.mjs`, so a runtime brand and a built-in one are\n * the same shape.\n */\nconst RAMP = {\n hover: 88,\n active: 74,\n disabled: 42,\n subtle: 8,\n subtleHover: 13,\n subtleActive: 20,\n border: 45,\n ring: 20,\n /** The soft tint and its ink, which the app-vocabulary bridge reads. */\n soft: 12,\n softInk: 68,\n} as const;\n\n/** `color-mix(in srgb, <colour> <percent>%, var(--ds-color-content))` — the\n * scheme-aware steps, left unresolved exactly as the built-in scopes leave\n * them, so a runtime brand still darkens in light mode and lightens in dark. */\nconst towardsInk = (colour: string, percent: number) =>\n `color-mix(in srgb, ${colour} ${percent}%, var(--ds-color-content))`;\n\n/** `color-mix(in srgb, <colour> <percent>%, transparent)`. */\nconst towardsTransparent = (colour: string, percent: number) =>\n `color-mix(in srgb, ${colour} ${percent}%, transparent)`;\n\nconst ACCEPTED = '#rgb or #rrggbb, for example \"#6c42f8\"';\nconst SEED_KEYS = new Set([\"brand\", \"accent\"]);\n\nfunction describe(value: unknown): string {\n if (typeof value === \"string\") return JSON.stringify(value);\n if (value === null) return \"null\";\n if (Array.isArray(value)) return \"an array\";\n return typeof value;\n}\n\nfunction readColour(key: \"brand\" | \"accent\", value: unknown): Rgb {\n if (typeof value !== \"string\") {\n throw new TypeError(\n `createBrandTheme: \"${key}\" must be a hex colour string (${ACCEPTED}), received ${describe(value)}.`,\n );\n }\n const rgb = parseHexColor(value);\n if (!rgb) {\n throw new TypeError(\n `createBrandTheme: \"${key}\" must be a hex colour (${ACCEPTED}), received ${describe(value)}. ` +\n \"Named colours, rgb()/hsl() and eight-digit hex with alpha are not accepted — a brand seed must be opaque and unambiguous.\",\n );\n }\n return rgb;\n}\n\nfunction validateSeed(seed: BrandThemeSeed): void {\n if (seed === null || typeof seed !== \"object\" || Array.isArray(seed)) {\n throw new TypeError(\n `createBrandTheme: expected a seed object with a \"brand\" colour, received ${describe(seed)}.`,\n );\n }\n const unknown = Object.keys(seed).filter((key) => !SEED_KEYS.has(key));\n if (unknown.length) {\n throw new TypeError(\n `createBrandTheme: unknown seed ${unknown.length === 1 ? \"key\" : \"keys\"} ${unknown\n .map((key) => JSON.stringify(key))\n .join(\", \")}. The seed accepts \"brand\" and an optional \"accent\" (decision D7).`,\n );\n }\n}\n\n/**\n * Clamp a seed so it reads as a UI fill: at least 3:1 against the light canvas\n * (WCAG 2.2 SC 1.4.11). A seed that already passes is returned untouched, so\n * the common case is exact — `createBrandTheme({ brand: \"#6c42f8\" })` emits\n * `#6c42f8`. A pale seed is darkened by the smallest whole-percent mix towards\n * black that passes, which keeps the hue and gives up only lightness.\n */\nfunction clampFill(seed: Rgb): Rgb {\n if (contrastRatio(seed, CANVAS) >= MIN_FILL_CONTRAST) return seed;\n return darkenUntilContrast(seed, CANVAS, MIN_FILL_CONTRAST);\n}\n\n/**\n * Turn a tenant's colours into the design system's brand and accent tokens.\n *\n * ```tsx\n * const theme = createBrandTheme({ brand: firm.primaryColor, accent: firm.accentColor });\n * return <div style={{ ...theme }}>{children}</div>;\n * ```\n *\n * Apply it to the element that scopes the brand — `<body>` for a whole-tenant\n * theme, a wrapper for a preview. The properties are the same ones a built-in\n * `[data-ds-brand]` scope declares, so anything reading them (every design\n * system component, and any application CSS reading `--ds-*`) follows.\n *\n * @param seed - `brand`, and optionally `accent` (decision D7).\n * @returns A frozen object of custom property names to CSS values.\n * @throws TypeError when the seed is not an object, carries an unknown key, or\n * a colour is missing or not `#rgb`/`#rrggbb`.\n *\n * @experimental Gated by decision D7. The property set may grow, and the seed\n * shape may change, until D7 is resolved.\n */\nexport function createBrandTheme(seed: BrandThemeSeed): BrandTheme {\n validateSeed(seed);\n const brandSeed = readColour(\"brand\", seed.brand);\n const accentSeed =\n seed.accent === undefined || seed.accent === null\n ? brandSeed\n : readColour(\"accent\", seed.accent);\n\n const brand = clampFill(brandSeed);\n const accent = clampFill(accentSeed);\n const brandHex = formatHexColor(brand);\n const accentHex = formatHexColor(accent);\n\n const soft = mixSrgb(brand, WHITE, RAMP.soft);\n const softInk = darkenUntilContrast(mixSrgb(brand, BLACK, RAMP.softInk), soft, MIN_TEXT_CONTRAST);\n\n return Object.freeze({\n \"--ds-color-action-brand-bg\": brandHex,\n \"--ds-color-action-brand-bg-hover\": towardsInk(brandHex, RAMP.hover),\n \"--ds-color-action-brand-bg-active\": towardsInk(brandHex, RAMP.active),\n \"--ds-color-action-brand-bg-disabled\": formatHexColor(mixSrgb(brand, WHITE, RAMP.disabled)),\n \"--ds-color-action-brand-subtle-bg\": formatHexColor(mixSrgb(brand, WHITE, RAMP.subtle)),\n \"--ds-color-action-brand-subtle-bg-hover\": formatHexColor(\n mixSrgb(brand, WHITE, RAMP.subtleHover),\n ),\n \"--ds-color-action-brand-subtle-bg-active\": formatHexColor(\n mixSrgb(brand, WHITE, RAMP.subtleActive),\n ),\n \"--ds-color-action-brand-border\": formatHexColor(mixSrgb(brand, WHITE, RAMP.border)),\n \"--ds-color-action-brand-ring\": towardsTransparent(brandHex, RAMP.ring),\n \"--ds-color-action-brand-fg\": formatHexColor(readableInk(brand)),\n \"--ds-color-action-accent-bg\": accentHex,\n \"--ds-color-action-accent-bg-strong\": towardsInk(accentHex, RAMP.active),\n \"--ds-color-action-accent-bg-hover\": towardsInk(accentHex, RAMP.hover),\n \"--ds-color-action-accent-bg-active\": towardsInk(accentHex, RAMP.active),\n \"--ds-color-action-accent-subtle-bg\": formatHexColor(mixSrgb(accent, WHITE, RAMP.subtle)),\n \"--ds-color-action-accent-ring\": towardsTransparent(accentHex, RAMP.ring),\n \"--ds-color-action-accent-fg\": formatHexColor(readableInk(accent)),\n \"--ds-color-border-focus\": accentHex,\n \"--ds-focus-ring-color\": towardsTransparent(brandHex, RAMP.ring),\n \"--ds-focus-ring-border\": brandHex,\n \"--ds-gradient-brand\": `linear-gradient(135deg, ${brandHex}, ${towardsInk(brandHex, RAMP.hover)})`,\n \"--ds-compat-color-brand-soft\": formatHexColor(soft),\n \"--ds-compat-color-brand-soft-foreground\": formatHexColor(softInk),\n });\n}\n"]}
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"index.js"}
|
|
@@ -1,6 +1,3 @@
|
|
|
1
|
-
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
-
import { ComponentType, AnchorHTMLAttributes, Ref, ReactNode, ImgHTMLAttributes } from 'react';
|
|
3
|
-
|
|
4
1
|
/**
|
|
5
2
|
* L0 foundation (W5-20, ADR-010). The typed messages catalogue every
|
|
6
3
|
* design-system component reads its generic strings from (target architecture
|
|
@@ -366,6 +363,30 @@ interface TableMessages {
|
|
|
366
363
|
*/
|
|
367
364
|
region: string;
|
|
368
365
|
}
|
|
366
|
+
/** The copy a `StackedBarChart` renders. @experimental */
|
|
367
|
+
interface StackedBarChartMessages {
|
|
368
|
+
/**
|
|
369
|
+
* The accessible name of the horizontal scroll region the plot becomes when
|
|
370
|
+
* `minBarWidth` makes it scroll. Default `"Scrollable chart"`.
|
|
371
|
+
*/
|
|
372
|
+
region: string;
|
|
373
|
+
}
|
|
374
|
+
/** The copy a `PdfPreview` renders. @experimental */
|
|
375
|
+
interface PdfPreviewMessages {
|
|
376
|
+
/**
|
|
377
|
+
* The accessible name of the scrolling page area when no `fileName` names
|
|
378
|
+
* it. Default `"PDF preview"`.
|
|
379
|
+
*/
|
|
380
|
+
region: string;
|
|
381
|
+
}
|
|
382
|
+
/** The copy a `SpreadsheetPreview` renders. @experimental */
|
|
383
|
+
interface SpreadsheetPreviewMessages {
|
|
384
|
+
/**
|
|
385
|
+
* The accessible name of the scrolling grid area when no `fileName` names
|
|
386
|
+
* it. Default `"Spreadsheet preview"`.
|
|
387
|
+
*/
|
|
388
|
+
region: string;
|
|
389
|
+
}
|
|
369
390
|
/** The copy the `DataTable` family renders. @experimental */
|
|
370
391
|
interface DataTableMessages {
|
|
371
392
|
/** The default search placeholder. Default `"Search…"`. */
|
|
@@ -405,6 +426,13 @@ interface PeoplePickerMessages {
|
|
|
405
426
|
/** The label of the "assign to me" shortcut row. Default `"Assign to me"`. */
|
|
406
427
|
assignToMe: string;
|
|
407
428
|
}
|
|
429
|
+
/** The copy a `ComingSoon` renders around the consumer's own text (W8-08). @experimental */
|
|
430
|
+
interface ComingSoonMessages {
|
|
431
|
+
/** The eyebrow above the icon. Default `"Coming soon"`. */
|
|
432
|
+
eyebrow: string;
|
|
433
|
+
/** The pill under the feature list. Default `"In Development"`. */
|
|
434
|
+
badge: string;
|
|
435
|
+
}
|
|
408
436
|
/**
|
|
409
437
|
* The whole catalogue, one namespace per component. This is the type a
|
|
410
438
|
* consumer's i18n lint can check for completeness.
|
|
@@ -454,7 +482,11 @@ interface DsMessages {
|
|
|
454
482
|
errorState: ErrorStateMessages;
|
|
455
483
|
tableStates: TableStatesMessages;
|
|
456
484
|
table: TableMessages;
|
|
485
|
+
stackedBarChart: StackedBarChartMessages;
|
|
486
|
+
pdfPreview: PdfPreviewMessages;
|
|
487
|
+
spreadsheetPreview: SpreadsheetPreviewMessages;
|
|
457
488
|
peoplePicker: PeoplePickerMessages;
|
|
489
|
+
comingSoon: ComingSoonMessages;
|
|
458
490
|
}
|
|
459
491
|
/** A component namespace of the catalogue. @experimental */
|
|
460
492
|
type DsMessageNamespace = keyof DsMessages;
|
|
@@ -468,142 +500,4 @@ type DsMessagesOverride = {
|
|
|
468
500
|
[N in DsMessageNamespace]?: Partial<DsMessages[N]>;
|
|
469
501
|
};
|
|
470
502
|
|
|
471
|
-
|
|
472
|
-
* L0 foundation (W5-21, ADR-010). The adapters through which the design
|
|
473
|
-
* system renders an application's router link and image component without
|
|
474
|
-
* importing them itself.
|
|
475
|
-
*
|
|
476
|
-
* `LinkButton` and `Logo` read these from `DesignSystemProvider`. Without a
|
|
477
|
-
* provider they keep their static `next/link` / `next/image` imports (C-NEXT-PEER)
|
|
478
|
-
* until 2.0, so nothing changes for a Next.js app that renders no provider;
|
|
479
|
-
* `@assure-one/design-system/next` exports a provider that passes exactly
|
|
480
|
-
* those two, and a non-Next app passes its own.
|
|
481
|
-
*/
|
|
482
|
-
/** The props a link adapter receives: a plain anchor with an `href`. @experimental */
|
|
483
|
-
interface LinkComponentProps extends AnchorHTMLAttributes<HTMLAnchorElement> {
|
|
484
|
-
href: string;
|
|
485
|
-
ref?: Ref<HTMLAnchorElement>;
|
|
486
|
-
children?: ReactNode;
|
|
487
|
-
}
|
|
488
|
-
/**
|
|
489
|
-
* A component that renders a link — `next/link`, React Router's `Link`, or a
|
|
490
|
-
* plain `<a>`. It must forward every anchor attribute and the ref.
|
|
491
|
-
*
|
|
492
|
-
* @experimental
|
|
493
|
-
*/
|
|
494
|
-
type LinkComponent = ComponentType<LinkComponentProps>;
|
|
495
|
-
/** The props an image adapter receives: `src`, `alt` and the intrinsic size. @experimental */
|
|
496
|
-
interface ImageComponentProps extends Omit<ImgHTMLAttributes<HTMLImageElement>, "src" | "width" | "height"> {
|
|
497
|
-
src: string;
|
|
498
|
-
alt: string;
|
|
499
|
-
width: number;
|
|
500
|
-
height: number;
|
|
501
|
-
/** Load eagerly, above the fold (`next/image` `priority`). */
|
|
502
|
-
priority?: boolean;
|
|
503
|
-
}
|
|
504
|
-
/**
|
|
505
|
-
* A component that renders an image — `next/image` or a plain `<img>`.
|
|
506
|
-
*
|
|
507
|
-
* @experimental
|
|
508
|
-
*/
|
|
509
|
-
type ImageComponent = ComponentType<ImageComponentProps>;
|
|
510
|
-
|
|
511
|
-
/** Text direction the provider announces. Context only until components adopt logical properties (W5-22). @experimental */
|
|
512
|
-
type DsDirection = "ltr" | "rtl";
|
|
513
|
-
/**
|
|
514
|
-
* The resolved messages of one component namespace: the component's own
|
|
515
|
-
* `messages` prop wins over the provider's catalogue, which wins over the
|
|
516
|
-
* English default. Works without a provider (English). Stable while the three
|
|
517
|
-
* inputs are.
|
|
518
|
-
*
|
|
519
|
-
* @experimental
|
|
520
|
-
*/
|
|
521
|
-
declare function useDsMessages<N extends DsMessageNamespace>(namespace: N, override?: Partial<DsMessages[N]> | undefined): DsMessages[N];
|
|
522
|
-
|
|
523
|
-
/**
|
|
524
|
-
* Props of `DesignSystemProvider` (W5-20, ADR-010, target architecture §43).
|
|
525
|
-
*
|
|
526
|
-
* @experimental
|
|
527
|
-
*/
|
|
528
|
-
interface DesignSystemProviderProps {
|
|
529
|
-
/**
|
|
530
|
-
* Overrides for the generic strings components render (Clear, No results,
|
|
531
|
-
* optional…), by component namespace. Any subset; omitted keys keep their
|
|
532
|
-
* English default. A component's own `messages` prop still wins. The full
|
|
533
|
-
* list is `DsMessages` (and `messages/en.json` in the package source).
|
|
534
|
-
*/
|
|
535
|
-
messages?: DsMessagesOverride;
|
|
536
|
-
/**
|
|
537
|
-
* The BCP 47 tag locale-aware components format with (dates, numbers).
|
|
538
|
-
* Default `"en-US"` on the server and on the client (amendment A3): pass the
|
|
539
|
-
* locale your app already knows server-side; never `navigator.language`
|
|
540
|
-
* during render.
|
|
541
|
-
*/
|
|
542
|
-
locale?: string;
|
|
543
|
-
/** Text direction. Context only for now — components adopt logical properties in W5-22. */
|
|
544
|
-
dir?: DsDirection;
|
|
545
|
-
/**
|
|
546
|
-
* Where portalled content (dialogs, menus, tooltips) mounts. `undefined`
|
|
547
|
-
* (default) keeps Radix's `document.body`. Read by the shared Portal of the
|
|
548
|
-
* overlay primitives as they adopt it.
|
|
549
|
-
*/
|
|
550
|
-
portalContainer?: HTMLElement | null;
|
|
551
|
-
/**
|
|
552
|
-
* The application's router link, rendered by `LinkButton` and `Logo`
|
|
553
|
-
* instead of their static `next/link` import (W5-21). A Next.js app uses
|
|
554
|
-
* `NextDesignSystemProvider` from `@assure-one/design-system/next`.
|
|
555
|
-
*/
|
|
556
|
-
linkComponent?: LinkComponent;
|
|
557
|
-
/** The application's image component, rendered by `Logo` instead of its static `next/image` import. */
|
|
558
|
-
imageComponent?: ImageComponent;
|
|
559
|
-
/**
|
|
560
|
-
* Shared tooltip defaults (`delayDuration`, `skipDelayDuration`,
|
|
561
|
-
* `disableHoverableContent`) of the one `TooltipProvider` the provider
|
|
562
|
-
* mounts. Every `Tooltip` below uses it instead of wrapping a provider per
|
|
563
|
-
* instance (W5-12), so sibling tooltips open instantly within
|
|
564
|
-
* `skipDelayDuration` of each other; `delayDuration` defaults to the 300ms
|
|
565
|
-
* `Tooltip` renders without a provider. `false` mounts no provider and
|
|
566
|
-
* every `Tooltip` falls back to its own.
|
|
567
|
-
*/
|
|
568
|
-
tooltip?: TooltipDefaults | false;
|
|
569
|
-
/**
|
|
570
|
-
* Mount the toast region (`ToastProvider`) so `useToast()` works anywhere
|
|
571
|
-
* below. Off by default: an app that already renders `ToastProvider` keeps
|
|
572
|
-
* its single region (the `aria-label="Notifications"` region consumers
|
|
573
|
-
* select on, C-TOAST-ARIALABEL, must exist exactly once).
|
|
574
|
-
*/
|
|
575
|
-
toasts?: boolean;
|
|
576
|
-
/**
|
|
577
|
-
* Mount the `useConfirm` / `usePrompt` host (`ConfirmHost`, W5-18) so the
|
|
578
|
-
* imperative confirm works anywhere below. Off by default: an app that
|
|
579
|
-
* renders its own `ConfirmHost` keeps its single queue.
|
|
580
|
-
*/
|
|
581
|
-
confirm?: boolean;
|
|
582
|
-
children?: ReactNode;
|
|
583
|
-
}
|
|
584
|
-
/** The Radix `TooltipProvider` props the provider forwards. @experimental */
|
|
585
|
-
interface TooltipDefaults {
|
|
586
|
-
delayDuration?: number;
|
|
587
|
-
skipDelayDuration?: number;
|
|
588
|
-
disableHoverableContent?: boolean;
|
|
589
|
-
}
|
|
590
|
-
/**
|
|
591
|
-
* The optional application-level provider of the design system (W5-20,
|
|
592
|
-
* ADR-010). Thin by design: it owns only what CSS cannot — the messages
|
|
593
|
-
* catalogue, the locale, the text direction, the portal container, the link
|
|
594
|
-
* and image adapters, shared tooltip defaults and (opt-in) the toast region.
|
|
595
|
-
* Colour scheme, brand and density stay attributes + CSS on `<html>`.
|
|
596
|
-
*
|
|
597
|
-
* Everything works identically without it: every component falls back to
|
|
598
|
-
* the English catalogue, `"en-US"`, `document.body` and its static `next/*`
|
|
599
|
-
* import. The provider renders **no DOM wrapper** (only the toast region when
|
|
600
|
-
* `toasts` is set), so it cannot cause a hydration mismatch.
|
|
601
|
-
*
|
|
602
|
-
* `confirm` mounts the `useConfirm` / `usePrompt` host (W5-18) inside the
|
|
603
|
-
* toast region, so an imperative confirm can raise a toast.
|
|
604
|
-
*
|
|
605
|
-
* @experimental
|
|
606
|
-
*/
|
|
607
|
-
declare function DesignSystemProvider({ messages, locale, dir, portalContainer, linkComponent, imageComponent, tooltip, toasts, confirm, children, }: DesignSystemProviderProps): react_jsx_runtime.JSX.Element;
|
|
608
|
-
|
|
609
|
-
export { type CommandPaletteMessages as C, type DesignSystemProviderProps as D, type ErrorStateMessages as E, type FileUploadMessages as F, type ImageComponent as I, type KeyboardShortcutsMessages as K, type LinkComponent as L, type PaginationMessages as P, type SearchInputMessages as S, type TableMessages as T, type ConfirmMessages as a, type CopyButtonMessages as b, type PhoneFieldMessages as c, type SelectMessages as d, type ToastMessages as e, type FieldMessages as f, type ComboboxMessages as g, type TableStatesMessages as h, type DataTableMessages as i, DesignSystemProvider as j, type DsDirection as k, type DsMessageNamespace as l, type DsMessages as m, type DsMessagesOverride as n, type ImageComponentProps as o, type LinkComponentProps as p, type TooltipDefaults as q, useDsMessages as u };
|
|
503
|
+
export type { ComingSoonMessages as C, DsMessageNamespace as D, ErrorStateMessages as E, FileUploadMessages as F, KeyboardShortcutsMessages as K, PaginationMessages as P, SearchInputMessages as S, TableMessages as T, DsMessages as a, DsMessagesOverride as b, CommandPaletteMessages as c, ConfirmMessages as d, CopyButtonMessages as e, PhoneFieldMessages as f, SelectMessages as g, ToastMessages as h, FieldMessages as i, ComboboxMessages as j, TableStatesMessages as k, DataTableMessages as l };
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { S as SystemTokens } from './system-DfJIVBlJ.js';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Shared component vocabulary (W3-01, ADR-007, target architecture §28).
|
|
5
|
+
*
|
|
6
|
+
* Every component that offers one of these axes must use *this* type for it,
|
|
7
|
+
* never a private union with the same words. Components that support only a
|
|
8
|
+
* subset narrow with `Extract<…>`; nothing may widen a list. The lists are
|
|
9
|
+
* closed: adding a word is an ADR-007 amendment, not a component change.
|
|
10
|
+
*
|
|
11
|
+
* Types only — this module has no runtime and adds nothing to `dist/index.js`.
|
|
12
|
+
* All four names are `@experimental` until decision D4 (`danger` vs
|
|
13
|
+
* `destructive`) is resolved and the Wave 3 components that adopt them are
|
|
14
|
+
* marked stable (ADR-007 acceptance condition).
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* Semantic meaning → colour family.
|
|
19
|
+
*
|
|
20
|
+
* `intent` says *what the element means*; `variant` says how loudly. A
|
|
21
|
+
* `danger` action, a `danger` badge and a `danger` alert share one colour
|
|
22
|
+
* family (`--ds-color-danger-*`) at three different emphases.
|
|
23
|
+
*
|
|
24
|
+
* `danger` is the canonical word (decision D4, default); `destructive` is
|
|
25
|
+
* accepted by components as a deprecated alias for the 2.x line and is *not*
|
|
26
|
+
* a member of this type.
|
|
27
|
+
*
|
|
28
|
+
* @experimental
|
|
29
|
+
*/
|
|
30
|
+
type Intent = "neutral" | "brand" | "info" | "success" | "warning" | "danger";
|
|
31
|
+
/**
|
|
32
|
+
* Visual emphasis — how strongly the element asserts itself, independent of
|
|
33
|
+
* what it means. Actions, badges, alerts and chips each pick the subset that
|
|
34
|
+
* applies (`Extract<Variant, "solid" | "soft" | "outline">` for Badge).
|
|
35
|
+
*
|
|
36
|
+
* - `solid` — filled with the intent colour, contrasting foreground
|
|
37
|
+
* - `soft` — tinted background, intent-coloured foreground
|
|
38
|
+
* - `outline` — border only, transparent background
|
|
39
|
+
* - `ghost` — no border or background until hovered
|
|
40
|
+
* - `link` — inline text, underlined on hover; actions only
|
|
41
|
+
*
|
|
42
|
+
* State (`disabled`, `loading`, `pressed`, `selected`, …) is never a variant:
|
|
43
|
+
* it is a boolean prop reflected as a `data-*` or ARIA attribute.
|
|
44
|
+
*
|
|
45
|
+
* @experimental
|
|
46
|
+
*/
|
|
47
|
+
type Variant = "solid" | "soft" | "outline" | "ghost" | "link";
|
|
48
|
+
/**
|
|
49
|
+
* The shared control size step (ADR-013, W2-03): one name means one outer
|
|
50
|
+
* height on every control that offers it, read from
|
|
51
|
+
* `--ds-control-height-{size}`. Derived from the token scale so the type and
|
|
52
|
+
* the tokens cannot disagree; it resolves to `"xs" | "sm" | "md" | "lg" | "xl"`.
|
|
53
|
+
*
|
|
54
|
+
* The pixels behind each step are decision D5; existing components keep
|
|
55
|
+
* today's geometry under these names until 2.0 (compat token per control).
|
|
56
|
+
*
|
|
57
|
+
* @experimental
|
|
58
|
+
*/
|
|
59
|
+
type ControlSize = keyof SystemTokens["control"]["height"];
|
|
60
|
+
/**
|
|
61
|
+
* Corner treatment, offered only where it is a real choice (W2-07 radius roles,
|
|
62
|
+
* target architecture §18, §28).
|
|
63
|
+
*
|
|
64
|
+
* - `rounded` — the component's radius role (`--ds-radius-control`,
|
|
65
|
+
* `--ds-radius-badge`, …)
|
|
66
|
+
* - `pill` — `--ds-radius-full`
|
|
67
|
+
* - `square` — no rounding beyond the smallest reference step; icon tiles only
|
|
68
|
+
*
|
|
69
|
+
* A component's *default* shape is whatever it renders today; changing a
|
|
70
|
+
* default is decision D1 and waits for 2.0.
|
|
71
|
+
*
|
|
72
|
+
* @experimental
|
|
73
|
+
*/
|
|
74
|
+
type Shape = "rounded" | "pill" | "square";
|
|
75
|
+
|
|
76
|
+
export type { ControlSize as C, Intent as I, Shape as S, Variant as V };
|