Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "ddingdong-design-system",
"version": "1.0.22",
"version": "1.0.23",
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟠 Major

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash

# First, let's find the Table component file
echo "=== Searching for Table component ==="
fd -t f "Table\.(tsx|ts|jsx|js)$" src/

# Check current Table component implementation
echo -e "\n=== Current Table component content ==="
fd -t f "Table\.(tsx|ts|jsx|js)$" src/ -x cat -n {}

# Look at git history to find previous version
echo -e "\n=== Git log for Table component ==="
fd -t f "Table\.(tsx|ts|jsx|js)$" src/ -x git log --oneline -5 {}

# Show the diff for recent changes to Table component
echo -e "\n=== Recent changes to Table component ==="
fd -t f "Table\.(tsx|ts|jsx|js)$" src/ -x git diff HEAD~1 {}

Repository: COW-dev/ddingdong-design-system

Length of output: 1409


🏁 Script executed:

#!/bin/bash

# Let's check the full git history to see changes to Table
echo "=== Full git history for Table component ==="
git log --oneline -- src/shared/ui/Table/Table.tsx

# Check all commits that mention Table changes
echo -e "\n=== Git commits mentioning Table ==="
git log --oneline --all | grep -i table | head -20

# Let's look at what changed in the recent commit
echo -e "\n=== Details of commit a299aab ==="
git show a299aab --stat

# Search for Table component usage in the codebase
echo -e "\n=== Table component usages ==="
rg -n --type=tsx --type=ts '<Table' -C 3 | head -100

# Search specifically for className being passed to Table
echo -e "\n=== Table with className prop ==="
rg -n --type=tsx --type=ts '<Table\s+[^>]*className' -C 2

# Search for CSS selectors targeting table elements
echo -e "\n=== CSS selectors targeting table elements ==="
rg -n "table\." | head -30

Repository: COW-dev/ddingdong-design-system

Length of output: 12966


🏁 Script executed:

#!/bin/bash

# Search for Table usages with different approach
echo "=== Table component usages (broader search) ==="
rg -n '<Table' -C 3 | head -150

# Check for CSS that targets table elements
echo -e "\n=== CSS/style files ==="
fd -t f "\.(css|scss)$" src/ | head -20

# Check CHANGELOG or version history
echo -e "\n=== Looking for version/changelog files ==="
fd -t f "(CHANGE|VERSION|RELEASE)" . | grep -v node_modules

# Check git remote branches to see version history
echo -e "\n=== Git branches ==="
git branch -a

# Check if there's a specific commit that changed Table className position
echo -e "\n=== Commits that modified Table.tsx ==="
git log --all --oneline -- src/shared/ui/Table/Table.tsx

# Show the refactoring commit
echo -e "\n=== Show refactoring commit 8456ee4 ==="
git show 8456ee4 -- src/shared/ui/Table/Table.tsx | head -100

Repository: COW-dev/ddingdong-design-system

Length of output: 4059


🏁 Script executed:

#!/bin/bash

# Let me check commits after the refactoring
echo "=== All commits affecting Table.tsx in order ==="
git log --all --reverse --oneline -- src/shared/ui/Table/Table.tsx

# Show the original implementation before refactoring
echo -e "\n=== Original Table implementation (commit 653a29f) ==="
git show 653a29f -- src/shared/ui/Table/Table.tsx | head -60

# Show exactly what's on current HEAD
echo -e "\n=== Current HEAD commit info ==="
git log -1 --stat

# Show the current state vs the refactoring diff more carefully
echo -e "\n=== Detailed diff of refactoring commit ==="
git show 8456ee4 -- src/shared/ui/Table/Table.tsx

# Check if there are commits after refactoring that changed Table again
echo -e "\n=== Commits between refactoring and version bump ==="
git log 8456ee4..a299aab --oneline -- src/shared/ui/Table/Table.tsx

Repository: COW-dev/ddingdong-design-system

Length of output: 15605


🏁 Script executed:

#!/bin/bash

# Show what a299aab changed in Table.tsx specifically
echo "=== Detailed changes in commit a299aab for Table.tsx ==="
git show a299aab -- src/shared/ui/Table/Table.tsx | head -100

# Let's verify the parent of a299aab to see the state before
echo -e "\n=== State of Table.tsx just before a299aab ==="
git show a299aab^:src/shared/ui/Table/Table.tsx 2>/dev/null || echo "No parent commit"

