diff --git a/.changeset/shiny-actors-share.md b/.changeset/shiny-actors-share.md new file mode 100644 index 0000000000..843f512d25 --- /dev/null +++ b/.changeset/shiny-actors-share.md @@ -0,0 +1,23 @@ +--- +"@primer/view-components": patch +--- + +Remove unused deprecated component wrappers + + - "Primer::Dropdown::Menu::Item" + - "Primer::Dropdown::Menu" + - "Primer::Dropdown" + - "Primer::HellipButton" + - "Primer::LabelComponent" + - "Primer::LinkComponent" + - "Primer::Markdown" + - "Primer::MenuComponent" + - "Primer::OcticonComponent" + - "Primer::OcticonSymbolsComponent" + - "Primer::PopoverComponent" + - "Primer::SpinnerComponent" + - "Primer::StateComponent" + - "Primer::SubheadComponent" + - "Primer::TabContainerComponent" + - "Primer::TimelineItemComponent::BadgeComponent" + - "Primer::TimelineItemComponent" diff --git a/app/components/primer/dropdown.rb b/app/components/primer/dropdown.rb deleted file mode 100644 index d54a3e2a3c..0000000000 --- a/app/components/primer/dropdown.rb +++ /dev/null @@ -1,7 +0,0 @@ -# frozen_string_literal: true - -module Primer - class Dropdown < Primer::Alpha::Dropdown - status :deprecated - end -end diff --git a/app/components/primer/dropdown/menu.rb b/app/components/primer/dropdown/menu.rb deleted file mode 100644 index 3bd9b815dd..0000000000 --- a/app/components/primer/dropdown/menu.rb +++ /dev/null @@ -1,14 +0,0 @@ -# frozen_string_literal: true - -module Primer - class Dropdown - # :nodoc: - class Menu < Primer::Alpha::Dropdown::Menu - status :deprecated - - class Item < Primer::Alpha::Dropdown::Menu::Item - status :deprecated - end - end - end -end diff --git a/app/components/primer/hellip_button.rb b/app/components/primer/hellip_button.rb deleted file mode 100644 index ca89d854e5..0000000000 --- a/app/components/primer/hellip_button.rb +++ /dev/null @@ -1,7 +0,0 @@ -# frozen_string_literal: true - -module Primer - class HellipButton < Primer::Alpha::HellipButton - status :deprecated - end -end diff --git a/app/components/primer/label_component.rb b/app/components/primer/label_component.rb deleted file mode 100644 index 532c14a6c1..0000000000 --- a/app/components/primer/label_component.rb +++ /dev/null @@ -1,7 +0,0 @@ -# frozen_string_literal: true - -module Primer - class LabelComponent < Primer::Beta::Label - status :deprecated - end -end diff --git a/app/components/primer/link_component.rb b/app/components/primer/link_component.rb deleted file mode 100644 index b1728e91a0..0000000000 --- a/app/components/primer/link_component.rb +++ /dev/null @@ -1,7 +0,0 @@ -# frozen_string_literal: true - -module Primer - class LinkComponent < Primer::Beta::Link - status :deprecated - end -end diff --git a/app/components/primer/markdown.rb b/app/components/primer/markdown.rb deleted file mode 100644 index bdb8c13a86..0000000000 --- a/app/components/primer/markdown.rb +++ /dev/null @@ -1,7 +0,0 @@ -# frozen_string_literal: true - -module Primer - class Markdown < Primer::Beta::Markdown - status :deprecated - end -end diff --git a/app/components/primer/menu_component.rb b/app/components/primer/menu_component.rb deleted file mode 100644 index 632bf4d6ed..0000000000 --- a/app/components/primer/menu_component.rb +++ /dev/null @@ -1,7 +0,0 @@ -# frozen_string_literal: true - -module Primer - class MenuComponent < Primer::Alpha::Menu - status :deprecated - end -end diff --git a/app/components/primer/octicon_component.rb b/app/components/primer/octicon_component.rb deleted file mode 100644 index 915ce1ba6c..0000000000 --- a/app/components/primer/octicon_component.rb +++ /dev/null @@ -1,7 +0,0 @@ -# frozen_string_literal: true - -module Primer - class OcticonComponent < Primer::Beta::Octicon - status :deprecated - end -end diff --git a/app/components/primer/octicon_symbols_component.rb b/app/components/primer/octicon_symbols_component.rb deleted file mode 100644 index a2db3766ad..0000000000 --- a/app/components/primer/octicon_symbols_component.rb +++ /dev/null @@ -1,7 +0,0 @@ -# frozen_string_literal: true - -module Primer - class OcticonSymbolsComponent < Primer::Alpha::OcticonSymbols - status :deprecated - end -end diff --git a/app/components/primer/popover_component.rb b/app/components/primer/popover_component.rb deleted file mode 100644 index 96447b756c..0000000000 --- a/app/components/primer/popover_component.rb +++ /dev/null @@ -1,8 +0,0 @@ -# frozen_string_literal: true - -module Primer - # :nodoc: - class PopoverComponent < Primer::Beta::Popover - status :deprecated - end -end diff --git a/app/components/primer/spinner_component.rb b/app/components/primer/spinner_component.rb deleted file mode 100644 index 00eaf60db5..0000000000 --- a/app/components/primer/spinner_component.rb +++ /dev/null @@ -1,7 +0,0 @@ -# frozen_string_literal: true - -module Primer - class SpinnerComponent < Primer::Beta::Spinner - status :deprecated - end -end diff --git a/app/components/primer/state_component.rb b/app/components/primer/state_component.rb deleted file mode 100644 index 2a4ac2bc98..0000000000 --- a/app/components/primer/state_component.rb +++ /dev/null @@ -1,7 +0,0 @@ -# frozen_string_literal: true - -module Primer - class StateComponent < Primer::Beta::State - status :deprecated - end -end diff --git a/app/components/primer/subhead_component.rb b/app/components/primer/subhead_component.rb deleted file mode 100644 index 9c0d069d3c..0000000000 --- a/app/components/primer/subhead_component.rb +++ /dev/null @@ -1,7 +0,0 @@ -# frozen_string_literal: true - -module Primer - class SubheadComponent < Primer::Beta::Subhead - status :deprecated - end -end diff --git a/app/components/primer/tab_container_component.rb b/app/components/primer/tab_container_component.rb deleted file mode 100644 index f35a334cf5..0000000000 --- a/app/components/primer/tab_container_component.rb +++ /dev/null @@ -1,7 +0,0 @@ -# frozen_string_literal: true - -module Primer - class TabContainerComponent < Primer::Alpha::TabContainer - status :deprecated - end -end diff --git a/app/components/primer/timeline_item_component.rb b/app/components/primer/timeline_item_component.rb deleted file mode 100644 index a72f7994c9..0000000000 --- a/app/components/primer/timeline_item_component.rb +++ /dev/null @@ -1,13 +0,0 @@ -# frozen_string_literal: true - -module Primer - # nodoc - class TimelineItemComponent < Primer::Beta::TimelineItem - status :deprecated - - # nodoc - class BadgeComponent < Primer::Component - status :deprecated - end - end -end diff --git a/docs/contributors/deprecations.md b/docs/contributors/deprecations.md index 05192a733e..df605cb701 100644 --- a/docs/contributors/deprecations.md +++ b/docs/contributors/deprecations.md @@ -71,18 +71,18 @@ configurations for more information. 1. An autocorrectable deprecation without a migration guide ```yml - - component: "Primer::LabelComponent" + - component: "Primer::DeprecatedComponent" autocorrect: true - replacement: "Primer::Beta::Label + replacement: "Primer::Beta::Component ``` 2. An autocorrectable deprecation with a migration guide to provide more information about the changes ```yml - - component: "Primer::LabelComponent" + - component: "Primer::DeprecatedComponent" autocorrect: true - replacement: "Primer::Beta::Label - guide: "https://example.com/label_component" + replacement: "Primer::Beta::Component + guide: "https://example.com/primer_component" ``` 3. A non-autocorrectable deprecation, with a replacement component and migration guide diff --git a/lib/primer/deprecations.yml b/lib/primer/deprecations.yml index 27618287cd..5fbd1c1cbd 100644 --- a/lib/primer/deprecations.yml +++ b/lib/primer/deprecations.yml @@ -22,88 +22,20 @@ deprecations: replacement: "Primer::Beta::Button" guide: "https://primer.style/view-components/guides/primer_button_component" - - component: "Primer::Dropdown" - autocorrect: true - replacement: "Primer::Alpha::Dropdown" - - - component: "Primer::Dropdown::Menu" - autocorrect: true - replacement: "Primer::Alpha::Dropdown::Menu" - - - component: "Primer::Dropdown::Menu::Item" - autocorrect: true - replacement: "Primer::Alpha::Dropdown::Menu::Item" - - - component: "Primer::HellipButton" - autocorrect: true - replacement: "Primer::Alpha::HellipButton" - - component: "Primer::IconButton" autocorrect: true replacement: "Primer::Beta::IconButton" - - component: "Primer::LabelComponent" - autocorrect: true - replacement: "Primer::Beta::Label" - - component: "Primer::LocalTime" autocorrect: false replacement: "Primer::Beta::RelativeTime" guide: "https://primer.style/view-components/guides/primer_local_time" - - component: "Primer::LinkComponent" - autocorrect: true - replacement: "Primer::Beta::Link" - - - component: "Primer::Markdown" - autocorrect: true - replacement: "Primer::Beta::Markdown" - - - component: "Primer::MenuComponent" - autocorrect: true - replacement: "Primer::Alpha::Menu" - - - component: "Primer::OcticonComponent" - autocorrect: true - replacement: "Primer::Beta::Octicon" - - - component: "Primer::OcticonSymbolsComponent" - autocorrect: true - replacement: "Primer::Alpha::OcticonSymbols" - - - component: "Primer::PopoverComponent" - autocorrect: true - replacement: "Primer::Beta::Popover" - - - component: "Primer::SpinnerComponent" - autocorrect: true - replacement: "Primer::Beta::Spinner" - - - component: "Primer::StateComponent" - autocorrect: true - replacement: "Primer::Beta::State" - - - component: "Primer::SubheadComponent" - autocorrect: true - replacement: "Primer::Beta::Subhead" - - - component: "Primer::TabContainerComponent" - autocorrect: true - replacement: "Primer::Alpha::TabContainer" - - component: "Primer::TimeAgoComponent" autocorrect: false replacement: "Primer::Beta::RelativeTime" guide: "https://primer.style/view-components/guides/primer_time_ago" - - component: "Primer::TimelineItemComponent" - autocorrect: true - replacement: "Primer::Beta::TimelineItem" - - - component: "Primer::TimelineItemComponent::BadgeComponent" - autocorrect: true - replacement: "Primer::Beta::TimelineItem::Badge" - - component: "Primer::Tooltip" autocorrect: true replacement: "Primer::Alpha::Tooltip" diff --git a/static/audited_at.json b/static/audited_at.json index 1724482e0b..132982674a 100644 --- a/static/audited_at.json +++ b/static/audited_at.json @@ -76,28 +76,11 @@ "Primer::ButtonComponent": "", "Primer::ConditionalWrapper": "", "Primer::Content": "", - "Primer::Dropdown": "", - "Primer::Dropdown::Menu": "", - "Primer::Dropdown::Menu::Item": "", - "Primer::HellipButton": "", "Primer::IconButton": "", - "Primer::LabelComponent": "", "Primer::LayoutComponent": "", - "Primer::LinkComponent": "", "Primer::LocalTime": "", - "Primer::Markdown": "", - "Primer::MenuComponent": "", "Primer::Navigation::TabComponent": "", - "Primer::OcticonComponent": "", - "Primer::OcticonSymbolsComponent": "", - "Primer::PopoverComponent": "", - "Primer::SpinnerComponent": "", - "Primer::StateComponent": "", - "Primer::SubheadComponent": "", - "Primer::TabContainerComponent": "", "Primer::TimeAgoComponent": "", - "Primer::TimelineItemComponent": "", - "Primer::TimelineItemComponent::BadgeComponent": "", "Primer::Tooltip": "", "Primer::Truncate": "" } diff --git a/static/constants.json b/static/constants.json index 260524d9e4..47bc9c4478 100644 --- a/static/constants.json +++ b/static/constants.json @@ -1033,16 +1033,6 @@ }, "Primer::Content": { }, - "Primer::Dropdown": { - "Menu": "Primer::Dropdown::Menu" - }, - "Primer::Dropdown::Menu": { - "Item": "Primer::Dropdown::Menu::Item" - }, - "Primer::Dropdown::Menu::Item": { - }, - "Primer::HellipButton": { - }, "Primer::IconButton": { "DEFAULT_SCHEME": "default", "SCHEME_MAPPINGS": { @@ -1054,8 +1044,6 @@ "danger" ] }, - "Primer::LabelComponent": { - }, "Primer::LayoutComponent": { "ALLOWED_SIDEBAR_COLS": [ 1, @@ -1078,8 +1066,6 @@ "DEFAULT_SIDEBAR_COL": 3, "MAX_COL": 12 }, - "Primer::LinkComponent": { - }, "Primer::LocalTime": { "DEFAULT_DIGIT_TYPE": "numeric", "DEFAULT_TEXT_TYPE": "short", @@ -1092,10 +1078,6 @@ "long" ] }, - "Primer::Markdown": { - }, - "Primer::MenuComponent": { - }, "Primer::Navigation::TabComponent": { "ARIA_CURRENT_OPTIONS_FOR_ANCHOR": [ true, @@ -1103,27 +1085,8 @@ ], "DEFAULT_ARIA_CURRENT_FOR_ANCHOR": "page" }, - "Primer::OcticonComponent": { - }, - "Primer::OcticonSymbolsComponent": { - }, - "Primer::PopoverComponent": { - }, - "Primer::SpinnerComponent": { - }, - "Primer::StateComponent": { - }, - "Primer::SubheadComponent": { - }, - "Primer::TabContainerComponent": { - }, "Primer::TimeAgoComponent": { }, - "Primer::TimelineItemComponent": { - "BadgeComponent": "Primer::TimelineItemComponent::BadgeComponent" - }, - "Primer::TimelineItemComponent::BadgeComponent": { - }, "Primer::Tooltip": { "ALIGN_DEFAULT": "default", "ALIGN_MAPPING": { diff --git a/static/statuses.json b/static/statuses.json index 34898e208a..03b3336804 100644 --- a/static/statuses.json +++ b/static/statuses.json @@ -76,28 +76,11 @@ "Primer::ButtonComponent": "deprecated", "Primer::ConditionalWrapper": "alpha", "Primer::Content": "stable", - "Primer::Dropdown": "deprecated", - "Primer::Dropdown::Menu": "deprecated", - "Primer::Dropdown::Menu::Item": "deprecated", - "Primer::HellipButton": "deprecated", "Primer::IconButton": "deprecated", - "Primer::LabelComponent": "deprecated", "Primer::LayoutComponent": "alpha", - "Primer::LinkComponent": "deprecated", "Primer::LocalTime": "deprecated", - "Primer::Markdown": "deprecated", - "Primer::MenuComponent": "deprecated", "Primer::Navigation::TabComponent": "alpha", - "Primer::OcticonComponent": "deprecated", - "Primer::OcticonSymbolsComponent": "deprecated", - "Primer::PopoverComponent": "deprecated", - "Primer::SpinnerComponent": "deprecated", - "Primer::StateComponent": "deprecated", - "Primer::SubheadComponent": "deprecated", - "Primer::TabContainerComponent": "deprecated", "Primer::TimeAgoComponent": "deprecated", - "Primer::TimelineItemComponent": "deprecated", - "Primer::TimelineItemComponent::BadgeComponent": "deprecated", "Primer::Tooltip": "deprecated", "Primer::Truncate": "beta" } diff --git a/test/components/component_test.rb b/test/components/component_test.rb index 22b7129d8f..3e5a13159b 100644 --- a/test/components/component_test.rb +++ b/test/components/component_test.rb @@ -103,35 +103,20 @@ class PrimerComponentTest < Minitest::Test [Primer::Tooltip, { label: "More" }], [Primer::Alpha::UnderlineNav, { label: "aria label" }, proc { |component| component.with_tab(selected: true) { "Foo" } }], [Primer::Alpha::Tooltip, { type: :label, for_id: "some-button", text: "Foo" }], - [Primer::Alpha::ActionList, { aria: { label: "Nav list" } }], [Primer::Alpha::NavList, { aria: { label: "Nav list" } }], [Primer::Alpha::Banner, {}] ].freeze def test_registered_components ignored_components = [ - "Primer::TimelineItemComponent", - "Primer::SubheadComponent", - "Primer::TabContainerComponent", - "Primer::HellipButton", - "Primer::StateComponent", - "Primer::OcticonSymbolsComponent", - "Primer::SpinnerComponent", - "Primer::OcticonComponent", - "Primer::Markdown", - "Primer::MenuComponent", - "Primer::LabelComponent", - "Primer::LinkComponent", "Primer::Alpha::ActionList::Heading", "Primer::Alpha::ActionList::Item", - "Primer::Alpha::ActionList::Separator", + "Primer::Alpha::ActionList::Divider", + "Primer::Alpha::NavList::Item", "Primer::Alpha::NavList::Section", + "Primer::Alpha::OcticonSymbols", "Primer::Component", - "Primer::OcticonsSymbolComponent", - "Primer::Content", - "Primer::PopoverComponent", - "Primer::Dropdown", - "Primer::Dropdown::Menu" + "Primer::Content" ] primer_component_files_count = Dir["app/components/**/*.rb"].count { |p| p.exclude?("/experimental/") }