feat: Install/add components in base coss-ui package#25456
feat: Install/add components in base coss-ui package#25456sean-brydon wants to merge 35 commits intomainfrom
Conversation
| "components": "@/components", | ||
| "utils": "@/lib/utils", | ||
| "ui": "@/components", | ||
| "lib": "@/lib", | ||
| "hooks": "@/hooks" |
There was a problem hiding this comment.
Correctly setup with input paths
There was a problem hiding this comment.
10 issues found across 56 files
Prompt for AI agents (all 10 issues)
Check if these issues are valid — if so, understand the root cause of each and fix them.
<file name="packages/coss-ui/components/empty.tsx">
<violation number="1" location="packages/coss-ui/components/empty.tsx:13">
Props are spread on both the outer wrapper div and the inner content div, causing duplication of event handlers, IDs, and other attributes. The inner div should likely not receive `{...props}` since the outer wrapper already has them.</violation>
</file>
<file name="packages/coss-ui/components/spinner.tsx">
<violation number="1" location="packages/coss-ui/components/spinner.tsx:8">
The `aria-label="Loading"` contains a hardcoded English string. Consider accepting the aria-label as a required prop or providing a mechanism for localization to ensure accessibility in different languages.</violation>
</file>
<file name="packages/coss-ui/components/sidebar.tsx">
<violation number="1" location="packages/coss-ui/components/sidebar.tsx:86">
`cookieStore` API is not universally available - it's unsupported in Firefox (all versions) and during SSR. This will cause runtime errors. Consider adding a guard like `if (typeof cookieStore !== 'undefined')` or falling back to `document.cookie`.</violation>
<violation number="2" location="packages/coss-ui/components/sidebar.tsx:622">
Using `Math.random()` in `useMemo` with empty dependencies will cause hydration mismatches in SSR. The server and client will generate different random values. Consider using a stable seed, passing width as a prop, or using `useId()` to generate a deterministic value.</violation>
</file>
<file name="packages/coss-ui/components/toggle-group.tsx">
<violation number="1" location="packages/coss-ui/components/toggle-group.tsx:66">
The `||` operator will always use context values since they're truthy strings ("default"), preventing individual Toggle items from overriding group variants/sizes via props. Consider using nullish coalescing with props taking precedence: `variant ?? context.variant`.</violation>
<violation number="2" location="packages/coss-ui/components/toggle-group.tsx:67">
Same issue as `resolvedVariant` - the `||` operator prevents size props from overriding context values. Consider: `size ?? context.size`.</violation>
</file>
<file name="packages/coss-ui/styles.css">
<violation number="1" location="packages/coss-ui/styles.css:61">
Duplicate `@keyframes skeleton` definitions (8 identical copies). This appears to be a code generation or copy-paste error. Remove the 7 duplicate definitions and keep only one.</violation>
</file>
<file name="packages/coss-ui/components/pagination.tsx">
<violation number="1" location="packages/coss-ui/components/pagination.tsx:87">
Consider exposing 'Previous' text as a configurable prop (e.g., `label?: string`) to allow consuming applications to provide localized strings. UI component libraries typically avoid hardcoded user-facing text to support i18n.</violation>
</file>
<file name="packages/coss-ui/components/breadcrumb.tsx">
<violation number="1" location="packages/coss-ui/components/breadcrumb.tsx:74">
`opacity-72` is not a standard Tailwind CSS class. Use `opacity-70` or `opacity-75` instead.</violation>
<violation number="2" location="packages/coss-ui/components/breadcrumb.tsx:97">
Hardcoded text "More" should use `t()` for localization consistency.</violation>
</file>
Reply to cubic to teach it or ask questions. Re-run a review with @cubic-dev-ai review this PR
| @@ -58,6 +58,46 @@ | |||
| --radius-md: calc(var(--radius) - 2px); | |||
| --radius-lg: var(--radius); | |||
| --radius-xl: calc(var(--radius) + 4px); | |||
| @keyframes skeleton { | |||
There was a problem hiding this comment.
Duplicate @keyframes skeleton definitions (8 identical copies). This appears to be a code generation or copy-paste error. Remove the 7 duplicate definitions and keep only one.
Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At packages/coss-ui/styles.css, line 61:
<comment>Duplicate `@keyframes skeleton` definitions (8 identical copies). This appears to be a code generation or copy-paste error. Remove the 7 duplicate definitions and keep only one.</comment>
<file context>
@@ -58,6 +58,46 @@
--radius-md: calc(var(--radius) - 2px);
--radius-lg: var(--radius);
--radius-xl: calc(var(--radius) + 4px);
+ @keyframes skeleton {
+ to {
+ background-position: -200% 0;
</file context>
✅ Addressed in 6b71b1b
There was a problem hiding this comment.
@pasqualevitiello weird - this came straight from registery
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
Deployment failed with the following error: View Documentation: https://vercel.com/docs/accounts/team-members-and-roles |
|
Deployment failed with the following error: View Documentation: https://vercel.com/docs/accounts/team-members-and-roles |
There was a problem hiding this comment.
1 issue found across 25 files (reviewed changes from recent commits).
Prompt for AI agents (all 1 issues)
Check if these issues are valid — if so, understand the root cause of each and fix them.
<file name="packages/coss-ui/package.json">
<violation number="1" location="packages/coss-ui/package.json:6">
P1: Export path `./styles/globals.css` does not exist. The `styles/` directory is missing - only `styles.css` exists at the root level. This will cause import failures.</violation>
</file>
Reply to cubic to teach it or ask questions. Re-run a review with @cubic-dev-ai review this PR
| "version": "0.0.0", | ||
| "exports": { | ||
| "./styles.css": "./styles.css", | ||
| "./globals.css": "./styles/globals.css", |
There was a problem hiding this comment.
P1: Export path ./styles/globals.css does not exist. The styles/ directory is missing - only styles.css exists at the root level. This will cause import failures.
Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At packages/coss-ui/package.json, line 6:
<comment>Export path `./styles/globals.css` does not exist. The `styles/` directory is missing - only `styles.css` exists at the root level. This will cause import failures.</comment>
<file context>
@@ -3,9 +3,10 @@
"version": "0.0.0",
"exports": {
- "./styles.css": "./styles.css",
+ "./globals.css": "./styles/globals.css",
+ "./lib/*": "./lib/*.ts",
"./components/*": "./components/*.tsx",
</file context>
| "./globals.css": "./styles/globals.css", | |
| "./globals.css": "./styles.css", |
✅ Addressed in dbdf280
What does this PR do?
This PR adds coss ui to the packages/coss-ui folder
Summary by cubic
Adds the base coss-ui package with a full set of accessible React components, shared utilities, and styles to standardize UI across apps. Integrates the library into the web app (aliases, Tailwind sources, config) and continues migrating settings screens to @coss/ui.
New Features
Dependencies
Written for commit c0b8175. Summary will update automatically on new commits.