mediaFeatures.js 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. 'use strict';
  2. const uniteSets = require('../utils/uniteSets.js');
  3. const deprecatedMediaFeatureNames = new Set([
  4. 'device-aspect-ratio',
  5. 'device-height',
  6. 'device-width',
  7. 'max-device-aspect-ratio',
  8. 'max-device-height',
  9. 'max-device-width',
  10. 'min-device-aspect-ratio',
  11. 'min-device-height',
  12. 'min-device-width',
  13. ]);
  14. const rangeTypeMediaFeatureNames = new Set([
  15. 'aspect-ratio',
  16. 'color-index',
  17. 'color',
  18. 'height',
  19. 'monochrome',
  20. 'resolution',
  21. 'width',
  22. ]);
  23. const mediaFeatureNames = uniteSets(deprecatedMediaFeatureNames, rangeTypeMediaFeatureNames, [
  24. 'any-hover',
  25. 'any-pointer',
  26. 'color-gamut',
  27. 'display-mode',
  28. 'dynamic-range',
  29. 'forced-colors',
  30. 'grid',
  31. 'hover',
  32. 'inverted-colors',
  33. 'light-level',
  34. 'max-aspect-ratio',
  35. 'max-color',
  36. 'max-color-index',
  37. 'max-height',
  38. 'max-monochrome',
  39. 'max-resolution',
  40. 'max-width',
  41. 'min-aspect-ratio',
  42. 'min-color',
  43. 'min-color-index',
  44. 'min-height',
  45. 'min-monochrome',
  46. 'min-resolution',
  47. 'min-width',
  48. 'orientation',
  49. 'overflow-block',
  50. 'overflow-inline',
  51. 'pointer',
  52. 'prefers-color-scheme',
  53. 'prefers-contrast',
  54. 'prefers-reduced-motion',
  55. 'prefers-reduced-transparency',
  56. 'scan',
  57. 'scripting',
  58. 'update',
  59. 'video-dynamic-range',
  60. ]);
  61. module.exports = {
  62. rangeTypeMediaFeatureNames,
  63. mediaFeatureNames,
  64. };