@cere/cere-design-system 0.1.0 → 0.2.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.
Files changed (165) hide show
  1. package/README.md +76 -0
  2. package/dist/buttons.d.mts +27 -22
  3. package/dist/buttons.d.ts +27 -22
  4. package/dist/buttons.js +5 -5
  5. package/dist/buttons.mjs +4 -4
  6. package/dist/charts.d.mts +1 -23
  7. package/dist/charts.d.ts +1 -23
  8. package/dist/charts.js +2 -9
  9. package/dist/charts.js.map +1 -1
  10. package/dist/charts.mjs +1 -8
  11. package/dist/{chunk-THQKYTQE.js → chunk-2KDN37PQ.js} +28 -32
  12. package/dist/chunk-2KDN37PQ.js.map +1 -0
  13. package/dist/{chunk-3WCMINE5.mjs → chunk-34LFXT6C.mjs} +25 -29
  14. package/dist/chunk-34LFXT6C.mjs.map +1 -0
  15. package/dist/chunk-3KCXCVOX.mjs +411 -0
  16. package/dist/chunk-3KCXCVOX.mjs.map +1 -0
  17. package/dist/{chunk-NXTVJ6PY.js → chunk-4OKTICU5.js} +10 -10
  18. package/dist/chunk-4OKTICU5.js.map +1 -0
  19. package/dist/{chunk-FN5YL4BK.js → chunk-72TQ56EP.js} +47 -45
  20. package/dist/chunk-72TQ56EP.js.map +1 -0
  21. package/dist/{chunk-QYYQYZHV.js → chunk-7KXKK2RE.js} +3 -5
  22. package/dist/chunk-7KXKK2RE.js.map +1 -0
  23. package/dist/{chunk-CCN6M4LI.js → chunk-ARSCL4ZZ.js} +18 -10
  24. package/dist/chunk-ARSCL4ZZ.js.map +1 -0
  25. package/dist/chunk-AWVNEU6R.mjs +1478 -0
  26. package/dist/chunk-AWVNEU6R.mjs.map +1 -0
  27. package/dist/{chunk-CUCKULYC.mjs → chunk-BH4FNZKK.mjs} +74 -1260
  28. package/dist/chunk-BH4FNZKK.mjs.map +1 -0
  29. package/dist/{chunk-FFZ5S7PQ.mjs → chunk-BOQPWZIB.mjs} +6 -5
  30. package/dist/chunk-BOQPWZIB.mjs.map +1 -0
  31. package/dist/chunk-BT7XUTT5.mjs +392 -0
  32. package/dist/chunk-BT7XUTT5.mjs.map +1 -0
  33. package/dist/{chunk-ATIFLPH6.mjs → chunk-D7D25O6E.mjs} +4 -2
  34. package/dist/{chunk-ATIFLPH6.mjs.map → chunk-D7D25O6E.mjs.map} +1 -1
  35. package/dist/{chunk-JS4IB5IU.mjs → chunk-DRGMEIPT.mjs} +2 -2
  36. package/dist/chunk-DRGMEIPT.mjs.map +1 -0
  37. package/dist/{chunk-KF2Y7HO3.js → chunk-DZXNYLVG.js} +43 -246
  38. package/dist/chunk-DZXNYLVG.js.map +1 -0
  39. package/dist/{chunk-IE6GCHDI.mjs → chunk-GR52ENYI.mjs} +26 -29
  40. package/dist/chunk-GR52ENYI.mjs.map +1 -0
  41. package/dist/chunk-GTBKQXXI.js +1472 -0
  42. package/dist/chunk-GTBKQXXI.js.map +1 -0
  43. package/dist/{chunk-463SRKKD.js → chunk-HJ24WKU4.js} +14 -5
  44. package/dist/chunk-HJ24WKU4.js.map +1 -0
  45. package/dist/{chunk-EOF3QNPF.js → chunk-KKIKOIMP.js} +140 -1028
  46. package/dist/chunk-KKIKOIMP.js.map +1 -0
  47. package/dist/{chunk-MNM6HE72.js → chunk-LVJSKRX3.js} +16 -15
  48. package/dist/chunk-LVJSKRX3.js.map +1 -0
  49. package/dist/{chunk-KPDYKK3V.js → chunk-PFZZJZ64.js} +8 -8
  50. package/dist/{chunk-KPDYKK3V.js.map → chunk-PFZZJZ64.js.map} +1 -1
  51. package/dist/{chunk-KVBMZNWT.mjs → chunk-POCAW2G4.mjs} +18 -10
  52. package/dist/chunk-POCAW2G4.mjs.map +1 -0
  53. package/dist/{chunk-L2TIGA7I.js → chunk-QCFLZ7X3.js} +39 -42
  54. package/dist/chunk-QCFLZ7X3.js.map +1 -0
  55. package/dist/{chunk-6EUAU67C.mjs → chunk-SG2TD7FQ.mjs} +8 -8
  56. package/dist/chunk-SG2TD7FQ.mjs.map +1 -0
  57. package/dist/{chunk-QY65OUAC.mjs → chunk-SSFALO6S.mjs} +13 -4
  58. package/dist/chunk-SSFALO6S.mjs.map +1 -0
  59. package/dist/{chunk-PWF2NJDB.mjs → chunk-WC2TCWXK.mjs} +82 -14
  60. package/dist/chunk-WC2TCWXK.mjs.map +1 -0
  61. package/dist/{chunk-ZGCN5WCG.js → chunk-XZZZ4MZV.js} +83 -15
  62. package/dist/chunk-XZZZ4MZV.js.map +1 -0
  63. package/dist/chunk-YCDCQSYH.js +411 -0
  64. package/dist/chunk-YCDCQSYH.js.map +1 -0
  65. package/dist/{chunk-CWJ4OU6W.mjs → chunk-ZDAZYIXB.mjs} +2 -4
  66. package/dist/chunk-ZDAZYIXB.mjs.map +1 -0
  67. package/dist/feedback.d.mts +20 -8
  68. package/dist/feedback.d.ts +20 -8
  69. package/dist/feedback.js +5 -5
  70. package/dist/feedback.mjs +4 -4
  71. package/dist/fonts/HumanSans-BlackOblique.otf +0 -0
  72. package/dist/fonts/HumanSans-Thin.otf +0 -0
  73. package/dist/fonts/HumanSans-ThinOblique.otf +0 -0
  74. package/dist/fonts/human-sans-font.css +88 -0
  75. package/dist/fonts/human-sans.css +3 -0
  76. package/dist/fonts/inter.css +3 -0
  77. package/dist/icons.d.mts +2 -3
  78. package/dist/icons.d.ts +2 -3
  79. package/dist/icons.js +2 -2
  80. package/dist/icons.mjs +1 -1
  81. package/dist/index.d.mts +37 -8
  82. package/dist/index.d.ts +37 -8
  83. package/dist/index.js +23 -90
  84. package/dist/index.js.map +1 -1
  85. package/dist/index.mjs +46 -113
  86. package/dist/index.mjs.map +1 -1
  87. package/dist/inputs.d.mts +23 -3
  88. package/dist/inputs.d.ts +23 -3
  89. package/dist/inputs.js +5 -5
  90. package/dist/inputs.js.map +1 -1
  91. package/dist/inputs.mjs +15 -15
  92. package/dist/layout.d.mts +37 -283
  93. package/dist/layout.d.ts +37 -283
  94. package/dist/layout.js +8 -32
  95. package/dist/layout.js.map +1 -1
  96. package/dist/layout.mjs +16 -40
  97. package/dist/navigation.d.mts +9 -114
  98. package/dist/navigation.d.ts +9 -114
  99. package/dist/navigation.js +5 -9
  100. package/dist/navigation.js.map +1 -1
  101. package/dist/navigation.mjs +6 -10
  102. package/dist/third-party.d.mts +3 -527
  103. package/dist/third-party.d.ts +3 -527
  104. package/dist/third-party.js +2 -40
  105. package/dist/third-party.js.map +1 -1
  106. package/dist/third-party.mjs +3 -41
  107. package/dist/tokens.css +45 -71
  108. package/dist/utilities.js +2 -4
  109. package/dist/utilities.js.map +1 -1
  110. package/dist/utilities.mjs +2 -4
  111. package/package.json +23 -9
  112. package/dist/WorkflowNode-BnxXO6t_.d.mts +0 -46
  113. package/dist/WorkflowNode-BnxXO6t_.d.ts +0 -46
  114. package/dist/chunk-27JEWSWA.mjs +0 -233
  115. package/dist/chunk-27JEWSWA.mjs.map +0 -1
  116. package/dist/chunk-3WCMINE5.mjs.map +0 -1
  117. package/dist/chunk-463SRKKD.js.map +0 -1
  118. package/dist/chunk-6EUAU67C.mjs.map +0 -1
  119. package/dist/chunk-AIY6222Q.js +0 -11
  120. package/dist/chunk-AIY6222Q.js.map +0 -1
  121. package/dist/chunk-AJBM7IE6.mjs +0 -2366
  122. package/dist/chunk-AJBM7IE6.mjs.map +0 -1
  123. package/dist/chunk-CCN6M4LI.js.map +0 -1
  124. package/dist/chunk-CUCKULYC.mjs.map +0 -1
  125. package/dist/chunk-CWJ4OU6W.mjs.map +0 -1
  126. package/dist/chunk-EOF3QNPF.js.map +0 -1
  127. package/dist/chunk-FFZ5S7PQ.mjs.map +0 -1
  128. package/dist/chunk-FN5YL4BK.js.map +0 -1
  129. package/dist/chunk-HLH2VWXL.js +0 -2658
  130. package/dist/chunk-HLH2VWXL.js.map +0 -1
  131. package/dist/chunk-IE6GCHDI.mjs.map +0 -1
  132. package/dist/chunk-JS4IB5IU.mjs.map +0 -1
  133. package/dist/chunk-KF2Y7HO3.js.map +0 -1
  134. package/dist/chunk-KVBMZNWT.mjs.map +0 -1
  135. package/dist/chunk-L2TIGA7I.js.map +0 -1
  136. package/dist/chunk-MNM6HE72.js.map +0 -1
  137. package/dist/chunk-NXTVJ6PY.js.map +0 -1
  138. package/dist/chunk-PWF2NJDB.mjs.map +0 -1
  139. package/dist/chunk-QD6RLAO2.mjs +0 -11
  140. package/dist/chunk-QD6RLAO2.mjs.map +0 -1
  141. package/dist/chunk-QY65OUAC.mjs.map +0 -1
  142. package/dist/chunk-QYYQYZHV.js.map +0 -1
  143. package/dist/chunk-T7LPABOL.mjs +0 -595
  144. package/dist/chunk-T7LPABOL.mjs.map +0 -1
  145. package/dist/chunk-THQKYTQE.js.map +0 -1
  146. package/dist/chunk-X7E6GMFL.js +0 -233
  147. package/dist/chunk-X7E6GMFL.js.map +0 -1
  148. package/dist/chunk-XF66WQZE.mjs +0 -1535
  149. package/dist/chunk-XF66WQZE.mjs.map +0 -1
  150. package/dist/chunk-YQOZPLTY.js +0 -1535
  151. package/dist/chunk-YQOZPLTY.js.map +0 -1
  152. package/dist/chunk-ZGCN5WCG.js.map +0 -1
  153. package/dist/index.css +0 -79
  154. package/dist/index.css.map +0 -1
  155. /package/dist/{HumanSans-Black-C4YJONK7.otf → fonts/HumanSans-Black.otf} +0 -0
  156. /package/dist/{HumanSans-Bold-4EAJ3L3T.otf → fonts/HumanSans-Bold.otf} +0 -0
  157. /package/dist/{HumanSans-BoldOblique-4D325T4F.otf → fonts/HumanSans-BoldOblique.otf} +0 -0
  158. /package/dist/{HumanSans-ExtraLight-VL7DEKQ4.otf → fonts/HumanSans-ExtraLight.otf} +0 -0
  159. /package/dist/{HumanSans-ExtraLightOblique-VK2JTUXF.otf → fonts/HumanSans-ExtraLightOblique.otf} +0 -0
  160. /package/dist/{HumanSans-Light-YV7AFKRB.otf → fonts/HumanSans-Light.otf} +0 -0
  161. /package/dist/{HumanSans-LightOblique-VIXV7QA6.otf → fonts/HumanSans-LightOblique.otf} +0 -0
  162. /package/dist/{HumanSans-Medium-UULJ3PIR.otf → fonts/HumanSans-Medium.otf} +0 -0
  163. /package/dist/{HumanSans-MediumOblique-M7FHDZRS.otf → fonts/HumanSans-MediumOblique.otf} +0 -0
  164. /package/dist/{HumanSans-Regular-QMFEP3F6.otf → fonts/HumanSans-Regular.otf} +0 -0
  165. /package/dist/{HumanSans-RegularOblique-YPKQJAAM.otf → fonts/HumanSans-RegularOblique.otf} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/theme/tokens.generated.ts","../src/theme/tokens.ts","../src/theme/primitives.ts","../src/theme/webSurfaceTokens.ts","../src/theme/motion.ts","../src/theme/typography.ts"],"sourcesContent":["// Auto-generated by Style Dictionary. Do not edit.\n// Regenerate with: npm run tokens:build\nexport const tokens = {\n 'font-sans': '\\'Inter\\', -apple-system, BlinkMacSystemFont, \\'Segoe UI\\', Roboto, \\'HumanSans\\', sans-serif',\n 'font-display': '\\'Inter\\', sans-serif',\n 'font-mono': 'ui-monospace, SFMono-Regular, Menlo, Consolas, monospace',\n 'c-violet-light': '#f0e0fb',\n 'c-violet': '#aa44f2',\n 'c-violet-dark': '#7c59ac',\n 'c-violet-tint': '#a54aff',\n 'c-pink': '#f941e6',\n 'c-pink-light': '#fcdff9',\n 'c-red': '#ff4f59',\n 'c-green': '#49bf63',\n 'c-blue-light': '#e7f4fe',\n 'c-blue-dark': '#598ab8',\n 'surface-low': '#f5f1f7',\n 'surface-mid': '#f5f1f7',\n 'surface-high': '#fefcff',\n 'surface-contrast': '#ffffff',\n 'bg-default': '#f5f5f5',\n 'bg-dim': '#e6e0e9',\n 'bg-success': '#eef5f0',\n 'bg-warning': '#fef8e8',\n 'bg-danger': '#f9dedc',\n 'text-on-danger': '#8c1d18',\n 'text-primary': '#1d1b20',\n 'text-secondary': '#5f5c64',\n 'text-muted': '#938f99',\n 'stroke-on-low': '#e6e0e9',\n 'stroke-on-med': '#dad1e0',\n 'rob-fandango': '#BD32A7',\n 'rob-electric-violet': '#8B00EC',\n 'rob-ultra-violet': '#6750A4',\n 'rob-periwinkle': '#D0BCFF',\n 'rob-bright-1': '#5311e3',\n 'rob-near-black-2': '#0d0627',\n 'rob-near-black-4': '#23194b',\n 'shadow-sm': '0px 2px 8px rgba(0,0,0,0.04)',\n 'shadow-md': '0px 4px 20px rgba(0,0,0,0.05)',\n 'shadow-focus': '0 0 0 4px rgba(170,68,242,0.25)',\n 'radius-sm': '8px',\n 'radius-md': '12px',\n 'radius-lg': '16px',\n 'radius-xl': '20px',\n 'radius-pill': '999px',\n 'dur-fast': '120ms',\n 'ease-standard': 'cubic-bezier(0.2, 0, 0, 1)',\n 'text-link': '#aa44f2'\n} as const;\n","// Hand-written ergonomic view over the generated single source.\n// tokens.generated.ts is produced by `npm run tokens:build` (do not edit).\nimport { tokens as g } from './tokens.generated';\n\n// Adjust these accessors to match the generated shape confirmed in Task 3.\nexport const brandViolet = g['c-violet']; // '#aa44f2'\nexport const violetTint = g['c-violet-tint']; // '#a54aff' (divergent, do not merge)\nexport const violetLight = g['c-violet-light']; // '#f0e0fb'\nexport const violetDark = g['c-violet-dark']; // '#7c59ac'\nexport const focusRing = g['shadow-focus']; // '0 0 0 4px rgba(170,68,242,0.25)' — derived from brand violet by the generator\n","/**\n * Tier 1: Primitive color tokens.\n *\n * Raw color values organized by hue and shade. These form the palette\n * from which semantic tokens are composed.\n *\n * Components should NOT import primitives directly; use semantic tokens\n * or theme.palette instead.\n */\n\nimport { brandViolet, violetLight, violetDark } from './tokens';\n\nexport const primitives = {\n /**\n * Cere brand violet — the company's primary action color across web\n * surfaces. Use via `semantic.action.primary` rather than reaching for\n * raw hex.\n */\n violet: {\n 100: violetLight, // #f0e0fb\n 300: '#d0bcff', // not in DTCG (product tint); unchanged\n 500: brandViolet, // single source -> #aa44f2\n 600: violetDark, // #7c59ac\n },\n /** Legacy MUI blue. Retained for code paths that still reach for blue tokens by name (e.g. ROB highlights). Not the brand primary. */\n blue: {\n 500: '#1976d2',\n 600: '#1565c0',\n },\n /** Material Design grey scale */\n grey: {\n 50: '#FAFAFA',\n 100: '#F5F5F5',\n 200: '#EEEEEE',\n 300: '#E0E0E0',\n 400: '#BDBDBD',\n 500: '#9E9E9E',\n 600: '#757575',\n 700: '#616161',\n 800: '#424242',\n 900: '#212121',\n },\n /** Neutral greys used for text and secondary UI (non-standard scale) */\n neutral: {\n 300: '#333333',\n 600: '#666666',\n 900: '#999999',\n },\n green: {\n 400: '#34D399',\n 500: '#10B981',\n 600: '#059669',\n },\n red: {\n 400: '#F87171',\n 500: '#EF4444',\n 600: '#DC2626',\n },\n amber: {\n 400: '#FBBF24',\n 500: '#F59E0B',\n 600: '#D97706',\n },\n white: '#FFFFFF',\n black: '#000000',\n nearBlack: '#1A1A1A',\n} as const;\n\n/**\n * ROB primary brand colors (Figma node 11-1393).\n */\nexport const robPrimaryPalette = {\n fandango: '#BD32A7',\n electricViolet: '#8B00EC',\n ultraViolet: '#6750A4',\n periwinkle: '#D0BCFF',\n} as const;\n\n/**\n * ROB extended palette with gradient shades and secondary accents\n * (Figma node 11-1447).\n */\nexport const robPaletteExtended = {\n dark1: '#280e61',\n dark2: '#531584',\n dark3: '#710c7a',\n dark4: '#920269',\n dark5: '#c71454',\n dark6: '#ff6341',\n bright1: '#5311e3',\n bright2: '#eb03ff',\n bright3: '#ff17ab',\n bright4: '#ff6a85',\n light1: '#baa0f4',\n light2: '#d399fc',\n light3: '#f79aff',\n light4: '#faabde',\n light5: '#ffc4ce',\n nearBlack1: '#0b0f18',\n nearBlack2: '#0d0627',\n nearBlack3: '#161d30',\n nearBlack4: '#23194b',\n} as const;\n\n/**\n * Deployment dashboard entity colors (Figma 11-2105).\n */\nexport const deploymentEntityColors = {\n workspace: brandViolet, // was '#aa44f2'; collapsed to the single brand source\n stream: '#53b96a',\n deployment: '#eeb510',\n engagement: '#f941e6',\n agent: '#77c3ff',\n} as const;\n\n/**\n * Deployment dashboard status colors (Figma 11-2105).\n */\nexport const deploymentStatusColors = {\n normal: '#53b96a',\n warning: '#eeb510',\n error: '#ef5059',\n disabled: '#ffffff',\n disabledDim: '#ded8e1',\n} as const;\n\n/**\n * Workflow node color families (Figma 277-8244).\n *\n * Each node type has an accent color plus tints/shades for card borders,\n * badge backgrounds, badge borders, and badge text. These are hand-picked\n * Figma values, not algorithmically derived.\n */\nexport const workflowNodeColors = {\n start: { accent: '#00C950', cardBorder: '#7BF1A8', badgeBg: '#F0FDF4', badgeBorder: '#B9F8CF', badgeText: '#008236' },\n input: { accent: '#00A6F4', cardBorder: '#74D4FF', badgeBg: '#F0F9FF', badgeBorder: '#B8E6FE', badgeText: '#0069A8' },\n stream: { accent: '#00B8DB', cardBorder: '#53EAFD', badgeBg: '#ECFEFF', badgeBorder: '#A2F4FD', badgeText: '#007595' },\n rafts: { accent: '#FF6900', cardBorder: '#FFB86A', badgeBg: '#FFF7ED', badgeBorder: '#FFD6A8', badgeText: '#CA3500' },\n cubbies: { accent: '#D0C900', cardBorder: '#D0C900', badgeBg: '#FCFFED', badgeBorder: '#D0C900', badgeText: '#747500' },\n events: { accent: '#F6339A', cardBorder: '#FDA5D5', badgeBg: '#FDF2F8', badgeBorder: '#FCCEE8', badgeText: '#C6005C' },\n trigger: { accent: '#AD46FF', cardBorder: '#DAB2FF', badgeBg: '#FAF5FF', badgeBorder: '#E9D4FF', badgeText: '#8200DB' },\n action: { accent: '#2B7FFF', cardBorder: '#8EC5FF', badgeBg: '#EFF6FF', badgeBorder: '#BEDBFF', badgeText: '#1447E6' },\n aiModel: { accent: '#615FFF', cardBorder: '#A3B3FF', badgeBg: '#EEF2FF', badgeBorder: '#C6D2FF', badgeText: '#432DD7' },\n aiAgent: { accent: '#D0A2FB', cardBorder: '#D0A2FB', badgeBg: '#F8EEFF', badgeBorder: '#D9BCF3', badgeText: '#9F40F8' },\n condition: { accent: '#FE9A00', cardBorder: '#FFD230', badgeBg: '#FFFBEB', badgeBorder: '#FEE685', badgeText: '#BB4D00' },\n output: { accent: '#00BC7D', cardBorder: '#5EE9B5', badgeBg: '#ECFDF5', badgeBorder: '#A4F4CF', badgeText: '#007A55' },\n end: { accent: '#FB2C36', cardBorder: '#FFA2A2', badgeBg: '#FEF2F2', badgeBorder: '#FFC9C9', badgeText: '#C10007' },\n parallel: { accent: '#14B8A6', cardBorder: '#5EEAD4', badgeBg: '#F0FDFA', badgeBorder: '#99F6E4', badgeText: '#0F766E' },\n merge: { accent: '#6366F1', cardBorder: '#A5B4FC', badgeBg: '#EEF2FF', badgeBorder: '#C7D2FE', badgeText: '#4338CA' },\n} as const;\n\n/**\n * Shared workflow chrome UI colors (Figma 277-8244).\n *\n * Colors used across workflow top bar, time bar, side inspector, and node\n * title/description text. Extracted here so component files stay hex-free.\n */\nexport const workflowChromeColors = {\n inputBg: '#D8D4DD',\n inputBorder: '#A855F7',\n labelText: '#6A7282',\n iconColor: '#4A4458',\n buttonPrimary: '#B65FF4',\n buttonHover: '#A855F7',\n buttonActive: '#9333EA',\n closeBtnBg: '#9E9EAE',\n progressBg: '#CEC6D8',\n stepBtnBg: '#F5F1F7',\n stepBtnBgHover: '#E7E0EC',\n divider: '#D6CEDD',\n mutedText: '#938F99',\n titleText: '#1E2939',\n descriptionText: '#6A7282',\n} as const;\n\n/**\n * Deployment surface primitives (Figma deployment dashboard).\n *\n * Raw hex values for the deployment surface tokens. semantic.ts maps\n * these to named surface/stroke tokens.\n */\nexport const deploymentSurface = {\n surfaceHigh: '#fefcff',\n strokeOutside: '#e6e6e6',\n borderDefault: '#cdcccd',\n textPrimary: '#1d1b20',\n textSecondary: '#818083',\n accentBlue: '#5865f2',\n hoverLight: '#F0F1FF',\n highlightBg: '#f5f6ff',\n highlightBgHover: '#eceeff',\n highlightBorder: '#cbcffb',\n switchGreen: '#53b96a',\n switchTrackOff: '#e0e0e0',\n} as const;\n\n/**\n * Workflow connection/edge colors (Figma 277-8244).\n */\nexport const workflowConnectionColors = {\n success: '#22C55E',\n process: '#3B82F6',\n stream: '#06B6D4',\n error: '#EF4444',\n} as const;\n","/**\n * Web surface tokens (marketplace-aligned v2 product palette).\n *\n * Source of truth for the colors/surfaces/strokes/shadows used by the\n * marketplace UI and any other web product surface that shares this look.\n * Emitted as `:root` CSS custom properties via `tokens.css` so consumers\n * stop hand-declaring them in their own `globals.css`.\n *\n * Distinct from `deploymentSurfaceTokens` (deployment dashboard), which has\n * its own design language and predates this surface.\n */\n\nimport { robPrimaryPalette, robPaletteExtended } from './primitives';\nimport { brandViolet, violetTint, violetLight, violetDark, focusRing } from './tokens';\n\nexport const webSurfaceTokens = {\n // Brand violet (web product primary)\n cViolet: brandViolet, // #aa44f2 (single source)\n cVioletTint: violetTint, // #a54aff (divergent; NOT brandViolet — Track C)\n cVioletLight: violetLight, // #f0e0fb\n cVioletDark: violetDark, // #7c59ac\n\n // Brand accents\n cPink: '#f941e6',\n cPinkLight: '#fcdff9',\n cRed: '#ff4f59',\n cGreen: '#49bf63',\n cBlueLight: '#e7f4fe',\n cBlueDark: '#598ab8',\n\n // ROB extended palette (re-exported with stable web-token names)\n robFandango: robPrimaryPalette.fandango,\n robElectricViolet: robPrimaryPalette.electricViolet,\n robUltraViolet: robPrimaryPalette.ultraViolet,\n robPeriwinkle: robPrimaryPalette.periwinkle,\n robBright1: robPaletteExtended.bright1,\n robNearBlack2: robPaletteExtended.nearBlack2,\n robNearBlack4: robPaletteExtended.nearBlack4,\n\n // Surfaces\n surfaceLow: '#f5f1f7',\n surfaceMid: '#f5f1f7',\n surfaceHigh: '#fefcff',\n surfaceContrast: '#ffffff',\n\n // Backgrounds (semantic state surfaces)\n bgDefault: '#f5f5f5',\n bgDim: '#e6e0e9',\n bgSuccess: '#eef5f0',\n bgWarning: '#fef8e8',\n bgDanger: '#f9dedc',\n /**\n * Foreground text/icon color for content sitting ON a `bgDanger` surface.\n * NOT a surface color itself — do not use as backgroundColor. Pair with\n * `bgDanger` for the canonical danger alert look.\n */\n textOnDanger: '#8c1d18',\n\n // Text\n textPrimary: '#1d1b20',\n textSecondary: '#5f5c64',\n textMuted: '#938f99',\n textLink: brandViolet, // #aa44f2 (collapsed from literal)\n\n // Strokes\n strokeOnLow: '#e6e0e9',\n strokeOnMed: '#dad1e0',\n\n // Shadows\n shadowSm: '0px 2px 8px rgba(0,0,0,0.04)',\n shadowMd: '0px 4px 20px rgba(0,0,0,0.05)',\n shadowFocus: focusRing, // single-sourced from generated token; propagates on rebrand\n} as const;\n\nexport type WebSurfaceTokenKey = keyof typeof webSurfaceTokens;\n","/**\n * Motion tokens: durations and easing curves.\n *\n * Marketplace-aligned. Consumed by component animations and emitted as\n * `--dur-*` / `--ease-*` CSS custom properties in `tokens.css`.\n */\n\nexport const motion = {\n dur: {\n /** Fast: ~120ms. Hover transitions, micro-interactions. */\n fast: '120ms',\n },\n ease: {\n /** Material-style standard easing. */\n standard: 'cubic-bezier(0.2, 0, 0, 1)',\n },\n} as const;\n","/**\n * Typography configuration for the design system.\n *\n * Defines font family, heading scales, body text, and utility variants.\n * Consumed by createTheme() in the theme barrel.\n */\n\nimport type { TypographyOptions } from '@mui/material/styles/createTypography';\nimport { tokens as g } from './tokens.generated';\nimport { webSurfaceTokens } from './webSurfaceTokens';\n\n// Single source: font family stacks come from the generated DTCG token.\n// 'HumanSans' (no space) matches the @font-face declaration in human-sans-font.css.\n// 'Nohemi' and 'Human Sans' have been removed; the token is the only home.\nexport const fontFamily = g['font-sans'];\n\n/** Display font used for hero / banner headings. */\nexport const fontFamilyDisplay = g['font-display'];\n\n/** Monospace stack used for codes, ids, copy fields. */\nexport const fontFamilyMono = g['font-mono'];\n\n/**\n * Custom typography variants needed by the marketplace web surface.\n *\n * Registered with MUI via module augmentation in `typography-augment.ts`\n * so `<Typography variant=\"eyebrow\">` is type-safe and styled out of the box.\n */\nexport const webTypographyVariants = {\n eyebrow: {\n fontFamily,\n fontSize: '11px',\n fontWeight: 700,\n textTransform: 'uppercase' as const,\n letterSpacing: '0.12em',\n color: webSurfaceTokens.cVioletDark,\n },\n lede: {\n fontFamily,\n fontSize: '15.5px',\n lineHeight: 1.55,\n color: webSurfaceTokens.textPrimary,\n },\n panelTitle: {\n fontFamily: fontFamilyDisplay,\n fontSize: '19px',\n fontWeight: 500,\n letterSpacing: '-0.012em',\n color: webSurfaceTokens.textPrimary,\n },\n footnote: {\n fontFamily,\n fontSize: '12px',\n lineHeight: 1.5,\n color: webSurfaceTokens.textSecondary,\n },\n mono: {\n fontFamily: fontFamilyMono,\n fontSize: '11.5px',\n color: webSurfaceTokens.textSecondary,\n },\n bannerEyebrow: {\n fontFamily,\n fontSize: '11px',\n fontWeight: 800,\n textTransform: 'uppercase' as const,\n letterSpacing: '0.18em',\n color: webSurfaceTokens.robPeriwinkle,\n },\n bannerTitle: {\n fontFamily: fontFamilyDisplay,\n fontSize: '40px',\n fontWeight: 600,\n lineHeight: 1.05,\n letterSpacing: '-0.025em',\n color: '#fff',\n },\n bannerBy: {\n fontFamily,\n fontSize: '13px',\n color: 'rgba(255,255,255,0.65)',\n margin: 0,\n },\n bannerDesc: {\n fontFamily,\n fontSize: '15px',\n lineHeight: 1.5,\n color: 'rgba(255,255,255,0.78)',\n margin: 0,\n },\n bannerMeta: {\n fontFamily: fontFamilyMono,\n fontSize: '12px',\n color: 'rgba(255,255,255,0.65)',\n },\n} as const;\n\nexport const typography: TypographyOptions = {\n fontFamily,\n h1: {\n fontWeight: 700,\n fontSize: '96px',\n lineHeight: 1.2,\n },\n h2: {\n fontWeight: 700,\n fontSize: '60px',\n lineHeight: 1.2,\n },\n h3: {\n fontWeight: 700,\n fontSize: '48px',\n lineHeight: 1.2,\n },\n h4: {\n fontWeight: 600,\n fontSize: '34px',\n lineHeight: 1.2,\n },\n h5: {\n fontWeight: 600,\n fontSize: '24px',\n lineHeight: 1.2,\n },\n h6: {\n fontWeight: 600,\n fontSize: '20px',\n lineHeight: 1.2,\n },\n subtitle1: {\n fontWeight: 700,\n fontSize: '16px',\n lineHeight: 1.5,\n },\n subtitle2: {\n fontWeight: 700,\n fontSize: '14px',\n lineHeight: 1.5,\n },\n body1: {\n fontWeight: 400,\n fontSize: '16px',\n lineHeight: 1.5,\n },\n body2: {\n fontWeight: 400,\n fontSize: '14px',\n lineHeight: 1.5,\n },\n button: {\n fontWeight: 700,\n fontSize: '14px',\n textTransform: 'uppercase',\n letterSpacing: '0.5px',\n },\n caption: {\n fontWeight: 400,\n fontSize: '12px',\n lineHeight: 1.5,\n },\n overline: {\n fontWeight: 800,\n fontSize: '10px',\n textTransform: 'uppercase',\n letterSpacing: '1px',\n },\n ...webTypographyVariants,\n};\n"],"mappings":"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","names":[]}
