-
Notifications
You must be signed in to change notification settings - Fork 0
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
Feature/style guide #39
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Introduce a new package for style-guide including tsup build configuration. This addition provides scripts for building, cleaning, and watching changes, as well as TypeScript support for seamless development and distribution. Adjustments were also made to excluded folders in `.idea` configuration to reflect these changes.
Deleted `index.js` and introduced distinct rule files for better organization. Rules are now sorted into categories such as stylistic, ES6, and React, providing clearer guidance and modular rule management. This restructuring enhances readability and facilitates future updates to the style guide.
This commit updates the style-guide packages to use ES module syntax instead of CommonJS by replacing `module.exports` with `export default`. It also introduces new dependencies related to ESLint configuration, aligning with the modern JavaScript ecosystem. This adjustment enhances compatibility and developer experience with the latest toolchains.
Introduce comprehensive ESLint configurations for various frameworks, libraries, and scenarios such as testing, TypeScript, and React. This includes importing necessary plugins and setting up rule configurations to enhance code quality and consistency across the project. Also, ensure peer dependencies are checked and provide necessary Babel options for Next.js integrations.
Replaced default exports with named exports across multiple files to enhance module interoperability and maintain consistency. Updated file imports accordingly and added new testing file patterns for greater flexibility. This change improves code readability and aligns with best practices for modern JavaScript module exports.
Convert all internal configuration objects to named exports for improved modularity. This refactor ensures a more consistent pattern across all style guide modules, enhancing maintainability and readability. Default exports have been replaced with named exports, and imports have been updated accordingly. Additionally, the import order for configurations has been adjusted for consistency.
Removed TypeScript type support and declaration files from the style-guide package configuration. This change streamlines the build process by focusing solely on JavaScript artifacts, which are necessary for both CommonJS and ES Modules formats.
Removed .eslintrc.json files from multiple directories, consolidating linting configuration. This change aims to streamline and centralize ESLint configurations for better maintenance. Additionally, upgraded ESLint to version 9.16.0 across dependencies for consistency and to leverage the latest features.
Switched from using require to import for the node:path resolve function in the Next.js and library.js ESLint config files. This enhances consistency and aligns with modern JavaScript module practices.
Updated the animate plugin to explicitly define the type of the input values as strings in the matchUtilities functions. This change eliminates the need for eslint-disable comments and enhances code safety by ensuring type consistency across animation utility functions.
Reformat rule configurations across multiple packages to improve readability and maintainability. Each rule configuration now uses a consistent structure with expanded formatting for better visual separation. These changes do not alter the functionality of the rules but aim to enhance the code's clarity for future reviews and updates.
This commit removes several Babel-related configurations and constants from the ESLint setup as well as file-specific configurations. This streamlines the ESLint configuration by reducing dependencies and simplifying the overall setup. Additionally, the change updates the structure to better align with a modern, streamlined ESLint configuration approach.
Move the TypeScript import resolver configuration from individual configurations into a shared utilities file. This change reduces redundancy and centralizes the resolver settings, improving maintainability and consistency across different ESLint configurations.
Extend the ESLint configuration to ignore files matching '*.config.js'. This change helps prevent linting errors in configuration files, improving workflow efficiency.
Disable nullish coalescing preference and default export restriction to enhance coding flexibility. Introduce new padding rules to enforce consistent blank lines between statements, which helps improve code readability and maintainability. Adjust template expression restriction to allow numbers, addressing performance warnings without compromising string integrity.
Expand eslint ignores to include configuration files and refactor code for readability and error handling. The toggleSidebar function's readability is improved by replacing the ternary operator with an if-else structure. Added error handling for undefined and false cases in calendar and data-table components, ensuring these states are managed to prevent runtime errors. Removed exports for unused components, optimizing the module's export list.
Improved code readability by replacing ternary operators with if-else statements and simplifying type definitions. Introduced case handling for undefined in use-selection hook and enhanced ESLint configuration by ignoring config files and tuning rules. Also, removed unnecessary ESLint disable comments and adjusted package versioning.
Deleted redundant recommended ESLint config file and restructured imports across various packages for consistency. Added inline ESLint disable comments for testing library rules in test files to ensure proper testing practices while maintaining code clarity. Adjusted rules to provide a clearer, more modular configuration setup across different environments.
This commit improves code by refactoring variable handling with nullish coalescing and restructuring conditional logic to use clearer syntax. It also renames `.js` configuration files to `.mjs`, ensuring better module compatibility, and updates ESLint configurations to include new rules and fixability statuses for improved code quality.
Add support for global variables and Jest configurations to eslint configs. This change introduces 'globals' and reorders file patterns for consistency in Next.js and React configs. Additionally, Jest-related configurations are included in the library config to extend testing support.
Introduce global variables for jest in test configurations across Next.js, React, and Library eslint configs. Extend the global scope with node, browser, and serviceworker settings where applicable to provide consistent environment references. This enhancement ensures more comprehensive environment support and reduces potential linting errors in relevant scripts.
Remove unnecessary glob patterns from ignore lists in ESLint configuration files. This change ensures consistency and potentially improves performance by simplifying the patterns used for ignored directories like `.next`, `coverage`, and `dist`. The update affects configurations in the Next.js, React, and library packages.
Remove an unnecessary blank line and add .eslintcache to .gitignore. This update ensures that local ESLint cache files are ignored in the version control, preventing them from being accidentally committed.
Add `--cache` option to ESLint scripts across multiple packages to improve linting performance by caching results. This change helps speed up the linting process by avoiding redundant checks on unchanged files.
Turn off TSDoc syntax rule for test and spec files across all eslint configurations. This adjustment prevents unnecessary linting errors in test files, ensuring more relevant rule checks in testing contexts.
This commit updates several dependencies to their latest versions in the pnpm-lock.yaml file, ensuring that we include the most recent features, improvements, and security patches. Notably, TypeScript has been updated from version 5.6.3 to 5.7.2, along with updates to other packages such as prettier, @types/node, and the Storybook suite. These updates are essential for maintaining stability and compatibility within the project’s ecosystem.
Removed the throw statements for unimplemented cases across multiple components. These cases no longer throw errors but instead fall through to their respective default behaviors. This change simplifies the code and aligns with the default case handling strategy.
Turn off '@typescript-eslint/no-unnecessary-type-parameters' across eslint configurations for next, react, and library packages. This change allows developers to add explicit type parameters for consistency and future-proofing without enforcement to remove them if unnecessary.
Enhance type safety by introducing generics to the useEvent and useFocus hooks. The useEvent hook now supports generic event types, providing more precise typing for event handlers. Similarly, the useFocus hook accepts generic props, improving component integration and predictability.
Introduce a new style-guide package with comprehensive build configuration to ensure consistency across various UI components. This change includes updates to multiple packages to accommodate the style-guide integration. The update aims to enhance maintainability and streamline the development process across related projects.
Remove eslint-disable comments for unnecessary type parameters in the endOfWeek and startOfWeek methods. This change simplifies the code by eliminating redundant annotations while maintaining consistency with the intended method definitions.
Update filters in workflow and scripts from "./packages/*" to "./packages/**". This change ensures that all nested subdirectories within packages are included during build, lint, and test processes, as well as during the changeset publishing workflow.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.