v0.3.0 - Polish: accessibility, security, performance, RTL, French translation
All checks were successful
Create Release Package / PHP Lint (push) Successful in 52s
Create Release Package / Build Release (push) Successful in 1m21s

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2026-02-08 16:27:13 +01:00
parent cc8dc9d357
commit eb5ac6f7ad
33 changed files with 1270 additions and 39 deletions

View File

@@ -11950,6 +11950,43 @@ h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6, blockquote, caption, figca
background: var(--bs-body-bg);
}
.wp-bootstrap-skip-link {
position: absolute;
top: -100%;
left: 0;
z-index: 1040;
padding: 0.5rem 1rem;
background: var(--bs-primary);
color: #fff;
text-decoration: none;
font-weight: 600;
}
.wp-bootstrap-skip-link:focus {
top: 0;
}
.post-thumbnail {
aspect-ratio: 16/9;
object-fit: cover;
width: 100%;
}
.card-thumbnail {
aspect-ratio: 3/2;
object-fit: cover;
}
.sidebar-heading {
letter-spacing: 1.6px;
}
.hero-overlay {
background-position: center;
background-size: cover;
background-repeat: no-repeat;
opacity: 0.3;
}
.editor-styles-wrapper {
font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
line-height: 1.5;

File diff suppressed because one or more lines are too long

4
assets/css/rtl.css Normal file
View File

@@ -0,0 +1,4 @@
/*!
* WP Bootstrap Theme - RTL Overrides
* Right-to-left language support
*/.is-style-blockquote-accent{border-left:none;border-right:4px solid var(--wp--preset--color--primary);border-radius:.375rem 0 0 .375rem}

View File

@@ -11950,4 +11950,41 @@ h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6, blockquote, caption, figca
background: var(--bs-body-bg);
}
.wp-bootstrap-skip-link {
position: absolute;
top: -100%;
left: 0;
z-index: 1040;
padding: 0.5rem 1rem;
background: var(--bs-primary);
color: #fff;
text-decoration: none;
font-weight: 600;
}
.wp-bootstrap-skip-link:focus {
top: 0;
}
.post-thumbnail {
aspect-ratio: 16/9;
object-fit: cover;
width: 100%;
}
.card-thumbnail {
aspect-ratio: 3/2;
object-fit: cover;
}
.sidebar-heading {
letter-spacing: 1.6px;
}
.hero-overlay {
background-position: center;
background-size: cover;
background-repeat: no-repeat;
opacity: 0.3;
}
/*# sourceMappingURL=style.css.map */

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -61,6 +61,7 @@
var newTheme = currentTheme === 'dark' ? 'light' : 'dark';
localStorage.setItem(STORAGE_KEY, newTheme);
setTheme(newTheme);
announceTheme(newTheme);
});
});
});
@@ -71,4 +72,23 @@
setTheme(e.matches ? 'dark' : 'light');
}
});
/**
* Announce theme change to screen readers via a live region.
*
* @param {string} theme - 'dark' or 'light'
*/
function announceTheme(theme) {
var msg = theme === 'dark' ? 'Dark mode enabled' : 'Light mode enabled';
var el = document.getElementById('wp-bootstrap-theme-status');
if (!el) {
el = document.createElement('div');
el.id = 'wp-bootstrap-theme-status';
el.setAttribute('role', 'status');
el.setAttribute('aria-live', 'polite');
el.className = 'visually-hidden';
document.body.appendChild(el);
}
el.textContent = msg;
}
})();