Skip to content

Releases: jaydenseric/device-agnostic-ui

Version 11.0.0

02 Sep 00:36
Compare
Choose a tag to compare

Major

  • Updated Node.js support to ^14.17.0 || ^16.0.0 || >= 18.0.0.
  • Updated the react peer dependency to ^18.0.0.
  • Updated dependencies, some of which require newer Node.js versions than previously supported.
  • Use the node: URL scheme for Node.js builtin module imports in tests.
  • Removed the LinkActive.mjs module and the next optional peer dependency.

Patch

  • Removed the redundant react-dom peer dependency.
  • Updated dev dependencies.
  • Removed the now redundant next dev dependency.
  • Updated ESLint config.
  • Simplified Stylelint dev dependencies and config.
  • Updated jsconfig.json:
    • Set compilerOptions.maxNodeModuleJsDepth to 10.
    • Set compilerOptions.module to nodenext.
  • Updated GitHub Actions CI config:
    • Run tests with Node.js v14, v16, v18.
  • Removed the now redundant not IE > 0 from the Browserslist query.
  • Updated the package description and keywords to remove mention of Next.js.
  • Added esm and mjs package keywords.
  • Updated react-dom/server imports to suit React v18 in tests.
  • Corrected “Markdown” capitalization in documentation.
  • Added a JSDoc description to the React component Margin.
  • Revamped the readme:

Version 10.1.0

14 Mar 23:37
Compare
Choose a tag to compare

Minor

  • Modules for React components with CSS dependencies now have a css export that’s a Set instance containing CSS dependency URLs.

Patch

  • Updated dev dependencies.
  • Updated GitHub Actions CI config.

Version 10.0.0

18 Feb 13:02
Compare
Choose a tag to compare

Major

  • Replaced the List React component with ListOrdered and ListUnordered React components.
  • The WordBreaks React component now accepts a text prop instead of children.
  • The Toggle React component now has a render error if the prop inputProps.type isn’t specified.
  • Implemented TypeScript types via JSDoc comments.

Patch

  • Updated dependencies.
  • Check TypeScript types via a new package types script.
  • Simplified dev dependencies and config for ESLint.
  • Use the ALLOW_MISSING_COVERAGE environment variable with the package tests script to allow missing code coverage. Tests covering the full React hooks lifecycle can be added in the future.
  • Added React component HTML snapshot tests using a new snapshot-assertion dev dependency.
  • Fixed the WordBreaks React component not returning the original text string when no word breaks are inserted.
  • Fixed the Toggle React component implementation for the prop inputProps.className.
  • Added a license.md MIT License file.
  • Improved documentation.

Version 9.0.0

29 Nov 11:23
Compare
Choose a tag to compare

Major

  • Updated Node.js support to ^12.22.0 || ^14.17.0 || >= 16.0.0.
  • Updated dependencies, some of which require newer Node.js versions than previously supported.
  • Public modules are now individually listed in the package files and exports fields.
  • Removed ./package from the package exports field; the full package.json filename must be used in a require path.
  • Removed the package main index module; deep imports must be used.
  • Shortened public module deep import paths, removing the /public/.
  • The API is now ESM in .mjs files instead of CJS in .js files, accessible via import but not require.
  • Removed the prop-types dependency and related functionality:
    • Removed the propTypeChildren package export.
    • Removed the propTypes property from React components.
  • More modern JavaScript syntax.
  • Removed some CSS vendor prefixes.
  • Switched back to using React.createElement instead of the the new React JSX runtime.

Patch

  • Updated the next peer dependency to 9.0.4 - 12.
  • Removed the @babel/runtime and object-assign dependencies.
  • Also run GitHub Actions CI with Node.js v17.
  • Simplified package scripts.
  • Removed the Babel and PostCSS build process.
  • Removed conditionality on the Node.js global process.env.NODE_ENV.
  • Made the LinkActive and WordBreaks React components named functions.
  • Reorganized the test file structure.
  • Test the bundle sizes for public modules individually.
  • Use a new assertBundleSize function to assert module bundle size in tests:
    • Failure message contains details about the bundle size and how much the limit was exceeded.
    • Errors when the surplus is greater than 25% of the limit, suggesting the limit should be reduced.
    • Resolves the minified bundle and its gzipped size for debugging in tests.
  • Configured Prettier option singleQuote to the default, false.
  • Documentation tweaks.

Version 8.0.1

16 Jun 04:07
Compare
Choose a tag to compare

