Skip to content

Latest commit

 

History

History
1109 lines (857 loc) · 107 KB

CHANGELOG.md

File metadata and controls

1109 lines (857 loc) · 107 KB

Change Log

All notable changes to this project will be documented in this file. See Conventional Commits for commit guidelines.

1.9.1 (2024-12-17)

🐛 Bug Fixes

  • fix type react types mismatch (0d4dfb3)

1.9.0 (2024-12-16)

✨ Features

  • react,core: add Table component (cfbc194)

🐛 Bug Fixes

  • fix type react types mismatch (0d4dfb3)

📝 Documentation

  • add component anatomy images (#361) (7bdedc5)
  • add initial accessibility guide intro (#360) (e154c41)
  • Multiple Choice Updates (#362) (d4e9fd6), closes #2
  • website: refresh table docs to reflect the new implementation (#364) (36975a8)

♻️ Refactor

  • update multiple choice to reflect anatomy (#366) (17fd382)

1.8.0 (2023-12-14)

✨ Features

🐛 Bug Fixes

  • reports disclosure collapsed state to screen readers (43ef06)
  • core: solve low contrast with TextField border and white background (0f0c0e)
  • react: solve disappearing checked state in ChoiceField and RadioGroup (adfa78)
  • added an extra validation to avoid making focus (0c7bfd)
  • link: use default link display value (60da30)

📝 Documentation

  • react: improve Tabs stories (6d5a76d)
  • react: remove default arg types from Storybook preview (bab933c)

1.7.1 (2023-06-23)

🐛 Bug Fixes

  • react: solve controlled selected not changing default focus on Dropdown list (7782ea6)
  • react: solve issue of multiple Dropdowns competing for focus (62adfd3)
  • react: solves Dropdown not upgrading button contents when controlled (076cb77)

1.7.0 (2023-03-03)

✨ Features

  • @wwnds/react: add support for react 18 (d5a68f4)
  • dropdown: add "dot" indicator for selected options (0715d02)

🐛 Bug Fixes

  • callout: only name the callout when appropriate (495438e)
  • dropdown: allow selected option to be controlled (b5b7857)
  • modal: only intercept tab inside the open modal (0ca6926)
  • use the label for the listbox's accessible name (93cfc70)

1.6.0 (2022-09-08)

📝 Documentation

  • callout: set examples in an example box (0fbf221)
  • de-pluralize dos & don'ts (16c067f)
  • fix: use React history when navigating on card click (ceaba4a)
  • make example styling more obvious (8c49167)
  • refactor: use admonition syntax for callouts (5c6a948)
  • refactor: use default NavBar & swizzle our own color switch (baec227)
  • sassdoc: make sure elevation section exists (fd56280)
  • swizzle our own admonition to use the NDS Callout (1877d40)
  • update docusaurus to v2 stable! (1c090e2)
  • update extended interfaces (12776d5)

🐛 Bug Fixes

  • badge: use a font size relative to adjacent text (f3792eb)
  • disclosure: make disclosure title full-width (d8262ae)
  • modal: avoid shifting when body scrollbar is removed (2025ee2)
  • use new useId hook to ensure that server and client ids match (0bbd5db)

✨ Features

  • add React 18-compatible useId hook for isomorphic id generation (11491cf)
  • disclosure: allow summary to be any React Node (8714011)

♻️ Refactor

  • always set ref first in base components (f90feea)
  • badge: fix horizontal/vertical padding (e97c650)
  • badge: prefer default vertical alignment (106fa8e)
  • badge: spacers should only be used for spacing (c740d15)
  • BaseDialog: don't allow overriding role or aria-modal (5246771)
  • BaseProgress: don't allow overriding role or aria attributes (36cba5b)
  • BaseSVG: don't allow overriding xmlns or data-source (f7afd36)
  • BaseTextArea: don't allow overriding rows (d6ab6d3)
  • button: clarify error and update link (203223f)
  • disclosure: prefer inline element for title (7a116f4)
  • dropdown: account for missing children (5f93d02)
  • dropdown: create new object instead of assigning (256909f)
  • standardize conventions for all base components (ea4f65e)
  • standardize conventions for component files (c90ccfe)
  • storybook: migrate Checkbox to controls (138c00d)
  • storybook: migrate ChoiceField to controls (0ed9504)
  • storybook: migrate Disclosure to controls (6f48fce)
  • storybook: migrate Dropdown to controls (0e78ec0)
  • storybook: update Badge stories and migrate to controls (532a555)
  • switch to no-motion-first (04771b3)

1.5.0 (2022-04-25)

🐛 Bug Fixes

♻️ Refactor

  • move misc tokens to their own file (229f04e)
  • set all :root foundations in one place (13b68f9)

✨ Features

  • add mixin to set tokens on any selector (de3847e)

1.4.0 (2022-04-06)

✨ Features

  • initial step indicator component (36e2224)

🐛 Bug Fixes

  • core: remove listbox dependency in dropdown (61eb3bf)
  • core: restore bottom-margin-only typesets (bf1a737)
  • modal: don't close when a click starts in dialog but ends outside (db1e943)
  • motion: ensure that motion durations scale with the scalar unit (2631c35)
  • storybook: children select for callout story (7f36f55)
  • visual: use correct modal vertical spacing (eec06da)

📝 Documentation

  • add feature card for step indicator (be71c7a)
  • step-indicator: add anatomy, states, properties, and usage (cc13714)

1.3.2 (2021-12-21)

💄 Visual design

  • button: change the cursor to "not-allowed" when disabled (d597250)

♻️ Refactor

  • dropdown: add distance to inherited popper props (ccae87a)
  • dropdown: add transition prop inherited from Popper (639be87)
  • dropdown: prefer distance to default modifiers (c5f491b)
  • dropdown: reimagine style mixin extension (430858e)
  • dropdown: reorganize exports (0793c57)
  • dropdown: switch to new Listbox & Popper (2710a2a)
  • dropdown: tighten the main interface (77f4074)
  • dropdown: use isOpen/isOpenProp convention (1552a48)
  • listbox: emit the index of the selected option on change (f3c3a91)

📝 Documentation

  • add seach usage to text field (6b5c8b1)
  • callout: tighten description according to UX team feedback (135efae)
  • initial table documentation (8d24af7), closes #152
  • link: add to anatomy, improve usage, and add interactions (6b967b9)
  • progress indicators: add usage docs to progress bar and spinner (5f22bb8)
  • publish first draft of the usable writing guidelines (fbb0313)
  • remove card images from components list (4e44609)
  • use nds Callouts (dada84f)

🐛 Bug Fixes

  • core: prefer internal :focus-visible polyfill flag (6544a8d)
  • react: add Popper to the public API (8315aab)
  • ThemeProvider: don't update theme on every render (36d83f6)

1.3.1 (2021-08-25)

📝 Documentation

  • website: fix pagination display (7244856)

🐛 Bug Fixes

  • core: make all component tokens configurable using "with" (4fb0221)
  • core: make [email protected] an optional peer dependency (11eaf3f)
  • core: prevent duplicate dependency errors on customization (6e2ef54)
  • textfield: allow the Textfield multiline component to expand vertically and horizontally (c02b1ee)

1.3.0 (2021-08-17)

⚡️ Performance

  • listbox: memoize the options map (d0655e2)

🐛 Bug Fixes

✨ Features

  • button: set a default tooltip show delay when iconOnly (877f07d)
  • hooks: add initial stepper hook (90bdbed)
  • hooks: add roving tabindex hook (a5a44e8)
  • initial badge implementation (97a5e23)
  • listbox: add default listbox and option styling (aae5942)
  • listbox: initial standalone listbox (f4450b4)
  • motion: add fade transition (71124e5)
  • popper: add show delay (ead1e5d)
  • react: add children utilities (ea148c6)
  • tag: initial tag implementation (2590936)
  • text-field: add multiline and auto resizing (38b1c53)
  • tooltip: set a default show delay of 400ms (7365cff)

📝 Documentation

  • button: add intro to react api (00905d4)
  • initial badge and tag documentation (0aa70ef)
  • link: update component docs with new react API (b4b6e26)
  • listbox: add custom marker story (a835c4d)
  • popover: add distance knob to minimal story (2b3aeb1)
  • react-providers: add initial docs on context providers (1b70c3d)
  • storybook: add initial listbox stories (ff00e6e)
  • text-field: update section on multiline (bde00ac)
  • tooltip: add showDelay knob to applicable stories (d6b9848)
  • website: initial content guidelines (acb0f42)

♻️ Refactor

  • button: destructure props in one place (e237e72)
  • core: black and white are system tokens (0ceb830)
  • core: remove default selection styling (5af2a09)
  • core: undeclared properties cannot be null (ed0426d)
  • core: use data-color-scheme for theming (0bda516)
  • core: use new sass div syntax (219ee4d)
  • error if onChange triggers without a checked attribute (d18e030)
  • hooks: rewrite the useSelect hook (6b87075)
  • import TooltipCoreProps from the new types file (aa287f8)
  • popover: use "distance" for offset token (a221bf4)
  • popover: use new Popper component (6077554)
  • popover: use updated popper tokens (f444f48)
  • popper: add new Popper implementation (ebdece0)
  • popper: promote popper sass to real component (74d2f46)
  • reference can be an SVGElement (3d0a6b7)
  • remove Element check (0e10fc0)
  • text-field: update email regex (431ce8d), closes #152
  • tooltip: use "distance" for offset token (f3ccc6a)
  • tooltip: use new Popper component (4aa08f6)
  • tooltip: use updated popper tokens (b21f868)
  • use type checking instead of assertion (f4a7dde)
  • website: re-swizzle NavBar (4df05d5)
  • website: remove unused var (a8c3e6d)
  • website: use nds color scheme switch in navbar (c439a1f)

1.2.1 (2021-05-10)

♻️ Refactor

  • core: black and white are system tokens (92afac1)
  • core: use data-color-scheme for theming (5220a9d)

📝 Documentation

  • link: update component docs with new react API (2186af7)
  • react-providers: add initial docs on context providers (ef7d408)

1.2.0 (2021-04-26)

✨ Features

  • link: initial component, context, and hook (1a924db)
  • react: add initial ThemeProvider (617830f)
  • react: add initial theming context and hook (8bf22a6)
  • react: add isomorphic useLayoutEffect hook (880b094)
  • react: add main AppProvider for app-level configuration (2c6c42a)
  • react: add useMediaQuery hook (5233cfb)
  • react: add useSelect hook for multi & single selection (85eea6e)

♻️ Refactor

  • callout: simplify title id (176eff3)
  • docs: move custom components out of theme (62f462a)
  • popover: update dependency lists (f5704f6)
  • react: remove popper.js exports (80161ad)
  • consolidate utilities (8ca6df6)
  • de-memo simple objects (f192152)
  • react: simplify main exports (93f9f16)
  • theme: all fields should be required (ba90d91)
  • remove config & prefixing (06314ca)
  • remove unnecessary conditional hook call (84050e5)
  • update components to use new utilities (74f764a)

📝 Documentation

  • link: add link stories (554960a)
  • refactor: use AppProvider for all color scheme needs (596cc45)

💄 Visual design

🐛 Bug Fixes

  • core: correction Purple-70 (#131) (c4ba15d)
  • dropdown: use current ids for aria-labelledby (efec188)
  • modal: modal does not remove scroll: none; when unmounted(#108) (ec8d197)
  • modal: vqa (#104) (dadf0af)
  • popover: auto scrolling issue (df06117)

1.1.1 (2021-04-06)

🐛 Bug Fixes

♻️ Refactor

  • tooltip: prefer "body" over "content" (b007cb9)
  • tooltip: simplify styling; enable light scheme (4051646)

📝 Documentation

  • tooltip: add knob for tooltip color scheme (f3fc63f)
  • update all readmes (630f0db)

1.1.0 (2021-02-23)

🐛 Bug Fixes

  • choice-field: prevent control from shrinking (4078dfb)
  • core: prevent accidental root declarations (463152b)
  • dropdown: expose Option as an export (a0cfc5f)
  • icon: default size should be in rem, not em (e353910)
  • icon: set min-width to prevent shrinking (b87c7cc)
  • modal: disable body scroll when modal is open (f42018f)
  • modal: enable server-side rendering (2d9b6f0)
  • typography: thin weight should be 100 (ec25444)
  • disable the not-focus-visible for now (ef33289)

📝 Documentation

  • callout: initial anatomy, minimal usage, presets, and React API (bffcf9a)
  • add (disabled) feature link arrow (744f3b1)
  • add components landing page (59f4dd9)
  • add initial image abstracts to components landing page (e40f05a)
  • add light choice field documentation (3c0bae6)
  • set system colors as a table (c06e019)
  • modal: make all modal stories closable (c4b93a4)
  • text-field: add field components to react api (76681bd)
  • add link arrows to landing page cards (591a3fc)
  • add linkArrow to feature card (1d551bb)
  • add optional media to feature card (f998bbb)
  • add reasoning for CSS best practices (6b4b3b3)
  • clean up anatomy copy (1223787)
  • create feature tiles/card component (771ce5f)
  • disable the blog for now (fdb3a1a)
  • don't navigate to empty links (cf32a09)
  • move foundations to its own category (d0f0169)
  • remove redundant "toggle" (dd7d98e)
  • rename "radio buttons" to "radio group" for consistency (3b675d1)
  • restructure and tighten component docs (5c553f1)
  • tighten up choice field & related docs (a4eb170)
  • use media for component cards (0de6dcc)
  • use more consistent anatomy language (845e497)
  • use shadow token for feature card (c3df9b9)
  • dev: add initial developer guide (7e7c3d3)
  • dev-guide: add more guidance (f2da6ea)
  • dev-guide: clean up helpers & utilities copy (0581cb5)
  • guides: add initial guides landing page (1614e55)
  • guides: update guide copy (0e4e5b8)
  • sassdoc: reset is part of the main api (f9c5235)
  • refresh home page (ce7dcb7)
  • update metadata & links (4ddd8bc)
  • use modular core entry point (3a5bc36)
  • link: clean up description and anatomy (b093032)
  • modal: initial modal documentation (7c7b55b)
  • modal: tighten the description (6879b9a)
  • sassdoc: add main API category (9fe405a)
  • use more nds colors, fewer infima ones (ad537b5)

♻️ Refactor

  • callout: adjust dismiss button position for border top or right when title exists (5d2f652)
  • callout: change callout padding from spacing-8 to spacing-6 (3d9b274)
  • callout: vertically align svg in icon to text-bottom (308bea9)
  • dcos: split Infima overrides into their own sheet (87cc1c9)
  • docs: check for DOM before trying to use it (d8a9455)
  • docs: make AllFamilies work in SSR (5496d63)
  • docs: move navbar to standalone sheet (7742761)
  • docs: split out sass config (79987bb)
  • reset: clean up :not(:focus-visible) (131ff90)
  • sassdoc: move the type alias (c4932c9)

✨ Features

  • callout: initial callout implementation (bcba538)
  • core: add and use focus functions (a1ad140)
  • core: add initial shadow tokens (e110e7b)
  • popover: initial popover implementation (7c71ee5)
  • progress: initial spinner & progressbar implementations (3127cc4)

1.0.1 (2020-12-17)

✨ Features

  • core: add tokens.css to build artifacts (d01e314)

🐛 Bug Fixes

  • react: update build script (1c4a1d4), closes #55

🛠 Maintenance

  • yarn upgrade & force update broken package (636003e)
  • core: add tokens.css to build artifacts (94517cb)
  • switch to lodash-es for lodash methods (a5080c3)
  • use lodash, not lodash-es (746be7c)
  • use relative lodash packages (952250c)
  • build: split non-umd and umd builds (497b170)
  • core: update build to use umd name (5be3f0b)
  • yarn upgrade & force update broken package (6d61721)

1.0.0 (2020-11-30)

📝 Documentation

  • add color utilities (e4e500c)
  • add ColorChip component (b4e8124)
  • add default values to the motion table (7767f9b)
  • add focus-visible polyfill (9eee99e)
  • add heading utilities (86a15b4)
  • add initial color scheme details (f702870)
  • add type utilities and empty spacing docs (de47f9c)
  • don't wrap code inside tables (eedc109)
  • improve color docs (56aea6b)
  • initial typeset docs (a9fa510)
  • more selectively apply non-breaking code (63e28bf)
  • outline token conventions (dc97bef)
  • simplify typesets (a2823fa)
  • update link (c96eede)
  • update principles (ee2ee9c)
  • update to react 17 (21916ab)

✨ Features

  • core: add button color role variants (3604b0e)
  • react: add color prop to button (8abd9b0)
  • react: add custom email validation (f3441ca), closes #43
  • react: add label to checked options (a2b106a), closes #14
  • react: add support for react 17 (a9cf00f), closes #32
  • react: allow maxLength to restrict input (bad62d3)
  • react: make it easier to disble TextField's counter (6b48fff)

💄 Visual

  • core: don't let disclosure markers shrink (8c7ad7d)
  • core: invalid TextField border should be error-color (137f3b8)

🐛 Bug Fixes

  • core: ensure that focus is visible above other z-index (ec365b1)
  • core: make button color grade configurable (8c1b16e)
  • core: modal title shouldn't have a bottom margin (c44cf94)
  • core: set modal z-index (b4114f4)
  • core: use correct selection text color (f7615c8)
  • react: ensure counter works in controlled Textfield (fd6afd1)
  • react: ensure counter works in uncontrolled TextField (a6bcc50)
  • react: remove prefix from state changes (db68ad0)

♻️ Refactor

  • core: consolidate color utilities (a689920)
  • core: make scheme maps customizable (74e942a)
  • core: reorganize token :root declarations (1a501f1)
  • core: use token, not property (d62a6ec)
  • react: explicitly pass validation attributes (84005ee)
  • react: improve popper types (0e7a0fb)
  • react: move useValidation to src/hooks (158c110)
  • react: simplify useColorScheme's return (b300c82)

🛠 Maintenance

1.0.0-rc.1 (2020-10-02)

🐛 Bug Fixes

  • react: bind value to the BaseInput in TextField (1a209f4)

1.0.0-rc.0 (2020-09-25)

⚠ BREAKING CHANGES

  • react: TextField can no longer be uncontrolled. To use in an uncontrolled way, use the new TextFieldUncontrolled.
  • core: role color tokens have been renamed to include the -color suffix. See the migration guide for details.
  • core: the $namespace config option has been removed. All tokens and declarations are now hard-coded with the nds namespace.
  • core: the prop function has been removed. Custom properties are now used and declared directly.
  • core: remove custom property fallbacks
  • core: remove optional namespacing

♻️ Refactor

  • core: add typing and improve config comments (21b657d)
  • core: change "utilities" to "helpers" (7109a44)
  • core: make device tokens overrideable (1a46ce9)
  • core: remove device tokens (d37659b)
  • core: simplify structure and api (88b4a2d)
  • core: swap root/src entrypoints (984c943)
  • core: update components to use new api (568a2a2)
  • core: update main export to use helpers/utilities (1de7da8)
  • core: use values in media queries (9b2befb)
  • react: use updated TextField in stories and tests (3507dc2)

🐛 Bug Fixes

  • core: use correct default duration (01d094b)
  • react: allow >maxLength text field input (84c97e5), closes #11
  • react: correctly focus the dropdown button on close (51ad297)
  • react: make TextField and input fully controlled (a39ba8d)

✨ Features

  • core: add color utilities (57a62f2)
  • core: add config for :focus-visible polyfill (7641a2d)
  • core: add configs for link styling; remove unused configs (acfad2b)
  • core: add configurable link component styles (a8d3ff3)
  • core: add modal keys to spacer map (00ae10d)
  • core: add spacing utilities (8f5b186)
  • core: add tokens entrypoint (0a4990d)
  • core: add tokens entrypoint (fb83c28)
  • core: add utility api (0ad9428)
  • core: remove custom property fallbacks (a429dc1)
  • core: remove optional namespacing (0410649)
  • react: add uncontrolled variant of TextField (8cc63ca)

📝 Documentation

  • (hopefully) fix pwa resolution (92991ab)
  • add changelog to footer (044957a)
  • add design tokens section to color foundation (1f02bdd)
  • add initial accessibility foundations (ba875e8)
  • add initial design token foundations (8cde973)
  • add motion design tokens and duration-scalar docs (f683083)
  • add rc.0 migration guide (1cb0ea4)
  • add styling for Infima secondary alerts (3941db1)
  • fix bad a11y in search (5e931eb)
  • fix changelog headings (e5b50f6)
  • improve infima dark footer (a350010)
  • remove unnecessary word (36d7475)
  • update react readme (84bc525)
  • core: update core readme (cafb97a)
  • minor copy edits (dee70c5), closes #12
  • re-enable link underlines (df2d125)
  • switch to frontmatter slug (d4f6b54)
  • tweak getting started structure (48092ad)
  • fix: set color scheme as layout effect (a2de5f9)
  • storybook: add focus-visible polyfill (16598ea)
  • update main styles to use new core api (06aa6e6)
  • website: add initial tooltip component docs (1dcf7f6)
  • website: create a11y admonition (911b08a)

🛠 Maintenance

  • add development browserslist (414726c)
  • add some spellings (47f2cdc)
  • freeze eslint-config-norton at beta.0 (35019ae)
  • remove empty files (eea1aa2)
  • remove non-existent imports (dcc00a7)
  • temporarily disable broken stylelint properties (744d0d4)
  • update formatting of previous migration guide (61d41d4)
  • update sassdoc groups (0667eb9)
  • update storybook core config (1043cbb)
  • update stylelint and restore formerly-broken rules (a967eaa)
  • upgrade @testing-library/react to v11 (34b71a8)
  • upgrade commitlint to v11 (7b781c7)
  • upgrade gulp-postcss & add postcss (3bc92fa)
  • upgrade ts-node to v9 (dedf852)
  • use full color tokens (7807c5d)
  • yarn upgrade (c6fc2a0)
  • yarn upgrade typescript --latest (0b8bcd2)
  • deps-dev: upgrade storybook (a9dddd7)
  • storybook: clarify aria-label story (f3ac9f6)

1.0.0-beta.3 (2020-08-17)

⚠ BREAKING CHANGES

  • react: The Disclosure prop variant has been removed in favor of the boolean panel since it is either in panel mode or it is not.
  • react: The Disclosure prop animate has been inverted and renamed reducedMotion. This allows developers to imperatively declare reducedMotion when they want to disable animations on the component.
  • react: The Disclosure prop open has been renamed isOpen to better align with other openable components.
  • react: The Disclosure prop updateOnResize has been removed entirely as sizing considerations will be handled automatically.
  • react: The Disclosure now allows any icon to be used as the "marker" via the marker prop. Additionally, the marker can be displayed on the left or right via markerPosition.
  • react: The Disclosure is now a forwardRef, so the detailsRef prop has been removed. Use ref instead.
  • react: renamed FieldInfo prop: labelIslabelTag

💄 Visual

  • core: double modal content top-padding (9f2bf4e)
  • core: expand button spacing slightly (a4baee2), closes gitlab#155
  • core: modal title should be full width when alone (3dc1f65)

✨ Features

  • react: add list & subdirectory icons (0d48d25), closes gitlab#154
  • react: add NDS context & corresponding hook (4c73e07)
  • react: add persistent client storage (17bca75)
  • react: add useColorScheme hook (7dfd6ff)

📝 Documentation

  • update disclosure playground example (4064b22)
  • storybook: reorder panel addons (bb8dba8)
  • add props tables to all components (8f3aed9)
  • create placeholders for unwritten components (aea81b7)
  • ensure that anatomy images use the base url (bcd01eb)
  • hard-code the base url in the manfiest (c2196ae)
  • move migration out of guides (941224f)
  • update 1.0 migration guide (f21b4f6)
  • update footer links (bae2255)
  • theme: flesh out PropsTable component (dcbed0a)
  • visual: don't display the invisible anchor focus (0283678)
  • remove empty principles (cd13845)
  • update typescript config (84a649e)
  • use the new colorScheme hook (957f92c)

🐛 Bug Fixes

  • core: make sure that all files are published (9daaceb)
  • core: use correct sass compiler for build (be4146e)

🛠 Maintenance

  • add spell checking (ea84592)
  • fix migration path (b0bd90d)
  • fix spelling errors (caa8284)
  • ignore spelling in core disclosure (e4c321b)
  • re-add missing addons (9b2ea80)
  • re-add storybook actions until stories have been refactored (d7b11df)
  • remove @commitlint/config-lerna-scopes (2d043e2)
  • remove unused testing helper (9f97661)
  • reorder changelog types (3a81a1e)
  • reset should not return anything (94caa5b)
  • react: remove unused debounce package (bcef6ce)
  • release for github (1c21415)
  • suppress console warn (cfb482c)
  • update changelog generation (5928873)
  • update storybook (cf29ba0)
  • deps: yarn upgrade (2321974)
  • dev-deps: remove unused dev dependencies (4e5a5d9)
  • use the same propFilter for storybook & docs (26b4f08)
  • dev-deps: update storybook to v6 (ee7a662)
  • react: code-escape HTML in comment (989178e)
  • storybook: use fixed port for dev (ac32b26)
  • update website linting (68b4650)

♻️ Refactor

  • core: add t-shirt sizing to inline sizing (d0688d1)
  • core: clean up disclosure styling (1cec431)
  • core: simplify switch spacing (94b54ca)
  • docs: convert SearchBar to typescript (5e96417)
  • docs: move components to theme (522eee3)
  • docs: use mdx for color (b91273d)
  • react: labelIs → labelTag (d1f276b)
  • react: make canUseDOM a standalone export (e4fb53c)
  • react: move token helpers to useToken hook (1cffc76)
  • react: remove idGen helper (8e96643)
  • react: remove transitionEnd callback (a8c7d13)
  • react: reorder button props (99bb417)
  • react: rewrite disclosure as a function component (4a12981)
  • react: simplify transition parsing (1986156)
  • react: use markdown links in ts docs (7adbcc0)
  • react: use more readable tagName and avoid is HTML conflict (b02d6e0)
  • storybook: update disclosure stories (3fc58f6)
  • add canUseDOM to help with SSR (663705e)
  • move children description to the prop (d18ffa9)
  • prefer storybook layout for centering (9a1d5be)
  • storybook: update button stories for v6 (9172070)
  • move icon store to Icon component (ee247b7)
  • move remaining hooks to standalone files (7485511)
  • prevent multi-prefixing (2f4c8fb)
  • remove unused utility (8328440)
  • update main exports (6784a0c)
  • use updated hooks and utilities in stories (f570537)
  • react: use updated hooks and utilities in all components (4daac91)

1.0.0-beta.2 (2020-08-07)

  • feat(react)!: provide access to core tooltip props in components that use tooltips (e7df6fd)

Bug Fixes

  • core: set correct success/warning families (5b12169)

BREAKING CHANGES

  • the hideTooltipDelay prop that was used in Button/IconButton/Switch has been removed. Use tooltipProps={{ hideDelay: n }} to replicate the behavior.

1.0.0-beta.1 (2020-07-30)

With this release, the scope has been changed from @nds to @wwnds to allow us to publish on the public NPM registry. To update, you will need to uninstall @nds/{core,react} and then install @wwnds/{core,react}.

npm un @nds/{core,react}
npm i @wwnds/{core,react}

Bug Fixes

  • core: only transition disclosure's transform property (99c1740)
  • react: ensure that returnFocus doesn't have side effects (eec5d6c)
  • react: move deprecated keypress listener to keydown (6306316)
  • react: render FieldInfo children in a fragment (266e0d8)
  • react: SVGElement does not exist on global (f950cce)

Features

  • core: add initial utility declarations (d4c85b3)
  • core: add tokens map, to be used as JSON output (e88d234)
  • react: explicitly disallow click listeners on icons (10066de)

Performance Improvements

  • reduce grade iterations (2eb2b56)

1.0.0-beta.0 (2020-07-17)

Bug Fixes

  • a11y: dropdown should not have aria-expanded (fdb6c09)
  • react: clear timeout on cleanup to prevent memory leak (f1b991e)
  • react: remove the path from the a11y tree to prevent double speak (4f2b5ca)

Code Refactoring

  • TextField uses children for its label (413649f)
  • core: rewrite radio using new api (7ef134a)
  • react: rewrite checkbox as forwardRef (6f313c0)
  • include close button by default (7b44d6c)
  • react: remove focus callbacks (fbfeb26)
  • react: simplify user-defined initial focus (2c228b0)
  • extend other field components (09d5bc4)

Features

  • core: add "typeset" family of typography mixins (185e775)
  • core: add blue and purple, tweak red & green (165e591), closes #136
  • core: add config for duplicate declarations (553f453)
  • core: add config for enabling the dark scheme (6fb773b)
  • core: add field partials (3d0065b)
  • core: add initial z-index tokens (8d59e31), closes #19
  • core: add radius tokens (4312b98), closes #109
  • core: add role-token mapping helpers (25e3925)
  • core: add subtle transition to focus ring (d3dcc69)
  • core: complete rewrite (9f8a3d5)
  • core: implement role-based line-heights (b8e3c45)
  • core: implement role-based spacers (49b4cf8)
  • core: initial link styling, all through css props (ae83a2e)
  • core: initial modal implementation (2550f8b)
  • core: initial tooltip styles (d24b1b2)
  • core: introduce block-spacer-base token (2fa49f3)
  • core: make typeset mixins globally configurable (9ea6a0c)
  • dropdown: add composite focus indicator to listbox (28e3aad)
  • react: add CheckboxGroup (6645d6d)
  • react: add Choices container for easier selection control (5422169)
  • react: add className prefixing to all components (05d8c4d), closes #123
  • react: add color & size props to icon (2b41c21)
  • react: add global configuration (43dab2c)
  • react: add hook to use props as state (e24e1ab)
  • react: add LiveRegion component (6bc907f)
  • react: add modal props to allow sticky header/footer (7da5725)
  • react: add RadioGroup (685eeeb)
  • react: add screen reader-only helper styling (7b2d4d6)
  • react: add search to list of allowed TextField types (3bb86c7)
  • react: add useSelect hook to help with multiselect (401f767)
  • react: add useValidation for easier controlled validation (69a56b9)
  • react: add validation for badInput (373929c)
  • react: allow components to control the tooltip hiding delay (cdb02f4)
  • react: allow custom icons to have a label (f47f345)
  • react: close the dropdown when it's disabled (1ef0146)
  • react: ensure that screen reader users are notified of button changes (c989fb5)
  • react: expose all utilities as part of the public api (2508d4a)
  • react: initial FieldAddon (76b39e8)
  • react: initial FieldFeedback component (cbfe261)
  • react: initial FieldInfo component (34d7275), closes #112
  • react: make all disclosure callbacks controllable (c4818cc)
  • react: make icons tooltipable (bc7c6b6)
  • react: polyfill aria-modal on modal open (852fa62)
  • react: tooltip button when icon-only (e665600)
  • react: use field info as a fieldset legend (fce99d2)
  • add props and prefixing helpers (db92524)
  • add usePopper hook (3d05dc2)
  • add useTooltip hook (d1b5a8b)
  • add useTriggers hook to handle open state (ac55b8c)
  • update style guides documentation (28852fd)
  • refactor(react)!: overhaul MultipleChoice as ChoiceField (604beda)
  • refactor(react)!: completely rewrite TextField (c159266)
  • refactor(react)!: rewrite & simplify BaseInput (2efe83e)
  • refactor(react)!: simplify validation (4bfe73b)
  • feat(react)!: complete rewrite of Dropdown (cf072a2)

BREAKING CHANGES

  • The label prop has been removed from TextField, which now uses its children for its label.
  • MultipleChoice has been removed in favor of the new ChoiceField, which will be rendered as a <fieldset> with either checkbox or radio choices, depending on whether the multiple prop is true or false.
  • core: Radio now uses a Field class structure, similar to TextField and Checkbox.
  • react: Checkbox now uses a Field class structure, similar to TextField.
  • Modal: addCloseButton -> hideCloseButton, which is undefined by default.
  • react: both of the Modal's focus-related callbacks have been removed. To replicate onInitialFocus, check for the document.activeElement inside an onOpen callback. The onRequestFocusWrap has no replacement but did not have a good use case.
  • react: Modal now uses the focusOnOpen prop to define what element should be focused on open, replacing the old initialFocusRef. This should be an actual HTMLElement, which the user can define with a ref.
  • Text Field prop rename: help -> description
  • Text Field prop rename: helpClass -> descriptionClass
  • Text Field prop rename: errorClass -> errorsClass
  • TextField labels cannot be React elements now--they must be strings.
  • the TextField anatomy has been reworked to allow for more flexible styling. The overall structure uses the new FieldInfo component, a .field__group wrapper for the <input> and its optional addons, and the new FieldFeedback component.
  • remove the disableTooltip prop entirely in the BaseInput stack. errors are now always reflected in the browser's constraint validation API.
  • validation errors can only be strings and can no longer be JSX Elements.
  • the options prop has been removed entirely in favor of using children to compose options. Children should now be <Dropdown.Option value={value}>{ contents }</Dropdown.Option> or an array of values.
  • onRequestSelect is now onChange to better match other form control callbacks.
  • sizing for the button and listbox can now be controlled independently via the matchWidth prop. To replicate the previous behavior of resizing the button to match the listbox, set matchWidth="listbox".

0.9.4 (2020-06-22)

Bug Fixes

  • react: only return focus when actually closing (a332ce6)

0.9.3 (2020-06-22)

Bug Fixes

  • react: ensure that internal BaseButtons do not submit on click (b69a97f)

0.9.2 (2020-06-08)

Bug Fixes

  • ensure that type definitions aren't transpiled (cdafcd4)

0.9.1 (2020-06-03)

Bug Fixes

  • react: use relative paths (2b97289)

0.9.0 (2020-05-31)

Features

  • react: add icon variants (222e7b2)

0.8.1 (2020-05-08)

Note: Version bump only for package nds

0.8.0 (2020-05-02)

Bug Fixes

  • core: reduce focus ring rect by 1px (2d3d0b1)
  • react: export Modal as a top-level component (ad4ac4a)
  • react: only apply modifier if name is specified on Icon (f1efc32)
  • react: use a real HTML comment in SVG source (1adff2a)

Features

  • core: initial dropdown tokens, mixins, and declarations (596602a)
  • react: initial BaseListbox and BaseListOption (495dc72)
  • react: initial BasePopper and Tooltip (75815a5)
  • react: initial Dropdown (8eac9d7)

0.7.0 (2020-04-01)

Bug Fixes

  • button: 1px button borders (ff40118), closes #97
  • button: use correct token (bacc2f6)
  • core: ghost button should be transparent (70711f2)
  • react: move react & react-dom to dev/peerDeps (2268999)
  • switch: use props to update state (60757eb), closes #100

Features

  • modal: add onRequestFocusWrap prop (f2b44ba)
  • react: add BaseDialog (6920ed9)
  • react: add createValidator factory function (9b2537a)
  • react: add focusable utilities (9c44922)
  • react: add hook to merge forwarded refs (152fccd)
  • react: add prop to disable browser tooltips on inputs (bcae744)
  • react: initial Modal dialog (585024b)
  • switch: flip state display prop (c68dadf)
  • TextField: allow users to customize feedback (133aa1a)

0.6.1 (2020-03-03)

Bug Fixes

  • core: add missing components (13688c7)
  • core: import missing component tokens (c1e27c2)

0.6.0 (2020-02-28)

Bug Fixes

  • a11y: explicitly set label when multiple exist (e8fc401)
  • react: ensure that ids can be passed as props (f68d480), closes #82
  • react: position checkbox control the same as radio (377c654)
  • remove unnecessary import (cdfbce5)
  • react: ensure that onClick is triggered on switch (0e2b2e3)
  • react: position checkbox control the same as radio (9df00d6)
  • remove unnecessary import (e4b03a7)
  • react: ensure that onClick is triggered on switch (3612844)
  • react: ensure that onClick is triggered on switch (8adac0a)
  • react: ensure that onClick is triggered on switch (d6a92da)
  • react: ensure that onClick is triggered on switch (c58b37c)
  • fix styling for radio when its disabled (a3e90cd)
  • storybook: upgrade storybook (03705f9)

Features

  • core: add icon-only button modifier & declaration (8fb9ec6)
  • core: add multiple choice (39db26e)
  • core: add multiple choice (d695dc0)
  • core: add very basic icon styling (3eaa343)
  • react: add IconButton component (96df9a9)
  • react: add support for custom switch states (4e79518)
  • add material minus icon (5fcb75b)
  • add react radio implementation (3b7f57b)
  • add sass radio styles (677bbed)
  • initial checkbox update commit (d8243b1)
  • initial MultipleChoice and Choice components (67df099)
  • initial MultipleChoice and Choice components (d739823)
  • initial MultipleChoice and Choice components (6eb1136)
  • core: initial icon (c9867cd)
  • react: add icon utility (7a060e6)
  • react: add support for icons in buttons (736e8dd)
  • react: allow custom icons and CSS height (f43bd30)
  • initial MultipleChoice and Choice components (2eaaeb7)
  • initial MultipleChoice and Choice components (4d78082)
  • react: initial BaseSVG (2912aa5)
  • react: initial icon (0447df8)

0.5.1 (2020-02-04)

Bug Fixes

  • build all files to root of dist (7698a82)
  • react: add missing components to main export (5d8ccd4)

0.5.0 (2020-01-31)

Bug Fixes

  • textfield: apply class to the textfield, not input (5567278)
  • include props on forwardref generc (99b2843)
  • a11y: actually disable the switch (d8e340c)
  • button: deactivate on blur (0b22096)
  • core: reset needs tokens (cb11d21)
  • core: use the correct destination (e0fd22f)

chore

  • deps: update husky to v3 (54adcae)

Features

  • core: validation errors now render in lists (d82134e)
  • react: update text field to use new validation api (34de3ef)
  • utilities for form validation feedback (948ea6a)
  • a11y: improve aria markup of checkbox (134f466)
  • core: add motion duration multiplier (5618427)
  • core: add reduce-motion mixin (2a88388)
  • core: add sr-only mixin (725a3c6)
  • add checkbox to @wwnds/core (8023ef9)
  • add initial testing framework (a80f1a9)
  • add react checkbox implementation (e51f78a)
  • add react checkbox implementation (22db133)
  • core: initial disclosure styling (e8ddaf9)

BREAKING CHANGES

  • deps: now requires Node v10+

0.4.0 (2020-01-02)

Bug Fixes

  • update colors saturation (816a3a2)
  • update react version in eslintrc file (f192fe4)
  • use bem-style class names (bd92dcd)

Features

  • core: add :focus-visible for the future 🚀 (56695c9)
  • core: initial textfield implementation (15a66c4)
  • core: initial toggle/switch styling (6c847fd)
  • react: add textualState prop to toggle (b280067)
  • react: initial disclosure implementation (f1ca740)
  • react: initial text field (d7ec06c)
  • react: more consistent callbacks (34bddfc)

0.3.0 (2019-11-27)

Features

  • add initial font stack (6ee1d42), closes #34
  • add initial state colors (933fbd0), closes #20
  • use powers of 10 for all color steps (03b3237), closes #47
  • core: add font smoothing mixin (ae3fa3a)
  • core: add hd media query mixin and tokens (c819ab0)
  • core: initial reset - font smoothing on body (70500d1)

0.2.1 (2019-11-07)

Bug Fixes

  • react: output and use type declarations (a1e1dc9)

0.2.0 (2019-10-31)

Bug Fixes

  • ci: set docs dest correctly when at root (e136df9)
  • docs: spelling (e5250cf)
  • docs: use singular link (b85f23e)
  • docs: use symlinked package (53854d3)
  • focus ring should not have blur (92c6a98)

Features

  • components: add global mixins for focus ring (4da0658)
  • docs: add @wwnds/core to docs for examples (16052d2)
  • docs: initial accordion usage (73e7d31)
  • docs: initial checkbox usage (e4d7555)
  • docs: initial disclosure usage (82e1afd)
  • docs: initial dropdown usage (4111626)
  • docs: initial layout grid usage (19f919e)
  • docs: initial radio button usage (15ee880)
  • docs: initial toggle usage (58178bb)
  • react: add forwardrefs for root button (b106308)
  • react: add storybook and typescript (9a2a4a6)
  • react: apply all attributes to child button (23af52b)
  • react: initial button (c9a2dd0)
  • react: initial toggle button (e7cb513)
  • consolidate into core package (05dec0d)
  • implement the 3 buttons as mixins (c897d72)
  • make docs an unpublished package (45aeeb3)
  • tokens: add initial box shadow tokens (d54e18b)
  • tokens: initial motion tokens (fd1b021)
  • tokens: rename theme colors to functional (faac226)
  • refactored button (56beef5)
  • updated per zeplin color sample (227df2d)

0.1.0 (2019-09-27)

Bug Fixes

  • ci: base must end in a slash (832369c)
  • lint: use correct override syntax (7813305)
  • lint: use correct override syntax (9f8f81e)

Features

  • components: initial button implementation (5ad44d1)
  • components: initial components structure (e59f2e9)
  • components: initial components structure (aba7a7b)
  • docs: use vuepress to render docs (946a1b9)
  • docs: use vuepress to render docs (8cb7bea)