diff options
author | Egor Tensin <egor@tensin.name> | 2024-01-28 11:18:12 +0100 |
---|---|---|
committer | Egor Tensin <egor@tensin.name> | 2024-01-28 11:18:12 +0100 |
commit | 2d40e8046a08373b1740922690b695a16d5e5fa6 (patch) | |
tree | eb086741d1bb01ef9ed3d0ac8e1301447e835971 /node_modules/undici/lib/fileapi/progressevent.js | |
parent | workflows/test: upgrade actions (diff) | |
download | cleanup-path-2d40e8046a08373b1740922690b695a16d5e5fa6.tar.gz cleanup-path-2d40e8046a08373b1740922690b695a16d5e5fa6.zip |
bump version in package.json, upgrade dependencies
Diffstat (limited to 'node_modules/undici/lib/fileapi/progressevent.js')
-rw-r--r-- | node_modules/undici/lib/fileapi/progressevent.js | 78 |
1 files changed, 78 insertions, 0 deletions
diff --git a/node_modules/undici/lib/fileapi/progressevent.js b/node_modules/undici/lib/fileapi/progressevent.js new file mode 100644 index 0000000..778cf22 --- /dev/null +++ b/node_modules/undici/lib/fileapi/progressevent.js @@ -0,0 +1,78 @@ +'use strict' + +const { webidl } = require('../fetch/webidl') + +const kState = Symbol('ProgressEvent state') + +/** + * @see https://xhr.spec.whatwg.org/#progressevent + */ +class ProgressEvent extends Event { + constructor (type, eventInitDict = {}) { + type = webidl.converters.DOMString(type) + eventInitDict = webidl.converters.ProgressEventInit(eventInitDict ?? {}) + + super(type, eventInitDict) + + this[kState] = { + lengthComputable: eventInitDict.lengthComputable, + loaded: eventInitDict.loaded, + total: eventInitDict.total + } + } + + get lengthComputable () { + webidl.brandCheck(this, ProgressEvent) + + return this[kState].lengthComputable + } + + get loaded () { + webidl.brandCheck(this, ProgressEvent) + + return this[kState].loaded + } + + get total () { + webidl.brandCheck(this, ProgressEvent) + + return this[kState].total + } +} + +webidl.converters.ProgressEventInit = webidl.dictionaryConverter([ + { + key: 'lengthComputable', + converter: webidl.converters.boolean, + defaultValue: false + }, + { + key: 'loaded', + converter: webidl.converters['unsigned long long'], + defaultValue: 0 + }, + { + key: 'total', + converter: webidl.converters['unsigned long long'], + defaultValue: 0 + }, + { + key: 'bubbles', + converter: webidl.converters.boolean, + defaultValue: false + }, + { + key: 'cancelable', + converter: webidl.converters.boolean, + defaultValue: false + }, + { + key: 'composed', + converter: webidl.converters.boolean, + defaultValue: false + } +]) + +module.exports = { + ProgressEvent +} |