-
Notifications
You must be signed in to change notification settings - Fork 19
Implement new 3D primitives for React in the @playcanvas/blocks package #142
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
- Introduced a new package for high-level 3D primitives, including components like SplatViewer, Controls, and various UI elements (Button, Card, Dialog, etc.). - Updated package.json and package-lock.json to include new dependencies and devDependencies. - Enhanced the SplatViewer with improved camera controls and UI interactions. - Added comprehensive documentation for the new components and their usage. - Removed unused components and streamlined the project structure for better maintainability. These changes significantly enhance the functionality and usability of the PlayCanvas React library, providing developers with powerful tools for creating immersive 3D experiences.
…w job - Changed the build script for blocks in package.json to reference the correct workspace (@playcanvas/blocks). - Renamed the GitHub workflow job from 'lint' to 'publish' for clarity in the CI/CD process.
- Added a publishConfig section to package.json for the blocks package, specifying public access for publishing.
…option - Modified the build script for the @playcanvas/blocks workspace to simplify the build process by removing the no-mangling option, ensuring a more straightforward build configuration.
commit: |
…patibility - Deleted package-lock.json to streamline dependency management. - Updated scripts in package.json to utilize pnpm for workspace commands, enhancing build and development processes. - Adjusted dependencies in blocks and docs package.json files to ensure proper workspace linking and compatibility.
- Introduced pnpm as the package manager by adding pnpm-lock.yaml and pnpm-workspace.yaml files. - Updated GitHub workflows to utilize pnpm for dependency installation, linting, testing, and building processes. - Enhanced documentation components by integrating the Viewer from @playcanvas/blocks and updating related MDX files. - Adjusted package.json scripts in the lib package to ensure proper build execution during publish and post-installation.
…blishing - Modified the test script in package.json to remove the '--if-present' flag for consistency. - Updated the GitHub workflows to change the library build step from 'build:lib' to 'build:blocks' for better clarity. - Adjusted the publish workflow to utilize 'pnpm dlx' for the publish command, enhancing the publishing process.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR implements new 3D primitives for React in the @playcanvas/blocks package by introducing high-level UI components and refactoring project configuration.
- Introduces new components like Button and Badge for building 3D UIs.
- Updates import aliases throughout the codebase and adjusts build scripts and workflows to use pnpm.
- Enhances documentation and streamlines the overall project structure.
Reviewed Changes
Copilot reviewed 58 out of 58 changed files in this pull request and generated no comments.
Show a summary per file
File | Description |
---|---|
packages/blocks/src/components/ui/toggle-group.tsx | Updated import aliases for utility functions and toggle variants. |
packages/blocks/src/components/ui/tabs.tsx | Updated import alias for the utility function. |
packages/blocks/src/components/ui/table.tsx | Updated import alias for the utility function. |
packages/blocks/src/components/ui/switch.tsx | Updated import alias for the utility function. |
packages/blocks/src/components/ui/slider.tsx | Updated import alias for the utility function. |
packages/blocks/src/components/ui/separator.tsx | Updated import alias for the utility function. |
packages/blocks/src/components/ui/dropdown-menu.tsx | Updated import alias for the utility function. |
packages/blocks/src/components/ui/drawer.tsx | Updated import alias for the utility function. |
packages/blocks/src/components/ui/dialog.tsx | Updated import alias for the utility function. |
packages/blocks/src/components/ui/card.tsx | Updated import alias for the utility function. |
packages/blocks/src/components/ui/button.tsx | Introduced new Button component with customizable variants and sizes. |
packages/blocks/src/components/ui/badge.tsx | Introduced new Badge component with variant options. |
packages/blocks/package.json | Added new package configuration for the blocks module. |
packages/blocks/README.md | Provided documentation for installing and using the new components. |
package.json | Transitioned build scripts from npm to pnpm and updated dependency management. |
.github/workflows/* | Updated CI/CD workflows to use pnpm and Node.js 22.x for consistency. |
Comments suppressed due to low confidence (1)
packages/blocks/src/components/ui/toggle-group.tsx:7
- The updated import alias '@lib/utils' is used consistently across multiple files; please confirm that the TS configuration and bundler settings are updated accordingly to correctly resolve these new paths.
import { cn } from "@lib/utils"
Uh oh!
There was an error while loading. Please reload this page.