Added the 'tailwind-scrollbar' dependency to the project manifest files and imported it into the Tailwind CSS configuration. This allows us to leverage the scrollbar utility features provided by 'tailwind-scrollbar'. This change is reflected in the updated yarn.lock, package.json, and tailwind.config.js files.
The CLI README has been updated to reflect the removal of the --forceShared flag from the available commands. Additionally, all references to the code have been updated from version 0.3.0 to version 0.4.0 to align with the current version of the application.
Consolidated the process of installing the library in the "add" command. Simplified the path handling by using the dirname function. Also, the shared-file version dependent part has been removed. Library installation is now based on a singular registry url path instead of component specific versions.
Three functions have been removed to simplify the `registry.ts` file in the CLI package. These functions are `getComponentName`, `getComponentLibVersion`, and `getLibURL`, which are no longer required. This commit contributes to making the codebase cleaner and more maintainable.
Removed the 'libVersion' field from the RegistryComponent interface and updated the 'lib' path in the DEFAULT_CONFIG and 'paths' field in Registry. The 'lib' path now includes the file extension '.tsx', aiming to improve clarity and accuracy.
The commit updates the README file located in the CLI package. It mainly changes the links that refer to the code of the `add`, `list`, and `search` commands. The references in those links are now pointing to the 0.3.0 version instead of the 0.2.1 version.
The import statement in the add.tsx file of the CLI package has been updated to use the correct library name and version. This change ensures accurate reference to shared libraries, leading to better stability and interoperability.
The change includes an update to config.ts in CLI. The configuration paths for the shared module changed from 'shared' to 'lib'. Also, the import paths adjusted to reflect the path changes from 'shared' to 'lib'.
Import additional helper methods in add.tsx. Remove forceShared flag as it could potentially break components. Instead of planning for a shared module, this commit plans for version-specific libraries, which exist in a separate lib folder. This ensures that the right version of the library required by the component is installed. Also, handle potential errors related to absence of lib version in the registry. Fixed component installation path.
Modified the return type of the function getComponentLibVersion in registry.ts. Instead of returning a string or null, it now returns an object with a boolean type 'ok' status and 'libVersion'. The 'ok' attribute indicates whether the library version is included in the registry.
This commit introduces three new async functions in the registry.ts file to assist with CLI operations. These include methods to get component names, retrieve library versions, and fetch library URLs.
The Registry interface in the 'const.ts' file within the cli package has been updated. The 'components' property is now a record of RegistryComponent objects, which includes 'name' and 'libVersion' properties, previously it was a record of strings.
Update the functions `getComponentURL` and `getComponentRealname` in the CLI helper `registry.ts` to access the component name through the 'name' property of each component object in the registry, instead of directly accessing the component name.
This commit updates the registry helper in the CLI package. It now returns the full component name from the registry, instead of only returning the last part of the component's path.
Change the way the component URL is formed in the getComponentURL function in the registry helper. Now, it appends the path instead of replacing it directly in the registry base.
The Registry interface has been refactored to include "paths" field, which is an object containing "components" and "lib" paths. Also, "lib" field is now a string array instead of a record.
Changed the 'shared' property in the Registry interface to 'lib'. This update in 'packages/cli/src/const.ts' provides a more generic way to manage libraries with a key-value pair notation.
The commit includes an update in the cli package where we've changed the properties in paths and import objects from 'shared' to 'lib'. This refactoring also applies to the DEFAULT_CONFIG object and the configZod object, ensuring consistency across all configurations.
The links to the code for add, list, and search commands in README.md are updated to reflect the latest version of the CLI (v0.2.1). Additionally, the package version for the CLI is updated from 0.2.0-build to 0.2.1 in package.json.
State setting logic for SearchBox in the CLI package has been streamlined. Redundant setState calls have been eliminated while others are more appropriately placed for better state management. This refactor focuses on the selected and queryMode states. Improved handling of selection state enhances component efficiency.
This commit updates the homepage and repository URLs in the package.json file for the cli package. It also cleans up some unnecessary scripts in the "scripts" block.
This update upgrades the version of the cli package from 0.1.0 to 0.2.0. It also includes the addition of a new "search" command in the CLI readme documentation. Link to relevant source code has also been updated.
Refactored the 'cli add' command to streamline the process of component selection and the decision to overwrite an already installed one. The task has been split into two separate interactive choices to enhance the user experience and simplify the codebase. The force option is now also evaluated separately which results in cleaner code.
Renamed 'add.ts' to 'add.tsx' and converted it to a React component. This change includes implementing search functionality through installed components and handling the case if the component is already installed. Added search options and overwriting prompt in CLI interface.
This commit includes the addition of a new component, Choice, that presents two options yes or no to the user. The user can interact with this component using the up and down arrow keys. Based on this selection, different actions can be submitted. The feature also supports unicode if the environment supports it.
The onSubmit function typing in the SearchBox component was changed from handling a string to handling a generic T type object. Also, the onSubmit function now uses the found item in components based on the selected suggestion to submit instead of submitting directly.