alistair3149
daef66f141
fix(core): 🐛 use mw.requestIdleCallback for polyfill
...
Safari does not support rIC yet and MW has a polyfill for that.
2024-11-17 01:12:02 -05:00
alistair3149
34c9ae5fd4
fix(speculationRules): 🐛 stricter selector to pages to prerender
2024-11-13 19:24:45 -05:00
alistair3149
368ceb659a
feat(speculationRules): ✨ add basic implementation of Speculation Rules API
...
This is a basic implementation of Speculation Rules API that will prerender
any page under article path when the user hovers on the link for over 200ms.
2024-11-13 18:46:02 -05:00
alistair3149
4e09e3e3e3
refactor(serviceWorker): ♻️ early exit if wiki is not in root
2024-11-13 17:59:31 -05:00
alistair3149
0c3786c754
perf(share): ⚡ ️ prerender the HTML for the share button
...
Instead of doing it in JS, just render it altogther in the HTML
2024-11-12 22:36:59 -05:00
alistair3149
57942075cc
feat(PWA): ✨ fallback to clipboard share if Web Share API is not supported
2024-11-12 22:26:03 -05:00
alistair3149
b78df56695
fix(toc): 🐛 fix clipping toc on desktop
2024-11-12 20:20:26 -05:00
alistair3149
937b3c7f5e
fix(preferences): 🐛 add missing padding to pref card
2024-11-12 20:16:33 -05:00
alistair3149
76a39eafdf
perf(preferences): ⚡ ️ rewrite to use dropdown component
...
Dropdown + Menu component are already doing the same thing.
We can just extend those and drop all the custom handling
2024-11-12 20:13:47 -05:00
alistair3149
9556478443
perf(core): ⚡ ️ defer background main scripts with requestIdleCallback
2024-11-12 18:48:03 -05:00
alistair3149
5431d1499a
refactor(core): ♻️ refactor sticky header element styles
2024-11-12 18:47:35 -05:00
alistair3149
5975e51f58
perf(stickyHeader): ⚡ ️ use transition instead of position secondary sticky elements
2024-11-12 01:57:21 -05:00
alistair3149
98e6c2d7f1
fix(stickyHeader): 🐛 VE should use the same methods to handle sticky header state
2024-11-09 18:22:52 -05:00
alistair3149
d4d6345050
perf(stickyHeader): ⚡ ️ only recalc stickyHeader height when width changes
2024-11-08 21:24:56 -05:00
alistair3149
252e98b085
perf(stickyHeader): ⚡ ️ improve responsiveness for sticky header
2024-11-08 04:58:11 -05:00
alistair3149
ba5d0a7f92
refactor: ♻️ drop i18n-all-lists-margins styles
...
It is replaced by logical properties
2024-11-07 21:52:45 -05:00
alistair3149
3c39d6bbf5
refactor(core): ♻️ use CSS logical properties for elements
2024-11-07 21:51:08 -05:00
alistair3149
8280509517
refactor(core): ♻️ use CSS logical properties for shorthands
2024-11-07 21:39:00 -05:00
alistair3149
82d413f8ff
refactor(core): ♻️ remove IntersectionObserver fallback
...
Following Vector deprecation
2024-11-07 21:12:50 -05:00
alistair3149
2d7b03604a
refactor(core): ♻️ use margin-inline instead of left and right
2024-11-07 21:10:39 -05:00
alistair3149
8819757913
fix(stickyHeader): 🐛 do not reset stickyHeader when page title is visible
...
There is no need to trigger sticky header when page title is visible.
2024-11-07 21:10:39 -05:00
github-actions
fc29af3478
ci: 👷 lint code to MediaWiki standards
...
Check commit and GitHub actions for more details
2024-11-08 01:54:15 +00:00
alistair3149
a74d17e130
perf(stickyHeader): ⚡ ️ improve scroll performance
2024-11-07 20:53:21 -05:00
alistair3149
94936732ec
refactor(core): ♻️ clean up scroll direction observer
2024-11-07 20:33:56 -05:00
alistair3149
30fca942a7
perf(core): ⚡ ️ move sticky header handling to observers
2024-11-07 19:12:48 -05:00
alistair3149
3b8022c3c1
refactor(core): ♻️ set up scroll direction observer in setupObservers
...
This is needed for centralizing the observers.
2024-11-07 19:12:48 -05:00
alistair3149
241ef66893
perf(core): ⚡ ️ move window.resize to resizeObserver
2024-11-07 19:12:48 -05:00
alistair3149
ded49e61d8
fix(toc): 🐛 invisible toc icons on desktop
2024-11-06 14:10:03 -05:00
alistair3149
6523c5d3ab
fix(toc): 🐛 fix invisible toc on desktop
2024-11-05 22:31:28 -05:00
alistair3149
39ad06e99d
refactor(dropdown): ♻️ target dropdown icons specifically for content-visibility
2024-11-05 22:19:06 -05:00
alistair3149
0607e9fa24
fix(search): 🐛 do not set content-visbility for search card
2024-11-05 22:17:32 -05:00
alistair3149
70193eb568
perf(dropdown): ⚡ ️ use content-visibility for icons and dropdown menus
...
This will reduce the initial render cost of the menus, and also prevent premature download
for the icons.
2024-11-05 21:50:54 -05:00
alistair3149
582a3544bd
feat(skinning): ✨ update message box styles to current standard
2024-11-05 00:45:11 -05:00
alistair3149
07179d50b1
perf(core): ⚡ ️ defer non-essential init scripts
2024-11-03 10:39:10 -05:00
alistair3149
a32bc92a99
perf(footer): ⚡ ️ add CSS containment to footer
2024-11-03 01:05:28 -04:00
alistair3149
e79ae5939c
perf(core): ⚡ ️ put sticky header elements in DOM instead of creating them on init
2024-11-03 00:44:23 -04:00
alistair3149
ec097f2e42
perf(core): ⚡ ️ only fire scroll direction function when direction changes
2024-11-02 02:24:54 -04:00
alistair3149
bbc6069748
fix(toc): 🐛 incorrect toc button height
2024-11-02 02:17:45 -04:00
alistair3149
25fbc14908
style(core): 🎨 rename intersectionObserver references to observer
...
We will be using it for more than intersectionObserver.
2024-11-02 02:00:21 -04:00
alistair3149
50a75c550c
perf(core): ⚡ ️ do not use throttle for scroll direction observer
...
Just requestAnimationFrame should be enough. The previous throttle implemenation
makes the sticky header feel less responsive
2024-11-02 01:59:17 -04:00
alistair3149
a480cc27af
feat(skinning): ✨ apply floatleft and floatright to all elements
...
There are more block elements that might use floatleft and floatright.
We should not restrict it to only <div> and <table>
2024-10-30 22:20:12 -04:00
alistair3149
b9cfd0ebc8
fix(skinning): 🐛 stricter selector to select a element containing thumbnail
2024-10-30 15:57:41 -04:00
alistair3149
a9ff2da26d
feat(search): ✨ use 220px thumbnail for Action API search
...
220px is standardized to avoid further thumbnail fragmentation.
It should not affect the REST API search.
T322621
2024-10-30 02:01:18 -04:00
alistair3149
196f3d9063
perf(core): ⚡ ️ use CSS containment for search card and sidebar
2024-10-29 23:55:50 -04:00
github-actions
a65d5bac50
ci: 👷 lint code to MediaWiki standards
...
Check commit and GitHub actions for more details
2024-10-29 23:04:03 +00:00
alistair3149
eab9bcf228
fix(fonts): 🐛 remove serif and monospace fallback fonts
...
We don't provide web fonts for those, no need to have a fallback font
2024-10-29 19:03:16 -04:00
alistair3149
2d9febf0e2
perf(tokens): ⚡ ️ reduce lang selector cost
...
The original lang selector was too broad and execute needlessly.
2024-10-29 18:48:13 -04:00
alistair3149
2b3dbd9960
refactor(toc): ♻️ avoid using important for top link
2024-10-29 18:35:06 -04:00
alistair3149
d46855c0c2
feat(fonts): ✨ define fallback fonts to avoid CLS
2024-10-29 18:07:13 -04:00
alistair3149
168a53d6ef
feat(tokens): ✨ increase saturation on surface colors
2024-10-28 16:31:48 -04:00