Patch

  • Updated the next peer dependency to 9.0.4 - 11.
  • Updated dev dependencies.
  • Renamed imports in the test index module.
  • Amended the changelog entries for v6.0.0 and v8.0.0.

Version 8.0.0

22 May 06:00
Compare
Choose a tag to compare

Major

  • Updated Node.js support to ^12.20 || >= 14.13.
  • Updated dependencies, some of which require newer Node.js versions than were previously supported.
  • Replaced the the package.json exports field public subpath folder mapping (deprecated by Node.js) with a subpath pattern. Deep require paths within device-agnostic-ui/public/ must now include the .js file extension.
  • The tests are now ESM in .mjs files instead of CJS in a .js file.

Patch

  • Reordered package fields.
  • Updated the GitHub Actions CI config to run tests with Node.js v12, v14, v16.
  • Test the bundle size using esbuild instead of webpack and disposable-directory.
  • Updated the documented bundle size.
  • Use the .js file extension in internal require paths.
  • Documentation improvements.
  • The file changelog.md is no longer published.

Version 7.0.1

09 Feb 03:24
Compare
Choose a tag to compare

Patch

  • Fixed Select component arrow styles that were accidentally broken in v7.0.0.

Version 7.0.0

09 Feb 03:00
Compare
Choose a tag to compare

Major

  • Replaced styled-jsx CSS-in-JS styling with vanilla CSS files, using the BEM class naming convention. The necessary CSS files (depending on the components used) must be manually loaded in your app.

Minor

  • Made the next peer dependency optional via a new package peerDependenciesMeta field. Now React projects without Next.js installed can install this package and use non Next.js related components via deep imports.

Patch

  • Updated the package description to mention React.
  • Updated the package keywords field.
  • Added a webpack v5 bundle test, asserting the minified and gzipped size is < 3 kB.

Version 6.0.1

06 Feb 10:33
Compare
Choose a tag to compare

Patch

  • Updated dependencies.
  • Replaced the babel-eslint dev dependency with @babel/eslint-parser.
  • Updated the Browserslist query to exclude all IE versions from the list of supported browsers.
  • Fixed invalid nesting of a HTML div element inside a button within the ButtonSubmit component.
  • Use regex u mode within the function splitWordBreaks.
  • Quote CSS font-family names containing spaces.
  • Fixed Html component first and last child blockquote element CSS top and bottom margins.
  • Fixed Html component child ol element first child li element CSS top margins.

Version 6.0.0

23 Dec 04:59
Compare
Choose a tag to compare

Major

  • Updated the react and react-dom peer dependencies to 16.14.0 - 17.
  • Updated dependencies, some of which require newer Node.js versions than were previously supported.
  • Updated Node.js support from v8.10+ to ^10.17.0 || ^12.0.0 || >= 13.7.0.
  • Removed the package module field.
  • Added a package exports field with conditional exports to support native ESM in Node.js and keep internal code private, whilst avoiding the dual package hazard. Published files have been reorganized and most are now CJS instead of ESM, so previously undocumented deep imports will need to be rewritten.
  • Updated the Babel config to use the new JSX transform and removed now redundant React requires.
  • Ensure using the data-daui-color-scheme HTML attribute also updates the element’s font color to match the specified color scheme.

Minor

  • Allow React component displayName and propTypes to be removed in production builds.
  • Setup GitHub Sponsors funding:
    • Added .github/funding.yml to display a sponsor button in GitHub.
    • Added a package.json funding field to enable npm CLI funding features.

Patch

  • Update the next peer dependency to 9.0.4 - 10.
  • Stop using husky and lint-staged.
  • Stop using size-limit temporarily due to ai/size-limit#205.
  • Use coverage-node to enforce 100% code coverage for tests.
  • Updated GitHub Actions CI config:
    • Ensure it also runs on pull request.
    • Updated actions/checkout to v2.
    • Updated actions/setup-node to v2.
    • Also test Node.js v14 and v15.
    • Simplified config with the npm install-test command.
    • Don’t specify the CI environment variable as it’s set by default.
  • Use strict mode for scripts.
  • Custom Babel plugins now run before and after the styled-jsx/babel plugin, to workaround vercel/styled-jsx#680 and vercel/styled-jsx#689.
  • Improved the package prepare:prettier and test:prettier scripts.
  • Reordered the package test:eslint script args for consistency with test:prettier.
  • Configured Prettier option semi to the default, true.
  • Removed npm-debug.log from the .gitignore file as npm v4.2.0+ doesn’t create it in the current working directory.
  • Updated the .editorconfig file.