# Verify current state matches what we see
echo -e "\n=== Current state of Table.tsx (should match what we saw) ==="
head -29 src/shared/ui/Table/Table.tsx

Repository: COW-dev/ddingdong-design-system

Length of output: 2047


🏁 Script executed:

#!/bin/bash

# Let's check the coderabbit_119 branch to see what changes are being reviewed
echo "=== Checking coderabbit_119 branch ==="
git log --oneline coderabbit_119 | head -10

# Show diff between main and coderabbit_119 for Table.tsx
echo -e "\n=== Diff between main and coderabbit_119 for Table.tsx ==="
git diff main coderabbit_119 -- src/shared/ui/Table/Table.tsx

# Check the current branch we're on
echo -e "\n=== Current branch/state ==="
git log --oneline -3
git status

# Look at what version is in main vs current
echo -e "\n=== Version in main branch ==="
git show main:package.json | grep '"version"'

echo -e "\n=== Version in current state ==="
cat package.json | grep '"version"'

Repository: COW-dev/ddingdong-design-system

Length of output: 1399


🏁 Script executed:

#!/bin/bash

# Check if this is a published package
echo "=== Package info ==="
cat package.json | grep -E '"name"|"version"|"private"'

# Check for any semver or versioning policy
echo -e "\n=== Versioning policy documentation ==="
fd -t f "(SEMVER|VERSION|CHANGELOG)" . | grep -v node_modules | head -10

# Check if there's a changelog
echo -e "\n=== CHANGELOG or similar ==="
ls -la | grep -i change

# Search for any documentation on breaking changes
echo -e "\n=== Looking for BREAKING.md or similar ==="
fd -t f "BREAKING" .

# Check git tags to see version history
echo -e "\n=== Git tags (version history) ==="
git tag | sort -V | tail -10

# Show what changed in the PR more broadly
echo -e "\n=== All files changed in the PR ==="
git diff --name-only main coderabbit_119 | head -20

Repository: COW-dev/ddingdong-design-system

Length of output: 422


Table component className relocation is indeed a breaking change — patch version is inappropriate.

The change moves the className prop from the internal <table> element to the outer wrapper <div>, which breaks CSS selectors and styling patterns targeting the table element directly. External consumers relying on table.custom-class selectors or similar patterns will experience broken styles.

With this package published as ddingdong-design-system and no documented versioning policy, using a patch version (1.0.23) for a breaking change violates semantic versioning. This should be version 2.0.0 (major) to signal breaking changes, or minimally 1.1.0 (minor) if treating as a feature with breaking implications.

The concern is justified and requires addressing the version number.

🤖 Prompt for AI Agents
In package.json at line 3 (version "1.0.23"), the package was published with a
breaking change (Table component moves className from the internal <table> to an
outer <div>), so the version must be bumped to signal the breaking API change;
update the version to 2.0.0 (or at minimum 1.1.0 if you decide to treat it as a
feature), update CHANGELOG/release notes to describe the breaking change and
provide a migration note showing how consumers must move their selectors or pass
classes to the new wrapper, and ensure README/docs and any example code are
updated to reflect the new DOM structure (or alternatively revert the className
relocation if you prefer a non-breaking fix).

"type": "module",
"keywords": [
"react",
Expand Down
7 changes: 5 additions & 2 deletions src/shared/ui/Table/Table.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,12 @@ export type Props = React.HTMLAttributes<HTMLTableElement> & {
export function Table({ className, children, ...props }: Props) {
return (
<div
className={cn('no-scrollbar relative w-full overflow-auto rounded-md border border-gray-100')}
className={cn(
'no-scrollbar relative w-full overflow-auto rounded-md border border-gray-100',
className
)}
>
<table className={cn('w-full table-fixed border-collapse text-sm', className)} {...props}>
<table className="w-full table-fixed border-collapse text-sm" {...props}>
{children}
</table>
</div>
Expand Down
7 changes: 6 additions & 1 deletion src/shared/ui/TextArea/TextArea.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -24,17 +24,22 @@ type TextAreaProps = {
* Custom class name for styling
*/
className?: string;
/**
* Custom class name for Wrapper styling
*/
wrapperClassName?: string;
} & Omit<ComponentProps<'textarea'>, 'rows'>;

export function TextArea({
value,
rows = 3,
showCounter = false,
className,
wrapperClassName,
...props
}: TextAreaProps) {
return (
<Flex dir="col" gap={2}>
<Flex dir="col" gap={2} className={wrapperClassName}>
<textarea
rows={rows}
className={cn(
Expand Down