427 lines
10 KiB
Plaintext
427 lines
10 KiB
Plaintext
/*!
|
|
{
|
|
"name": "CSS Animations",
|
|
"property": "cssanimations",
|
|
"caniuse": "css-animation",
|
|
"polyfills": ["transformie", "csssandpaper"],
|
|
"tags": ["css"],
|
|
"warnings": ["Android < 4 will pass this test, but can only animate a single property at a time"],
|
|
"notes": [{
|
|
"name": "Article: 'Dispelling the Android CSS animation myths'",
|
|
"href": "https://web.archive.org/web/20180602074607/https://daneden.me/2011/12/14/putting-up-with-androids-bullshit/"
|
|
}]
|
|
}
|
|
!*/
|
|
|
|
/*!
|
|
{
|
|
"name": "CSS Display table",
|
|
"property": "displaytable",
|
|
"caniuse": "css-table",
|
|
"authors": ["scottjehl"],
|
|
"tags": ["css"],
|
|
"builderAliases": ["css_displaytable"],
|
|
"notes": [{
|
|
"name": "Detects for all additional table display values",
|
|
"href": "https://pastebin.com/Gk9PeVaQ"
|
|
}]
|
|
}
|
|
!*/
|
|
|
|
/*!
|
|
{
|
|
"name": "CSS Filters",
|
|
"property": "cssfilters",
|
|
"caniuse": "css-filters",
|
|
"polyfills": ["polyfilter"],
|
|
"tags": ["css"],
|
|
"builderAliases": ["css_filters"],
|
|
"notes": [{
|
|
"name": "MDN Docs",
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/CSS/filter"
|
|
}]
|
|
}
|
|
!*/
|
|
|
|
/*!
|
|
{
|
|
"name": "CSS Object Fit",
|
|
"caniuse": "object-fit",
|
|
"property": "objectfit",
|
|
"tags": ["css"],
|
|
"builderAliases": ["css_objectfit"],
|
|
"notes": [{
|
|
"name": "Opera Article on Object Fit",
|
|
"href": "https://dev.opera.com/articles/css3-object-fit-object-position/"
|
|
}]
|
|
}
|
|
!*/
|
|
|
|
/*!
|
|
{
|
|
"name": "CSS Supports",
|
|
"property": "supports",
|
|
"caniuse": "css-featurequeries",
|
|
"tags": ["css"],
|
|
"builderAliases": ["css_supports"],
|
|
"notes": [{
|
|
"name": "W3C Spec (The @supports rule)",
|
|
"href": "https://dev.w3.org/csswg/css3-conditional/#at-supports"
|
|
}, {
|
|
"name": "Related Github Issue",
|
|
"href": "https://github.com/Modernizr/Modernizr/issues/648"
|
|
}, {
|
|
"name": "W3C Spec (The CSSSupportsRule interface)",
|
|
"href": "https://dev.w3.org/csswg/css3-conditional/#the-csssupportsrule-interface"
|
|
}]
|
|
}
|
|
!*/
|
|
|
|
/*!
|
|
{
|
|
"name": "Cross-Origin Resource Sharing",
|
|
"property": "cors",
|
|
"caniuse": "cors",
|
|
"authors": ["Theodoor van Donge"],
|
|
"notes": [{
|
|
"name": "MDN Docs",
|
|
"href": "https://developer.mozilla.org/en-US/docs/HTTP/Access_control_CORS"
|
|
}],
|
|
"polyfills": ["pmxdr", "ppx", "flxhr"]
|
|
}
|
|
!*/
|
|
|
|
/*!
|
|
{
|
|
"name": "ES5 Date",
|
|
"property": "es5date",
|
|
"notes": [{
|
|
"name": "ECMAScript 5.1 Language Specification",
|
|
"href": "https://www.ecma-international.org/ecma-262/5.1/"
|
|
}],
|
|
"polyfills": ["es5shim"],
|
|
"authors": ["Ron Waldon (@jokeyrhyme)"],
|
|
"tags": ["es5"]
|
|
}
|
|
!*/
|
|
|
|
/*!
|
|
{
|
|
"name": "ES5 Function",
|
|
"property": "es5function",
|
|
"notes": [{
|
|
"name": "ECMAScript 5.1 Language Specification",
|
|
"href": "https://www.ecma-international.org/ecma-262/5.1/"
|
|
}],
|
|
"polyfills": ["es5shim"],
|
|
"authors": ["Ron Waldon (@jokeyrhyme)"],
|
|
"tags": ["es5"]
|
|
}
|
|
!*/
|
|
|
|
/*!
|
|
{
|
|
"name": "ES5 Immutable Undefined",
|
|
"property": "es5undefined",
|
|
"notes": [{
|
|
"name": "ECMAScript 5.1 Language Specification",
|
|
"href": "https://www.ecma-international.org/ecma-262/5.1/"
|
|
}, {
|
|
"name": "original implementation of detect code",
|
|
"href": "https://kangax.github.io/compat-table/es5/"
|
|
}],
|
|
"authors": ["Ron Waldon (@jokeyrhyme)"],
|
|
"tags": ["es5"]
|
|
}
|
|
!*/
|
|
|
|
/*!
|
|
{
|
|
"name": "ES5 Object",
|
|
"property": "es5object",
|
|
"notes": [{
|
|
"name": "ECMAScript 5.1 Language Specification",
|
|
"href": "https://www.ecma-international.org/ecma-262/5.1/"
|
|
}],
|
|
"polyfills": ["es5shim", "es5sham"],
|
|
"authors": ["Ron Waldon (@jokeyrhyme)"],
|
|
"tags": ["es5"]
|
|
}
|
|
!*/
|
|
|
|
/*!
|
|
{
|
|
"name": "ES6 Array",
|
|
"property": "es6array",
|
|
"notes": [{
|
|
"name": "unofficial ECMAScript 6 draft specification",
|
|
"href": "https://web.archive.org/web/20180825202128/https://tc39.github.io/ecma262/"
|
|
}],
|
|
"polyfills": ["es6shim"],
|
|
"authors": ["Ron Waldon (@jokeyrhyme)"],
|
|
"warnings": ["ECMAScript 6 is still a only a draft, so this detect may not match the final specification or implementations."],
|
|
"tags": ["es6"]
|
|
}
|
|
!*/
|
|
|
|
/*!
|
|
{
|
|
"name": "ES6 Collections",
|
|
"property": "es6collections",
|
|
"notes": [{
|
|
"name": "unofficial ECMAScript 6 draft specification",
|
|
"href": "https://web.archive.org/web/20180825202128/https://tc39.github.io/ecma262/"
|
|
}],
|
|
"polyfills": ["es6shim", "weakmap"],
|
|
"authors": ["Ron Waldon (@jokeyrhyme)"],
|
|
"warnings": ["ECMAScript 6 is still a only a draft, so this detect may not match the final specification or implementations."],
|
|
"tags": ["es6"]
|
|
}
|
|
!*/
|
|
|
|
/*!
|
|
{
|
|
"name": "ES6 Promises",
|
|
"property": "promises",
|
|
"caniuse": "promises",
|
|
"polyfills": ["es6promises"],
|
|
"authors": ["Krister Kari", "Jake Archibald"],
|
|
"tags": ["es6"],
|
|
"notes": [{
|
|
"name": "The ES6 promises spec",
|
|
"href": "https://github.com/domenic/promises-unwrapping"
|
|
}, {
|
|
"name": "Chromium dashboard - ES6 Promises",
|
|
"href": "https://www.chromestatus.com/features/5681726336532480"
|
|
}, {
|
|
"name": "JavaScript Promises: an Introduction",
|
|
"href": "https://developers.google.com/web/fundamentals/primers/promises/"
|
|
}]
|
|
}
|
|
!*/
|
|
|
|
/*!
|
|
{
|
|
"name": "ES6 String",
|
|
"property": "es6string",
|
|
"notes": [{
|
|
"name": "unofficial ECMAScript 6 draft specification",
|
|
"href": "https://web.archive.org/web/20180825202128/https://tc39.github.io/ecma262/"
|
|
}],
|
|
"polyfills": ["es6shim"],
|
|
"authors": ["Ron Waldon (@jokeyrhyme)"],
|
|
"warnings": ["ECMAScript 6 is still a only a draft, so this detect may not match the final specification or implementations."],
|
|
"tags": ["es6"]
|
|
}
|
|
!*/
|
|
|
|
/*!
|
|
{
|
|
"name": "Fetch API",
|
|
"property": "fetch",
|
|
"tags": ["network"],
|
|
"caniuse": "fetch",
|
|
"notes": [{
|
|
"name": "WHATWG Spec",
|
|
"href": "https://fetch.spec.whatwg.org/"
|
|
}],
|
|
"polyfills": ["fetch"]
|
|
}
|
|
!*/
|
|
|
|
/*!
|
|
{
|
|
"name": "Flexbox",
|
|
"property": "flexbox",
|
|
"caniuse": "flexbox",
|
|
"tags": ["css"],
|
|
"notes": [{
|
|
"name": "The _new_ flexbox",
|
|
"href": "https://www.w3.org/TR/css-flexbox-1/"
|
|
}],
|
|
"warnings": [
|
|
"A `true` result for this detect does not imply that the `flex-wrap` property is supported; see the `flexwrap` detect."
|
|
]
|
|
}
|
|
!*/
|
|
|
|
/*!
|
|
{
|
|
"name": "JSON",
|
|
"property": "json",
|
|
"caniuse": "json",
|
|
"notes": [{
|
|
"name": "MDN Docs",
|
|
"href": "https://developer.mozilla.org/en-US/docs/Glossary/JSON"
|
|
}],
|
|
"polyfills": ["json2"]
|
|
}
|
|
!*/
|
|
|
|
/*!
|
|
{
|
|
"name": "Local Storage",
|
|
"property": "localstorage",
|
|
"caniuse": "namevalue-storage",
|
|
"tags": ["storage"],
|
|
"polyfills": [
|
|
"joshuabell-polyfill",
|
|
"cupcake",
|
|
"storagepolyfill",
|
|
"amplifyjs",
|
|
"yui-cacheoffline"
|
|
]
|
|
}
|
|
!*/
|
|
|
|
/*!
|
|
{
|
|
"name": "ResizeObserver",
|
|
"property": "resizeobserver",
|
|
"caniuse": "resizeobserver",
|
|
"tags": ["ResizeObserver"],
|
|
"authors": ["Christian Andersson"],
|
|
"notes": [{
|
|
"name": "W3C Spec",
|
|
"href": "https://www.w3.org/TR/resize-observer/"
|
|
}, {
|
|
"name": "MDN Docs",
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/API/ResizeObserver"
|
|
}, {
|
|
"name": "Web.dev Article",
|
|
"href": "https://web.dev/resize-observer/"
|
|
}, {
|
|
"name": "Digital Ocean tutorial",
|
|
"href": "https://www.digitalocean.com/community/tutorials/js-resize-observer"
|
|
}]
|
|
}
|
|
!*/
|
|
|
|
/*!
|
|
{
|
|
"name": "SVG as an <img> tag source",
|
|
"property": "svgasimg",
|
|
"caniuse": "svg-img",
|
|
"tags": ["svg"],
|
|
"aliases": ["svgincss"],
|
|
"authors": ["Chris Coyier"],
|
|
"notes": [{
|
|
"name": "HTML5 Spec",
|
|
"href": "https://www.w3.org/TR/html5/embedded-content-0.html#the-img-element"
|
|
}]
|
|
}
|
|
!*/
|
|
|
|
/*!
|
|
{
|
|
"name": "SVG filters",
|
|
"property": "svgfilters",
|
|
"caniuse": "svg-filters",
|
|
"tags": ["svg"],
|
|
"builderAliases": ["svg_filters"],
|
|
"authors": ["Erik Dahlstrom"],
|
|
"notes": [{
|
|
"name": "W3C Spec",
|
|
"href": "https://www.w3.org/TR/SVG11/filters.html"
|
|
}]
|
|
}
|
|
!*/
|
|
|
|
/*!
|
|
{
|
|
"name": "SVG",
|
|
"property": "svg",
|
|
"caniuse": "svg",
|
|
"tags": ["svg"],
|
|
"authors": ["Erik Dahlstrom"],
|
|
"polyfills": [
|
|
"svgweb",
|
|
"raphael",
|
|
"amplesdk",
|
|
"canvg",
|
|
"svg-boilerplate",
|
|
"sie",
|
|
"dojogfx",
|
|
"fabricjs"
|
|
]
|
|
}
|
|
!*/
|
|
|
|
/*!
|
|
{
|
|
"name": "URL parser",
|
|
"property": "urlparser",
|
|
"notes": [{
|
|
"name": "WHATWG Spec",
|
|
"href": "https://url.spec.whatwg.org/"
|
|
}],
|
|
"polyfills": ["urlparser"],
|
|
"authors": ["Ron Waldon (@jokeyrhyme)"],
|
|
"tags": ["url"]
|
|
}
|
|
!*/
|
|
|
|
/*!
|
|
{
|
|
"name": "Web Audio API",
|
|
"property": "webaudio",
|
|
"caniuse": "audio-api",
|
|
"polyfills": ["xaudiojs", "dynamicaudiojs", "audiolibjs"],
|
|
"tags": ["audio", "media"],
|
|
"builderAliases": ["audio_webaudio_api"],
|
|
"authors": ["Addy Osmani"],
|
|
"notes": [{
|
|
"name": "W3C Spec",
|
|
"href": "https://dvcs.w3.org/hg/audio/raw-file/tip/webaudio/specification.html"
|
|
}]
|
|
}
|
|
!*/
|
|
|
|
/*!
|
|
{
|
|
"name": "Web Cryptography",
|
|
"property": "cryptography",
|
|
"caniuse": "cryptography",
|
|
"tags": ["crypto"],
|
|
"authors": ["roblarsen"],
|
|
"notes": [{
|
|
"name": "W3C Editor's Draft Spec",
|
|
"href": "https://www.w3.org/TR/WebCryptoAPI/"
|
|
}],
|
|
"polyfills": ["polycrypt"]
|
|
}
|
|
!*/
|
|
|
|
/*!
|
|
{
|
|
"name": "iframe[sandbox] Attribute",
|
|
"property": "sandbox",
|
|
"caniuse": "iframe-sandbox",
|
|
"tags": ["iframe"],
|
|
"builderAliases": ["iframe_sandbox"],
|
|
"notes": [
|
|
{
|
|
"name": "WHATWG Spec",
|
|
"href": "https://html.spec.whatwg.org/multipage/embedded-content.html#attr-iframe-sandbox"
|
|
}],
|
|
"knownBugs": ["False-positive on Firefox < 29"]
|
|
}
|
|
!*/
|
|
|
|
/*!
|
|
{
|
|
"property": "urlsearchparams",
|
|
"caniuse": "urlsearchparams",
|
|
"tags": ["querystring", "url"],
|
|
"authors": ["Cătălin Mariș"],
|
|
"name": "URLSearchParams API",
|
|
"notes": [{
|
|
"name": "WHATWG Spec",
|
|
"href": "https://url.spec.whatwg.org/#interface-urlsearchparams"
|
|
}, {
|
|
"name": "MDN Docs",
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/API/URLSearchParams"
|
|
}]
|
|
}
|
|
!*/
|