From 5c05497ca777b32757feaf1568d87d01285e8afd Mon Sep 17 00:00:00 2001 From: mefody Date: Wed, 24 Jan 2024 19:16:10 +0300 Subject: [PATCH] Update fugu-api-data --- docs/fugu-patterns-13f8c11862.js | 1 - docs/fugu-patterns-ec11cc9629.js | 1 + docs/index.html | 2 +- docs/rev.json | 2 +- docs/sw.js | 2 +- package-lock.json | 8 ++++---- package.json | 2 +- 7 files changed, 9 insertions(+), 9 deletions(-) delete mode 100644 docs/fugu-patterns-13f8c11862.js create mode 100644 docs/fugu-patterns-ec11cc9629.js diff --git a/docs/fugu-patterns-13f8c11862.js b/docs/fugu-patterns-13f8c11862.js deleted file mode 100644 index eb01471..0000000 --- a/docs/fugu-patterns-13f8c11862.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";function asyncGeneratorStep(e,t,r,n,a,o,i){try{var s=e[o](i),c=s.value}catch(e){return void r(e)}s.done?t(c):Promise.resolve(c).then(n,a)}function _asyncToGenerator(e){return function(){var t=this,r=arguments;return new Promise((function(n,a){var o=e.apply(t,r);function i(e){asyncGeneratorStep(o,n,a,i,s,"next",e)}function s(e){asyncGeneratorStep(o,n,a,i,s,"throw",e)}i(void 0)}))}}var patterns={"Absolute Orientation Sensor":{regEx:/new\s+AbsoluteOrientationSensor\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"AbsoluteOrientationSensor"in self}))(),featureDetection:"(async () => 'AbsoluteOrientationSensor' in self)()",documentation:"https://developer.chrome.com/articles/generic-sensor/",blinkFeatureID:1900,chromeStatusID:5698781827825664},Accelerometer:{regEx:/new\s+Accelerometer\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"Accelerometer"in self}))(),featureDetection:"(async () => 'Accelerometer' in self)()",documentation:"https://developer.chrome.com/articles/generic-sensor/",blinkFeatureID:1899,chromeStatusID:5698781827825664},"Add to Home Screen":{regEx:/["']beforeinstallprompt["']|\.onbeforeinstallprompt/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"BeforeInstallPromptEvent"in self}))(),featureDetection:"(async () => 'BeforeInstallPromptEvent' in self)()",documentation:"https://developer.mozilla.org/en-US/docs/Web/API/BeforeInstallPromptEvent",blinkFeatureID:1436,chromeStatusID:6560913322672128},"Ambient Light Sensor":{regEx:/new\s+AmbientLightSensor\s*\(\)/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"AmbientLightSensor"in self}))(),featureDetection:"(async () => 'AmbientLightSensor' in self)()",documentation:"https://developer.chrome.com/articles/generic-sensor/",blinkFeatureID:1901,chromeStatusID:5298357018820608},"Async Clipboard":{regEx:/navigator\.clipboard\.writeText\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"clipboard"in navigator&&"writeText"in navigator.clipboard}))(),featureDetection:"(async () => 'clipboard' in navigator && 'writeText' in navigator.clipboard)()",documentation:"https://web.dev/async-clipboard/",blinkFeatureID:2372,chromeStatusID:5861289330999296},"Async Clipboard (Images)":{regEx:/navigator\.clipboard\.write\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"clipboard"in navigator&&"write"in navigator.clipboard}))(),featureDetection:"(async () => 'clipboard' in navigator && 'write' in navigator.clipboard)()",documentation:"https://web.dev/async-clipboard/",blinkFeatureID:2370,chromeStatusID:5074658793619456},"Background Fetch":{regEx:/\.backgroundFetch\.fetch\s*\(["']/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"BackgroundFetchManager"in self}))(),featureDetection:"(async () => 'BackgroundFetchManager' in self)()",documentation:"https://developer.mozilla.org/en-US/docs/Web/API/Background_Fetch_API",blinkFeatureID:2549,chromeStatusID:5712608971718656},"Background Sync":{regEx:/\.sync\.register\s*\(["']/g,where:"JavaScript",supported:_asyncToGenerator((function*(){var e;return"serviceWorker"in navigator&&"sync"in((yield null===(e=navigator.serviceWorker)||void 0===e?void 0:e.ready)||self.registration)}))(),featureDetection:"(async () => 'serviceWorker' in navigator && 'sync' in (await navigator.serviceWorker?.ready || self.registration))()",documentation:"https://developer.mozilla.org/en-US/docs/Web/API/Background_Synchronization_API",blinkFeatureID:745,chromeStatusID:6170807885627392},Badging:{regEx:/navigator\.setAppBadge\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"setAppBadge"in navigator}))(),featureDetection:"(async () => 'setAppBadge' in navigator)()",documentation:"https://developer.chrome.com/articles/badging-api/",blinkFeatureID:2726,chromeStatusID:6068482055602176},"Cache Storage":{regEx:/caches\.open\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"serviceWorker"in navigator&&"caches"in self}))(),featureDetection:"(async () => 'serviceWorker' in navigator && 'caches' in self)()",documentation:"https://developer.mozilla.org/en-US/docs/Web/API/CacheStorage",blinkFeatureID:3022,chromeStatusID:6461631328419840},"Compression Streams":{regEx:/new\s+CompressionStream\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"CompressionStream"in self}))(),featureDetection:"(async () => 'CompressionStream' in self)()",documentation:"https://developer.chrome.com/blog/compression-streams-api/",blinkFeatureID:3060,chromeStatusID:5855937971617792},"Compute Pressure":{regEx:/new\s+ComputePressureObserver\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"ComputePressureObserver"in self}))(),featureDetection:"(async () => 'ComputePressureObserver' in self)()",documentation:"https://developer.chrome.com/docs/web-platform/compute-pressure/",blinkFeatureID:3899,chromeStatusID:5597608644968448},"Contact Picker":{regEx:/navigator\.contacts\.select\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"contacts"in navigator}))(),featureDetection:"(async () => 'contacts' in navigator)()",documentation:"https://developer.chrome.com/articles/contact-picker/",blinkFeatureID:2993,chromeStatusID:6511327140904960},"Content Index":{regEx:/index\.getAll\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){var e;return"serviceWorker"in navigator&&"index"in((yield null===(e=navigator.serviceWorker)||void 0===e?void 0:e.ready)||self.registration)}))(),featureDetection:"(async () => 'serviceWorker' in navigator && 'index' in (await navigator.serviceWorker?.ready || self.registration))()",documentation:"https://developer.chrome.com/articles/content-indexing-api/",blinkFeatureID:2985,chromeStatusID:5658416729030656},"Credential Management":{regEx:/navigator\.credentials\.get\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"credentials"in navigator}))(),featureDetection:"(async () => 'credentials' in navigator)()",documentation:"https://developers.google.com/web/updates/2016/04/credential-management-api",blinkFeatureID:960,chromeStatusID:5026422640869376},"Device Memory":{regEx:/navigator\.deviceMemory/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"deviceMemory"in navigator}))(),featureDetection:"(async () => 'deviceMemory' in navigator)()",documentation:"https://developer.mozilla.org/en-US/docs/Web/API/Device_Memory_API",blinkFeatureID:2121,chromeStatusID:5119701235531776},"Device Posture":{regEx:/navigator\.devicePosture/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"devicePosture"in navigator}))(),featureDetection:"(async () => 'devicePosture' in navigator)()",documentation:"https://github.com/w3c/device-posture/blob/gh-pages/README.md",blinkFeatureID:void 0,chromeStatusID:5185813744975872},"Digital Goods":{regEx:/getDigitalGoodsService\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"getDigitalGoodsService"in self}))(),featureDetection:"(async () => 'getDigitalGoodsService' in self)()",documentation:"https://developer.chrome.com/docs/android/trusted-web-activity/receive-payments-play-billing/",blinkFeatureID:3397,chromeStatusID:5339955595313152},EyeDropper:{regEx:/new\s+EyeDropper\s*\(\)/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"EyeDropper"in self}))(),featureDetection:"(async () => 'EyeDropper' in self)()",documentation:"https://developer.chrome.com/articles/eyedropper/",blinkFeatureID:void 0,chromeStatusID:6304275594477568},"File Handling":{regEx:/"file_handlers"/g,where:"Web App Manifest",supported:_asyncToGenerator((function*(){return"launchQueue"in self&&"files"in LaunchParams.prototype}))(),featureDetection:"(async () => 'launchQueue' in self && 'files' in LaunchParams.prototype)()",documentation:"https://developer.chrome.com/articles/file-handling/",blinkFeatureID:3875,chromeStatusID:5721776357113856},"File System Access":{regEx:/showOpenFilePicker\s*\(|showSaveFilePicker\s*\(|showDirectoryPicker\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"showOpenFilePicker"in self}))(),featureDetection:"(async () => 'showOpenFilePicker' in self)()",documentation:"https://developer.chrome.com/articles/file-system-access/",blinkFeatureID:3340,chromeStatusID:6284708426022912},Gamepad:{regEx:/navigator\.getGamepads\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"getGamepads"in navigator}))(),featureDetection:"(async () => 'getGamepads' in navigator)()",documentation:"https://web.dev/gamepad/",blinkFeatureID:1916,chromeStatusID:5118776383111168},getInstalledRelatedApps:{regEx:/navigator\.getInstalledRelatedApps\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"getInstalledRelatedApps"in navigator}))(),featureDetection:"(async () => 'getInstalledRelatedApps' in navigator)()",documentation:"https://web.dev/get-installed-related-apps/",blinkFeatureID:1870,chromeStatusID:5695378309513216},"Gravity Sensor":{regEx:/new\s+GravitySensor\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"GravitySensor"in self}))(),featureDetection:"(async () => 'GravitySensor' in self)()",documentation:"https://developer.chrome.com/articles/generic-sensor/",blinkFeatureID:3795,chromeStatusID:5384099747332096},Gyroscope:{regEx:/new\s+Gyroscope\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"Gyroscope"in self}))(),featureDetection:"(async () => 'Gyroscope' in self)()",documentation:"https://developer.chrome.com/articles/generic-sensor/",blinkFeatureID:1906,chromeStatusID:5698781827825664},"Handwriting Recognition":{regEx:/navigator\.queryHandwritingRecognizerSupport\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"queryHandwritingRecognizerSupport"in navigator}))(),featureDetection:"(async () => 'queryHandwritingRecognizerSupport' in navigator)()",documentation:"https://developer.chrome.com/docs/web-platform/handwriting-recognition/",blinkFeatureID:3893,chromeStatusID:5263213807534080},HapticsDevice:{regEx:/\.haptics\.play\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"HapticsDevice"in self}))(),featureDetection:"(async () => 'HapticsDevice' in self)()",documentation:"https://github.com/MicrosoftEdge/MSEdgeExplainers/blob/main/HapticsDevice/explainer.md",blinkFeatureID:void 0,chromeStatusID:5720648543371264},"Idle Detection":{regEx:/new\s+IdleDetector\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"IdleDetector"in self}))(),featureDetection:"(async () => 'IdleDetector' in self)()",documentation:"https://developer.chrome.com/articles/idle-detection/",blinkFeatureID:2834,chromeStatusID:4590256452009984},Ink:{regEx:/navigator\.ink\.requestPresenter\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"ink"in navigator}))(),featureDetection:"(async () => 'ink' in navigator)()",documentation:"https://blogs.windows.com/msedgedev/2021/08/18/enhancing-inking-on-the-web/",blinkFeatureID:void 0,chromeStatusID:void 0},"Insertable streams for MediaStreamTrack":{regEx:/MediaStreamTrackProcessor\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"MediaStreamTrackProcessor"in self&&"MediaStreamTrackGenerator"in self}))(),featureDetection:"(async () => 'MediaStreamTrackProcessor' in self && 'MediaStreamTrackGenerator' in self)()",documentation:"https://developer.chrome.com/articles/mediastreamtrack-insertable-media-processing/",blinkFeatureID:3729,chromeStatusID:5499415634640896},"Launch Handler":{regEx:/"launch_handler"/g,where:"Web App Manifest",supported:_asyncToGenerator((function*(){return"launchQueue"in self&&"targetURL"in LaunchParams.prototype}))(),featureDetection:"(async () => 'launchQueue' in self && 'targetURL' in LaunchParams.prototype)()",documentation:"https://developer.chrome.com/docs/web-platform/launch-handler/",blinkFeatureID:void 0,chromeStatusID:5722383233056768},"Linear Acceleration Sensor":{regEx:/new\s+LinearAccelerationSensor\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"LinearAccelerationSensor"in self}))(),featureDetection:"(async () => 'LinearAccelerationSensor' in self)()",documentation:"https://developer.chrome.com/articles/generic-sensor/",blinkFeatureID:2051,chromeStatusID:5698781827825664},"Local Font Access":{regEx:/queryLocalFonts\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"queryLocalFonts"in self}))(),featureDetection:"(async () => 'queryLocalFonts' in self)()",documentation:"https://developer.chrome.com/articles/local-fonts/",blinkFeatureID:4211,chromeStatusID:6234451761692672},Magnetometer:{regEx:/new\s+Magnetometer\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"Magnetometer"in self}))(),featureDetection:"(async () => 'Magnetometer' in self)()",documentation:"https://developer.chrome.com/articles/generic-sensor/",blinkFeatureID:1907,chromeStatusID:5698781827825664},"Media Capabilities":{regEx:/navigator\.mediaCapabilities\.decodingInfo\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"mediaCapabilities"in navigator}))(),featureDetection:"(async () => 'mediaCapabilities' in navigator)()",documentation:"https://developer.mozilla.org/en-US/docs/Web/API/Media_Capabilities_API",blinkFeatureID:2239,chromeStatusID:5869632707624960},"Media Session":{regEx:/navigator\.mediaSession\.setActionHandler|navigator\.mediaSession\.metadata/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"mediaSession"in navigator}))(),featureDetection:"(async () => 'mediaSession' in navigator)()",documentation:"https://developer.mozilla.org/en-US/docs/Web/API/Media_Session_API",blinkFeatureID:1792,chromeStatusID:5639924124483584},"Window Management":{regEx:/getScreenDetails\s*\(\)/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"getScreenDetails"in self}))(),featureDetection:"(async () => 'getScreenDetails' in self)()",documentation:"https://developer.chrome.com/articles/window-management/",blinkFeatureID:3388,chromeStatusID:5252960583942144},"Navigation Preload":{regEx:/\.navigationPreload\.enable\s*\(\)/g,where:"JavaScript",supported:_asyncToGenerator((function*(){var e;return"serviceWorker"in navigator&&"navigationPreload"in((yield null===(e=navigator.serviceWorker)||void 0===e?void 0:e.ready)||self.registration)}))(),featureDetection:"(async () => 'serviceWorker' in navigator && 'navigationPreload' in (await navigator.serviceWorker?.ready || self.registration))()",documentation:"https://developer.mozilla.org/en-US/docs/Web/API/NavigationPreloadManager",blinkFeatureID:1803,chromeStatusID:5734842339688448},"Origin Private File System":{regEx:/navigator\.storage\.getDirectory\s*\(\)/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"StorageManager"in self&&"getDirectory"in StorageManager.prototype}))(),featureDetection:"(async () => 'StorageManager' in self && 'getDirectory' in StorageManager.prototype)()",documentation:"https://web.dev/origin-private-file-system/",blinkFeatureID:3428,chromeStatusID:5702777582911488},"Payment Handler":{regEx:/\.paymentManager\.instruments\.set\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"PaymentInstruments"in self}))(),featureDetection:"(async () => 'PaymentInstruments' in self)()",documentation:"https://web.dev/registering-a-web-based-payment-app/",blinkFeatureID:2397,chromeStatusID:5160285237149696},"Payment Request":{regEx:/new\s+PaymentRequest\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"PaymentRequest"in self}))(),featureDetection:"(async () => 'PaymentRequest' in self)()",documentation:"https://developer.mozilla.org/en-US/docs/Web/API/Payment_Request_API",blinkFeatureID:2894,chromeStatusID:5639348045217792},"Periodic Background Sync":{regEx:/periodicSync\.register\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"PeriodicSyncManager"in self}))(),featureDetection:"(async () => 'PeriodicSyncManager' in self)()",documentation:"https://developer.chrome.com/articles/periodic-background-sync/",blinkFeatureID:2931,chromeStatusID:5689383275462656},"Persistent Storage":{regEx:/navigator\.storage\.persist\s*\(\)/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"storage"in navigator&&"persist"in navigator.storage}))(),featureDetection:"(async () => 'storage' in navigator && 'persist' in navigator.storage)()",documentation:"https://developer.mozilla.org/en-US/docs/Web/API/StorageManager/persist",blinkFeatureID:1369,chromeStatusID:5715811364765696},"Storage Buckets":{regEx:/navigator\.storageBuckets\.open\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"storageBuckets"in navigator}))(),featureDetection:"(async () => 'storageBuckets' in navigator)()",documentation:"https://developer.chrome.com/blog/storage-buckets/",blinkFeatureID:4378,chromeStatusID:5739224579964928},"Pointer Lock (unadjustedMovement)":{regEx:/unadjustedMovement\s*\:\s*/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"HTMLParagraphElement"in self?yield _asyncToGenerator((function*(){try{return!!(yield document.createElement("p").requestPointerLock({unadjustedMovement:!0}))}catch(e){return"requestPointerLock"in HTMLParagraphElement.prototype}}))():void 0}))(),featureDetection:"(async () => 'HTMLParagraphElement' in self ? await (async () => { try { return !!await document.createElement(\"p\").requestPointerLock({ unadjustedMovement: true }) } catch { return 'requestPointerLock' in HTMLParagraphElement.prototype } })() : undefined)()",documentation:"https://web.dev/disable-mouse-acceleration/",blinkFeatureID:3027,chromeStatusID:5723553087356928},"Protocol Handlers":{regEx:/"protocol_handlers"/g,where:"Web App Manifest",supported:_asyncToGenerator((function*(){}))(),featureDetection:"(async () => undefined)()",documentation:"https://developer.chrome.com/articles/url-protocol-handler/",blinkFeatureID:3884,chromeStatusID:5151703944921088},Push:{regEx:/\.pushManager\.subscribe\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){var e;return"serviceWorker"in navigator&&"pushManager"in((yield null===(e=navigator.serviceWorker)||void 0===e?void 0:e.ready)||self.registration)}))(),featureDetection:"(async () => 'serviceWorker' in navigator && 'pushManager' in (await navigator.serviceWorker?.ready || self.registration))()",documentation:"https://developer.mozilla.org/en-US/docs/Web/API/Push_API",blinkFeatureID:769,chromeStatusID:5416033485586432},"Relative Orientation Sensor":{regEx:/new\s+RelativeOrientationSensor\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"RelativeOrientationSensor"in self}))(),featureDetection:"(async () => 'RelativeOrientationSensor' in self)()",documentation:"https://developer.chrome.com/articles/generic-sensor/",blinkFeatureID:2019,chromeStatusID:5698781827825664},"Screen Wake Lock":{regEx:/navigator\.wakeLock\.request\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"wakeLock"in navigator}))(),featureDetection:"(async () => 'wakeLock' in navigator)()",documentation:"https://developer.chrome.com/articles/wake-lock/",blinkFeatureID:3005,chromeStatusID:4636879949398016},"Service Worker":{regEx:/navigator\.serviceWorker\.register\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"serviceWorker"in navigator}))(),featureDetection:"(async () => 'serviceWorker' in navigator)()",documentation:"https://developer.mozilla.org/en-US/docs/Web/API/Service_Worker_API",blinkFeatureID:990,chromeStatusID:6561526227927040},"Shape Detection (Barcodes)":{regEx:/new\s+BarcodeDetector\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"BarcodeDetector"in self}))(),featureDetection:"(async () => 'BarcodeDetector' in self)()",documentation:"https://developer.chrome.com/articles/shape-detection/",blinkFeatureID:3711,chromeStatusID:4757990523535360},"Shape Detection (Faces)":{regEx:/new\s+FaceDetector\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"FaceDetector"in self}))(),featureDetection:"(async () => 'FaceDetector' in self)()",documentation:"https://developer.chrome.com/articles/shape-detection/",blinkFeatureID:3712,chromeStatusID:5678216012365824},"Shape Detection (Texts)":{regEx:/new\s+TextDetector\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"TextDetector"in self}))(),featureDetection:"(async () => 'TextDetector' in self)()",documentation:"https://developer.chrome.com/articles/shape-detection/",blinkFeatureID:3713,chromeStatusID:5644087665360896},Shortcuts:{regEx:/"shortcuts"/g,where:"Web App Manifest",supported:_asyncToGenerator((function*(){}))(),featureDetection:"(async () => undefined)()",documentation:"https://web.dev/app-shortcuts/",blinkFeatureID:void 0,chromeStatusID:5706099464339456},"Storage Estimation":{regEx:/navigator\.storage\.estimate\s*\(\)/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"storage"in navigator&&"estimate"in navigator.storage}))(),featureDetection:"(async () => 'storage' in navigator && 'estimate' in navigator.storage)()",documentation:"https://developer.mozilla.org/en-US/docs/Web/API/StorageManager/estimate",blinkFeatureID:1371,chromeStatusID:5630353511284736},"Tabbed Application Mode":{regEx:/"tabbed"/g,where:"Web App Manifest",supported:_asyncToGenerator((function*(){}))(),featureDetection:"(async () => undefined)()",documentation:"https://web.dev/tabbed-application-mode/",blinkFeatureID:void 0,chromeStatusID:5128143454076928},VirtualKeyboard:{regEx:/navigator\.virtualKeyboard/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"virtualKeyboard"in navigator}))(),featureDetection:"(async () => 'virtualKeyboard' in navigator)()",documentation:"https://github.com/MicrosoftEdge/MSEdgeExplainers/blob/main/VirtualKeyboardAPI/explainer.md",blinkFeatureID:void 0,chromeStatusID:5717448231747584},"Web App Link Handling":{regEx:/"handle_links"/g,where:"Web App Manifest",supported:_asyncToGenerator((function*(){}))(),featureDetection:"(async () => undefined)()",documentation:"https://github.com/WICG/pwa-url-handler/blob/main/handle_links/explainer.md",blinkFeatureID:void 0,chromeStatusID:5740751225880576},"Web Audio":{regEx:/new\s+AudioContext\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"AudioContext"in self}))(),featureDetection:"(async () => 'AudioContext' in self)()",documentation:"https://developer.mozilla.org/en-US/docs/Web/API/Web_Audio_API",blinkFeatureID:1698,chromeStatusID:6261718720184320},"Web Share":{regEx:/navigator\.share\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"share"in navigator}))(),featureDetection:"(async () => 'share' in navigator)()",documentation:"https://web.dev/web-share/",blinkFeatureID:1501,chromeStatusID:5668769141620736},"Web Share (Files)":{regEx:/navigator\.canShare\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"canShare"in navigator}))(),featureDetection:"(async () => 'canShare' in navigator)()",documentation:"https://web.dev/web-share/",blinkFeatureID:2737,chromeStatusID:4777349178458112},"Web Share Target":{regEx:/"share_target"/g,where:"Web App Manifest",supported:_asyncToGenerator((function*(){}))(),featureDetection:"(async () => undefined)()",documentation:"https://developer.chrome.com/articles/web-share-target/",blinkFeatureID:void 0,chromeStatusID:5662315307335680},"Web Share Target (Files)":{regEx:/"enctype"\s*\:\s*"multipart\/form\-data"/g,where:"Web App Manifest",supported:_asyncToGenerator((function*(){}))(),featureDetection:"(async () => undefined)()",documentation:"https://developer.chrome.com/articles/web-share-target/",blinkFeatureID:void 0,chromeStatusID:6124071381106688},"Web Bluetooth":{regEx:/navigator\.bluetooth\.requestDevice\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"bluetooth"in navigator}))(),featureDetection:"(async () => 'bluetooth' in navigator)()",documentation:"https://developer.chrome.com/articles/bluetooth/",blinkFeatureID:1670,chromeStatusID:5264933985976320},WebCodecs:{regEx:/new\s+MediaStreamTrackProcessor\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"MediaStreamTrackProcessor"in self}))(),featureDetection:"(async () => 'MediaStreamTrackProcessor' in self)()",documentation:"https://developer.chrome.com/articles/webcodecs/",blinkFeatureID:3728,chromeStatusID:5669293909868544},WebGPU:{regEx:/navigator\.gpu\.requestAdapter\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"gpu"in navigator}))(),featureDetection:"(async () => 'gpu' in navigator)()",documentation:"https://developer.chrome.com/docs/web-platform/webgpu/",blinkFeatureID:3888,chromeStatusID:6213121689518080},WebHID:{regEx:/navigator\.hid\.requestDevice\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"hid"in navigator}))(),featureDetection:"(async () => 'hid' in navigator)()",documentation:"https://developer.chrome.com/articles/hid/",blinkFeatureID:2866,chromeStatusID:5172464636133376},"Web MIDI":{regEx:/navigator\.requestMIDIAccess\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"requestMIDIAccess"in navigator}))(),featureDetection:"(async () => 'requestMIDIAccess' in navigator)()",documentation:"https://developer.mozilla.org/en-US/docs/Web/API/Web_MIDI_API",blinkFeatureID:2029,chromeStatusID:4923613069180928},"Web NFC":{regEx:/new\s+NDEFReader\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"NDEFReader"in self}))(),featureDetection:"(async () => 'NDEFReader' in self)()",documentation:"https://developer.chrome.com/articles/nfc/",blinkFeatureID:3094,chromeStatusID:6261030015467520},WebOTP:{regEx:/transport\s*\:\s*\[["']sms["']\]/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"OTPCredential"in self}))(),featureDetection:"(async () => 'OTPCredential' in self)()",documentation:"https://developer.chrome.com/articles/web-otp/",blinkFeatureID:2880,chromeStatusID:5873577578463232},"Web Serial":{regEx:/navigator\.serial\.requestPort\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"serial"in navigator}))(),featureDetection:"(async () => 'serial' in navigator)()",documentation:"https://developer.chrome.com/articles/serial/",blinkFeatureID:2546,chromeStatusID:6577673212002304},WebSocketStream:{regEx:/new\s+WebSocketStream\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"WebSocketStream"in self}))(),featureDetection:"(async () => 'WebSocketStream' in self)()",documentation:"https://developer.chrome.com/articles/websocketstream/",blinkFeatureID:3018,chromeStatusID:5189728691290112},WebTransport:{regEx:/new\s+WebTransport\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"WebTransport"in self}))(),featureDetection:"(async () => 'WebTransport' in self)()",documentation:"https://developer.chrome.com/articles/webtransport/",blinkFeatureID:3472,chromeStatusID:4854144902889472},WebUSB:{regEx:/navigator\.usb\.requestDevice\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"usb"in navigator}))(),featureDetection:"(async () => 'usb' in navigator)()",documentation:"https://developer.chrome.com/articles/usb/",blinkFeatureID:1520,chromeStatusID:5651917954875392},"Window Controls Overlay":{regEx:/"window\-controls\-overlay"/g,where:"Web App Manifest",supported:_asyncToGenerator((function*(){return"windowControlsOverlay"in navigator}))(),featureDetection:"(async () => 'windowControlsOverlay' in navigator)()",documentation:"https://web.dev/window-controls-overlay/",blinkFeatureID:3902,chromeStatusID:5741247866077184}}; \ No newline at end of file diff --git a/docs/fugu-patterns-ec11cc9629.js b/docs/fugu-patterns-ec11cc9629.js new file mode 100644 index 0000000..a811f22 --- /dev/null +++ b/docs/fugu-patterns-ec11cc9629.js @@ -0,0 +1 @@ +"use strict";function asyncGeneratorStep(e,t,r,n,a,o,i){try{var s=e[o](i),c=s.value}catch(e){return void r(e)}s.done?t(c):Promise.resolve(c).then(n,a)}function _asyncToGenerator(e){return function(){var t=this,r=arguments;return new Promise((function(n,a){var o=e.apply(t,r);function i(e){asyncGeneratorStep(o,n,a,i,s,"next",e)}function s(e){asyncGeneratorStep(o,n,a,i,s,"throw",e)}i(void 0)}))}}var patterns={"Absolute Orientation Sensor":{regEx:/new\s+AbsoluteOrientationSensor\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"AbsoluteOrientationSensor"in self}))(),featureDetection:"(async () => 'AbsoluteOrientationSensor' in self)()",documentation:"https://developer.chrome.com/articles/generic-sensor/",blinkFeatureID:1900,chromeStatusID:5698781827825664},Accelerometer:{regEx:/new\s+Accelerometer\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"Accelerometer"in self}))(),featureDetection:"(async () => 'Accelerometer' in self)()",documentation:"https://developer.chrome.com/articles/generic-sensor/",blinkFeatureID:1899,chromeStatusID:5698781827825664},"Add to Home Screen":{regEx:/["']beforeinstallprompt["']|\.onbeforeinstallprompt/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"BeforeInstallPromptEvent"in self}))(),featureDetection:"(async () => 'BeforeInstallPromptEvent' in self)()",documentation:"https://developer.mozilla.org/en-US/docs/Web/API/BeforeInstallPromptEvent",blinkFeatureID:1436,chromeStatusID:6560913322672128},"Ambient Light Sensor":{regEx:/new\s+AmbientLightSensor\s*\(\)/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"AmbientLightSensor"in self}))(),featureDetection:"(async () => 'AmbientLightSensor' in self)()",documentation:"https://developer.chrome.com/articles/generic-sensor/",blinkFeatureID:1901,chromeStatusID:5298357018820608},"Async Clipboard":{regEx:/navigator\.clipboard\.writeText\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"clipboard"in navigator&&"writeText"in navigator.clipboard}))(),featureDetection:"(async () => 'clipboard' in navigator && 'writeText' in navigator.clipboard)()",documentation:"https://web.dev/async-clipboard/",blinkFeatureID:2372,chromeStatusID:5861289330999296},"Async Clipboard (Images)":{regEx:/navigator\.clipboard\.write\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"clipboard"in navigator&&"write"in navigator.clipboard}))(),featureDetection:"(async () => 'clipboard' in navigator && 'write' in navigator.clipboard)()",documentation:"https://web.dev/async-clipboard/",blinkFeatureID:2370,chromeStatusID:5074658793619456},"Background Fetch":{regEx:/\.backgroundFetch\.fetch\s*\(["']/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"BackgroundFetchManager"in self}))(),featureDetection:"(async () => 'BackgroundFetchManager' in self)()",documentation:"https://developer.mozilla.org/en-US/docs/Web/API/Background_Fetch_API",blinkFeatureID:2549,chromeStatusID:5712608971718656},"Background Sync":{regEx:/\.sync\.register\s*\(["']/g,where:"JavaScript",supported:_asyncToGenerator((function*(){var e;return"serviceWorker"in navigator&&"sync"in((yield null===(e=navigator.serviceWorker)||void 0===e?void 0:e.ready)||self.registration)}))(),featureDetection:"(async () => 'serviceWorker' in navigator && 'sync' in (await navigator.serviceWorker?.ready || self.registration))()",documentation:"https://developer.mozilla.org/en-US/docs/Web/API/Background_Synchronization_API",blinkFeatureID:745,chromeStatusID:6170807885627392},Badging:{regEx:/navigator\.setAppBadge\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"setAppBadge"in navigator}))(),featureDetection:"(async () => 'setAppBadge' in navigator)()",documentation:"https://developer.chrome.com/articles/badging-api/",blinkFeatureID:2726,chromeStatusID:6068482055602176},"Cache Storage":{regEx:/caches\.open\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"serviceWorker"in navigator&&"caches"in self}))(),featureDetection:"(async () => 'serviceWorker' in navigator && 'caches' in self)()",documentation:"https://developer.mozilla.org/en-US/docs/Web/API/CacheStorage",blinkFeatureID:3022,chromeStatusID:6461631328419840},"Compression Streams":{regEx:/new\s+CompressionStream\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"CompressionStream"in self}))(),featureDetection:"(async () => 'CompressionStream' in self)()",documentation:"https://developer.chrome.com/blog/compression-streams-api/",blinkFeatureID:3060,chromeStatusID:5855937971617792},"Compute Pressure":{regEx:/new\s+ComputePressureObserver\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"ComputePressureObserver"in self}))(),featureDetection:"(async () => 'ComputePressureObserver' in self)()",documentation:"https://developer.chrome.com/docs/web-platform/compute-pressure/",blinkFeatureID:3899,chromeStatusID:5597608644968448},"Contact Picker":{regEx:/navigator\.contacts\.select\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"contacts"in navigator}))(),featureDetection:"(async () => 'contacts' in navigator)()",documentation:"https://developer.chrome.com/articles/contact-picker/",blinkFeatureID:2993,chromeStatusID:6511327140904960},"Content Index":{regEx:/index\.getAll\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){var e;return"serviceWorker"in navigator&&"index"in((yield null===(e=navigator.serviceWorker)||void 0===e?void 0:e.ready)||self.registration)}))(),featureDetection:"(async () => 'serviceWorker' in navigator && 'index' in (await navigator.serviceWorker?.ready || self.registration))()",documentation:"https://developer.chrome.com/articles/content-indexing-api/",blinkFeatureID:2985,chromeStatusID:5658416729030656},"Credential Management":{regEx:/navigator\.credentials\.get\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"credentials"in navigator}))(),featureDetection:"(async () => 'credentials' in navigator)()",documentation:"https://developers.google.com/web/updates/2016/04/credential-management-api",blinkFeatureID:960,chromeStatusID:5026422640869376},"Device Memory":{regEx:/navigator\.deviceMemory/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"deviceMemory"in navigator}))(),featureDetection:"(async () => 'deviceMemory' in navigator)()",documentation:"https://developer.mozilla.org/en-US/docs/Web/API/Device_Memory_API",blinkFeatureID:2121,chromeStatusID:5119701235531776},"Device Posture":{regEx:/navigator\.devicePosture/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"devicePosture"in navigator}))(),featureDetection:"(async () => 'devicePosture' in navigator)()",documentation:"https://github.com/w3c/device-posture/blob/gh-pages/README.md",blinkFeatureID:void 0,chromeStatusID:5185813744975872},"Digital Goods":{regEx:/getDigitalGoodsService\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"getDigitalGoodsService"in self}))(),featureDetection:"(async () => 'getDigitalGoodsService' in self)()",documentation:"https://developer.chrome.com/docs/android/trusted-web-activity/receive-payments-play-billing/",blinkFeatureID:3397,chromeStatusID:5339955595313152},EyeDropper:{regEx:/new\s+EyeDropper\s*\(\)/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"EyeDropper"in self}))(),featureDetection:"(async () => 'EyeDropper' in self)()",documentation:"https://developer.chrome.com/articles/eyedropper/",blinkFeatureID:void 0,chromeStatusID:6304275594477568},"File Handling":{regEx:/"file_handlers"/g,where:"Web App Manifest",supported:_asyncToGenerator((function*(){return"launchQueue"in self&&"files"in LaunchParams.prototype}))(),featureDetection:"(async () => 'launchQueue' in self && 'files' in LaunchParams.prototype)()",documentation:"https://developer.chrome.com/articles/file-handling/",blinkFeatureID:3875,chromeStatusID:5721776357113856},"File System Access":{regEx:/showOpenFilePicker\s*\(|showSaveFilePicker\s*\(|showDirectoryPicker\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"showOpenFilePicker"in self}))(),featureDetection:"(async () => 'showOpenFilePicker' in self)()",documentation:"https://developer.chrome.com/articles/file-system-access/",blinkFeatureID:3340,chromeStatusID:6284708426022912},Gamepad:{regEx:/navigator\.getGamepads\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"getGamepads"in navigator}))(),featureDetection:"(async () => 'getGamepads' in navigator)()",documentation:"https://web.dev/gamepad/",blinkFeatureID:1916,chromeStatusID:5118776383111168},getInstalledRelatedApps:{regEx:/navigator\.getInstalledRelatedApps\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"getInstalledRelatedApps"in navigator}))(),featureDetection:"(async () => 'getInstalledRelatedApps' in navigator)()",documentation:"https://web.dev/get-installed-related-apps/",blinkFeatureID:1870,chromeStatusID:5695378309513216},"Gravity Sensor":{regEx:/new\s+GravitySensor\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"GravitySensor"in self}))(),featureDetection:"(async () => 'GravitySensor' in self)()",documentation:"https://developer.chrome.com/articles/generic-sensor/",blinkFeatureID:3795,chromeStatusID:5384099747332096},Gyroscope:{regEx:/new\s+Gyroscope\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"Gyroscope"in self}))(),featureDetection:"(async () => 'Gyroscope' in self)()",documentation:"https://developer.chrome.com/articles/generic-sensor/",blinkFeatureID:1906,chromeStatusID:5698781827825664},"Handwriting Recognition":{regEx:/navigator\.queryHandwritingRecognizerSupport\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"queryHandwritingRecognizerSupport"in navigator}))(),featureDetection:"(async () => 'queryHandwritingRecognizerSupport' in navigator)()",documentation:"https://developer.chrome.com/docs/web-platform/handwriting-recognition/",blinkFeatureID:3893,chromeStatusID:5263213807534080},HapticsDevice:{regEx:/\.haptics\.play\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"HapticsDevice"in self}))(),featureDetection:"(async () => 'HapticsDevice' in self)()",documentation:"https://github.com/MicrosoftEdge/MSEdgeExplainers/blob/main/HapticsDevice/explainer.md",blinkFeatureID:void 0,chromeStatusID:5720648543371264},"Idle Detection":{regEx:/new\s+IdleDetector\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"IdleDetector"in self}))(),featureDetection:"(async () => 'IdleDetector' in self)()",documentation:"https://developer.chrome.com/articles/idle-detection/",blinkFeatureID:2834,chromeStatusID:4590256452009984},Ink:{regEx:/navigator\.ink\.requestPresenter\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"ink"in navigator}))(),featureDetection:"(async () => 'ink' in navigator)()",documentation:"https://blogs.windows.com/msedgedev/2021/08/18/enhancing-inking-on-the-web/",blinkFeatureID:void 0,chromeStatusID:5961434129235968},"Insertable streams for MediaStreamTrack":{regEx:/MediaStreamTrackProcessor\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"MediaStreamTrackProcessor"in self&&"MediaStreamTrackGenerator"in self}))(),featureDetection:"(async () => 'MediaStreamTrackProcessor' in self && 'MediaStreamTrackGenerator' in self)()",documentation:"https://developer.chrome.com/articles/mediastreamtrack-insertable-media-processing/",blinkFeatureID:3729,chromeStatusID:5499415634640896},"Launch Handler":{regEx:/"launch_handler"/g,where:"Web App Manifest",supported:_asyncToGenerator((function*(){return"launchQueue"in self&&"targetURL"in LaunchParams.prototype}))(),featureDetection:"(async () => 'launchQueue' in self && 'targetURL' in LaunchParams.prototype)()",documentation:"https://developer.chrome.com/docs/web-platform/launch-handler/",blinkFeatureID:void 0,chromeStatusID:5722383233056768},"Linear Acceleration Sensor":{regEx:/new\s+LinearAccelerationSensor\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"LinearAccelerationSensor"in self}))(),featureDetection:"(async () => 'LinearAccelerationSensor' in self)()",documentation:"https://developer.chrome.com/articles/generic-sensor/",blinkFeatureID:2051,chromeStatusID:5698781827825664},"Local Font Access":{regEx:/queryLocalFonts\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"queryLocalFonts"in self}))(),featureDetection:"(async () => 'queryLocalFonts' in self)()",documentation:"https://developer.chrome.com/articles/local-fonts/",blinkFeatureID:4211,chromeStatusID:6234451761692672},Magnetometer:{regEx:/new\s+Magnetometer\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"Magnetometer"in self}))(),featureDetection:"(async () => 'Magnetometer' in self)()",documentation:"https://developer.chrome.com/articles/generic-sensor/",blinkFeatureID:1907,chromeStatusID:5698781827825664},"Media Capabilities":{regEx:/navigator\.mediaCapabilities\.decodingInfo\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"mediaCapabilities"in navigator}))(),featureDetection:"(async () => 'mediaCapabilities' in navigator)()",documentation:"https://developer.mozilla.org/en-US/docs/Web/API/Media_Capabilities_API",blinkFeatureID:2239,chromeStatusID:5869632707624960},"Media Session":{regEx:/navigator\.mediaSession\.setActionHandler|navigator\.mediaSession\.metadata/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"mediaSession"in navigator}))(),featureDetection:"(async () => 'mediaSession' in navigator)()",documentation:"https://developer.mozilla.org/en-US/docs/Web/API/Media_Session_API",blinkFeatureID:1792,chromeStatusID:5639924124483584},"Window Management":{regEx:/getScreenDetails\s*\(\)/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"getScreenDetails"in self}))(),featureDetection:"(async () => 'getScreenDetails' in self)()",documentation:"https://developer.chrome.com/articles/window-management/",blinkFeatureID:3388,chromeStatusID:5252960583942144},"Navigation Preload":{regEx:/\.navigationPreload\.enable\s*\(\)/g,where:"JavaScript",supported:_asyncToGenerator((function*(){var e;return"serviceWorker"in navigator&&"navigationPreload"in((yield null===(e=navigator.serviceWorker)||void 0===e?void 0:e.ready)||self.registration)}))(),featureDetection:"(async () => 'serviceWorker' in navigator && 'navigationPreload' in (await navigator.serviceWorker?.ready || self.registration))()",documentation:"https://developer.mozilla.org/en-US/docs/Web/API/NavigationPreloadManager",blinkFeatureID:1803,chromeStatusID:5734842339688448},"Origin Private File System":{regEx:/navigator\.storage\.getDirectory\s*\(\)/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"StorageManager"in self&&"getDirectory"in StorageManager.prototype}))(),featureDetection:"(async () => 'StorageManager' in self && 'getDirectory' in StorageManager.prototype)()",documentation:"https://web.dev/origin-private-file-system/",blinkFeatureID:3428,chromeStatusID:5702777582911488},"Payment Handler":{regEx:/\.paymentManager\.instruments\.set\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"PaymentInstruments"in self}))(),featureDetection:"(async () => 'PaymentInstruments' in self)()",documentation:"https://web.dev/registering-a-web-based-payment-app/",blinkFeatureID:2397,chromeStatusID:5160285237149696},"Payment Request":{regEx:/new\s+PaymentRequest\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"PaymentRequest"in self}))(),featureDetection:"(async () => 'PaymentRequest' in self)()",documentation:"https://developer.mozilla.org/en-US/docs/Web/API/Payment_Request_API",blinkFeatureID:2894,chromeStatusID:5639348045217792},"Periodic Background Sync":{regEx:/periodicSync\.register\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"PeriodicSyncManager"in self}))(),featureDetection:"(async () => 'PeriodicSyncManager' in self)()",documentation:"https://developer.chrome.com/articles/periodic-background-sync/",blinkFeatureID:2931,chromeStatusID:5689383275462656},"Persistent Storage":{regEx:/navigator\.storage\.persist\s*\(\)/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"storage"in navigator&&"persist"in navigator.storage}))(),featureDetection:"(async () => 'storage' in navigator && 'persist' in navigator.storage)()",documentation:"https://developer.mozilla.org/en-US/docs/Web/API/StorageManager/persist",blinkFeatureID:1369,chromeStatusID:5715811364765696},"Storage Buckets":{regEx:/navigator\.storageBuckets\.open\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"storageBuckets"in navigator}))(),featureDetection:"(async () => 'storageBuckets' in navigator)()",documentation:"https://developer.chrome.com/blog/storage-buckets/",blinkFeatureID:4378,chromeStatusID:5739224579964928},"Pointer Lock (unadjustedMovement)":{regEx:/unadjustedMovement\s*\:\s*/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"HTMLParagraphElement"in self?yield _asyncToGenerator((function*(){try{return!!(yield document.createElement("p").requestPointerLock({unadjustedMovement:!0}))}catch(e){return"requestPointerLock"in HTMLParagraphElement.prototype}}))():void 0}))(),featureDetection:"(async () => 'HTMLParagraphElement' in self ? await (async () => { try { return !!await document.createElement(\"p\").requestPointerLock({ unadjustedMovement: true }) } catch { return 'requestPointerLock' in HTMLParagraphElement.prototype } })() : undefined)()",documentation:"https://web.dev/disable-mouse-acceleration/",blinkFeatureID:3027,chromeStatusID:5723553087356928},"Protocol Handlers":{regEx:/"protocol_handlers"/g,where:"Web App Manifest",supported:_asyncToGenerator((function*(){}))(),featureDetection:"(async () => undefined)()",documentation:"https://developer.chrome.com/articles/url-protocol-handler/",blinkFeatureID:3884,chromeStatusID:5151703944921088},Push:{regEx:/\.pushManager\.subscribe\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){var e;return"serviceWorker"in navigator&&"pushManager"in((yield null===(e=navigator.serviceWorker)||void 0===e?void 0:e.ready)||self.registration)}))(),featureDetection:"(async () => 'serviceWorker' in navigator && 'pushManager' in (await navigator.serviceWorker?.ready || self.registration))()",documentation:"https://developer.mozilla.org/en-US/docs/Web/API/Push_API",blinkFeatureID:769,chromeStatusID:5416033485586432},"Relative Orientation Sensor":{regEx:/new\s+RelativeOrientationSensor\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"RelativeOrientationSensor"in self}))(),featureDetection:"(async () => 'RelativeOrientationSensor' in self)()",documentation:"https://developer.chrome.com/articles/generic-sensor/",blinkFeatureID:2019,chromeStatusID:5698781827825664},"Screen Wake Lock":{regEx:/navigator\.wakeLock\.request\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"wakeLock"in navigator}))(),featureDetection:"(async () => 'wakeLock' in navigator)()",documentation:"https://developer.chrome.com/articles/wake-lock/",blinkFeatureID:3005,chromeStatusID:4636879949398016},"Service Worker":{regEx:/navigator\.serviceWorker\.register\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"serviceWorker"in navigator}))(),featureDetection:"(async () => 'serviceWorker' in navigator)()",documentation:"https://developer.mozilla.org/en-US/docs/Web/API/Service_Worker_API",blinkFeatureID:990,chromeStatusID:6561526227927040},"Shape Detection (Barcodes)":{regEx:/new\s+BarcodeDetector\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"BarcodeDetector"in self}))(),featureDetection:"(async () => 'BarcodeDetector' in self)()",documentation:"https://developer.chrome.com/articles/shape-detection/",blinkFeatureID:3711,chromeStatusID:4757990523535360},"Shape Detection (Faces)":{regEx:/new\s+FaceDetector\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"FaceDetector"in self}))(),featureDetection:"(async () => 'FaceDetector' in self)()",documentation:"https://developer.chrome.com/articles/shape-detection/",blinkFeatureID:3712,chromeStatusID:5678216012365824},"Shape Detection (Texts)":{regEx:/new\s+TextDetector\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"TextDetector"in self}))(),featureDetection:"(async () => 'TextDetector' in self)()",documentation:"https://developer.chrome.com/articles/shape-detection/",blinkFeatureID:3713,chromeStatusID:5644087665360896},Shortcuts:{regEx:/"shortcuts"/g,where:"Web App Manifest",supported:_asyncToGenerator((function*(){}))(),featureDetection:"(async () => undefined)()",documentation:"https://web.dev/app-shortcuts/",blinkFeatureID:void 0,chromeStatusID:5706099464339456},"Storage Estimation":{regEx:/navigator\.storage\.estimate\s*\(\)/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"storage"in navigator&&"estimate"in navigator.storage}))(),featureDetection:"(async () => 'storage' in navigator && 'estimate' in navigator.storage)()",documentation:"https://developer.mozilla.org/en-US/docs/Web/API/StorageManager/estimate",blinkFeatureID:1371,chromeStatusID:5630353511284736},"Tabbed Application Mode":{regEx:/"tabbed"/g,where:"Web App Manifest",supported:_asyncToGenerator((function*(){}))(),featureDetection:"(async () => undefined)()",documentation:"https://web.dev/tabbed-application-mode/",blinkFeatureID:void 0,chromeStatusID:5128143454076928},VirtualKeyboard:{regEx:/navigator\.virtualKeyboard/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"virtualKeyboard"in navigator}))(),featureDetection:"(async () => 'virtualKeyboard' in navigator)()",documentation:"https://github.com/MicrosoftEdge/MSEdgeExplainers/blob/main/VirtualKeyboardAPI/explainer.md",blinkFeatureID:void 0,chromeStatusID:5717448231747584},"Web App Link Handling":{regEx:/"handle_links"/g,where:"Web App Manifest",supported:_asyncToGenerator((function*(){}))(),featureDetection:"(async () => undefined)()",documentation:"https://github.com/WICG/pwa-url-handler/blob/main/handle_links/explainer.md",blinkFeatureID:void 0,chromeStatusID:5740751225880576},"Web Audio":{regEx:/new\s+AudioContext\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"AudioContext"in self}))(),featureDetection:"(async () => 'AudioContext' in self)()",documentation:"https://developer.mozilla.org/en-US/docs/Web/API/Web_Audio_API",blinkFeatureID:1698,chromeStatusID:6261718720184320},"Web Share":{regEx:/navigator\.share\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"share"in navigator}))(),featureDetection:"(async () => 'share' in navigator)()",documentation:"https://web.dev/web-share/",blinkFeatureID:1501,chromeStatusID:5668769141620736},"Web Share (Files)":{regEx:/navigator\.canShare\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"canShare"in navigator}))(),featureDetection:"(async () => 'canShare' in navigator)()",documentation:"https://web.dev/web-share/",blinkFeatureID:2737,chromeStatusID:4777349178458112},"Web Share Target":{regEx:/"share_target"/g,where:"Web App Manifest",supported:_asyncToGenerator((function*(){}))(),featureDetection:"(async () => undefined)()",documentation:"https://developer.chrome.com/articles/web-share-target/",blinkFeatureID:void 0,chromeStatusID:5662315307335680},"Web Share Target (Files)":{regEx:/"enctype"\s*\:\s*"multipart\/form\-data"/g,where:"Web App Manifest",supported:_asyncToGenerator((function*(){}))(),featureDetection:"(async () => undefined)()",documentation:"https://developer.chrome.com/articles/web-share-target/",blinkFeatureID:void 0,chromeStatusID:6124071381106688},"Web Bluetooth":{regEx:/navigator\.bluetooth\.requestDevice\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"bluetooth"in navigator}))(),featureDetection:"(async () => 'bluetooth' in navigator)()",documentation:"https://developer.chrome.com/articles/bluetooth/",blinkFeatureID:1670,chromeStatusID:5264933985976320},WebCodecs:{regEx:/new\s+MediaStreamTrackProcessor\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"MediaStreamTrackProcessor"in self}))(),featureDetection:"(async () => 'MediaStreamTrackProcessor' in self)()",documentation:"https://developer.chrome.com/articles/webcodecs/",blinkFeatureID:3728,chromeStatusID:5669293909868544},WebGPU:{regEx:/navigator\.gpu\.requestAdapter\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"gpu"in navigator}))(),featureDetection:"(async () => 'gpu' in navigator)()",documentation:"https://developer.chrome.com/docs/web-platform/webgpu/",blinkFeatureID:3888,chromeStatusID:6213121689518080},WebHID:{regEx:/navigator\.hid\.requestDevice\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"hid"in navigator}))(),featureDetection:"(async () => 'hid' in navigator)()",documentation:"https://developer.chrome.com/articles/hid/",blinkFeatureID:2866,chromeStatusID:5172464636133376},"Web MIDI":{regEx:/navigator\.requestMIDIAccess\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"requestMIDIAccess"in navigator}))(),featureDetection:"(async () => 'requestMIDIAccess' in navigator)()",documentation:"https://developer.mozilla.org/en-US/docs/Web/API/Web_MIDI_API",blinkFeatureID:2029,chromeStatusID:4923613069180928},"Web NFC":{regEx:/new\s+NDEFReader\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"NDEFReader"in self}))(),featureDetection:"(async () => 'NDEFReader' in self)()",documentation:"https://developer.chrome.com/articles/nfc/",blinkFeatureID:3094,chromeStatusID:6261030015467520},WebOTP:{regEx:/transport\s*\:\s*\[["']sms["']\]/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"OTPCredential"in self}))(),featureDetection:"(async () => 'OTPCredential' in self)()",documentation:"https://developer.chrome.com/articles/web-otp/",blinkFeatureID:2880,chromeStatusID:5873577578463232},"Web Serial":{regEx:/navigator\.serial\.requestPort\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"serial"in navigator}))(),featureDetection:"(async () => 'serial' in navigator)()",documentation:"https://developer.chrome.com/articles/serial/",blinkFeatureID:2546,chromeStatusID:6577673212002304},WebSocketStream:{regEx:/new\s+WebSocketStream\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"WebSocketStream"in self}))(),featureDetection:"(async () => 'WebSocketStream' in self)()",documentation:"https://developer.chrome.com/articles/websocketstream/",blinkFeatureID:3018,chromeStatusID:5189728691290112},WebTransport:{regEx:/new\s+WebTransport\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"WebTransport"in self}))(),featureDetection:"(async () => 'WebTransport' in self)()",documentation:"https://developer.chrome.com/articles/webtransport/",blinkFeatureID:3472,chromeStatusID:4854144902889472},WebUSB:{regEx:/navigator\.usb\.requestDevice\s*\(/g,where:"JavaScript",supported:_asyncToGenerator((function*(){return"usb"in navigator}))(),featureDetection:"(async () => 'usb' in navigator)()",documentation:"https://developer.chrome.com/articles/usb/",blinkFeatureID:1520,chromeStatusID:5651917954875392},"Window Controls Overlay":{regEx:/"window\-controls\-overlay"/g,where:"Web App Manifest",supported:_asyncToGenerator((function*(){return"windowControlsOverlay"in navigator}))(),featureDetection:"(async () => 'windowControlsOverlay' in navigator)()",documentation:"https://web.dev/window-controls-overlay/",blinkFeatureID:3902,chromeStatusID:5741247866077184}}; \ No newline at end of file diff --git a/docs/index.html b/docs/index.html index fd2866e..e68b284 100644 --- a/docs/index.html +++ b/docs/index.html @@ -1,4 +1,4 @@ -Fugu Detector

Project Fugu Detector

The page shows which Project Fugu APIs are available in your browser.