mediawiki-extensions-Tabber.../CHANGELOG.md
2024-11-16 03:22:20 -05:00

29 KiB

Changelog

2.6.0 (2024-11-16)

Features

  • add TabberNeueUseLegacyTabIds config option (#184) (1b60511)
  • assign unique IDs to Tabber container (de2ced5)
  • only add empty paragraph for wikitext list elements (f24ddb5), closes #151
  • render all HTML server-side (1e1d3de)
  • simplify implementation and drop hash usage (56619bf)
  • throw exception when duplicated label is found under legacy ID mode (ab8e306)
  • use Codex CSS variable directly (bd5738a)

Bug Fixes

  • drop unused variable (f87c43e)
  • fix various issues raised by code review (9e8ac87)
  • keep arrow button icon inside its parent (#186) (201238c)
  • no need to apply hover:hover to active state (70f632a)
  • various issues found in code review (1f75afc)

Performance Improvements

  • drop incorrect usage of rAF and do not set aria-hidden on tabpanels (910f5c7)
  • only call one instance of MediaWikiServices (724e347)

2.5.0 (2024-09-01)

Features

  • include Codex CSS variables in Tabber variables (3d86ed5)

Bug Fixes

  • ensure that the active tab is set before the tabber event is initialized (#173) (795c76b)

2.4.0 (2024-07-17)

Features

Bug Fixes

  • incorrect conditions for shouldShowAnimation (#165) (2f7e652)

2.3.0 (2024-07-03)

Features

  • change tab when URL hash matches one of the tabs (421c42b), closes #150

Bug Fixes

  • prevent browser from scrolling to the tab before Tabber updates the aria attributes (1e5ad65), closes #161
  • square brackets should be correctly rendered in tab names (3bacdb7), closes #158
  • URL hash should be escaped when used as selector (d453add)

2.2.4 (2024-06-23)

Bug Fixes

  • escape new line character properly (7e92502)

2.2.3 (2024-06-23)

Bug Fixes

  • add new lines to parsed tab content to ensure content are parsed as expected (f4f8b4b), closes #151
  • attach resize observer properly to current active tabpanel (72adfbc)

Performance Improvements

  • only attach resize observer for active tabpanel when it is in viewport (05e95d8)
  • set active tab by hash on builder phase (ee54cc1)

2.2.2 (2024-06-20)

Bug Fixes

  • make sure that init functions are run sequentially (8a88a43), closes #148

Performance Improvements

  • merge activeTabpanel resize observer into the main resizeObserver (35ffe55)
  • only use one resizeObserver for header overflow (a414d2d)

2.2.1 (2024-06-06)

Bug Fixes

  • prepend tabber ID with prefix to avoid conflict with existing header (d150b9e)
  • refresh Tabber height when it comes into viewport (8b39e9e), closes #137
  • use resizeObserver on active tabpanel instead (0177715)

2.2.0 (2024-06-02)

Features

  • add home and end key shortcuts on tablist (ac27855)
  • add screen reader text to navigation button (0904298)

Bug Fixes

  • incorrect tab colors (20e88b8)
  • set tabindex -1 on hidden tabs (7e921a4)

Miscellaneous Chores

  • use starcitizentools as vendor in composer (ceb719d)

2.1.1 (2024-05-27)

Bug Fixes

  • do not unobserve tabber (def1134)
  • do not use passive scroll event listener for tab header (032aef7)

Performance Improvements

  • detach event listeners when not needed (2819ba8)

2.1.0 (2024-05-25)

Features

  • add aria-selected support (46596e4)
  • add background fade to indicate scrollable tab header (750dd27)
  • add basic VE support for tabbertransclude tag (d0be57a)
  • add basic VisualEditor support for tabber tags (6165b06)
  • add config to disable MD5 hash (#6) (d44cbbf)
  • add config to toggle Tabber animation and default to false (122df77)
  • add experimental support of Codex (89e90af)
  • add hover and active states to the arrow buttons (530cdfa)
  • add HTTP status code to error message (38a4730)
  • add initial Parsoid support for the tabber tag (3220bb8)
  • add keyboard navigation to tabs (bbde0ae)
  • add langauge converter support (874738d)
  • add link to documentation in VE context item (5df6a0f)
  • add proper ARIA attributes to lazyloaded transclusions (7504ce5)
  • add scroll snap to section (1ff78cd)
  • add support for nested tabbers in Codex (#95) (7f75899)
  • add Tabber icon in VisualEditor (5410a14)
  • add tracking categories for pages using Tabber (8fdead8)
  • add Vue component for tab content (a4e5905)
  • allow for identical tab header (#28) (52baab5)
  • allow nested Tabber to be shown in VE preview (857f6f1)
  • allow tab content to be transclusions of other pages (d8c3db4)
  • allow tab name to be parsed (7b1c319), closes #35
  • append NOEDITSECTION to tabber body before parsing (#9) (3f689e0)
  • avoid layout shift in init (9162321)
  • bump requirement to > MW 1.39 (ebb1028)
  • core: use data-title instead of title attribute for tab panel (7b61ca6)
  • do not animate indicator when scrolling (e124e81)
  • do not run Tabber script if it is already activated (3454f7b)
  • do not set title attribute for tab panel (6a40de7)
  • generate tab header in visual edit mode (84273da)
  • highlight text inside tabber tags as wikitext in CodeMirror (2d86edc)
  • improve handling of animation (b4b66b8)
  • improve loading behavior before module is added (1f44368)
  • improve noscript support (365777e)
  • initial refactor into TabberNeue (eb95645)
  • only smooth scroll in viewport larger than tablet (775d38e)
  • reinitalize Tabber after VE edit (cbf6ca0)
  • reinitialize Tabber after VE edit part 2 (a29e3a2)
  • replace loading message with animation (893611e)
  • rewrite Javascript implementation (bb110c6)
  • scroll target hash tabber into view (#62) (5b4f9ad)
  • separate indicator from active tab (f1e0df2)
  • set animation to true as that bug has been resolved upstream (947a47a)
  • trim spaces between title and content (98c6f27)
  • tweak styles of tab header (c045490)
  • update French translation (#23) (f610d66)
  • update header buttons when scrolling without them (#7) (5c40e1f)
  • use button elements instead of div for header navigations (6ad2464)
  • use clone element to get tab height when needed (331b0be)
  • use CSS instead of NOEDITSECTION to hide edit buttons (69c6383), closes #12
  • use recursiveTagParseFully to parse tab input (66db3a4)
  • use replaceState instead of pushState on tab click (1959fb2)
  • use skeleton screen as transclude load animation (a66f6e6)
  • use Tabber count instead of MD5 as identifier (09715dc)
  • use the new HookContainer system (007f194)
  • use the ResizeObserver api to detect content size changes (2d4d412)
  • use wikipage.content hook to init scripts (5a27351)
  • wrap tab content in <p> if there are no HTML elements (a3212b6)

Bug Fixes

  • add null check for $input (51893d8)
  • allow composer/installers in ci (0e69def)
  • always round scrollLeft (99413c7)
  • Argument #1 ($input) must be of type string, null given (#112) (a6c61af)
  • aria-hidden return string instead of boolean (7c95e57)
  • attach tabber--live class after tabber has finished init (6d09429)
  • avoid using noscript as it is disallowed by VE (0fbfefc)
  • ci: fix incorrect directory in CI (#75) (7f04013)
  • deprecate mobile target (6e67dd2), closes #120
  • deprecate old RL class (64cafa8)
  • disable Parsoid extension module support (dc3cb20)
  • DOMException caused by invalid selector (#10) (9395d64)
  • fix var scope in VE scripts (f8e3b75)
  • hide duplicate images generated by MobileFrontend (047ba17), closes #2
  • incorrect aria attribute label (b9eda4c)
  • incorrect character trimming for tab IDs (5e4471d)
  • incorrect config name in readme (3358e2e)
  • incorrect RL class name (cfe539d)
  • incorrect selector for hiding tabpanel in init (0a3b305)
  • indicator should be visible for nested tabs (62cb545)
  • indicator should not expand header height (1cb5cfb)
  • jumping to a tabber when no hash specified (#63) (787fede)
  • more accurate selector for duplicated MF images (380d52e)
  • one pixel offset on tab panels (#47) (d70049f)
  • only resize section when it is the active panel (5416652)
  • override default MW list styles (5f856a1)
  • panel should adjust to content height (7762a0e)
  • PHP Notice: Uninitialized string offset: 0 (#108) (9a795f2)
  • recalculate height based on tab content (2ee7bea)
  • run script after document is ready (#25) (e54a313)
  • stricter selector to prevent issues with nested Tabber (342cc2a)
  • stricter selectors for activePanel selection (0dc1b34)
  • tab panel going out of bound (8ab7b83)
  • typo in variable (852256a)
  • use data-title for tab panel (#74) (18f278e)

Performance Improvements

  • revert back to recursiveTagParse() (#27) (9535181)

Miscellaneous Chores

  • add missing release-please files (09fe911)
  • ci cleanup (cb1dbb2)
  • ci: more robust linter (dea3264)
  • re-generate package-lock.json (8a71685)
  • refactor lint workflow and add release-please (251c9b9)
  • set up dependabot (0617ae5)