@magica11y/prefers-reduced-transparency
Version:
Detects user’s transparency preferences using the 'prefers-reduced-transparency' CSS3 level 5 media query.
34 lines (25 loc) • 1.2 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _matchUserPreference = _interopRequireDefault(require("@magica11y/match-user-preference"));
var _transparencyPreferences = _interopRequireDefault(require("./transparencyPreferences"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
const transparencyPreferenceValues = [_transparencyPreferences.default.NO_PREFERENCE, _transparencyPreferences.default.REDUCE];
/**
* Detects user’s transparency preferences
* using CSS3 Media Queries level 5 specification for `'prefers-reduced-transparency'`.
*
* @returns Either 'no-preference', 'reduce' or `null`
* @see https://drafts.csswg.org/mediaqueries-5/#prefers-reduced-transparency
*/
const prefersReducedTransparency = () => {
const transparencyPreference = transparencyPreferenceValues.find(transparencyPreferenceValue => (0, _matchUserPreference.default)('prefers-reduced-transparency', transparencyPreferenceValue));
if (transparencyPreference) {
return transparencyPreference;
}
return null;
};
var _default = prefersReducedTransparency;
exports.default = _default;