Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
18 commits
Select commit Hold shift + click to select a range
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
23 changes: 0 additions & 23 deletions .eslintrc

This file was deleted.

44 changes: 44 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
This template outlines the recommended format for creating pull requests within this project. Please fill out all sections before submitting your PR

## Branch Naming:

- Use a descriptive branch name that reflects the change and follows the format: [type]/[brief-description]
- Replace [type] with feature, fix, refactor, hotfix, or other relevant categories
- Keep the description concise and clear

## Commit Guidelines:

- Adhere to the "scope:subject" commit message structure
- Scope can be feat, fix, docs, test, refactor, build, format, etc.
- Use imperative tense (e.g., "fix: User unable to login")
## Pull Request Checklist:

[ ] **Read the contributing guidelines** <br />
[ ] **Branch is up-to-date with the base branch: main (or other designated branch)**<br />
[ ] **Changes pass all tests: npm test or yarn test (or equivalent command)**<br />
[ ] **Documentation has been updated (if applicable)**<br />
## Description:
- Start your pull request summary with a clear and informative heading. Use the Markdown syntax `##` for the heading, like `## Your Heading Here`.
- For the section detailing the changes introduced by this pull request, use the Markdown heading `## Changes`.
- Briefly describe the changes introduced in this pull request.Ensure that the changelog has been updated accordingly
- Explain the motivation and the problem it solves
- Mention any breaking changes
- Link to related issues or internal tickets
## Additional Notes:

- Include any other relevant information, such as limitations, known issues, or future improvements.
## Screenshots (if applicable):

- Add screenshots or GIFs to help visualize your changes.
## Testing Instructions:

- Provide step-by-step instructions on how to test your changes
## Checklist for Reviewers:

[ ] **Code follows project conventions and style guidelines**<br />
[ ] **Changes do not introduce new warnings or errors**<br />
[ ] **Unit tests cover the changes adequately**<br />
[ ] **Documentation is updated correctly and reflects the changes**<br />
Additional Information:

By submitting this pull request, I confirm that my contribution is made under the terms of the MIT License.
13 changes: 7 additions & 6 deletions .github/workflows/test-and-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,15 @@ name: Test Suite

on:
pull_request:
branches: [master]
# The branches below must be a subset of the branches above
branches: [main, dev]

jobs:
test-and-build:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [16.x]
node-version: [18.x]
steps:
- name: Checkout code
uses: actions/checkout@v2
Expand All @@ -26,10 +27,10 @@ jobs:
run: npm install

- name: Linting
run: npm run eslint

- name: Run tests
run: npm run lint
- name: Test cases
run: npm run test

- name: Build
run: npm run build
run: npm run build
17 changes: 6 additions & 11 deletions .github/workflows/update-and-publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,11 +23,11 @@ jobs:
- name: Setup Node.js
uses: actions/setup-node@v2
with:
node-version: 16.x
node-version: 18.x
scope: '@keyvaluesystems'

- name: Install dependencies
run: npm ci
run: npm install

- name: Run tests
run: npm run test
Expand All @@ -43,22 +43,19 @@ jobs:
shell: bash
run: |
BRANCH="${GITHUB_REF#refs/heads/}"
if [ "$BRANCH" == 'master' ]
if [ "$BRANCH" == 'main' ]
then
echo "Branch validation Successful"
else
echo "Releases only taken from master branch"
echo "Releases only taken from main branch"
exit 1
fi

- name: Get Latest version from package.json
run: |
# Get the latest version from package.json
LATEST_VERSION=$(node -p "require('./package.json').version")

# Output the latest version as a workflow env
echo "latest_version=$LATEST_VERSION" >> $GITHUB_ENV

- name: Get new version
id: get_next_version
uses: christian-draeger/[email protected]
Expand All @@ -70,14 +67,12 @@ jobs:
run: |
OLD_VERSION=${{ env.latest_version }}
NEW_VERSION=${{ steps.get_next_version.outputs.next-version }}

