diff --git a/README.md b/README.md index 9a025ead7..8b9600d52 100644 --- a/README.md +++ b/README.md @@ -287,6 +287,79 @@ The new SPA does not use Solr as the API endpoint it uses performs all queries o The decision of this change is made on the assumption that Solr may not be required in the context of files tab search, whose search facets are reduced compared to other in-application searches. Therefore, if we find evidence that the assumption is incorrect, we will work on extending the search capabilities to support Solr. +## Publishing the Design System + +The Design System is published to the npm Package Registry. To publish a new version, follow these steps: + +1. **Update the version** + + Update the version running the lerna command: + + ```shell + lerna version --no-push + ``` + + This command will ask you for the new version and will update the `package.json` files and create a new commit with the changes. + +2. **Review the auto generated CHANGELOG.md** + + The lerna command will generate a new `CHANGELOG.md` file with the changes for the new version. Review the changes and make sure that the file is correct. + + If it looks good, you can push the changes to the repository. + + ```shell + git push && git push --tags + ``` + + Optional: + + If you need to make any changes to the `CHANGELOG.md` file, you can do it manually. + + After manually updating the `CHANGELOG.md` file, you can commit the changes. + + ```shell + git add . + git commit --amend --no-edit + git push --force && git push --tags --force + ``` + + This command will amend the lerna commit and push the changes to the repository. + +3. **Review the new tag in GitHub** + + After pushing the changes, you can review the new tag in the [GitHub repository](https://github.com/IQSS/dataverse-frontend/tags). + + The tag should be created with the new version. + +4. **Publish the package** + + After the version is updated, you can publish the package running the lerna command: + + ```shell + lerna publish from-package + ``` + + This command will publish the package to the npm registry. + + Remember that you need a valid npm token to publish the packages. + + Get a new token from the npm website and update the `.npmrc` file with the new token. + + Open the `.npmrc` file and replace `YOUR_NPM_TOKEN ` with your actual npm token. + + ```plaintext + legacy-peer-deps=true + + //npm.pkg.github.com/:_authToken=YOUR_NPM_TOKEN + @iqss:registry=https://npm.pkg.github.com/ + ``` + +5. **Review the new version in the npm registry** + + After publishing the packages, you can review the new version in the [npm registry](https://www.npmjs.com/package/@iqss/dataverse-design-system?activeTab=versions). + + The new version should be available in the npm registry. + ## Thanks Chromatic diff --git a/lerna.json b/lerna.json index 2ee7df63f..a4212498f 100644 --- a/lerna.json +++ b/lerna.json @@ -1,6 +1,12 @@ { "$schema": "node_modules/lerna/schemas/lerna-schema.json", "version": "independent", + "command": { + "version": { + "conventionalCommits": true, + "changelogPreset": "angular" + } + }, "npmClient": "npm", "packages": ["packages/*"] } diff --git a/package-lock.json b/package-lock.json index c5a5452ea..8d433d18a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -43596,7 +43596,7 @@ }, "packages/design-system": { "name": "@iqss/dataverse-design-system", - "version": "1.0.1", + "version": "1.1.0", "license": "MIT", "dependencies": { "@types/react": "18.0.27", diff --git a/packages/design-system/CHANGELOG.md b/packages/design-system/CHANGELOG.md index f42c76366..ac7498c64 100644 --- a/packages/design-system/CHANGELOG.md +++ b/packages/design-system/CHANGELOG.md @@ -1,10 +1,44 @@ -# v1.0.1 (2023-07-06) +# Change Log + +All notable changes to this project will be documented in this file. +See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. + +# [1.1.0](https://github.com/IQSS/dataverse-frontend/compare/@iqss/dataverse-design-system@1.0.1...@iqss/dataverse-design-system@1.1.0) (2024-03-12) + +### Bug Fixes + +- **Icon-only Button:** add aria-label ([1f17e84](https://github.com/IQSS/dataverse-frontend/commit/1f17e84edf50c6780f8854f28e214386d9b5dc05)) +- **ButtonGroup:** add className ([c295c7b](https://github.com/IQSS/dataverse-frontend/commit/c295c7b914759c37f705b511381dc3e878f55684)) +- **ButtonGroup:** fix styles when using tooltips ([3edfaef](https://github.com/IQSS/dataverse-frontend/commit/3edfaef4f931a6a0b511b09d2a3326371c867f6d)) +- **Tooltip:** avoid layout shift on hover ([a52c3dc](https://github.com/IQSS/dataverse-frontend/commit/a52c3dc972642f6b4e39ef1ed795300a8c5e6528)) +- **Table:** vertically align cells content to the middle ([0f3a335](https://github.com/IQSS/dataverse-frontend/commit/0f3a3352afb3de77d34c634473c46502a415a20b)) +- **Table:** change alignment cells ([fcf89a0](https://github.com/IQSS/dataverse-frontend/commit/fcf89a078ed2d09eac0f3d6673e45efc3445fabe)) +- **styles:** remove absolute path from design system bootstrap imports ([2dddb07](https://github.com/IQSS/dataverse-frontend/commit/2dddb07e11b6d0abf8ac70c70d991173463cc5eb)) +- **Storybook:** set fixed package.json dependencies ([c58dfd1](https://github.com/IQSS/dataverse-frontend/commit/c58dfd143e4ac46dc3507ffe737b663530fd3f35)) +- **Storybook:** accessibility violation fixed ([1aa62b0](https://github.com/IQSS/dataverse-frontend/commit/1aa62b0e7f9108f132995c501836baae0811870a)) +- **Icons:** fix icons not appearing ([72d6bb5](https://github.com/IQSS/dataverse-frontend/commit/72d6bb5fcc518f50fbf2543f0a33a5d0561dbbc5)) +- **DropdownButton:** refactor to also work as a select ([c1171c1](https://github.com/IQSS/dataverse-frontend/commit/c1171c1c0e149fc81811d3469ec046f6b6c3f928)) +- **Dropdown:** add disabled property ([d4a32f1](https://github.com/IQSS/dataverse-frontend/commit/d4a32f10ea6d9e94f7e149886f1044e68afc53dd)) +- **DropdownButtonItem:** add disabled property ([0f2a626](https://github.com/IQSS/dataverse-frontend/commit/0f2a626c7201c90b35ec05823e56efc21be82bcd)) +- **ButtonGroup:** add HTMLAttributes ([821d38f](https://github.com/IQSS/dataverse-frontend/commit/821d38ff53a73dc4f478854e275781d933d920b5)) +- **Button:** add type attribute ([b2c31a7](https://github.com/IQSS/dataverse-frontend/commit/b2c31a7c230c07522d8fce539fa28fafaf26dc95)) +- **Form Inputs:** allow buttons inside form inputs ([0000a4a](https://github.com/IQSS/dataverse-frontend/commit/0000a4a8fd75d63d8b49e0963698d387e081f5de)) + +### Features + +- **Breadcrumb:** add linkAs prop ([f9c5f8a](https://github.com/IQSS/dataverse-frontend/commit/f9c5f8a896b2fb67c025cb90b6f971b529e2a3ef)) +- **Pagination:** add Pagination component to the design system ([0274ca4](https://github.com/IQSS/dataverse-frontend/commit/0274ca4581eb6d3d4e11880af1a6eee390e1a7b8)) +- **OverlayTrigger:** add OverlayTrigger to the Design System ([203c1ec](https://github.com/IQSS/dataverse-frontend/commit/203c1ecbf195379363559ab4e5c3d93f3710aa82)) +- **DropdownHeader:** add DropdownHeader to the Design System ([1ed14be](https://github.com/IQSS/dataverse-frontend/commit/1ed14bebb021363e6490812eb05c834926ffb2d9)) +- **DropdownSeparator:** add DropdownSeparator to the design system ([b4ce154](https://github.com/IQSS/dataverse-frontend/commit/b4ce154a9df880b6b5dfa993bf86c12ffbc926d2)) + +# [1.0.1](https://github.com/IQSS/dataverse-frontend/compare/@iqss/dataverse-design-system@1.0.0...@iqss/dataverse-design-system@1.0.1) (2023-07-06) ### Fixes - Removed unused font files causing the import of some components to fail -# v1.0.0 (2023-07-05) +# 1.0.0 (2023-07-05) ### Features diff --git a/packages/design-system/package.json b/packages/design-system/package.json index b3502cb41..00b5361bc 100644 --- a/packages/design-system/package.json +++ b/packages/design-system/package.json @@ -1,6 +1,6 @@ { "name": "@iqss/dataverse-design-system", - "version": "1.0.1", + "version": "1.1.0", "description": "Dataverse Design System Component Library", "license": "MIT", "repository": { @@ -32,25 +32,25 @@ }, "dependencies": { "@types/react": "18.0.27", - "typescript": "4.9.5", - "vite-plugin-istanbul": "4.0.1", "bootstrap": "5.2.3", "react-bootstrap": "2.7.2", "react-bootstrap-icons": "1.10.3", - "sass": "1.58.1" + "sass": "1.58.1", + "typescript": "4.9.5", + "vite-plugin-istanbul": "4.0.1" }, "devDependencies": { - "@vitejs/plugin-react": "3.1.0", - "@testing-library/cypress": "9.0.0", "@storybook/react": "7.0.2", "@storybook/test-runner": "0.10.0", + "@testing-library/cypress": "9.0.0", + "@vitejs/plugin-react": "3.1.0", + "axe-playwright": "1.2.3", + "chromatic": "6.17.4", "cypress": "12.5.1", + "react": "18.2.0", "vite": "4.1.5", "vite-plugin-dts": "2.3.0", - "vite-plugin-libcss": "1.0.6", - "react": "18.2.0", - "axe-playwright": "1.2.3", - "chromatic": "6.17.4" + "vite-plugin-libcss": "1.0.6" }, "files": [ "dist",