# CHANGELOG ## main ## 0.0.53 ### New * Add autocorrection to `FlashComponent` linter when the context is basic text. *Manuel Puyol* ### Updates * Linters won't mark offenses when the ignore count is correct unless explicitly configured to do so. *Manuel Puyol* * Map the `for` argument when autofixing `ClipboardCopy` migrations. *Kristján Oddsson* * Add autocorrection for `CloseButton` linter. *Manuel Puyol* ### Bug fixes * Linters won't convert HTML special elements. *Manuel Puyol* ### Misc * Only run CHANGELOG CI on pull requests. *Manuel Puyol* * Run CI actions on pushes to main. *Cameron Dutro* * Get to 100% code coverage. *Cameron Dutro* ## 0.0.52 ### New * Adding `Primer::Beta::Truncate` component to reflect changes in primer/css component [Truncate](https://primer.style/css/components/truncate). *Jon Rohan* * Add cop to look for deprecated system arguments and suggest replacements. *Jon Rohan* * Add cop to use `primer_octicon` in favor of `octicon`. *Manuel Puyol* * Fix release script so it doesn't loop continuously. *Cameron Dutro* ### Updates * Promote `ClipboardCopy` to beta. *Manuel Puyol* * PrimerOcticon linter supports `aria-` and `data-` attributes. *Manuel Puyol* * Linters can: * convert values with ERB interpolations. * autocorrect cases with custom classes. *Manuel Puyol* * Add a `scheme` option to `BorderBoxComponent` rows. *Cameron Dutro* * Upgrade rubocop and support Ruby 3.0. *Cameron Dutro* * Linters will not autocorrect cases where a required argument is missing. *Manuel Puyol* ### Misc * Update benchmarks to run in every supported Ruby version. *Manuel Puyol* * Add a linter generator. *Manuel Puyol* ## 0.0.51 ### Breaking changes * Rename `width` and `height` System Arguments to `w` and `h`, resolving conflict with HTML attribute names. *Manuel Puyol* ### Updates * `SystemArgumentInsteadOfClass` linter will check for arguments in ViewHelpers. *Manuel Puyol* ## 0.0.50 ### Updates * Fix incorrect slots syntax in docs. *Joel Hawksley*, *Blake Williams* ### New * Add linter suggestions for `CloseButton` component. *Manuel Puyol* ### Breaking changes * Update to `octicons` `v15`, removing open-ended dependency. See [https://github.com/primer/octicons/releases/tag/v15.0.0] for icon name changes in release. *Joel Hawksley* ### Updates * Don't require `title` for `Label`. *Manuel Puyol* * Improve autocorrectable linters to convert known SystemArgument classes. *Manuel Puyol* * Add support for `width: :full` and `height: :full` to System Arguments. *Joel Hawksley* ### Bug fixes * Update linters to not autocorrect attributes with ERB blocks. *Manuel Puyol* * Fix `:height` and `:width` docs to pull from Utilities *Jon Rohan* ## 0.0.49 ### New * Add linter suggestions for `Label` component. *Manuel Puyol* * Add linter suggestions for `ClipboardCopy` component. *Manuel Puyol* ### Updates * Update the `Truncate` component to accept `:strong` as a tag. *Amélia Chavot* * Improve `Primer::Classify::Utilities.classes_to_hash` performance. *Manuel Puyol* ### Breaking changes * Require tab with panels to have `panel_id` so `aria-controls` can be set. *Kate Higa* * Renames: * `Primer::AvatarStackComponent` to `Primer::Beta::AvatarStack`. *Manuel Puyol* ### Misc * Extract example tag parsing into helper. *Kate Higa* * Generate a static constant JSON and use it when defining linters. *Manuel Puyol* ## 0.0.48 ### Breaking changes * Ensure panels in `Navigation::Tab` have a label. *Kate Higa* ### Misc * Expose custom cops and default config for erblint. *Manuel Puyol* * Fix double constant assign. *Manuel Puyol* ## 0.0.47 ### Breaking changes * Restrict tag for `Popover` to `:div` and `Popover` heading slot to headings. *Kate Higa* * Renames: * `Primer::AutoComplete` to `Primer::Beta::AutoComplete` * `Primer::AutoComplete::Item` to `Primer::Beta::AutoComplete::Item` * `Primer::AvatarComponent` to `Primer::Beta::Avatar` *Manuel Puyol* ### Misc * Update `doc_examples_axe_test` to exclude non-standalone components and fix `Markdown` example. *Kate Higa* * Update `DetailsComponent` examples. *Manuel Puyol* * Add linter to suggest system arguments instead of classes. *Manuel Puyol* * Update component generator to create components in the right status module. *Manuel Puyol* * Add example for truncating HTML to `Truncate`. *Joel Hawksley* * Update docs generation to point to the correct file sources. *Manuel Puyol* * Add ENV flag to dump linter data into a file. *Manuel Puyol* ## 0.0.46 ### Updates * Default to matching `name` and `id` of `input`. *Kate Higa* * Restrict usage of padding system arguments on BorderBox, recommending use of `padding` density instead. *Joel Hawksley* ### Breaking changes * Restrict `TabNav`and `Tab` tags. *Kate Higa* * Restrict `AvatarStack` body slot tag and `ImageCrop` spinner tag. *Kate Higa* * Restrict `Details` body slot tags and `UnderlineNav` body slot tags. *Kate Higa* * Move Primer::Classify from `app/lib/` to `lib/`. This requires an extra `require "primer/classify"` statement for anywhere Classify is needed. *Manuel Puyol, Jon Rohan* * Restrict `Menu` heading slot tags to heading tags and require `tag` argument. *Kate Higa* * Adding animation, vertical_align, word_break, display, visibility, & position arguments to the utilities class. `animation: :grow` is now `animation: :hover_grow` this was a change because we changed the class name in primer. *Jon Rohan* ### Misc * Update contributing guidelines with release instructions. *Kate Higa* * Prevent flexible tag syntax with rubocop rule. *Kate Higa* * Update linter autocorrection to use `""` instead of `true` for boolean attributes. *Manuel Puyol* * Update Storybook version. *Manuel Puyol* * Added a changelog authoring guide to `CHANGELOG.md`. *Amélia Chavot* ## 0.0.45 ### Updates * Allow copying from elements using `for` in `ClipboardCopy`. *Manuel Puyol* ### Breaking changes * Remove `label` argument in favor of `aria-label` in `ClipboardCopy`. *Manuel Puyol* ### Misc * Add autocorrect for button linters. *Manuel Puyol* * Unify contributing guidelines. *Kate Higa* * Rerun flaky system tests. *Manuel Puyol* * Check if selector is a classify class in Utilities. *Jon Rohan* ## 0.0.44 ### Updates * Allow `Dropdown` menu items to be rendered outside a list. *Manuel Puyol* ### Breaking changes * Require a label or `aria-label` to be provided for `AutoComplete` component. *Kate Higa* * Renames: * `DropdownComponent` to `Dropdown`. * `Dropdown::MenuComponent` to `Dropdown::Menu`. * `Primer::ButtonMarketingComponent` to `Primer::Alpha::ButtonMarketing`. * `Primer::TextComponent` to `Primer::Beta::Text`. *Manuel Puyol* * Removes `summary_classes` attribute in favor of the `summary` slot in `Dropdown`. *Manuel Puyol* ### Misc * Replace Classify::Spacing class with pre-generated mappings. *Jon Rohan* * Add linter suggestions for `Button` component. *Manuel Puyol* * Sort documentation arguments. *Jon Rohan* * Add validations for docs generation. *Manuel Puyol, Kate Higa* * Change docs header order. *Manuel Puyol, Kate Higa* * Add preliminary criteria for new `alpha` components. *Joel Hawksley* ## 0.0.43 ### New * Add `clearfix` and `container` system arguments. *Manuel Puyol* ### Updates * Promote `TabNav` component to beta. *Manuel Puyol* * Allow customizing `TabContainer` when using `TabNav` and `UnderlineNav` components. *Manuel Puyol* ### Breaking changes * Restrict `col` system arguments to only accept values between 1 and 12. *Manuel Puyol* ### Misc * Raise an error if `class` is used as a system argument. *Manuel Puyol* * Don't commit auto-generated component previews. *Kate Higa* * Provide linters for component migrations. *Manuel Puyol* * Update docs to accept multiline descriptions. *Manuel Puyol* * Upgrade primer/css to 17.2.1 *Jon Rohan* ## 0.0.42 ### New * Add `font_family`, `font_style` and `text_transform` system arguments. *Manuel Puyol* * Add more options for `font_size` and `font_weight`. *Manuel Puyol* ### Updates * Add `align` option to the `TabNav` extra slot to allow HTML ordering. *Manuel Puyol* ### Misc * Auto-generate component previews from doc examples and run integration test checks. *Kate Higa, Joel Hawksley* * Configure previews controller to allow view helper usage in preview template. *Kate Higa* * Only include `ViewComponent::SlotableV2` if `ViewComponent::Base` does not already include it. *Manuel Puyol* * Add `force_system_arguments` option to raise an error if a class is used instead of using System Arguments. *Manuel Puyol* ### Breaking changes * Restrict allowed tags for `Truncate`, `Markdown`, and `HiddenTextExpander`. *Kate Higa* ## 0.0.41 ### New * Create `LocalTime` component. *Kristján Oddsson* * Create `Image` component. *Manuel Puyol* * Add `extra` slot to `TabNav`. *Manuel Puyol* * Do not raise error if Primer CSS class name is passed to component if `PRIMER_WARNINGS_DISABLED` is set. *Joel Hawksley* ### Accessibility * Accept `aria-current="true"` in tabbed components. *Manuel Puyol* ### Changes * Promote `Tooltip` component to beta. *Manuel Puyol* ### Bug fixes * Ensure that `ClipboardCopy` behaviors only target ViewComponents. *Manuel Puyol* * Ensure that the `rounded` attribute for `` is represented as a boolean attribute. *Kristján Oddsson* ### Breaking changes * Rename `TooltipComponent` to `Tooltip`. *Manuel Puyol* * Don't allow `OcticonComponent` height/width values under 16px *Jon Rohan* * Remove `:large` size option from `OcticonComponent` and change `:medium` to 24px *Jon Rohan* * Restrict `Label` tag to `span`, `div`, `a`, `summary`. *Kate Higa* ### Misc * Add a CI check for changes to the CHANGELOG file. *Kristján Oddsson* ## 0.0.40 ### New * Create `ImageCrop` component. *Kristján Oddsson* ### Changes * Promote `IconButton` to beta. *Manuel Puyol* * Add `box` argument to `IconButton`. *Manuel Puyol* * Promote `Markdown` to beta. *Manuel Puyol* ### Bug fixes * Fix `IconButton` raising when `aria-label` was provided using an object. *Manuel Puyol* * Fix disabling of default styles for `SpinnerComponent` via `nil` style parameter. *Chris Wilson* ### Deprecations * Deprecate `Flex` in favor of `BoxComponent`. *Manuel Puyol* ### Breaking Changes * Restrict `ButtonGroup` tag to `:div` and update docs for `Text` tag. *Kate Higa* * Remove non-functional `width` and `height` `:fill` option. *Jon Rohan*, *Joel Hawksley* * Restrict `Subhead` `heading` slot tag to `div` and `h1`-`h6`. *Kate Higa* * Restrict `Blankslate` tag to `div`. *Kate Higa* * Explicitly limit tag for `AvatarStack` to `:div` and `:span`. *Kate Higa* * Rename `MarkdownComponent` to `Markdown`. *Manuel Puyol* ## 0.0.39 * Promote `CloseButton` to beta. *Manuel Puyol* * Update `ClipboardCopy` to not toggle icons unless they both exist. *Kristján Oddsson* * Add `icon` and `counter` slots to `ButtonComponent`. *Manuel Puyol* * Create `IconButton` component. *Manuel Puyol* * Removing trailing whitespace from output of `class=""` Classify generation. *Jon Rohan* * Deprecate `FlexItem` in favor of `BoxComponent`. *Manuel Puyol* * Dropping requirement of `octicons_helper` and updating `OcticonComponent` to use `octicon` gem directly. *Jon Rohan* * **Breaking change:** Remove `:overlay` option from `border_color`. *Simon Luthi* ## 0.0.38 * Extract `BaseButton` component. *Manuel Puyol* * Add default `aria-label` of "Close" to `CloseButton` component. *Kate Higa* * Set button variants in the `ButtonGroup` parent. *Manuel Puyol* * Create `ClipboardCopy` component. *Kristján Oddsson* * **Breaking change:** Rename `ButtonGroupComponent` to `ButtonGroup` and promote it to beta. *Manuel Puyol* * **Breaking change:** Do not provide default for `Heading` and improve documentation. *Kate Higa* * **Breaking change:** Don't allow `StateComponent` to be a link. *Kate Higa* ## 0.0.37 * Update NPM package to include subdirectory JS files. *Manuel Puyol* ## 0.0.36 * Add `block` flag to `ButtonComponent`. *Manuel Puyol* * Add `link` and `invisible` schemes to `ButtonComponent`. *Manuel Puyol* * Create `CloseButton` and `HiddenTextExpander` component. *Manuel Puyol* * **Breaking change:** Rename `AutoCompleteComponent` to `AutoComplete` and `AutoCompleteItemComponent` to `AutoComplete::Item`. *Manuel Puyol* * **Breaking change:** Rename `TruncateComponent` to `Truncate` and promote it to beta. *Manuel Puyol* ## 0.0.35 * Promote `AutoCompleteComponent`, `AutoCompleteItemComponent`, `AvatarStackComponent` and `ButtonComponent` to beta. *Manuel Puyol* * Allow `UnderlineNav` tabs to be rendered as a `