npm version $NEW_VERSION --no-git-tag-version
git config user.name github-actions
git config user.email [email protected]
git add package.json package-lock.json
git commit -m "Bump version from $OLD_VERSION to $NEW_VERSION"
git push origin HEAD:master

git push origin HEAD:main
- name: Build Package
run: npm run build

Expand All @@ -90,7 +85,7 @@ jobs:
# Revert package.json and package-lock.json to the previous version
npm version ${{ env.latest_version }} --no-git-tag-version
git commit -am "Revert to version ${{ env.latest_version }}"
git push origin HEAD:master
git push origin HEAD:main
if: failure()

- name: Create GitHub release
Expand Down
72 changes: 22 additions & 50 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,52 +1,24 @@
# These are some examples of commonly ignored file patterns.
# You should customize this list as applicable to your project.
# Learn more about .gitignore:
# https://www.atlassian.com/git/tutorials/saving-changes/gitignore

# Node artifact files
node_modules/
dist/

# Compiled Java class files
*.class

# Compiled Python bytecode
*.py[cod]

# Log files
# Logs
logs
*.log

# Package files
*.jar

# Maven
target/
dist/

# JetBrains IDE
.idea/

# Unit test reports
TEST*.xml

# Generated by MacOS
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
lerna-debug.log*

node_modules
dist
dist-ssr
*.local

# Editor directories and files
.vscode/*
!.vscode/extensions.json
.idea
.DS_Store

# Generated by Windows
Thumbs.db

# Applications
*.app
*.exe
*.war

# Large media files
*.mp4
*.tiff
*.avi
*.flv
*.mov
*.wmv

/node_modules
/build
*.suo
*.ntvs*
*.njsproj
*.sln
*.sw?
14 changes: 1 addition & 13 deletions .husky/pre-commit
100755 → 100644
Original file line number Diff line number Diff line change
@@ -1,13 +1 @@
#!/usr/bin/env sh
. "$(dirname -- "$0")/_/husky.sh"

# Load nvm and set npm path
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
NPM_PATH="$NVM_DIR/versions/node/v22.15.0/bin/npm"

# Ensure we're in the project root
cd "$(dirname "$0")/.."

# Run lint using full npm path with --max-warnings=0 to treat warnings as errors
"$NPM_PATH" run lint -- --max-warnings=0
npm run lint
1 change: 0 additions & 1 deletion .npmrc

This file was deleted.

15 changes: 0 additions & 15 deletions .storybook/main.js

This file was deleted.

9 changes: 0 additions & 9 deletions .storybook/preview.js

This file was deleted.

14 changes: 14 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# Changelog

All notable changes to this project will be documented in this file.

## 1.0.0

### Added

- Initial release of React Multi Level Table component
- Support for hierarchical data with parent-child relationships
- Sorting functionality for parent rows
- Real-time filtering for specified columns
- Pagination with configurable page sizes
- Custom cell rendering with render functions
2 changes: 1 addition & 1 deletion CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
Expand Up @@ -73,4 +73,4 @@ available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.ht
[homepage]: https://www.contributor-covenant.org

For answers to common questions about this code of conduct, see
https://www.contributor-covenant.org/faq
https://www.contributor-covenant.org/faq
6 changes: 2 additions & 4 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,5 @@ Please note we have a code of conduct, please follow it in all your interactions

1. Please ensure your proposal will not radically change current functionality or bring along breaking changes.
2. PRs only consisting of typo fixes (or other automated contributions), will not be accepted.
3. Do not add any dependencies to the project.
4. Document your changes thoroughly.
5. Ensure coverage is complete (`npm run coverage` should show 100% coverage) and that none of the tests fail.
6. Be reactive to any comments, reviews or change requests entered in your pull request.
3. Document your changes thoroughly.
4. Be reactive to any comments, reviews or change requests entered in your pull request.
Loading