@@ -1,4 +1,61 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});// src/theme/primitives.ts
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});// src/theme/tokens.generated.ts
2
+ var tokens = {
3
+ "font-sans": "'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'HumanSans', sans-serif",
4
+ "font-display": "'Inter', sans-serif",
5
+ "font-mono": "ui-monospace, SFMono-Regular, Menlo, Consolas, monospace",
6
+ "c-violet-light": "#f0e0fb",
7
+ "c-violet": "#aa44f2",
8
+ "c-violet-dark": "#7c59ac",
9
+ "c-violet-tint": "#a54aff",
10
+ "c-pink": "#f941e6",
11
+ "c-pink-light": "#fcdff9",
12
+ "c-red": "#ff4f59",
13
+ "c-green": "#49bf63",
14
+ "c-blue-light": "#e7f4fe",
15
+ "c-blue-dark": "#598ab8",
16
+ "surface-low": "#f5f1f7",
17
+ "surface-mid": "#f5f1f7",
18
+ "surface-high": "#fefcff",
19
+ "surface-contrast": "#ffffff",
20
+ "bg-default": "#f5f5f5",
21
+ "bg-dim": "#e6e0e9",
22
+ "bg-success": "#eef5f0",
23
+ "bg-warning": "#fef8e8",
24
+ "bg-danger": "#f9dedc",
25
+ "text-on-danger": "#8c1d18",
26
+ "text-primary": "#1d1b20",
27
+ "text-secondary": "#5f5c64",
28
+ "text-muted": "#938f99",
29
+ "stroke-on-low": "#e6e0e9",
30
+ "stroke-on-med": "#dad1e0",
31
+ "rob-fandango": "#BD32A7",
32
+ "rob-electric-violet": "#8B00EC",
33
+ "rob-ultra-violet": "#6750A4",
34
+ "rob-periwinkle": "#D0BCFF",
35
+ "rob-bright-1": "#5311e3",
36
+ "rob-near-black-2": "#0d0627",
37
+ "rob-near-black-4": "#23194b",
38
+ "shadow-sm": "0px 2px 8px rgba(0,0,0,0.04)",
39
+ "shadow-md": "0px 4px 20px rgba(0,0,0,0.05)",
40
+ "shadow-focus": "0 0 0 4px rgba(170,68,242,0.25)",
41
+ "radius-sm": "8px",
42
+ "radius-md": "12px",
43
+ "radius-lg": "16px",
44
+ "radius-xl": "20px",
45
+ "radius-pill": "999px",
46
+ "dur-fast": "120ms",
47
+ "ease-standard": "cubic-bezier(0.2, 0, 0, 1)",
48
+ "text-link": "#aa44f2"
49
+ };
50
+
51
+ // src/theme/tokens.ts
52
+ var brandViolet = tokens["c-violet"];
53
+ var violetTint = tokens["c-violet-tint"];
54
+ var violetLight = tokens["c-violet-light"];
55
+ var violetDark = tokens["c-violet-dark"];
56
+ var focusRing = tokens["shadow-focus"];
57
+
58
+ // src/theme/primitives.ts
2
59
  var primitives = {
3
60
  /**
4
61
  * Cere brand violet — the company's primary action color across web
@@ -6,10 +63,14 @@ var primitives = {
6
63
  * raw hex.
7
64
  */
8
65
  violet: {
9
- 100: "#f0e0fb",
66
+ 100: violetLight,
67
+ // #f0e0fb
10
68
  300: "#d0bcff",
11
- 500: "#aa44f2",
12
- 600: "#7c59ac"
69
+ // not in DTCG (product tint); unchanged
70
+ 500: brandViolet,
71
+ // single source -> #aa44f2
72
+ 600: violetDark
73
+ // #7c59ac
13
74
  },
14
75
  /** Legacy MUI blue. Retained for code paths that still reach for blue tokens by name (e.g. ROB highlights). Not the brand primary. */
15
76
  blue: {
@@ -82,7 +143,8 @@ var robPaletteExtended = {
82
143
  nearBlack4: "#23194b"
83
144
  };
84
145
  var deploymentEntityColors = {
85
- workspace: "#aa44f2",
146
+ workspace: brandViolet,
147
+ // was '#aa44f2'; collapsed to the single brand source
86
148
  stream: "#53b96a",
87
149
  deployment: "#eeb510",
88
150
  engagement: "#f941e6",
@@ -153,10 +215,14 @@ var workflowConnectionColors = {
153
215
  // src/theme/webSurfaceTokens.ts
154
216
  var webSurfaceTokens = {
155
217
  // Brand violet (web product primary)
156
- cViolet: "#aa44f2",
157
- cVioletTint: "#a54aff",
158
- cVioletLight: "#f0e0fb",
159
- cVioletDark: "#7c59ac",
218
+ cViolet: brandViolet,
219
+ // #aa44f2 (single source)
220
+ cVioletTint: violetTint,
221
+ // #a54aff (divergent; NOT brandViolet — Track C)
222
+ cVioletLight: violetLight,
223
+ // #f0e0fb
224
+ cVioletDark: violetDark,
225
+ // #7c59ac
160
226
  // Brand accents
161
227
  cPink: "#f941e6",
162
228
  cPinkLight: "#fcdff9",
@@ -193,14 +259,16 @@ var webSurfaceTokens = {
193
259
  textPrimary: "#1d1b20",
194
260
  textSecondary: "#5f5c64",
195
261
  textMuted: "#938f99",
196
- textLink: "#aa44f2",
262
+ textLink: brandViolet,
263
+ // #aa44f2 (collapsed from literal)
197
264
  // Strokes
198
265
  strokeOnLow: "#e6e0e9",
199
266
  strokeOnMed: "#dad1e0",
200
267
  // Shadows
201
268
  shadowSm: "0px 2px 8px rgba(0,0,0,0.04)",
202
269
  shadowMd: "0px 4px 20px rgba(0,0,0,0.05)",
203
- shadowFocus: "0 0 0 4px rgba(170,68,242,0.25)"
270
+ shadowFocus: focusRing
271
+ // single-sourced from generated token; propagates on rebrand
204
272
  };
205
273
 
206
274
  // src/theme/motion.ts
@@ -216,9 +284,9 @@ var motion = {
216
284
  };
217
285
 
218
286
  // src/theme/typography.ts
219
- var fontFamily = "'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Human Sans', 'Nohemi', sans-serif";
220
- var fontFamilyDisplay = "'Inter', sans-serif";
221
- var fontFamilyMono = "ui-monospace, SFMono-Regular, Menlo, Consolas, monospace";
287
+ var fontFamily = tokens["font-sans"];
288
+ var fontFamilyDisplay = tokens["font-display"];
289
+ var fontFamilyMono = tokens["font-mono"];
222
290
  var webTypographyVariants = {
223
291
  eyebrow: {
224
292
  fontFamily,
@@ -374,4 +442,4 @@ var typography = {
374
442
 
375
443
 
376
444
  exports.primitives = primitives; exports.robPrimaryPalette = robPrimaryPalette; exports.robPaletteExtended = robPaletteExtended; exports.deploymentEntityColors = deploymentEntityColors; exports.deploymentStatusColors = deploymentStatusColors; exports.workflowNodeColors = workflowNodeColors; exports.workflowChromeColors = workflowChromeColors; exports.deploymentSurface = deploymentSurface; exports.workflowConnectionColors = workflowConnectionColors; exports.webSurfaceTokens = webSurfaceTokens; exports.fontFamilyMono = fontFamilyMono; exports.typography = typography; exports.motion = motion;
377
- //# sourceMappingURL=chunk-ZGCN5WCG.js.map
445
+ //# sourceMappingURL=chunk-XZZZ4MZV.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/home/runner/work/cere-design-system/cere-design-system/dist/chunk-XZZZ4MZV.js","../src/theme/tokens.generated.ts","../src/theme/tokens.ts","../src/theme/primitives.ts","../src/theme/webSurfaceTokens.ts","../src/theme/motion.ts","../src/theme/typography.ts"],"names":[],"mappings":"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","file":"/home/runner/work/cere-design-system/cere-design-system/dist/chunk-XZZZ4MZV.js","sourcesContent":[null,"// Auto-generated by Style Dictionary. Do not edit.\n// Regenerate with: npm run tokens:build\nexport const tokens = {\n 'font-sans': '\\'Inter\\', -apple-system, BlinkMacSystemFont, \\'Segoe UI\\', Roboto, \\'HumanSans\\', sans-serif',\n 'font-display': '\\'Inter\\', sans-serif',\n 'font-mono': 'ui-monospace, SFMono-Regular, Menlo, Consolas, monospace',\n 'c-violet-light': '#f0e0fb',\n 'c-violet': '#aa44f2',\n 'c-violet-dark': '#7c59ac',\n 'c-violet-tint': '#a54aff',\n 'c-pink': '#f941e6',\n 'c-pink-light': '#fcdff9',\n 'c-red': '#ff4f59',\n 'c-green': '#49bf63',\n 'c-blue-light': '#e7f4fe',\n 'c-blue-dark': '#598ab8',\n 'surface-low': '#f5f1f7',\n 'surface-mid': '#f5f1f7',\n 'surface-high': '#fefcff',\n 'surface-contrast': '#ffffff',\n 'bg-default': '#f5f5f5',\n 'bg-dim': '#e6e0e9',\n 'bg-success': '#eef5f0',\n 'bg-warning': '#fef8e8',\n 'bg-danger': '#f9dedc',\n 'text-on-danger': '#8c1d18',\n 'text-primary': '#1d1b20',\n 'text-secondary': '#5f5c64',\n 'text-muted': '#938f99',\n 'stroke-on-low': '#e6e0e9',\n 'stroke-on-med': '#dad1e0',\n 'rob-fandango': '#BD32A7',\n 'rob-electric-violet': '#8B00EC',\n 'rob-ultra-violet': '#6750A4',\n 'rob-periwinkle': '#D0BCFF',\n 'rob-bright-1': '#5311e3',\n 'rob-near-black-2': '#0d0627',\n 'rob-near-black-4': '#23194b',\n 'shadow-sm': '0px 2px 8px rgba(0,0,0,0.04)',\n 'shadow-md': '0px 4px 20px rgba(0,0,0,0.05)',\n 'shadow-focus': '0 0 0 4px rgba(170,68,242,0.25)',\n 'radius-sm': '8px',\n 'radius-md': '12px',\n 'radius-lg': '16px',\n 'radius-xl': '20px',\n 'radius-pill': '999px',\n 'dur-fast': '120ms',\n 'ease-standard': 'cubic-bezier(0.2, 0, 0, 1)',\n 'text-link': '#aa44f2'\n} as const;\n","// Hand-written ergonomic view over the generated single source.\n// tokens.generated.ts is produced by `npm run tokens:build` (do not edit).\nimport { tokens as g } from './tokens.generated';\n\n// Adjust these accessors to match the generated shape confirmed in Task 3.\nexport const brandViolet = g['c-violet']; // '#aa44f2'\nexport const violetTint = g['c-violet-tint']; // '#a54aff' (divergent, do not merge)\nexport const violetLight = g['c-violet-light']; // '#f0e0fb'\nexport const violetDark = g['c-violet-dark']; // '#7c59ac'\nexport const focusRing = g['shadow-focus']; // '0 0 0 4px rgba(170,68,242,0.25)' — derived from brand violet by the generator\n","/**\n * Tier 1: Primitive color tokens.\n *\n * Raw color values organized by hue and shade. These form the palette\n * from which semantic tokens are composed.\n *\n * Components should NOT import primitives directly; use semantic tokens\n * or theme.palette instead.\n */\n\nimport { brandViolet, violetLight, violetDark } from './tokens';\n\nexport const primitives = {\n /**\n * Cere brand violet — the company's primary action color across web\n * surfaces. Use via `semantic.action.primary` rather than reaching for\n * raw hex.\n */\n violet: {\n 100: violetLight, // #f0e0fb\n 300: '#d0bcff', // not in DTCG (product tint); unchanged\n 500: brandViolet, // single source -> #aa44f2\n 600: violetDark, // #7c59ac\n },\n /** Legacy MUI blue. Retained for code paths that still reach for blue tokens by name (e.g. ROB highlights). Not the brand primary. */\n blue: {\n 500: '#1976d2',\n 600: '#1565c0',\n },\n /** Material Design grey scale */\n grey: {\n 50: '#FAFAFA',\n 100: '#F5F5F5',\n 200: '#EEEEEE',\n 300: '#E0E0E0',\n 400: '#BDBDBD',\n 500: '#9E9E9E',\n 600: '#757575',\n 700: '#616161',\n 800: '#424242',\n 900: '#212121',\n },\n /** Neutral greys used for text and secondary UI (non-standard scale) */\n neutral: {\n 300: '#333333',\n 600: '#666666',\n 900: '#999999',\n },\n green: {\n 400: '#34D399',\n 500: '#10B981',\n 600: '#059669',\n },\n red: {\n 400: '#F87171',\n 500: '#EF4444',\n 600: '#DC2626',\n },\n amber: {\n 400: '#FBBF24',\n 500: '#F59E0B',\n 600: '#D97706',\n },\n white: '#FFFFFF',\n black: '#000000',\n nearBlack: '#1A1A1A',\n} as const;\n\n/**\n * ROB primary brand colors (Figma node 11-1393).\n */\nexport const robPrimaryPalette = {\n fandango: '#BD32A7',\n electricViolet: '#8B00EC',\n ultraViolet: '#6750A4',\n periwinkle: '#D0BCFF',\n} as const;\n\n/**\n * ROB extended palette with gradient shades and secondary accents\n * (Figma node 11-1447).\n */\nexport const robPaletteExtended = {\n dark1: '#280e61',\n dark2: '#531584',\n dark3: '#710c7a',\n dark4: '#920269',\n dark5: '#c71454',\n dark6: '#ff6341',\n bright1: '#5311e3',\n bright2: '#eb03ff',\n bright3: '#ff17ab',\n bright4: '#ff6a85',\n light1: '#baa0f4',\n light2: '#d399fc',\n light3: '#f79aff',\n light4: '#faabde',\n light5: '#ffc4ce',\n nearBlack1: '#0b0f18',\n nearBlack2: '#0d0627',\n nearBlack3: '#161d30',\n nearBlack4: '#23194b',\n} as const;\n\n/**\n * Deployment dashboard entity colors (Figma 11-2105).\n */\nexport const deploymentEntityColors = {\n workspace: brandViolet, // was '#aa44f2'; collapsed to the single brand source\n stream: '#53b96a',\n deployment: '#eeb510',\n engagement: '#f941e6',\n agent: '#77c3ff',\n} as const;\n\n/**\n * Deployment dashboard status colors (Figma 11-2105).\n */\nexport const deploymentStatusColors = {\n normal: '#53b96a',\n warning: '#eeb510',\n error: '#ef5059',\n disabled: '#ffffff',\n disabledDim: '#ded8e1',\n} as const;\n\n/**\n * Workflow node color families (Figma 277-8244).\n *\n * Each node type has an accent color plus tints/shades for card borders,\n * badge backgrounds, badge borders, and badge text. These are hand-picked\n * Figma values, not algorithmically derived.\n */\nexport const workflowNodeColors = {\n start: { accent: '#00C950', cardBorder: '#7BF1A8', badgeBg: '#F0FDF4', badgeBorder: '#B9F8CF', badgeText: '#008236' },\n input: { accent: '#00A6F4', cardBorder: '#74D4FF', badgeBg: '#F0F9FF', badgeBorder: '#B8E6FE', badgeText: '#0069A8' },\n stream: { accent: '#00B8DB', cardBorder: '#53EAFD', badgeBg: '#ECFEFF', badgeBorder: '#A2F4FD', badgeText: '#007595' },\n rafts: { accent: '#FF6900', cardBorder: '#FFB86A', badgeBg: '#FFF7ED', badgeBorder: '#FFD6A8', badgeText: '#CA3500' },\n cubbies: { accent: '#D0C900', cardBorder: '#D0C900', badgeBg: '#FCFFED', badgeBorder: '#D0C900', badgeText: '#747500' },\n events: { accent: '#F6339A', cardBorder: '#FDA5D5', badgeBg: '#FDF2F8', badgeBorder: '#FCCEE8', badgeText: '#C6005C' },\n trigger: { accent: '#AD46FF', cardBorder: '#DAB2FF', badgeBg: '#FAF5FF', badgeBorder: '#E9D4FF', badgeText: '#8200DB' },\n action: { accent: '#2B7FFF', cardBorder: '#8EC5FF', badgeBg: '#EFF6FF', badgeBorder: '#BEDBFF', badgeText: '#1447E6' },\n aiModel: { accent: '#615FFF', cardBorder: '#A3B3FF', badgeBg: '#EEF2FF', badgeBorder: '#C6D2FF', badgeText: '#432DD7' },\n aiAgent: { accent: '#D0A2FB', cardBorder: '#D0A2FB', badgeBg: '#F8EEFF', badgeBorder: '#D9BCF3', badgeText: '#9F40F8' },\n condition: { accent: '#FE9A00', cardBorder: '#FFD230', badgeBg: '#FFFBEB', badgeBorder: '#FEE685', badgeText: '#BB4D00' },\n output: { accent: '#00BC7D', cardBorder: '#5EE9B5', badgeBg: '#ECFDF5', badgeBorder: '#A4F4CF', badgeText: '#007A55' },\n end: { accent: '#FB2C36', cardBorder: '#FFA2A2', badgeBg: '#FEF2F2', badgeBorder: '#FFC9C9', badgeText: '#C10007' },\n parallel: { accent: '#14B8A6', cardBorder: '#5EEAD4', badgeBg: '#F0FDFA', badgeBorder: '#99F6E4', badgeText: '#0F766E' },\n merge: { accent: '#6366F1', cardBorder: '#A5B4FC', badgeBg: '#EEF2FF', badgeBorder: '#C7D2FE', badgeText: '#4338CA' },\n} as const;\n\n/**\n * Shared workflow chrome UI colors (Figma 277-8244).\n *\n * Colors used across workflow top bar, time bar, side inspector, and node\n * title/description text. Extracted here so component files stay hex-free.\n */\nexport const workflowChromeColors = {\n inputBg: '#D8D4DD',\n inputBorder: '#A855F7',\n labelText: '#6A7282',\n iconColor: '#4A4458',\n buttonPrimary: '#B65FF4',\n buttonHover: '#A855F7',\n buttonActive: '#9333EA',\n closeBtnBg: '#9E9EAE',\n progressBg: '#CEC6D8',\n stepBtnBg: '#F5F1F7',\n stepBtnBgHover: '#E7E0EC',\n divider: '#D6CEDD',\n mutedText: '#938F99',\n titleText: '#1E2939',\n descriptionText: '#6A7282',\n} as const;\n\n/**\n * Deployment surface primitives (Figma deployment dashboard).\n *\n * Raw hex values for the deployment surface tokens. semantic.ts maps\n * these to named surface/stroke tokens.\n */\nexport const deploymentSurface = {\n surfaceHigh: '#fefcff',\n strokeOutside: '#e6e6e6',\n borderDefault: '#cdcccd',\n textPrimary: '#1d1b20',\n textSecondary: '#818083',\n accentBlue: '#5865f2',\n hoverLight: '#F0F1FF',\n highlightBg: '#f5f6ff',\n highlightBgHover: '#eceeff',\n highlightBorder: '#cbcffb',\n switchGreen: '#53b96a',\n switchTrackOff: '#e0e0e0',\n} as const;\n\n/**\n * Workflow connection/edge colors (Figma 277-8244).\n */\nexport const workflowConnectionColors = {\n success: '#22C55E',\n process: '#3B82F6',\n stream: '#06B6D4',\n error: '#EF4444',\n} as const;\n","/**\n * Web surface tokens (marketplace-aligned v2 product palette).\n *\n * Source of truth for the colors/surfaces/strokes/shadows used by the\n * marketplace UI and any other web product surface that shares this look.\n * Emitted as `:root` CSS custom properties via `tokens.css` so consumers\n * stop hand-declaring them in their own `globals.css`.\n *\n * Distinct from `deploymentSurfaceTokens` (deployment dashboard), which has\n * its own design language and predates this surface.\n */\n\nimport { robPrimaryPalette, robPaletteExtended } from './primitives';\nimport { brandViolet, violetTint, violetLight, violetDark, focusRing } from './tokens';\n\nexport const webSurfaceTokens = {\n // Brand violet (web product primary)\n cViolet: brandViolet, // #aa44f2 (single source)\n cVioletTint: violetTint, // #a54aff (divergent; NOT brandViolet — Track C)\n cVioletLight: violetLight, // #f0e0fb\n cVioletDark: violetDark, // #7c59ac\n\n // Brand accents\n cPink: '#f941e6',\n cPinkLight: '#fcdff9',\n cRed: '#ff4f59',\n cGreen: '#49bf63',\n cBlueLight: '#e7f4fe',\n cBlueDark: '#598ab8',\n\n // ROB extended palette (re-exported with stable web-token names)\n robFandango: robPrimaryPalette.fandango,\n robElectricViolet: robPrimaryPalette.electricViolet,\n robUltraViolet: robPrimaryPalette.ultraViolet,\n robPeriwinkle: robPrimaryPalette.periwinkle,\n robBright1: robPaletteExtended.bright1,\n robNearBlack2: robPaletteExtended.nearBlack2,\n robNearBlack4: robPaletteExtended.nearBlack4,\n\n // Surfaces\n surfaceLow: '#f5f1f7',\n surfaceMid: '#f5f1f7',\n surfaceHigh: '#fefcff',\n surfaceContrast: '#ffffff',\n\n // Backgrounds (semantic state surfaces)\n bgDefault: '#f5f5f5',\n bgDim: '#e6e0e9',\n bgSuccess: '#eef5f0',\n bgWarning: '#fef8e8',\n bgDanger: '#f9dedc',\n /**\n * Foreground text/icon color for content sitting ON a `bgDanger` surface.\n * NOT a surface color itself — do not use as backgroundColor. Pair with\n * `bgDanger` for the canonical danger alert look.\n */\n textOnDanger: '#8c1d18',\n\n // Text\n textPrimary: '#1d1b20',\n textSecondary: '#5f5c64',\n textMuted: '#938f99',\n textLink: brandViolet, // #aa44f2 (collapsed from literal)\n\n // Strokes\n strokeOnLow: '#e6e0e9',\n strokeOnMed: '#dad1e0',\n\n // Shadows\n shadowSm: '0px 2px 8px rgba(0,0,0,0.04)',\n shadowMd: '0px 4px 20px rgba(0,0,0,0.05)',\n shadowFocus: focusRing, // single-sourced from generated token; propagates on rebrand\n} as const;\n\nexport type WebSurfaceTokenKey = keyof typeof webSurfaceTokens;\n","/**\n * Motion tokens: durations and easing curves.\n *\n * Marketplace-aligned. Consumed by component animations and emitted as\n * `--dur-*` / `--ease-*` CSS custom properties in `tokens.css`.\n */\n\nexport const motion = {\n dur: {\n /** Fast: ~120ms. Hover transitions, micro-interactions. */\n fast: '120ms',\n },\n ease: {\n /** Material-style standard easing. */\n standard: 'cubic-bezier(0.2, 0, 0, 1)',\n },\n} as const;\n","/**\n * Typography configuration for the design system.\n *\n * Defines font family, heading scales, body text, and utility variants.\n * Consumed by createTheme() in the theme barrel.\n */\n\nimport type { TypographyOptions } from '@mui/material/styles/createTypography';\nimport { tokens as g } from './tokens.generated';\nimport { webSurfaceTokens } from './webSurfaceTokens';\n\n// Single source: font family stacks come from the generated DTCG token.\n// 'HumanSans' (no space) matches the @font-face declaration in human-sans-font.css.\n// 'Nohemi' and 'Human Sans' have been removed; the token is the only home.\nexport const fontFamily = g['font-sans'];\n\n/** Display font used for hero / banner headings. */\nexport const fontFamilyDisplay = g['font-display'];\n\n/** Monospace stack used for codes, ids, copy fields. */\nexport const fontFamilyMono = g['font-mono'];\n\n/**\n * Custom typography variants needed by the marketplace web surface.\n *\n * Registered with MUI via module augmentation in `typography-augment.ts`\n * so `<Typography variant=\"eyebrow\">` is type-safe and styled out of the box.\n */\nexport const webTypographyVariants = {\n eyebrow: {\n fontFamily,\n fontSize: '11px',\n fontWeight: 700,\n textTransform: 'uppercase' as const,\n letterSpacing: '0.12em',\n color: webSurfaceTokens.cVioletDark,\n },\n lede: {\n fontFamily,\n fontSize: '15.5px',\n lineHeight: 1.55,\n color: webSurfaceTokens.textPrimary,\n },\n panelTitle: {\n fontFamily: fontFamilyDisplay,\n fontSize: '19px',\n fontWeight: 500,\n letterSpacing: '-0.012em',\n color: webSurfaceTokens.textPrimary,\n },\n footnote: {\n fontFamily,\n fontSize: '12px',\n lineHeight: 1.5,\n color: webSurfaceTokens.textSecondary,\n },\n mono: {\n fontFamily: fontFamilyMono,\n fontSize: '11.5px',\n color: webSurfaceTokens.textSecondary,\n },\n bannerEyebrow: {\n fontFamily,\n fontSize: '11px',\n fontWeight: 800,\n textTransform: 'uppercase' as const,\n letterSpacing: '0.18em',\n color: webSurfaceTokens.robPeriwinkle,\n },\n bannerTitle: {\n fontFamily: fontFamilyDisplay,\n fontSize: '40px',\n fontWeight: 600,\n lineHeight: 1.05,\n letterSpacing: '-0.025em',\n color: '#fff',\n },\n bannerBy: {\n fontFamily,\n fontSize: '13px',\n color: 'rgba(255,255,255,0.65)',\n margin: 0,\n },\n bannerDesc: {\n fontFamily,\n fontSize: '15px',\n lineHeight: 1.5,\n color: 'rgba(255,255,255,0.78)',\n margin: 0,\n },\n bannerMeta: {\n fontFamily: fontFamilyMono,\n fontSize: '12px',\n color: 'rgba(255,255,255,0.65)',\n },\n} as const;\n\nexport const typography: TypographyOptions = {\n fontFamily,\n h1: {\n fontWeight: 700,\n fontSize: '96px',\n lineHeight: 1.2,\n },\n h2: {\n fontWeight: 700,\n fontSize: '60px',\n lineHeight: 1.2,\n },\n h3: {\n fontWeight: 700,\n fontSize: '48px',\n lineHeight: 1.2,\n },\n h4: {\n fontWeight: 600,\n fontSize: '34px',\n lineHeight: 1.2,\n },\n h5: {\n fontWeight: 600,\n fontSize: '24px',\n lineHeight: 1.2,\n },\n h6: {\n fontWeight: 600,\n fontSize: '20px',\n lineHeight: 1.2,\n },\n subtitle1: {\n fontWeight: 700,\n fontSize: '16px',\n lineHeight: 1.5,\n },\n subtitle2: {\n fontWeight: 700,\n fontSize: '14px',\n lineHeight: 1.5,\n },\n body1: {\n fontWeight: 400,\n fontSize: '16px',\n lineHeight: 1.5,\n },\n body2: {\n fontWeight: 400,\n fontSize: '14px',\n lineHeight: 1.5,\n },\n button: {\n fontWeight: 700,\n fontSize: '14px',\n textTransform: 'uppercase',\n letterSpacing: '0.5px',\n },\n caption: {\n fontWeight: 400,\n fontSize: '12px',\n lineHeight: 1.5,\n },\n overline: {\n fontWeight: 800,\n fontSize: '10px',\n textTransform: 'uppercase',\n letterSpacing: '1px',\n },\n ...webTypographyVariants,\n};\n"]}