{
  "id": "ui-shell/jazzy-prancing-cook-subagent-aca03208",
  "slug": "jazzy-prancing-cook-subagent-aca03208",
  "title": "Session: jazzy-prancing-cook-subagent-aca03208 — 2026-03-13",
  "type": "source",
  "project": "ui-shell",
  "date": "2026-03-13",
  "started": "2026-03-13T10:57:49.209000+00:00",
  "ended": "2026-03-13T10:58:51.653000+00:00",
  "model": "claude-haiku-4-5-20251001",
  "cwd": "/Users/USER/workspace/doctolib/worktrees/treatment-plan/fhir-2072-nhr-document-list-ui-shell",
  "git_branch": "fhir-2072-nhr-document-list-ui-shell",
  "permission_mode": "",
  "user_messages": 1,
  "tool_calls": 35,
  "tools_used": [
    "Bash",
    "Read",
    "Glob"
  ],
  "is_subagent": true,
  "wikilinks_out": [],
  "body_text": "Project: ui-shell · Branch: fhir-2072-nhr-document-list-ui-shell · Mode:  · Model: claude-haiku-4-5-20251001\n\nStats: 1 user messages, 35 tool calls, tools used: Bash, Read, Glob.\n\nConversation\n\nTurn 1 — User\n\nIn the Oxygen design system repo at /Users/USER/workspace/doctolib/oxygen, find:\n1. The replacement for the deprecated Text component — look for what component is recommended instead (likely Paragraph, Heading, Label, or similar)\n2. The replacement for the deprecated Button component — check if there's a v2 or new Button\n\nLook in:\n- /Users/USER/workspace/doctolib/oxygen/packages/ for component packages\n- Any MIGRATION or CHANGELOG files mentioning Text or Button deprecation\n- The index exports to understand what's available\n\nReturn the exact import paths for the replacement components.\n\nTurn 1 — Assistant\n\nI'll help you find the replacements for the deprecated Text and Button components in the Oxygen design system. Let me search the repository systematically.\n\nTools used:\n\n- Bash: find /Users/USER/workspace/doctolib/oxygen -type f -name \"CHANGELOG\" -o -name \"MIGRATION\" -o -name \"README\" | head -20\n\nTool results:\n\n  → result (ok): /Users/USER/workspace/doctolib/oxygen/README.md\n/Users/USER/workspace/doctolib/oxygen/packages/illustrative-icons/CHANGELOG.md\n/Users/USER/workspace/doctolib/oxygen/packages/illustrative-icons/README.md\n/Users/USER/workspace/doctolib/oxygen/packages/core/CHANGELOG.md\n/Users/USER/workspace/doctolib/oxygen/packages/core/README.md\n/Users/USER/workspace/doctolib/oxygen/packages/core/public/emoji_picker_data/README.md\n/Users/USER/workspace/doctolib/oxygen/packages/core/src/README.mdx\n/Users/USER/work\n…(truncated, 820 more chars)\n\nLet me search for component packages and check the CHANGELOG files for deprecation information:\n\nTools used:\n\n- Read: /Users/USER/workspace/doctolib/oxygen/packages/core/CHANGELOG.md\n\nTools used:\n\n- Bash: ls -la /Users/USER/workspace/doctolib/oxygen/packages/ | head -30\n\nTool results:\n\n  → result (ERROR): File content (41274 tokens) exceeds maximum allowed tokens (25000). Use offset and limit parameters to read specific portions of the file, or search for specific content instead of reading the whole file.\n\nTools used:\n\n- Glob: /Users/USER/workspace/doctolib/oxygen/packages//src/index.{ts,tsx}\n\nTool results:\n\n  → result (ok): drwxr-xr-x clertonra staff 384 B  Wed Feb 25 13:12:45 2026 .\ndrwxr-xr-x clertonra staff 1.3 KB Fri Mar 13 11:56:52 2026 ..\ndrwxr-xr-x clertonra staff 608 B  Fri Mar 13 11:56:52 2026 b2b\ndrwxr-xr-x clertonra staff 576 B  Fri Mar 13 11:56:52 2026 b2c\ndrwxr-xr-x clertonra staff 448 B  Wed Feb 25 13:12:44 2026 codemods\ndrwxr-xr-x clertonra staff 832 B  Fri Mar 13 11:56:52 2026 core\ndrwxr-xr-x clertonra staff 544 B  Fri Mar 13 11:56:52 2026 icons\ndrwxr-xr-x clertonra staff 480 B  Fri Mar 13 11:56:52 \n…(truncated, 303 more chars)\n\nTool results:\n\n  → result (ok): No files found\n\nLet me search for the index files and component directories:\n\nTools used:\n\n- Bash: find /Users/USER/workspace/doctolib/oxygen/packages/core/src -type f -name \".ts\" -o -name \".tsx\" | grep -i \"index\" | head -10\n\nTools used:\n\n- Bash: find /Users/USER/workspace/doctolib/oxygen/packages/core/src -type d -name \"Text\" -o -type d -name \"Button\"\n\nTools used:\n\n- Bash: ls -la /Users/USER/workspace/doctolib/oxygen/packages/core/src/\n\nTool results:\n\n  → result (ok): /Users/USER/workspace/doctolib/oxygen/packages/core/src/tokens/index.ts\n\nTool results:\n\n  → result (ok): /Users/USER/workspace/doctolib/oxygen/packages/core/src/forms/InputText\n/Users/USER/workspace/doctolib/oxygen/packages/core/src/forms/Textarea\n/Users/USER/workspace/doctolib/oxygen/packages/core/src/navigation/LinkWithButtonStyle\n/Users/USER/workspace/doctolib/oxygen/packages/core/src/navigation/LinkWithIconButtonStyle\n/Users/USER/workspace/doctolib/oxygen/packages/core/src/dataDisplay/text/Text\n/Users/USER/workspace/doctolib/oxygen/packages/core/src/dataDisplay/PillIconButton\n/Users/USER/worksp\n…(truncated, 290 more chars)\n\nTool results:\n\n  → result (ok): drwxr-xr-x clertonra staff 1.1 KB Wed Feb 25 13:12:44 2026 .\ndrwxr-xr-x clertonra staff 832 B  Fri Mar 13 11:56:52 2026 ..\ndrwxr-xr-x clertonra staff 224 B  Wed Feb 25 13:12:44 2026 a11y\ndrwxr-xr-x clertonra staff 256 B  Wed Feb 25 13:12:44 2026 actions\ndrwxr-xr-x clertonra staff  96 B  Wed Feb 25 13:12:44 2026 collection\ndrwxr-xr-x clertonra staff 256 B  Wed Feb 25 13:12:44 2026 common\n.rw-r--r-- clertonra staff  45 B  Wed Feb 25 13:12:44 2026 constants.ts\ndrwxr-xr-x clertonra staff 832 B  Wed \n…(truncated, 1872 more chars)\n\nNow let me check the CHANGELOG for deprecation information and look at the Text component:\n\nTools used:\n\n- Bash: grep -A 5 -B 5 \"Text.deprecat\\|Button.deprecat\" /Users/USER/workspace/doctolib/oxygen/packages/core/CHANGELOG.md | head -100\n\nTool results:\n\n  → result (ok): ### Features\n\n CFS-725: ButtonV2 - New property formId available to set the form attribute (#1073) (bfcd640)\n COREFRONT-983: Button - Component v1 is deprecated (#1071) (a596cd2)\n\nBug Fixes\n\n CFS-704:\n…(truncated, 204 more chars)\n\nTools used:\n\n- Read: /Users/USER/workspace/doctolib/oxygen/packages/core/src/dataDisplay/text/Text\n\nTool results:\n\n  → result (ERROR): EISDIR: illegal operation on a directory, read '/Users/USER/workspace/doctolib/oxygen/packages/core/src/dataDisplay/text/Text'\n\nTools used:\n\n- Read: /Users/USER/workspace/doctolib/oxygen/packages/core/src/actions/Button\n\nTool results:\n\n  → result (ERROR): EISDIR: illegal operation on a directory, read '/Users/USER/workspace/doctolib/oxygen/packages/core/src/actions/Button'\n\nLet me look inside these directories:\n\nTools used:\n\n- Bash: ls -la /Users/USER/workspace/doctolib/oxygen/packages/core/src/dataDisplay/text/Text/\n\nTool results:\n\n  → result (ok): drwxr-xr-x clertonra staff 224 B  Wed Feb 25 13:12:44 2026 .\ndrwxr-xr-x clertonra staff 544 B  Wed Feb 25 13:12:44 2026 ..\n.rw-r--r-- clertonra staff 4.0 KB Wed Feb 25 13:12:44 2026 migration.ts\n.rw-r--r-- clertonra staff 7.2 KB Wed Feb 25 13:12:44 2026 Text.scss\n.rw-r--r-- clertonra staff 2.1 KB Wed Feb 25 13:12:44 2026 Text.stories.tsx\n.rw-r--r-- clertonra staff 205 B  Wed Feb 25 13:12:44 2026 Text.test-helpers.ts\n.rw-r--r-- clertonra staff 4.2 KB Wed Feb 25 13:12:44 2026 Text.tsx\n\nTools used:\n\n- Bash: ls -la /Users/USER/workspace/doctolib/oxygen/packages/core/src/actions/Button/\n\nTools used:\n\n- Bash: ls -la /Users/USER/workspace/doctolib/oxygen/packages/core/src/dataDisplay/\n\nTool results:\n\n  → result (ok): drwxr-xr-x clertonra staff 288 B  Fri Mar 13 11:56:52 2026 .\ndrwxr-xr-x clertonra staff 256 B  Wed Feb 25 13:12:44 2026 ..\n.rw-r--r-- clertonra staff  22 KB Wed Feb 25 13:12:44 2026 Button.scss\n.rw-r--r-- clertonra staff  10 KB Wed Feb 25 13:12:44 2026 Button.stories.tsx\n.rw-r--r-- clertonra staff 318 B  Wed Feb 25 13:12:44 2026 Button.test-helpers.ts\n.rw-r--r-- clertonra staff 4.0 KB Wed Feb 25 13:12:44 2026 Button.test.tsx\n.rw-r--r-- clertonra staff 5.9 KB Wed Feb 25 13:12:44 2026 Button.tsx\n.\n…(truncated, 132 more chars)\n\nTool results:\n\n  → result (ok): drwxr-xr-x clertonra staff 832 B  Wed Feb 25 13:12:44 2026 .\ndrwxr-xr-x clertonra staff 1.1 KB Wed Feb 25 13:12:44 2026 ..\ndrwxr-xr-x clertonra staff 192 B  Wed Feb 25 13:12:44 2026 Accordion\ndrwxr-xr-x clertonra staff 192 B  Wed Feb 25 13:12:44 2026 Avatar\ndrwxr-xr-x clertonra staff 160 B  Wed Feb 25 13:12:44 2026 AvatarGroup\ndrwxr-xr-x clertonra staff 160 B  Wed Feb 25 13:12:44 2026 Badge\ndrwxr-xr-x clertonra staff 288 B  Fri Mar 13 11:56:52 2026 Card\ndrwxr-xr-x clertonra staff 160 B  Wed Feb \n…(truncated, 1311 more chars)\n\nGreat! I can see there's a v2 directory for Button and a text directory. Let me check those:\n\nTools used:\n\n- Bash: ls -la /Users/USER/workspace/doctolib/oxygen/packages/core/src/actions/Button/v2/\n\nTool results:\n\n  → result (ok): drwxr-xr-x clertonra staff 320 B  Fri Mar 13 11:56:52 2026 .\ndrwxr-xr-x clertonra staff 288 B  Fri Mar 13 11:56:52 2026 ..\n.rw-r--r-- clertonra staff  19 KB Fri Mar 13 11:56:52 2026 button-migration.md\n.rw-r--r-- clertonra staff 3.5 KB Fri Mar 13 11:56:52 2026 Button.a11y.interactions.stories.tsx\n.rw-r--r-- clertonra staff 112 B  Wed Feb 25 13:12:44 2026 Button.a11y.mdx\n.rw-r--r-- clertonra staff 3.5 KB Wed Feb 25 13:12:44 2026 Button.figma.tsx\n.rw-r--r-- clertonra staff 4.4 KB Fri Mar 13 11:56:\n…(truncated, 265 more chars)\n\nTools used:\n\n- Bash: ls -la /Users/USER/workspace/doctolib/oxygen/packages/core/src/dataDisplay/text/\n\nTool results:\n\n  → result (ok): drwxr-xr-x clertonra staff 544 B  Wed Feb 25 13:12:44 2026 .\ndrwxr-xr-x clertonra staff 832 B  Wed Feb 25 13:12:44 2026 ..\n.rw-r--r-- clertonra staff 610 B  Wed Feb 25 13:12:44 2026 Heading.figma.tsx\n.rw-r--r-- clertonra staff 1.8 KB Wed Feb 25 13:12:44 2026 Heading.interactions.stories.tsx\n.rw-r--r-- clertonra staff 2.8 KB Wed Feb 25 13:12:44 2026 Heading.stories.tsx\n.rw-r--r-- clertonra staff 708 B  Wed Feb 25 13:12:44 2026 Heading.test-helpers.ts\n.rw-r--r-- clertonra staff 2.2 KB Wed Feb 25 1\n…(truncated, 773 more chars)\n\nTools used:\n\n- Read: /Users/USER/workspace/doctolib/oxygen/packages/core/src/dataDisplay/text/Text/Text.tsx\n\nTool results:\n\n  → result (ok): 1→import './Text.scss'\n     2→\n     3→import classNames from 'classnames'\n     4→import { type ElementType, forwardRef, type ReactNode } from 'react'\n     5→\n     6→export type TextColor =\n     7→  | 'error-090'\n     8→  | 'error-110'\n     9→  | 'neutral-030'\n    10→  | 'neutral-040'\n    11→  | 'neutral-090'\n    12→  | 'neutral-110'\n    13→  | 'neutral-130'\n    14→  | 'neutral-150'\n    15→  | 'primary-110'\n    16→  | 'primary-130'\n    17→  | 'primary-150'\n    18→  | 'primary-160'\n    19→  | 'suc\n…(truncated, 5306 more chars)\n\nPerfect! Now let me check the Button.tsx and also look at the index exports:\n\nTools used:\n\n- Read: /Users/USER/workspace/doctolib/oxygen/packages/core/src/actions/Button/Button.tsx\n\nTools used:\n\n- Read: /Users/USER/workspace/doctolib/oxygen/packages/core/src/actions/Button/v2/Button.tsx\n\nTool results:\n\n  → result (ok): 1→import './Button.scss'\n     2→\n     3→import classNames from 'classnames'\n     4→import {\n     5→  type ComponentPropsWithoutRef,\n     6→  type ComponentType,\n     7→  forwardRef,\n     8→  type MouseEventHandler,\n     9→  type TouchEventHandler,\n    10→} from 'react'\n    11→import type { DesignSystemIconComponent } from '@doctolib/design-system-icons'\n    12→import { Link } from 'react-router-dom'\n    13→\n    14→import { getIconByNameOrComponent } from '../../helpers/icons'\n    15→import type \n…(truncated, 7303 more chars)\n\nTool results:\n\n  → result (ok): 1→import classNames from 'classnames'\n     2→import {\n     3→  type ComponentProps,\n     4→  forwardRef,\n     5→  type MouseEventHandler,\n     6→  useEffect,\n     7→  useImperativeHandle,\n     8→  useState,\n     9→} from 'react'\n    10→import type { DesignSystemIconComponent } from '@doctolib/design-system-icons'\n    11→import { useContext } from 'react'\n    12→\n    13→import buttonStyles from './Button.module.scss'\n    14→import { type DataAttribute, filterDataAttributes } from '../../../common\n…(truncated, 11630 more chars)\n\nTools used:\n\n- Bash: find /Users/USER/workspace/doctolib/oxygen/packages/core/src -name \"index.ts\" -o -name \"index.tsx\" | xargs grep -l \"export.Button\\|export.Text\" 2>/dev/null | head -5\n\nTool results:\n\n  → result (ok): (Bash completed with no output)\n\nNow let me find the main index file and the migration guide:\n\nTools used:\n\n- Bash: find /Users/USER/workspace/doctolib/oxygen/packages/core/src -maxdepth 1 -name \"index.ts\" -o -name \"index.tsx\"\n\nTool results:\n\n  → result (ok): (Bash completed with no output)\n\nTools used:\n\n- Bash: cat /Users/USER/workspace/doctolib/oxygen/packages/core/src/actions/Button/v2/button-migration.md\n\nTool results:\n\n  → result (ok): ---\ndescription: Migrate deprecated Oxygen Button components to Button/v2, IconButton/v2, or LinkWithButtonStyle\nargument-hint: '[directory-or-file-path]'\n---\n\nButton Component Migration Assistant\n\nYou are a senior React developer specializing in component migrations and refactoring. Help developers migrate deprecated Button components to the new v2 version.\n\nContext\n\nOLD Component (@doctolib/design-system-{b2b/b2c}/Button):\n\n- Props: uiStyle, size, block, circle, square, \n…(truncated, 18582 more chars)\n\nTools used:\n\n- Bash: cat /Users/USER/workspace/doctolib/oxygen/packages/core/src/dataDisplay/text/Text/migration.ts\n\nTool results:\n\n  → result (ok): /\n  This file has been auto-generated.\n  Please do not edit it or your changes maybe overwritten.\n \n  @generated 2024-08-26T09:27:37.775Z\n /\n\n// Type definitions\n\ntype ValueMapping = {\n  from: string\n  to: string\n}\n\ntype UpdatedProps = {\n  currentProp: string\n  newProp?: string\n  keepNameIfUnknownValue?: boolean\n  deletePropValue?: boolean\n  values?: ValueMapping[]\n  details?: string[]\n  commentValue?: string\n}\n\ntype RemovedProps = {\n  currentProp: string\n  details?: string[]\n}\n\ntype Forb\n…(truncated, 3600 more chars)\n\nPerfect! Now let me check the package exports to get the exact import paths:\n\nTools used:\n\n- Bash: ls -la /Users/USER/workspace/doctolib/oxygen/packages/b2b/src/index.ts /Users/USER/workspace/doctolib/oxygen/packages/b2c/src/index.ts 2>&1 | head -5\n\nTool results:\n\n  → result (ok): lsd: /Users/USER/workspace/doctolib/oxygen/packages/b2b/src/index.ts: No such file or directory (os error 2).\n\nlsd: /Users/USER/workspace/doctolib/oxygen/packages/b2c/src/index.ts: No such file or directory (os error 2).\n\nTools used:\n\n- Bash: grep -n \"export.Button\\|export.Heading\\|export.Paragraph\" /Users/USER/workspace/doctolib/oxygen/packages/b2b/src/index.ts | head -20\n\nTool results:\n\n  → result (ok): grep: /Users/USER/workspace/doctolib/oxygen/packages/b2b/src/index.ts: No such file or directory\n\nTools used:\n\n- Bash: grep -n \"export.Button\\|export.Heading\\|export.Paragraph\" /Users/USER/workspace/doctolib/oxygen/packages/b2c/src/index.ts | head -20\n\nTool results:\n\n  → result (ok): grep: /Users/USER/workspace/doctolib/oxygen/packages/b2c/src/index.ts: No such file or directory\n\nLet me check the package structure more carefully:\n\nTools used:\n\n- Bash: find /Users/USER/workspace/doctolib/oxygen/packages/b2b -name \"index\" -type f | head -10\n\nTool results:\n\n  → result (ok): (Bash completed with no output)\n\nTools used:\n\n- Bash: find /Users/USER/workspace/doctolib/oxygen/packages/b2c -name \"index\" -type f | head -10\n\nTools used:\n\n- Bash: cat /Users/USER/workspace/doctolib/oxygen/packages/core/src/actions/Button/migration.ts\n\nTool results:\n\n  → result (ok): (Bash completed with no output)\n\nTool results:\n\n  → result (ok): export const UPDATED_PROPS = [\n  {\n    currentProp: 'disabled',\n    newProp: 'isDisabled',\n  },\n  {\n    currentProp: 'loadable',\n    newProp: 'isLoading',\n    details: ['You also have a new loadingLabel prop.'],\n  },\n  {\n    currentProp: 'size',\n    newProp: '',\n    details: ['DEPRECATED_big, DEPRECATED_relative, DEPRECATED_auto are removed.'],\n  },\n  {\n    currentProp: 'uiStyle',\n    newProp: 'uiStyle & variant',\n    details: 'All combinations of variant + uiStyle are not allowed (eg. solid + \n…(truncated, 1930 more chars)\n\nExcellent! Now let me get the final import paths by checking the package.json files:\n\nTools used:\n\n- Bash: find /Users/USER/workspace/doctolib/oxygen/packages -maxdepth 2 -name \"package.json\" -exec grep -l \"name.design-system\" {} \\;\n\nTools used:\n\n- Bash: grep '\"name\"' /Users/USER/workspace/doctolib/oxygen/packages/b2b/package.json /Users/USER/workspace/doctolib/oxygen/packages/b2c/package.json /Users/USER/workspace/doctolib/oxygen/packa\n…(truncated, 33 more chars)\n\nTool results:\n\n  → result (ok): /Users/USER/workspace/doctolib/oxygen/packages/illustrative-icons/package.json\n/Users/USER/workspace/doctolib/oxygen/packages/core/package.json\n/Users/USER/workspace/doctolib/oxygen/packages/b2b/package.json\n/Users/USER/workspace/doctolib/oxygen/packages/b2c/package.json\n/Users/USER/workspace/doctolib/oxygen/packages/icons/package.json\n/Users/USER/workspace/doctolib/oxygen/packages/tokens/package.json\n/Users/USER/workspace/doctolib/oxygen/packages/codemods/package.json\n\nTool results:\n\n  → result (ok): /Users/USER/workspace/doctolib/oxygen/packages/b2b/package.json:  \"name\": \"@doctolib/design-system-b2b\",\n/Users/USER/workspace/doctolib/oxygen/packages/b2c/package.json:  \"name\": \"@doctolib/design-system-b2c\",\n/Users/USER/workspace/doctolib/oxygen/packages/core/package.json:  \"name\": \"@doctolib/design-system\",\n\nPerfect! Now let me verify the exact export paths for the replacement components:\n\nTools used:\n\n- Bash: find /Users/USER/workspace/doctolib/oxygen/packages/core/src/dataDisplay/text -name \"index.ts\"\n\nTool results:\n\n  → result (ok): (Bash completed with no output)\n\nTools used:\n\n- Bash: find /Users/USER/workspace/doctolib/oxygen/packages/core/src/actions -path \"/Button/v2/index.ts\" -o -path \"/Button/index.ts\"\n\nTool results:\n\n  → result (ok): (Bash completed with no output)\n\nTools used:\n\n- Bash: ls /Users/USER/workspace/doctolib/oxygen/packages/core/src/dataDisplay/text/\n\nTool results:\n\n  → result (ok): Heading.figma.tsx\nHeading.interactions.stories.tsx\nHeading.stories.tsx\nHeading.test-helpers.ts\nHeading.tsx\nParagraph.figma.tsx\nParagraph.stories.tsx\nParagraph.tsx\nprivate\nSpan.interactions.stories.tsx\nSpan.stories.tsx\nSpan.tsx\nText\nTextColorBadge.tsx\nTypography.mdx\n\nNow let me check the CHANGELOG to confirm the deprecation status:\n\nTools used:\n\n- Bash: grep -A 10 -B 2 \"Text.deprecat\\|deprecated.Text\" /Users/USER/workspace/doctolib/oxygen/packages/core/CHANGELOG.md | head -50\n\nTool results:\n\n  → result (ok): - COREFRONT-233: RadioGroup - Minor styling updates ([#572) (5fc98c3)\n- OXYGEN-3612: storybook - fix theme (#555) (45e37a0)\n- OXYGEN-3626: SidebarMenu - Remove deprecated Text (#560\n\nTools used:\n\n- Read: /Users/USER/workspace/doctolib/oxygen/packages/core/CHANGELOG.md (1–101)\n\nTool results:\n\n  → result (ok): 1→## 2.21.0 (2025-11-18)\n     2→\n     3→\n     4→### Features\n     5→\n     6→ COREFRONT-391: Popover - add new optional prop label (#991) (d64a9d2)\n     7→* COREFRONT-579: Add support for React 19 (#863) ([549d2\n…(truncated, 7339 more chars)\n\nPerfect! I have all the information I need. Let me compile the findings:\n\nSummary\n\nI've found the replacements for the deprecated Text and Button components in the Oxygen design system. Here are the exact import paths and component recommendations:\n\n1. Replacement for deprecated Text component\n\nDeprecation Statement (line 110 of Text.tsx):\n@deprecated use <Paragraph/>, <Heading/> or other HTML semantic elements instead\n\nReplacement Components:\n- Paragraph - for body text content\n  - Import: @doctolib/design-system/Paragraph\n  - Location: /Users/USER/workspace/doctolib/oxygen/packages/core/src/dataDisplay/text/Paragraph.tsx\n\n- Heading - for heading/title content\n  - Import: @doctolib/design-system/Heading\n  - Location: /Users/USER/workspace/doctolib/oxygen/packages/core/src/dataDisplay/text/Heading.tsx\n\n- Span - for inline text content\n  - Import: @doctolib/design-system/Span\n  - Location: /Users/USER/workspace/doctolib/oxygen/packages/core/src/dataDisplay/text/Span.tsx\n\nMigration Props:\nThe migration file (/Users/USER/workspace/doctolib/oxygen/packages/core/src/dataDisplay/text/Text/migration.ts) documents:\n- uiStyle → font (with specific value mappings like body-s-bold → Body/S/Bold)\n- id → _id\n- color → uses new color tokens (e.g., neutral-090 → shared/text/minorText/weak)\n- colorInherit → color=\"inherit\"\n- className → customStyle (Tailwind CSS classes only)\n\n---\n\n2. Replacement for deprecated Button component\n\nDeprecation Statement (line 105 of Button.tsx):\n@deprecated Use the @doctolib/design-system/Button/v2 component instead.\n\nNew Button Component:\n- Button/v2 - the new standardized button component\n  - Import: @doctolib/design-system/Button/v2\n  - Location: /Users/USER/workspace/doctolib/oxygen/packages/core/src/actions/Button/v2/Button.tsx\n\nMigration Props (/Users/USER/workspace/doctolib/oxygen/packages/core/src/actions/Button/migration.ts):\n- disabled → isDisabled\n- loadable={{ loading }} → isLoading (+ new loadingLabel prop for accessibility)\n- uiStyle → variant + uiStyle (e.g., primary becomes variant=\"solid\" + uiStyle=\"brand\")\n- size → size (but only small or medium supported; DEPRECATED_big/relative/auto removed)\n- leftIcon → icon (must be an icon component, not a string name)\n- onClick → onClick (now required unless type=\"submit\")\n\nRemoved Props in v2:\n- block, circle, square, component, to, href, floating, labelClassName, rightIcon, onTap, preventDefault, DEPRECATED_outline\n\nRelated Components for Edge Cases:\n- IconButton/v2 - for icon-only buttons (replaces circle/square)\n  - Import: @doctolib/design-system/IconButton/v2\n  \n- LinkWithButtonStyle - for navigation links styled as buttons (replaces buttons with to/href)\n  - Import: @doctolib/design-system/LinkWithButtonStyle\n\n---\n\nPackage Structure\n\nThe Oxygen design system has multiple packages:\n- @doctolib/design-system (core) - base components\n- @doctolib/design-system-b2b - B2B specific variants\n- @doctolib/design-system-b2c - B2C specific variants\n\nAll imports shown above work with all three packages by replacing @doctolib/design-system with the appropriate package name.",
  "sha256": "662615406b3f2d77",
  "source_url": "sessions/ui-shell/2026-03-13T10-57-ui-shell-jazzy-prancing-cook-subagent-aca03208.html"
}